10-08-2012, 03:11 PM
Distributed Multimedia Systems
Distributed Multimedia Systems.docx (Size: 239.72 KB / Downloads: 32)
Characteristics of multimedia data
Multimedia data (video and audio) is continuous and time-based.
Continuous data is represented as sequence of discrete values that replace each other over time.
Time-based (or isochronous data) is so called because timed data elements in audio and video streams define the semantics or content of the stream. The time at which the values are played effect the validity of the data. Hence, the timing should be preserved.
Multimedia systems are often bulky. Hence the data should be moved with greater throughput.
Figure 17.3 shows typical data rates and frame/sample frequencies.
The resource bandwidth requirements for some are very large especially for video of reasonable quality.
A standard TV/Video stream requires more than 120 Mbps.
The figures for HDTV are even higher and in video-conferencing there is a need to handle multiple streams concurrently. Hence compression is used.
QoS Management
When multimedia run in networks of PCs, they compete for resources at workstations running the applications and in the network.
In multi-tasking operating system, the central processor is allocated to individual tasks in a Round-Robin or other scheduling scheme.
The key feature of these schemes is that they handle increases in demand by spreading the available resources more thinly between the competing tasks.
The timely processing and transmission of multimedia streams in crucial. In order to achieve timely delivery, applications need guarantees that the necessary resources will be allocated and scheduled at the required times.
The management and allocation of resources to provide such guarantee is referred to as Quality of Service Management (QoS Management
Resource Management
To provide a certain QoS level to an application, a system needs to have sufficient resources, it also needs to make the resources available to an application when they are needed (scheduling).
Resource Scheduling: A process needs to have resources assigned to them according to their priority. Following 2 methods are used:
Fair Scheduling
Real-time scheduling
Fair Scheduling
If several streams compete for the same resource, it becomes necessary to consider fairness and to prevent ill-behaved streams taking too much bandwidth.
A straight forward approach is to apply round-robin scheduling to all streams in the same class, to ensure fairness.
In Nagle, a method was introduced on a packet-by-packet basis that provides more fairness w.r.t varying packet sizes and arrival times. This is called Fair Queuing.
Real-time scheduling
Several algorithms were developed to meet CPU scheduling needs of applications.
Traditional real-time scheduling methods suit the model of regular continuous multimedia streams very well.
Earliest-Deadline-First (EDF) scheduler uses a deadline i.e. associated with each of its work items to determine the next item: The item with earliest deadline goes in first.
Stream Adaptation
The simplest form of adjustment when QoS cannot be guaranteed is adjusting its performance by dropping pieces of information.
Two methodologies are used:
Scaling
Filtering
Scaling
Best applied when live streams are sampled.
Scaling algorithms are media-dependent, although overall scaling approach is the same: to subsample a given signal.
A system to perform scaling consists of a monitor process at the target and a scalar process at the source.