System for adaptive video/audio transport over a network
First Claim
1. A method of transporting video over a network channel, comprising the steps of:
- compressing a raw video source into a plurality of frames, each frame comprising a plurality of levels, each level corresponding to a particular degree of compression;
estimating the bandwidth of the network channel;
selecting one of said plurality of levels of each frame to transmit over the network channel in accordance with said bandwidth estimate whereby the level selected optimizes the use of the bandwidth of the network channel; and
sending said selected level of each frame over the network channel.
5 Assignments
0 Petitions
Accused Products
Abstract
A system for adaptively transporting video over networks wherein the available bandwidth varies with time. The system comprises a video/audio codec that functions to compress, code, decode and decompress video streams that are transmitted over networks having available bandwidths that vary with time and location. Depending on the channel bandwidth, the system adjusts the compression ratio to accommodate a plurality of bandwidths ranging from 20 Kbps for POTS to several Mbps for switched LAN and ATM environments. Bandwidth adjustability is provided by offering a trade off between video resolution, frame rate and individual frame quality. The system generates a video data stream comprised of Key, P and B frames from a raw source of video. Each frame type is further comprised of multiple levels of data representing varying degrees of quality. In addition, several video server platforms can be utilized in tandem to transmit video/audio information with each video server platform transmitting information for a single compression/resolution level.
-
Citations
11 Claims
-
1. A method of transporting video over a network channel, comprising the steps of:
-
compressing a raw video source into a plurality of frames, each frame comprising a plurality of levels, each level corresponding to a particular degree of compression; estimating the bandwidth of the network channel; selecting one of said plurality of levels of each frame to transmit over the network channel in accordance with said bandwidth estimate whereby the level selected optimizes the use of the bandwidth of the network channel; and sending said selected level of each frame over the network channel. - View Dependent Claims (2, 3)
-
-
4. A method of transporting video from a video server to a video client over a network channel, comprising the steps of:
-
compressing data from a raw video source so as to generate a plurality of frames, each frame being of a particular frame type, each frame type containing a particular amount of video content information, each frame comprising a plurality of levels, each level corresponding to a particular degree of compression; estimating the bandwidth of the network channel; determining the amount of video information waiting to be displayed at the video client; selecting one of said plurality of levels of each frame to send over the network channel in accordance with said bandwidth estimate whereby the level selected optimizes the use of the bandwidth of the network channel; choosing which frames having a particular frame type to send over the network channel in accordance with the amount of video information waiting to be displayed at the video client; and sending the chosen frames having a particular frame type and of said selected level over the network channel.
-
-
5. A video server for transporting video from a video source over a network channel to a video client, said video source consisting of a plurality of frames of video data, each frame of video data consisting of multiple compression levels and being of a particular type, said video server comprising:
-
receiver means for inputting frames of video data from the video source; sending means coupled to said receiver means, said sending means for determining which compression level within said frame and which frames having a particular type to transmit in accordance with the estimated available bandwidth of the network channel, said sending means for encapsulating said frames of video data into a plurality of packets for transmission over said network channel; and a controller for managing the operation of said receiver means and said sending means whereby the rate of transmission of said sending means is maintained so as to match the available bandwidth of the network channel. - View Dependent Claims (6)
-
-
7. A method of transporting video from a video server to a video client over a network channel, comprising the steps of:
-
compressing data from a raw video source so as to generate a plurality of frames, each frame being of a particular frame type, each frame type containing a particular amount of video content information, each frame comprising a plurality of levels, each level corresponding to a particular degree of compression; estimating the bandwidth of the network channel; determining the amount of video information waiting to be displayed at the video client; selecting one of said plurality of levels of each frame to send over the network channel in accordance with said bandwidth estimate whereby the level selected optimies the use of the bandwidth of the network channel; choosing which frames having a particular frame type to send over the network channel in accordance with the amount of video information waiting to be displayed at the video client; sending the chosen frames of a type containing a higher amount of video data content and of a selected level over the network channel utilizing a reliable communication protocol; and sending the chosen frames of a type containing a lower amount video data content and of a selected level over the network channel utilizing an unreliable communication protocol.
-
-
8. A video server system for transporting video from a plurality of video sources over a network channel to a video client, each video source consisting of a plurality of frames of video data, each frame of video data consisting of a single compression level and being of a particular type, said video server system comprising:
a plurality of video servers, each video server associated with a single video source at a particular compression level, each video server comprising; receiver means for inputting frames of video data from the video source associated with that particular video server; sending means coupled to said receiver means, said sending means for determining which frames having a particular type to transmit in accordance with the available bandwidth of the network channel, said sending means for encapsulating said frames of video data into a plurality of packets for transmission over said network channel; a controller for managing the operation of said receiver means and said sending means; and a rate controller for determining which video server to utilize for transmission of video data based on the available bandwidth of the network channel. - View Dependent Claims (9)
-
10. A method of transporting a video stream over a network channel, comprising the steps of:
-
a) compressing a raw video source into a plurality of quality levels, each quality level corresponding to a particular degree of compression and having an associated group of pictures sequence; b) estimating the bandwidth of the network channel; c) selecting one of the plurality of quality levels in accordance with the bandwidth estimate, wherein the selected quality level optimizes the use of the bandwidth of the network channel during a first time interval; and d) sending the group of pictures sequence associated with the selected quality level over the network channel. - View Dependent Claims (11)
-
Specification