280 likes | 411 Views
CONTEXT-AWARE ADAPTATION OF MULTIMEDIA DOCUMENTS FOR CONSISTENT PRESENTATIONS. By ABDELKRIM ABDELLI Nadjib badache Presenter Raja Sekhar Reddy Vardhireddy ID:2572300. Basic Concepts. What is a Multimedia Document? What is a temporal graph?
E N D
CONTEXT-AWARE ADAPTATION OF MULTIMEDIA DOCUMENTS FOR CONSISTENT PRESENTATIONS By ABDELKRIM ABDELLI Nadjib badache Presenter Raja Sekhar Reddy Vardhireddy ID:2572300
Basic Concepts • What is a Multimedia Document? • What is a temporal graph? • Why should we improve the execution of a Multimedia Document?
Introduction • Multimedia Applications became nowadays a useful medium to provide rapid access to friendly-authored multimedia presentations. • Applicable in various domains such as education, advertisement, entertainment etc. • Most dominant reference is SMIL
Mechanisms in SMIL • Casual: Actions that must be executed when some conditions are satisfied • Ex: Image I starts….exhibition of a video V must stop • Constraint: Define restrictions that must be fulfilled during a presentation • Ex: A video V must and its accompanying sound S must start and finish their presentations at the same time.
Inconsistencies with the Mechanisms • Dead locks may occur due to a bad specification of a casual relationship. • Ex: Consider two medias A and B. A can start only when B has achieved presentation. B can start only when A has achieved its own presentation. • These type of inconsistencies are called intrinsic inconsistencies.
Problems with Intrinsically Consistent Document • May produce mismatches which may lead to lose inter media synchronization. Ex: When you are playing movie, the audio plays faster than the video or slower than video.
Mismatch • A mismatch occurs when object data cannot be timely delivered. • The requested data may be hosted on different servers located over heterogeneous networks. • The time taken to recovery is called lag or latency. • For a consistent presentation a component called multimedia formatter is required • Computes the temporal graph and determines the feasible scenarios. • Also considers the unpredictable events.
Elastic Time Computation • Formatter should select some objects time duration to be shrinked or stretched so that it reduces lags. • Implementation of pre fetching mechanism becomes a necessity. • But to generate a good presentation resource limitations should be taken into account. • Within this context the authors proposed a context aware adaptation technique for SMIL encoded documents.
Brief summary of the Paper • In this paper, the authors discussed an algorithm aimed at improving the execution of a multimedia presentation. • Achieved by scheduling the pre fetchings in the presentations while monitoring bandwidth and memory availabilities. • A request pattern is computed from temporal graph in order to decide which objects should be pre fetched, real time delivered and discarded.
Brief summary of the Paper(contd…) • At authoring stage algorithm produces different sub codes such that each one can be adapted in a specific context. • At compile time, it makes it possible to assess whether the QOS of the presentation can be guaranteed or not. • At runtime the algorithm can provide a mechanism to monitor the elastic time computation in case of a mismatch occurrence.
Related works • Madeus • Authoring and presentation system for interactive multimedia documents • During compile time, formatter checks the intrinsic consistencies. • During exhibition, formatter computes the elastic time. • However Madeus formatter is based on a greedy solution and does not consider the qualitative result of presentation.
GRiNS • Its a player dedicated for presenting SMIL documents. • The system has a formatter that has the ability to perform context based adaptations to some extent. • But it doesn’t provide neither computation of elastic time nor the evaluation of the adapted presentation quality is provided. • Many solutions doesn’t take into account the bandwidth and memory limitations.
Overview of SMIL • Synchronized Multimedia Integration Language • Based on XML • Sample Code <smil> <head>………</head> <body>………</body> </smil>
Head and Body Tags • Head : • It describes the layout of multimedia. • 1) Root Layout: size and part of the screen used to display. • 2)The Regions : Each region is a frame located inside the root layout and dedicated to display one or more as in the SMIL document. • A region is located by giving its dimensions and its position. • Body : • Contains information referring to temporal behavior.
Some Tags of SMIL • <PARL/> Used to declare elements in parallel • <SEQL/> Process a set of elements sequentially according to their order. • <PREFETCH/> Downloads entire or a part of the required media and stores it into memory until it is effectively requested. Uses URL and timing attributes.
Context Aware Adaptation Approach • Adaptation of a multimedia document can be performed at compile or run time. • Usually performed by the player. • But such adaptations are energy and CPU consuming and so should be run on resource-limited devices. • So, a proxy server is preferred. It recovers the user file and some context information. The formatter run by proxy checks the intrinsic consistency of the code by building a temporal graph.
Elastic time adjustments may also be enforced in order to guarantee a consistent presentation. • Elastic runtime when applied in runtime permits to correct presentation mismatches caused by unpredictable conditions, like wait delays and user interactions. • Usually a still object duration doesn’t make a great impact on the presentation content. • Shrinking or stretching of a continuous media should be done with caution.
Once the multimedia document is adapted and sent to the player, the latter identify which objects will take part in the presentation and their durations. • The time left for the data to be pre fetched is called Waitdelay. • The proxy formatter should also be available about the buffering capacity of the player that is Maxbuf.
SMIL Request Pattern • Pre fetching can be very effective if the client predicts the user patterns accurately. • This pattern is characterized by the following parameters. • Id(O): identifier of the media object O. • Req(O): a URL associated with the media O; URL is used to request the data. • Size(O): size of the file. • Res(O) : the amount of data stream needed to play one second of the object O.
Ps and Pe are two mappings that encode the conditioning relations specified. • Ps(O’,O)=1 if the start of O is conditioned by start or end of O’. • Pe(O’,O)=1 if the end O is conditioned by either start or the end of the object O’. • These relations make it possible to check the intrinsic consistency of the document. • Minbegin(O) and Maxbegin(O).
Scheduling Process • A scheduler is run to determine for each object required in the presentation, whether the data should be pre fetched or delivered or discarded. • It computes a set of parameters that allows to schedule the start and duration of the pre fetching and assesses the needs for each object. • BWS : Denotes the maximum bandwidth rate available. • MEMS : Denotes the maximum memory space available.
Priority listing of objects is done. • For this Datasize(O) of every object is determined. • Waitdelay can be can be determined by Datasize. • BWS = ∑(Datasize(O)/(Minbegin(O)+Waitdelay)). • HTTP protocol is used only if the client device has a large storage space like hard disk. • RTSP download requests are favored than HTTP requests because of the reduced time lag. • Once all the parameters are calculated scheduler sorts the objects based the following rules.
Rules for sorting by the Compiler • Rule 1: • Priority is given to objects whose start or end is not conditioned by either the start or end of others. • Rule 2: • If the relation Ps cannot decide between some objects, then the scheduler considers weight. W(O) assess the impact of object O in the consistency of the presentation. The higher the weight, the higher is the priority.
Authoring a Context-adapted SMIL code • Involves the editing of the context adapted SMIL document • Adapting the code in order to cope up with user requirements and connection speed and the memory capacity. • Ex: identifying the user’s device involves finding which kind of operating system • If all the adapted codes do not match the current context a specific code will be supplied
<SEQL> is assigned the value of Waitdelay. • In the mean time the new parallel block which contains <prefetch/> commands is encoded. • <seq begin=“Waitdelay” </seq> <par id=“Prefi” <prefetch id=“O1” src= “ref1” Begin=“time(O1)” <dur=“length(O1) bandwidth=“Bwp(O1)”../> </par>
Runtime Adaptation • It mainly deals with the unpredictable errors. • The scheduler adjusts the parameters of object prefetchings set at compile time. • If the scheduler evaluates that the available resources are dropping dramatically, then it can decide to cancel a download and to replace the object with a neutral one so that the synchronization of the presentation can be guaranteed. • This proposal can be applied to other languages like NCL,XHTML.
Conclusion • As the demand of distributed multimedia applications has increased rapidly, it becomes urgent to provide new solutions to cope with resource limitations. • The complexity of the algorithm proposed by the authors is low, so makes it possible to consider during runtime. • Future adaptation will lead to consider to deal with energy limitations.