I-Frame Delay

I-Frame Delay

I-Frame Delay (IFD) is a scheduling technique for adaptive streaming of MPEG video. The idea behind it is that streaming scheduler drops video frames when the transmission buffer is full because of insufficient bandwidth, to reduce the transmitted bit-rate. The characteristics of the algorithm.Marek Burza, Jeffrey Kang, Peter van der Stok; [http://www.academypublisher.com/jmm/vol02/no02/jmm02021727.pdf Adaptive Streaming of MPEG-based Audio/Video Content over Wireless Networks] ; Journal of Multimedia vol. 2, no. 2, April 2007; ISSN 17962048] :
#number of frames currently in the buffer (not the number of bytes) is indicating buffer fullness,
#less important frames (B-frame) from the buffer are dropped before the more important frames (I-frame and P-frame),
#the transmission of I-frames is delayed when conditions are bad, even if they are out-of-date w.r.t. the display time (they can still be used to decode subsequent interpredicted frames).

I-Frame Delay algorithm

The IFD mechanism is divided on two parts:
#as the stream is parsed and packetized into network packets, it is also analyzed and the packets are tagged with a priority number reflecting the frame type (I-frame, P-frame or B-frame). Non-video packets are given a highest priority number, which causes that audio will never be dropped.
#during transmission, packets are dropped by the IFD scheduler when the bandwidth is insufficient.

The size of the IFD buffer should be big enough to hold a number of frames but minimum required is two frames, one to hold the frame currently being sent (indicated below as ScheduledFrame), and one currently waiting to be sent (indicated as WaitingFrame). Increasing the IFD buffer size could potentially permit a more elaborate prioritization, however it can cause increased latency and memory usage. The figure below depicts an example of the buffer filling. The numbers represent the priority a packet.

Here the video frames priority numbers are 10 and higher. The packets with priority number 12 belong to the frame scheduled for sending, and the packets with number 11 belong to the waiting frame. On the figure a packet which belongs to the next frame is about to enter the buffer.

As can be seen, it is possible to interleave video packets with non-video packets (audio or system with priority numbers 2 and 0 respectively). When a packet belonging to next frame is about to be written to the IFD buffer and the buffer is full, the IFD scheduler will drop a frame based on the priority assigned earlier. When the network bandwidth is so low that also P-frames need to be dropped, then the GOP (Group of Pictures) is set to be "disturbed" and the rest of the GOP (which depends on the P-frame) is also dropped.

If only B-frames are dropped there should be no distortions in the frame image because there are no subsequent frames depending on them. The dropping of frames by IFD causes the effect of the video playback being temporarily frozen, the duration of which depends on the amount of frames dropped after which the playback resumes from the next frame which got through. For an IFD implementation with a buffer of the size of two frames the algorithm is shown in figure below.

procedure Enqueue(NextFrame) if DisturbedGOP = True then if NextFrame is type I then # New GOP is encountered DisturbedGOP = False # Reset disturbed GOP flag end end if DisturbedGOP = True then Drop NextFrame # Discard rest of disturbed GOP return end if WaitingFrame is empty then WaitingFrame = NextFrame else if NextFrame is type I then WaitingFrame = NextFrame else if NextFrame is type B then Drop NextFrame else if WaitingFrame is type I or P then Drop NextFrame if NextFrame is type P then # Discarded frame is P-frame DisturbedGOP = True # Set disturbed GOP flag end else WaitingFrame = NextFrame end end end end end

References


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Delay of game — For Association football/soccer, see Timewasting. For the administrative decision to cease play and resume at a later time and/or day, see Delay (game). Delay of game is an action in a sports game in which a player or team deliberately stalls the …   Wikipedia

  • FRAME RATE — T&F Frame rate (also known as frame frequency) is the frequency (rate) at which an imaging device produces unique consecutive images called frames. The term applies equally well to computer graphics, video cameras, film cameras, and motion… …   Audio and video glossary

  • Frame transfer CCD — A frame transfer CCD is a specialized CCD, often used in astronomy and some Professional video cameras, designed for high exposure efficiency and correctness.The normal functioning of a CCD, astronomical or otherwise, can be divided into two… …   Wikipedia

  • Round Trip Delay — Der Round Trip Delay (RTD) bezeichnet bei Computernetzwerken die Zeit, die ein Signal innerhalb einer Kollisionsdomäne vom Sender zum Empfänger und wieder zurück braucht. Sie wird in Bitzeiten gemessen. Bei Netzwerkzugriffsverfahren mit einem… …   Deutsch Wikipedia

  • Out of frame — Out Out (out), adv. [OE. out, ut, oute, ute, AS. [=u]t, and [=u]te, [=u]tan, fr. [=u]t; akin to D. uit, OS. [=u]t, G. aus, OHG. [=u]z, Icel. [=u]t, Sw. ut, Dan. ud, Goth. ut, Skr. ud. [root]198. Cf. {About}, {But}, prep., {Carouse}, {Utter}, a.]… …   The Collaborative International Dictionary of English

  • SMPTE time code — SMPTE timecode is a set of cooperating standards to label individual frames of video or film with a timecode defined by the Society of Motion Picture and Television Engineers in the SMPTE 12M specification. Timecodes are added to film, video or… …   Wikipedia

  • SMPTE timecode — is a set of cooperating standards to label individual frames of video or film with a time code defined by the Society of Motion Picture and Television Engineers in the SMPTE 12M specification. SMPTE revised the standard in 2008, turning it into a …   Wikipedia

  • DVB-T2 — List of digital television broadcast standards DVB standards (Europe) DVB S (satellite) DVB S2 DVB T (terrestrial) DVB T2 DVB C …   Wikipedia

  • Ethernet Private Line — (EPL) is a data service defined by the Metro Ethernet Forum, providing a point to point Ethernet connection between a pair of dedicated User Network Interfaces (UNIs), with a high degree of transparency.EPL service is specified using an E Line… …   Wikipedia

  • OA&M — (operations, administration, and maintenance) is a general term used to describe the processes, activities, tools, standards, etc involved with operating, administering, and maintaining any system. More commonly used in the context of computer… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”