KR20110099663A - 스케일러블 동영상 부호화를 이용한 적응적 스트리밍 방법 및 장치 - Google Patents

스케일러블 동영상 부호화를 이용한 적응적 스트리밍 방법 및 장치 Download PDF

Info

Publication number
KR20110099663A
KR20110099663A KR1020110018682A KR20110018682A KR20110099663A KR 20110099663 A KR20110099663 A KR 20110099663A KR 1020110018682 A KR1020110018682 A KR 1020110018682A KR 20110018682 A KR20110018682 A KR 20110018682A KR 20110099663 A KR20110099663 A KR 20110099663A
Authority
KR
South Korea
Prior art keywords
bit rate
layer
terminal
server
data
Prior art date
Application number
KR1020110018682A
Other languages
English (en)
Inventor
김대희
김현문
조대성
최웅일
박민우
Original Assignee
삼성전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20110099663A publication Critical patent/KR20110099663A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/187Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/266Channel 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/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/442Monitoring 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/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output

Abstract

본 발명이 제공하는 동영상 스트리밍 서비스를 제공하는 방법은, 잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대한 계층 데이터들을 생성하는 과정과, 단말로부터 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 수신하는 과정과, 상기 생성된 계층 데이터들에서, 상기 복호 가능한 비트율에 대응하는 영상의 복호에 필요한 계층을 선택하는 과정과, 상기 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 단말로 송신하는 과정을 포함한다.

Description

스케일러블 동영상 부호화를 이용한 적응적 스트리밍 방법 및 장치 {APPARATUS AND METHOD FOR ADPATIVE STREAMING USING SCALABLE VIDEO CODING SCHEME}
본 발명은 스케일러블 동영상 부호화에 관한 것이다. 더 상세하게는 적응적 동영상 스트리밍 시 스케일러블 동영상 부호화를 수행하는 방법 및 장치에 관한 것이다.
적응적 동영상 스트리밍(streaming)이란 네트워크 또는 단말의 상태에 따라 다른 비트 율로 동영상을 스트리밍하여 서비스하는 것을 말한다.
적응적 동영상 스트리밍의 일 예로 스무드 스트리밍(Smooth Streaming)을 들 수 있다. 스무드 스트리밍은 변화하는 네트워크 상태 및 단말의 상태, 예를 들어 단말의 CPU 상태에 따라 서로 다른 비트율을 가지는 영상을 적응적으로 제공하여 사용자가 네트워크 상태 또는 단말의 상태가 나빠지더라도 끊김 없는 영상을 볼 수 있도록 하는 것이다.
그런데 기존의 적응적 동영상 스트리밍 방식은 서버에서 서로 다른 비트율을 가지는 영상을 모두 별도로 부호화하여 저장하였기 때문에 서버측의 부하가 커진다.
도 1은 기존의 적응적 동영상 스트리밍 시 동영상 부호화 및 송신 방식을 설명하는 도면이다.
도 1에서는 서버(110)가 10kbps, 20kbps, 30kbps의 3가지 비트율을 가지는 동영상을 단말(120)에게 제공하는 경우를 가정한 것이다. 기존에는 서버(110)가 상기 3종류의 비트율에 해당하는 동영상을 모두 별도로 부호화하여 저장하였다. 참조 번호 111, 112, 113은 10kbps, 20kbps, 30kbps의 비트율을 가지는 동영상을 소정 시간 단위로 나타낸 것이다. 다음 시간 단위에도 동일하게 10kbps, 20kbps, 30kbps의 동영상이 각각 부호화되어 저장된다. 참고로 상기 소정 시간 단위는 일반적으로 프래그먼트(fragment)라고 칭해진다.
서버(110)는 상기 서로 다른 비트율을 가지는 동영상을 개별적으로 부호화하여 저장한 상태에서 네트워크 상태 또는 단말의 상태에 따라 상기 3개의 동영상들(111, 112, 113) 중 하나를 송신한다. 이러한 스트리밍 방식에 따르면 서버(110)는 단위 시간 당, 즉, 하나의 프래그먼트 당 60kbps의 비트율에 해당하는 동영상을 부호화하여 저장하게 된다.
상기 도 1은 3종류의 서로 다른 비트율을 가지는 동영상이 스트리밍되는 상황을 가정한 것인데, 다른 비트율을 가지는 동영상의 개수가 더 많아질 경우 서버(110)가 저장해야 하는 동영상의 용량은 매우 커지게 된다. 또한, 도 1에 도시되지는 않았지만 상기 동영상들은 다수의 중간 노드를 통하여 단말(120)로 송신된다. 이 경우 중간 노드들 역시 동영상의 용량이 커짐에 따라 해당 동영상을 저장하고 처리해야 하는 양이 커진다.
본 발명은 다계층 동영상 부호화 방식을 이용하여 적응적 동영상 스트리밍을 제공하는 방법 및 장치를 제공한다.
본 발명은 단말의 상태 정보에 따라 적응적으로 계층 데이터를 선택하여 동영상 스트리밍 서비스를 제공하는 방법 및 장치를 제공한다.
본 발명이 제공하는 동영상 스트리밍 서비스를 제공하는 방법은, 잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대한 계층 데이터들을 생성하는 과정과, 단말로부터 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 수신하는 과정과, 상기 생성된 계층 데이터들에서, 상기 복호 가능한 비트율에 대응하는 영상의 복호에 필요한 계층을 선택하는 과정과, 상기 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 단말로 송신하는 과정을 포함한다.
본 발명이 제공하는 동영상 스트리밍 서비스를 수신하는 방법은, 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 서버로 송신하는 과정과, 상기 복호 가능한 비트율에 대응하는 영상의 복호를 위하여 상기 서버에 의하여 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 서버로부터 수신하는 과정과, 상기 계층 정보 및 계층 데이터를 이용하여 상기 복호 가능한 비트율에 대응하는 영상을 복호하는 과정을 포함하며, 상기 서버에 의하여 선택된 계층은, 잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대하여 생성된 계층 데이터들 중에서 선택된 것임을 특징으로 한다.
본 발명이 제공하는 동영상 스트리밍 서비스를 제공하는 장치는, 잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대한 계층 데이터들을 생성하는 스케일러블 부호화부와, 단말로부터 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 수신하고, 상기 생성된 계층 데이터들에서 상기 복호 가능한 비트율에 대응하는 영상의 복호에 필요한 계층을 선택하는 제어부와, 상기 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 다중화하여 상기 단말로 송신하는 다중화부를 포함한다.
본 발명이 제공하는 동영상 스트리밍 서비스를 수신하는 장치는, 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 서버로 송신하는 제어부와, 상기 복호 가능한 비트율에 대응하는 영상의 복호를 위하여 상기 서버에 의하여 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 서버로부터 수신하여 역다중화하는 역다중화부와, 상기 계층 정보 및 계층 데이터를 이용하여 상기 복호 가능한 비트율에 대응하는 영상을 복호하는 스케일러블 복호화부를 포함하며, 상기 서버에 의하여 선택된 계층은, 잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대하여 생성된 계층 데이터들 중에서 선택된 것임을 특징으로 한다.
본 발명의 구성에 따른 대표적인 효과는 다음과 같다.
본 발명은 서버는 잔차 데이터를 이용한 계층 부호화 방식에 따라 영상에 대한 계층 데이터를 생성하고, 단말은 네트워크 상태 또는 단말의 상태를 고려하여 단말에서 복호 가능한 비트율에 대한 비트율 정보를 상기 서버로 송신하면, 상기 서버는 상기 계층 데이터 중에서 비트율 정보에 대응하는 영상의 복호에 필요한 계층을 선택하여 선택된 계층에 대한 계층 정보 및 계층 데이터를 상기 단말로 송신한다.
따라서 상기 서버 또는 중간 노드에서 저장하는 데이터의 양이 감소한다. 또한, 단말은 네트워크 상태 또는 단말의 상태에 따라 스케일러빌러티를 제공하는 계층 데이터를 적응적으로 제공받을 수 있어 네트워크 상태 또는 단말 상태가 실시간으로 스트리밍 서비스에 적용될 수 있다.
도 1은 기존의 적응적 동영상 스트리밍 시 동영상 부호화 및 송신 방식을 설명하는 도면,
도 2는 본 발명에 따라 잔차 영상을 이용한 다계층 부호화 방식에 따라 네트워크 적응적 스트리밍 서비스를 제공하는 방식을 설명하는 도면,
도 3은 본 발명의 실시예에 따른 서버의 구성을 설명하는 도면,
도 4는 본 발명의 실시예에 따른 단말의 구성을 설명하는 도면,
도 5는 본 발명의 실시예에 따른 서버의 동작을 설명하는 도면,
도 6은 본 발명의 실시예에 따른 단말의 동작을 설명하는 도면.
이하에서 본 발명의 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다.
본 발명의 주요 개념은 다음과 같다. 본 발명은 단말의 요청에 따라 스케일러블 동영상 부호화(Scalable Video Coding: SVC)가 적용된 적응적 동영상 스트리밍 서비스를 제공하는 것이다.
구체적으로 서버는 해당 영상에 대한 복수의 비트율을 지원하기 위해 필요한 복수의 계층 데이터들을 잔차 데이터를 이용한 다계층 부호화 방식으로 부호화하여 미리 저장한다. 이후, 단말로부터 해당 영상의 요청을 수신하면 상기 해당 영상에 대해서 상기 서버가 지원하는 비트율들을 포함하는 전체 비트율 정보와, 프래그먼트 정보, 기본 계층 데이터를 송신한다.
단말은 상기 기본 계층 데이터를 이용하여 영상을 복호한다. 단말은 현재 단말의 상태 또는 네트워크의 상태를 모니터링하고 이 결과를 고려하여 상기 복수의 비트율 중에서 하나의 비트율을 선택한다. 이후 단말은 상기 선택된 비트율을 상기 서버로 송신한다. 서버는 상기 저장된 계층 데이터들 중에서 상기 수신한 비트율에 해당하는 영상의 복호에 필요한 계층 데이터를 선택하고, 상기 선택된 계층 데이터와 상기 선택된 계층 데이터에 대한 계층 정보를 단말로 송신한다. 상기 단말은 수신한 상기 계층 정보와 상기 계층 데이터를 이용하여 상기 단말이 선택한 비트율에 해당하는 영상을 복호한다.
그럼 이하에서 본 발명의 실시예를 상세히 설명한다.
스케일러블 동영상 부호화(Scalable Video Coding: SVC)란 하나의 영상 컨텐츠를 다양한 공간적 해상도와 화질, 다양한 프레임율을 갖도록 하는 하나의 비트 스트림을 구성하여 여러 단말에서 해당 단말의 능력에 적합한 비트 스트림을 수신하여 복원할 수 있도록 하는 동영상 부호화 기술을 말한다. 이는 다양한 단말 및 네트워크 환경에서 최적의 서비스를 제공하기 위한 것이다.
본 발명에서 스케일러블 동영상 부호화는 잔차(Residue) 영상을 이용한 다계층 부호화 방식에 의하여 구현된다. 다계층 부호화란 부호화기에서 한 번의 부호화로 계층화된 영상 데이터를 발생시키는 방식인데 잔차 영상을 이용하여 부호화할 경우 데이터의 용량이 줄어들기 때문에 서버에서 저장해야 하는 영상 데이터의 용량이 감소하게 된다.
도 2는 본 발명에 따라 잔차 영상을 이용한 다계층 부호화 방식에 따라 네트워크 적응적 스트리밍 서비스를 제공하는 방식을 설명하는 도면이다.
도 2에서도 상기 도 1과 같이 10kbps, 20kbps, 30kbps의 3가지 비트율을 가지는 동영상을 단말(220)에게 제공하는 경우를 가정한 것이다. 다만, 상기 10kbps, 20kbps, 30kbps의 비트율은 설명의 편의를 위한 예일 뿐이며, 실제의 비트율은 시스템에 따라 달라질 수 있음은 물론이다. 본 발명에서 서버(210)는 단말(220)에게 네트워크 적응적 스트리밍 서비스를 제공하기 위하여 잔차 데이터를 이용한 다계층 부호화 방식을 사용한다. 참고로 다계층 부호화 시 각 계층 데이터들은 시간적 계층, 공간적 계층, SNR 계층 등이 될 수 있다.
잔차 영상을 이용한 다계층 부호화 방식의 일 예는 다음과 같다.
기본 계층인 0계층 데이터(211)는 상기 도 1에서 설명된 10kbps 비트율을 가지는 영상을 부호화한 데이터(111)와 동일한 것이다. 제1 계층 데이터(212)는 상기 0계층 데이터(211)을 상향 변환한 데이터와, 상기 20kbps 비트율에 해당하는 원본 영상 데이터와의 차이에 해당하는 잔차(residual) 데이터를 부호화한 것이다. 또한, 제2 계층 데이터(213)는 상기 제1계층 데이터(212)를 상향 변환한 데이터와, 상기 30kbps 비트율에 해당하는 원본 영상 데이터와의 차이에 해당하는 잔차 데이터를 부호화한 것이다.
앞서 도 1에서는 잔차 영상을 이용하여 부호화하지 않기 때문에 1계층 데이터(112)의 비트율은 20kbps이고, 제2계층 데이터(112)의 비트율은 30kbps가 된다. 그러나 본 발명에서 서버(210)는 낮은 차수의 계층 데이터를 상향 변환한 데이터와 원본 영상 데이터와의 잔차를 이용하여 부호화하기 때문에, 각 계층 데이터의 비트율을 원본 데이터의 비트율보다 약 10kbps 정도 적다.
도 2에서 제1계층 데이터(212)의 비트율은 (10+α1)kbps이고, 제2계층 데이터(213)의 비트율은 (10+α2)kbps로 표시되었다. 이때 상기 α1의 값 및 α2의 값은 각각 10보다 매우 작은 값이 된다. 결국 서버(210)에서 저장해야 할 데이터의 비트율은 {10+(10+α1)+(10+α2)}=(30+α1+α2)kbps가 된다. 여기서 (α1+α2)는 매우 작은 값이다.
상기 도 2에서 서버(210)가 저장하는 영상 데이터의 비트율과, 상기 도 1에서 서버(110)가 저장하는 영상 데이터의 비트율을 비교하면, 도 1의 경우 서버(110)는 60kbs의 영상 데이터를 저장하지만, 도 2의 경우 서버(210)는 (30+α1+α2)kbps 크기의 영상을 저장한다. 상기 (α1+α2)는 30과 비교하여 매우 작은 값이기 때문에 결과적으로 도 2의 서버(210)에서 저장하는 영상의 비트율은 도 1의 서버(110)에서 저장하는 영상의 비트율보다 매우 적다. 따라서 도 2와 같이 잔차 영상을 이용한 다계층 데이터 부호화 방식을 사용할 경우 서버(210)에서 저장하는 영상의 크기가 매우 작아지는 이점이 있다.
상술한 바와 같이 서버(210)는 해당 영상을 잔차를 이용한 다계층 데이터 부호화 방식에 따라 부호화하여 다계층 데이터를 저장한다. 이후, 단말(210)로부터 해당 영상에 대한 요청을 수신하면, 서버(210)는 상기 해당 영상에 대하여 서버(210)가 지원 가능한 비트율들을 지시하는 전체 비트율 정보를 송신한다.
즉, 상기 예에서 서버(210)는 10kbps, 20kbps, 30kbps를 지원할 수 있음을 알리기 위하여 전체 비트율 정보를 송신한다. 상기 전체 비트율 정보는, 예를 들어, “10kbps=0계층”, “20kbps=0계층+1계층”, “30kbps=0계층+1계층+2계층”과 같이 서버(210)가 지원할 수 있는 비트율과 해당 비트율의 복호에 필요한 계층 정보를 포함하는 형식으로 구성될 수 있다. 단말(220)은 상기 전체 비트율 정보에 포함된 비트율들 중 선택한 하나의 비트율을 선택하거나, 또는 상기 선택한 비트율에 매핑된 계층 정보를 선택하여 서버(210)로 송신할 수도 있을 것이다. 상기 전체 비트율 정보는 주기적으로 송신될 수 있다. 또한, 영상 데이터의 형식이 갱신되는 등의 경우에는 비주기적으로도 송신될 수 있다.
한편, 서버(210)는 상기 전체 비트율 정보와 함께 프래그먼트 정보 및 기본 계층 데이터를 송신한다. 그러면 단말(220)은 상기 기본 계층 데이터를 이용하여 기본 계층 영상, 즉, 상기 예에서 10kbps 영상을 복호한다. 참고로 상기 프래그먼트(fragment)란 데이터가 송신되는 시간 단위를 의미한다. 예를 들어, 0번째 프래그먼트에서는 0계층 데이터와 계층 정보가 다중화되어 송신되고, i번째 프래그먼트에서는 0계층 데이터, 1계층 데이터, 제2계층 데이터 및 계층 정보가 다중화되어 송신되고, (i+1)번째 프래그먼트에서는 0계층 데이터, 제1계층 데이터 및 계층 정보가 송신되는 등이다.
한편, 단말(220)은 네트워크 상태 또는 단말의 상태를 모니터링하고 그 결과를 고려하여 현재 복호되는 영상의 비트율과는 다른 비트율의 영상의 복호가 가능할 경우, 상기 서버(210)에서 지원 가능한 비트율을 지시하는 전체 비트율 정보에 포함된 비트율들 중 하나의 비트율을 선택하고, 상기 선택된 비트율을 지시하는 비트율 정보를 서버(210)에게 송신한다. 서버(210)는 상기 선택된 비트율에 해당하는 영상의 복호에 필요한 계층을 선택하고, 상상기 선택된 계층에 대응하는 계층 정보와 계층 데이터를 상기 단말(220)로 송신한다.
앞서 설명된 예에서, 단말(220)이 20kbps급 영상의 복호가 가능할 경우 단말(220)이 이를 서버(210)에게 알리면, 서버(210)는 해당 프래그먼트에서 0계층 데이터(211)와, 제1 계층 데이터(212)를 선택하고, 선택된 계층에 대한 계층 데이터 및 계층 정보를 함께 단말(220)로 송신한다. 그러면 단말은 상기 계층 정보와 0계층 데이터(211)와, 제1 계층 데이터(212)를 이용하여 20kbps급 영상을 복호한다.
만일 단말(220)이 30kbps급 영상의 복호가 가능할 경우, 단말(220)이 이를 서버(210)에게 알리고 서버(210)는 해당 프래그먼트에서 0계층 데이터(211)와, 제1 계층 데이터(212), 제2 계층 데이터를 선택하고, 선택된 계층에 대한 계층 데이터 및 계층 정보를 함께 단말(220)로 송신한다. 그러면 단말(220)은 상기 계층 정보와 0계층 데이터(211)와, 제1 계층 데이터(212), 제2계층 데이터를 이용하여 30kbps급 영상을 복호한다.
한편, 상기 단말(220)에서 서버(210)로 송신하는 비트율 정보는 소정 시간 주기 또는 비주기적으로 송신될 수 있다. 비주기적인 경우 단말(220)이 네트워크 상태 또는 단말의 상태를 모니터링하고 있다가 네트워크 상태 또는 단말의 상태가 소정 기준값을 초과하거나 기준값 이하일 경우 이를 반영하여 전체 비트율 정보에 포함된 비트율 중에서 하나의 비트율을 선택하고, 상기 선택된 비트율 정보를 해당 시점에서 서버(220)에게 송신할 수 있다.
다른 실시예로, 서버(210)는 단말(220)로부터 비트율 정보를 수신하지 않고 서버(210)가 자체적으로 네트워크 상태 또는 단말의 상태를 측정하여 해당 프래그먼트에서 적절한 비트율을 선택하고 그에 대응하는 계층 데이터들과 계층 정보를 단말(220)에게 송신할 수 있을 것이다.
도 3은 본 발명의 실시예에 따른 서버의 구성을 설명하는 도면이다.
서버(210)는 제어부(310), 스케일러블 부호화부(320), 다중화부(330), 송수신부(340)를 포함한다.
스케일러블 부호화부(320)는 해당 영상에 대한 적어도 둘 이상의 계층 데이터를 생성하고 부호화하여 저장한다. 참고로 상기 도 2에서는 3개의 계층을 예로 들어 설명하였으나, 계층의 수는 시스템 구현에 따라 달라질 수 있다. 또한, 스케일러블 부호화부(320)의 구체적인 구성은 다양한 방식으로 구현될 수 있으며, 그 구체적인 구성 방식이 본 발명의 주된 관심은 아니므로 이에 대한 상세한 설명은 생략한다.
제어부(310)는 송수신부(340)를 통하여 단말(220)로부터 해당 영상에 대한 최초 요청을 수신하면, 상기 단말(220)에게 해당 영상의 전체 비트율 정보, 프래그먼트 정보 및 기본 계층 데이터를 송신한다. 또한, 제어부(310)는 상기 단말(220)이 상기 전체 비트율 정보에 포함된 비트율들 중에서 선택한 비트율을 나타내는 비트율 정보를 송수신부(340)를 통하여 수신하고, 상기 수신한 비트율 정보에 따라 계층을 선택하고, 선택된 계층의 계층 정보 및 계층 데이터를 다중화부(330)로 전달한다.
다중화부(330)는 상기 계층 데이터와 계층 정보를 소정 포맷으로 다중화하여 송수신부(340)를 통하여 상기 단말(220)에게 송신한다.
도 4는 본 발명의 실시예에 따른 단말의 구성을 설명하는 도면이다.
제어부(410)는 서버(210)에게 영상을 요청하고, 서버(210)로부터 해당 영상의 전체 비트율 정보와 프래그먼트 정보 및 기본 계층 정보를 수신하고 기본 영상을 복원한다. 또한, 단말의 상태 또는 네트워크의 상태를 모니터링하고, 그 결과를 고려하여 상기 전체 비트율 정보에 포함된 비트율들 중 상기 단말(220)에서 복호가 가능한 하나의 비트율을 선택하고, 상기 선택된 비트율을 지시하는 비트율 정보를 생성하여 서버(210)로 송신한다. 이후, 상기 송신된 비트율 정보에 대응하여 상기 서버(210)에서 선택된 계층에 대한 계층 정보 및 계층 데이터가 다중화된 데이터를 수신하고, 상기 다중화된 데이터를 역다중화부(430)로 전달한다. 역다중화부(430)는 상기 다중화된 데이터를 계층 정보와 계층 데이터로 역다중화하여 스케일러블 복호화부(420)로 전달한다.
스케일러블 복호화부(420)는 상기 계층 정보와 상기 계층 데이터를 이용하여 다계층 영상 복호 방식을 사용하여 영상을 복호한다. 상기 스케일러블 복호화부(420)의 구체적인 구성은 다양한 방식으로 구현될 수 있으며, 그 구체적 구성이 본 발명의 주된 관심은 아니므로 이에 대한 상세할 설명은 생략한다.
도 5는 본 발명의 실시예에 따른 서버의 동작을 설명하는 도면이다.
501단계에서 해당 영상에 대한 적어도 둘 이상의 계층 데이터를 생성하고 부호화하여 저장한다. 503단계에서는 단말로부터 해당 영상에 대한 최초 요청을 수신하면, 505단계에서 상기 단말에게 해당 영상의 전체 비트율 정보, 프래그먼트 정보 및 기본 계층 데이터를 송신한다.
507단계에서 상기 전체 비트율 정보에 포함된 비트율들 중에서 선택된 비트율을 지시하는 비트율 정보를 상기 단말로부터 수신한다. 509단계에서 상기 수신한 비트율 정보에 따라 계층을 선택하고, 511단계에서는 상기 선택한 계층의 계층 정보 및 계층 데이터를 소정 포맷으로 다중화하여 단말에게 송신한다. 이후, 507 내지 511단계가 반복된다.
도 6은 본 발명의 실시예에 따른 단말의 동작을 설명하는 도면이다.
601단계에서 단말은 서버에게 영상을 요청한다. 603단계에서 서버로부터 해당 영상의 전체 비트율 정보와 프래그먼트 정보 및 기본 계층 정보를 수신하고 기본 영상을 복원한다.
605단계에서는 단말의 상태 또는 네트워크의 상태를 모니터링하고, 그 결과를 고려하여 상기 전체 비트율 정보에 포함된 비트율 중에서 단말에서 복호가 가능한 비트율을 선택하고 상기 선택된 비트율을 지시하는 비트율 정보를 생성하여 서버로 송신한다.
607단계에서 상기 송신된 비트율에 대응하여 상기 서버에서 선택된 계층의 계층 데이터 및 계층 정보가 다중화된 데이터를 수신하며, 609단계에서 상기 다중화된 데이터를 계층 정보와 계층 데이터로 역다중화한다. 611단계에서는 상기 계층 정보와 상기 계층 데이터를 이용하여 다계층 영상 복호 방식에 따라 해당 영상을 복호한다. 이후, 605단계 내지 611단계가 반복된다.

Claims (16)

  1. 동영상 스트리밍 서비스를 제공하는 방법에 있어서,
    잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대한 계층 데이터들을 생성하는 과정과,
    단말로부터 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 수신하는 과정과,
    상기 생성된 계층 데이터들에서, 상기 복호 가능한 비트율에 대응하는 영상의 복호에 필요한 계층을 선택하는 과정과,
    상기 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 단말로 송신하는 과정을 포함하는 동영상 스트리밍 서비스를 제공하는 방법.
  2. 제1항에 있어서, 상기 계층 데이터들을 생성하는 과정 이후,
    상기 단말로부터 상기 해당 영상을 요청하는 메시지를 수신하면, 상기 해당 영상에 대하여 상기 서버에서 지원 가능한 비트율들을 포함하는 전체 비트율 정보를 송신하는 과정을 더 포함하는 동영상 스트리밍 서비스를 제공하는 방법.
  3. 제2항에 있어서, 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보는,
    상기 단말이 상기 단말의 상태 또는 네트워크 상태를 고려하여, 상기 전체 비트율 정보에 포함된 비트율들 중에서 선택된 것임을 특징으로 하는 동영상 스트리밍 서비스를 제공하는 방법.
  4. 동영상 스트리밍 서비스를 수신하는 방법에 있어서,
    단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 서버로 송신하는 과정과,
    상기 복호 가능한 비트율에 대응하는 영상의 복호를 위하여 상기 서버에 의하여 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 서버로부터 수신하는 과정과,
    상기 계층 정보 및 계층 데이터를 이용하여 상기 복호 가능한 비트율에 대응하는 영상을 복호하는 과정을 포함하며,
    상기 서버에 의하여 선택된 계층은, 잔차 데이터를 이용한 계층 부호화 방식에 따라 해당 영상에 대하여 생성된 계층 데이터들 중에서 선택된 것임을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 방법.
  5. 제4항에 있어서, 상기 비트율 정보를 서버로 송신하는 과정 이전에,
    상기 해당 영상을 요청하는 메시지를 상기 서버로 송신하는 과정과,
    상기 해당 영상에 대하여 상기 서버에서 지원 가능한 비트율들을 포함하는 전체 비트율 정보를 수신하는 과정을 포함하는 동영상 스트리밍 서비스를 수신하는 방법.
  6. 제5항에 있어서, 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보는,
    상기 단말이 상기 단말의 상태 또는 네트워크 상태를 고려하여, 상기 전체 비트율 정보에 포함된 비트율들 중에서 선택한 것임을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 방법.
  7. 동영상 스트리밍 서비스를 제공하는 장치에 있어서,
    잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대한 계층 데이터들을 생성하는 스케일러블 부호화부와,
    단말로부터 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 수신하고, 상기 생성된 계층 데이터들에서 상기 복호 가능한 비트율에 대응하는 영상의 복호에 필요한 계층을 선택하는 제어부와,
    상기 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 다중화하여 상기 단말로 송신하는 다중화부를 포함하는 동영상 스트리밍 서비스를 제공하는 장치.
  8. 제7항에 있어서, 상기 제어부는,
    상기 단말로부터 상기 해당 영상을 요청하는 메시지를 수신하면, 상기 해당 영상에 대하여 상기 서버에서 지원 가능한 비트율들을 포함하는 전체 비트율 정보를 송신함을 특징으로 하는 동영상 스트리밍 서비스를 제공하는 장치.
  9. 제8항에 있어서, 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보는,
    상기 단말이 상기 단말의 상태 또는 네트워크 상태를 고려하여, 상기 전체 비트율 정보에 포함된 비트율들 중에서 선택된 것임을 특징으로 하는 동영상 스트리밍 서비스를 제공하는 장치.
  10. 동영상 스트리밍 서비스를 수신하는 장치에 있어서,
    단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 서버로 송신하는 제어부와,
    상기 복호 가능한 비트율에 대응하는 영상의 복호를 위하여 상기 서버에 의하여 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 상기 서버로부터 수신하여 역다중화하는 역다중화부와,
    상기 계층 정보 및 계층 데이터를 이용하여 상기 복호 가능한 비트율에 대응하는 영상을 복호하는 스케일러블 복호화부를 포함하며,
    상기 서버에 의하여 선택된 계층은, 잔차 데이터를 이용한 계층 부호화 방식에 따라 해당 영상에 대하여 생성된 계층 데이터들 중에서 선택된 것임을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 장치.
  11. 제10항에 있어서, 제어부는,
    상기 해당 영상을 요청하는 메시지를 상기 서버로 송신하고, 상기 해당 영상에 대하여 상기 서버에서 지원 가능한 비트율들을 포함하는 전체 비트율 정보를 수신함을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 장치.
  12. 제11항에 있어서, 상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보는,
    상기 제어부가 상기 단말의 상태 또는 네트워크 상태를 고려하여, 상기 전체 비트율 정보에 포함된 비트율들 중에서 선택한 것임을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 장치.
  13. 제 5항에 있어서, 상기 비트율 정보는 주기적 또는 비주기적으로 상기 단말로부터 상기 서버로 송신됨을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 방법.
  14. 제 5항에 있어서, 상기 단말은, 상기 단말 또는 네트워크의 상태 값을 모니터링하고, 상기 모니터링된 상기 단말 또는 네트워크의 상태 값에 근거하여 상기 전체 비트율 정보에 포함된 비트율들 중에서 하나의 비트율을 선택하고, 상기 선택된 비트율의 비트율 정보를 상기 서버로 송신함을 특징으로 하는 동영상 스트리밍 서비스를 수신하는 방법.
  15. 동영상 스트리밍 서비스를 제공하는 장치에 있어서,
    잔차 데이터를 이용한 계층 부호화 방식에 따라, 해당 영상에 대한 계층 데이터들을 생성하는 스케일러블 부호화부와,
    상기 단말에서 복호 가능한 비트율을 포함하는 비트율 정보를 측정하고, 상기 생성된 계층 데이터들에서 상기 복호 가능한 비트율에 대응하는 영상의 복호에 필요한 계층을 선택하는 제어부와,
    상기 선택된 계층에 대응하는 계층 정보 및 계층 데이터를 다중화하여 상기 단말로 송신하는 다중화부를 포함하는 동영상 스트리밍 서비스를 제공하는 장치.
  16. 제15항에 있어서, 상기 제어부는,
    상기 측정된 비트율 정보에 근거하여, 상기 해당 영상에 대하여 상기 서버에서 지원 가능한 비트율들을 포함하는 전체 비트율 정보를 송신함을 특징으로 하는 동영상 스트리밍 서비스를 제공하는 장치.
KR1020110018682A 2010-03-02 2011-03-02 스케일러블 동영상 부호화를 이용한 적응적 스트리밍 방법 및 장치 KR20110099663A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US30964110P 2010-03-02 2010-03-02
US61/309,641 2010-03-02

Publications (1)

Publication Number Publication Date
KR20110099663A true KR20110099663A (ko) 2011-09-08

Family

ID=44531324

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110018682A KR20110099663A (ko) 2010-03-02 2011-03-02 스케일러블 동영상 부호화를 이용한 적응적 스트리밍 방법 및 장치

Country Status (4)

Country Link
US (1) US20110216821A1 (ko)
KR (1) KR20110099663A (ko)
CN (1) CN102783152A (ko)
WO (1) WO2011108852A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101407665B1 (ko) * 2012-10-09 2014-06-13 주식회사 아이티엑스시큐리티 비디오 기록 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104094600B (zh) 2012-01-30 2017-10-03 三星电子株式会社 用于包括量化参数预测的基于分层数据单元的视频编码和解码的方法和设备
SI3833022T1 (sl) * 2012-04-12 2022-06-30 Jvckenwood Corporation Konstruiranje seznama kandidatov za spajanje
WO2014055805A1 (en) 2012-10-04 2014-04-10 Vid Scale, Inc. Reference picture set mapping for standard scalable video coding
TWI556638B (zh) * 2013-10-22 2016-11-01 瑞軒科技股份有限公司 多媒體檔案的片頭略過方法與電子裝置
KR102495915B1 (ko) 2018-04-30 2023-02-03 삼성전자 주식회사 스토리지 장치 및 상기 스토리지 장치를 포함하는 서버
WO2021134618A1 (zh) * 2019-12-31 2021-07-08 华为技术有限公司 通信方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100486713B1 (ko) * 2002-09-17 2005-05-03 삼성전자주식회사 멀티미디어 스트리밍 장치 및 방법
US7313814B2 (en) * 2003-04-01 2007-12-25 Microsoft Corporation Scalable, error resilient DRM for scalable media
EP1738588B1 (en) * 2004-04-02 2018-08-15 Thomson Licensing DTV Complexity scalable video decoding
KR100679022B1 (ko) * 2004-10-18 2007-02-05 삼성전자주식회사 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더
KR20070108434A (ko) * 2006-01-09 2007-11-12 한국전자통신연구원 SVC(Scalable Video Coding)파일포맷에서의 데이터 공유 개선방법
KR20070108433A (ko) * 2006-01-09 2007-11-12 한국전자통신연구원 청크 디스크립터를 이용한 svc 파일포맷에서의 비디오데이터 공유방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101407665B1 (ko) * 2012-10-09 2014-06-13 주식회사 아이티엑스시큐리티 비디오 기록 장치

Also Published As

Publication number Publication date
US20110216821A1 (en) 2011-09-08
WO2011108852A2 (en) 2011-09-09
CN102783152A (zh) 2012-11-14
WO2011108852A3 (en) 2011-12-08

Similar Documents

Publication Publication Date Title
KR20110099663A (ko) 스케일러블 동영상 부호화를 이용한 적응적 스트리밍 방법 및 장치
JP5213085B2 (ja) 符号化システム
JP4643988B2 (ja) ビデオ・オン・デマンド・サーバのシステムおよび方法
CN101390396B (zh) 编码和解码多视角视频以提供均匀画面质量的方法和装置
Seeling et al. Video traffic characteristics of modern encoding standards: H. 264/AVC with SVC and MVC extensions and H. 265/HEVC
US20090232202A1 (en) Wireless video streaming using single layer coding and prioritized streaming
Pulipaka et al. Traffic and statistical multiplexing characterization of 3-D video representation formats
KR101977689B1 (ko) 다계층 영상 부호화 및 복호화 방법 및 장치
Grafl et al. Evaluation of hybrid scalable video coding for HTTP-based adaptive media streaming with high-definition content
KR102170717B1 (ko) 멀티미디어 서비스를 위한 비트 에러율을 이용한 레이트 어댑테이션 방법 및 그 장치
KR20110124161A (ko) 계층 부호화 영상의 송수신 방법 및 장치
US20060159352A1 (en) Method and apparatus for encoding a video sequence
US20130304933A1 (en) Multi-network environment adaptive media streaming transmission method and apparatus
KR101808639B1 (ko) 다중 네트워크 환경 적응형 미디어 스트리밍 전송방법 및 그 장치
KR100897525B1 (ko) Svc 비디오의 rtp 패킷화를 위한 타임스탬프 생성장치 및 그 방법과 그를 이용한 rtp 패킷화 시스템
KR101396948B1 (ko) 하이브리드 다시점 및 계층화 비디오 코딩 방법과 장치
KR101433168B1 (ko) 하이브리드 다시점 및 계층화 비디오 코딩 방법과 장치
KR101656193B1 (ko) 이기종 망에서의 uhd 비디오 전송을 위한 mmt 기반 방송 시스템 및 방법
KR100896688B1 (ko) 단말의 성능을 고려한 멀티미디어 서비스 제공방법 및 그에사용되는 단말기
KR101272159B1 (ko) 에러가 존재하는 네트워크 상에서의 레이어 선택 기반의 svc 비디오 데이터 전송 방법 및 장치
KR20130086011A (ko) 비디오 정보 전송 방법, 비디오 복호화 방법, 비디오 부호화기 및 비디오 복호화기
KR20110050234A (ko) 스케일러블 비디오 스트림 다중화 장치 및 방법

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid