US20110216821A1 - Method and apparatus for adaptive streaming using scalable video coding scheme - Google Patents
Method and apparatus for adaptive streaming using scalable video coding scheme Download PDFInfo
- Publication number
- US20110216821A1 US20110216821A1 US13/038,619 US201113038619A US2011216821A1 US 20110216821 A1 US20110216821 A1 US 20110216821A1 US 201113038619 A US201113038619 A US 201113038619A US 2011216821 A1 US2011216821 A1 US 2011216821A1
- Authority
- US
- United States
- Prior art keywords
- bit rate
- terminal
- layer
- video
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234327—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/637—Control signals issued by the client directed to the server or network components
- H04N21/6377—Control signals issued by the client directed to the server or network components directed to server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
Definitions
- Apparatuses and methods consistent with to scalable video coding and more particularly, to a method and an apparatus for performing scalable video coding in adaptive video streaming.
- the adaptive video streaming refers to a video streaming service provided in different bit rates according to a state of a network or a terminal.
- An example of the adaptive video streaming includes the smooth streaming.
- the smooth streaming adaptively provides a user with videos having different bit rates according to a state of a variable network and terminal, e.g., a CPU state of the terminal, so that the user can enjoy the video without buffering the video if the state of the network or the terminal becomes poor.
- the conventional adaptive video streaming scheme separately codes and stores all the videos having different bit rates, so that a load of the server is increased.
- FIG. 1 is a diagram illustrating a video coding and transmission scheme in the conventional adaptive video streaming.
- a server 110 provides a terminal 120 with videos having three types of bit rates, 10 kbps, 20 kbps, and 30 kbps.
- the server 110 separately codes and stores all the videos corresponding to the three types of bit rates.
- Reference numbers 111 , 112 , and 113 refer to the videos having the bit rates of 10 kbps, 20 kbps, and 30 kbps for a predetermined time unit.
- the videos having the bit rates of 10 kbps, 20 kbps, and 30 k are also identically coded and stored separately.
- the predetermined time unit is generally called a fragment.
- the server 110 transmits one of the three videos 111 , 112 , and 113 according to a state of a network and a terminal.
- the server 110 codes and stores the video corresponding to a bit rate of 60 kbps for a time unit, i.e., a single fragment.
- FIG. 1 is assumed that the videos having the three different types of bit rates are streamed. However, if the number of videos having different bit rates increases, a size of the videos to be stored by the server 110 is greatly increased. Further, it is not illustrated in FIG. 1 , but the videos are transmitted to the terminal 120 through multiple intermediate nodes. In this case, as the size of the videos increases, the intermediate nodes must store and process a larger size of the corresponding video.
- aspects of the exemplary embodiments provide a method and an apparatus for adaptive video streaming using a multi-layer video coding scheme.
- exemplary embodiments provide a method and an apparatus for adaptively selecting layer data according to state information of a terminal and providing a video streaming service.
- a method for a video streaming service including: generating layer data for a corresponding video in accordance with a layer coding scheme using residual data; receiving bit rate information including a bit rate decodable in a terminal from the terminal; selecting a layer necessary for a decoding of a video corresponding to the decodable bit rate from among the generated layer data; and transmitting layer information and layer data corresponding to the selected layer to the terminal.
- a method which receives a video streaming service including: transmitting bit rate information including a bit rate decodable in a terminal to a server; receiving layer information and layer data corresponding to a layer selected by the server from the server in order to decode a video corresponding to the decodable bit rate; and decoding the video corresponding to the decodable bit rate by using the layer information and the layer data, in which the layer selected by the server is selected from among layer data generated for the corresponding video in accordance with a layer coding scheme using residual data.
- an apparatus for a video streaming service including: a scalable coding unit which generates layer data for a corresponding video in accordance with a layer coding scheme using residual data; a controller which receives bit rate information including a bit rate decodable in a terminal from the terminal and selecting a layer necessary for a decoding of a video corresponding to the decodable bit rate from among the generated layer data; and a multiplexer which multiplexes layer information and layer data corresponding to the selected layer to the terminal and transmitting the multiplexed layer information and layer data.
- an apparatus which receives a video streaming service, the apparatus including: a controller which transmits bit rate information including a bit rate decodable in a terminal to a server; a demultiplexer which receives and demultiplexes layer information and layer data corresponding to a layer selected by the server from the server in order to decode a video corresponding to the decodable bit rate; and a scalable decoding unit which decodes the video corresponding to the decodable bit rate by using the layer information and the layer data, in which the layer selected by the server is selected from among the layer data generated for the corresponding video in accordance with a layer coding scheme using residual data.
- the server generates the layer data for the video in accordance with the layer coding scheme using the residual data
- the terminal transmits the bit rate information of the bit rate decodable in the terminal to the server considering the state of the network or terminal
- the server selects the layer necessary for the decoding of the video corresponding to the bit rate information from among the layer data and transmits the layer information and the layer data of the selected layer to the terminal.
- the terminal can adaptively receive the layer data providing the scalability according to the state of the network or terminal, so that the state of the network or terminal can be applied to the streaming service in real time.
- FIG. 1 is a diagram illustrating a video coding and transmission scheme in adaptively streaming a video according to a conventional art
- FIG. 2 is a diagram illustrating a scheme of providing a network adaptive streaming service according to a multi-layer coding scheme using residual video according to an exemplary embodiment
- FIG. 3 is a diagram illustrating a construction of a server according to an exemplary embodiment
- FIG. 4 is a diagram illustrating a construction of a terminal according to an exemplary embodiment
- FIG. 5 is a flowchart illustrating an operation of a server according to an exemplary embodiment.
- FIG. 6 is a flowchart illustrating an operation of a terminal according to an exemplary embodiment.
- An exemplary embodiment provides an adaptive video streaming service employing a Scalable Video Coding (SVC) according to a request of a terminal.
- SVC Scalable Video Coding
- a server preferentially codes a plurality of layer data necessary for the support of plural bit rates for a corresponding video in accordance with a multi-layer coding scheme using residual data and stores the encoded data. Then, when the server receives a request for the corresponding video from the terminal, the server transmits entire bit rate information including bit rates supported by the server, fragment information, and base layer data of the corresponding video to the terminal.
- the terminal decodes the video by using the base layer data.
- the terminal monitors a current state of the terminal or a network and selects a single bit rate from among the plural bit rates based on the monitoring result. Then, the terminal transmits the selected bit rate to the server.
- the server selects layer data necessary for the decoding of the video corresponding to the received bit rate from among the stored layer data and transmits the selected layer data and layer information of the selected layer data to the terminal.
- the terminal decodes the video corresponding to the bit rate selected by the terminal by using the received layer information and layer data.
- a Scalable Video Coding refers to the video coding technology which constructs a single bit stream so that a single video content has various spatial resolutions, definitions and frame rates, and thus enables several terminals to receive the bit stream appropriate to the capability of a corresponding terminal to restore the video.
- a purpose of the SVC technology is to provide the various terminals and network environments with the optimum service.
- the SVC according to an exemplary embodiment is implemented by the multi-layer coding scheme using the residual video.
- the multi-layer coding refers to a scheme of generating layered video data with one-time coding in a coding device, wherein when the video is coded using the residual video, a size of video data is reduced, so that a size of the video data to be stored in the server is decreased.
- FIG. 2 illustrates a scheme of providing a network adaptive streaming service according to the multi-layer coding scheme using a residual video according to an exemplary embodiment.
- a server 210 provides a terminal 220 with videos having three types of bit rates, 10 kbps, 20 kbps, and 30 kbps, similar to FIG. 1 .
- the bit rates of 10 kbps, 20 kbps, and 30 kbps are only examples for convenience of the description, and it is a matter of course that an actual bit rate can be changed depending on a system.
- the server 210 uses the multi-layer coding scheme using residual data in order to provide the terminal 220 with the network adaptive streaming service.
- each of layer data in multi-layer coding can be a time layer, a spatial layer, a Signal to Noise Ratio (SNR) layer, etc.
- SNR Signal to Noise Ratio
- Zero layer data 211 of a base layer is identical to the data 111 of the coded video having the bit rate of 10 kbps illustrated in FIG. 1 .
- First layer data 212 is coded data of residual data which corresponds to a difference between the up-converted zero layer data 211 and the original video data having the bit rate of 20 kbps.
- second layer data 213 is coded data of residual data which corresponds to a difference between the up-converted first layer data 212 and the original video data having the bit rate of 30 kbps.
- the server does not code the video by using the residual video, so that the bit rate of the first layer data 112 is 20 kbps and the bit rate of the second layer data 113 is 30 kbps.
- the server 210 codes the layer data of a low degree by using the residue of the difference between the up-converted data and the original video data, so that the bit rate of each of the layer data is as low as about 10 kbps over the bit rate of the original video data.
- the bit rate of the first layer data 212 is (10+ ⁇ 1) kbps and the bit rate of the second layer data 213 is (10+ ⁇ 2) kbps.
- the server 110 of FIG. 1 stores the video data of the bit rate of 60 kbps, but the server 210 of FIG. 2 stores the video data of the bit rate of (30+ ⁇ 1+ ⁇ 2) kbps.
- the value of ( ⁇ 1+ ⁇ 2) is a very small value compared to 30, so that the bit rate of the video stored by the server 210 of FIG. 2 is much smaller than that of the video stored by the server 110 of FIG. 1 . Therefore, in the multi-layer data coding scheme by using the residual video as illustrated in FIG. 2 , the size of the video stored by the server 210 becomes advantageously very small.
- the server 210 codes the corresponding video in accordance with the multi-layer data coding scheme using the residue and stores the multi-layer data. Then, when the server 210 receives a request for the corresponding video from the terminal 220 , the server 210 transmits entire bit rate information indicating bit rates supportable by the server 210 for the corresponding video to the terminal 210 .
- the server 210 transmits the entire bit rate information in order to make a report that the server 210 can support the bit rates of 10 kbps, 20 kbps, and 30 kbps.
- the terminal 220 may select a single bit rate from among the bit rates included in the entire bit rate information or select layer information mapped to the selected bit rate, and transmit the selected bit rate or the selected layer information to the server 210 .
- the entire bit rate information can be periodically transmitted. Further, when the format of the video data is renewed, etc., the entire bit rate information can be aperiodically transmitted.
- the server 210 transmits fragment information and base layer data together with the entire bit rate information.
- the terminal 220 decodes the base layer video, i.e. the video of the bit rate of 10 kbps in the example, by using the base layer data.
- the fragment refers to a time unit for which the data is transmitted.
- the zero layer data and the layer information are multiplexed and transmitted in the zero th fragment
- the zero layer data, the first layer data, the second layer data, and the layer information are multiplexed and transmitted in the i th fragment
- the zero layer data, the first layer data, and the layer information are transmitted in the (i+1) th fragment.
- the terminal 220 monitors a state of the network or the terminal.
- the terminal 220 selects a single bit rate from among the bit rates included in the entire bit rate information indicating the bit rates supportable by the server 210 and transmits bit rate information indicating the selected bit rate to the server 210 .
- the server 210 selects a layer necessary for the decoding of the video corresponding to the selected bit rate and transmits layer information and layer data corresponding to the selected layer to the terminal 220 .
- the terminal 220 when the terminal 220 can decode the video of the bit rate of 20 kbps, the terminal 220 makes a report of the decoding possibility of the video of the bit rate of 20 kbps to the server 210 , and the server 210 selects the zero layer data 211 and the first layer data 212 in the corresponding fragment and transmits the layer data and the layer information of the selected layer to the terminal 220 . Then, the terminal 220 decodes the video of the bit rate of 20 kbps by using the zero layer data 211 and the first layer data 212 .
- the terminal 220 If the terminal 220 can decode the video of the bit rate of 30 kbps, the terminal 220 makes a report of the decoding possibility of the video of the bit rate of 30 kbps to the server 210 , and the server 210 selects the zero layer data 211 , the first layer data 212 , and the second layer data 213 in the corresponding fragment and transmits the layer data and the layer information of the selected layer to the terminal 220 . Then, the terminal 220 decodes the video of the bit rate of 30 kbps by using the zero layer data 211 , the first layer data 212 , and the second layer data 213 .
- the bit rate information can be periodically or aperiodically transmitted from the terminal 220 to the server 210 .
- the terminal 220 can select a single bit rate from among the bit rates included in the entire bit rate information based on the identified state value and transmit the information of the selected bit rate to the server 220 at a corresponding time point.
- the server 210 does not receive the bit rate information from the terminal 220 , but can self-measure the state of the network or terminal, select an appropriate bit rate in the corresponding fragment, and transmit layer data and layer information corresponding to the selected bit rate to the terminal 220 .
- FIG. 3 is a diagram illustrating a construction of the server according an exemplary embodiment.
- the server 210 includes a controller 310 , a scalable coding unit 320 , a multiplexer 330 , and a transmitting/receiving unit 340 .
- the scalable coding unit 320 generates, codes, and stores at least two layer data for a corresponding video.
- the three layers are exemplified for description, but the number of layers can be changed according to the implementation of the system. Further, the specific construction of the scalable coding unit 320 can be implemented in various schemes, but their description will be omitted.
- the controller 310 When the controller 310 receives an initial request for the corresponding video from the terminal 220 through the transmitting/receiving unit 340 , the controller 310 transmits entire bit rate information, fragment information, and base layer data of the corresponding video to the terminal 220 . Further, the controller 310 receives bit rate information indicating the bit rate, which the terminal 220 selects from among the bit rates included in the entire bit rate information, through the transmitting/receiving unit 340 , selects a layer according to the received bit rate information, and transfers layer information and layer data of the selected layer to the multiplexer 330 .
- the multiplexer 330 multiplexes the layer data and the layer information into a predetermined format and transmits the multiplexed layer data and layer information to the terminal 220 through the transmitting/receiving unit 340 .
- FIG. 4 is a diagram illustrating a construction of the terminal according to an exemplary embodiment.
- a controller 410 makes a request for a video to the server 210 , receives entire bit rate information, fragment information, and base layer information of the corresponding video from the server 210 , and restores a basic video by using the received information. Further, the controller 410 monitors a state of the terminal or network, selects a single bit rate decodable in the terminal 220 from among the bit rates included in the entire bit rate information according to the monitoring result, generates bit rate information indicating the selected bit rate, and transmits the generated bit rate information to the server 210 .
- the controller 410 receives data in which layer information and layer data of the layer selected in the server 210 according to the transmitted bit rate information are multiplexed, and transmits the multiplexed data to a demultiplexer 430 .
- the demultiplexer 430 demultiplexes the multiplexed data to the layer information and the layer data and transfers the demultiplexed layer information and layer data to a scalable decoding unit 420 .
- the scalable decoding unit 420 decodes the video in accordance with the multi-layer video decoding scheme by using the layer information and the layer data.
- the specific construction of the scalable decoding unit 420 can be implemented in various schemes, but their description will be omitted.
- FIG. 5 is a flowchart illustrating an operation of the server according to an exemplary embodiment.
- step 501 the server generates, codes, and stores at least two layer data for a corresponding video.
- the server receives an initial request for the corresponding video from the terminal in step 503
- the server transmits entire bit rate information, fragment information, and base layer data of the corresponding video to the terminal in step 505 .
- step 507 the server receives bit rate information indicating the bit rate selected from among the bit rates included in the entire bit rate information from the terminal.
- step 509 the server selects a layer according to the received bit rate information.
- step 511 the server multiplexes the layer information and the layer data of the selected layer into a predetermined format and transmits the multiplexed layer information and layer data to the terminal. Thereafter, steps 507 to 511 are repeated.
- FIG. 6 is a flowchart illustrating an operation of the terminal according to an exemplary embodiment.
- step 601 the terminal makes a request for a video to the server.
- step 603 the terminal receives entire bit rate information, fragment information, and base layer information of the corresponding video from the server and restores a basic video by using the received information.
- step 605 the terminal monitors a state of the terminal or network, selects a bit rate decodable in the terminal from among the bit rates included in the entire bit rate information based on the monitoring result, generates bit rate information indicating the selected bit rate, and transmits the generated bit rate information to the server.
- step 607 the terminal receives data into which layer data and layer information of the layer selected in the server according to the transmitted bit rate are multiplexed.
- step 609 the terminal demultiplexes the multiplexed data to the layer information and the layer data.
- step 611 the terminal decodes the corresponding video in accordance with the multi-layer video decoding scheme by using the demultiplexed layer information and layer data. Thereafter, steps 605 to 611 are repeated.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
A method which provides a video streaming service, and the method includes: generating layer data for a corresponding video in accordance with a layer coding scheme using residual data; receiving bit rate information including a bit rate decodable in a terminal from the terminal; selecting a layer necessary for a decoding of a video corresponding to the decodable bit rate from among the generated layer data; and transmitting layer information and layer data corresponding to the selected layer to the terminal.
Description
- This application claims the benefit under 35 U.S.C. §119(a) to a U.S. patent application entitled “Method and Apparatus for Adaptive Streaming Using Scalable Video Coding Scheme” filed in the U.S. Patent and Trademark Office on Mar. 2, 2010 and assigned Ser. No. 61/309,641, the contents of which are incorporated herein by reference.
- 1. Field
- Apparatuses and methods consistent with to scalable video coding, and more particularly, to a method and an apparatus for performing scalable video coding in adaptive video streaming.
- 2. Description of the Related Art
- The adaptive video streaming refers to a video streaming service provided in different bit rates according to a state of a network or a terminal.
- An example of the adaptive video streaming includes the smooth streaming. The smooth streaming adaptively provides a user with videos having different bit rates according to a state of a variable network and terminal, e.g., a CPU state of the terminal, so that the user can enjoy the video without buffering the video if the state of the network or the terminal becomes poor.
- However, the conventional adaptive video streaming scheme separately codes and stores all the videos having different bit rates, so that a load of the server is increased.
-
FIG. 1 is a diagram illustrating a video coding and transmission scheme in the conventional adaptive video streaming. InFIG. 1 , it is assumed that aserver 110 provides aterminal 120 with videos having three types of bit rates, 10 kbps, 20 kbps, and 30 kbps. In the conventional scheme, theserver 110 separately codes and stores all the videos corresponding to the three types of bit rates. 111, 112, and 113 refer to the videos having the bit rates of 10 kbps, 20 kbps, and 30 kbps for a predetermined time unit. In the next time unit, the videos having the bit rates of 10 kbps, 20 kbps, and 30 k are also identically coded and stored separately. For reference, the predetermined time unit is generally called a fragment.Reference numbers - In a state in which the
server 110 separately codes and stores the videos having the different bit rates, theserver 110 transmits one of the three 111, 112, and 113 according to a state of a network and a terminal. According to this streaming scheme, thevideos server 110 codes and stores the video corresponding to a bit rate of 60 kbps for a time unit, i.e., a single fragment. -
FIG. 1 is assumed that the videos having the three different types of bit rates are streamed. However, if the number of videos having different bit rates increases, a size of the videos to be stored by theserver 110 is greatly increased. Further, it is not illustrated inFIG. 1 , but the videos are transmitted to theterminal 120 through multiple intermediate nodes. In this case, as the size of the videos increases, the intermediate nodes must store and process a larger size of the corresponding video. - Accordingly, aspects of the exemplary embodiments provide a method and an apparatus for adaptive video streaming using a multi-layer video coding scheme.
- Also, exemplary embodiments provide a method and an apparatus for adaptively selecting layer data according to state information of a terminal and providing a video streaming service.
- In accordance with an exemplary embodiment, there is provided a method for a video streaming service, the method including: generating layer data for a corresponding video in accordance with a layer coding scheme using residual data; receiving bit rate information including a bit rate decodable in a terminal from the terminal; selecting a layer necessary for a decoding of a video corresponding to the decodable bit rate from among the generated layer data; and transmitting layer information and layer data corresponding to the selected layer to the terminal.
- In accordance with another exemplary embodiment, there is provided a method which receives a video streaming service, the method including: transmitting bit rate information including a bit rate decodable in a terminal to a server; receiving layer information and layer data corresponding to a layer selected by the server from the server in order to decode a video corresponding to the decodable bit rate; and decoding the video corresponding to the decodable bit rate by using the layer information and the layer data, in which the layer selected by the server is selected from among layer data generated for the corresponding video in accordance with a layer coding scheme using residual data.
- In accordance with another exemplary embodiment, there is provided an apparatus for a video streaming service, the apparatus including: a scalable coding unit which generates layer data for a corresponding video in accordance with a layer coding scheme using residual data; a controller which receives bit rate information including a bit rate decodable in a terminal from the terminal and selecting a layer necessary for a decoding of a video corresponding to the decodable bit rate from among the generated layer data; and a multiplexer which multiplexes layer information and layer data corresponding to the selected layer to the terminal and transmitting the multiplexed layer information and layer data.
- In accordance with another exemplary embodiment, there is provided an apparatus which receives a video streaming service, the apparatus including: a controller which transmits bit rate information including a bit rate decodable in a terminal to a server; a demultiplexer which receives and demultiplexes layer information and layer data corresponding to a layer selected by the server from the server in order to decode a video corresponding to the decodable bit rate; and a scalable decoding unit which decodes the video corresponding to the decodable bit rate by using the layer information and the layer data, in which the layer selected by the server is selected from among the layer data generated for the corresponding video in accordance with a layer coding scheme using residual data.
- According to an exemplary embodiment, the server generates the layer data for the video in accordance with the layer coding scheme using the residual data, the terminal transmits the bit rate information of the bit rate decodable in the terminal to the server considering the state of the network or terminal, and the server selects the layer necessary for the decoding of the video corresponding to the bit rate information from among the layer data and transmits the layer information and the layer data of the selected layer to the terminal.
- Therefore, a size of data stored in the server or the intermediate node is reduced. Further, the terminal can adaptively receive the layer data providing the scalability according to the state of the network or terminal, so that the state of the network or terminal can be applied to the streaming service in real time.
- The above and/or other aspects, features and advantages of the present inventive concept will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:
-
FIG. 1 is a diagram illustrating a video coding and transmission scheme in adaptively streaming a video according to a conventional art; -
FIG. 2 is a diagram illustrating a scheme of providing a network adaptive streaming service according to a multi-layer coding scheme using residual video according to an exemplary embodiment; -
FIG. 3 is a diagram illustrating a construction of a server according to an exemplary embodiment; -
FIG. 4 is a diagram illustrating a construction of a terminal according to an exemplary embodiment; -
FIG. 5 is a flowchart illustrating an operation of a server according to an exemplary embodiment; and -
FIG. 6 is a flowchart illustrating an operation of a terminal according to an exemplary embodiment. - Hereinafter, the exemplary embodiments will be described with reference to the accompanying drawings. In the following description, the same elements will be designated by the same reference numerals although they are shown in different drawings.
- An exemplary embodiment provides an adaptive video streaming service employing a Scalable Video Coding (SVC) according to a request of a terminal.
- Specifically, a server preferentially codes a plurality of layer data necessary for the support of plural bit rates for a corresponding video in accordance with a multi-layer coding scheme using residual data and stores the encoded data. Then, when the server receives a request for the corresponding video from the terminal, the server transmits entire bit rate information including bit rates supported by the server, fragment information, and base layer data of the corresponding video to the terminal.
- The terminal decodes the video by using the base layer data. The terminal monitors a current state of the terminal or a network and selects a single bit rate from among the plural bit rates based on the monitoring result. Then, the terminal transmits the selected bit rate to the server. The server selects layer data necessary for the decoding of the video corresponding to the received bit rate from among the stored layer data and transmits the selected layer data and layer information of the selected layer data to the terminal. The terminal decodes the video corresponding to the bit rate selected by the terminal by using the received layer information and layer data.
- Hereinafter, an exemplary embodiment will be described in detail.
- A Scalable Video Coding (SVC) refers to the video coding technology which constructs a single bit stream so that a single video content has various spatial resolutions, definitions and frame rates, and thus enables several terminals to receive the bit stream appropriate to the capability of a corresponding terminal to restore the video. A purpose of the SVC technology is to provide the various terminals and network environments with the optimum service.
- The SVC according to an exemplary embodiment is implemented by the multi-layer coding scheme using the residual video. The multi-layer coding refers to a scheme of generating layered video data with one-time coding in a coding device, wherein when the video is coded using the residual video, a size of video data is reduced, so that a size of the video data to be stored in the server is decreased.
-
FIG. 2 illustrates a scheme of providing a network adaptive streaming service according to the multi-layer coding scheme using a residual video according to an exemplary embodiment. - In
FIG. 2 , it is assumed that that aserver 210 provides aterminal 220 with videos having three types of bit rates, 10 kbps, 20 kbps, and 30 kbps, similar toFIG. 1 . However, the bit rates of 10 kbps, 20 kbps, and 30 kbps are only examples for convenience of the description, and it is a matter of course that an actual bit rate can be changed depending on a system. Theserver 210 uses the multi-layer coding scheme using residual data in order to provide theterminal 220 with the network adaptive streaming service. For reference, each of layer data in multi-layer coding can be a time layer, a spatial layer, a Signal to Noise Ratio (SNR) layer, etc. - An example of the multi-layer coding scheme using the residual video is as follows.
- Zero
layer data 211 of a base layer is identical to thedata 111 of the coded video having the bit rate of 10 kbps illustrated inFIG. 1 .First layer data 212 is coded data of residual data which corresponds to a difference between the up-converted zerolayer data 211 and the original video data having the bit rate of 20 kbps. Further,second layer data 213 is coded data of residual data which corresponds to a difference between the up-convertedfirst layer data 212 and the original video data having the bit rate of 30 kbps. - In
FIG. 1 , the server does not code the video by using the residual video, so that the bit rate of thefirst layer data 112 is 20 kbps and the bit rate of thesecond layer data 113 is 30 kbps. However, theserver 210 according to an exemplary embodiment codes the layer data of a low degree by using the residue of the difference between the up-converted data and the original video data, so that the bit rate of each of the layer data is as low as about 10 kbps over the bit rate of the original video data. - Referring to
FIG. 2 , the bit rate of thefirst layer data 212 is (10+α1) kbps and the bit rate of thesecond layer data 213 is (10+α2) kbps. In this regard, each of the values of α1 and α2 is a value greatly smaller than 10. Therefore, the bit rate of the data to be stored by theserver 210 is {10+(10+α1)+(10+α2)}=(30+α1+α2) kbps, wherein (α1+α2) is a very small value. - In comparison with the bit rate of the video data stored by the
server 210 ofFIG. 2 and the bit rate of the video data stored by theserver 110 ofFIG. 1 , theserver 110 ofFIG. 1 stores the video data of the bit rate of 60 kbps, but theserver 210 ofFIG. 2 stores the video data of the bit rate of (30+α1+α2) kbps. The value of (α1+α2) is a very small value compared to 30, so that the bit rate of the video stored by theserver 210 ofFIG. 2 is much smaller than that of the video stored by theserver 110 ofFIG. 1 . Therefore, in the multi-layer data coding scheme by using the residual video as illustrated inFIG. 2 , the size of the video stored by theserver 210 becomes advantageously very small. - As described above, the
server 210 codes the corresponding video in accordance with the multi-layer data coding scheme using the residue and stores the multi-layer data. Then, when theserver 210 receives a request for the corresponding video from the terminal 220, theserver 210 transmits entire bit rate information indicating bit rates supportable by theserver 210 for the corresponding video to the terminal 210. - That is, in the above example, the
server 210 transmits the entire bit rate information in order to make a report that theserver 210 can support the bit rates of 10 kbps, 20 kbps, and 30 kbps. The entire bit rate information can be constructed in a format including the bit rate supportable by theserver 210 and layer information necessary for the decoding of the corresponding bit rate, for example, “10 kbps=zero layer”, “20 kbps=zero layer+first-layer”, and “30 kbps=zero layer+first layer+second layer”. The terminal 220 may select a single bit rate from among the bit rates included in the entire bit rate information or select layer information mapped to the selected bit rate, and transmit the selected bit rate or the selected layer information to theserver 210. The entire bit rate information can be periodically transmitted. Further, when the format of the video data is renewed, etc., the entire bit rate information can be aperiodically transmitted. - In the meantime, the
server 210 transmits fragment information and base layer data together with the entire bit rate information. Then, the terminal 220 decodes the base layer video, i.e. the video of the bit rate of 10 kbps in the example, by using the base layer data. For reference, the fragment refers to a time unit for which the data is transmitted. For example, the zero layer data and the layer information are multiplexed and transmitted in the zeroth fragment, the zero layer data, the first layer data, the second layer data, and the layer information are multiplexed and transmitted in the ith fragment, and the zero layer data, the first layer data, and the layer information are transmitted in the (i+1)th fragment. - In the meantime, the terminal 220 monitors a state of the network or the terminal. When the terminal 220 can decode the video of a different bit rate from that of the currently decoded video according to the monitoring result, the terminal 220 selects a single bit rate from among the bit rates included in the entire bit rate information indicating the bit rates supportable by the
server 210 and transmits bit rate information indicating the selected bit rate to theserver 210. Theserver 210 selects a layer necessary for the decoding of the video corresponding to the selected bit rate and transmits layer information and layer data corresponding to the selected layer to the terminal 220. - In the aforementioned example, when the terminal 220 can decode the video of the bit rate of 20 kbps, the terminal 220 makes a report of the decoding possibility of the video of the bit rate of 20 kbps to the
server 210, and theserver 210 selects the zerolayer data 211 and thefirst layer data 212 in the corresponding fragment and transmits the layer data and the layer information of the selected layer to the terminal 220. Then, the terminal 220 decodes the video of the bit rate of 20 kbps by using the zerolayer data 211 and thefirst layer data 212. - If the terminal 220 can decode the video of the bit rate of 30 kbps, the terminal 220 makes a report of the decoding possibility of the video of the bit rate of 30 kbps to the
server 210, and theserver 210 selects the zerolayer data 211, thefirst layer data 212, and thesecond layer data 213 in the corresponding fragment and transmits the layer data and the layer information of the selected layer to the terminal 220. Then, the terminal 220 decodes the video of the bit rate of 30 kbps by using the zerolayer data 211, thefirst layer data 212, and thesecond layer data 213. - In the meantime, the bit rate information can be periodically or aperiodically transmitted from the terminal 220 to the
server 210. In the event that the bit rate information transmitted is aperiodically transmitted, when the state of the network or terminal has a value larger than a predetermined reference value or a value equal to or less than the predetermined reference value while the terminal 220 monitors the state of the network or terminal, the terminal 220 can select a single bit rate from among the bit rates included in the entire bit rate information based on the identified state value and transmit the information of the selected bit rate to theserver 220 at a corresponding time point. - In another embodiment, the
server 210 does not receive the bit rate information from the terminal 220, but can self-measure the state of the network or terminal, select an appropriate bit rate in the corresponding fragment, and transmit layer data and layer information corresponding to the selected bit rate to the terminal 220. -
FIG. 3 is a diagram illustrating a construction of the server according an exemplary embodiment. - The
server 210 includes acontroller 310, ascalable coding unit 320, amultiplexer 330, and a transmitting/receivingunit 340. - The
scalable coding unit 320 generates, codes, and stores at least two layer data for a corresponding video. For reference, inFIG. 2 , the three layers are exemplified for description, but the number of layers can be changed according to the implementation of the system. Further, the specific construction of thescalable coding unit 320 can be implemented in various schemes, but their description will be omitted. - When the
controller 310 receives an initial request for the corresponding video from the terminal 220 through the transmitting/receivingunit 340, thecontroller 310 transmits entire bit rate information, fragment information, and base layer data of the corresponding video to the terminal 220. Further, thecontroller 310 receives bit rate information indicating the bit rate, which the terminal 220 selects from among the bit rates included in the entire bit rate information, through the transmitting/receivingunit 340, selects a layer according to the received bit rate information, and transfers layer information and layer data of the selected layer to themultiplexer 330. - The
multiplexer 330 multiplexes the layer data and the layer information into a predetermined format and transmits the multiplexed layer data and layer information to the terminal 220 through the transmitting/receivingunit 340. -
FIG. 4 is a diagram illustrating a construction of the terminal according to an exemplary embodiment. - A
controller 410 makes a request for a video to theserver 210, receives entire bit rate information, fragment information, and base layer information of the corresponding video from theserver 210, and restores a basic video by using the received information. Further, thecontroller 410 monitors a state of the terminal or network, selects a single bit rate decodable in the terminal 220 from among the bit rates included in the entire bit rate information according to the monitoring result, generates bit rate information indicating the selected bit rate, and transmits the generated bit rate information to theserver 210. Then, thecontroller 410 receives data in which layer information and layer data of the layer selected in theserver 210 according to the transmitted bit rate information are multiplexed, and transmits the multiplexed data to ademultiplexer 430. Thedemultiplexer 430 demultiplexes the multiplexed data to the layer information and the layer data and transfers the demultiplexed layer information and layer data to ascalable decoding unit 420. - The
scalable decoding unit 420 decodes the video in accordance with the multi-layer video decoding scheme by using the layer information and the layer data. The specific construction of thescalable decoding unit 420 can be implemented in various schemes, but their description will be omitted. -
FIG. 5 is a flowchart illustrating an operation of the server according to an exemplary embodiment. - In
step 501, the server generates, codes, and stores at least two layer data for a corresponding video. When the server receives an initial request for the corresponding video from the terminal instep 503, the server transmits entire bit rate information, fragment information, and base layer data of the corresponding video to the terminal instep 505. - In
step 507, the server receives bit rate information indicating the bit rate selected from among the bit rates included in the entire bit rate information from the terminal. Instep 509, the server selects a layer according to the received bit rate information. Instep 511, the server multiplexes the layer information and the layer data of the selected layer into a predetermined format and transmits the multiplexed layer information and layer data to the terminal. Thereafter, steps 507 to 511 are repeated. -
FIG. 6 is a flowchart illustrating an operation of the terminal according to an exemplary embodiment. - In
step 601, the terminal makes a request for a video to the server. Instep 603, the terminal receives entire bit rate information, fragment information, and base layer information of the corresponding video from the server and restores a basic video by using the received information. - In
step 605, the terminal monitors a state of the terminal or network, selects a bit rate decodable in the terminal from among the bit rates included in the entire bit rate information based on the monitoring result, generates bit rate information indicating the selected bit rate, and transmits the generated bit rate information to the server. - In
step 607, the terminal receives data into which layer data and layer information of the layer selected in the server according to the transmitted bit rate are multiplexed. Instep 609, the terminal demultiplexes the multiplexed data to the layer information and the layer data. Instep 611, the terminal decodes the corresponding video in accordance with the multi-layer video decoding scheme by using the demultiplexed layer information and layer data. Thereafter, steps 605 to 611 are repeated. - While the inventive concept has been shown and described with reference to certain exemplary embodiments and drawings thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the inventive concept as defined by the appended claims.
Claims (16)
1. A method for providing a video streaming service, the method comprising:
generating layer data for a corresponding video in accordance with a layer coding scheme using residual data;
receiving bit rate information including a bit rate decodable in a terminal, at the terminal;
selecting a layer for a decoding of a video corresponding to the bit rate decodable in the terminal, from among the generated layer data; and
transmitting layer information and layer data corresponding to the selected layer to the terminal.
2. The method as claimed in claim 1 , further comprising, after the generating of the layer data, transmitting entire bit rate information including bit rates supportable in a server for the corresponding video when a request for the corresponding video is received from the terminal.
3. The method as claimed in claim 2 , wherein the bit rate information including the bit rate decodable in the terminal is selected by the terminal from among the bit rates included in the entire bit rate information by considering a state of the terminal or a network.
4. A method for receiving a video streaming service, the method comprising:
transmitting bit rate information including a bit rate decodable in a terminal, to a server;
receiving layer information and layer data corresponding to a layer selected by the server, from the server to decode a video corresponding to the bit rate decodable in the terminal; and
decoding the video corresponding to the bit rate decodable in the terminal, by using the layer information and the layer data, in which the layer selected by the server is selected from among the layer data generated for the corresponding video in accordance with a layer coding scheme using residual data.
5. The method as claimed in claim 4 , further comprising:
before the transmitting of the bit rate information to the server,
transmitting a request for the corresponding video to the server; and
receiving entire bit rate information including bit rates supportable in the server for the corresponding video.
6. The method as claimed in claim 5 , wherein the bit rate information including the bit rate decodable in the terminal is selected by the terminal from the bit rates included in the entire bit rate information by considering a state of the terminal or a network.
7. An apparatus which provides a video streaming service, the apparatus comprising:
a scalable coding unit which generates layer data for a corresponding video in accordance with a layer coding scheme using residual data;
a controller which receives bit rate information including a bit rate decodable in a terminal, from the terminal and which selects a layer for decoding a video corresponding to the decodable bit rate from among the generated layer data; and
a multiplexer which multiplexes layer information and layer data corresponding to the selected layer and which transmits the multiplexed layer information and layer data to the terminal.
8. The apparatus as claimed in claim 7 , wherein when a request for the corresponding video is received from the terminal, the controller transmits entire bit rate information including bit rates supportable in a server for the corresponding video.
9. The apparatus as claimed in claim 8 , wherein the bit rate information including the bit rate decodable in the terminal is selected by the terminal from among the bit rates included in the entire bit rate information by considering a state of the terminal or a network.
10. An apparatus which receives a video streaming service, the apparatus comprising:
a controller which transmits bit rate information including a bit rate decodable in a terminal, to a server;
a demultiplexer which receives and demultiplexes layer information and layer data corresponding to a layer selected by the server, from the server to decode a video corresponding to the bit rate decodable in the terminal; and
a scalable decoding unit which decodes the video corresponding to the bit rate decodable in the terminal by using the layer information and the layer data,
in which the layer selected by the server is selected from among the layer data generated for the corresponding video in accordance with a layer coding scheme using residual data.
11. The apparatus as claimed in claim 10 , wherein the controller transmits a request for the corresponding video to the server and receives entire bit rate information including bit rates supportable in the server for the corresponding video.
12. The apparatus as claimed in claim 11 , wherein the bit rate information including the bit rate decodable in the terminal is selected by the terminal from among the bit rates included in the entire bit rate information by considering a state of the terminal or network.
13. The method as claimed in claim 5 , wherein the bit rate information is periodically or aperiodically transmitted from the terminal to the server.
14. The method as claimed in claim 5 , wherein the terminal monitors a state value of the terminal or a network, and the terminal selects a single bit rate from among the bit rates included in the entire bit rate information based on the monitored state value of the network or terminal and transmits the bit rate information of the selected bit rate to the server.
15. An apparatus which provides a video streaming service, the apparatus comprising:
a scalable coding unit which generates layer data for a corresponding video in accordance with a layer coding scheme using residual data;
a controller which measures bit rate information including a bit rate decodable by a terminal, from the terminal and which selects a layer for decoding a video corresponding to the bit rate decodable by the terminal from among the generated layer data; and
a multiplexer which multiplexes layer information and layer data corresponding to the selected layer and which transmits the multiplexed layer information and layer data to the terminal.
16. The apparatus as claimed in claim 15 , wherein the controller transmits entire bit rate information including bit rates supportable in a server for the corresponding video to the terminal based on the measured bit rate information.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/038,619 US20110216821A1 (en) | 2010-03-02 | 2011-03-02 | Method and apparatus for adaptive streaming using scalable video coding scheme |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US30964110P | 2010-03-02 | 2010-03-02 | |
| US13/038,619 US20110216821A1 (en) | 2010-03-02 | 2011-03-02 | Method and apparatus for adaptive streaming using scalable video coding scheme |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| US20110216821A1 true US20110216821A1 (en) | 2011-09-08 |
Family
ID=44531324
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/038,619 Abandoned US20110216821A1 (en) | 2010-03-02 | 2011-03-02 | Method and apparatus for adaptive streaming using scalable video coding scheme |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20110216821A1 (en) |
| KR (1) | KR20110099663A (en) |
| CN (1) | CN102783152A (en) |
| WO (1) | WO2011108852A2 (en) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI556638B (en) * | 2013-10-22 | 2016-11-01 | 瑞軒科技股份有限公司 | Multimedia file file header skipping method and electronic device |
| TWI580248B (en) * | 2012-04-12 | 2017-04-21 | Jvc Kenwood Corp | Dynamic image decoding device, dynamic image decoding method and dynamic image decoding program |
| US9936215B2 (en) | 2012-10-04 | 2018-04-03 | Vid Scale, Inc. | Reference picture set mapping for standard scalable video coding |
| US10045025B2 (en) | 2012-01-30 | 2018-08-07 | Samsung Electronics Co., Ltd. | Method and apparatus for hierarchical data unit-based video encoding and decoding comprising quantization parameter prediction |
| US11372806B2 (en) | 2018-04-30 | 2022-06-28 | Samsung Electronics Co., Ltd. | Storage device and server including the storage device |
| EP4064712A4 (en) * | 2019-12-31 | 2022-12-07 | Huawei Technologies Co., Ltd. | COMMUNICATION METHOD AND DEVICE |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101407665B1 (en) * | 2012-10-09 | 2014-06-13 | 주식회사 아이티엑스시큐리티 | video recorder |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040196972A1 (en) * | 2003-04-01 | 2004-10-07 | Bin Zhu | Scalable, error resilient DRM for scalable media |
| US20050076136A1 (en) * | 2002-09-17 | 2005-04-07 | Samsung Electronics Co., Ltd. | Apparatus and method for streaming multimedia data |
| US20060083300A1 (en) * | 2004-10-18 | 2006-04-20 | Samsung Electronics Co., Ltd. | Video coding and decoding methods using interlayer filtering and video encoder and decoder using the same |
| US20070211798A1 (en) * | 2004-04-02 | 2007-09-13 | Boyce Jill M | Method And Apparatus For Complexity Scalable Video Decoder |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20070108434A (en) * | 2006-01-09 | 2007-11-12 | 한국전자통신연구원 | How to improve data sharing in the SC file format |
| KR20070108433A (en) * | 2006-01-09 | 2007-11-12 | 한국전자통신연구원 | How to Share Video Data in SCC File Format Using Chunk Descriptor |
-
2011
- 2011-03-02 US US13/038,619 patent/US20110216821A1/en not_active Abandoned
- 2011-03-02 KR KR1020110018682A patent/KR20110099663A/en not_active Withdrawn
- 2011-03-02 WO PCT/KR2011/001449 patent/WO2011108852A2/en not_active Ceased
- 2011-03-02 CN CN2011800119956A patent/CN102783152A/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050076136A1 (en) * | 2002-09-17 | 2005-04-07 | Samsung Electronics Co., Ltd. | Apparatus and method for streaming multimedia data |
| US20040196972A1 (en) * | 2003-04-01 | 2004-10-07 | Bin Zhu | Scalable, error resilient DRM for scalable media |
| US20070211798A1 (en) * | 2004-04-02 | 2007-09-13 | Boyce Jill M | Method And Apparatus For Complexity Scalable Video Decoder |
| US20060083300A1 (en) * | 2004-10-18 | 2006-04-20 | Samsung Electronics Co., Ltd. | Video coding and decoding methods using interlayer filtering and video encoder and decoder using the same |
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10045025B2 (en) | 2012-01-30 | 2018-08-07 | Samsung Electronics Co., Ltd. | Method and apparatus for hierarchical data unit-based video encoding and decoding comprising quantization parameter prediction |
| TWI580248B (en) * | 2012-04-12 | 2017-04-21 | Jvc Kenwood Corp | Dynamic image decoding device, dynamic image decoding method and dynamic image decoding program |
| US9936215B2 (en) | 2012-10-04 | 2018-04-03 | Vid Scale, Inc. | Reference picture set mapping for standard scalable video coding |
| TWI651964B (en) * | 2012-10-04 | 2019-02-21 | Vid衡器股份有限公司 | Reference image set mapping for standard scalable video coding |
| US10616597B2 (en) | 2012-10-04 | 2020-04-07 | Vid Scale, Inc. | Reference picture set mapping for standard scalable video coding |
| TWI556638B (en) * | 2013-10-22 | 2016-11-01 | 瑞軒科技股份有限公司 | Multimedia file file header skipping method and electronic device |
| US11372806B2 (en) | 2018-04-30 | 2022-06-28 | Samsung Electronics Co., Ltd. | Storage device and server including the storage device |
| US11940949B2 (en) | 2018-04-30 | 2024-03-26 | Samsung Electronics Co., Ltd. | Storage device and server including the storage device |
| EP4064712A4 (en) * | 2019-12-31 | 2022-12-07 | Huawei Technologies Co., Ltd. | COMMUNICATION METHOD AND DEVICE |
| US12250583B2 (en) | 2019-12-31 | 2025-03-11 | Huawei Technologies Co., Ltd. | Communication method and apparatus |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20110099663A (en) | 2011-09-08 |
| CN102783152A (en) | 2012-11-14 |
| WO2011108852A2 (en) | 2011-09-09 |
| WO2011108852A3 (en) | 2011-12-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20110216821A1 (en) | Method and apparatus for adaptive streaming using scalable video coding scheme | |
| KR100971715B1 (en) | Simple multimedia server adaptation to dynamic network loss conditions | |
| US10110655B2 (en) | Method and apparatus for transmitting/receiving media contents in multimedia system | |
| US9369508B2 (en) | Method for transmitting a scalable HTTP stream for natural reproduction upon the occurrence of expression-switching during HTTP streaming | |
| US20100008419A1 (en) | Hierarchical Bi-Directional P Frames | |
| CN102469072A (en) | Streaming media service method, system and client | |
| KR100441604B1 (en) | Apparatus and method for transmitting packet for multimedia streaming service | |
| US20130182705A1 (en) | Method and system for transmitting encoded video signals | |
| JP4732428B2 (en) | Transcoding node and transcoding method for multiple description transcoding | |
| KR20130127211A (en) | Adaptive media streaming transmission method and apparatus for multi network environment | |
| KR20110065159A (en) | System for providing multi-layered content using multiple servers and content service method thereof | |
| US20060159352A1 (en) | Method and apparatus for encoding a video sequence | |
| US7627184B2 (en) | Content distribution/reception device, content transmission/reception method, and content distribution/reception program | |
| Wang et al. | Bit-rate allocation for broadcasting of scalable video over wireless networks | |
| JP2010505333A (en) | Flexible redundant coding | |
| CN107995502B (en) | Method, equipment and system for realizing self-adaptive streaming media | |
| KR100896688B1 (en) | Multimedia service providing method considering the performance of the terminal and the terminal used therein | |
| JP4604851B2 (en) | Transmission device, reception device, transmission processing method, reception processing method, and program thereof | |
| KR101656193B1 (en) | MMT-based Broadcasting System and Method for UHD Video Streaming over Heterogeneous Networks | |
| JP5743350B2 (en) | Data transmission apparatus, forward error correction method, and program | |
| CN103347201A (en) | Video transmission method and system used in group calling of trunking system | |
| JP4182347B2 (en) | Image data communication system and image data communication method | |
| KR100916312B1 (en) | Apparatus and method for video transmission using adaptive weighted error correction coding and multiple representation string coding | |
| KR101272159B1 (en) | Method of svc video transmission based on layer selection scheme on error prone network and apparatus for the same | |
| KR20050103374A (en) | Multimedia service providing method considering a terminal capability, and terminal used therein |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AS | Assignment |
Owner name: SAMSUNG ELECTRONICS CO., LTD., KOREA, REPUBLIC OF Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KIM, DAE-HEE;KIM, HYUN-MUN;CHO, DAE-SUNG;AND OTHERS;REEL/FRAME:025886/0316 Effective date: 20110228 |
|
| STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |