Method and apparatus for streaming scalable video
AssigneeKoninklijke Philips Electronics N.V.
InventorsRobert A. Cohen, Hayder Radha, Kavitha Parthasarathy
Life of this patent
Estimating the term…
Abstract
A system and method are disclosed for streaming scalable video data over a variable-bandwidth network such as a packet-based one. In other words, the number of bits (for FGS) or sub-layers (for discrete multi-layer scalability) is chosen to be transmitted for each enhancement layer frame. Further, these bits or sub-layers are also partitioned over multiple packets if being sent over a packet-based network. Further, a windowing function is used to smooth the variation in the number of bits or sub-layers transmitted for each frame in situations where the network bandwidth is varying.
Claims22
A method for streaming scalable video including base layer frames and enhancement layer frames, comprising the steps of:
- transmitting at least a portion of at least one of the base layer data frames for a given time interval;
- determining if a loss of bandwidth for the given time interval has occurred;
- selecting a number of enhancement layer frames to distribute the loss of bandwidth over;
- reducing a size of the selected number of enhancement layer frames to accommodate the loss of bandwidth transmit;
- and
- transmitting at least a portion of at least one of the enhancement layer frames for the given time interval, the at least one transmitted enhancement layer frame having been reduced in size.
A method for streaming scalable video including base layer data and enhancement layer data, comprising the steps of:
- transmitting the base layer data for a given interval within a plurality of time intervals for a single video stream;
- determining if a loss of bandwidth has occurred during the given interval;
- selecting a predetermined number of frames to distribute the loss of bandwidth over;
- calculating a reduced amount of enhancement layer data to transmit in the predetermined number of frames;
- transmitting the reduced amount of enhancement layer data during the given interval;
- determining if the predetermined number of frames has expired;
- determining if any left-over enhancement layer data exists;
- selecting a second predetermined number of frames to distribute the left-over enhancement data over;
- calculating a second reduced amount of enhancement layer data to transmit in the second predetermined number of frames;
- and
- transmitting the second reduced amount of enhancement layer data in a second given interval.
A method for streaming scalable video including base layer frames and enhancement layer frames, comprising the steps of:
- transmitting at least a portion of at least one of the base layer frames for a given time interval;
- selecting a number of enhancement layer frames if a loss of bandwidth has occurred for the given time interval;
- distributing the loss of bandwidth over the selected number of enhancement layer frames by reducing a size of the selected number of enhancement layer frames;
- and
- transmitting at least a portion of at least one of the enhancement layer frames for the given time interval, the at least one transmitted enhancement layer frame having been reduced in size.
A memory medium including code for streaming scalable video including base layer frames and enhancement layer frames, the code comprising:
- first transmitting code for transmitting at least a portion of at least one of the base layer frames for a given time interval;
- determining code for determining if a loss of bandwidth has occurred for the given time interval;
- selecting code for selecting a number of enhancement layer frames to distribute the loss of bandwidth over;
- calculating code for calculating a reduced size of the selected number of enhancement layer frames;
- and
- second transmitting code for transmitting at least a portion of at least one of the enhancement layer frames for the given time interval, the at least one transmitted enhancement layer frame having been reduced in size.
An apparatus for streaming scalable video including base layer frames and enhancement layer frames, comprising:
- a memory which stores executable code;
- and
- a processor which executes the code stored in the memory so as to:
- transmit at least a portion of at least one of the base layer frames for a given time interval,
- determine if a loss of bandwidth has occurred for the given time interval,
- select a number of enhancement layer frames within the given time interval over which to distribute the loss of bandwidth,
- calculate a reduced size of the selected number of enhancement layer frames to accommodate the loss of bandwidth, and
- transmit at least a portion of at least one of the enhancement layer frames for the given time interval, the at least one transmitted enhancement layer frame having been reduced in size.
An apparatus for streaming scalable video including base layer frames and enhancement layer frames, comprising:
- means for transmitting at least a portion of at least one of the base layer data frames for a given time interval;
- means for determining if a loss of bandwidth has occurred for the given time interval;
- means for selecting a number of enhancement layer frames to distribute the loss of bandwidth over;
- means for reducing a size of the selected number of enhancement layer frames to accommodate the loss of bandwidth;
- and
- means for transmitting at least a portion of at least one of the enhancement layer frames for the given time interval, the at least one transmitted enhancement layer frame having been reduced in size.
Dependencies are inferred from the claim text.