KR20160052763A - 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치 - Google Patents

에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치 Download PDF

Info

Publication number
KR20160052763A
KR20160052763A KR1020167010630A KR20167010630A KR20160052763A KR 20160052763 A KR20160052763 A KR 20160052763A KR 1020167010630 A KR1020167010630 A KR 1020167010630A KR 20167010630 A KR20167010630 A KR 20167010630A KR 20160052763 A KR20160052763 A KR 20160052763A
Authority
KR
South Korea
Prior art keywords
segments
key frame
temporal alignment
media
information
Prior art date
Application number
KR1020167010630A
Other languages
English (en)
Other versions
KR101709903B1 (ko
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 KR20160052763A publication Critical patent/KR20160052763A/ko
Application granted granted Critical
Publication of KR101709903B1 publication Critical patent/KR101709903B1/ko

Links

Images

Classifications

    • H04L65/608
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L29/06
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B18/00Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body
    • A61B18/18Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body by applying electromagnetic radiation, e.g. microwaves
    • A61B18/20Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body by applying electromagnetic radiation, e.g. microwaves using laser
    • A61B2018/2065Multiwave; Wavelength mixing, e.g. using four or more wavelengths
    • A61B2018/207Multiwave; Wavelength mixing, e.g. using four or more wavelengths mixing two wavelengths

Abstract

통신시스템에서 HTTP 서버와 HTTP 클라이언트 간에 미디어 콘텐츠의 적응성 HTTP 스트리밍 제어하기 위한 방법으로서, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 상기 주기들 각각은 미디어 콘텐츠의 다수의 레프리젠테이션들을 포함하도록 구성되며, 상기 방법, 상기 다수의 레프리젠테이션들의 상기 미디어 세그먼트들에 대한 시간적 정렬 정보를 제공하는 단계(S10)를 포함하고, 상기 시간적 정렬 정보는 상기 미디어 콘텐츠의 상기 다수의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시를 제공한다. 또한 방법은 상기 미디어 세그먼트들에 대한 키 프레임 위치 정보를 제공하는 단계(S20)를 포함하고, 상기 키 프레임 위치 정보는 상기 다수의 레프리젠테이션들의 상기 미디어 세그먼트들 내에서 키 프레임들의 위치들에 관한 표시를 제공한다. 마지막으로, 방법은 상기 제공된 시간적 정렬 정보와 상기 제공된 키 프레임 위치 정보들 중 적어도 하나를 기반으로 하여 상기 미디어 콘텐츠의 상기 HTTP 스트리밍의 적응화를 제어하는 단계(S30)를 포함한다.

Description

에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치{METHOD AND ARRANGEMENT FOR ADAPTATION IN HTTP STREAMIMG}
본 발명은 일반적으로 통신시스템에 관한 것으로서, 특히 이러한 시스템에서 HTTP 스트리밍 션션 동안의 적응화에 관한 것이다.
미디어 콘텐츠, 특히 비디오의 HTTP(Hyper Text Transfer Protocol)에 관심이 증대하고 있다. 최근에, 이는 적응성(adaptivity)과 라이브 콘텐츠라는 두 개의 새로운 특징을 제공하기 위해 단순한 프로그레시브 다운로드(progressive download)를 넘어서 발전하였다. 이를 이루기 위한 방식은, 콘텐츠를 다수의 세그먼트(segment) 또는 파일로 분할하는 것인데, 분할된 세그먼트 또는 파일은, 예컨대 10초의 콘텐츠 작은 콘텐츠의 간격에 대응한다. 클라이언트는, 상이한 세그먼트들을 열거하고 또한 이들을 페치(fetch)하는, 미디어 프리젠테이션 서술(Media Presentation Description:MPD)로 알려진 매니페스트 파일(manifest file)을 구비하고, 또한 클라이언트는 이들을 하나씩 페치한다. HTTP와 같은 표준 웹 프로토콜을 통해 페치되는 상이한 세그먼트/파일들로의 분할은 또한 캐시-친화적(cache-friendly), 또는 CDN(Content Distribution Network) 친화적이라 부르게 되는데, 이는 RTSP(Real Time Streaming Protocol)과 같은 프로토콜들을 기반으로 하는 스트리밍 서버들과는 대조적으로, 서버 또는 캐시에서 소정의 상태를 필요로 하지 않기 때문이다. 간격들과 세그먼트들로 다수의 레벨들이 가능하다. 예컨대, 한 레벨은, 한 간격 동안에 콘텐츠를 변경시킴으로써 부가 삽입(add insertion)을 행하고, 그런 다음, 다음 간격에서 콘텐츠 스트림으로 돌려보낼 수 있다.
적응성은 미디어 콘텐츠의 다수 버전을 제공함으로써 이루어지므로, 망 실행/다운로드 시간을 고려할 때 최고인 것으로 추정되는 버전을 페치하기 위해 클라이언트가 선택할 수 있다. 클라이언트의 관점에서 보면, 만일 상이한 버전의 세그먼트들 또는 레프리젠테이션(representation)이 동일 기간을 가진다면 적응성을 가장 쉽게 해결할 수 있어서, 각 세그먼트 다운로드를 위해 클라이언트가 어느 버전을 선택할 것인가에 대한 결정을 쉽게 할 수 있게 된다. 그러나, 세그먼트들의 모든 버전들에 동일 지속 기간을 도입함으로써, 세그먼트들 각각의 크기는 상당히 변하게 된다. 이는, 만일 세그먼트들이 동일하거나 또는 비슷한 크기라면 더 나은 성능을 가질 수 있는, 캐싱서버(caching server)에 대해 결코 최적이 아니다. 따라서, 크기-정렬(size-alignment)이 캐시/서버에 대해 바람직하지만, 클라이언측에서 적응화 매카니즘(adaptivity mechanism)을 보다 어렵게 만든다. 서버에 대해 최적화하던지 또는 클라이언트에 대해 최적화하던지, 이는 트레이드오프(tradeoff)이다.
이러한 문제에 대한 두 개의 현존하는 해결책은 마이크로소프트로부터의 부드러운스트리밍(SmoothStreaming from Microsoft®) 또는 애플로부터의 라이브스트리밍(LiveStreaming from Apple®)이고, 이들 둘 다는 동일한 지속기간 트랙(duration track)을 선택한다. 3GPP SA4 내에서, 논의는 대신 동일 크기 트랙들에 대해 주로 이루어진다.
상기를 기반으로, 클라이언트 측에서의 적응화 실행과 서버/캐시에서의 동일-크기 파일/세그먼트들 간에 상이한 트레이드-오프가 이루어질 수 있게 해주는 해결책이 필요하다.
본 발명의 목적은 상기 단점들 중 적어도 몇몇을 해결하고 또한 개선된 적응성 HTTP 미디어 스트리밍 제어를 제공하는 것이다.
본 발명의 제1특징에 따라, 본 발명은 통신시스템에서 HTTP 서버와 HTTP 클라이언트 간에 미디어 콘텐츠의 적응성 HTTP 스트리밍을 제어하기 위한 방법을 제공하고, 상기 미디어 콘텐츠는 다수의 주기(periods)들로서 배열되고, 이러한 각 주기는 미디어 콘텐츠의 다수의 레프리젠테이션을 포함한다. 방법은 다수의 레프리젠테이션들의 미디어 세그먼트들에 대한 시간적 정렬 정보를 제공하는 단계들을 포함하는 바, 상기 시간적 정렬 정보는 미디어 콘텐츠의 다수의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시를 제공한다. 또한 방법은 미디어 세그먼트들의 키 프레임 위치 정보(key frame location information)를 제공하는 단계를 포함하는 바, 상기 키 프레임 위치 정보는 다수의 레프리젠테이션들의 미디어 세그먼트들에서 키 프레임의 위치들에 관한 표시를 제공한다. 마지막으로, 방법은 제공된 시간적 정렬 정보와 제공된 키 프레임 위치 정보 중 적어도 하나를 기반으로 하여 미디어 콘텐츠의 HTTP 스트리밍의 적응화를 제어하는 단계를 포함한다.
본 발명의 제2특징에 따라, 본 발명은 통신시스템에서 HTTP 클라이언트에 대한 미디어 콘텐츠의 스트리밍을 위해 HTTP 서버노드에서 사용하는 방법을 제공하는데, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 이러한 각 주기는 다수의 미디어 콘텐츠의 레프리젠테이션을 포함한다. 방법은 다수의 레프리젠테이션의 미디어 세그먼트들에 대한 시간적 정렬 정보를 제공하는 단계를 포함하는 바, 상기 시간적 정렬 정보는 다수의 미디어 콘텐츠의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시들을 제공한다. 또한 방법은 미디어 세그먼트들에 대한 키 프레임 위치 정보를 제공하는 단계를 포함하는 바, 상기 키 프레임 위치 정보는 다수의 레프리젠테이션들의 미디어 세그먼트들에서 키 프레임들의 위치들에 관한 표시들을 제공한다.
문헌, "HTTP 스트리밍 미디어 프리젠테이션 기술을 위한 포맷", 3GFF 드라프트 S4-100020은, 플레이리스트에 대한 SMIL의 요소를 재사용하는 HTTP 스트리밍에서의 미디어 프리젠테이션 기술에 대한 문맥을 개시한다. 추가적으로, 특허 출원 US2009/150557은 미디어 콘텐트 제공자에 의해 제공된 미디어 콘텐트의 전달을 위해 상이한 미디어 품질을 갖는 미디어 파일들 사이에서 동적으로 선택하기 위한 계산 장치상에서 실행하는 다운로딩 에이전트를 개시한다.
제3특징에 따라, 본 발명은 통신시스템에서 HTTP 서버노드로부터의 스트리밍 미디어 콘텐츠를 수신하기 위해 HTTP 클라이언트노드에서 사용하는 방법을 제공하는 바, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 이러한 각 주기는 다수의 미디어 콘텐츠의 레프리젠테이션을 포함한다. 방법은 다수의 레프리젠테이션의 미디어 세그먼트들에 대한 시간적 정렬 정보를 수신하는 단계를 포함하는 바, 상기 시간적 정렬 정보는 다수의 미디어 콘텐츠의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시들을 제공한다. 또한 방법은 미디어 세그먼트들에 대한 키 프레임 위치 정보를 수신하는 단계를 포함하는 바, 상기 키 프레임 위치 정보는 다수의 레프리젠테이션들의 미디어 세그먼트들에서 키 프레임들의 위치들에 관한 표시들을 제공한다. 마지막으로, 방법은 수신한 시간적 정렬 정보와 수신한 키 프레임 위치 정보들를 기반으로 하여 미디어 콘텐츠의 HTTP 스트리밍의 적응화를 제어하는 단계를 포함한다.
제4특징에 따라, 본 발명은 통신시스템에서 HTTP 클라이언트에게 미디어 콘텐츠의 스트리밍을 위한 HTTP 서버노드를 제공하는 바, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 이러한 각 주기는 다수의 미디어 콘텐츠의 레프리젠테이션을 포함한다. 상기 서버는 다수의 레프리젠테이션의 미디어 세그먼트들에 대한 시간적 정렬 정보를 제공하도록 구성되는 시간적 정렬 정보 제공기를 포함하는 바, 상기 시간적 정렬 정보는 다수의 미디어 콘텐츠의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시들을 제공한다. 이외에도, 서버노드는 미디어 세그먼트들에 대한 키 프레임 위치 정보를 제공하도록 구성되는 키 프레이 제공기를 포함하는 바, 상기 키 프레임 위치 정보는 다수의 레프리젠테이션들의 미디어 세그먼트들에서 키 프레임들의 위치들에 관한 표시들을 제공한다.
제5특징에 따라, HTTP 서버노드에서부터 미디어 콘텐츠의 스트리밍을 수신하기 위한 HTTP 클라이언트노드를 제공하는 바, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 이러한 각 주기는 다수의 미디어 콘텐츠의 레프리젠테이션을 포함한다. 클라이언트노드는 다수의 레프리젠테이션의 미디어 세그먼트들에 대한 시간적 정렬 정보를 수신하도록 구성되는 시간적 정렬 정보 수신기를 포함하는 바, 상기 시간적 정렬 정보는 다수의 미디어 콘텐츠의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시들을 제공한다. 또한 클라이언트노드는 미디어 세그먼트들에 대한 키 프레임 위치 정보를 수신하도록 구성되는 키 프레임 위치 수신기를 포함하는 바, 상기 키 프레임 위치 정보는 다수의 레프리젠테이션들의 미디어 세그먼트들에서 키 프레임들의 위치들에 관한 표시들을 제공한다. 마지막으로, 클라이언트노드는 수신한 시간적 정렬 정보와 수신한 키 프레임 위치 정보들을 기반으로 하여 미디어 콘텐츠의 HTTP 스트리밍의 적응화를 제어하도록 구성되는 적응화 제어기를 포함한다.
본 발명의 장점들은 HTTP 스트리밍 세션 동안에 개선된 적응화의 제어를 가능하게 하는 것을 포함한다.
본 발명에 따라 클라이언트 측에서 적응화 실행과 서버/캐시에서 동일-크기 파일/세그먼트들 간에 상이한 트레이드-오프가 이루어질 수 있게 해준다.
도 1은 본 발명에 따른 방법의 한 실시예의 개략적인 흐름도.
도 2는 본 발명에 따라 HTTP 스트리밍 서버노드에서 사용하기 위한 방법의 한 실시예의 개략적인 흐름도.
도 3은 본 발명에 따라 HTTP 스트리밍 클라이언트노드에서 사용하기 위한 방법의 한 실시예의 개략적인 흐름도.
도 4는 본 발명에 따라 HTTP 스트리밍 서버노드와 HTTP 스트리밍 클라이언트노드의 실시예를 설명하는 도면.
도 5a-e는 본 발명의 실시예들을 개략적으로는 도면.
도 6a-d 본 발명의 실시예들을 개략적으로 설명하는 도면.
도 7은 본 발명의 구현을 개략적으로 설명하는 도면.
본 발명의 다른 목적들과 장점들과 함께, 본 발명은 첨부도면과 함께 이루어진 다음의 상세한 설명을 참조함으로써 가장 잘 이해하게 될 것이다.
도면들을 통해, 비슷하거나 대응하는 요소들에는 동일 참조번호가 사용된다.
배경기술에서 설명하였듯이, 현재의 HTTP 스트리밍 시스템에서, 클라이언트 측에서 적응화 실행과 서버/캐시(cache)에서 동일-크기 파일들/세그먼트들 간에 트레이드-오프(trade-off)를 균형 맞출 필요가 있다. 본 발명가는, 다양한 세그먼트들과 레프리젠테이션들 간의 관계에 관해 클라이언트노드에 표시할 수 있었다면 비-동일 크기 세그먼트들을 허용하는 것이 유익할 수 있다는 것을 이해하게 되었다. 하나 또는 그 이상의 레프리젠테이션들에서 하나 또는 그 이상의 세그먼트들 간의 시간적 정렬(temporal alignment)과 같은, 세그먼테이션의 현 상태에 관한 정보가 있는 해결책을 제공함으로써, 클라이언트는 클라이언트와 서버노드 둘 다에 도움이 되는 정보를 기반으로 적응화를 수행할 수 있다.
본 발명가가 확인하였듯이, 세그먼트의 모든 버전들 또는 레프리젠테이션들이 정렬된 경계(borders)들을 가지는지 여부를 상기에서 언급한 매니페스트에 표시하는 것(signal)이 유리할 수 있다. 예컨대, 이는, 모든 레프리젠테이션들이 동시에 시작할 때 플래그, equalSegmentVersionDurations를 사용하여 이루어질 수 있다(이들 두 제약들이 주어졌을 때, 정렬이 발생하면). 상기 플래그가 세그먼트 정렬을 표시하는 경우에, 세그먼트 정렬이 적응성을 보다 단순하게 하기 때문에, 클라이언트는 적응성만을 제공하는 것을 선택할 수 있다. 플래그가 설정되지 않는 경우에, 세그먼트들의 버전들 각각에 대해 지속 기간(duration)이 제공될 필요가 있는데, 만일 설정된다면 모든 버전들에 적용할 수 있는 지속 기간만이 필요하다. 비록 본 발명의 대부분이 매니페스트에서 시그날링(signaling, 표시)을 기술한다고 하더라도, 몇몇 다른 방식으로 시간적 정렬 정보를 동등하게 표시할 수 있다.
도 1을 참조하여, 통신시스템에서 HTTP 서버노드와 HTTP 클라이언트노드 간에 미디어 콘텐츠의 적응성 HTTP 스트리밍을 제어하는 방법의 실시예를 설명한다. 앞서 언급하였듯이, 예컨대, 비디오, 오디오 등의 미디어 콘텐츠는 다수의 주기들로서 배열되고, 이들 각각은 다수의 미디어 콘텐츠의 레프리젠테이션 또는 버전들을 포함한다. 초기에, 각 레프리젠테이션의 미디어 세그먼트들에 대해 시간적 정렬 정보(temporal alignment information)가 제공된다(S10). 이 시간적 정렬 정보는 동일 미디어 콘텐츠의 다수의 레프리젠테이션들 각각에서 세그먼트들 간의 시간적 관계(temporal relation)의 표시를 제공한다. 즉, 시간적 정렬 정보는 예컨대, 어느 레프리젠테이션들의 어느 세그먼트가 주어지 시점에 시작하는가와, 각각의 세그먼트의 지속 기간과, 동일 세그먼트의 여러 레프리젠테이션들이 시간적으로 정렬되었는지 여부에 대한 정보를 제공한다. 또한, 미디어 세그먼트들에 대해 키 프레임 위치 정보(key frame location information)가 제공된다(S20). 키 프레임 위치 정보는 미디어 콘텐츠들에서 키 프레임들의 위치에 관한 표시들을 제공한다. 두 유형의 정보들은 명시적으로(직접적으로)(explicitly) 또는 함축적으로(간접적으로)(implicitly) 제공될 수 있는데, 이는 아래에서 몇몇 예들로 설명하게 된다.
마지막으로, 제공된 시간적 정렬 정보와 키 프레임 위치 정보들 중 적어도 하나를 기반으로 하여 HTTP 스트리밍 세션의 적응성이 제어된다.
도 2를 참조하여 HTTP 스트리밍 서버노드에서 방법의 실시예를 아래에서 기술한다.
HTTP 스트리밍 서버노드에서, 전송하게 될 미디어 콘텐츠는 전송에 앞서 세그먼트화되고, 이외에도 하나 또는 그 이상의 세그먼트들의 다수의 버전들 또는 레프리젠테이션들이 스트리밍을 위해 클라이언트노드에 제공된다. 클라이언트 친화도(friendliness)와 같은 요인들에 따라, 서버노드는 정확이 동일한 지점에서 각 레프리젠테이션을 세그먼트(분할)하는 것(또는 선-부호화된 세그먼트들을 수신하는 것)을 선택할 수 있다. 이 경우에, 모든 세그먼트들은 시간적으로 정렬된다. 서버노드가 상이한 지점들에서, 예컨대 캐시 친화를 위해, 레프리젠테이션들을 세그먼트하고자 결정하는 경우에, 몇몇 세그먼트들은 시간적으로 정렬될 수 있는 반면 다른 세그먼트들은 정렬되지 못할 수 있다. 수신하는 클라이언트노드에서 적응성을 돕기 위하여, 서버노드는 레프리젠테이션들이 어떻게 시간적으로 정렬되었는가(또는 정렬되지 않았는가)를 표시할(signal, 신호전송)할 필요가 있다. 따라서, 서버노드는 각각의 레프리젠테이션들의 세그먼트들에 대한 시간적 정렬 정보를 수신하는 클라이언트노드에 제공한다(S110). 이외에도, 다양한 레프리젠테이션 세그먼트들에서 소정의 키 프레임들을 어디에 포함시켜야 할지를 선택 또는 결정한다. 이 선택은, 클라이언트 친화도와 포괄적인 선-부호화 콘텐츠를 취할 수 있는 능력 간의 트레이드오프를 기반으로, 시간적 정렬 방법에 대응하여 수행된다. 선택한 키 프레임 방법을 기반으로 하여, 서버노드는 다양한 세그먼트들과 레프리젠테이션들에 대한 키 프레임 위치 정보를 수신하는 클라이언트노드에 추가적으로 제공한다(S120).
시간적 정렬 정보를 제공하는 단계(S110)와 키 프레임 위치 정보를 제공하는 단계(S120)들은 함축적으로 또는 직접적으로 수행될 수 있다. 모든 세그먼트들이 동일한 지속 기간을 가진다는 것을 나타내는 정보를 제공함으로써, 모든 레프리젠테이션들의 모든 세그먼트들이 시간적으로 정렬되게 할 수 있다. 예컨대, 디폴트 값을 특정할 수 있다.
특정 실시예에 따라, 상기에서 언급한 시간적 정렬 정보와 키 프레임 위치 정보는, 수신하게 되는 클라이언트노드에 제공되는 매니페스트 파일(manifest file) 또는 미디어 프리젠테이션에서 수신하는 클라이언트노드에 표시(신호전송)된다. 그러나, 유익하지 않다고 하더라도, 정보는 정보의 몇몇 다른 교환을 통해 클라이언트노드에 제공될 수 있다.
특히, 키 프레임 위치 정보는 모든 또는 몇몇 특정 세그먼트들이 키 프레임(들)으로 시작하는지를 매니페스트에 표시하는 것을 포함할 수 있다. 예컨대, 이는 플래그 StarsWithRAP를 사용하여 이루어질 수 있다. 키 프레임으로 시작하는 것은 적응성을 보다 단순하게 만들기 때문에, 특정 세그먼트가 키 프레임으로 시작하는 이 플래그의 경우에, 클라이언트는 단지 적응성만을 제공하기 위해서선택할 수 있다.
상기에서 언급한 표시(signaling)는 함축적 또는 명시적일 수 있다. 예컨대, 디폴트 값을 특정할 수 있다.
세그먼트의 시작부에 키 프레임 또는 무작위 액세스 지점(random access point)이 존재한다는 것, 또는 세그먼트의 시작부에서 어디에 있는지를 명시적으로 표시하는 대신에, 스트림의 RAP 또는 GOP 구조를 기술하는 표시(signaling)가 제공될 수 있다. 이 방식에서, 클라이언트는 키 프레임들이 스트림 내 어디에 있는지를 계산할 수 있다.
상기에서 용어 시간적으로 정렬되는 세그먼트들이 사용된다. 본 발명은 (시간적으로 정렬되는 세그먼트들과 일치하거나 또는 일치하지 않을 수 있는) 일정한 세그먼트 지속 기간들에도 마찬가지로 동등하게 적용된다. 예컨대, 매 세 번째 오디오 패킷마다 시간적 정렬이 있다는 것을 표시할 수 있다.
HTTP 스트리밍 클라이언트노드, 예컨대 수신 클라언트노드에서의 방법의 실시예들을 도 3을 참조하여 아래에서 설명한다.
클라이언트노드는 HTTP 스트리밍 서버노드로부터의 HTTP 스트리밍 세션에 참여한다. 클라이언트노드는 가용 레프리젠테이션들과 이들의 각 세그먼트들 모두 또는 몇몇에 대한 시간적 정렬(정렬의 부재)에 관한 정보를 수신한다(S210). 이외에도, 클라이언트노드는 레프리젠테이션 세그먼트들에서 키 프레임들의 위치에 관한 정보를 수신한다(S220). 수신한 정보를 기반으로 하여, 클라이언트노드는, 시간적으로 정렬된 세그먼트들이 표시되는지와 세그먼트들이 키 프레임들로 시작하는지에 따라 적응화를 수행함으로써 스트리밍 세션에 대한 그의 적응성을 제어할 수 있다(S230).
만일 레프리젠테이션들의 세그먼트들이 시간적으로 정렬되었다는 정보를 클라이언트가 수신한다면, 새로운 레프리젠테이션들의 시각표를 다시 계산하는 일이 없이 세그먼트 경계에 직접 조정될 수 있다. 반대로, 세그먼트들이 시간적으로 정렬되지 않았다는 정보를 클라이이언트가 수신한다면, 이들 스트림들의 동기화를 지원하고 또한 미디어의 분할을 실행하는(예컨대, 파일 내에서부터 또는 프리젠테이션의 시작부에서부터) 추가 정보를 클라이언트가 필요로 한다.
제공된 시간적 정렬 정보를 기반으로 하는 적응성의 제어를 설명하는 몇몇 실시예들을 아래에서 논의한다. 한 실시예에 따라, 클라이언트노드는, 모든 세그먼트들이 동일한 지속 기간을 가진다는 표시를 수신함으로써 시간적으로 정렬된 세그먼트들이 명시적으로 또는 함축적으로 표시될 때에만 적응화를 수행하는 것을 선택할 수 있다. 또한, 다른 실시예에 따라, 클라이언트는 시간적 정렬 및 일정한 세그먼트 지속 기간이 표시되었을 때에만 적응을 수행하도록 선택할 수 있다.
다른 실시예에 따라, 클라이언트는, 일시적으로-정렬된 세그먼트들이 표시되고 또한 코덱 데이터가 동일하면 부호화된 세그먼트들을 연결시킴으로써(concatenating) 적응화를 수행한다.
일정한 세그먼트 지속 기간 이외에도, 시그날링(표시)은 클라이언트가 특별한 플레이백 트릭(playbck trick)을 수행하는 것을, 예컨대 매 초 세그먼트를 스킵함으로써 고속 포워드를 수행하는 것을 도울 수 있다.
키-프레임 위치 정보 또는 키 프레임 시그날링(표시)의 수신 시에, 클라이언트는 중단되지 않는 플레이백을 제공하기 위해 다수의 세그먼트들을 동시에 다운로드 받을 필요가 있는지를 결정할 수 있다. 만일 상기 시그날링이 키-프레임 정보를 보여준다면, 클라이언트는 새로운 레프리젠테이션을 정확하게 복호할 수 있는 지점을 정확하게 알 수 있다. 스위치 전에 현재 스트림의 복호를 어디에서 중단할지를 결정하는데 상기 정보를 사용할 수 있다.
두 번째로, 클라이언트는 세그먼트들(또는 레프리젠테이션들)에 대한 적응화를 허용하지 않도록 결정하기 위해 세그먼트의 시작부에서 키-프레임들의 존재의 부족을 사용할 수 있다.
세 번째 가능성은, 시간적으로 정렬된 세그먼트들의 시그날링(표시)을 시그날된(표시된) 키-프레임들과 결합시키는 것이다. 만일 세그먼트들이 시간적으로 정렬되고, 또한 키 프레임으로 시작한다면, 스트림 스위칭은 가장 쉽고, 또한 두 신호들의 몇몇 특정 조합들이 검출될 때에만 클라이언트는 스트림 스위칭을 행하는 것을 선택할 수 있다.
다른 유형의 적응성은, 입체 비디오에 적용할 때 작동하기 시작할 수 있다. 망 대역폭 조건에 따라, 입체모드(좌안 레프리젠테이션과 우안 레프리젠테이션 둘 다 다운로드)와 단일모드(단지 좌안/우안 레프리젠테이션만을 다운로드) 간에 사용자가 적응할 수 있다. 키 프레임 시그날링(표시)으로, 클라이언트는 적응화를 수행하기 위한 최적의 방식들을 결정할 수 있다. 예컨대, 좌안 레프리젠테이션의 모든 세그먼트들이 키 프레임으로 시작하고 또한 우안 레프리젠테이션의 극히 소수의 세그먼트들이 키 프레임으로 시작한다면, 좌안 비디오에서 키 프레임의 잦은 출현이 정지와 재시작이 유연하게 이루어지게 하기 때문에 입체모드와 우안모드 간에 적응시키는 것이 바람직하다. 원하는 바에 따라, 이는 튠인 및 튠아웃(tune in and tune out) 입체모드를 크게 용이하게 한다.
적어도 하나의 HTTP 스트리밍 서버노드(100)와 적어도 하나의 HTTP 스트리밍 클라이언트노드(200)를 포함하는 시스템의 실시예들을 도 4를 참조하여 설명한다. 서버노드(100)와 클라이언트노드(200)를 연결하는, 스트리밍 미디어 콘텐츠로 표시된 화살표로 도시된 바와 같이, 두 개의 유닛들이 스트리밍 세션에 수반되는데, 클라이언트노드(100)는 서버노드로부터 소정의 레프리젠테이션의 콘텐츠를 페칭한다.
HTTP 스트리밍 서버노드(100)는 일반적 입력/출력 유닛(I/O)과, 그리고 진행중인(ongoing) 또는 개시된 HTTP 스트리밍 세션의 레프리젠테이션 세그먼트들에 대한 시간적 정렬 정보를 (명시적으로 또는 함축적으로) HTTP 스트리밍 클라이언트노드(200)에 제공하기 위한 시간적 정렬 정보 제공기(110)를 포함한다. 이외에도, 서버노드(100)는 레프리젠테이션 세그먼트들에 대한 키 프레임 위치 정보를 제공하기 위한 키 프레임 위치 정보 제공기(210)를 포함한다. HTTP 스트리밍 서버노드(100)는 바람직하게 서버노드(100)와 클라이언트노드(200) 간에 현재의 스트리밍 세션에 대한 매니페스트(manifest) 또는 미디어 프리젠테이션 서술(media presentation description) 파일 내에 두 정보 요소들을 포함하도록 구성된다. 상기 특징들 이외에도, 서버노드(100)는 레프리젠테이션들을 세그먼팅(분할)하기 위한 유닛들을 포함한다. 마지막으로, 서버노드는 HTTP 스트리밍 세션을 시작하고 또한 유지하기 위한 모든 필요 유닛(미도시)들을 포함한다.
HTTP 스트리밍 클라이언트노드(200)는 일반적인 입력/출력 유닛(I/O)과, 그리고 시간적 정렬 정보 수신기(210)를 포함한다. 시간적 정렬 정보 수신기(210)는 스트리밍 미디어의 레프리젠테이션 세그먼트들의 시간적 정렬에 관한 정보를(명시적 또는 함축적으로) HTTP 스트리밍 서버노드(100)로부터 수신하도록 구성된다. 상기 정보는 상기에서 언급한 매니페스트 파일에서 수신되거나, 또는 몇몇 다른 수단에 의해 독립적인 정보 교환에서 수신될 수 있다. 또한, 클라이언트노드(200)는 현재 스트리밍 세션에서 다양한 레프리젠테이션 세그먼트들 내 소정의 키 프레임들의 위치에 대한 정보를 수신하기 위한, 키 프레임 위치 정보 수신기(220)를 포함한다. 마지막으로, 클라이언트노드(200)는 수신한 시간적 정렬 정보와 키 프레임 위치 정보들 중 하나 또는 둘 다를 기반으로 하여 스트리밍 세션의 적응화를 제어하기 위한 적응화 제어기(230)를 포함한다.
시간적 정렬을 변경시키는 상이한 해결책들의 실시예들을 도 5a - e를 참조하여 설명한다. 상이한 레프리젠테이션들의 예들로서, 세 레벨의 품질이 표시된다. 즉 높은, 중간 및 낮은 레벨이 표시된다.
도 5a에서, 모든 버전들 또는 레프리젠테이션들의 모두 8개의 세그먼트들은 동일한 지속 기간을 가진다. 즉, 각 품질의 모든 세그먼트들은 동일한 지속 기간을 가진다. 즉, 스트리밍서버는 모든 레프리젠테이션들에 대해 미디어를 동일한 세그먼트 지속 기간으로 세그먼트(분할)하였다. 그런 다음 스트리밍 서버노드는 이 정보를 클라이언트노드에 제공하는데, 바람직하게는 세션의 시작부에서 매니페스트에 제공한다. 따라서, 시간적 정렬 정보는, 모든 버전들의 모든 세그먼트들이 동일한 지속 기간을 가진다는 것을 나타내고 그리고 클라이언트는 소정의 세그먼트 경계에서 적응화를, 즉 레프리젠테이션 스위치를 수행하도록 제어할 수 있다.
도 5b에서, 모든 버전들의 모든 세그먼트들은 정렬된 세그먼트 시작점(start point)를 가진다. 즉 세그먼트들은 시간적으로 정렬된다. 그러나, 각 레프리젠테이션의 제1세그먼트는 각 레프리젠테이션의 제2세그먼트보다 길지만, 모든 레프리젠테이션들에 대해 동일한 지속 기간을 가진다. 즉, 스트리밍 서버는 미디어를 시간적 정렬로 세그먼트(분할)하지만, 각 레프리젠테이션 내에서 비-균일 세그먼트 지속기간이 되도록 세그먼트한다. 따라서, 시간적 정렬 정보는 정렬된 시작점들과 개별적인 세그먼트 지속 기간에 대한 표시들을 제공한다. 이전 예에 대해서 말하자면, 클라이언트노드는 소정의 세그먼트 시작점에서 적응화게 수행되도도록 제어할 수 있는데, 이는 세 개의 레프리젠테이션들의 모든 세그먼트들이 시간적으로 정렬되기 때문이다.
도 5c에서, 두 개(또는 그 이상) 버전들의 모든 세그먼트들은 동일한 지속 기간을 가진다. 여기서, 중간 및 낮은 품질 버전들은 시간적으로 정렬되지만, 모든 세그먼트들에 대해서는 동일한 지속 기간을 가지는 반면, 높은 품질 레프리젠테이션 세그먼트들은 가변 지속 기간을 가진다. 따라서, 시간적 정렬 정보는, 중간 및 낮은 품질 세그먼트들은 시간적으로 정렬되지만, 높은 품질 레프리젠테이션은 시간적으로 정렬되지 않는다는 것을 나타낸다. 따라서, 낮은 및 중간 레프리젠테이션 사이의 모든 세그먼트 경계들 간에 적응화가 수행되도록 제어될 수 있지만, 높은 품질 레프리젠테이션에 대해서는 그러하지 않으며, 적응성이 가능하게 되도록 추가적인 고려사항들이나 또는 정보를 사용할 필요가 있다.
도 5d에서, 두 개 또는 그 이상의 버전들의 모든 세그먼트들이 세그먼트 시작점들을 정렬한다. 이는 도 5c의 경우와 비슷하지만, 동일 품질에서 세그먼트들의 지속 기간이 일정하지 않다. 이 예에서, 시간적 정렬 정보는, 높은 및 중간 품질 레프리젠테이션들이 시간적으로 정렬되지만 가변 세그먼트 지속 기간들을 가진다는 것을 나타낸다. 도 5c로부터 알 수 있듯이, 클라이언트노드는 높은 및 중간 품질 레프리젠테이션들에 대해 세그먼트 경계들에서 적응성이 수행되도록 제어할 수 있지만, 낮음 품질의 것에 대해서는 그러하지 않다.
마지막으로, 도 5e에서, 하나 이상의 시점들에서, 두 개 이상의 버전들(수직 대시선으로 표시)의 하나 이상의 세그먼트 경계들 간에 시간적 정렬이 있다. 이는 보다 일반적인 경우로서, 몇몇 특정 시점들이 품질 스위칭을 위해 보다 적절하게 만들어진다. 이 경우에, 시간적 정렬 정보는, 어느 레프리젠테이션들의 어느 세그먼트 경계들이 시간적으로 정렬되는지를 나타낸다. 예에 도시된 바와 같이, 모든 세 개의 레프리젠테이션들은 표시된 세그먼트 경계들에서 시간적으로 정렬되는데, 이들 특정 시점들에서 모든 품질 레프리젠이션들 간에 적응성을 제어할 수 있지만, 다른 시점들에서는 아니다.
키 프레임 위치 정보에 관련되는 몇몇 설시적인 예들을 도 6a - d를 참조하여 아래에서 주어진다. 앞서 언급하였듯이, 스트리밍 서버는, 모든 또는 몇몇 특정 세그먼트가 키 프레임으로 시작하는지를 나타내기 위해 키 프레임 위치에 관한 정보를 제공할 수 있다. 이에 응해, 특정 세그먼트가 키 프레임으로 시작하는 경우, 또는 다른 몇몇 규정의 경우에 클라이언트노드는 적응성을 제공하는 것을 선택할 수 있다.
도 6a에서, 모든 버전들의 모든 세그먼트들은 키 프레임(수직 대시선으로 표시)들로 시작한다. 키 프레임 위치의 정보가 클라이언트노드에 제공되고, 그리고 클라이언트노드는 적응성을 제공하는 것, 예컨대 소정의 레프리젠테이션의 소정의 세그먼트에서 레프리젠테이션을 스위치하는 것을 선택할 수 있다.
도 6b에서, 한 버전의 모든 세그먼트들은 키 프레임으로 시작한다. 이 경우에, 낮은 품질 버전만이 모든 세그먼트들에서 키 프레임을 가지는 반면, 중간 및 높은 품질 버전들은 한 세그먼트에서 하나의 키 프레임을 가진다. 따라서, 한 시점에서 한 특정 세그먼트에서 낮은 품질과 중간 품질 간에 적응화가 수행되도록 제어할 수만 있고, 또한 다른 늦은 시점에서 다른 특정 세그먼트에서 낮은 품질과 높은 품질 간에 적응화가 수행되도록 제어할 수 있다.
도 6c에서, 하나 이상의 버전들의 하나 이상의 세그먼트들이 키 프레임으로 시작한다. 이는 클라이언트노드에 시그날링(표시)되고, 클라이언트노드는 제공된 키 프레임들을 기반으로 하여 적응성을 제공하도록 선택할 수 있다.
마지막으로, 하나 이상의 세그먼트들에 하나 이상의 키 프레임들의 위치가 제공되고 그리고 수신하는 클라이언트노드에서 수신된다. 이전 실시예들과는 달리, 이들 키 프레임들은 그들의 각 세그먼트들의 시작에서 제공되지 않고, 차라리 그들의 세그먼트들 내에 포함된다.
상기에서 기술한 단계들, 기능들, 절차, 및/또는 블록들은 일반-목적 전자회로와 응용-특정 회로 둘 다를 포함하여, 이산회로 또는 집적회로 기술과 같은 통상적인 기술을 사용하여 하드웨어에서 구현될 수 있다.
다르게는, 상기에서 기술한 단계들, 기능, 절차, 및/또는 블록들 중 적어도 일부는 마이크로프로세서, 디지털 신호 처리기(DSP) 및/또는 현장 프로그램 가능 게이트 어레이(FPGA) 장치와 같은 소정의 적절한 프로그램 가능 논리장치와 같은 적절한 프로세싱장치에 의해 실행되는 소프트웨어에서 구현될 수 있다.
망 노드들의 일반적인 프로세싱 능력을 재사용할 수 있다는 것도 알아야 한다. 예컨대, 이는 현존하는 소프트웨어의 재프로그래밍에 의해 또는 새로운 소프트웨어 요소를 부가함으로써 수행될 수 있다.
소프트웨어는 컴퓨터 판독 매체에 저장되는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 그러므로, 소프트웨어는 컴퓨터 프로세서에 의한 실행을 위해 컴퓨터의 연산 메모리에 로드될 수 있다. 컴퓨터/프로세서는 상기에서 기술한 단계들, 기능들, 절차 및/또는 블록들만을 실행하도록 전용될 필요는 없고, 다른 소프트웨어 임무도 실행할 수 있다.
다음에서, 컴퓨터-구현의 예를 도 7을 참조하여 설명한다. 컴퓨터(300)는 프로세서(310)와, 연산 메모리(320)와, 그리고 입력/출력 유닛(330)을 포함한다. 이 특정 예에서, 상기에서 설명한 단계들, 기능들, 절차, 및/또는 블록들 중 적어도 일부는, 프로세서(310)에 의해 실행을 위해 연산 메모리(320)에 로드되는 소프트웨어(325)에서 구현된다. 프로세서(310)와 메모리(320)는 시스템 버스에 의해 서로 연결되어, 정상적인 소프트웨어 실행이 가능하게 한다. I/O 유닛(330)은 I/O 버스를 통해 프로세서(310) 및/또는 메모리(320)에 상호연결되어, 입력 변수 및/또는 최종 출력 변수와 같은 관련 데이터의 입력 및/또는 출력이 가능하게 한다.
상기에서 기술한 실시예들은 본 발명의 몇몇 설시적 예들로서 이해하여야 한다. 본 기술분야의 당업자라면, 본 발명의 범위를 이탈하는 일이 없이 실시예들에 대해 다양한 수정안과, 조합들과 그리고 변경안들이 이루어질 수 있다는 것을 알 것이다. 특히, 상이한 실시예들에서의 상이한 부분 해결책들은, 기술적으로 가능한 다른 구성으로 결합될 수 있다. 그러나, 본 발명의 범위는 첨부한 청구항들에 의해 규정된다.
요약
HTTP : 하이퍼 텍스트 전송 프로토콜((Hyper Text Transfer Protocol)
GOP : 화상 그룹(Group of Pictures)
RAP : 무작위 액세스 포인트(Random Access Point)
MPD : 미디어 프리젠테이션 서술(Media Presentation Description)
CDN : 콘텐츠 분배 망(Content Distribution Network)
RTSP : 실시간 스트리밍 프로토콜(Real Time Streaming Protocol)

Claims (9)

  1. 통신시스템에서 HTTP 서버노드(100)로부터 스트리밍 미디어 콘텐츠를 수신하기 위해 HTTP 클라이언트노드(200)에서 사용하는 방법으로서, 상기 미디어 콘텐츠는 다수의 주기들로 배열되고, 상기 주기들 각각은 미디어 세그먼트들의 다수의 레프리젠테이션들을 포함하여 구성되는 방법에 있어서,
    상기 다수의 레프리젠테이션들의 상기 미디어 세그먼트들에 대한 시간적 정렬 정보를 수신하는 단계(S210)로서, 상기 시간적 정렬 정보는 상기 미디어 콘텐츠의 상기 다수의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시를 제공하는, 수신하는 단계와;
    상기 미디어 세그먼트들에 대한 키 프레임 위치 정보를 수신하는 단계(S220)로서, 상기 키 프레임 위치 정보는 상기 다수의 레프리젠테이션의 상기 미디어 세그먼트가 키 프레임으로 시작하는 명시적인 표시를 제공하는, 수신하는 단계와;
    상기 수신한 시간적 정렬 정보와 상기 수신한 키 프레임 위치 정보를 기반으로 하여 상기 미디어 콘텐츠의 HTTP 스트리밍의 적응화를 제어하는 단계(S230)를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    HTTP 스트리밍의 적응화를 상기 제어하는 단계(S230)는, 상기 시간적 정렬 정보가 시간적으로 정렬된 세그먼트가 제공된 것을 가리키면, HTTP 스트리밍의 적응화를 제어하는 단계를 포함하여 구성되는 것을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서,
    HTTP 스트리밍의 적응화를 상기 제어하는 단계(S230)는, 시간적 정렬 정보가 수신되고 코덱 데이터가 동일하면 부호화된 세그먼트들을 연결함으로써 HTTP 스트리밍의 적응화를 제어하는 단계를 포함하여 구성되는 것을 특징으로 하는 방법.
  4. 통신시스템에서 HTTP 클라이언트노드(200)로 미디어 콘텐츠의 스트리밍을 위해 HTTP 서버노드(100)에서 사용하는 방법으로서, 상기 미디어 콘텐츠는 다수의 주기들로 배열되고, 상기 주기들 각각은 미디어 세그먼트들의 다수의 레프리젠테이션들을 포함하여 구성되는 방법에 있어서,
    상기 HTTP 클라이언트노드에, 상기 다수의 레프리젠테이션들의 상기 미디어 세그먼트들에 대한 시간적 정렬 정보를 제공하는 단계(S110)로서, 상기 시간적 정렬 정보는 상기 미디어 콘텐츠의 상기 다수의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시를 제공하는 단계와;
    상기 HTTP 클라이언트노드에, 상기 미디어 세그먼트들에 대한 키 프레임 위치 정보를 제공하는 단계(S120)로서, 상기 키 프레임 위치 정보는, 상기 HTTP 클라이언트노드에서 상기 스트리밍의 적응성을 돕기 위해, 상기 다수의 레프리젠테이션의 상기 미디어 세그먼트가 키 프레임으로 시작하는 명시적인 표시를 제공하는, 제공하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제4항에 있어서,
    상기 시간적 정렬 정보와 상기 키 프레임 위치 정보를 미디어 프리젠테이션 서술 파일 또는 매니페스트 파일에 제공하는 것을 특징으로 하는 방법.
  6. 제4항 또는 제5항에 있어서,
    공통 시점에서 상기 다수의 레프리젠테이션들 각각을 세그먼팅하고, 상기 다수의 레프리젠테이션들 모두가 상기 시점에서 시간적으로 정렬되는 것을 가리키는 시간적 정렬 정보를 제공하는 것을 특징으로 하는 방법.
  7. 제4항 또는 제5항에 있어서,
    상이한 시점들에서 상기 다수의 레프리젠테이션들 각각을 세그먼팅하고, 상기 다수의 레프리젠테이션들이 시간적으로 정렬된 세그먼트들이 부족한 것을 가리키는 시간적 정렬 정보를 제공하는 것을 특징으로 하는 방법.
  8. HTTP 서버노드(100)로부터 미디어 콘텐츠의 스트리밍을 수신하기 위한 HTTP 클라이언트노드(200)로서, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 상기 주기들 각각은 미디어 세그먼트들의 다수의 레프리젠테이션들을 포함하여 구성되는 클라이언트노드에 있어서,
    상기 다수의 레프리젠테이션들의 상기 미디어 세그먼트들에 대한 시간적 정렬 정보를 수신하도록 구성되는 시간적 정렬 정보 수신기(210)로서, 상기 시간적 정렬 정보는 상기 미디어 콘텐츠의 상기 다수의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시를 제공하는, 시간적 정렬 정보 수신기와;
    상기 미디어 세그먼트들에 대한 키 프레임 위치 정보를 수신하도록 구성되는 키 프레임 위치 수신기(220)로서, 상기 키 프레임 위치 정보는 상기 다수의 레프리젠테이션의 상기 미디어 세그먼트가 키 프레임으로 시작하는 명시적인 표시를 제공하는, 키 프레임 위치 수신기와;
    상기 수신한 시간적 정렬 정보와 상기 수신한 키 프레임 위치 정보들을 기반으로 하여 상기 미디어 콘텐츠의 HTTP 스트리밍의 적응화를 제어하도록 구성되는 적응화 제어기(230)를 포함하는 것을 특징으로 하는 클라이언트노드.
  9. 통신시스템에서 HTTP 클라이언트노드(200)에 미디어 콘텐츠의 스트리밍을 위한 HTTP 서버노드(100)로서, 상기 미디어 콘텐츠는 다수의 주기들로서 배열되고, 상기 주기들 각각은 미디어 세그먼트들의 다수의 레프리젠테이션들을 포함하도록 구성되는 서버노드(100)에 있어서,
    상기 HTTP 클라이언트노드에, 상기 다수의 레프리젠테이션들의 상기 미디어 세그먼트들에 대한 시간적 정렬 정보를 제공하도록 구성되는 시간적 정렬 정보 제공기(110)로서, 상기 시간적 정렬 정보는 상기 미디어 콘텐츠의 상기 다수의 레프리젠테이션들의 세그먼트들 간의 시간적 관계에 관한 표시를 제공하는, 시간적 정렬 정보 제공기와;
    상기 HTTP 클라이언트노드에, 상기 미디어 세그먼트들에 대한 키 프레임 위치 정보를 제공하도록 구성되는 키 프레임 위치 제공기(120)로서, 상기 키 프레임 위치 정보는, 상기 HTTP 클라이언트노드에서 상기 스트리밍의 적응성을 돕기 위해, 상기 다수의 레프리젠테이션의 상기 미디어 세그먼트가 키 프레임으로 시작하는 명시적인 표시를 제공하는, 키 프레임 위치 제공기를 포함하는 것을 특징으로 하는 서버노드.
KR1020167010630A 2010-02-19 2011-02-16 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치 KR101709903B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30598310P 2010-02-19 2010-02-19
US61/305,983 2010-02-19
PCT/SE2011/050167 WO2011102792A1 (en) 2010-02-19 2011-02-16 Method and arrangement for adaption in http streaming

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020127017495A Division KR101624013B1 (ko) 2010-02-19 2011-02-16 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160052763A true KR20160052763A (ko) 2016-05-12
KR101709903B1 KR101709903B1 (ko) 2017-02-23

Family

ID=44483192

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020127017495A KR101624013B1 (ko) 2010-02-19 2011-02-16 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
KR1020167010630A KR101709903B1 (ko) 2010-02-19 2011-02-16 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020127017495A KR101624013B1 (ko) 2010-02-19 2011-02-16 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치

Country Status (10)

Country Link
US (2) US9112933B2 (ko)
EP (2) EP3018881A1 (ko)
JP (1) JP5824465B2 (ko)
KR (2) KR101624013B1 (ko)
CN (1) CN102812683B (ko)
AU (1) AU2011218489B2 (ko)
CA (1) CA2786257C (ko)
MX (1) MX2012007838A (ko)
PL (1) PL2537319T3 (ko)
WO (1) WO2011102792A1 (ko)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP1552617A2 (en) 2002-10-05 2005-07-13 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
CN1954501B (zh) 2003-10-06 2010-06-16 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法
JP4971144B2 (ja) 2004-05-07 2012-07-11 デジタル ファウンテン, インコーポレイテッド ファイルダウンロードおよびストリーミングのシステム
KR101292851B1 (ko) 2006-02-13 2013-08-02 디지털 파운튼, 인크. 가변적 fec 오버헤드 및 보호 구간을 이용하는 스트리밍및 버퍼링
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
CN108366070A (zh) * 2011-03-16 2018-08-03 韩国电子通信研究院 用于提供媒体内容的方法和客户端
US9462024B2 (en) * 2011-06-08 2016-10-04 Futurewei Technologies, Inc. System and method of media content streaming with a multiplexed representation
KR101840008B1 (ko) * 2011-06-24 2018-05-04 에스케이플래닛 주식회사 고화질 비디오 스트리밍 서비스 방법 및 시스템
US9253233B2 (en) * 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) * 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
PL2798816T3 (pl) * 2011-12-29 2016-11-30 Inicjowane sieciowo sterowanie strumieniowego przesyłania zawartości
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
JP6021385B2 (ja) * 2012-03-30 2016-11-09 エヌ・ティ・ティ・コミュニケーションズ株式会社 ストリーミングメディア再生装置、ストリーミングメディア再生方法、及びプログラム
CN102780919A (zh) * 2012-08-24 2012-11-14 乐视网信息技术(北京)股份有限公司 通过关键帧进行视频定位和播放的方法
US9813325B2 (en) 2012-12-27 2017-11-07 Comcast Cable Communications, Llc Information stream management
US9654533B2 (en) * 2013-01-17 2017-05-16 Electronics And Telecommunications Research Institute Method of adaptively delivering media based on reception status information from media client and apparatus using the same
WO2014133589A1 (en) * 2013-03-01 2014-09-04 Intel Corporation Wireless local area network (wlan) traffic offloading
HUE043713T2 (hu) * 2013-03-29 2019-09-30 Intel Ip Corp Minõségtudatos sebességillesztési technikák DASH streameléshez
EP3065414B1 (en) * 2013-10-30 2019-01-09 Saturn Licensing LLC Transmission device, transmission method, reception device, and reception method
US9197717B2 (en) 2013-11-27 2015-11-24 At&T Intellectual Property I, Lp Server-side scheduling for media transmissions according to client device states
WO2015105327A1 (ko) * 2014-01-08 2015-07-16 한국전자통신연구원 Dash를 사용하는 비디오 재생을 위한 비트 깊이 표현 방법
DE102014109088A1 (de) * 2014-06-27 2015-12-31 Deutsche Telekom Ag Verfahren zum kontinuierlichen Überwachen einer Synchronität zwischen verschiedenen beim HTTP adaptiven Streaming verwendeten Qualitätsprofilen
KR101600469B1 (ko) * 2014-07-16 2016-03-07 김재경 스트리밍 서비스를 위한 클라이언트 및 서버의 동작 방법
KR101919726B1 (ko) * 2015-02-15 2018-11-16 후아웨이 테크놀러지 컴퍼니 리미티드 하이퍼텍스트 전송 프로토콜 미디어 스트림에 기초한 미디어 프레젠테이션 가이드 방법 및 관련 장치
US10652625B1 (en) * 2016-06-27 2020-05-12 Amazon Technologies, Inc. Synchronization of multiple encoders for streaming content
US10812558B1 (en) * 2016-06-27 2020-10-20 Amazon Technologies, Inc. Controller to synchronize encoding of streaming content
US10652292B1 (en) * 2016-06-28 2020-05-12 Amazon Technologies, Inc. Synchronization of multiple encoders for streaming content
US10652166B2 (en) * 2017-06-27 2020-05-12 Cisco Technology, Inc. Non-real time adaptive bitrate recording scheduler

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070101826A (ko) * 2005-03-01 2007-10-17 비브콤 인코포레이티드 프레임 관련 정보 제공 방법, 프레임 관련 정보 수신 방법및 프레임 관련 정보 검색 시스템
KR20080063450A (ko) * 2005-09-07 2008-07-04 비브콤 인코포레이티드 방송 프로그램의 실제 시작 시간 제공 시스템, 방송프로그램의 실제 시작 시간 검출 방법 및 장치, 방송프로그램 녹화 방법 및 장치, 녹화 프로그램 재생 방법

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155735B1 (en) * 1999-10-08 2006-12-26 Vulcan Patents Llc System and method for the broadcast dissemination of time-ordered data
US6792047B1 (en) * 2000-01-04 2004-09-14 Emc Corporation Real time processing and streaming of spliced encoded MPEG video and associated audio
US7908628B2 (en) * 2001-08-03 2011-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content coding and formatting
KR100486713B1 (ko) * 2002-09-17 2005-05-03 삼성전자주식회사 멀티미디어 스트리밍 장치 및 방법
CN100444637C (zh) * 2005-04-14 2008-12-17 中兴通讯股份有限公司 一种在网络中传输视频流的方法
CN102752639B (zh) 2005-07-18 2015-08-05 汤姆森许可贸易公司 使用元数据来处理多个视频流的方法和设备
JP2007036666A (ja) * 2005-07-27 2007-02-08 Onkyo Corp コンテンツ配信システム、クライアント及びクライアントプログラム
US20070169152A1 (en) * 2005-12-30 2007-07-19 Daniel Roodnick Data and wireless frame alignment for error reduction
JP2008236390A (ja) 2007-03-20 2008-10-02 Asv:Kk 映像再生システムにおける映像シーク制御方式
US8635360B2 (en) * 2007-10-19 2014-01-21 Google Inc. Media playback point seeking using data range requests
US8543720B2 (en) * 2007-12-05 2013-09-24 Google Inc. Dynamic bit rate scaling
US8307395B2 (en) * 2008-04-22 2012-11-06 Porto Technology, Llc Publishing key frames of a video content item being viewed by a first user to one or more second users
US8379851B2 (en) * 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US8831402B2 (en) * 2008-06-16 2014-09-09 Telefonaktiebolaget Lm Ericsson (Publ) Media stream processing
CN101511010A (zh) * 2009-03-27 2009-08-19 北京中星微电子有限公司 一种媒体流发送方法及装置
US8355433B2 (en) * 2009-08-18 2013-01-15 Netflix, Inc. Encoding video streams for adaptive video streaming
US8914835B2 (en) * 2009-10-28 2014-12-16 Qualcomm Incorporated Streaming encoded video data
EP3220281A1 (en) * 2009-11-04 2017-09-20 Amotech Co., Ltd. System and method for media content streaming
US8456531B2 (en) * 2010-01-14 2013-06-04 Cheetah Technologies, L.P. Video alignment and calibration for video quality measurement
WO2012032502A1 (en) 2010-09-10 2012-03-15 Nokia Corporation A method and apparatus for adaptive streaming

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070101826A (ko) * 2005-03-01 2007-10-17 비브콤 인코포레이티드 프레임 관련 정보 제공 방법, 프레임 관련 정보 수신 방법및 프레임 관련 정보 검색 시스템
KR20080063450A (ko) * 2005-09-07 2008-07-04 비브콤 인코포레이티드 방송 프로그램의 실제 시작 시간 제공 시스템, 방송프로그램의 실제 시작 시간 검출 방법 및 장치, 방송프로그램 녹화 방법 및 장치, 녹화 프로그램 재생 방법

Also Published As

Publication number Publication date
KR20130009740A (ko) 2013-01-23
EP3018881A1 (en) 2016-05-11
EP2537319A1 (en) 2012-12-26
US20120317189A1 (en) 2012-12-13
WO2011102792A1 (en) 2011-08-25
AU2011218489B2 (en) 2015-08-13
EP2537319A4 (en) 2013-08-14
CA2786257C (en) 2018-03-06
EP2537319B1 (en) 2016-02-10
JP2013520865A (ja) 2013-06-06
JP5824465B2 (ja) 2015-11-25
US9112933B2 (en) 2015-08-18
CA2786257A1 (en) 2011-08-25
AU2011218489A1 (en) 2012-08-09
KR101709903B1 (ko) 2017-02-23
US20150237094A1 (en) 2015-08-20
KR101624013B1 (ko) 2016-05-24
CN102812683A (zh) 2012-12-05
MX2012007838A (es) 2012-07-30
US9479555B2 (en) 2016-10-25
PL2537319T3 (pl) 2016-06-30
CN102812683B (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
KR101709903B1 (ko) 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
KR101628432B1 (ko) 에이치티티피 스트리밍에서 레프리젠테이션 스위칭을 위한 방법 및 장치
US8943215B2 (en) Distributed smooth streaming utilizing dynamic manifests
CN110636346B (zh) 一种码率自适应切换方法、装置、电子设备及存储介质
WO2020048429A1 (zh) 一种媒体资源获取的方法及装置
TWI716018B (zh) 動態縮減替換內容之播放以幫助對齊替換內容之結束與已替換內容之結束
US9674266B2 (en) Method for adaptive streaming, local storing and post-storing quality increase of a content file
US10432690B1 (en) Manifest partitioning
US10149020B2 (en) Method for playing a media stream in a browser application
JP5859694B2 (ja) コンテンツのプレイアウトをサポートする方法及び装置
CN111316652A (zh) 使用对齐编码内容片段的个性化内容流
KR20170116027A (ko) 저 레이턴시 비디오 스트리밍
TW201448570A (zh) 適應性串流技術
EP2646936A1 (en) Real-time or near real-time streaming
KR20160145657A (ko) 스트리밍 미디어 데이터 전송 방법, 클라이언트 및 서버
CN113852824A (zh) 视频转码方法、装置、电子设备和存储介质
WO2011123821A1 (en) Real-time or near real-time streaming
EP3681122A1 (en) System, method and devices for low latency transmission
JP2017225044A (ja) コンテンツ配信システムのクライアント装置、コンテンツの取得方法及びプログラム

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200212

Year of fee payment: 4