KR101387166B1 - 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템 - Google Patents

데이터 스트림을 전송하기 위한 장치, 방법 및 시스템 Download PDF

Info

Publication number
KR101387166B1
KR101387166B1 KR1020120148708A KR20120148708A KR101387166B1 KR 101387166 B1 KR101387166 B1 KR 101387166B1 KR 1020120148708 A KR1020120148708 A KR 1020120148708A KR 20120148708 A KR20120148708 A KR 20120148708A KR 101387166 B1 KR101387166 B1 KR 101387166B1
Authority
KR
South Korea
Prior art keywords
data
transmission
data stream
layers
layer
Prior art date
Application number
KR1020120148708A
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 주식회사 마크애니
Priority to KR1020120148708A priority Critical patent/KR101387166B1/ko
Application granted granted Critical
Publication of KR101387166B1 publication Critical patent/KR101387166B1/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
    • 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

Abstract

데이터 스트림을 전송하기 위한 장치, 방법 및 시스템이 제공된다. 본 발명에 의하면, 콘텐츠를 이루는 데이터 스트림에 있어서, 어느 한 데이터에 포함되는 하나 이상의 레이어 중 일부와, 상기 데이터와는 상이한 일 이상의 데이터에 포함되는 하나 이상의 레이어 중 일부를 조합하여, 전송 데이터를 생성한다. 또한, 상기 전송 데이터가 전송되는 네트워크의 상태에 기초하여, 상기 전송 데이터에 포함되는 하나 이상의 레이어 중 일부 또는 전부를 전송할지 여부를 제어한다.

Description

데이터 스트림을 전송하기 위한 장치, 방법 및 시스템{AN APPARATUS, A METHOD AND A SYSTEM FOR TRANSMITTING DATA STREAMS}
본 발명은 콘텐츠의 적응적 스트리밍 (Adaptive Streaming) 에 관한 것이다. 더 구체적으로는, 콘텐츠를 적응적으로 스트리밍하는 데 있어서 상기 콘텐츠의 데이터를 효율적으로 전송하는 방법에 관한 것이다.
최근, 웹 상의 콘텐츠를 스트리밍하는 사용자 수가 급격하게 증가하고 있다. 콘텐츠를 스트리밍 (streaming) 하는 것은, 공급자에 의해 제공된 상기 콘텐츠의 데이터가 실시간으로 클라이언트에게 수신되도록 하는 전송 방식을 의미한다. 일반적인 경우, 콘텐츠는 전체적으로 일정한 품질로서 전송된다. 그러나, 상기 데이터가 전송되는 환경은 한정된 자원 (대역폭) 을 갖는 경우가 많기 때문에, 전송할 수 있는 데이터의 양이 때에 따라 변화하는 등 불안정한 상황이 초래될 수 있다. 따라서, 이러한 불안정한 전송 환경에서도 데이터를 원활하게 전송하기 위하여, 전송 환경에 따라 전송하는 데이터의 품질을 변화시키는 적응적 스트리밍 (Adaptive Streaming) 기술, 그 중에서도 예를 들어 가용한 전송 대역폭이나 사용자의 기기 성능의 변화에 따라 콘텐츠의 비트율 (bit rate) 등을 적응적으로 변경하여 전송하는 적응적 비트율 스트리밍 (Adaptive Bitrate Streaming) 기술 등이 활발히 논의되고 있다. 이러한 적응적 스트리밍은 일반적으로 HTTP 환경에서 이루어질 수도 있다.
한편, 이와 같은 적응적 스트리밍에 있어서, 콘텐츠의 데이터가 레이어를 이루도록 인코딩하는 기술을 통해 전송 데이터를 생성하고, 데이터 전송 환경의 상태에 기초하여 상기 레이어의 일부 또는 전부를 전송하는 방법이 알려져 있다. 그 대표적인 예로서 비디오 콘텐츠를 인코딩하는 방식 중에서 SVC (Scalable Video Coding) 방식이 있으며, 이는 기본 레이어로도 비디오 콘텐츠를 재생할 수 있지만, 이에 부가하여 더 고품질의 요소가 덧붙여지면 더 좋은 품질로 재생할 수 있는 방식이다.
[특허문헌] 등록특허 제10-0744309호
다만, 적응적 스트리밍이 효율적으로 이루어지기 위해서는, 데이터의 전송 환경이 변화함에 따라 공급자가 그 전송 환경에 맞추어 적합한 품질의 데이터를 전송할 것을 요구하는 클라이언트의 요청이 공급자 측에 빠르게 반영될 필요가 있다.
그러나, 상기 종래 기술에서는 이러한 클라이언트의 요청이 데이터 공급자 측에 효과적으로 반영되지 않아, 전송 환경의 변화에 공급자가 빠르게 대처하지 못하여, 그 결과 스트리밍 중 데이터 전송이 끊어지는 등의 문제가 있었다.
또한, 전송 환경이 좋고 나쁘고를 반복하는 불안정한 상황에서, 전송되는 콘텐츠의 품질이 좋고 나쁜 상황이 반복될 뿐, 전체적으로 평준화된 품질로 스트리밍하지 못하는 문제도 있었다.
본 발명은 이러한 과제를 해결하기 위해, 데이터가 레이어를 이루도록 구성된 콘텐츠를 전송시, 데이터의 전송 환경에 따라 클라이언트의 상기와 같은 요청이 공급자 측에 빠르게 반영되도록 함으로써, 적응적 스트리밍을 효과적으로 달성하도록 한 것이다.
또한 본 발명은, 데이터가 레이어를 이루도록 구성된 콘텐츠를 전송시, 전송할 필요가 없다고 판정되는 레이어를 전송하지 않음으로써, 콘텐츠의 전송이 보다 효과적으로 이루어지도록 한 것이다.
본 발명의 데이터 스트림 전송 장치는, 각각 하나 이상의 레이어를 포함하는 데이터로 이루어진 데이터 스트림에 있어서, 상기 데이터 스트림에 포함되는 모든 레이어에 대하여 우선순위를 지정하는 우선순위 지정부, 상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 상기 데이터 스트림에 포함되는 모든 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는 선택부, 전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는 제어부, 및 선택된 상기 레이어를 상기 우선순위에 따라 상기 전송 데이터 스트림의 각각의 전송 데이터에 제어된 상기 레이어의 수만큼씩 순서대로 배열하여, 전송 데이터 스트림을 생성하는 전송 데이터 생성부를 구비하는 것을 특징으로 한다.
또한, 본 발명에 기재된 데이터 스트림 전송 방법은, 각각 하나 이상의 레이어를 포함하는 데이터로 이루어진 데이터 스트림에 있어서, 상기 데이터 스트림에 포함되는 모든 레이어에 대하여 우선순위를 지정하는 단계, 상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 상기 데이터 스트림에 포함되는 모든 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는 단계, 전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는 단계, 및 선택된 상기 레이어를 상기 우선순위에 따라, 상기 전송 데이터 스트림의 각각의 전송 데이터에 제어된 상기 레이어의 수만큼씩 순서대로 배열하여 전송 데이터 스트림을 생성하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명에 기재된 데이터 스트림 전송 시스템은, 데이터 스트림을 전송하는 수단 및 상기 데이터 스트림을 수신하는 수단을 구비하고, 상기 데이터 스트림을 전송하는 수단은, 각각 하나 이상의 레이어를 포함하는 데이터로 이루어진 데이터 스트림에 있어서, 상기 데이터 스트림에 포함되는 모든 레이어에 대하여 우선순위를 지정하는 수단, 상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 상기 데이터 스트림에 포함되는 모든 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는 수단, 전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는 수단, 및 선택된 상기 레이어를 상기 우선순위에 따라 상기 전송 데이터 스트림의 각각의 전송 데이터에 제어된 상기 레이어의 수만큼씩 순서대로 배열하여 전송 데이터 스트림을 생성하는 수단을 구비하는 것을 특징으로 한다.
본 발명에 의한 데이터 스트림 전송 방식에 의하면, 각 데이터에 있어서 필요한 레이어만 선택하여 전송할 수 있어, 전송 자원을 효율적으로 이용할 수 있다. 또한, 전송 매개체의 상황에 따라 전송 데이터 스트림의 각 전송 데이터에 포함되는 레이어의 수를 제어할 수 있어, 전송 환경 변화에 빠르게 적응하여 효율적으로 콘텐츠를 전송할 수 있다. 또한, 우선순위 지정 방식에 따라 데이터 스트림에 있어서 중간품질 요소 및 고품질 요소가 나중에 전송될 수도 있으므로, 전송 환경이 나빠질 경우 상대적 고품질 요소를 전송하지 않아도 되며, 또한 전송 환경이 좋아질 경우 상대적 고품질 요소를 나중에 전송할 수 있어 지나간 데이터에 대한 고품질 요소를 보충할 수 있으므로, 불안정한 전송 환경에서도 효율적으로 콘텐츠를 전송할 수 있다.
도 1 은 본 발명에 따라 콘텐츠를 이루는 데이터 스트림을 전송 및 수신하는 시스템의 일실시예 구성도이다.
도 2 는 전송 데이터 스트림을 생성 및 전송하고, 이를 수신측에서 재구성하는 과정의 예시도이다.
도 3 은 우선순위가 지정되는 과정의 예시도이다.
도 4 는 전송 환경이 불량해지는 경우 전송 데이터 스트림이 이에 적응하여 전송되는 과정의 예시도이다.
도 5 는 전송 환경이 양호해지는 경우 전송 데이터 스트림이 이에 적응하여 전송되는 과정의 예시도이다.
도 6 은 일반적인 SVC 방식과 본 발명에 기재된 방식에 의해 동영상 콘텐츠를 전송 및 수신하는 것을 나타내는 비교도이다.
도 7 은 도 6 에서 양 방식에 의해 동영상 콘텐츠의 스트리밍에 차이가 나타난 부분의 확대도이다.
도 1 은 본 발명에 따라 콘텐츠를 이루는 데이터 스트림을 전송 및 수신하는 시스템의 일실시예 구성도이다. 여기서 콘텐츠란, 비디오, 오디오, 이미지, 텍스트, 전자책, 프로그램, 어플리케이션, 하이브리드방식 구현 등 모든 종류의 시각, 청각, 촉각, 후각, 미각, 공감각 등을 사용하여 정보를 전달받는 대상을 의미한다. 또한, 본 시스템에 있어서 콘텐츠를 이루는 데이터 스트림은, 일정 단위 혹은 가변 단위의 데이터로 분할되어 전송된다. 또한, 상기 시스템 (100) 은 데이터 스트림 송신 장치 (200) 및 데이터 스트림 수신 장치 (300) 를 포함한다.
이하에서는 도 1 을 참조하여 데이터 스트림을 전송 및 수신하는 과정을 설명한다.
상기 데이터 스트림 전송 장치 (200) 의 인코딩부 (201) 에서는, 상기 데이터 스트림에 포함되는 각각의 데이터가 하나 이상의 레이어를 포함하도록 인코딩한다. 여기서 콘텐츠의 데이터가 레이어를 포함한다는 것은, 가장 기본적인 데이터를 담고 있는 기본 유닛에, 추가 정보를 담고 있는 레이어가 덧붙여져 또 다른 유닛을 만들어 내되, 기본에 비해 더 많은 정보를 담은 고급의 것이 나올 수 있도록 구현되는 방식을 의미하며, 상기 레이어는 기본 유닛으로 된 단수가 될 수도 있고, 또는 복수가 될 수도 있다.
우선순위 지정부 (202) 에서는, 상기 인코딩부 (201) 에서 인코딩된 데이터에 포함되는 모든 레이어에 대하여 우선순위를 지정한다. 예를 들어, 우선순위 지정부에서는 전송 매개체의 상황이 좋지 않을 경우 고품질 요소를 나타내는 레이어의 우선순위를 낮게 지정할 수도 있으며, 일부 레이어가 전송되더라도 재생에 필요한 시한 내에 수신부에 도달할 수 없거나, 재생 환경이 열악함에 따라 재생에 이용될 수 없거나, 또는 일부 레이어를 재생에 이용하지 않을 예정이라는 등의 사유가 존재할 경우, 이러한 레이어의 우선순위를 낮게 지정할 수도 있다. 우선순위를 지정하는 방식은 특별히 한정되지 않으며, 본 명세서에 개시된 방식뿐만 아니라 이들을 응용, 결합, 변형한 방식, 또는 당업계에 알려진 적절한 방식이 사용될 수 있다. 한편, 도 1 에서는 데이터 스트림 전송 장치 (200) 에 상기 우선순위 지정부 (202) 가 구비되는 구성을 도시하였으나, 이는 일 실시예일 뿐으로, 상기 우선순위 지정부 (202) 는 그 이외에도 필요에 따라 데이터 스트림 수신 장치 (300) 내에 존재하거나 또는 외부에 존재할 수도 있음은 자명하다.
선택부 (203) 에서는, 상기 모든 레이어 중, 실제로 전송 데이터 스트림에 포함될 레이어를 선택한다. 상기 선택은, 상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 이루어진다. 즉, 예를 들어, 데이터 스트림 중 시계열적으로 뒤에 위치하는 데이터에 포함되는 레이어의 전송이 이루어지더라도, 전송되는 데 걸리는 시간으로부터 계산했을 때, 클라이언트에서 데이터 스트림을 재생하기 위해 요구되는 필수 도착 시간까지 전송이 이루어지지 않을 것으로 판단되는 경우, 또는 기존의 전송 및 재생에 관한 데이터로부터 판단했을 때 특정 레이어를 전송하더라도 그 전송이 너무 늦게 이루어져 이를 이용하지 못할 것으로 판단되는 경우, 상기 전송 판단 정보는 이에 따라 각각의 레이어를 전송할지 여부에 대한 판단을 포함할 수 있으며, 선택부 (203) 는 이러한 정보에 따라 전송이 불필요한 레이어는 전송 데이터 스트림에 포함되지 않도록 할 수도 있다. 또한, 상기 전송 판단 정보는, 상황 예측에 따라 각각의 레이어의 전송이 필요한지 여부에 대한 판단을 포함할 수도 있다. 예를 들어, 전송 환경이 나빠지는 경우, 전송 자원을 효율적으로 이용하기 위해 고품질 요소를 나타내는 레이어는 전송 데이터 스트림에 포함되지 않도록 할 수도 있다. 상기 선택하는 방식 역시 특별히 한정되지 않으며, 본 명세서에 개시된 방식뿐만 아니라 이들을 응용, 결합, 변형한 방식, 또는 당업계에 알려진 적절한 방식이 사용될 수 있다. 또한, 상기 전송 판단 정보는 데이터 스트림 전송 장치 (200) 또는 데이터 스트림 수신 장치 (300) 로부터 생성될 수 있으며, 그 외에도 외부에 위치하는 수단으로부터 생성될 수도 있는 것으로서, 어디에서 생성되는지에 대한 제한은 없다. 한편, 도 1 에서는 데이터 스트림 전송 장치 (200) 에 상기 선택부 (203) 가 구비되는 구성을 도시하였으나, 이는 일 실시예일 뿐으로, 상기 선택부 (203) 는 그 이외에도 필요에 따라 데이터 스트림 수신 장치 (300) 내에 존재하거나 또는 외부에 존재할 수도 있음은 자명하다.
제어부 (204) 는 전송 매개체 (101) 의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어한다. 즉, 전송 매개체의 상태가 좋을 경우에는 많은 레이어를 전송할 수 있으므로, 각 전송 데이터에 포함되는 레이어의 수가 많아지도록 제어하며, 상태가 좋지 않아 전송이 원활하지 않을 경우에는 각 전송 데이터에 포함되는 레이어의 수가 적어지도록 제어한다. 또한, 제어부에서는 예를 들어 전송 매개체의 상황이 좋지 않거나, 일부 레이어가 전송되더라도 재생에 필요한 시한 내에 수신부에 도달할 수 없거나, 재생 환경이 열악함에 따라 재생에 이용될 수 없거나, 또는 일부 레이어를 재생에 이용하지 않을 예정이라는 등의 사유가 존재할 경우, 이에 기초하여 각 전송 데이터에 포함되는 레이어의 수를 제어할 수도 있다. 한편, 도 1 에서는 데이터 스트림 전송 장치 (200) 에 상기 제어부 (204) 가 구비되는 구성을 도시하였으나, 이는 일 실시예일 뿐으로, 상기 제어부 (204) 는 그 이외에도 필요에 따라 데이터 스트림 수신 장치 (300) 내에 존재하거나 또는 외부에 존재할 수도 있음은 자명하다.
전송 데이터 생성부 (205) 에서는, 전송 데이터 스트림의 각각의 전송 데이터에, 선택부 (203) 에서 선택된 레이어를, 우선순위 지정부 (202) 에서 지정한 우선순위에 따라, 제어부 (204) 에서 제어된 레이어의 수만큼씩 순서대로 배열하여, 전송 데이터 스트림을 생성한다.
이 전송 데이터로 이루어지는 전송 데이터 스트림은, 전송부 (206) 로부터 전송 매개체 (101) 를 통해 데이터 스트림 수신 장치 (300) 로 전송된다. 상기 전송부 (206) 는 상기 데이터 스트림 전송 장치 (200) 내의 다른 구성요소와 결합되어 구현될 수 있으며, 그 외에도 통상의 기술자에게 있어 자명한 다른 방식으로 구현될 수 있다. 또한, 상기 전송 매개체 (101) 를 통해 전송하는 것은, 네트워크를 통하는 방식뿐 아니라, 유/무선/하이브리드 방식, 또한 일대다/다대다/다대일 방식의 단말대 단말 데이터 전달을 모두 포함하는 개념이다.
한편, 데이터 스트림 수신 장치 (300) 의 수신부 (301) 에서는 상기 전송 매개체 (101) 를 통해 전송된 전송 데이터 스트림을 수신하며, 상기 수신부 (301) 에서는 수신된 전송 데이터 스트림으로부터, 원 콘텐츠의 데이터 스트림 내의 각 데이터에 포함되어 있던 레이어들을 다시 조합하여, 이를 디코딩부 (302) 에 전달한다.
디코딩부 (302) 에서는, 상기 전송 데이터 스트림을 통해 전달된 레이어들을 디코딩하여 원 콘텐츠의 데이터 스트림을 복원한다.
또한, 상술한 바와 같이 데이터 스트림이 전송되는 전송 매개체 (101) 는 그 상태가 수시로 변화할 수 있으며, 데이터 스트림 수신 장치 (300) 의 판정부 (303) 에서는, 이러한 전송 매개체 (101) 상태의 변화를 판정하고, 전송 매개체의 상태를 나타내는 리포트를 데이터 스트림 전송 장치 (200) 로 송신할 수도 있다. 또한, 상기 판정부 (303) 는 전송 데이터 스트림에 포함될 필요가 없는 레이어를 판정하여, 이 판정을 데이터 스트림 전송 장치 (200) 로 송신할 수도 있다. 예를 들어, 상기 판정부 (303) 는 일부 레이어의 전송이 제시간에 이루어지지 못할 것을 판정하여, 이를 나타내는 리포트를 데이터 스트림 전송 장치 (200) 로 송신할 수 있고, 데이터 스트림 전송 장치 (200) 의 선택부 (203) 에서는 이에 기초하여 전송 데이터 스트림에 포함될 레이어를 선택할 수도 있다. 그 외에도, 상기 판정부 (303) 는 전송 매개체의 상황이 좋지 않아 고품질 요소를 나타내는 레이어를 전송 데이터 스트림에서 제외한다던가, 일부 레이어가 전송되더라도 재생에 필요한 시한 내에 수신부에 도달할 수 없다던가 또는 재생 환경이 열악함에 따라 재생에 이용될 수 없다거나, 또는 일부 레이어를 재생에 이용하지 않을 예정이라는 등의 이유로 전송이 불필요한 레이어를 판정할 수도 있다. 상기 판정을 하는 방식은 특별히 한정되지 않으며, 본 명세서에 개시된 방식뿐만 아니라 이들을 응용, 결합, 변형한 방식, 또는 당업계에 알려진 적절한 방식이 사용될 수 있다. 또한, 본 실시예에서는 데이터 스트림 수신 장치 (300) 에서 상기 정보 또는 판정을 데이터 스트림 전송 장치 (200) 로 송신하는 구성을 기재하였으나, 이러한 구성은 적절한 다른 구성, 즉 시스템 (100) 에 포함된 다른 구성요소에 의하여 상기 정보 또는 판정이 송신되거나, 또는 데이터 스트림 송신 장치 (200) 에서 직접 레이어의 전송 필요성을 판정하여 전송 판정 정보를 생성하거나 또한 전송 매개체의 상태를 직접 감지하는 등의 구성으로 대체될 수 있으며, 이에 따라 도 1 에 도시된 판정부 (303) 는 다른 구성요소로 대체되거나 생략될 수 있다.
이하에서는 도 2a 내지 도 2c 를 참조하여 전송 데이터 스트림이 생성되는 과정의 예시를 보다 자세히 서술한다. 이하의 설명에서, Fn (단, n 은 1 이상의 정수) 은 콘텐츠의 데이터 스트림 내에서 n 번째 데이터를 나타내며, 상기 n 번째 데이터의 저품질, 중간품질 및 고품질 요소는 각각 Fn.1, Fn.2 및 Fn.3 으로 표시한다. 즉, 예를 들어 데이터 스트림에서 20 번째 데이터의 저품질, 중간품질 및 고품질 요소는 각각 F20.1, F20.2 및 F20.3 으로 표시한다. 본 명세서에서는 설명을 위해 세 개의 품질만을 가정하였으나, 더 다양한 품질이 있을 수 있다. 한편, 여기서 저품질 요소는 각 데이터의 가장 기본적인 레이어를 의미하며, 중간품질 요소는 상기 저품질 요소에 덧붙여져 중간품질의 데이터를 만들어낼 수 있는 레이어를 의미하고, 또한 고품질 요소는 상기 저품질 및 중간품질 요소에 덧붙여져 고품질을 만들어낼 수 있는 레이어를 의미한다.
도 2a 내지 도 2c 는 콘텐츠를 이루는 데이터 스트림에 포함된 레이어들의 우선순위를 지정하고, 그 중 전송 데이터 스트림에 포함될 레이어를 선택하고, 전송 매개체의 상태에 따라 제어된 레이어의 수를 전송 데이터 스트림의 각 전송 데이터가 포함하도록 하여, 전송 데이터 스트림을 생성하는 방식에 대한 본 발명의 몇 가지 실시예를 나타낸다. 도 2a 내지 도 2c 의 (a) 는 우선순위를 지정하고 (각 레이어에 대한 우선순위는 원문자로 표시함), 또한 우선순위가 지정된 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는 것을 나타내고, (b) 는 상기 선택된 레이어들을 기초로 전송 매개체의 상태에 의해 제어된 레이어의 수를 갖는 각각의 전송 데이터로 이루어지는 전송 데이터 스트림을 생성하는 것을 나타내고, (c) 는 전송된 전송 데이터 스트림에 포함된 레이어가 전송 매개체를 통해 전송된 후 수신측에서 재배열되어, 콘텐츠를 이루는 데이터 스트림에 포함되어 있던 것과 같이 재구성되는 과정을 나타낸다. 도 2a 내지 도 2c 에서는 우선순위가 먼저 지정된 후 전송 데이터 스트림에 포함될 레이어를 선택하는 순서로 도시하였으나, 필요에 따라 레이어의 선택이 우선순위의 지정보다 먼저 수행될 수도 있다. 또한, (b) 에 도시한 전송 데이터 스트림은 개념적인 것으로서, 실제로 전송되는 단위를 나타낸 것은 아니다. 즉, 전송되는 단위를 “패킷” 으로 할 경우, 한 개의 패킷에는 하나 혹은 그 이상의 전송 데이터가 들어가거나, 하나의 전송 데이터 중 일부가 들어가거나, 또는 실수개 (1.333… 등) 의 전송 데이터가 들어갈 수도 있다.
이하에서는 도 2a 내지 도 2c 에 나타낸 본 발명의 각 실시예를 설명한다. 먼저, 도 2a (예시 1) 은, 콘텐츠를 이루는 데이터 스트림의 특정 데이터를 기준으로, 그 특정 데이터의 저품질 요소, 그 특정 데이터보다 한 단계 이전 데이터의 중간품질 요소, 그 특정 데이터보다 두 단계 이전 데이터의 고품질 요소의 순으로 우선순위를 지정함으로써 전송 데이터 스트림을 생성하는 것을 나타낸다. (a) 는 콘텐츠를 이루는 데이터 스트림에 포함되는 레이어에 우선순위가 지정되고, 전송 데이터 스트림에 포함될 레이어가 선택되는 과정을 나타낸다. X 로 표시된 레이어들이 상기 전송 판단 정보에 따라 전송 데이터 스트림에 포함되지 않도록 된 레이어들이다. 또한, 여기서 특정 데이터의 한 단계 및 두 단계 이전 데이터의 중간품질 및 고품질 요소 순으로 우선순위를 지정한 것은 일례일 뿐으로, 필요에 따라 그보다 몇 단계 이전 데이터의 중간품질 및 고품질 요소 순으로도 우선순위를 지정할 수 있다. (b) 에서는 상기 선택된 레이어들이 전송 데이터 스트림으로 재구성된다. 전송 데이터 스트림의 각 전송 데이터에 포함되는 레이어들의 수는, 전송 환경에 따라 많아지거나 적어진다. 상기 전송 데이터 스트림에는 지정된 우선순위의 순대로 레이어들이 배열된다. 한편, 도 2a 내지 2c 에 도시된 전송 데이터 스트림의 각 전송 데이터를 나타내는 번호는 예를 들어 나타낸 것이며 상황에 따라 달라질 수도 있다. (c) 에서는 전송된 전송 데이터 스트림에 포함된 레이어가 수신측에서 재배열되어, 콘텐츠를 이루는 데이터 스트림에 포함되어 있던 것과 같이 재구성되는 과정을 나타낸다.
도 2b (예시 2) 는, 콘텐츠를 이루는 데이터 스트림의 특정 데이터를 기준으로, 그 특정 데이터를 포함하는 연속하는 3 개의 데이터의 저품질 요소에 대하여, 앞선 데이터의 순으로 우선순위를 지정하고, 그 후 상기 3 개의 데이터의 중간품질 요소 및 고품질 요소에 대해서도 동일한 방식으로 우선순위를 지정함으로써 전송 데이터 스트림을 생성하는 것을 나타낸 것이다. 물론 3 개가 아닌 다른 여러 개의 데이터에 대해서 동일한 방식으로 우선순위를 지정할 수도 있다. (b) 및 (c) 에서 각각 전송 데이터 스트림이 생성되고 수신측에서 재구성되는 것은 도 2a 에 도시한 바와 같다.
도 2c (예시 3) 은 콘텐츠를 이루는 데이터 스트림에 포함된 레이어에 대하여 임의로 우선순위를 지정함으로써 전송 데이터 스트림을 생성하는 것을 나타낸 것이다. (b) 및 (c) 에서 각각 전송 데이터 스트림이 생성되고 수신측에서 재구성되는 것은 도 2a 에 도시한 바와 같다.
상기 도 2a 내지 도 2c 에 도시한 바와 같이, 본 발명에 의하면 우선순위 지정 및 선택에 의해 생성된 전송 스트림이 수신측으로 전송됨으로써, 중요한 레이어의 전송에 가중치를 둘 수 있고 또한 불필요한 레이어는 전송하지 않게 되어, 전송 환경의 변화에 유연하게 적응하고 또한 전송 자원을 효과적으로 이용할 수 있다. 한편, 도 2a 내지 도 2c 에서 예시로 든 방식 이외에도 필요에 따라 다양한 방식을 통해 레이어의 우선순위가 지정될 수 있음은 자명하다.
도 3 내지 도 5 에서는, 우선순위를 지정하는 방식 중, 도 2 의 예시 1 에서 나타낸 것과 같이, 특정 데이터의 저품질 요소에서 그보다 몇 단계 이전 데이터의 중간품질 또는 고품질 요소의 순으로 우선순위를 지정하여, 이를 기초로 전송 데이터 스트림을 구성하여 전송하고, 이를 수신측에서 수신하는 과정을 보다 구체적으로 나타낸다.
먼저, 도 3 은 특정 데이터의 저품질 요소에서 그보다 몇 단계 이전 데이터의 중간품질 또는 고품질 요소의 순으로 우선순위를 지정하여, 이 레이어들을 전송 데이터 스트림을 구성하기 위해 우선순위의 순서대로 배열한 것을 나타낸다. 이 때, 특정 데이터부터 몇 단계 이전 데이터의 요소 순으로 우선순위를 지정하는지에 따라, Shift 1, Shift 2 등과 같이 표시한다. 몇 단계 이전의 요소를 순으로 우선순위를 지정할지는 상황에 따라 조절할 수 있다.
도 3 의 (a) 는 기존 방식에 의해 우선순위를 지정하는 것을 나타낸다. 기존 방식에서, 전송 데이터 스트림은 전송하고자 하는 콘텐츠를 이루는 데이터 스트림과 동일하다. 즉, 콘텐츠를 이루는 데이터 스트림의 각 데이터에 포함된 구성요소 (저품질 요소, 중간품질 요소, 고품질 요소) 는 그 순서 그대로 우선순위가 지정된다. 기존 방식에 의할 경우, 적응적 스트리밍에 있어서, 예를 들어 데이터 스트림 내의 20 번째, 21 번째, 22 번째 데이터를 전송한다면, 전송 환경이 (나쁨) → (좋음) → (중간)으로 변함에 따라 (F20.1) → (F21.1+F21.2+F21.3) → (F22.1+F22.2) 와 같이 프레임 간 품질을 바꾸면서 전송하게 된다. 또한, 예를 들어 20 번째 데이터부터 고품질 데이터를 연속으로 7 번 전송한다면, (F20.1+F20.2+F20.3) + (F21.1+F21.2+F21.3) + (F22.1+F22.2+F22.3) + (F23.1+F23.2+F23.3) + (F24.1+F24.2+F24.3) + (F25.1+F25.2+F25.3) + (F26.1+F26.2+F26.3) 의 순으로 우선순위가 지정되는 것으로 볼 수 있다.
반면, 본 발명에 따른 일 실시예에 따르면, 데이터 스트림에 있어서 특정 데이터의 저품질 요소, 그보다 몇 단계 이전 데이터의 중간품질 요소 또는 고품질 요소의 순으로 우선순위가 지정된다.
도 3 의 (b) 는 본 발명의 제 1 실시예 (Shift 1) 에 따라 우선순위를 지정하는 방식을 나타낸다. 이 방식에 의해 20 번째 데이터부터 고품질 데이터를 연속으로 7 번 전송한다면, (F20.1+F19.2+F18.3) + (F21.1+F20.2+F19.3) + (F22.1+F21.2+F20.3) + (F23.1+F22.2+F21.3) + (F24.1+F23.2+F22.3) + (F25.1+F24.2+F23.3) + (F26.1+F25.2+F24.3) 의 순으로 우선순위가 지정되어 전송된다.
도 3 의 (c) 는 본 발명의 제 2 실시예 (Shift 2) 에 따라 우선순위를 지정하는 방식을 나타낸다. 이 방식에 의해 20 번째 데이터부터 고품질 데이터를 연속으로 7 번 전송한다면, (F20.1+F18.2+F16.3) + (F21.1+F19.2+F17.3) + (F22.1+F20.2+F18.3) + (F23.1+F21.2+F19.3) + (F24.1+F22.2+F20.3) + (F25.1+F23.2+F21.3) + (F26.1+F24.2+F22.3) 의 순으로 우선순위가 지정되어 전송된다.
도 4 에서는 전송 환경이 불량해지는 경우, 즉 네트워크와 같은 전송 매개체를 통해 전송할 수 있는 데이터의 양이 감소하는 경우, 도 3 의 (a) 에 도시한 기존 방식 및 도 3 의 (b) 및 도 3 의 (c) 에 도시한 본 발명의 방식에 의하여 우선순위가 지정된 레이어들의 일부가 전송 데이터 스트림으로서 구성됨으로써, 전송 환경의 변화에 적응하여 전송되는 과정의 예시를 나타낸다. 도 4 의 (a) 를 참조하면, 기존 전송 방식의 경우, 전송 환경이 좋지 않은 방향으로 변화되는 시점 (또는, 전송 환경이 불량해졌음을 나타내는 리포트를 수신한 시점) 부터, 각 전송 데이터 중 중간 품질 요소 및 고품질 요소를 제외한 저품질 요소만이 전송 데이터 스트림에 포함되도록 선택되어 전송된다. 도 4 의 (a) 의 경우에는 23 번째 전송 데이터를 전송하는 것과 24 번째 전송 데이터를 전송하는 것 사이에서 전송 환경이 변화되었으므로, 23 번째 전송 데이터까지는 저품질, 중간품질 및 고품질 요소가 모두 전송되다가, 24 번째 전송 데이터부터는 저품질 요소만이 전송된다 (적은 양의 데이터가 전송되기 시작하는 시점을 ①로 표시). 도 4 의 오른쪽 부분은 전송 데이터 스트림을 수신 장치 (300) 에서 수신하여, 원 콘텐츠를 이루는 데이터 스트림의 순서대로 재구성한 것이다. 기존 전송 방식에 의하면 전송 데이터 스트림은 원 콘텐츠를 이루는 데이터 스트림과 동일하므로, 수신측에서도 역시 23 번째 데이터까지는 저품질, 중간품질 및 고품질 요소가 모두 수신되다가, 24 번째 데이터부터는 저품질 요소만이 수신된다 (적은 양의 데이터가 수신되기 시작하는 시점을 ②로 표시). 즉, 수신측을 기준으로 할 때, 불량해진 전송 환경에 적응하여 데이터의 저품질 요소만을 수신하는 효과는 24 번째 데이터부터 나타나는 것으로서, 적은 양의 데이터가 전송되는 시점과 적은 양의 데이터가 수신되는 시점이 동일하다. (여기서 시점이 동일하다는 것은 절대적인 시간상에서의 시점이 같다는 뜻이 아니라, 전송 데이터를 전송한 순서상에서의 어떤 지점이, 데이터를 수신한 쪽에서 이와 대응되는 수신 데이터의 순서상에서의 지점이 동일하다는 것을 의미한다. 이와 마찬가지로 본 명세서에서 “시점”이란 표현은 절대적인 시간상의 의미 뿐 아니라, 해당 데이터의 순서상에서의 지점이라고 볼 수도 있다.)
한편, 도 4 의 (b) 는 본 발명의 제 1 실시예 (Shift 1) 에 의하여 우선순위가 지정된 레이어들의 일부가 전송 데이터 스트림으로서 구성되어 전송되는 과정을 나타낸다. 제 1 실시예에 의한 우선순위는 (F20.1+F19.2+F18.3) + (F21.1+F20.2+F19.3) + (F22.1+F21.2+F20.3) + (F23.1+F22.2+F21.3) + (F24.1+F23.2+F22.3) + (F25.1+F24.2+F23.3) + (F26.1+F25.2+F24.3) … 의 순으로 지정되므로, 23 번째 전송 데이터를 전송하는 것과 24 번째 전송 데이터를 전송하는 것 사이에서 전송 환경이 변화하는 경우, 23 번째 전송 데이터, 즉 (F23.1+F22.2+F21.3) 으로 나타나는 전송 데이터까지는 저품질, 중간품질 및 고품질 요소가 모두 포함되다가, 24 번째 전송 데이터, 즉 (F24.1+F23.2+F22.3) 으로 나타나는 전송 데이터부터는 저품질 요소만이 포함되어 전송된다 (적은 양의 데이터가 전송되기 시작하는 시점을 ①로 표시). 다시 말하면, 24 번째 전송 데이터에는 F24.1 만이 포함되고, 25 번째 전송 데이터에서는 F25.1 만이 포함되는 식이다. 이렇게 전송된 전송 데이터를 수신측에서 재구성하면, 원 콘텐츠를 이루는 데이터 스트림에 있어서 21 번째 데이터의 고품질 요소까지는 23 번째 전송 데이터에 포함되어 수신되지만, 22 번째 데이터에 대해서는 저품질 요소와 중간품질 요소만이 수신되며, 23 번째 데이터부터는 저품질 요소만이 수신된다 (적은 양의 데이터가 수신되기 시작하는 시점을 ②로 표시). 즉, 수신측을 기준으로 할 때, 불량해진 전송 환경에 적응하여 데이터의 저품질 요소만을 수신하는 효과는 22 번째 데이터부터 나타나는 것으로서, 적은 양의 데이터가 수신되는 시점이 적은 양의 데이터가 전송되는 시점보다 앞서서 나타난다. 도 4 의 (c) 는 본 발명의 제 2 실시예 (Shift 2) 에 의하여 우선순위가 지정된 레이어들의 일부가 전송 데이터 스트림으로서 구성되어 전송되는 과정을 나타낸다. 제 2 실시예에 의한 우선순위는 (F20.1+F18.2+F16.3) + (F21.1+F19.2+F17.3) + (F22.1+F20.2+F18.3) + (F23.1+F21.2+F19.3) + (F24.1+F22.2+F20.3) + (F25.1+F23.2+F21.3) + (F26.1+F24.2+F22.3) … 의 순으로 지정되므로, 23 번째 전송 데이터를 전송하는 것과 24 번째 전송 데이터를 전송하는 것 사이에서 전송 환경이 변화하는 경우, 23 번째 전송 데이터, 즉 (F23.1+F21.2+F19.3) 으로 나타나는 전송 데이터까지는 저품질, 중간품질 및 고품질 요소가 모두 포함되어 전송되다가, 24 번째 전송 데이터, 즉 (F24.1+F22.2+F20.3) 으로 나타나는 전송 데이터부터는 저품질 요소만이 포함되어 전송된다 (적은 양의 데이터가 전송되기 시작하는 시점을 ①로 표시). 다시 말하면, 24 번째 전송 데이터에서는 F24.1 만이 포함되고, 25 번째 전송 데이터에서는 F25.1 만이 포함되는 식이다. 이렇게 전송된 전송 데이터를 수신측에서 재구성하면, 원 콘텐츠를 이루는 데이터 스트림에 있어서 19 번째 데이터의 고품질 요소까지는 23 번째 전송 데이터에 포함되어 수신되지만, 20 및 21 번째 데이터에 대해서는 저품질 요소와 중간품질 요소만이 수신되며, 22 번째 데이터부터는 저품질 요소만이 수신된다 (적은 양의 데이터가 수신되기 시작하는 시점을 ②로 표시). 즉, 수신측을 기준으로 할 때, 불량해진 전송 환경에 적응하여 데이터의 저품질 요소만을 수신하는 효과는 20 번째 데이터부터 나타나는 것으로서, 적은 양의 데이터가 수신되는 시점이 적은 양의 데이터가 전송되는 시점보다 앞서서 나타난다.
상술한 바와 같이, 전송 환경이 불량해지는 경우 기존 전송 데이터 스트림의 구성 방식에 의하면 전송 환경의 변화 시점과 이에 적응하여 적은 양의 데이터를 수신하는 시점이 동일하지만, 본 발명에 의한 전송 데이터 스트림의 구성 방식에 의할 경우, 전송 환경의 변화에 적응하여 적은 양의 데이터를 수신하는 시점이 전송 환경의 변화를 감지한 시점보다 앞서서 나타나는 것을 알 수 있다. 즉, 기존 방식에 의할 경우, 전송 환경이 불량해지면 이 변화에 빠르게 적응하여 데이터의 수신량을 감소시키지 못하므로, 불량한 상태의 전송 매개체를 통해 무리하게 많은 양의 데이터를 수신하게 되는 등 전송 자원을 효율적으로 이용하지 못하여, 콘텐츠의 수신이 끊기지 않고 원활하게 이루어지지 않을 수 있으나, 본 발명에 의하면, 전송 환경의 상황 변화에 빨리 적응하여 상대적인 고품질 요소를 보내지 않으므로, 그만큼 상대적인 저품질 요소를 빨리 보낼 수 있도록 하는 동시에, 전송 환경이 불량해지는 것을 감지한 시점보다 앞서서 이에 대한 적응 효과가 발생하기 때문에, 전송 환경 변화에 빠르게 적응할 수 있어, 콘텐츠가 끊기지 않고 수신될 수 있다.
도 5 에서는 전송 환경이 양호해지는 경우, 즉 네트워크와 같은 전송 매개체를 통해 전송할 수 있는 데이터의 양이 증가하는 경우, 도 3 의 (a) 에 도시한 기존 방식 및 도 3 의 (b) 및 도 3 의 (c) 에 도시한 본 발명의 방식에 의하여 우선순위가 지정된 레이어들의 일부가 전송 데이터 스트림으로서 구성됨으로써, 전송 환경의 변화에 적응하여 전송되는 과정의 예시를 나타낸다. 도 5 의 (a) 를 참조하면, 기존 전송 방식의 경우, 전송 환경이 좋은 방향으로 변화되는 시점 (또는, 전송 환경이 양호해졌음을 나타내는 리포트를 수신한 시점) 부터, 전송 데이터 스트림의 각 전송 데이터에 저품질 요소뿐만 아니라 중간 품질 요소 및 고품질 요소 역시 포함되어 전송되기 시작된다. 도 5 의 (a) 의 경우에는 23 번째 전송 데이터를 전송하는 것과 24 번째 전송 데이터를 전송하는 것 사이에서 전송 환경이 변화되었으므로, 23 번째 전송 데이터까지는 저품질 요소만이 포함되어 전송되다가, 24 번째 전송 데이터부터는 저품질, 중간품질 및 고품질 요소가 모두 포함되어 전송된다 (많은 양의 데이터가 전송되기 시작하는 시점을 ①로 표시). 기존 전송 방식에 의하면 전송 데이터 스트림은 원 콘텐츠를 이루는 데이터 스트림과 동일하므로, 이렇게 전송된 전송 데이터를 수신측에서 재구성하면, 수신측에서도 역시 23 번째 데이터까지는 저품질 요소만이 수신되다가, 24 번째 데이터부터는 저품질, 중간품질 및 고품질 요소가 모두 수신된다 (많은 양의 데이터가 수신되기 시작하는 시점을 ②로 표시). 즉, 수신측을 기준으로 할 때, 양호해진 전송 환경에 적응하여 데이터의 고품질 요소를 수신하는 효과는 24 번째 데이터부터 나타나는 것으로서, 많은 양의 데이터가 전송되는 시점과 많은 양의 데이터가 수신되는 시점이 동일하다.
한편, 도 5 의 (b) 는 본 발명의 제 1 실시예 (Shift 1) 에 의하여 우선순위가 지정된 레이어들의 일부가 전송 데이터 스트림으로서 구성되어 전송되는 과정을 나타낸다. 제 1 실시예에 의한 우선순위는 (F20.1+F19.2+F18.3) + (F21.1+F20.2+F19.3) + (F22.1+F21.2+F20.3) + (F23.1+F22.2+F21.3) + (F24.1+F23.2+F22.3) + (F25.1+F24.2+F23.3) + (F26.1+F25.2+F24.3) … 의 순으로 지정되므로, 23 번째 전송 데이터를 전송하는 것과 24 번째 전송 데이터를 전송하는 것 사이에서 전송 환경이 변화하는 경우, 23 번째 전송 데이터, 즉 (F23.1+F22.2+F21.3) 으로 나타나는 전송 데이터까지는 저품질 요소만이 포함되다가, 24 번째 전송 데이터, 즉 (F24.1+F23.2+F22.3) 으로 나타나는 전송 데이터부터는 저품질 및 중간품질 요소가 포함되고, 25 번째 전송 데이터, 즉 (F25.1+F24.2+F23.3) 으로 나타나는 전송 데이터부터는 저품질, 중간품질 및 고품질 요소가 모두 포함되어 전송된다 (많은 양의 데이터가 전송되기 시작하는 시점을 ①로 표시). 다시 말하면, 24 번째 전송 데이터에는 F24.1 및 F23.2 가 포함되고, 25 번째 전송 데이터부터는 F25.1, F24.2 및 F23.3 이 모두 포함되는 식이다. 이렇게 전송된 전송 데이터를 수신측에서 재구성하면, 원 콘텐츠를 이루는 데이터 스트림에 있어서 22 번째 데이터까지는 저품질 요소만이 수신되지만, 23 번째 데이터부터는 저품질 요소뿐 아니라 중간품질 및 고품질 요소가 모두 수신된다 (많은 양의 데이터가 수신되기 시작하는 시점을 ②로 표시). 즉, 수신측을 기준으로 할 때, 양호해진 전송 환경에 적응하여 데이터의 저품질 요소뿐 아니라 중간품질 및 고품질 요소를 모두 수신하는 효과는 23 번째 데이터부터 나타나는 것으로서, 많은 양의 데이터가 수신되는 시점이 많은 양의 데이터가 전송되는 시점보다 앞서서 나타난다.
도 5 의 (c) 는 본 발명의 제 2 실시예 (Shift 2) 에 의한 전송 데이터 스트림이 전송 환경의 변화에 적응하여 전송되는 과정을 나타낸다. 제 2 실시예에 의한 우선순위는 (F20.1+F18.2+F16.3) + (F21.1+F19.2+F17.3) + (F22.1+F20.2+F18.3) + (F23.1+F21.2+F19.3) + (F24.1+F22.2+F20.3) + (F25.1+F23.2+F21.3) + (F26.1+F24.2+F22.3) … 등으로 나타나므로, 23 번째 전송 데이터를 전송하는 것과 24 번째 전송 데이터를 전송하는 것 사이에서 전송 환경이 변화하는 경우, 23 번째 전송 데이터, 즉 (F23.1+F21.2+F19.3) 으로 나타나는 전송 데이터까지는 저품질 요소만이 포함되다가, 24 번째 전송 데이터, 즉 (F24.1+F22.2+F20.3) 으로 나타나는 전송 데이터부터는 저품질 및 중간품질 요소가 포함되며, 25 번째 전송 데이터, 즉 (F25.1+F23.2+F21.3) 으로 나타나는 전송 데이터부터는 저품질, 중간품질 및 고품질 요소가 모두 포함되어 전송된다 (많은 양의 데이터가 전송되기 시작하는 시점을 ①로 표시). 다시 말하면, 24 번째 전송 데이터에는 F24.1 및 F22.2 만이 포함되고, 26 번째 전송 데이터에서는 F26.1, F24.2 및 F22.3 이 모두 포함되어 전송되는 식이다. 이렇게 전송된 전송 데이터를 수신측에서 재구성하면, 원 콘텐츠를 이루는 데이터 스트림에 있어서 21 번째 데이터까지는 저품질 요소만이 수신되지만, 22 번째 데이터부터는 저품질 요소뿐 아니라 중간품질 및 고품질 요소가 모두 수신된다 (많은 양의 데이터가 수신되기 시작하는 시점을 ②로 표시). 즉, 수신측을 기준으로 할 때, 양호해진 전송 환경에 적응하여 데이터의 저품질 요소뿐 아니라 중간품질 및 고품질 요소를 모두 수신하는 효과는 22 번째 데이터부터 나타나는 것으로서, 많은 양의 데이터가 수신되는 시점이 많은 양의 데이터가 전송되는 시점보다 앞서서 나타난다.
상술한 바와 같이 전송 환경이 양호해지는 경우 기존 전송 데이터 스트림의 구성 방식에 의하면 전송 환경의 변화 시점과 이에 적응하여 많은 양의 데이터를 수신하는 시점이 동일하지만, 본 발명에 의한 전송 데이터 스트림의 구성 방식에 의할 경우, 전송 환경의 변화에 적응하여 많은 양의 데이터를 수신하는 시점이 전송 환경의 변화 시점보다 앞서서 나타나는 것을 알 수 있다. 즉, 기존 방식에 의할 경우, 전송 환경이 양호해지면 이 변화에 빠르게 적응하여 데이터의 수신량을 증가시키지 못하므로, 전송 자원을 효율적으로 이용하지 못하여, 보다 고품질의 데이터를 수신할 수 있음에도 그에 미치지 못하는 품질의 데이터만을 수신하게 되어 수신된 콘텐츠의 품질이 떨어질 우려가 있으나, 본 발명에 따르면, 전송 환경의 상황 변화에 빨리 적응하여 상대적인 고품질 요소를 빨리 보낼 수 있도록 하는 동시에, 전송 환경이 양호해지는 것을 감지한 시점보다 앞서서 이에 대한 적응 효과가 발생하기 때문에, 전송 환경 변화에 빠르게 적응할 수 있어, 콘텐츠를 보다 양호한 품질로 수신할 수 있다.
도 6 은 기존 방식과 본 발명에 의한 방식에 의해 전송 데이터 스트림을 구성하여 이를 전송 및 수신할 경우의 효과를 비교하기 위해, 그 일례로서 상태가 변화하는 네트워크 환경에서 일반적인 SVC 방식의 동영상 콘텐츠를 전송 및 수신하는 것과, 본 발명에 의한 제 2 실시예 (Shift 2) 에 의해 동영상 콘텐츠를 전송 및 수신하는 것을 비교한 것이다. 도 6 의 (a) 는 기존 방식에 의해 동영상 콘텐츠를 스트리밍하는 것을 나타내며, 도 6 의 (b) 는 본 발명에 의해 동영상 콘텐츠를 스트리밍하는 것을 나타낸다.
양 방식에 의해 동영상 콘텐츠의 스트리밍에 차이가 나타난 부분을 도 7 에 확대하여 나타낸다. 도 7 의 (a) 에 나타낸 바와 같이, 기존 방식에 의할 경우 일부 구간에서 동영상 재생이 끊기는 것을 발견할 수 있다. 이에 반해, 본 발명에 의한 방식에 의할 경우, 도 7 의 (b) 에 나타낸 바와 같이, 기존 방식에 의해서는 재생이 끊어지는 부분에서도 재생이 원활하게 이루어진다는 점을 확인할 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체 (씨디롬, 램, 플로피 디스크, 하드 디스크, 광자기 디스크 등) 에 저장될 수 있다.
또한, 본 발명은 전술한 전형적인 바람직한 실시예에만 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 개량, 변경, 대체 또는 부가하여 실시할 수 있는 것임은 당해 기술분야에 통상의 지식을 가진 자라면 용이하게 이해할 수 있을 것이다. 이러한 개량, 변경, 대체 또는 부가에 의한 실시가 이하의 첨부된 특허청구범위의 범주에 속하는 것이라면 그 기술사상 역시 본 발명에 속하는 것으로 보아야 한다.
100: 데이터 스트림 전송 시스템
101: 전송 매개체
200: 데이터 스트림 전송 장치
201: 인코딩부
203: 선택부
204: 제어부
205: 전송 데이터 생성부
206: 전송부
300: 데이터 스트림 수신 장치
301: 수신부
302: 디코딩부
303: 판정부

Claims (19)

  1. 데이터 스트림을 전송하는 장치로서,
    상기 데이터 스트림의 각각의 데이터는 하나 이상의 레이어를 포함하고,
    상기 데이터 스트림에 포함되는 모든 레이어에 대하여 우선순위를 지정하는, 우선순위 지정부;
    상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 상기 데이터 스트림에 포함되는 모든 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는, 선택부;
    전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는, 제어부;
    상기 전송 데이터 스트림의 각각의 전송 데이터에, 선택된 상기 레이어를 상기 우선순위에 따라, 제어된 상기 레이어의 수만큼씩 순서대로 배열하여 전송 데이터 스트림을 생성하는, 전송 데이터 생성부; 및
    생성된 상기 전송 데이터 스트림을 전송하는 전송부를 구비하며,
    상기 데이터 스트림의 각각의 데이터에 포함된 하나 이상의 레이어는, 상기 각각의 데이터의 상이한 품질 요소를 나타내고,
    상기 우선순위 지정부는, 상기 데이터 스트림의 특정 데이터에 포함되는 하나 이상의 레이어 중 저품질 요소를 나타내는 레이어와, 상기 데이터 스트림에 있어서 상기 특정 데이터보다 시계열적으로 앞선 데이터에 포함되는 하나 이상의 레이어 중 중간품질 요소 또는 고품질 요소를 나타내는 레이어의 순으로 우선순위를 지정하는, 데이터 스트림 전송 장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 데이터 스트림의 각각의 데이터는 제 1 레이어 내지 제 M 레이어로 이루어지는 M 개의 레이어들을 포함하며, 상기 레이어들은 상기 제 1 레이어부터의 순서로 저품질 요소를 나타내고,
    상기 우선순위 지정부는, 상기 데이터 스트림에 있어서 N 번째 데이터의 제 1 레이어와, 상기 데이터 스트림에 있어서 상기 N 번째 데이터보다 n 번째 이전에 위치하는 N-n 번째 데이터의 제 n+1 레이어에 대하여, 시계열적으로 앞선 데이터에 포함되는 레이어의 순으로 우선순위를 지정하는, 데이터 스트림 전송 장치 (단, N, M 은 1 이상의 정수, n 은 1≤n<M 이고 n<N 인 정수).
  4. 제 1 항에 있어서,
    상기 데이터 스트림의 각각의 데이터는 제 1 레이어 내지 제 M 레이어로 이루어지는 M 개의 레이어들을 포함하며, 상기 레이어들은 상기 제 1 레이어부터의 순서로 저품질 요소를 나타내고,
    상기 우선순위 지정부는, 상기 데이터 스트림에 있어서 N 번째 데이터의 제 1 레이어와, 상기 데이터 스트림에 있어서 상기 N 번째 데이터보다 n 번째 이전에 위치하는 N-n 번째 데이터의 제 (n/2)+1 레이어에 대하여, 시계열적으로 앞선 데이터에 포함되는 레이어의 순으로 우선순위를 지정하는, 데이터 스트림 전송 장치 (단, N, M 은 1 이상의 정수, n 은 1≤n<2M 이고 n<N 이며 2 의 배수인 정수).
  5. 제 1 항에 있어서,
    상기 데이터 스트림의 각각의 데이터는 제 1 레이어 내지 제 M 레이어로 이루어지는 M 개의 레이어들을 포함하며, 상기 레이어들은 상기 제 1 레이어부터의 순서로 저품질 요소를 나타내고,
    상기 우선순위 지정부는, 상기 데이터 스트림의 데이터의 N 번째 데이터 내지 N+n 번째 데이터에 각각 포함되는 하나 이상의 레이어 중, 각각 M 번째 레이어에 대하여, 시계열적으로 앞선 데이터에 포함되는 레이어의 순으로 우선순위를 지정하는, 데이터 스트림 전송 장치 (단, N, M, n 은 1 이상의 정수).
  6. 제 1 항에 있어서,
    상기 우선순위 지정부는, 상기 데이터 스트림에 포함되는 레이어에 대하여 임의의 순서로 우선순위를 지정하는, 데이터 스트림 전송 장치.
  7. 제 1 항에 있어서,
    상기 데이터 스트림의 각각의 데이터에 포함된 하나 이상의 레이어는, 상기 각각의 데이터의 상이한 품질 요소를 나타내고,
    상기 전송 판단 정보는, 상기 전송 매개체의 상태와 각각의 레이어가 나타내는 품질에 기초하여 상기 각각의 레이어를 전송할지 여부를 결정하는 정보를 포함하는, 데이터 스트림 전송 장치.
  8. 제 1 항에 있어서,
    상기 전송 판단 정보는, 각각의 레이어가 상기 전송 데이터 스트림에 포함되어 전송되는 경우 상기 각각의 레이어의 전송이 완료될 것으로 예상되는 시간에 기초하여 상기 각각의 레이어를 전송할지 여부를 결정하는 정보를 포함하는, 데이터 스트림 전송 장치.
  9. 데이터 스트림을 전송하는 방법으로서,
    상기 데이터 스트림의 각각의 데이터는 하나 이상의 레이어를 포함하고,
    상기 데이터 스트림에 포함되는 모든 레이어에 대하여 우선순위를 지정하는 단계;
    상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 상기 데이터 스트림에 포함되는 모든 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는 단계;
    전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는 단계; 및
    상기 전송 데이터 스트림의 각각의 전송 데이터에, 선택된 상기 레이어를 상기 우선순위에 따라, 제어된 상기 레이어의 수만큼씩 순서대로 배열하여, 전송 데이터 스트림을 생성하는 단계를 포함하며,
    상기 데이터 스트림의 각각의 데이터에 포함된 하나 이상의 레이어는, 상기 각각의 데이터의 상이한 품질 요소를 나타내고,
    상기 우선순위를 지정하는 단계는, 상기 데이터 스트림의 특정 데이터에 포함되는 하나 이상의 레이어 중 저품질 요소를 나타내는 레이어와, 상기 데이터 스트림에 있어서 상기 특정 데이터보다 시계열적으로 앞선 데이터에 포함되는 하나 이상의 레이어 중 중간품질 요소 또는 고품질 요소를 나타내는 레이어의 순으로 우선순위를 지정하는 단계를 포함하는, 데이터 스트림 전송 방법.
  10. 삭제
  11. 제 9 항에 있어서,
    상기 데이터 스트림의 각각의 데이터는 제 1 레이어 내지 제 M 레이어로 이루어지는 M 개의 레이어들을 포함하며, 상기 레이어들은 상기 제 1 레이어부터의 순서로 저품질 요소를 나타내고,
    상기 우선순위를 지정하는 단계는, 상기 데이터 스트림의 데이터의 N 번째 데이터 내지 N+n 번째 데이터에 각각 포함되는 하나 이상의 레이어 중, 각각 M 번째 레이어에 대하여, 시계열적으로 앞선 데이터에 포함되는 레이어의 순으로 우선순위를 지정하는 단계를 포함하는, 데이터 스트림 전송 방법 (단, N, M, n 은 1 이상의 정수).
  12. 제 9 항에 있어서,
    상기 우선순위를 지정하는 단계는, 상기 데이터 스트림에 포함되는 레이어에 대하여 임의의 순서로 우선순위를 지정하는 단계를 포함하는, 데이터 스트림 전송 방법.
  13. 제 9 항에 있어서,
    생성된 상기 전송 데이터 스트림을 전송하는 단계를 더 포함하는, 데이터 스트림 전송 방법.
  14. 제 9 항에 있어서,
    상기 데이터 스트림의 각각의 데이터에 포함된 하나 이상의 레이어는, 상기 각각의 데이터의 상이한 품질 요소를 나타내고,
    상기 전송 판단 정보는, 상기 전송 매개체의 상태와 각각의 레이어가 나타내는 품질에 기초하여 상기 각각의 레이어를 전송할지 여부를 결정하는 정보를 포함하는, 데이터 스트림 전송 방법.
  15. 제 9 항에 있어서,
    상기 전송 판단 정보는, 각각의 레이어가 상기 전송 데이터 스트림에 포함되어 전송되는 경우 상기 각각의 레이어의 전송이 완료될 것으로 예상되는 시간에 기초하여 상기 각각의 레이어를 전송할지 여부를 결정하는 정보를 포함하는, 데이터 스트림 전송 방법.
  16. 데이터 스트림을 전송하는 시스템으로서,
    상기 데이터 스트림의 각각의 데이터는 하나 이상의 레이어를 포함하고,
    상기 데이터 스트림에 포함되는 모든 레이어에 대하여 우선순위를 지정하는 수단;
    상기 레이어에 대한 전송이 필요한지 여부를 나타내는 전송 판단 정보에 기초하여 상기 데이터 스트림에 포함되는 모든 레이어 중 전송 데이터 스트림에 포함될 레이어를 선택하는 수단;
    전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는 수단;
    상기 전송 데이터 스트림의 각각의 전송 데이터에, 선택된 상기 레이어를 상기 우선순위에 따라, 제어된 상기 레이어의 수만큼씩 순서대로 배열하여, 전송 데이터 스트림을 생성하는 수단;
    생성된 상기 전송 데이터 스트림을 전송하는 수단; 및
    상기 전송 데이터 스트림을 수신하는 수단을 구비하며
    상기 데이터 스트림의 각각의 데이터에 포함된 하나 이상의 레이어는, 상기 각각의 데이터의 상이한 품질 요소를 나타내고,
    상기 우선순위를 지정하는 수단은, 상기 데이터 스트림의 특정 데이터에 포함되는 하나 이상의 레이어 중 저품질 요소를 나타내는 레이어와, 상기 데이터 스트림에 있어서 상기 특정 데이터보다 시계열적으로 앞선 데이터에 포함되는 하나 이상의 레이어 중 중간품질 요소 또는 고품질 요소를 나타내는 레이어의 순으로 우선순위를 지정하는, 데이터 스트림 전송 시스템.
  17. 제 16 항에 있어서,
    수신된 상기 전송 데이터 스트림에 포함된 레이어 중, 상기 데이터 스트림에 있어서 동일한 데이터에 포함되어 있던 레이어끼리를 조합하는 수단을 더 구비하는, 데이터 스트림 전송 시스템.
  18. 제 16 항에 있어서,
    상기 전송 매개체의 상태를 판정하는 수단을 더 구비하고,
    상기 제어하는 수단은, 판정된 상기 전송 매개체의 상태에 기초하여 상기 전송 데이터 스트림의 각각의 전송 데이터에 포함될 레이어의 수를 제어하는, 데이터 스트림 전송 시스템.
  19. 제 16 항에 있어서,
    상기 데이터 스트림에 포함되는 각각의 레이어의 전송이 필요한지 여부를 판정하여 상기 전송 판단 정보를 생성하는 수단을 더 구비하는, 데이터 스트림 전송 시스템.
KR1020120148708A 2012-12-18 2012-12-18 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템 KR101387166B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120148708A KR101387166B1 (ko) 2012-12-18 2012-12-18 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120148708A KR101387166B1 (ko) 2012-12-18 2012-12-18 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101387166B1 true KR101387166B1 (ko) 2014-04-21

Family

ID=50658208

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120148708A KR101387166B1 (ko) 2012-12-18 2012-12-18 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101387166B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016021773A1 (ko) * 2014-08-05 2016-02-11 삼성에스디에스 주식회사 Qos 보장 영상 스트림 방법 및 시스템과 송신 서버

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080050941A (ko) * 2006-12-04 2008-06-10 한국전자통신연구원 Rtp 패킷화 모드별 비트율 생성 방법
KR100931376B1 (ko) * 2009-05-15 2009-12-11 전자부품연구원 네트워크 적응적인 데이터 스트림 전송 제어방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080050941A (ko) * 2006-12-04 2008-06-10 한국전자통신연구원 Rtp 패킷화 모드별 비트율 생성 방법
KR100931376B1 (ko) * 2009-05-15 2009-12-11 전자부품연구원 네트워크 적응적인 데이터 스트림 전송 제어방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016021773A1 (ko) * 2014-08-05 2016-02-11 삼성에스디에스 주식회사 Qos 보장 영상 스트림 방법 및 시스템과 송신 서버
US9954926B2 (en) 2014-08-05 2018-04-24 Samsung Sds Co., Ltd. QoS-guaranteed video stream method and system, and transmitting server

Similar Documents

Publication Publication Date Title
EP1720318B1 (en) Apparatus and method for transmitting a multimedia data stream
TW201332342A (zh) 在網路環境內使用多路徑適應流送技術傳輸視聽內容之系統和方法
JP6419848B2 (ja) 帯域幅最適化のための適応的データセグメント配信調停
JP5339007B1 (ja) コンテンツ配信システム
CN104394484A (zh) 一种无线实时流媒体传输方法
JP6993399B2 (ja) ネットワークにおける帯域幅の分配のための方法および装置
CN110636339A (zh) 基于码率的调度方法、装置及电子设备
CN103313054A (zh) 可伸缩视频编码svc视频的传输调度方法
US8738795B2 (en) Media-aware and TCP-compatible bandwidth sharing for video streaming
Huang et al. Bandwidth-efficient packet scheduling for live streaming with network coding
CN111049792A (zh) 音频传输方法、装置、终端设备和存储介质
CN104581340A (zh) 客户端、流媒体数据接收方法和流媒体数据传输系统
KR101387166B1 (ko) 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템
KR20110065159A (ko) 다중 서버를 이용하여 다계층 콘텐츠를 제공하는 시스템 및 그의 콘텐츠 서비스 방법
KR20120108138A (ko) 피어-투-피어 기반의 멀티미디어 스트리밍 서비스를 위한 환형 버퍼 및 그 동작 방법
JP5532045B2 (ja) 通信システム
He et al. Content and buffer status aware packet scheduling and resource management framework for video streaming over LTE system
CN101848224A (zh) 一种对等网络流媒体网络编码方法
Omer et al. Window‐based adaptive technique for real‐time streaming of scalable video over cognitive radio networks
CN112737971B (zh) 数据处理方法、装置、存储介质及网络设备
JP6793526B2 (ja) 動画配信システム、配信サーバ、及びプログラム
US10911804B2 (en) Bitrate instruction device, bitrate instruction method, and non-transitory recording medium
Nguyen et al. Scalable and resilient 360-degree-video adaptive streaming over HTTP/2 against sudden network drops
US20230052666A1 (en) Adaptive streaming of media content with bitrate switching
JP2019029931A (ja) 映像送信装置、映像受信装置、映像送受信システム、制御方法、並びにプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170406

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 6