KR20130061170A - 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 매니페스트 파일 업데이트들 - Google Patents
코딩된 비디오 데이터의 네트워크 스트리밍을 위한 매니페스트 파일 업데이트들 Download PDFInfo
- Publication number
- KR20130061170A KR20130061170A KR1020137006120A KR20137006120A KR20130061170A KR 20130061170 A KR20130061170 A KR 20130061170A KR 1020137006120 A KR1020137006120 A KR 1020137006120A KR 20137006120 A KR20137006120 A KR 20137006120A KR 20130061170 A KR20130061170 A KR 20130061170A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- manifest file
- segment
- client device
- representation
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/752—Media network packet handling adapting media to network capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/756—Media network packet handling adapting media to device capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/764—Media network packet handling at the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
Abstract
일 실시예에서, 멀티미디어 데이터를 취출하는 디바이스는, 그 디바이스에 의해 저장된 매니페스트 파일의 카피의 데이터에 따라 멀티미디어 콘텐츠의 표현의 그 제 1 세그먼트의 데이터를 취출하고, 매니페스트 파일에 따라 표현의 제 2 세그먼트의 일부를 취출하는 것으로서, 제 2 세그먼트는 표현에서 제 1 세그먼트 이후에 발생하고, 제 2 세그먼트의 일부는 매니페스트 파일이 업데이트될 것을 표시하는, 그 제 2 세그먼트의 일부를 취출하고, 매니페스트 파일이 업데이트될 것이라는 표시에 기초하여 그 디바이스에 의해 저장된 매니페스트 파일의 카피를 업데이트하며, 그리고 업데이트된 매니페스트 파일에 따라 제 2 세그먼트의 미디어 데이터를 취출하도록 구성되는 하나 이상의 프로세서들을 포함한다.
Description
본 개시물은 인코딩된 멀티미디어 데이터의 저장 및 이송 (transport) 에 관련된다.
디지털 비디오 성능들은 디지털 텔레비전들, 디지털 다이렉트 브로드캐스트 시스템들, 무선 브로드캐스트 시스템들, 개인휴대 정보 단말들 (PDAs), 랩톱 또는 데스크톱 컴퓨터들, 디지털 카메라들, 디지털 녹화 디바이스들, 디지털 미디어 재생기들, 비디오 게임 디바이스들, 비디오 게임 콘솔들, 셀룰러 또는 위성 무선 전화기들, 비디오 원격 화상 회의 디바이스들 등을 포함하는 광범위한 디바이스들에 통합될 수 있다. 디지털 비디오 디바이스들은 디지털 비디오 정보를 더 효율적으로 송신 및 수신하기 위한, MPEG-2, MPEG-4, ITU-T H.263 또는 ITU-T H.264/MPEG-4, 파트 10, 어드밴스드 비디오 코딩 (AVC) 에 의하여 정의되는 표준들 및 이러한 표준들의 확장들에 설명되어 있는 것과 같은 비디오 압축 기법들을 구현한다.
비디오 압축 기법들은 공간적 예측 및/또는 시간적 예측을 수행하여 비디오 시퀀스들에 내재된 리던던시를 감소시키거나 제거한다. 블록-기반 비디오 코딩에서는, 비디오 프레임 또는 슬라이스는 매크로블록들로 파티셔닝될 수도 있다. 각 매크로블록들은 더 파티셔닝될 수 있다. 인트라-코딩된 (I) 프레임 또는 슬라이스 내의 매크로블록들은 인접 매크로블록들에 대한 공간적 예측을 이용하여 인코딩된다. 인터-코딩된 (P 또는 B) 프레임 또는 슬라이스 내의 매크로블록들은 동일한 프레임 또는 슬라이스 내의 인접 매크로블록들에 대한 공간적 예측을 이용하거나 다른 기준 프레임들에 대한 시간적 예측을 이용할 수도 있다.
비디오 데이터가 인코딩된 이후에, 비디오 데이터는 송신 및 저장을 위하여 패킷화될 수도 있다. 비디오 데이터는 다양한 표준들 중 임의의 것, 예컨대 ITU-T H.264/AVC 와 같은 ISO (International Organization for Standardizationj) 기초 미디어 파일 포맷 및 그의 확장들에 따르는 비디오 파일 내로 어셈블링될 수도 있다. 이러한 패킷화된 비디오 데이터는 다양한 방법들로, 예컨대 네트워크 스트리밍을 이용한 컴퓨터 네트워크 상의 송신으로써 이송될 수도 있다.
일반적으로, 본 개시물은 네트워크 상의 미디어 데이터의 스트리밍을 개선하기 위한 기법들을 설명한다. 이러한 기법들은 트릭 모드들, 예컨대 네트워크 상에서 스트리밍된 미디어 콘텐츠 내에서의 패스트 포워드, 리와인드, 및 탐색의 지원을 포함한다. 또한, 이러한 기법들은 표현 그룹들에 대한 지원, 예컨대 표현들의 그룹에 대한 공통 특징들 및 그 표현들의 개별 특징들의 시그널링을 포함한다. 더욱이, 이러한 기법들은 스트리밍된 미디어 콘텐츠에 대한 매니페스트 파일들 (manifest files) 의 업데이트를 위한 정보를 제공하는 것을 포함한다. 또한, 이러한 기법들은 미디어 콘텐츠에 대한 외부 기간들 (external periods) 로서의 타게팅된 광고들에 대한 미디어 데이터를 제공하는 것을 포함한다. 더 나아가, 이러한 기법들은 클라이언트 디바이스로부터 서비스 제공자로의 경험 품질 리포트들을 제공하는 것 및 해석하는 것을 포함한다. 더욱이, 이러한 기법들은 미디어 콘텐츠의 매니페스트 파일이 따르는 프로파일 데이터의 시그널링을 포함한다.
일 예에서는, 비디오 데이터를 취출하는 방법은 멀티미디어 콘텐츠에 대한 매니페스트 파일의 적어도 일부를 분석하는 단계로서, 매니페스트 파일의 일부는 멀티미디어 콘텐츠의 표현들의 세트들을 표시하는 정보 및 표현들의 세트들 각각에 대한 공통 특징들을 표시하는 정보를 포함하는, 그 분석하는 단계, 표현들의 세트들 중 하나에 대한 공통 특징들에 기초하여 표현들의 세트들 중 하나를 선택하는 단계, 세트들 중 선택된 하나의 표현들 중 하나의 하나 이상의 코딩 특징들에 기초하여 표현들의 세트들 중 하나의 표현들 중 하나를 선택하는 단계, 및 선택에 기초하여 표현들 중 하나의 데이터에 대한 요청을 생성하는 단계를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 수신하기 위한 디바이스는, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 적어도 일부를 분석하는 것으로서, 매니페스트 파일의 일부는 멀티미디어 콘텐츠의 표현들의 세트들을 표시하는 정보 및 표현들의 세트들 각각에 대한 공통 특징들을 표시하는 정보를 포함하고, 표현들의 세트들 중 하나에 대한 공통 특징들에 기초하여 표현들의 세트들 중 하나를 선택하고, 세트들 중 선택된 하나의 표현들 중 하나의 하나 이상의 코딩 특징들에 기초하여 표현들의 세트들 중 하나의 표현들 중 하나를 선택하며, 그리고 선택에 기초하여 표현들 중 하나의 데이터에 대한 요청을 생성하도록 구성되는 하나 이상의 프로세서들을 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 수신하기 위한 디바이스는, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 적어도 일부를 분석하는 수단으로서, 매니페스트 파일의 일부는 멀티미디어 콘텐츠의 표현들의 세트들을 표시하는 정보 및 표현들의 세트들 각각에 대한 공통 특징들을 표시하는 정보를 포함하는, 분석하는 수단, 표현들의 세트들 중 하나에 대한 공통 특징들에 기초하여 표현들의 세트들 중 하나를 선택하는 수단, 세트들 중 선택된 하나의 표현들 중 하나의 하나 이상의 코딩 특징들에 기초하여 표현들의 세트들 중 하나의 표현들 중 하나를 선택하는 수단, 및 선택에 기초하여 표현들 중 하나의 데이터에 대한 요청을 생성하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행될 경우, 비디오 데이터를 취출하는 디바이스의 프로세서로 하여금, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 적어도 일부를 분석하게 하는 것으로서, 매니페스트 파일의 일부는 멀티미디어 콘텐츠의 표현들의 세트들을 표시하는 정보 및 표현들의 세트들 각각에 대한 공통 특징들을 표시하는 정보를 포함하는, 분석하게 하고, 표현들의 세트들 중 하나에 대한 공통 특징들에 기초하여 표현들의 세트들 중 하나를 선택하게 하고, 세트들 중 선택된 하나의 표현들 중 하나의 하나 이상의 코딩 특징들에 기초하여 표현들의 세트들 중 하나의 표현들 중 하나를 선택하게 하며, 그리고 선택에 기초하여 표현들 중 하나의 데이터에 대한 요청을 생성하게 하는 명령들을 포함하는 컴퓨터-판독가능 저장 매체를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하는 방법은, 하나 이상의 공통 특징들을 가지는 멀티미디어 콘텐츠의 표현들의 세트를 획득하는 단계로서, 세트 내의 표현들 각각은 공통 특징들로부터 분리되는 하나 이상의 개별 코딩 특징들을 가지는, 표현들의 세트를 획득하는 단계, 멀티미디어 콘텐츠에 대한 매니페스트 파일을 획득하는 단계로서, 매니페스트 파일은 세트 내의 표현들을 표시하는 정보, 표현들의 세트에 대한 공통 특징들을 표시하는 정보, 및 세트 내의 표현들 각각에 대한 코딩 특징들을 표시하는 정보를 포함하는, 매니페스트 파일을 획득하는 단계, 및 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하는 단계를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하기 위한 디바이스로서, 디바이스는, 하나 이상의 공통 특징들을 가지는 멀티미디어 콘텐츠의 표현들의 세트를 획득하는 것으로서, 세트 내의 표현들 각각은 공통 특징들로부터 분리되는 하나 이상의 개별 코딩 특징들을 가지는, 표현들의 세트를 획득하고, 멀티미디어 콘텐츠에 대한 매니페스트 파일을 획득하는 것으로서, 매니페스트 파일은 세트 내의 표현들을 표시하는 정보, 표현들의 세트에 대한 공통 특징들을 표시하는 정보, 및 세트 내의 표현들 각각에 대한 코딩 특징들을 표시하는 정보를 포함하는, 매니페스트 파일을 획득하며, 그리고 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하도록 구성되는 하나 이상의 프로세서들을 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하기 위한 디바이스는, 하나 이상의 공통 특징들을 가지는 멀티미디어 콘텐츠의 표현들의 세트를 획득하는 수단으로서, 세트 내의 표현들 각각은 공통 특징들로부터 분리되는 하나 이상의 개별 코딩 특징들을 가지는, 표현들의 세트를 획득하는 수단, 멀티미디어 콘텐츠에 대한 매니페스트 파일을 획득하는 수단으로서, 매니페스트 파일은 세트 내의 표현들을 표시하는 정보, 표현들의 세트에 대한 공통 특징들을 표시하는 정보, 및 세트 내의 표현들 각각에 대한 코딩 특징들을 표시하는 정보를 포함하는, 매니페스트 파일을 획득하는 수단, 및 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 비디오 데이터를 제공하기 위한 디바이스로서의 프로세서로 하여금, 하나 이상의 공통 특징들을 가지는 멀티미디어 콘텐츠의 표현들의 세트를 획득하는 것으로서, 세트 내의 표현들 각각은 공통 특징들로부터 분리되는 하나 이상의 개별 코딩 특징들을 가지는, 표현들의 세트를 획득하게 하고, 멀티미디어 콘텐츠에 대한 매니페스트 파일을 획득하는 것으로서, 매니페스트 파일은 세트 내의 표현들을 표시하는 정보, 표현들의 세트에 대한 공통 특징들을 표시하는 정보, 및 세트 내의 표현들 각각에 대한 코딩 특징들을 표시하는 정보를 포함하게 하며, 그리고 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하게 하는 명령들을 포함하는 컴퓨터-판독가능 저장 매체를 포함한다.
다른 예에서는, 비디오 데이터를 취출하는 방법은, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 정보를 분석하는 단계로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 정보를 분석하는 단계, 시간적 서브-시퀀스에 대한 데이터의 하나 이상의 위치들을 결정하는 단계, 및 시간적 서브-시퀀스에 대한 데이터에 대한 하나 이상의 요청들을 제출하는 단계를 포함한다.
다른 예에서는, 비디오 데이터를 취출하기 위한 디바이스는, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 정보를 분석하는 것으로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 정보를 분석하고, 시간적 서브-시퀀스에 대한 데이터의 하나 이상의 위치들을 결정하며, 그리고 시간적 서브-시퀀스에 대한 데이터에 대한 하나 이상의 요청들을 제출하도록 구성되는 하나 이상의 프로세서들을 포함한다.
다른 예에서는, 비디오 데이터를 취출하기 위한 디바이스는, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 정보를 분석하는 수단으로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 정보를 분석하는 수단, 시간적 서브-시퀀스에 대한 데이터의 하나 이상의 위치들을 결정하는 수단, 및 시간적 서브-시퀀스에 대한 데이터에 대한 하나 이상의 요청들을 제출하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행될 경우, 비디오 데이터를 취출하는 디바이스의 프로세서로 하여금, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 정보를 분석하게 하는 것으로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 정보를 분석하게 하고, 시간적 서브-시퀀스에 대한 데이터의 하나 이상의 위치들을 결정하게 하며, 그리고 시간적 서브-시퀀스에 대한 데이터에 대한 하나 이상의 요청들을 제출하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 매체를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하는 방법은, 시간적 서브-시퀀스를 포함하는 멀티미디어 콘텐츠의 적어도 하나의 표현에 대한 데이터를 획득하는 단계, 멀티미디어 콘텐츠에 대한 매니페스트 파일에 대하여 데이터를 획득하는 단계로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 데이터를 획득하는 단계, 및 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하는 단계를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하기 위한 디바이스는, 시간적 서브-시퀀스를 포함하는 멀티미디어 콘텐츠의 적어도 하나의 표현에 대한 데이터를 획득하고, 멀티미디어 콘텐츠에 대한 매니페스트 파일에 대하여 데이터를 획득하는 것으로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 데이터를 획득하며, 그리고 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하도록 구성되는 하나 이상의 프로세서들을 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하는 디바이스는, 시간적 서브-시퀀스를 포함하는 멀티미디어 콘텐츠의 적어도 하나의 표현에 대한 데이터를 획득하는 수단, 멀티미디어 콘텐츠에 대한 매니페스트 파일에 대하여 데이터를 획득하는 수단으로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 데이터를 획득하는 수단, 및 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행될 경우, 비디오 데이터에 대한 정보를 전송하는 디바이스의 프로세서로 하여금, 시간적 서브-시퀀스를 포함하는 멀티미디어 콘텐츠의 적어도 하나의 표현에 대한 데이터를 획득하게 하고, 멀티미디어 콘텐츠에 대한 매니페스트 파일에 대하여 데이터를 획득하게 하는 것으로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 데이터를 획득하게 하며, 그리고 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 매체를 포함한다.
다른 예에서는, 비디오 데이터를 취출하는 방법은, 클라이언트 디바이스에 의하여 저장된 매니페스트 파일의 복제본의 데이터에 따라서 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하는 단계, 매니페스트 파일에 따라서 표현의 제 2 세그먼트의 일부를 취출하는 단계로서, 제 2 세그먼트는 표현 내에서 제 1 세그먼트 이후에 발생하고, 제 2 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는, 제 2 세그먼트의 일부를 취출하는 단계, 매니페스트 파일이 업데이트되어야 한다는 표시에 기초하여 클라이언트 디바이스에 의하여 저장된 매니페스트 파일의 복제본을 업데이트하는 단계, 및 업데이트된 매니페스트 파일에 따라서 제 2 세그먼트의 미디어 데이터를 취출하는 단계를 포함한다.
다른 예에서는, 비디오 데이터를 취출하기 위한 디바이스는, 디바이스에 의하여 저장된 매니페스트 파일의 복제본의 데이터에 따라서 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하도록, 매니페스트 파일에 따라서 표현의 제 2 세그먼트의 일부를 취출하는 것으로서, 제 2 세그먼트는 표현 내에서 제 1 세그먼트 이후에 발생하고, 제 2 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는 제 2 세그먼트의 일부를 취출하고, 매니페스트 파일이 업데이트되어야 한다는 표시에 기초하여 디바이스에 의하여 저장된 매니페스트 파일의 복제본을 업데이트하며, 그리고 업데이트된 매니페스트 파일에 따라서 제 2 세그먼트의 미디어 데이터를 취출하도록 구성되는 하나 이상의 프로세서들을 포함한다.
다른 예에서는, 비디오 데이터를 취출하기 위한 디바이스는, 디바이스에 의하여 저장된 매니페스트 파일의 복제본의 데이터에 따라서 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하는 수단, 매니페스트 파일에 따라서 표현의 제 2 세그먼트의 일부를 취출하는 수단으로서, 제 2 세그먼트는 표현 내에서 제 1 세그먼트 이후에 발생하고, 제 2 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는, 제 2 세그먼트의 일부를 취출하는 수단, 매니페스트 파일이 업데이트되어야 한다는 표시에 기초하여 디바이스에 의하여 저장된 매니페스트 파일의 복제본을 업데이트하는 수단, 및 업데이트된 매니페스트 파일에 따라서 제 2 세그먼트의 미디어 데이터를 취출하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행될 경우, 비디오 데이터를 취출하는 디바이스의 프로세서로 하여금, 디바이스에 의하여 저장된 매니페스트 파일의 복제본의 데이터에 따라서 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하게 하고, 매니페스트 파일에 따라서 표현의 제 2 세그먼트의 일부를 취출하게 하는 것으로서, 제 2 세그먼트는 표현 내에서 제 1 세그먼트 이후에 발생하고, 제 2 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는, 상기 제 2 세그먼트의 일부를 취출하게 하고, 매니페스트 파일이 업데이트되어야 한다는 표시에 기초하여 디바이스에 의하여 저장된 매니페스트 파일의 복제본을 업데이트하며, 그리고 업데이트된 매니페스트 파일에 따라서 제 2 세그먼트의 미디어 데이터를 취출하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 매체를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하는 방법은, 멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스로 전송하는 단계로서, 매니페스트 파일은 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 데이터를 전송하는 단계, 클라이언트 디바이스로부터의 요청에 응답하여 표현의 제 1 세그먼트의 적어도 일부를 클라이언트 디바이스로 전송하는 단계로서, 제 1 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 나타내고, 매니페스트 파일의 업데이트된 버전은 표현의 제 2 의 상이한 세그먼트를 표시하는 정보를 포함하는, 제 1 세그먼트의 적어도 일부를 전송하는 단계, 및 클라이언트 디바이스로부터 수신되고 업데이트된 매니페스트 파일에 따라서 형성된 요청에 응답하여, 제 2 세그먼트의 데이터를 클라이언트 디바이스로 전송하는 단계를 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하기 위한 디바이스는, 멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스로 전송하는 것으로서, 매니페스트 파일은 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 데이터를 전송하고, 클라이언트 디바이스로부터의 요청에 응답하여 표현의 제 1 세그먼트의 적어도 일부를 클라이언트 디바이스로 전송하는 것으로서, 제 1 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는, 제 1 세그먼트의 적어도 일부를 전송하고, 매니페스트 파일의 업데이트된 버전은 표현의 제 2 의 상이한 세그먼트를 표시하는 정보를 포함하며, 그리고 클라이언트 디바이스로부터 수신되고 업데이트된 매니페스트 파일에 따라서 형성된 요청에 응답하여, 제 2 세그먼트의 데이터를 클라이언트 디바이스로 전송하도록 구성되는 하나 이상의 프로세서들을 포함한다.
다른 예에서는, 비디오 데이터에 대한 정보를 전송하기 위한 디바이스는, 멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스로 전송하는 수단으로서, 매니페스트 파일은 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 데이터를 전송하는 수단, 클라이언트 디바이스로부터의 요청에 응답하여 표현의 제 1 세그먼트의 적어도 일부를 클라이언트 디바이스로 전송하는 수단으로서, 제 1 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는, 제 1 세그먼트의 적어도 일부를 전송하는 수단, 매니페스트 파일의 업데이트된 버전은 표현의 제 2 의 상이한 세그먼트를 표시하는 정보를 포함하는 수단, 및 클라이언트 디바이스로부터 수신되고 업데이트된 매니페스트 파일에 따라서 형성된 요청에 응답하여, 제 2 세그먼트의 데이터를 클라이언트 디바이스로 전송하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행될 경우, 비디오 데이터에 대한 정보를 전송하는 디바이스의 프로세서로 하여금, 멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스로 전송하게 하는 것으로서, 매니페스트 파일은 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 데이터를 전송하게 하고, 클라이언트 디바이스로부터의 요청에 응답하여 표현의 제 1 세그먼트의 적어도 일부를 클라이언트 디바이스로 전송하는 것으로서, 제 1 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 나타내는, 상기 제 1 세그먼트의 적어도 일부를 전송하게 하고, 매니페스트 파일의 업데이트된 버전은 표현의 제 2 의 상이한 세그먼트를 표시하는 정보를 포함하게 하며, 그리고 클라이언트 디바이스로부터 수신되고 업데이트된 매니페스트 파일에 따라서 형성된 요청에 응답하여, 제 2 세그먼트의 데이터를 클라이언트 디바이스로 전송하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 매체를 포함한다.
도 1 은 미디어 데이터를 네트워크 상에서 스트리밍하기 위한 기법들을 구현하는 예시적인 시스템을 예시하는 블록도이다.
도 2 는 하나의 예시적인 멀티미디어 콘텐츠의 엘리먼트들을 예시하는 개념도이다.
도 3 은 하나의 예시적인 비디오 파일의 엘리먼트들로서, 멀티미디어 콘텐츠의 표현의 세그먼트에 대응할 수도 있는 엘리먼트들을 예시하는 블록도이다.
도 4 는 미디어 프리젠테이션 디스크립션 (MPD) 및 다양한 표현 그룹들을 포함하는 하나의 예시적인 멀티미디어 콘텐츠를 예시하는 개념도이다.
도 5 는 다른 예시적인 멀티미디어 콘텐츠를 예시하는 개념도인데, 여기서 MPD 데이터는 다양한 표현 그룹들에 대한 다양한 부분들로 분할된다.
도 6 은 트릭 모드들을 지원하기 위하여 이용될 수도 있는 다른 예시적인 멀티미디어 콘텐츠를 예시하는 개념도이다.
도 7 은, 세그먼트들 내에 멀티미디어 콘텐츠의 MPD가 업데이트되어야 한다는 것을 표시하는 MPD 업데이트 박스들을 포함할 수도 있는, 다른 예시적인 멀티미디어 콘텐츠를 예시하는 개념도이다.
도 8 은 표현 그룹들의 표시들을 서버 디바이스에 의하여 제공하고, 그리고 클라이언트 디바이스에 의하여 표현 그룹들 및 선택된 표현 그룹 내의 개별 표현을 선택하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 9 는 서버 디바이스에 의하여 트릭 모드를 표현하는 데이터를 제공하고, 그리고 클라이언트 디바이스에 의하여 데이터를 이용하여 멀티미디어 콘텐츠의 트릭 모드 데이터를 취출하고 재생하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 10 은 서버 디바이스에 의하여 MPD 와 같은 매니페스트 파일이 업데이트되어야 한다는 표시들을 제공하고, 그리고 클라이언트 디바이스에 의하여 MPD를 업데이트하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 11 은 경험 품질 (QoE) 보고 문서의 데이터를 구성하고 사용하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 2 는 하나의 예시적인 멀티미디어 콘텐츠의 엘리먼트들을 예시하는 개념도이다.
도 3 은 하나의 예시적인 비디오 파일의 엘리먼트들로서, 멀티미디어 콘텐츠의 표현의 세그먼트에 대응할 수도 있는 엘리먼트들을 예시하는 블록도이다.
도 4 는 미디어 프리젠테이션 디스크립션 (MPD) 및 다양한 표현 그룹들을 포함하는 하나의 예시적인 멀티미디어 콘텐츠를 예시하는 개념도이다.
도 5 는 다른 예시적인 멀티미디어 콘텐츠를 예시하는 개념도인데, 여기서 MPD 데이터는 다양한 표현 그룹들에 대한 다양한 부분들로 분할된다.
도 6 은 트릭 모드들을 지원하기 위하여 이용될 수도 있는 다른 예시적인 멀티미디어 콘텐츠를 예시하는 개념도이다.
도 7 은, 세그먼트들 내에 멀티미디어 콘텐츠의 MPD가 업데이트되어야 한다는 것을 표시하는 MPD 업데이트 박스들을 포함할 수도 있는, 다른 예시적인 멀티미디어 콘텐츠를 예시하는 개념도이다.
도 8 은 표현 그룹들의 표시들을 서버 디바이스에 의하여 제공하고, 그리고 클라이언트 디바이스에 의하여 표현 그룹들 및 선택된 표현 그룹 내의 개별 표현을 선택하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 9 는 서버 디바이스에 의하여 트릭 모드를 표현하는 데이터를 제공하고, 그리고 클라이언트 디바이스에 의하여 데이터를 이용하여 멀티미디어 콘텐츠의 트릭 모드 데이터를 취출하고 재생하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 10 은 서버 디바이스에 의하여 MPD 와 같은 매니페스트 파일이 업데이트되어야 한다는 표시들을 제공하고, 그리고 클라이언트 디바이스에 의하여 MPD를 업데이트하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
도 11 은 경험 품질 (QoE) 보고 문서의 데이터를 구성하고 사용하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다.
일반적으로, 본 개시물은 멀티미디어 데이터, 예컨대 오디오 및 비디오 데이터를 네트워크 상에서 스트리밍하기 위한 기법들을 기술한다. 본 개시물의 기법들은 HTTP 상에서의 동적 적응형 스트리밍 (dynamic adaptive streaming over HTTP; DASH) 과 결합되어 이용될 수도 있다. 본 개시물은 네트워크 스트리밍과 결합되어 수행될 수도 있는 다양한 기법들을 기술하는데, 이들 중 임의의 것 또는 전부는 단독으로 또는 임의의 조합에서 구현될 수도 있다. 아래에서 매우 상세하게 설명되는 바와 같이, 네트워크 스트리밍을 수행하는 다양한 디바이스들은 본 개시물의 기법들을 구현하도록 구성될 수도 있다.
데이터를 네트워크 상에서 스트리밍하기 위한 DASH 및 유사한 기법들에 따르면, 멀티미디어 콘텐츠 (예컨대 무비 또는 역시 텍스트 오버레이들 또는 다른 데이터를 포함할 수도 있는 다른 오디오/비디오 콘텐츠) 는 다양한 방식들로 그리고 다양한 특징을 가지고 인코딩될 수도 있다. 콘텐츠 준비 디바이스는 동일한 멀티미디어 콘텐츠의 다중 표현들을 형성할 수도 있다. 각각의 표현은 특징들의 특정 세트, 예컨대 코딩 및 렌더링 특징들에 대응하여 다양한 코딩 및 렌더링 성능들을 가지는 다양한 상이한 클라이언트 디바이스들에 의하여 이용가능한 데이터를 제공할 수도 있다. 더욱이, 다양한 비트레이트들을 가지는 표현들은 대역폭 적응을 허용할 수도 있다. 즉, 클라이언트 디바이스는 현재 가용인 대역폭의 양을 결정하고, 그리고 클라이언트 디바이스의 코딩 및 렌더링 능력들과 더불어 가용 대역폭의 양에 기초하여 표현을 선택할 수도 있다.
몇 가지 예들에서는, 콘텐츠 준비 디바이스는 표현들의 세트가 공통 특징들의 세트를 가진다는 것을 표시할 수도 있다. 그러면, 콘텐츠 준비 디바이스는 세트 내의 표현들이 표현 그룹을 형성하며, 그 세트 내의 표현들이 대역폭 적응을 위하여 이용될 수 있다는 것을 표시할 수도 있다. 즉, 세트 내의 표현들은 비트레이트에 있어서 상이할 수도 있으며, 하지만 그 외에는 동일한 특징을 공유할 수도 있다. 이러한 방식으로, 클라이언트 디바이스는 멀티미디어 콘텐츠의 표현 그룹들에 대한 공통 특징들의 다양한 세트들을 결정하고, 그리고 표현 그룹을 클라이언트 디바이스의 코딩 및 렌더링 능력들에 기초하여 선택할 수도 있다. 그러면, 클라이언트 디바이스는 대역폭 이용가능성에 기초하여 선택된 표현 그룹 내의 표현들 사이에서 적응적으로 스위칭할 수도 있다.
또한, 콘텐츠 준비 디바이스는 매니페스트 파일, 예컨대 3GPP (Third Generation Partnership Project) 에 의하여 규정된 포맷의 미디어 프리젠테이션 디스크립션 (MPD) 파일의 상이한 부분들에 대한 별개의 네트워크 위치들을 제공할 수도 있다. 즉, 매니페스트 파일의 상이한 부분들은, 예를 들어, 다양한 유니폼 리소스 식별자 (uniform resource identifier; URI), 예컨대 유니폼 리소스 로케이터 (uniform resource locator; URL) 에 의하여 독립적으로 어드레싱될 수도 있다. 매니페스트 파일의 초기 부분은 URI, URL, 또는 매니페스트 파일의 다른 부분의 다른 위치 식별자를 포함할 수도 있다. 예를 들어, 매니페스트 파일의 제 1 부분은 위에서 논의된 바와 같이 표현 그룹들의 공통 특징들의 디스크립션들을 포함할 수도 있다.
표현 그룹들의 각각은 매니페스트 파일의 개별 상이한 부분과 연관될 수도 있는데, 이것은 개별 표현 그룹 내의 표현들의 미디어 데이터의 위치들을 표시하는 데이터를 포함할 수도 있다. 이러한 방식으로, 클라이언트 디바이스는 매니페스트 파일의 제 1 부분을 수신하고, 적합한 표현 그룹을 선택하며, 선택된 표현 그룹에 대한 매니페스트 파일의 다른 부분을 취출하고, 선택된 그룹의 표현을 선택하며, 그리고 매니페스트 파일의 다른 부분을 이용하여 선택된 표현의 데이터를 취출할 수도 있다. 더욱이, 클라이언트 디바이스는 매니페스트 파일의 다른 부분, 즉, 선택된 표현 그룹에 특정한 부분을 이용하여 변동하는 네트워크 대역폭에 적응할 수도 있다.
추가적으로 또는 대안적으로, 매니페스트 파일의 일부분은 다른 목적들을 위하여 매니페스트 파일의 다른 부분을 참조할 수도 있다. 즉, 매니페스트 파일의 일부분은 원격 기간 (remote period) 의 미디어 데이터를 재생 도중에 무비 내에 삽입하기 위하여 클라이언트 디바이스를 매니페스트 파일의 다른 부분으로 디렉팅할 수도 있다. 원격 기간은 몇 가지 예들에서는 광고에 대응할 수도 있다. 이러한 기법들은 몇 가지 예들에서는 타겟화된 광고를 위하여 이용될 수도 있다. 클라이언트 디바이스는 사용자 정보, 예컨대 사용자 식별자, 광고들에 대한 사용자 선호도들, 및/또는 사용자 데모그래픽 (demographic) 정보를 서버 디바이스로 제공할 수도 있고, 매니페스트 파일의 일부분을 사용자 정보에 기초하여 선택할 수도 있다. 따라서, 역참조되면, 매니페스트 파일의 외부 부분은, 예를 들어 클라이언트 디바이스에 의하여 원본 매니페스트 파일 내에 통합될 수도 있다. 서버 디바이스는 타겟화된 광고 미디어 콘텐츠와 연관된 매니페스트 파일의 일부의 위치를 클라이언트 디바이스로 제공할 수도 있다. 그러면, 클라이언트 디바이스는 요청된 멀티미디어 콘텐츠의 기간의 특정 표현의 데이터를 취출하기 이전에, 타겟화된 광고 미디어 콘텐츠의 데이터를 취출하고 제시할 수도 있다. 이러한 방식으로, 그 멀티미디어 콘텐츠에 대한 매니페스트 파일의 제 1 부분은 그 매니페스트 파일의 제 2 부분을 참조할 수도 있다.
일부의 경우들에서는, 사용자는 처음부터 끝까지가 아닌 방식으로 비디오 데이터를 재생하기를 원할 수도 있다. 예를 들어, 사용자는 비디오 데이터를 패스트 포워드 또는 리와인드 모드들에서 재생하거나, 또는 특정 재생 포인트로부터 시작하여 재생하기를 원할 수도 있다. 처음부터 끝까지의 재생이 아닌 비디오 재생의 이러한 모드들은 "트릭 모드들" 이라고 지칭될 수도 있다. 트릭 모드들에서는, 모든 비디오 데이터가 궁극적으로 재생되는 것이 아니기 때문에, 비디오 데이터가 모두 취출될 필요가 없다. 본 개시물은 트릭 모드들을 제공하기 위한 기법들도 역시 제공한다. 예를 들어, 콘텐츠 준비 디바이스는 트릭 모드들을 위하여 이용되는 비디오 데이터 내의 프레임들, 예컨대 순간적 디코더 리프레시 (instantaneous decoder refresh; IDR) 픽쳐들의 바이트 범위 위치들의 표시들을 제공할 수도 있다. 일반적으로, IDR 픽쳐들은 IDR 픽쳐들 자체의 외부의 임의의 프레임들의 데이터를 참조하지 않고 디코딩될 수 있다. IDR 픽쳐들의 프레임들 또는 슬라이스들은 일반적으로 인트라-예측 모드에서 코딩되어, 다른 프레임들 또는 슬라이스들에 대한 의존성들을 회피한다. 이러한 방식으로, 클라이언트 디바이스는 IDR 픽쳐들의 위치들을 표시하는 정보만을 취출하여 트릭 모드, 예컨대 패스트 포워드로 비디오 데이터의 재생에서 이용하기 위한 IDR 픽쳐들에 대한 데이터만을 다운로드할 수 있다. 다른 데이터는 시간적 서브-시퀀스에도 역시 포함될 수도 있다. 데이터는 코딩 순서로 정렬되어, 참조를 위하여 이용되는 데이터가 참조하는 데이터보다 (참조하는 데이터와의 연속적인 바이트 시퀀스에서) 더 일찍 발생하도록 할 수도 있다. 예를 들어, I-프레임은 P 프레임에 선행할 수도 있고, P 프레임은 하나 이상의 B-프레임들에 선행할 수도 있는데, P 프레임의 임의의 것 또는 전부는 계층적 방식으로 더 빠른 B-프레임을 참조할 수도 있는 다른 B-프레임들에 선행할 수도 있다.
몇 가지 예들에서는, 매니페스트 파일, 예컨대 MPD는 간헐적 업데이트들을 요구할 수도 있다. 또한, 본 개시물은 MPD가 업데이트를 요구한다는 표시를 시그널링하고 수신하기 위한 기법들을 제공한다. 특히, 콘텐츠 준비 디바이스는 표현들의 세그먼트들 내에 대응하는 MPD 가 업데이트를 요구한다는 것을 표시하는 데이터를 포함할 수도 있다. 이러한 데이터는 세그먼트의 초기 엘리먼트에 대응할 수도 있는데, 이것은 MPD로 적용될 업데이트들 및/또는 클라이언트 디바이스가 그 MPD로의 업데이트들을 취출할 수 있는 원천이 되는 위치들을 표시할 수도 있다. 업데이트들은 멀티미디어 콘텐츠에 대한 이전 MPD 에 대하여 완전히 새로운 MPD 또는 증분적 업데이트들을 포함할 수도 있다.
더 나아가, 본 개시물은 클라이언트 디바이스들으로부터 서버 디바이스 및/또는 콘텐츠 준비 디바이스로의 피드백을 제공하기 위한 기법들을 포함한다. 피드백은, 예를 들어, 멀티미디어 콘텐츠에 대하여 취출되었던 데이터를 표시하는 정보에 대응할 수도 있다. 콘텐츠 준비 디바이스 및/또는 서버의 관리자 또는 다른 사용자는 이러한 정보를 다양한 방식으로 이용할 수도 있다. 예를 들어, 사용자는 콘텐츠 전달 네트워크 (CDN) 를 구성하여 더 빈번하게 액세스되는 표현들의 데이터를 CDN의 프록시 디바이스들, 예컨대 라우터들 또는 다른 디바이스들 내에 캐싱할 수도 있다. 다른 예로서, 사용자는 좀더 빈번하게 액세스되는 표현들을 결정하여 특정 표현들이 현재 멀티미디어 콘텐츠로 추가되거나 이로부터 제거되어야 하는지 여부, 및/또는 어떻게 장래의 멀티미디어 콘텐츠의 표현들을 인코딩할지를 결정할 수도 있다.
미디어 콘텐츠의 표현들의 세그먼트들과 같은 비디오 파일들은 ISO 기초 미디어 파일 포맷, 스케일가능비디오 코딩 (SVC) 파일 포맷, 어드밴스드 비디오 코딩 (AVC) 파일 포맷, 3 세대 파트너십 프로젝트 (3GPP) 파일 포맷, 및/또는 멀티뷰 비디오 코딩 (MVC) 파일 포맷, 또는 다른 유사한 비디오 파일 포맷들 중 임의의 것에 따라서 캡슐화된 비디오 데이터에 따를 수도 있다.
ISO 기초 미디어 파일 포맷은 프리젠테이션에 대한 타이밍된 미디어 정보를, 그 미디어의 상호 교환, 관리, 편집, 및 제공을 용이하게 하는 플렉시블하고 확장가능한 포맷 내에서 포함하도록 설계된다. ISO 기초 미디어 파일 포맷 (ISO/IEC 14496-12:2004) 은 MPEG-4 파트-12 내에서 규정되는데, 이것이 시간-기반 미디어 파일들에 대한 일반적인 구조를 정의한다. ISO 기초 미디어 파일 포맷은 H.264/MPEG-4 AVC 비디오 압축을 위하여 지원되도록 정의되는 AVC 파일 포맷 (ISO/IEC 14496-15), 3GPP 파일 포맷, SVC 파일 포맷, 및 MVC 파일 포맷과 같은 패밀리 내의 다른 파일 포맷들에 대한 기초로서 이용된다. 3GPP 파일 포맷 및 MVC 파일 포맷은 AVC 파일 포맷의 확장물들이다. ISO 기초 미디어 파일 포맷은 미디어 데이터, 예를 들어 음향-시각적 프리젠테이션들의 타이밍된 시퀀스에 대한 타이밍, 구조, 및 미디어 정보를 포함한다. 파일 구조는 객체-지향적일 수도 있다. 한 파일은 기초적 객체들로 매우 간단하게 분해될 수 있고, 객체들의 구조는 그들의 타입으로부터 암시된다.
ISO 기초 미디어 파일 포맷 (및 이들의 확장물들) 에 따르는 파일들은 "박스들" 이라고 불리는 오브젝트들의 시리즈로서 형성될 수도 있다. ISO 기초 미디어 파일 포맷 내의 데이터는, 다른 데이터가 그 파일 내에 포함될 필요가 없으며 그 파일 내의 박스들 외부에 데이터가 존재할 필요가 없게 하도록 박스들 내에 포함될 수도 있다. 이것은 특정의 파일 포맷에 의하여 요구되는 임의의 초기 서명을 포함한다. "박스" 는 고유 타입 식별자 및 길이에 의하여 정의되는 오브젝트-지향적 빌딩 블록일 수도 있다. 통상적으로, 프리젠테이션이 한 파일 내에 포함되고, 그리고 미디어 프리젠테이션은 자기 포함형 (self-contained) 이다. 무비 컨테이너 (무비 박스) 는 미디어의 메타데이터를 포함할 수도 있고, 비디오 및 오디오 프레임들은 미디어 데이터 컨테이너 내에 포함될 수도 있으며 다른 파일들 내에 있을 수 있다.
한 표현 (모션 시퀀스) 은, 가끔 세그먼트들이라고 지칭되는 수 개의 파일들 내에 포함될 수도 있다. 타이밍 및 프레이밍 (위치 및 사이즈) 정보는 일반적으로 ISO 기초 미디어 파일 내에 있으며 그리고 부수적인 파일들은 본질적으로 임의의 포맷을 이용할 수도 있다. 이러한 프리젠테이션은 그 프리젠테이션을 포함하는 시스템에 '국지적' 일 수도 있고, 또는 네트워크 또는 다른 스트림 전달 매커니즘을 통하여 제공될 수도 있다.
선택적인 메타데이터 트랙이 각각의 트랙을 자신이 가지는 "관심있는 특성" 으로써 태깅 (tag) 하기 위하여 이용될 수 있는데, 이것에 대하여 그 값 (예를 들어, 그의 비트 레이트, 스크린 사이즈, 또는 언어) 은 그 그룹의 다른 멤버들로부터 상이할 수도 있다. 한 트랙 내의 몇 개의 샘플들은 특별한 특징들을 가질 수도 있거나 또는 개별적으로 식별될 수도 있다. 이러한 특징의 일 예는 동기화 포인트 (흔히 비디오 I-프레임) 이다. 이러한 포인트들은 각 트랙 내의 특별한 테이블에 의하여 식별될 수도 있다. 더 일반적으로는, 트랙 샘플들 간의 의존성들의 특성도 역시 메타데이터를 이용하여 문서화될 수 있다. 메타데이터는 비디오 트랙과 매우 유사하게 파일 포맷 샘플들의 시퀀스로서 구조화될 수 있다. 이러한 트랙은 메타데이터 트랙이라고 지칭될 수도 있다. 각각의 메타데이터 샘플은 메타데이터 진술 (metadata statement) 로서 구조화될 수도 있다. 대응하는 파일-포맷 샘플 또는 이것의 구성 샘플들에 대하여 질문될 수 있는 다양한 질문들에 대응하는 진술들의 다양한 종류들이 존재한다.
미디어가 스트리밍 프로토콜 상에서 전달될 때, 미디어는 파일 내에서 그것이 표현되는 방식으로부터 변환될 필요가 있을 수도 있다. 이것의 일 예는 미디어가 실시간 이송 프로토콜 (Real-Time Transport Protocol; RTP) 상에서 송신되는 경우이다. 예를 들어, 이 파일에서 비디오의 각각의 프레임은 파일-포맷 샘플로서 인접하여 저장된다. RTP 에서는, 이용되는 코덱에 특정한 패킷화 규칙들이 이러한 프레임들을 RTP 패킷들 내에 배치하기 위하여 준수되어야 한다. 스트리밍 서버는 실행-시 (run-time) 에 이러한 패킷화를 계산하도록 구성될 수도 있다. 그러나, 스트리밍 서버들의 보조에 대한 지원이 존재한다.
본 개시물의 기법들은 네트워크 스트리밍 프로토콜들, 예컨대 HTTP 상의 동적 적응형 스트리밍 (dynamic adaptive streaming over HTTP; DASH) 에 따르는 HTTP 스트리밍에 적용될 수도 있다. HTTP 스트리밍에서는, 자주 이용되는 동작들은 GET 및 부분 GET을 포함한다. GET 동작은 주어진 유니폼 리소스 로케이터 (URL) 또는 다른 식별자, 예를 들어 URI 와 연관된 전체 파일을 취출한다. 부분 GET 동작은 바이트 범위를 입력 파라미터로서 수신하고 그리고 수신된 바이트 범위에 대응하는 파일의 바이트들의 연속적인 번호를 취출한다. 따라서, 부분 GET 동작이 하나 이상의 각개 무비 프래그먼트들을 획득할 수 있기 때문에 무비 프래그먼트들은 HTTP 스트리밍을 위하여 제공될 수도 있다. 무비 프래그먼트에서, 상이한 트랙들의 수 개의 트랙 프래그먼트들이 존재할 수 있다는 점에 주의한다. HTTP 스트리밍에서는, 미디어 표현은 클라이언트에게 액세스될 수 있는 데이터의 구조화된 콜렉션일 수도 있다. 클라이언트는 미디어 데이터 정보를 요청 및 다운로드하여 스트리밍 서비스를 사용자에게 제공할 수도 있다.
HTTP 스트리밍을 이용하여 3GPP 데이터를 스트리밍하는 일 예에서는, 멀티미디어 콘텐츠의 비디오 및/또는 오디오 데이터에 대한 다중 표현들이 존재할 수도 있다. 이러한 표현들의 매니페스트 (manifest) 는 미디어 프리젠테이션 디스크립션 (MPD) 데이터 구조 내에 정의될 수도 있다. 미디어 표현은 HTTP 스트리밍 클라이언트 디바이스로 액세스가능한 데이터의 구조화된 콜렉션에 대응할 수도 있다. HTTP 스트리밍 클라이언트 디바이스는 미디어 데이터 정보를 요청하고 다운로드하여 스트리밍 서비스를 클라이언트 디바이스의 사용자에게 제공할 수도 있다. 미디어 표현은 MPD 데이터 구조 내에서 기술될 수도 있는데, 이것은 MPD의 업데이트들을 포함할 수도 있다.
미디어 콘텐츠는 하나 이상의 기간들의 시퀀스를 포함할 수도 있다. 기간들은 MPD 내의 Period 엘리먼트에 의하여 정의될 수도 있다. 각각의 기간은 속성 start 를 MPD 내에 가질 수도 있다. MPD 는 각 기간에 대하여 start 속성 및 availableStartTime 속성을 포함할 수도 있다. 생방송 서비스들에 대해서는, 기간의 start 속성 및 MPD 속성 availableStartTime 의 합이 UTC 포맷 내의 기간의 가용 시간, 특히 대응하는 기간 내의 각 표현의 제 1 미디어 세그먼트 (Media Segment) 를 특정할 수도 있다. 주문형 (on-demand) 서비스들에 대해서는, 제 1 기간의 start 속성은 0 일 수도 있다. 임의의 다른 기간에 대하여, start 속성은 제 1 Period의 시작 시간에 대한 대응하는 Period의 시작 시간 간의 시간 오프셋을 특정할 수도 있다. 각각의 기간은 다음 Period의 시작시까지, 또는 최후 Period의 경우에는 미디어 프리젠테이션의 끝까지 연장될 수도 있다. 기간 시작 시간들은 정확할 수도 있다. 이들은 모든 이전 기간들의 미디어의 재생으로부터 야기되는 실제 타이밍을 반영할 수도 있다.
각각의 기간은 동일한 미디어 콘텐츠에 대한 하나 이상의 표현들을 포함할 수도 있다. 하나의 표현은 오디오 또는 비디오 데이터의 다수의 대안적인 인코딩된 버전들 중 하나일 수도 있다. 표현들은 다양한 특징들, 예컨대 인코딩 타입들에 의하여 상이할 수도 있는데, 예를 들어, 비트레이트, 해상도, 및/또는 비디오 데이터에 대한 코덱 및 비트레이트, 언어, 및/또는 오디오 데이터에 대한 코덱에 의하여 상이할 수도 있다. 표현이라는 용어는 멀티미디어 콘텐츠의 특정 기간에 대응하며 특정한 방식으로 인코딩된 오디오 또는 비디오 데이터의 섹션을 지칭하도록 이용될 수도 있다.
특정 기간의 표현들은 그룹으로 지정될 수도 있는데, 이것은 MPD 내에서 group 속성에 의하여 표시될 수도 있다. 동일한 그룹내의 표현들은 일반적으로 서로에 대하여 대안들 (alternatives) 인 것으로 간주된다. 예를 들어, 특정 기간에 대한 비디오 데이터 각각의 표현은 동일한 그룹으로 지정됨으로써, 디코딩을 위하여 표현들 중 임의의 것이 선택되어 대응하는 기간에 대한 멀티미디어 콘텐츠의 비디오 데이터를 디스플레이할 수도 있도록 할 수도 있다. 한 기간 내의 멀티미디어 콘텐츠는 존재할 경우 그룹 0 으로부터의 하나의 표현 또는 몇 가지 예들에서는 각 비-제로 그룹으로부터의 고작 하나의 표현의 조합 중 하나에 의하여 표현될 수도 있다. 어느 기간의 각 표현에 대한 타이밍 데이터는 그 기간의 시작 시간에 상대적으로 표현될 수도 있다.
하나의 표현은 하나 이상의 세그먼트들을 포함할 수도 있다. 각각의 표현은 초기화 세그먼트를 포함할 수도 있고, 또는 표현의 각각의 세그먼트는 자체-초기화할 수도 있다. 존재할 경우에는, 초기화 세그먼트는 그 표현에 액세스하기 위한 초기화 정보를 포함할 수도 있다. 일반적으로, 초기화 세그먼트는 미디어 데이터를 포함하지 않는다. 세그먼트는 식별자, 예컨대 유니폼 리소스 로케이터 (URL) 에 의하여 고유하게 참조될 수도 있다. MPD는 각각의 세그먼트에 대한 식별자들을 제공할 수도 있다. 또한, 몇 가지 예들에서는, MPD 는 range 속성의 형태로 바이트 범위들을 제공할 수도 있는데, 이것은 URL, 또는 URI 에 의하여 액세스가능한 파일 내의 세그먼트에 대한 데이터에 대응할 수도 있다.
또한, 각각의 표현은 하나 이상의 미디어 구성요소들을 포함할 수도 있으며, 여기서 각각의 미디어 구성 요소는 각개 미디어 타입, 예컨대 오디오, 비디오, 및/또는 (예를 들어, 자막 방송 (closed captioning) 을 위한) 타이밍된 텍스트의 인코딩된 버전에 대응할 수도 있다. 미디어 구성요소들은 한 표현 내의 연속적 미디어 세그먼트들의 경계들에 걸쳐서 시간-연속적일 수도 있다.
도 1 은 미디어 데이터를 네트워크 상에서 스트리밍하기 위한 기법들을 구현하는 하나의 예시적인 시스템 (10) 을 예시하는 블록도이다. 이러한 예에서는, 시스템 (10) 은 콘텐츠 준비 디바이스 (20), 서버 디바이스 (60), 및 클라이언트 디바이스 (40) 를 포함한다. 클라이언트 디바이스 (40) 및 서버 디바이스 (60) 는 네트워크 (74) 에 의하여 통신 가능하도록 커플링되는데, 이것은 인터넷을 포함할 수도 있다. 몇 가지 예들에서는, 콘텐츠 준비 디바이스 (20) 및 서버 디바이스 (60) 는 네트워크 (74) 또는 다른 네트워크에 의해서도 역시 커플링될 수도 있으며, 또는 직접적으로 통신가능하도록 커플링될 수도 있다. 몇 가지 예들에서는, 콘텐츠 준비 디바이스 (20) 및 서버 디바이스 (60) 는 동일한 디바이스를 포함할 수도 있다.
도 1 의 예에 있는 콘텐츠 준비 디바이스 (20) 는 오디오 소스 (22) 및 비디오 소스 (24) 를 포함한다. 오디오 소스 (22) 는 예를 들어, 오디오 인코더 (26) 에 의하여 인코딩될 캡쳐된 오디오 데이터를 나타내는 전기 신호들을 생산하는 마이크로폰을 포함할 수도 있다. 대안적으로는, 오디오 소스 (22) 는 이전에 기록된 오디오 데이터를 저장하는 저장 매체, 컴퓨터화된 합성기 (computerized synthesizer) 와 같은 오디오 데이터 발생기, 또는 오디오 데이터의 임의의 다른 소스를 포함할 수도 있다. 비디오 소스 (24) 는 비디오 인코더 (28) 에 의하여 인코딩될 비디오 데이터를 생산하는 비디오 카메라, 이전에 기록된 비디오 데이터로써 인코딩된 저장 매체, 비디오 데이터 생성 유닛, 예컨대 컴퓨터 그래픽 소스 또는 비디오 데이터의 임의의 다른 소스를 포함할 수도 있다. 콘텐츠 준비 디바이스 (20) 는 모든 예들에서 반드시 서버 디바이스 (60) 로 통신가능하도록 커플링되는 것은 아니며, 오히려 서버 디바이스 (60) 에 의하여 판독되는 개별 매체에 멀티미디어 콘텐츠를 저장할 수도 있다.
로우 (raw) 오디오 및 비디오 데이터는 아날로그 또는 디지털 데이터를 포함할 수도 있다. 아날로그 데이터는 오디오 인코더 (26) 및/또는 비디오 인코더 (28) 에 의하여 인코딩되기 이전에 디지털화될 수도 있다. 오디오 소스 (22) 는 스피킹 참여자가 스피킹하는 동안에 해당 스피킹 참여자로부터 오디오 데이터를 획득할 수도 있고, 그리고 비디오 소스 (24) 는 동시에 해당 스피킹 참여자의 비디오 데이터를 획득할 수도 있다. 다른 예들에서는, 오디오 소스 (22) 는 저장된 오디오 데이터를 포함하는 컴퓨터-판독가능 저장 매체를 포함할 수도 있으며, 그리고 비디오 소스 (24) 는 저장된 비디오 데이터를 포함하는 컴퓨터-판독가능 저장 매체를 포함할 수도 있다. 이러한 방식으로, 본 개시물에서 설명되는 기법들은 생방송 (live), 스트리밍, 실시간 오디오 및 비디오 데이터에 또는 아카이브된 (archived), 사전-기록된 오디오 및 비디오 데이터에 적용될 수도 있다.
일반적으로, 비디오 프레임들에 대응하는 오디오 프레임들은 비디오 소스 (24) 에 의하여 캡쳐되고 해당 비디오 프레임들 내에 포함되는 비디오 데이터와 동시에 오디오 소스 (22) 에 의하여 캡쳐되는 오디오 데이터를 포함하는 오디오 프레임들이다. 예를 들어, 스피킹 참여자가 일반적으로 스피킹에 의하여 오디오 데이터를 생산하는 동안에, 오디오 소스 (22) 는 오디오 데이터를 캡쳐하고, 그리고 비디오 소스 (24) 는 동시에, 즉, 오디오 소스 (22) 가 오디오 데이터를 캡쳐하는 동안에 스피킹 참여자의 비디오 데이터를 캡쳐한다. 그러므로, 오디오 프레임은 시간적으로 하나 이상의 특정 비디오 프레임들에 대응할 수도 있다. 이에 상응하여, 비디오 프레임에 대응하는 오디오 프레임은 일반적으로, 오디오 데이터 및 비디오 데이터가 동시에 캡쳐된 상황에 대응하고, 그리고 이러한 상황을 위하여 오디오 프레임 및 비디오 프레임은 각각 동시에 캡쳐된 오디오 데이터 및 비디오 데이터를 포함한다.
몇 가지 예들에서는, 오디오 인코더 (26) 는 인코딩된 오디오 프레임에 대한 오디오 데이터가 기록된 시간을 나타내는 각 인코딩된 오디오 프레임 내의 타임스탬프를 인코딩할 수도 있으며, 그리고 이와 유사하게, 비디오 인코더 (28) 는 인코딩된 비디오 프레임에 대한 비디오 데이터가 기록된 시간을 나타내는 각 인코딩된 비디오 프레임 내의 타임스탬프를 인코딩할 수도 있다. 이러한 예들에서는, 비디오 프레임에 대응하는 오디오 프레임은 타임스탬프를 포함하는 오디오 프레임 및 동일한 타임스탬프를 포함하는 비디오 프레임을 포함할 수도 있다. 콘텐츠 준비 디바이스 (20) 는 오디오 인코더 (26) 및/또는 비디오 인코더 (28) 가 타임스탬프들을 생성하는데 원천이 될 수도 있거나 또는 이러한 오디오 소스 (22) 및 비디오 소스 (24) 가 오디오 및 비디오 데이터를 각각 타임스탬프와 연관시키기 위하여 이용할 수도 있는, 내부 클록을 포함할 수도 있다.
몇 가지 예들에서는, 오디오 소스 (22) 는 오디오 인코더 (26) 로 오디오 데이터가 기록되었던 시간에 대응하는 데이터를 전송할 수도 있고, 그리고 비디오 소스 (24) 는 비디오 인코더 (28) 로 비디오 데이터가 기록되었던 시간에 대응하는 데이터를 전송할 수도 있다. 몇 가지 예들에서는, 오디오 인코더 (26) 는 인코딩된 오디오 데이터 내의 시퀀스 식별자 (sequence identifier) 를 인코딩하여 인코딩된 오디오 데이터의 상대적인 시간적 순서를 표시할 수도 있지만 반드시 해당 오디오 데이터가 기록되었던 절대 시간을 표시할 필요가 없으며, 또한 이와 유사하게, 비디오 인코더 (28) 는 시퀀스 식별자들을 이용하여 인코딩된 비디오 데이터의 상대적인 시간적 순서를 표시할 수도 있다. 이와 유사하게, 몇 가지 예들에서는, 시퀀스 식별자는 타임스탬프와 매핑되거나 또는 다른 방식으로 상관될 수도 있다.
오디오 인코더 (26) 는 일반적으로 인코딩된 오디오 데이터의 스트림을 생성하고, 비디오 인코더 (28) 는 인코딩된 비디오 데이터의 스트림을 생성한다. 데이터의 각각의 개별 스트림 (오디오이건 또는 비디오이건) 은 기본 스트림이라고 지칭될 수도 있다. 기본 스트림은 표현의 단일의, 디지털적으로 코딩된 (압축되는 것도 가능) 성분이다. 예를 들어, 표현의 코딩된 비디오 또는 오디오 부분이 기본 스트림일 수 있다. 기본 스트림은, 비디오 파일 내에 캡슐화되기 전에 패킷화된 기본 스트림 (packetized elementary stream; PES) 으로 변환될 수도 있다. 동일한 표현 내에서, 스트림 ID 가 한 기본 스트림에 속한 PES-패킷들을 다른 기본 스트림에 속한 것과 구별하기 위하여 이용될 수도 있다. 기본 스트림의 데이터의 기본적인 유닛은 패킷화된 기본 스트림 (PES) 패킷이다. 따라서 코딩된 비디오 데이터는 일반적으로 기본 비디오 스트림들에 대응한다. 이와 유사하게, 오디오 데이터는 하나 이상의 개별 기본 스트림들에 대응한다.
많은 비디오 코딩 표준들에서와 같이, H.264/AVC는 무-에러 비트스트림들에 대한 구문 (syntax), 의미론 (semantics), 및 디코딩 프로세스를 정의하는데, 이들 중 임의의 것은 특정 프로파일 또는 레벨에 따른다. H.264/AVC 는 인코더는 특정하지 않는데, 하지만 인코더는 생성된 비트스트림들이 디코더에 대한 표준을 따르는 것을 보장하는 역할을 한다. 비디오 코딩 표준의 콘텍스트에서는, "프로파일" 은 알고리즘들, 피쳐들, 또는 도구들 (tools) 및 이들에 적용되는 제한조건들 (constraints) 의 서브세트에 대응한다. 예를 들어, H.264 표준에 의하여 정의되는 바와 같이, "프로파일" 은 H.264 표준에 의하여 규정되는 전체 비트스트림 구문의 서브세트이다. 예를 들어, "레벨" 은 픽쳐들의 해상도, 비트 레이트, 및 매크로블록 (MB) 프로세싱 레이트에 관련되는 디코더 메모리 및 계산과 같은 디코더 리소스 소모의 제한들에 대응한다. 프로파일은 profile_idc (프로파일 표시자) 값으로써 시그널링될 수도 있고, 반면에 레벨은 level_idc (레벨 표시자) 값으로써 시그널링될 수도 있다.
예를 들어, H.264 표준은 주어진 프로파일의 구문에 의하여 부과된 경계들 내에서, 디코딩된 픽쳐들의 규정된 크기와 같은, 비트스트림 내의 구문 요소들에 의하여 취해진 값들에 의존하여 인코더들 및 디코더들의 성능에 큰 변동을 요구하는 것이 여전히 가능하다는 것을 인식한다. 더 나아가, H.264 표준은, 많은 애플리케이션들에서, 구문의 모든 가설적 이용들을 특정 프로파일 내에서 다룰 수 있는 디코더를 구현하는 것이 실용적이지도 않고 경제적이지도 않다는 것을 인식한다. 이에 상응하여, H.264 표준은 "레벨"을 비트스트림 내의 구문 요소들의 값들에 부과된 제한조건들의 규정된 세트로서 정의한다. 이러한 제한조건들은 값들에 대한 단순한 제한들일 수도 있다. 대안적으로는, 이러한 제한조건들은 값들의 산술적 조합들 (예를 들어, 픽쳐 폭 × 픽쳐 높이 × 초당 디코딩된 픽쳐들) 상의 제한 조건들의 형태를 취할 수도 있다. 더 나아가, H.264 표준은 개별 구현 형태들이 각 지원되는 프로파일에 대한 상이한 레벨을 지원할 수도 있다는 것을 제공한다.
프로파일을 따르는 디코더는 해당 프로파일 내에 정의된 모든 피쳐들을 지원하는 것이 보통이다. 예를 들어, 코딩 피쳐로서, B-픽쳐 코딩은 H.264/AVC 의 베이스라인 프로파일 (baseline profile) 에서는 지원되지 않지만 H.264/AVC 의 다른 프로파일들에서는 지원된다. 어느 레벨에 따르는 디코더는 해당 레벨 내에서 정의되는 제한들을 넘어서는 리소스들을 요청하지 않는 임의의 비트스트림을 디코딩할 수 있어야 한다. 상호 해석가능성을 위하여 프로파일들 및 레벨들의 정의들이 도움이 될 수도 있다. 예를 들어, 비디오 송신 도중에, 전체 송신 세션에 대하여 프로파일 및 레벨 정의들의 쌍이 협의되고 합의될 수도 있다. 좀더 구체적으로는, H.264/AVC 에서는, 예를 들어 레벨은 처리되어야 하는 매크로블록들의 개수에 대한 제한들, 디코딩 픽쳐 버퍼 (DPB) 사이즈, 코딩 픽쳐 버퍼 (CPB) 사이즈, 수직 모션 벡터 범위, 두 개의 연속하는 MB들 당 모션 벡터들의 최대 개수, 그리고 B-블록이 8x8 픽셀들보다 적은 서브-매크로블록 파티션들을 가질 수 있는지 여부를 정의할 수도 있다. 이러한 방식으로, 디코더는 해당 디코더가 그 비트스트림을 적합하게 디코딩할 수 있는지 여부를 결정할 수도 있다.
비디오 압축 표준들, 예컨대 ITU-T H.261, H.262, H.263, MPEG-1, MPEG-2, H.264/MPEG-4 파트 10, 및 새로 등장하는 고효율 비디오 코딩 (HEVC) 표준들은 모션 보상된 시간적 예측을 이용하여 시간적 리던던시를 감소시킨다. 인코더, 예컨대 비디오 인코더 (28) 는 몇 개의 이전에 인코딩된 픽쳐들 (또한 본 명세서에서 프레임들이라고도 지칭됨) 로부터 모션 보상된 예측을 이용하여 모션 벡터들에 따라서 현재 코딩된 픽쳐들을 예측할 수도 있다. 통상적인 비디오 코딩에는 3 개의 주된 픽쳐 타입들이 존재한다. 이들은 인트라 코딩된 픽쳐 ("I-픽쳐들" 또는 "I-프레임들"), 예측된 픽쳐들 ("P-픽쳐들" 또는 "P-프레임들") 및 양방향 예측된 픽쳐들 ("B-픽쳐들" 또는 "B-프레임들") 이다. P-픽쳐들은 시간적 순서에서 현재 픽쳐 이전의 참조 픽쳐를 이용할 수도 있다. B-픽쳐에서는, B-픽쳐의 각각의 블록은 하나 또는 두 개의 참조 픽쳐들로부터 예측될 수도 있다. 이러한 참조 픽쳐들은 시간적 순서에서 현재 픽쳐의 이전에 또는 이후에 위치결정될 수 있다.
파라미터 세트들은 시퀀스 파라미터 세트들 (SPS) 내에 시퀀스-레벨 헤더 정보를 포함하고 픽쳐 파라미터 세트들 (PPS) 내에 저빈도로 변경하는 픽쳐-레벨 헤더 정보를 일반적으로 포함한다. 파라미터 세트들을 이용하면, 이러한 저빈도로 변경하는 정보는 각각의 시퀀스 또는 픽쳐에 대하여 반복될 필요가 없다; 그러므로 코딩 효율이 향상될 수도 있다. 더욱이, 파라미터 세트들의 이용은 헤더 정보의 대역외 송신을 가능하게 하여, 에러 내성을 달성하기 위한 중복 송신들에 대한 필요성을 회피할 수도 있다. 대역외 송신 예들에서는, 파라미터 세트 NAL 유닛들은 다른 NAL 유닛들과는 상이한 채널들 상에서 송신된다.
도 1 의 예에서는, 콘텐츠 준비 디바이스 (20) 의 캡슐화 유닛 (30) 이 코딩된 비디오 데이터를 포함하는 기본 스트림들을 비디오 인코더 (28) 로부터 그리고 코딩된 오디오 데이터를 포함하는 기본 스트림들을 오디오 인코더 (26) 로부터 수신한다. 몇 가지 예들에서는, 비디오 인코더 (28) 및 오디오 인코더 (26) 는 각각 인코딩된 데이터로부터 PES 패킷들을 형성하기 위한 패킷화기들을 포함할 수도 있다. 다른 예들에서는, 비디오 인코더 (28) 및 오디오 인코더 (26) 는 각각 인코딩된 데이터로부터 PES 패킷들을 형성하기 위한 개별 패킷화기들과 인터페이스할 수도 있다. 또 다른 예들에서는, 캡슐화 유닛 (30) 은 인코딩된 오디오 및 비디오 데이터로부터 PES 패킷들을 형성하기 위한 패킷화기를 포함할 수도 있다.
비디오 인코더 (28) 는 멀티미디어 콘텐츠의 비디오 데이터를 다양한 방식으로 인코딩하여, 멀티미디어 콘텐츠의 상이한 표현들을 다양한 비트레이트들에서 그리고 다양한 특징들, 예컨대 픽셀 해상도들, 프레임 레이트들, 다양한 코딩 표준들로의 순응성 (conformance), 다양한 코딩 표준들에 대한 다양한 프로파일들 및/또는 프로파일들의 레벨들, (예를 들어, 2-차원 또는 3-차원 재생을 위한) 하나 또는 다중 뷰들을 가지는 표현들, 또는 다른 이러한 특징들을 가지도록 생성할 수도 있다. 본 개시물에서 이용될 때, 표현은 오디오 데이터 및 비디오 데이터의 조합, 예를 들어, 하나 이상의 오디오 기본 스트림 및 하나 이상의 비디오 기본 스트림들을 포함할 수도 있다. 각각의 PES 패킷은 그 PES 패킷이 속하는 기본 스트림을 식별하는 stream_id를 포함할 수도 있다. 캡슐화 유닛 (30) 은 기본 스트림들을 다양한 표현들의 비디오 파일들 내에 어셈블리하는 것을 담당한다.
캡슐화 유닛 (30) 은 표현의 기본 스트림들에 대한 PES 패킷들을 오디오 인코더 (26) 및 비디오 인코더 (28) 로부터 수신하고 그리고 그 PES 패킷들로부터 대응하는 네트워크 추상화 계층 (network abstraction layer; NAL) 유닛들을 형성한다. H.264/AVC 의 예에서는, 코딩된 비디오 세그먼트들은 NAL 유닛들 내에 조직화되는데, 이것이 "네트워크-친화적" 비디오 표현 어드레싱 애플리케이션들, 예컨대 비디오 화상 통화, 저장, 브로드캐스트, 또는 스트리밍을 제공한다. NAL 유닛들은 비디오 코딩 계층 (VCL) NAL 유닛들 및 비-VCL NAL 유닛들로 범주화될 수 있다. VCL 유닛들은 코어 압축 엔진을 포함하며 블록, 매크로블록, 및/또는 슬라이스 레벨 데이터를 포함할 수도 있다. 다른 NAL 유닛들은 비-VCL NAL 유닛들일 수도 있다. 몇 가지 예들에서는, 일반적으로 주된 코딩된 픽쳐로서 제공되는, 시간 인스턴스 내에 코딩된 픽쳐는 한 액세스 유닛 내에 포함될 수 있는데, 이것이 하나 이상의 NAL 유닛들을 포함할 수도 있다.
비-VCL NAL 유닛들은 다른 것들 중에서 파라미터 세트 NAL 유닛들 및 SEI NAL 유닛들을 포함할 수도 있다. 파라미터 세트들은 (시퀀스 파라미터 세트들 (SPS) 내에) 시퀀스-레벨 헤더 정보 및 (픽쳐 파라미터 세트들 (PPS) 내에) 저빈도로 변경하는 픽쳐-레벨 헤더 정보를 포함할 수도 있다. 파라미터 세트들 (예를 들어, PPS 및 SPS) 을 이용하여, 저빈도로 변경하는 정보는 각각의 시퀀스 또는 픽쳐에 대하여 반복될 필요가 없으며, 그러므로 코딩 효율이 향상될 수도 있다. 더욱이, 파라미터 세트들의 이용은 중요한 헤더 정보의 대역외 송신을 가능하게 하여, 에러 내성을 위한 중복 송신들에 대한 필요성을 회피할 수도 있다. 대역외 송신 예들에서는, 파라미터 세트 NAL 유닛들은 다른 NAL 유닛들, 예컨대 SEI NAL 유닛들과는 상이한 채널들 상에서 송신될 수도 있다.
보충적 향상 정보 (Supplemental Enhancement Information; SEI) 는 코딩된 픽쳐들 샘플들을 VCL NAL 유닛들로부터 디코딩하기 위해서는 불필요하지만, 디코딩, 디스플레이, 에러 내성, 및 다른 목적들과 관련된 프로세스들에서는 보조할 수도 있는 정보를 포함할 수도 있다. SEI 메시지들은 비-VCL NAL 유닛들 내에 포함될 수도 있다. SEI 메시지들은 몇 개의 표준 사양들의 규범적 (normative) 부분이며, 따라서 표준 규격 디코더 구현에 대해서는 반드시 강제되는 것이 아니다. SEI 메시지들은 시퀀스 레벨 SEI 메시지들 또는 픽쳐 레벨 SEI 메시지들일 수도 있다. 몇몇 시퀀스 레벨 정보는 SEI 메시지들, 예컨대 SVC의 예에서는 스케일링가능성 정보 SEI 메시지들 및 MVC 의 예에서는 뷰 스케일가능성 정보 SEI 메시지들 내에 포함될 수도 있다. 이러한 예시적인 SEI 메시지들은, 예를 들어, 동작 포인트들의 추출 및 동작 포인트들의 특징들에 대한 정보를 운반할 수도 있다. 또한, 캡슐화 유닛 (30) 은 매니페스트 파일, 예컨대 표현들의 특징을 기술하는 미디어 프리젠테이션 디스크립터 (MPD) 를 형성할 수도 있다. 캡슐화 유닛 (30) 은 확장가능 마크업 언어 (XML) 에 따라서 MPD를 포매팅할 수도 있다.
캡슐화 유닛 (30) 은 멀티미디어 콘텐츠의 하나 이상의 표현들에 대한 데이터를 매니페스트 파일 (예를 들어, MPD) 과 함께 출력 인터페이스 (32) 로 제공할 수도 있다. 출력 인터페이스 (32) 는 네트워크 인터페이스 또는 저장 매체로 기록하기 위한 인터페이스, 예컨대 범용 시리얼 버스 (USB) 인터페이스, CD 또는 DVD 라이터 또는 버너 (burner), 자기적 또는 플래시 저장 매체들로의 인터페이스, 또는 미디어 데이터를 저장하거나 송신하기 위한 다른 인터페이스들을 포함할 수도 있다. 캡슐화 유닛 (30) 은 멀티미디어 콘텐츠의 각각의 표현들에 대한 데이터를 출력 인터페이스 (32) 로 제공할 수도 있는데, 이것은 이 데이터를 네트워크 송신 또는 저장 매체들을 통하여 서버 디바이스 (60) 로 전송할 수도 있다. 도 1 의 예에서는, 서버 디바이스 (60) 는 각각 개별 매니페스트 파일 (66) 및 하나 이상의 표현들 (68A-68N ; 표현들 (68)) 을 포함하는 다양한 멀티미디어 콘텐츠 (64) 를 저장하는 저장 매체 (62) 를 포함할 수도 있다. 본 개시물의 기법들에 따르면, 매니페스트 파일 (66) 의 부분들은 별개의 위치들에, 예를 들어, 프록시 디바이스와 같은 네트워크 (74) 의 다른 디바이스에 잠재적으로 속하는 저장 매체 (62) 또는 다른 저장 매체의 위치들에 저장될 수도 있다.
몇 가지 예들에서는, 표현들은 표현 그룹들로 분할될 수도 있다. 즉, 표현들 (68) 의 다양한 서브세트들은 특징들의 개별 공통 세트들, 예컨대 코덱, 프로파일 및 레벨, 해상도, 뷰들의 개수, 세그먼트들에 대한 파일 포맷, 그 표현 및/또는 디코딩되고 예를 들어, 스피커들에 의하여 제공될 오디오 데이터와 함께 디스플레이될 텍스트의 언어 또는 다른 특징들을 식별할 수도 있는 텍스트 타입 정보, 표현 그룹 내의 표현들에 대한 장면의 카메라 각도 또는 현실 세계 카메라 퍼스펙티브를 기술할 수도 있는 카메라 각도 정보, 특정 시청자들에 대한 콘텐츠 적합성을 기술하는 등급 정보, 또는 기타 등등을 포함할 수도 있다.
매니페스트 파일 (66) 은 특정 표현 그룹들에 대응하는 표현들 (68) 의 서브세트들을 표시하는 데이터 및 표현 그룹들에 대한 공통 특징들을 포함할 수도 있다. 또한, 매니페스트 파일 (66) 은 표현 그룹들의 개별 표현들 (68) 에 대한 개별 특징들, 예컨대 비트레이트들을 표시하는 데이터를 포함할 수도 있다. 이러한 방식으로, 표현 그룹은 간략화된 네트워크 대역폭 적응을 제공할 수도 있다. 표현 그룹 내의 표현들은 매니페스트 파일 (66) 의 표현 그룹 엘리먼트의 차일드 엘리먼트 (child element) 를 이용하여 표시될 수도 있다.
또한, 매니페스트 파일 (66) 은 (즉, 추가적으로 또는 대안적으로) 하나 이상의 표현들 (68) 에 대한 트릭 모드 정보를 시그널링할 수도 있다. 몇 가지 예들에서는, 하나 이상의 표현들 (68) 은 트릭 모드 지원을 위한 개별 시간적 서브-시퀀스를 포함할 수도 있다. 트릭 모드는 일반적으로 표현의 데이터가 처음부터 끝까지 재생되지 않고, 그 대신에 (예를 들어, 특정 시간적 위치로의 탐색을 허용하기 위하여) 특정한 시간적 위치에서 개시하거나, 또는 하나 이상의 프레임들을 순방향 또는 역방향 시간적 방향 (예를 들어, 패스트 포워드 또는 리와인드) 에서 스킵할 수도 있는, 표현에 대한 재생 모드에 대응한다.
트릭 모드들을 제공하기 위하여, 멀티미디어 콘텐츠 (64) 는 대응하는 표현들 (68) 의 시간적 서브-시퀀스들에 대한 데이터의 위치들을 나타내는 정보를 포함할 수도 있다. 몇 가지 예들에서는, 매니페스트 파일 (66) 은 이러한 시간적 서브-시퀀스들에 대한 데이터의 위치들을 나타내는 정보를 포함할 수도 있다. 다른 예들에서는, 표현들 (68) 자체가 그 시간적 서브-시퀀스들에 대한 데이터의 위치들을 나타내는 정보를 포함할 수도 있다. 또다른 예들에서는, 표현들 (68) 및 매니페스트 파일 (66) 모두가 그 시간적 서브-시퀀스들에 대한 데이터의 위치들을 나타내는 정보를 포함할 수도 있다.
몇 가지 예들에서는, 콘텐츠 준비 디바이스 (20) 는 예를 들어 생방송 서비스들을 위하여, 미디어 콘텐츠가 기록되는 때에, 미디어 콘텐츠를 준비할 수도 있다. 캡슐화 유닛 (30) 은 몇 가지 경우들에서는 주기적으로 미디어 콘텐츠에 대한 매니페스트 파일을 업데이트할 필요가 있다. 캡슐화 유닛 (30) 은 심지어 매니페스트 파일을 미디어 콘텐츠의 특정 기간 내에 업데이트할 수도 있다. 본 개시물의 기법들에 따르면, 캡슐화 유닛 (30) 은 매니페스트 파일이 업데이트되어야 하다고 표시하는 데이터를 포함하는 표현의 세그먼트들을 형성할 수도 있다. 캡슐화 유닛 (30) 은 업데이트들을 세그먼트들 자체 내에 제공하거나 또는 클라이언트 디바이스들, 예컨대 클라이언트 디바이스 (40) 가 매니페스트 파일로의 업데이트를 취출하기 시작할 수도 있는 개별 위치 내에 제공할 수도 있다. 이러한 방식으로, 매니페스트 파일 (66) 이 멀티미디어 콘텐츠 (64) 의 특정 기간 내에 업데이트되어야 할 경우에는, 캡슐화 유닛 (30) 은 매니페스트 파일 (66) 이 업데이트되어야 한다는 것을 표시하는 하나 이상의 표현들 (68) 의 세그먼트를 형성할 수도 있다.
몇 가지 예들에서는, 매니페스트 파일 (66) 은 재생 도중에 원격 기간의 데이터를 멀티미디어 콘텐츠 (64) 내에 삽입하기 위한 데이터를 포함할 수도 있다. 예를 들어, 광고들을 멀티미디어 콘텐츠 (64) 내에 인코딩하기보다는, 콘텐츠 준비 디바이스 (20) 는 멀티미디어 콘텐츠 (64) 내에 재생 도중에 통합될 하나 이상의 별개의 광고 미디어 콘텐츠를 준비할 수도 있다. 클라이언트 디바이스 (40) 는 몇 가지 예들에서는 사용자 특정 정보를 제공함으로써, 광고들이 클라이언트 디바이스 (40) 의 사용자에게 타겟화될 수 있도록하여, 클라이언트 디바이스 (40) 의 사용자가 그 사용자에게 가장 선호되며 정보성이 있는 광고들을 수신할 수 있도록 할 수도 있다. 사용자 정보의 세트에 응답하여, 서버 디바이스 (60) 는 매니페스트 파일의 타겟화된 광고 부분을 클라이언트 디바이스 (40) 로 제공할 수도 있는데, 이것은 클라이언트 디바이스 (40) 로 하여금 타겟화된 광고 멀티미디어 콘텐츠의 데이터를 취출하게 할 수도 있다. 이러한 방식으로, 동일한 멀티미디어 콘텐츠 (64) 의 두 명 이상의 시청자들은 상이한 타겟화된 광고들을 수신함으로써, 이러한 광고들이 사용자들에게 가장 관련되고 유용하도록 할 수도 있다.
서버 디바이스 (60) 는 요청 처리 유닛 (70) 및 네트워크 인터페이스 (72) 를 포함한다. 몇 가지 예들에서는, 서버 디바이스 (60) 는 복수 개의 네트워크 인터페이스들을 포함할 수도 있다. 더욱이, 서버 디바이스 (60) 의 피쳐들의 임의의 것 또는 모든 것은 콘텐츠 전달 네트워크의 다른 디바이스들, 예컨대 라우터들, 브릿지들, 프록시 디바이스들, 스위치들, 또는 다른 디바이스들에 구현될 수도 있다. 몇 가지 예들에서는, 콘텐츠 전달 네트워크의 중간 디바이스들은 멀티미디어 콘텐츠 (64) 의 데이터를 캐시하고, 그리고 실질적으로 서버 디바이스 (60) 의 그것들과 순응하는 구성요소들을 포함할 수도 있다. 일반적으로, 네트워크 인터페이스 (72) 는 데이터를 네트워크 (74) 를 통하여 전송 및 수신하도록 구성된다.
요청 처리 유닛 (70) 은 클라이언트 디바이스들, 예컨대 클라이언트 디바이스 (40) 로부터의 저장 매체 (72) 의 데이터에 대한 네트워크 요청들을 수신하도록 구성된다. 예를 들어, 요청 처리 유닛 (70) 은 하이퍼텍스트 전달 프로토콜 (HTTP) 버전 1.1 을, RFC 2616, "Hypertext Transfer Protocol - HTTP/1.1," by R. Fielding et al, Network Working Group, IETF, June 1999 에서 기술된 바와 같이 구현할 수도 있다. 즉, 요청 처리 유닛 (70) 은 HTTP GET 또는 부분 GET 요청들을 수신하고 이러한 요청들에 응답하여 멀티미디어 콘텐츠 (64) 의 데이터를 제공하도록 구성될 수도 있다. 요청들은 표현들 (68) 의 하나의 세그먼트를, 예를 들어, 그 세그먼트의 URL을 이용하여 특정할 수도 있다. 몇 가지 예들에서는, 요청들은 또한 그 세그먼트의 하나 이상의 바이트 범위들을 특정할 수도 있으며, 따라서 부분 GET 요청들을 포함한다. 더 나아가, 요청 처리 유닛 (70) 은 HTTP 헤드 요청들을 서비스하여 표현들 (68) 중 하나의 세그먼트의 헤더 데이터를 제공하도록 구성될 수도 있다. 어떠한 경우에서도, 요청 처리 유닛 (70) 은 요청들을 처리하여 요청된 데이터를 요청하는 디바이스, 예컨대 클라이언트 디바이스 (40) 로 제공하도록 구성될 수도 있다.
도 1 의 예에서 예시된 바와 같이, 멀티미디어 콘텐츠 (64) 는 매니페스트 파일 (66) 을 포함하는데, 이것은 미디어 프리젠테이션 디스크립션 (MPD) 에 대응할 수도 있다. 매니페스트 파일 (66) 은 상이한 대안적인 표현들 (68) (예를 들어, 상이한 품질들을 가지는 비디오 서비스들) 의 기술들을 포함할 수도 있고, 그리고 기술은, 예를 들어, 코덱 정보, 프로파일 값, 레벨 값, 비트레이트, 및 다른 대안적인 표현들 (68) 의 다른 기술적인 (descriptive) 특징들을 포함할 수도 있다. 클라이언트 디바이스 (40) 는 미디어 프리젠테이션의 MPD를 취출하여 표현들 (68) 의 세그먼트들로 어떻게 액세스할지를 결정할 수도 있다.
특히, 웹 애플리케이션 (52) 은 클라이언트 디바이스 (40) 의 구성 데이터 (미도시) 를 취출하여 비디오 디코더 (48) 의 디코딩 능력들 및 비디오 출력 (44) 의 렌더링 능력들을 결정할 수도 있다. 또한, 구성 데이터는 클라이언트 디바이스 (40) 의 사용자에 의하여 선택되는 언어 선호도, 클라이언트 디바이스 (40) 의 사용자에 의하여 설정된 깊이 선호도들에 대응하는 하나 이상의 카메라 퍼스펙티브들, 및/또는 클라이언트 디바이스 (40) 의 사용자에 의하여 선택된 등급 선호사항 중 임의의 것 또는 전부를 포함할 수도 있다. 웹 애플리케이션 (52) 은, 예를 들어, 웹 브라우저 또는 HTTP GET 및 부분 GET 요청들을 제출하도록 구성되는 미디어 클라이언트를 포함할 수도 있다. 웹 애플리케이션 (52) 은 클라이언트 디바이스 (40) 의 하나 이상의 프로세서들 또는 프로세싱 유닛들 (미도시) 에 의하여 실행되는 소프트웨어 명령들에 대응할 수도 있다. 몇 가지 예들에서는, 웹 애플리케이션 (52) 에 대하여 설명된 기능성의 전부 또는 일부는 하드웨어, 또는 하드웨어, 소프트웨어, 및/또는 펌웨어의 조합으로서 구현될 수도 있는데, 여기서 필수 하드웨어가 소프트웨어 또는 펌웨어에 대한 명령들을 실행하기 위하여 제공될 수도 있다.
웹 애플리케이션 (52) 은 클라이언트 디바이스 (40) 의 디코딩 및 렌더링 능력들을 매니페스트 파일 (66) 의 정보에 의하여 표시되는 표현들 (68) 의 특징들과 비교할 수도 있다. 웹 애플리케이션 (52) 은 우선 적어도 매니페스트 파일 (66) 의 일부를 취출하여 표현들 (68) 의 특징들을 결정할 수도 있다. 예를 들어, 웹 애플리케이션 (52) 은 하나 이상의 표현 그룹들의 특징들을 기술하는 매니페스트 파일 (66) 일부를 본 개시물의 기법들에 따라서 요청할 수도 있다. 웹 애플리케이션 (52) 은 클라이언트 디바이스 (40) 의 코딩 및 렌더링 능력들을 만족시킬 수 있는 특징을 가지는 표현들 (68) (예를 들어, 표현 그룹) 의 서브세트를 선택할 수도 있다. 그러면, 웹 애플리케이션 (52) 은 표현 그룹 내의 표현들에 대한 비트레이트들을 결정하고, 네트워크 대역폭의 현재 가용 양을 결정하며, 그리고 네트워크 대역폭에 의하여 만족될 수 있는 비트레이트를 가지는 표현들 중 하나로부터 세그먼트들을 취출할 수도 있다.
일반적으로, 더 높은 비트레이트 표현들은 더 높은 품질의 비디오 재생을 도출하는 반면에, 더 낮은 비트레이트 표현들은 가용 네트워크 대역폭이 감소할 때 충분한 품질의 비디오 재생을 제공할 수도 있다. 이에 상응하여, 가용 네트워크 대역폭이 상대적으로 높은 경우에는, 웹 애플리케이션 (52) 은 데이터를 상대적으로 높은 비트레이트 표현들로부터 취출할 수도 있는 반면에 가용 네트워크 대역폭이 낮은 경우에는, 웹 애플리케이션 (52) 은 데이터를 상대적으로 낮은 비트레이트 표현들로부터 취출할 수도 있다. 이러한 방식으로, 클라이언트 디바이스 (40) 는 네트워크 (74) 의 변동하는 네트워크 대역폭 이용가능성에 적응하면서도 멀티미디어 데이터를 네트워크 (74) 상에서 스트리밍할 수도 있다.
위에서 언급된 바와 같이, 몇 가지 예들에서는, 클라이언트 디바이스 (40) 사용자 정보를, 예를 들어 서버 디바이스 (60) 또는 콘텐츠 전달 네트워크의 다른 디바이스들로 제공할 수도 있다. 예를 들어, 웹 애플리케이션 (52) 은 사용자 식별자, 사용자 식별자, 사용자 선호도들, 및/또는 사용자 데모그래픽 정보를 수집하고, 그리고 이러한 사용자 정보를 서버 디바이스 (60) 로 제공할 수도 있다. 그러면, 웹 애플리케이션 (52) 은 타겟화된 광고 미디어 콘텐츠와 연관되며, 타겟화된 광고 미디어 콘텐츠로부터의 데이터를 재생 도중에 요청된 미디어 콘텐츠의 미디어 데이터 내에 삽입시키기 위하여 이용할 매니페스트 파일을 수신할 수도 있다.
가끔은, 클라이언트 디바이스 (40) 의 사용자는 클라이언트 디바이스 (40) 의 사용자 인터페이스들, 예컨대 키보드, 마우스, 스타일러스, 터치스크린 인터페이스, 버튼들, 또는 다른 인터페이스들을 이용하여 웹 브라우저 (52) 와 상호작용하여, 표현들 (68) 중 선택된 하나가 트릭 모드에서 재생되도록 요청할 수도 있다. 예를 들어, 사용자는 재생을 시작할 특정 시간적 위치를 선택하거나 특정 시간적 위치로 스킵하거나 탐색하도록 선택할 수도 있다. 다른 예로서, 사용자는 표현을 패스트 포워드 또는 리와인드하도록 선택할 수도 있다.
사용자로부터의 이러한 요청들에 응답하여, 웹 애플리케이션 (52) 은 표현들 (68) 의 하나가 시간적 서브-시퀀스를 포함하는지를 결정하여, 요청된 트릭 모드를 수행할 수도 있다. 일 예로서, 사용자는 비디오 데이터를 패스트 포워드 모드에서 재생하도록 선택할 수도 있다. 표현의 세그먼트들의 모든 데이터를 취출하는 것이 아니라, 웹 애플리케이션 (52) 은 그 표현의 시간적 서브-시퀀스에 대응하는 표현의 데이터의 위치들을 결정할 수도 있다. 예를 들어, 시간적 서브-시퀀스의 데이터는 그 표현의 순간적 디코더 리프레시 (IDR) 픽쳐들의 세트에 대응할 수도 있다.
표현의 IDR 픽쳐들간의 대략적인 시간적 지속기간, 예를 들어, 2 초, 10 초, 또는 다른 대략적인 시간적 지속기간들이 존재할 수도 있다. 더욱이, IDR 픽쳐들은 인트라-예측 모드에서 인코딩될 수도 있으며, 따라서, 웹 애플리케이션 (52) 은 IDR 픽쳐들 이외의 데이터를 취출할 필요가 없다. 웹 애플리케이션 (52) 은 그 표현의 비디오 데이터가 그렇지 않을 경우에 디스플레이 되었을 것과 동일한 프레임 레이트에서 IDR 픽쳐들이 디스플레이되게 할 수도 있다. 그러나, IDR 픽쳐들 간의 데이터의 많은 프레임들이 스킵될 수도 있기 때문에, 결과적으로 얻어지는 비디오 데이터는 증가한 프레임 레이트에서 재생됨으로써, 따라서 원하는 트릭 모드를 획득할 수도 있다.
웹 애플리케이션 (52) 은 다양한 기법들을 이용하여 시간적 서브-시퀀스에 대한 데이터위 위치들을 결정할 수도 있다. 몇 가지 예들에서는, 웹 애플리케이션 (52) 은 매니페스트 파일 (66) 의 데이터를 분석하여 IDR 픽쳐들의 위치들을 결정할 수도 있다. IDR 픽쳐들의 위치들은 특정 표현의 세그먼트들 내의 바이트 범위들에 의하여 표시될 수도 있다. 다른 예들에서는, 표현들의 세그먼트들의 특정 박스, 예컨대 서브-프래그먼트 인덱스 박스 (또한 서브-세그먼트 인덱스 박스라고도 지칭됨) 는 그 시간적 서브-시퀀스에 대한 데이터의 위치들의 표시들을 제공할 수도 있다. 예를 들어, 서브-프래그먼트 인덱스 박스는 IDR 픽쳐들에 대한 바이트 범위들을 나타내는 데이터를 대응하는 세그먼트 내에 포함할 수도 있다. 또다른 예들에서는, 매니페스트 파일 (66) 및 표현들 (68) 모두는 시간적 서브-시퀀스에 대한 데이터를 취출하기 위하여 웹 애플리케이션 (52) 에 의하여 이용되는 정보를 포함할 수도 있다. 어떠한 경우에서도, 웹 애플리케이션 (52) 은 그 IDR 픽쳐들에 대한 부분 GET 요청들을 구성하기 위한, 세그먼트들 내의 IDR 픽쳐들의 바이트 범위들을 결정하여, 디코딩 또는 디스플레이를 위하여 이용되지 않을 데이터를 취출하는 것을 회피할 수도 있다.
몇 가지 예들에서는, 캡슐화 유닛 (30) 은 IDR 픽쳐들이 세그먼트들 내에서 근접하도록 세그먼트들을 형성할 수도 있다. 즉, 캡슐화 유닛 (30) 은 IDR 픽쳐들에 대응하는 세그먼트들의 바이트들이 픽쳐들의 다른 타입들에 대한 바이트들에 개입하지 않고 근접하도록 보장할 수도 있다. 이러한 방식으로, 웹 애플리케이션 (52) 은 표현의 시간적 서브-시퀀스에 대한 데이터를 취출하기 위하여 그 표현의 세그먼트들의 단일 바이트 범위만을 특정할 필요가 있다. 몇 가지 예들에서는, 개방형 디코더 리프레시 (open decoder refresh; ODR) 픽쳐들도 역시 트릭 모드들을 수행하기 위하여 이용될 수도 있다.
몇 가지 예들에서는, 웹 애플리케이션 (52) 은 수신된 세그먼트의 부분이 매니페스트 파일이 업데이트되어야 한다고 표시한다고 결정할 수도 있다. 웹 애플리케이션 (52) 은 각각의 세그먼트의 특정 부분, 예컨대 세그먼트의 헤더 부분 또는 다른 초기 부분을 분석하여 그 세그먼트가 매니페스트 파일이 업데이트될 것을 표시하는지 여부를 결정하도록 구성될 수도 있다. 세그먼트가 매니페스트 파일이 업데이트될 것을 표시한다면, 웹 애플리케이션 (52) 은 그 세그먼트의 데이터를 이용하거나 또는 매니페스트 파일을 업데이트할 데이터를 원격 위치로부터, 예를 들어, 서버 (60) 로부터 취출함으로써, 매니페스트 파일의 국지적으로 저장된 복제본을 업데이트할 수도 있다. 매니페스트 파일을 업데이트한 이후에는, 웹 애플리케이션 (52) 은 업데이트된 매니페스트 파일의 데이터에 기초하여 표현들 (68) 의 데이터에 대한 장래 요청들을 제출할 수도 있다.
일 예로서, 콘텐츠 준비 디바이스 (20) 는, 생방송 미디어 데이터, 예컨대 사전-기록되기보다는 통상적으로 생방송으로 또는 거의 생방송으로 방송되는 생방송 스포츠 이벤트, 정치적 이벤트, 또는 뉴스 가치가 있는 이벤트를 인코딩할 수도 있다. 이러한 경우들에서는, 특정 시간까지의 미디어 데이터에 대응하는 세그먼트들에는 초기 매니페스트 파일 내에 포함된 식별자들, 예컨대 URL들이 지정될 수도 있다. 그러나, 일정 기간이 경과된 이후에는, 특정 시간에 후속하는 세그먼트들은 인코딩되고 그리고 이들에게는 URL들과 같은 식별자들이 지정될 수도 있다. 콘텐츠 준비 디바이스 (20) 의 캡슐화 유닛 (30) 은 특정 시간에 후속하는 세그먼트들에 대한 URL들을 업데이트된 매니페스트 파일로 제공할 수도 있다. 이에 상응하여, 특정 시간에 후속하는 세그먼트들을 어떻게 취출할지를 결정하기 위하여, 클라이언트 디바이스 (40) 는 특정 시간에 후속하는 세그먼트들을 취출하는 요청들을 구성하기 위하여, 업데이트된 매니페스트 파일을 표시하는 정보를 수신할 수도 있다.
몇 가지 예들에서는, 세그먼트는 자신이 표현의 최후 세그먼트인지 여부를 표시할 수도 있다. 세그먼트가 표현의 최후 세그먼트라면, 새로운 매니페스트 파일이 대응하는 멀티미디어 콘텐츠의 추후 기간의 표현들을 결정하기 위하여 취출될 필요가 있을 수도 있다. 이에 상응하여, 웹 애플리케이션 (52) 이 세그먼트가 멀티미디어 콘텐츠의 기간 내의 표현의 최후 세그먼트라고 결정하면, 웹 애플리케이션 (52) 은 그 멀티미디어 콘텐츠에 대한 업데이트된 매니페스트 파일, 예를 들어, 멀티미디어 콘텐츠 (64) 의 매니페스트 파일 (66) 의 업데이트된 버전을 취출할 수도 있다.
몇 가지 예들에서는, 클라이언트 디바이스 (40) 는 클라이언트 디바이스 (40) 가 멀티미디어 콘텐츠 (64) 에 대한 데이터를 요청했던 시작이 되는 특정 표현 (68) 을 표시하는 데이터 구조를 유지할 수도 있다. 또한, 클라이언트 디바이스 (40) 는 정확히 무엇이 재생되었으며, 언제 재생되었는지의 표시들을 유지할 수도 있다. 즉, 데이터 구조는 실제 (또는 "벽 시계 (wall clock)") 시간 및 프리젠테이션 시간 모두에서 시작 및 종료 시간들을 나타내는 정보를 제공할 수도 있다. 더 나아가, 데이터 구조는 초기 시작 시간 및 재생의 시작을 나타내는 정보를 제공할 수도 있다. 멀티미디어 콘텐츠 (64) 의 재생을 종료한 이후에, 클라이언트 디바이스 (40) 는 이러한 데이터 구조를 서버 디바이스 (60) 및/또는 콘텐츠 준비 디바이스 (20) 로 전송할 수도 있다. 서버 디바이스 (60) 및/또는 콘텐츠 준비 디바이스 (20) 는 클라이언트 디바이스 (40) 로부터 수신된 정보를 이용하여, 재생시 일시 정지들을 감소시키는 것과 같이 경험 품질을 개선하기 위한 더 많은 최적 방식들을 결정할 수도 있다.
네트워크 인터페이스 (54) 는 선택된 표현의 세그먼트들의 데이터를 수신하고 웹 애플리케이션 (52) 로 제공할 수도 있는데, 이것은 순서대로 세그먼트들을 역캡슐화 유닛 (50) 으로 제공할 수도 있다. 역캡슐화 유닛 (50) 은 비디오 파일의 엘리먼트들을 구성 PES 스트림들로 역캡슐화하고, PES 스트림들을 역패킷화하여 인코딩된 데이터를 취출하며, 그리고 인코딩된 데이터를 인코딩된 데이터가, 예를 들어 스트림의 PES 패킷 헤더들에 의하여 표시되는 바와 같이 오디오 또는 비디오 스트림의 부분인지 여부에 의존하여 오디오 디코더 (46) 또는 비디오 디코더 (48) 로 전송할 수도 있다. 오디오 디코더 (46) 는 인코딩된 오디오 데이터를 디코딩하고 그리고 디코딩된 오디오 데이터를 오디오 출력 (42) 으로 전송하는 반면에, 비디오 디코더 (48) 는 인코딩된 비디오 데이터를 디코딩하고 그리고, 스트림의 복수 개의 뷰들을 포함할 수도 있는 디코딩된 비디오 데이터를 비디오 출력 (44) 으로 전송한다.
비디오 인코더 (28), 비디오 디코더 (48), 오디오 인코더 (26), 오디오 디코더 (46), 캡슐화 유닛 (30), 웹 애플리케이션 (52), 및 역캡슐화 유닛 (50) 각각은 적용가능한 경우에 다양한 적합한 처리 회로부들, 예컨대 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서들 (DSPs), 주문형 집적회로들 (ASICs), 필드 프로그래밍가능한 게이트 어레이들 (FPGAs), 별개의 로직 회로부, 소프트웨어, 하드웨어, 펌웨어 또는 임의의 이들의 조합들 중 임의의 것으로서 구현될 수도 있다. 비디오 인코더 (28) 및 비디오 디코더 (48) 각각은 하나 이상의 인코더들 또는 디코더들 내에 포함될 수도 있는데, 이들 중 어떤 것은 통합된 비디오 인코더/디코더 (CODEC) 의 일부로서 집적될 수도 있다. 이와 유사하게, 오디오 인코더 (26) 및 오디오 디코더 (46) 각각은 하나 이상의 인코더들 또는 디코더들 내에 포함될 수도 있는데, 이들 중 임의의 것은 통합된 코덱의 일부로서 집적될 수도 있다. 비디오 인코더 (28), 비디오 디코더 (48), 오디오 인코더 (26), 오디오 디코더 (46), 캡슐화 유닛 (30), 웹 애플리케이션 (52) 및/또는 역캡슐화 유닛 (50) 을 포함하는 장치는 집적 회로, 마이크로프로세서, 및/또는 무선 통신 디바이스, 예컨대 셀룰러 전화기를 포함할 수도 있다.
도 2 는 하나의 예시적인 멀티미디어 콘텐츠 (100) 의 엘리먼트들을 예시하는 개념도이다. 멀티미디어 콘텐츠 (100) 는 멀티미디어 콘텐츠 (64) (도 1), 또는 메모리 (62) 내에 저장된 다른 멀티미디어 콘텐츠에 대응할 수도 있다. 도 2 의 예에서는, 멀티미디어 콘텐츠 (100) 는 미디어 프리젠테이션 디스크립션 (MPD; 102) 및 복수 개의 표현들 (110-120) 을 포함한다. 표현 (110) 은 선택적인 헤더 데이터 (112) 및 세그먼트들 (114A-114N ; 세그먼트들 (114)) 을 포함하고, 반면에 표현 (120) 은 선택적인 헤더 데이터 (122) 및 세그먼트들 (124A-124N ; 세그먼트들 (124)) 을 포함한다. 문자 N 은 편의를 위하여 표현들 (110, 120) 의 각각에서 최후 무비 프래그먼트를 가리키도록 이용된다. 몇 가지 예들에서는, 표현들 (110, 120) 사이에는 상이한 개수의 무비 프래그먼트들이 존재할 수도 있다.
MPD (102) 는 표현들 (110-120) 로부터 별개인 데이터 구조를 포함할 수도 있다. MPD (102) 는 도 1 의 매니페스트 파일 (66) 에 대응할 수도 있다. 이와 유사하게, 표현들 (110-120) 은 도 1 의 표현들 (68) 에 대응할 수도 있다. 일반적으로, MPD (102) 는 표현들 (110-120) 의 특징들을 일반적으로 기술하는 데이터, 예컨대 코딩 및 렌더링 특징들, 표현 그룹들, MPD (102) 가 대응하는 프로파일, 텍스트 타입 정보, 카메라 각도 정보, 등급 정보, 트릭 모드 정보 (예를 들어, 시간적 서브-시퀀스들을 포함하는 표현들을 표시하는 정보) 및/또는 원격 기간들을 취출하기 위한 (예를 들어, 재생 도중에 미디어 콘텐츠 내로의 타겟화된 광고 삽입을 위한) 정보를 포함할 수도 있다. 또한, 원격 기간들은 외부 기간들 (external periods) 이라고 지칭될 수도 있다. 도 4 내지 도 7 은 아래에서 더 상세하게 논의되는 (예컨대 표현들의 세그먼트들 또는 표현들의 헤더 데이터 내의), MPD 및/또는 표현들 중 하나 또는 모두 내에 포함되는 다양한 엘리먼트들을 가지는 멀티미디어 콘텐츠의 다양한 예들을 예시한다. 도 4 내지 도 7 의 MPD들 중 임의의 것 또는 전부는 실질적으로 도 2 의 MPD (102) 에 대응할 수도 있다.
존재할 경우에, 헤더 데이터 (112) 는 세그먼트들 (114) 의 특징들, 예를 들어, 랜덤 액세스 포인트들의 시간적 위치들, 세그먼트들 (114) 중 어느 것이 랜덤 액세스 포인트들을 포함하는지, 세그먼트들 (114) 내의 랜덤 액세스 포인트들로의 바이트 오프셋들, 세그먼트들 (114) 의 유니폼 리소스 로케이터들 (URLs), 또는 세그먼트들 (114) 의 다른 양태들을 기술할 수도 있다. 존재할 경우에는, 헤더 데이터 (122) 는 세그먼트들 (124) 에 대한 유사한 특징들을 기술할 수도 있다. 추가적으로 또는 대안적으로, 이러한 특징들은 MPD (102) 내에 완전하게 포함될 수도 있다.
세그먼트들 (114) 은 하나 이상의 코딩된 비디오 샘플들을 포함하는데, 이들 각각은 비디오 데이터의 프레임들 또는 슬라이스들을 포함할 수도 있다. 세그먼트들 (114) 의 코딩된 비디오 샘플들 각각은 유사한 특징들, 예를 들어, 높이, 폭, 및 대역폭 요구 조건들을 가질 수도 있다. 비록 이러한 데이터가 도 2 의 예에서는 예시되지 않지만, 이러한 특징들은 MPD (102) 의 데이터에 의하여 기술될 수도 있다. MPD (102) 는, 본 개시물에서 기술되는 시그널링된 정보 중 임의의 것 또는 전부가 추가된, 3GPP 사양에 의하여 기술되는 바와 같은 특징들을 포함할 수도 있다.
세그먼트들 (114, 124) 각각은 유니폼 리소스 식별자 (URI), 예를 들어, 유니폼 리소스 로케이터 (URL) 와 연관될 수도 있다. 따라서, 세그먼트들 (114, 124) 의 각각은 스트리밍 네트워크 프로토콜, 예컨대 DASH 를 이용하여 독립적으로 취출가능할 수도 있다. 이러한 방식으로, 목적지 디바이스, 예컨대 클라이언트 디바이스 (40) 는, HTTP GET 요청을 이용하여 세그먼트들 (114 또는 124) 을 취출할 수도 있다. 몇 가지 예들에서는, 클라이언트 디바이스 (40) 는 HTTP 부분 GET 요청들을 이용하여 세그먼트들 (114 또는 124) 의 특정 바이트 범위들을 취출할 수도 있다.
위에서 언급된 바와 같이, MPD (102) 는 특정 MPD 프로파일에 따를 수도 있다. MPD (102) 는 MPD (102) 및/또는 멀티미디어 콘텐츠 (100) 에 대한 다목적 인터넷 메일 확장 (Multipurpose Internet Mail Extension; MIME) 타입을 표시하는 정보를 포함할 수도 있다. 그러나, MIME 타입들은 일반적으로 어떤 코덱이 멀티미디어 콘텐츠를 제공하기 위하여 필요한지를 표시하지 않는다. 일반적으로, 만일 어떤 디바이스가 멀티미디어 콘텐츠에 대한 MPD, 예컨대 MPD (102) 를 취출할 수 있다면, 그 디바이스는 그 MPD에 대응하는 멀티미디어 콘텐츠의 데이터를 재생할 수 있다는 것이 추정된다. 그러나, 이러한 추정은 언제나 안전한 것은 아닐 수도 있다. 그러므로, 몇 가지 예들에서는, MPD (102) 는 MPD (102) 가 대응하는 프로파일을 표시하는 정보를 포함할 수도 있다.
MPD들이 대응할 수도 있는 프로파일들의 상대적으로 적은 개수가 존재할 수도 있다. H.264/AVC 가 비디오 코딩을 위한 프로파일들 및 레벨들을 포함하는 방식과 유사하게, 프로파일들은 레벨들에 의하여 지원되어 성능들을 언급한다. MPD 프로파일들은 양파 껍질 모양을 가질 수도 있으며, 즉 더 높은 프로파일이 모든 더 낮은 프로파일들의 모든 피쳐들을 포함할 수도 있다. 다양한 프로파일들을 등록하기 위한 등록 기관과의 등록 프로세스가 존재할 수도 있다. 몇 가지 예들에서는, 클라이언트 디바이스, 예컨대 클라이언트 디바이스 (40) 는 MPD의 다른 데이터, 예컨대 MPD (102) 에 의하여 시그널링된 표현들 (110-120) 의 특징을 취출하기 이전에, MPD, 예컨대 MPD (102) 에 대한 프로파일을 표시하는 정보를 취출하도록 구성될 수도 있다. 이러한 방식으로, MPD (102) 에 대한 프로파일은 MPD (102) 로의 액세스가 제공되기 이전에 시그널링될 수도 있다.
프로파일 식별자는 단순 텍스트로 (예를 들어, 단순 명칭으로서), 또는 반전된 도메인 명칭으로 제공될 수도 있다. 단순 명칭들은 등록 기관, 예컨대 3GPP 또는 다른 등록 기관에 의하여 예비될 수도 있다. 프로파일이 대응하는 멀티미디어 콘텐츠가 그 프로파일에 따르도록 청구 (claim) 하고 그 프로파일을 구현하는 리더 (예를 들어 클라이언트 디바이스) 에게 그 MPD를 판독하고, 이것이 인식한 것을 해석하며, 그리고 이것이 이해하지 않는 내용을 무시하도록 하는 허가 (permission) 를 준다는 점에서, 프로파일은 청구 및 허가로 간주될 수도 있다.
예를 들어, 프로파일들은 특징들, 예컨대 MPD의 피쳐들 (102), 네트워크의 사용 (usage), 미디어 포맷(들), 이용되는 코덱(들), 보호 포맷들, 및/또는 양적 척도들, 예컨대 비트레이트들, 스크린 크기들, 및 기타 등등을 기술할 수도 있다. 이러한 방식으로, MPD (102) 의 프로파일은 MPD (102) 및/또는 멀티미디어 콘텐츠 (100) 의 데이터를 취출하기 위하여 어떤 코덱들이 지원되어야 하는지를 표시하는 정보를 제공할 수도 있다. 또한, 프로파일들은 "순응성 포인트들 (conformance points)" 이라고 설명될 수도 있다. MPD가 따르는 프로파일들은 MPD 의 "Profiles" 속성에서 표시될 수도 있다. 따라서, 클라이언트 디바이스는 MPD (102) 의 추가적인 데이터를 취출하기 이전에 "Profiles" 속성에 연관된 정보를 포함하는 MPD (102) 의 부분을 취출하도록 구성될 수도 있다. 대안적으로는, 프로파일들은 MPD 의 MIME 타입 내의 파라미터로서 표시될 수도 있다. 예를 들어, 프로파일들 "X, Y, 및 Z" 는 다음 방식으로 시그널링될 수도 있다:
video/vnd.mpeg.mpd;profiles="X,Y,Z"
몇 가지 예들에서는, MPD (102) 는 외부 기간들 (원격 기간들이라고 지칭됨) 의 데이터를 지칭할 수도 있다. 일반적으로, 기간은 멀티미디어 콘텐츠의 특정 시간적 섹션에 대응한다. 각각의 기간은 하나 이상의 표현들, 예컨대 표현들 (110-120) 을 포함할 수도 있다. 그러나, 외부 기간이 멀티미디어 콘텐츠 (100) 의 기간들 내에 또는 사이에 삽입될 수도 있다. 외부 기간은 멀티미디어 콘텐츠의 멀티미디어 데이터에 추가하여 멀티미디어 데이터를 포함할 수도 있다. 예를 들어, 외부 기간들은 광고 데이터를 포함할 수도 있다.
Period들은 그들의 지속기간에 의하여 정의될 수도 있으며, 즉, Period의 시작 시간은 이전 Period의 지속기간에 의존할 수도 있다. 클라이언트 디바이스는 외부 기간들을 MPD 구조로 매핑할 수도 있다. 생방송 서비스들을 위해서는, 적절한 업데이트 프로시져들과 함께 MPD들의 접합 (concatenation) 이 서버, 예컨대 서버 디바이스 (60) 상의 MPD의 동적 생성에 의하여 달성될 수도 있다. 또한, 다른 웹 기술들이 이용될 수도 있다. 외부적으로 정의된 기간들에 대한 URL들은 실시간으로 처리되어 클라이언트 디바이스 (40) 의 사용자에게 타겟화된 광고를 포함하는 새로운 기간을 생성할 수도 있다. 클라이언트 디바이스 (40) 는 요청에 따라, 광고 타겟화를 위하여 이용될 수도 있는 추가적인 정보, 예를 들어, 사용자 식별자, 사용자 선호도들, 사용자 데모그래픽 정보, 또는 다른 정보를 공급할 수도 있다.
아래의 표 1 은 멀티미디어 콘텐츠의 하나 이상의 Period들을 기술하고 외부 기간들의 존재를 표시하기 위하여 MPD (102) 내에서 제공될 수도 있는 정보의 예시적인 세트를 예시한다:
Period | E | 1…N | M | Period 의 정보를 제공한다. |
PeriodAttributes | 목록 | M | 이미 존재하는 기간 속성들 | |
periodDuration | A | O | 기간 지속기간을 제공하고, 다음 Period의 start 속성에 대한 대안으로서 이용될 수도 있다. | |
representationGroupListURI | A | O | Representation들의 목록을 포함하는 문서를 가리키는 URI | |
RepresentationGroups | E | 0..N | 이 엘리먼트는 Representation 그룹의 디스크립션을 포함한다 | |
periodListURI | A | M | 하나 또는 수 개의 Period 엘리먼트들을 포함하는 문서를 가리키는 URI. |
이러한 방식으로, MPD (102) 의 Period 엘리먼트는, 예를 들어 periodListURI 를 이용하여 외부 (또는 원격) 기간들을 지칭할 수도 있다. 주문형 콘텐츠에 대해서는, 기간 지속기간들의 표시들이 외부 기간들을 지원하기 위하여 시작 시간들보다 클라이언트 디바이스들, 예컨대 클라이언트 디바이스 (40) 에 대하여 더욱 유용할 수도 있다. MPD 는 Periods의 시퀀스들을 포함할 수도 있는데, 여기서 Period들은 내부적이거나 외부적일 수 있다. 이러한 원격 Period들을 사용자-특정 정보와 함꼐 이용하는 것이 타겟화된 사용자 광고를 허용할 수도 있다. 서버 디바이스 (60) 및/또는 콘텐츠 준비 디바이스 (20) 는 각각의 사용자에 대한, 또는 각각의 클라이언트 디바이스에 대한 별개의 MPD들을 동적으로 생성하도록 구성될 수도 있다. 클라이언트 디바이스 (40), 또는 다른 디바이스는, 예를 들어 동적-생성된 MPD를 이용하여 타겟화된 광고의 재생 및 생방송 서비스를 접합시킬 수도 있다.
이러한 방식으로, 본 개시물의 기법들은 서비스 제공자가 주문형 콘텐츠를 3GPP AHS 를 통하여 제공하는 상황들을 지원할 수도 있다. 콘텐츠는 수 개의 장면들을 포함할 수도 있고, 그리고 각각의 장면 사이에 광고가 추가될 수도 있다. 광고는 각 사용자에 대하여 상이할 수도 있다. 즉, 타겟화된 광고가 추가될 수도 있다. 또한, 각각의 광고는 상이한 지속기간을 가질 수도 있다. 이와 유사하게, 서비스 제공자는 특정 생방송 서비스 (예를 들어, 무료 서비스) 를 제공할 수도 있다. 생방송 서비스에 액세스할 때, 서비스 제공자는 사용자에게 타겟화되거나 되지 않을 수도 있는 광고를 추가할 수도 있다. 광고의 지속기간은 액세스 시간, 액세스 위치, 사용자, 및 기타 등등에 의존하여 상이할 수도 있다. 서버 디바이스 (60) 는 광고가 완결된 이후에만 생방송 서비스의 URL을 제공함으로써 그 광고가 시청되는 것을 보장하도록 구성될 수도 있다.
도 3 은 예시적인 비디오 파일 (150) 의 엘리먼트들을 예시하는 블록도인데, 이것은 표현의 세그먼트, 예컨대 도 2 의 세그먼트들 (114, 124) 중 하나에 대응할 수도 있다. 세그먼트들 (114, 124) 의 각각은 실질적으로 도 3 의 예에 예시된 데이터의 배치에 따르는 데이터를 포함할 수도 있다. 또한, 이와 유사하게 아래에서 논의되는 도 4 내지 도 7 의 세그먼트들도 실질적으로 비디오 파일 (150) 의 구조에 따를 수도 있다. 위에서 설명된 바와 같이, ISO 기초 미디어 파일 포맷 및 그의 확장물들에 따르는 비디오 파일들은 데이터를 오브젝트들의 시리즈로서 "박스들" 이라고 지칭되는 것들 내에 저장한다. 도 3 의 예에서는, 비디오 파일 (150) 은 파일 타입 (FTYP) 박스 (152), 무비 (MOOV) 박스 (154), 무비 프래그먼트 (MOOF) 박스들 (162), 및 무비 프래그먼트 랜덤 액세스 (movie fragment random access; MFRA) 박스 (164) 를 포함한다.
파일 타입 (FTYP) 박스 (152) 는 일반적으로 비디오 파일 (150) 에 대한 파일 타입을 기술한다. 파일 타입 박스 (152) 는 비디오 파일 (150) 에 대한 최적 이용을 설명하는 규격을 식별하는 데이터를 포함할 수도 있다. 파일 타입 박스 (152) 는 MOOV 박스 (154), 무비 프래그먼트 박스들 (162), 및 MFRA 박스 (164) 이전에 배치될 수도 있다.
몇 가지 예들에서는, 세그먼트, 예컨대 비디오 파일 (150) 은 MPD 업데이트 박스 (미도시) 를 FTYP 박스 (152) 이전에 포함할 수도 있다. MPD 업데이트 박스는 비디오 파일 (150) 을 포함하는 표현에 대응하는 MPD가 업데이트될 것을 표시하는 정보를 그 MPD를 업데이트하기 위한 정보와 함께 포함할 수도 있다. 예를 들어, MPD 업데이트 박스는 MPD를 업데이트하기 위하여 이용될 리소스에 대한 URI 또는 URL을 제공할 수도 있다. 다른 예로서, MPD 업데이트 박스는 MPD 를 업데이트하기 위한 데이터를 포함할 수도 있다. 몇 가지 예들에서는, MPD 업데이트 박스는 비디오 파일 (150) 의 세그먼트 타입 (STYP) 박스 (미도시) 를 즉시 추종할 수도 있는데, 여기서 STYP 박스는 비디오 파일 (150) 에 대한 세그먼트 타입을 정의할 수도 있다. 아래에서 더 상세하게 설명되는 FIG 7 은 MPD 업데이트 박스에 대한 추가적인 정보를 제공한다.
도 3 의 예에서의 MOOV 박스 (154) 는 무비 헤더 (MVHD) 박스 (156), 트랙 (TRAK) 박스 (158), 및 하나 이상의 무비 확장들 (movie extends; MVEX) 박스들 (160) 을 포함한다. 일반적으로, MVHD 박스 (156) 는 비디오 파일 (150) 의 일반적인 특징들을 기술할 수도 있다. 예를 들어, MVHD 박스 (156) 는 비디오 파일 (150) 이 언제 최초에 생성되었는지 및, 비디오 파일 (150) 이 언제 마지막으로 수정되었는지를 기술하는 데이터, 비디오 파일 (150) 에 대한 타임스케일, 비디오 파일 (150) 에 대한 재생의 지속기간, 또는 일반적으로 비디오 파일 (150) 을 기술하는 다른 데이터를 포함할 수도 있다.
TRAK 박스 (158) 는 비디오 파일 (150) 의 트랙에 대한 데이터를 포함할 수도 있다. TRAK 박스 (158) 는 TRAK 박스 (158) 에 대응하는 트랙의 특징을 기술하는 트랙 헤더 (TKHD) 박스를 포함할 수도 있다. 몇 가지 예들에서는, TRAK 박스 (158) 는 코딩된 비디오 픽쳐들을 포함할 수도 있는 반면에, 다른 예들에서는, 트랙의 코딩된 비디오 픽쳐들은 무비 프래그먼트들 (162) 내에 포함될 수도 있고, 이것은 TRAK 박스 (158) 의 데이터에 의하여 참조될 수도 있다.
몇 가지 예들에서는, 비디오 파일 (150) 은 두 개 이상의 트랙을 포함할 수도 있다. 이에 상응하여, MOOV 박스 (154) 는 비디오 파일 (150) 내의 트랙들의 개수와 동일한 개수의 TRAK 박스들을 포함할 수도 있다. TRAK 박스 (158) 는 비디오 파일 (150) 의 대응하는 트랙의 특징을 기술할 수도 있다. 예를 들어, TRAK 박스 (158) 는 대응하는 트랙에 대한 시간적 및/또는 공간적 정보를 기술할 수도 있다. MOOV 박스 (154) 의 TRAK 박스 (158) 와 유사한 TRAK 박스는, 캡슐화 유닛 (30) (도 1) 이 비디오 파일, 예컨대 비디오 파일 (150) 내에 파라미터 세트 트랙을 포함한다면, 파라미터 세트 트랙의 특징을 기술할 수도 있다. 캡슐화 유닛 (30) 은 시퀀스 레벨 SEI 메시지들의 존재를 파라미터 세트 트랙을 기술하는 TRAK 박스 내의 그 파라미터 세트 트랙 내에 시그널링할 수도 있다.
MVEX 박스들 (160) 은 대응하는 무비 프래그먼트들 (162) 의 특징들을 기술하여, 예를 들어 MOOV 박스 (154) 내에 포함된 비디오 데이터에 부가하여, 임의의 경우에 비디오 파일 (150) 이 무비 프래그먼트들 (162) 을 포함한다고 시그널링할 수도 있다. 스트리밍 비디오 데이터의 콘텍스트에서는, 코딩된 비디오 픽쳐들은 MOOV 박스 (154) 내에서가 아니라 무비 프래그먼트들 (162) 내에서 포함할 수도 있다. 이에 상응하여, 모든 코딩된 비디오 샘플들은 MOOV 박스 (154) 내에서가 아니라 무비 프래그먼트들 (162) 내에서 포함할 수도 있다.
MOOV 박스 (154) 는 비디오 파일 (150) 내의 무비 프래그먼트들 (162) 의 개수와 동일한 개수의 MVEX 박스들 (160) 을 포함할 수도 있다. MVEX 박스들 (160) 의 각각은 무비 프래그먼트들 (162) 중 대응하는 하나의 특징들을 기술할 수도 있다. 예를 들어, 각각의 MVEX 박스는 무비 프래그먼트들 (162) 중 대응하는 하나에 대한 시간적 지속 시간을 기술하는 무비 확장들 헤더 박스 (movie extends header box; MEHD) 박스를 포함할 수도 있다.
위에서 언급된 바와 같이, 캡슐화 유닛 (30) 은 실제 코딩된 비디오 데이터를 포함하지 않는 비디오 샘플 내에 시퀀스 데이터 세트를 저장할 수도 있다. 비디오 샘플은 일반적으로 액세스 유닛에 대응할 수도 있는데, 이것은 특정한 시간 인스턴스에서의 코딩된 픽쳐의 표현이다. AVC의 콘텍스트에서는, 코딩된 픽쳐는 액세스 유닛 및 다른 연관된 비-VCL NAL 유닛들의 모든 픽셀들을 구성하기 위한 정보, 예컨대 SEI 메시지들을 포함하는 하나 이상의 VCL NAL을 포함한다. 이에 상응하여, 캡슐화 유닛 (30) 은 시퀀스 데이터 세트를 포함할 수도 있는데, 이것은 시퀀스 레벨 SEI 메시지들을 무비 프래그먼트들 (162) 중 하나에 포함할 수도 있다. 더 나아가, 캡슐화 유닛 (30) 은 시퀀스 데이터 세트 및/또는 시퀀스 레벨 SEI 메시지들의 존재가 무비 프래그먼트들 (162) 중 하나에 대응하는 MVEX 박스들 (160) 중 하나 내의 무비 프래그먼트들 (162) 중 하나 내에 존재하는 것으로 시그널링할 수도 있다.
무비 프래그먼트들 (162) 은 하나 이상의 코딩된 비디오 픽쳐들을 포함할 수도 있다. 몇 가지 예들에서는, 무비 프래그먼트들 (162) 은 픽쳐들의 하나 이상의 그룹들 (GOPs) 을 포함할 수도 있는데, 이것의 각각은 다수의 코딩된 비디오 픽쳐들, 예를 들어, 프레임들 또는 픽쳐들을 포함할 수도 있다. 또한, 위에서 설명된 바와 같이, 무비 프래그먼트들 (162) 은 몇 가지 예들에서는 시퀀스 데이터 세트들을 포함할 수도 있다. 무비 프래그먼트들 (162) 의 각각은 무비 프래그먼트 헤더 박스 (MFHD, 도 3 에는 미도시) 를 포함할 수도 있다. MFHD 박스는 대응하는 무비 프래그먼트의 특징들, 예컨대 그 무비 프래그먼트의 시퀀스 번호를 기술할 수도 있다. 무비 프래그먼트들 (162) 은 비디오 파일 (150) 내의 시퀀스 번호의 순서로 포함될 수도 있다.
MFRA 박스 (164) 는 비디오 파일 (150) 의 무비 프래그먼트들 (162) 내의 랜덤 액세스 포인트들을 기술할 수도 있다. 이것은 트릭 모드들을 수행하는 것을, 예컨대 비디오 파일 (150) 내의 특정 시간적 위치들로의 탐색들을 수행하는 것을 보조할 수도 있다. MFRA 박스 (164) 는 일반적으로 선택적인 것이며, 몇 가지 예들에서는 비디오 파일들 내에 포함될 필요가 없다. 이와 유사하게, 클라이언트 디바이스, 예컨대 클라이언트 디바이스 (40) 는 비디오 파일 (150) 의 비디오 데이터를 정확하게 디코딩하고 디스플레이하기 위하여 반드시 MFRA 박스 (164) 를 참조해야 할 필요가 있는 것은 아니다. MFRA 박스 (164) 는 비디오 파일 (150) 의 트랙들의 개수와 동일한, 또는 몇 가지 예들에서는 비디오 파일 (150) 의 미디어 트랙들 (예를 들어, 비-힌트 트랙들) 의 개수와 동일한 개수의 트랙 프래그먼트 랜덤 액세스 (TFRA) 박스들 (미도시) 을 포함할 수도 있다.
몇 가지 예들에서는, 무비 프래그먼트들 (162) 은 하나 이상의 IDR 및/또는 ODR 픽쳐들을 포함할 수도 있다. 이와 유사하게, MFRA 박스 (164) 는 IDR 및 ODR 픽쳐들의 비디오 파일 (150) 내의 위치들의 표시들을 제공할 수도 있다. 이에 상응하여, 비디오 파일 (150) 의 시간적 서브-시퀀스는 비디오 파일 (150) 의 IDR 및 ODR 픽쳐들로부터 형성될 수도 있다. 또한, 시간적 서브-시퀀스는 다른 픽쳐들, 예컨대 IDR 및/또는 ODR 픽쳐들에 의존하는 P-프레임들 및/또는 B-프레임들을 포함할 수도 있다. 시간적 서브-시퀀스의 프레임들 및/또는 슬라이스들은, 서브-시퀀스의 다른 프레임들/슬라이스들에 의존하는 시간적 서브-시퀀스의 프레임들/슬라이스들이 적합하게 코딩될 수 있도록 세그먼트들 내에서 정렬될 수도 있다. 예를 들어, 데이터의 계층적 배치에서는, 다른 데이터에 대한 예측을 위하여 이용되는 데이터 또한 시간적 서브-시퀀스 내에 포함될 수도 있다. 더욱이, 그 시간적 서브-시퀀스에 대하여 이용되는 특정 세그먼트의 모든 데이터를 취출하기 위한 부분 GET 요청 내에서 단일 바이트 범위가 특정될 수 있도록, 데이터가 연속 서브-시퀀스 내에 정렬될 수도 있다. 클라이언트 디바이스, 예컨대 클라이언트 디바이스 (40) 는 IDR 및/또는 ODR 픽쳐들에 대응하는 무비 프래그먼트들 (162) 의 바이트-범위들 (또는 무비 프래그먼트들 (162) 의 부분들) 을 결정함으로써 비디오 파일 (150) 의 시간적 서브-시퀀스를 추출할 수도 있다. 더욱 더 자세하게 아래에서 논의되는 바와 같이, 비디오 파일들 (150) 과 같은 비디오 파일은 서브-프래그먼트 인덱스 박스 및/또는 서브-트랙 프래그먼트 박스를 포함할 수도 있는데, 이들 중 하나 또는 모두는 비디오 파일 (150) 의 시간적 서브-시퀀스를 추출하기 위한 데이터를 포함할 수도 있다.
도 4 는 MPD (202) 및 표현 그룹들 (210-220) 을 포함하는 하나의 예시적인 멀티미디어 콘텐츠 (200) 를 예시하는 개념도이다. 멀티미디어 콘텐츠 (200) 는 멀티미디어 콘텐츠 (64) (도 1), 또는 메모리 (62) 내에 저장된 다른 멀티미디어 콘텐츠에 대응할 수도 있다. 이러한 예에서는, 멀티미디어 콘텐츠 (200) 의 표현들은 표현 그룹에 의하여 정렬될 수도 있다. 즉, 특징들의 공통 세트를 가지는 표현들이 하나의 표현 그룹 내에 형성될 수도 있는데, 이것이 간략화된 네트워크 대역폭 적응을 제공한다.
이러한 예에서는, MPD (202) 는 표현 그룹 (210) 의 공통 특징들을 기술하는 정보를 포함하는 공통 표현 특징들 (204A) 및 표현 그룹 (220) 의 공통 특징들을 기술하는 공통 표현 특징들 (204B) 을 포함한다. 공통 특징들은 표현들의 코딩 및/또는 렌더링 특징들, 예컨대 코덱, 그 표현 내의 표현들이 따르는 코덱의 프로파일 및 레벨, 픽셀 해상도, 프레임 레이트, 표현들의 또는 다른 특징들을 포함할 수도 있다.
본 개시물의 기법들에 따르면, 특징들은 텍스트 타입 값, 카메라 각도 값, 및/또는 등급 값을 위에서 논의된 특징에 부가하여 포함할 수도 있다. 텍스트 타입 값은 비디오 데이터와 함께 디스플레이될 텍스트 (예를 들어, 자막화된 텍스트) 의 특징들을 기술할 수도 있다. 텍스트 타입 값은, 예를 들어, 텍스트의 언어, 텍스트를 디스플레이 할 스크린 상의 위치, 텍스트의 폰트 및/또는 사이즈, 또는 텍스트의 다른 특징들을 기술할 수도 있다.
카메라 각도 값은 (물리적으로 또는 개념적으로) 이용되는 카메라에 대한 현실 세계 수평 카메라 위치를 기술하여 대응하는 표현들의 코딩된 비디오 데이터를 생성할 수도 있다. 이러한 카메라 각도들을 이용하면서, 클라이언트 디바이스 (40) 는, 예를 들어 3-차원 비디오 재생 효과를 생산하기 위하여 실질적으로 동시에 디스플레이 될 두 개 이상의 표현들로부터 데이터를 선택할 수도 있다. 수평 현실 세계 카메라 위치들은 클라이언트 디바이스가 표현들을 선택하여 비디오 데이터의 3-차원 재생에 있어서의 깊이의 상대적인 양을 증가시키거나 감소시키도록 가능하게 할 수도 있다.
등급은 특정 시청자들에 대한 콘텐츠 적합성을 기술할 수도 있다. 예를 들어, 미국에서는, 미국 동화상 협회 (Motion Picture Association of America) 는 G, PG, PG-13, R, 및 NC-17 을 포함하는 등급들을 정의한다. 다른 예로서, 영국에서는, 영국 영화 분류 위원회 (British Board of Film Classification) 는 U, PG, 12A, 12, 15, 18, 및 R18 을 포함하는 등급들을 정의한다. 또 다른 예로서, 대만 (Taiwan) 에서는, 모션 픽쳐들의 카테고리들은 일반 시청자들 카테고리, 보호된 카테고리, 부모의 가이드가 필요한 카테고리, 및 제한된 카테고리를 포함한다.
개별 표현 그룹들, 예를 들어, 표현 그룹들 (210-220) 의 공통 특징들 (204) 을 제공함으로써, 클라이언트 디바이스 (예를 들어, 클라이언트 디바이스 (40)) 는 표현 그룹들 (210-220) 의 적합한 하나를 적어도 부분적으로 대응하는 공통 표현 특징들 (204) 에 기초하여 선택할 수도 있다. 도 4 의 예에서는, MPD (202) 는 또한 각각 표현들 (212A, 212B, 222A, 222B) 에 대응하는 개별 표현 특징들 (206A, 206B, 208A, 및 208B) 을 포함한다. 개별 표현 특징들 (206A, 206B, 208A, 및 208B) 은 공통 표현 특징들 (204) 에 의하여 표시되지 않는, 표현들 (212A, 212B, 222A, 222B) 의 특징들을 나타내는 정보를 포함할 수도 있다. 예를 들어, 개별 표현 특징들 (206A, 206B, 208A, 및 208B) 은 표현들 (212A, 212B, 222A, 222B) 중 개별적인 각각에 대한 비트레이트들을 나타내는 정보를 포함할 수도 있다.
표현 그룹의 표현들은, 그들의 상이한 인코딩 또는 다른 파라미터들을 가지는 동일한 콘텐츠 (동일한 비디오, 동일한 언어 오디오 등) 을 나타낼 수도 있다는 점에서 상호 배타적인 것으로 간주될 수도 있다. MPD (202) 는 표현 그룹들 (210-220) 의 하나를 선택하기 위한 정보, 예를 들어, 공통 표현 특징들 (204) 을 제공할 수도 있다. 이러한 정보는 클라이언트가 주어진 표현을 디코딩하고 렌더링할 수 있는지 여부를 표시하는 정보를 포함할 수도 있다. 이러한 방식으로, 클라이언트 디바이스는 고려사항으로부터 클라이언트 디바이스가 디코딩 및/또는 렌더링할 수 없는 표현들을 제거할 수도 있다. 이에 상응하여, 클라이언트 디바이스 (40) 는 디코딩되고 렌더링될 수 있는 적절한 표현 그룹을 선택하고, 그 뒤에 예를 들어, 네트워크 대역폭 이용가능성에 기초하여 그 그룹으로부터 표현을 선택할 수도 있다.
또한, 클라이언트 디바이스 (40) 는, 예를 들어 등급, 언어, 및/또는 깊이에 대한 사용자 선호도들로써 구성될 수도 있다. 이에 상응하여, 클라이언트 디바이스 (40) 는 또한 선택된 그룹들이 사용자 선호도들에 따르도록 하나 이상의 표현 그룹들을 선택할 수도 있다. 그러면, 클라이언트 디바이스 (40) 는 동시에 재생될 수 있는 가용 표현 그룹들의 서브세트를 선택할 수도 있다. 클라이언트 디바이스 (40) 가 하나의 뷰만을 디스플레이할 수 있는 경우에는, 클라이언트 디바이스 (40) 는 데이터를 하나의 표현으로부터만 취출하도록 선택할 수도 있다. 반면에, 클라이언트 디바이스 (40) 가 스테레오 뷰 또는 다중뷰가 가능하다면, 클라이언트 디바이스 (40) 는 데이터를 두 개 이상 표현들로부터 취출할 수도 있다.
하나 이상의 표현 그룹들을 선택한 이후에, 클라이언트 디바이스 (40) 는 표현들을 예를 들어, 가용 네트워크 대역폭에 기초하여 표현 그룹들로부터 선택할 수도 있다. 가용 네트워크 대역폭이 변동할 때 (예를 들어, 증가하거나 감소할 때), 클라이언트 디바이스 (40) 는 표현 그룹들로부터의 표현들의 선택을 조절하여 변동하는 네트워크 대역폭 조건들에 적응할 수도 있다. 물론, 만일 사용자 선호도들 또는 디바이스 능력들 (예를 들어, 디코딩 및 렌더링 능력들) 이 변동한다면, 클라이언트 디바이스 (40) 는 또한 표현 선택들을 변동시킬 수도 있다.
공통 표현 특징들 (204) 은 몇 가지 예들에서는 MPD (202) 의 RepresentationGroup XML 엘리먼트들에 대응할 수도 있다. 개별 표현 특징들은 몇 가지 예들에서는 MPD (202) 의 대응하는 RepresentationGroup 엘리먼트들의 서브-엘리먼트들에 대응할 수도 있다.
표현들의 공통 특징들을 함께 그룹화함으로써, 다양한 최적화들이 달성될 수도 있다. 예를 들어, 많은 표현들이 다양한 파라미터들에 대한 동일한 값들을 가질 수도 있다. 따라서, 개별적으로 MPD 내에서 특징들을 시그널링하는 것은, 특징들을 개별적으로 시그널링하기 위한 MPD 내의 실질적인 중복을 초래할 수도 있다. 많은 클라이언트 디바이스들은 수신된 MPD의 상당량의 다수를 폐기하도록 구성될 수도 있다. 그러므로, 클라이언트 디바이스가 수신한 MPD의 일부 내에 최적화가 존재할 수도 있다. 더욱이, 만일 표현 그룹이 폐기된다면, 클라이언트 디바이스는 폐기된 표현 또는 표현 그룹에 대한, MPD 내에 현재 존재하는 정보 (URL들 등) 에 액세스할 필요가 전혀 없을 수도 있다. 또한, 클라이언트 디바이스는, 예를 들어 생방송 이벤트들에 대한 비디오 데이터의 실-시간 네트워크 스트리밍 도중에 빈번하게 업데이트되는 경향이 있는 URL들의 불필요한 업데이트들을 회피할 수도 있다. MPD 내의 리던던시들이 제거된다고 하더라도, 클라이언트 디바이스 (40) 는 여전히 수신 및 재구성 이후에 전체 MPD를 파싱 (parse) 할 필요가 있는데, 이것이 컴퓨팅 시간의 현저한 양을 낭비할 수도 있다.
도 5 는 그 내부에서 MPD 데이터가 다양한 표현 그룹들에 대한 다양한 부분들로 분할된 다른 예시적인 멀티미디어 콘텐츠 (250) 를 예시하는 개념도이다. 멀티미디어 콘텐츠 (250) 는 멀티미디어 콘텐츠 (64) (도 1), 또는 메모리 (62) 내에 저장된 다른 멀티미디어 콘텐츠에 대응할 수도 있다. 특히, 멀티미디어 콘텐츠 (250) 에 대한 매니페스트 파일은 MPD 부분 (252) 을 포함하는데, 이것은 일반적으로 표현 그룹들에 관련된 데이터를 포함한다. 이러한 예에서는, MPD 부분 (252) 은 표현 그룹 데이터 (254A 및 254B ; 표현 그룹 데이터 (254)) 를 포함하는데, 이것은 표현 그룹 데이터 (254) 로부터 개별 표현 그룹들 (270-280) 을 가리키는 화살표에 의하여 예시된 바와 같이, 개별 표현 그룹들 (270-280) 에 대응한다.
이러한 예에서는, 표현 그룹 데이터 (254A) 는 표현 그룹 공통 특징들 (256A) 및 표현 그룹에 대한 MPD 부분의 위치 (258A) 를 포함한다. 즉, 표현 그룹에 대한 MPD 부분의 위치 (258A) 는 표현 그룹에 대한 MPD 부분 (260A) 의 위치를 표시한다. 예를 들어, 표현 그룹에 대한 MPD 부분의 위치 (258A) 는 표현 그룹에 대한 MPD 부분 (260A) 의 URI 또는 URL에 대응할 수도 있다. 이와 유사하게, 표현 그룹 데이터 (254B) 는 표현 그룹 공통 특징들 (256B) 및 표현 그룹에 대한 MPD 부분 (260B) 에 대응하는, 표현 그룹에 대한 MPD 부분의 위치 (258B) 를 포함한다.
표현 그룹에 대한 MPD 부분 (260A) 은 표현 그룹 (270) 의 특정 표현들 (272A, 272B ; 표현들 (272)) 의 특징들의 특징을 나타내는 정보를 포함한다. 이와 유사하게, 표현 그룹에 대한 MPD 부분 (260B) 은 표현 그룹 (280) 의 특정 표현들 (282A, 282B ; 표현들 (282)) 의 특징들을 나타내는 정보를 포함한다.
이러한 방식으로, 클라이언트 디바이스, 예컨대 클라이언트 디바이스 (40) 는 클라이언트 디바이스 (40) 가 취출, 디코딩, 및 디스플레이하지 않을 표현들에 대한 표현-특이적 시그널링 데이터를 수신하지 않고서, 데이터를 취출할 소스가 되는 적합한 표현 그룹을 결정할 수도 있다. 이에 상응하여, 클라이언트 디바이스 (40) 는 그렇지 않을 경우 단지 폐기될 것인 과도한 데이터의 취출을 회피할 수도 있다. 특히, 클라이언트 디바이스 (40) 에 의하여 디코딩되고 렌더링될 수 있는 표현들을 포함하는 하나 이상의 표현 그룹들을 선택한 이후에, 클라이언트 디바이스 (40) 는, 클라이언트 디바이스 (40) 에 의하여 적절하게 디코딩되고 및/또는 렌더링될 수 없는 표현 그룹들에 대한 MPD 부분들을 취출하지 않고서 선택된 표현 그룹들에 대한 MPD 부분들만을 취출할 수도 있다.
멀티미디어 콘텐츠 (250) 의 데이터는 일반적으로 멀티미디어 콘텐츠 (200) 의 개별 엘리먼트들에 실질적으로 대응할 수도 있다. 그러나, 멀티미디어 콘텐츠 (250) 는 클라이언트 디바이스들에 의한 멀티미디어 콘텐츠 (250) 에 대한 MPD 데이터의 계층적 다운로드를 단순화할 수도 있다. 예를 들어, 모든 표현들에 대한 시그널링 데이터를 포함할 수도 있는 전체 매니페스트 파일을 취출하는 것이 아니라, 클라이언트 디바이스는 단순하게 하나 이상의 표현 그룹들을 결정하고, (예를 들어, 클라이언트 디바이스가 표현들을 디코딩하고 디스플레이할 디코딩 및/또는 렌더링 프로시져들을 지원하지 않기 때문에) 클라이언트 디바이스에 의하여 취출되지 않을 다른 표현 그룹들에 대응하는 MPD 부분들을 취출하지 않고, 이러한 표현 그룹들에 대응하는 MPD 부분들을 취출할 수도 있다. 이러한 방식으로, 멀티미디어 콘텐츠 (250) 의 데이터는 불필요한 다운로딩 및 파싱의 비효율성을 완화할 수도 있다.
아래의 표 2 는 표현 그룹들의 특징들을 기술하는 MPD, 예컨대 도 4 의 MPD (202) 및/또는 도 5 의 MPD 부분 (252) 에 추가될 수 있는 하나의 예시적인 엘리먼트를 제공한다. 공통 표현 특징들 (204;도 4) 및/또는 표현 그룹 공통 특징들 (256) 은 표 2 의 구조에 따라서 포매팅될 수도 있다.
RepresentationGroup | E | 1..N | M | 이 엘리먼트는 Representation Group 의 디스크립션을 포함한다 |
RepresentationGroupAttributes | 엘리먼트들 및 속성들의 목록 | 이 그룹에 대한 디폴트들을 기술한다. 프로파일 정보를 포함할 수도 있다. | ||
Representation | E | 0..N | O | 이 엘리먼트는 Representation의 디스크립션을 포함한다. |
RepresentationAttributes | 엘리먼트들 및 속성들의 목록 | 0,1 | O | 이 Representation 에 대하여 특정한 Representation 속성들을 기술한다. |
representationListURI | A | 0..N | O | Representation들의 목록을 포함하는 문서를 가리키는 URI. |
아래의 XML 은 MPD 데이터 구조의 Representation Group 엘리먼트들의 예들을 제공한다:
아래의 표 3 은 표현들에 대하여 포함될 수도 있는 데이터의 하나의 예시적인 세트를 제공한다. 이 데이터는 몇 가지 예들에서는 개별 표현들에 대하여 제공될 수도 있으며, 반면에 다른 예들에서는, 데이터의 전부 또는 일부가, 예를 들어 위의 도 2 에 따르는 표현 그룹들에 대하여 제공될 수도 있다.
Representation | E | 1..N | M | 이 엘리먼트는 Representation의 디스크립션을 포함한다. |
bandwidth | A | M | 정확히 minBufferTime 동안 버퍼링한 이후에, 클라이언트가 연속적인 재생을 위하여 충분한 데이터를 가지도록, 표현이 전달될 수 있는, 초당 비트수 (bps) 로 표시된 가설적으로 일정한 비트레이트 채널의 최소 대역폭. | |
texttype | A | O | 텍스트의 타입을 식별함. 옵션들은 다음과 같다: sub-title closed-captioning <other to be identified> |
|
cameraangle | A | O | 카메라 각도를 제공한다. 순수한 주석, 예컨대 메인, 미드-필드 플레이어 뷰 |
|
Rating | E | 0…N | 등급 정보를 제공한다 | |
SchemeInformation | E | 0,1 | O | 이 엘리먼트는 이용된 등급 방식에 대한 정보를 제공한다. 엘리먼트는 더 많은 방식 특정 정보를 제공하도록 확장될 수 있다. |
schemeIdUri | A | O | 방식을 식별하기 위한 절대 URL을 제공한다. 이 엘리먼트의 정의는 등급을 위하여 채택된 방식에 특정된다. |
몇 가지 예들에서는, 표현 그룹들에 대한 데이터 및 이러한 그룹들 내의 개별 표현들에 대한 데이터가 계층적 관련성을 가지고 MPD, 예컨대 MPD (202) 내에 제공될 수도 있다. 즉, 개별 표현들은, 예를 들어 MPD (202) 의 대응하는 표현 그룹 엘리먼트에 대한 자식 엘리먼트들로서 시그널링될 수도 있다. 이와 유사하게, MPD 부분 (252) 및 표현 그룹들 (260) 에 대한 MPD 부분들에 대하여, 개별 표현 특징들 (262, 264) 은 표현 그룹 공통 특징들 (256) 의 자식 엘리먼트들에 대응할 수도 있다.
도 6 은 트릭 모드들을 지원하기 위하여 이용될 수도 있는 다른 예시적인 멀티미디어 콘텐츠 (300) 를 예시하는 개념도이다. 멀티미디어 콘텐츠 (300) 는 멀티미디어 콘텐츠 (64) (도 1), 또는 메모리 (62) 내에 저장된 다른 멀티미디어 콘텐츠에 대응할 수도 있다. 이러한 예에서는, MPD (302) 는 표현 정보 (304) 를 포함하는데, 이것은 시간적 서브-시퀀스 정보 (306) 를 포함할 수도 있다. 표현 정보 (304) 는, 이러한 예에서는 표현 (310) 의 특징들을 포함한다. 표현 (310) 은 세그먼트들 (312A-312D ; 세그먼트들 (312)) 을 포함한다. 이러한 예에서는, 세그먼트들 (312) 의 각각은 개별 서브-프래그먼트 인덱스 박스 (314) 및 랜덤 액세스 포인트 (RAP) 데이터 (316) 를 포함한다. 다른 예들에서는, 어떤 세그먼트들은 랜덤 액세스 포인트들을 포함하지 않을 수도 있는 반면에, 어떤 세그먼트들은 다중 랜덤 액세스 포인트들을 포함할 수도 있다. 랜덤 액세스 포인트들은 IDR 또는 ODR 픽쳐들을 포함할 수도 있다.
클라이언트 디바이스 (40) 는 표현 (310) 으로부터 시간적 서브-시퀀스를 추출할 수도 있다. 예를 들어, 클라이언트 디바이스 (40) 는 RAP들 (316) 의 각각을 추출하여 표현 (310) 의 시간적 서브-시퀀스를 형성할 수도 있다. 대안적으로는, 클라이언트 디바이스 (40) 는 RAP들 (316) 의 서브세트, 예컨대 RAP들 (316A 및 316C), 또는 RAP들 (316A 및 316D) 을 취출할 수도 있다. 랜덤 액세스 포인트들 (316) (또는 그들의 서브세트들) 만을 취출하고 재생함으로써, 클라이언트 디바이스 (40) 는 표현 (310) 을 트릭 모드에서, 예를 들어, 패스트 포워드 또는 리와인드에서 재생할 수도 있다. 이와 유사하게, 클라이언트 디바이스 (40) 는 랜덤 액세스 포인트들 (316) 중 특정한 하나로 스킵하거나 검색함으로써 요청된 시간적 위치로부터의 재생을 개시할 수도 있다.
멀티미디어 콘텐츠는 트릭 모드들에 대한 정보를 표시하기 위한 시간적 서브-시퀀스 정보 (306) 및/또는 SFIX 박스들 (314) 중 하나 또는 모두를 포함할 수도 있다. 시간적 서브-시퀀스 정보 (306) 는 MPD (302) 의 "Trick Mode" 엘리먼트, 예컨대 아래에서 표 4 에 의하여 정의되는 것을 포함할 수도 있다:
TrickMode | E | 0, 1 | O | 트릭 모드에 대한 정보를 제공한다. 또한 이것은 Representation이 트릭 모드 Representation 으로서 이용될 수도 있다는 것을 표시한다. |
alternatePlayoutRate | A | O | 일반 재생 레이트와 동일한 디코더 프로파일 및 레벨 요구 조건들과 함께 이 Representation이 지원하는, 최대 재생 레이트를 정규 재생 레이트의 배수로서 규정한다. | |
TemporalSubSequence | E | 0…N | O | 이 Representation이 서브-프레그먼트 인덱스 (sfix) 박스의 정보를 이용하여 바이트 범위들에 의하여 용이하게 액세스될 수 있는 시간적 서브-시퀀스를 포함한다고 규정한다. |
frameRate | A | M | 시간적 서브-시퀀스의 프레임 레이트를 규정한다. | |
bandwidth | A | O | 정확히 minBufferTime 동안 버퍼링한 이후에 클라이언트가 연속적인 재생을 위하여 충분한 데이터를 가지도록, 시간적 서브-시퀀스가 전달될 수 있는 가설적으로 일정한 비트레이트 채널의 초당 비트수 (bps) 로 표시된 최소 대역폭을 규정한다. | |
alternatePlayoutRate | A | O | 일반 재생 레이트와 같은 디코더 프로파일 및 레벨 요구 조건들과 함께 이 시간적 서브-시퀀스가 지원하는, 최대 재생 레이트를 정규 재생 레이트의 배수로서 규정한다. |
표 4 의 예에서, Trick Mode 엘리먼트는, 대응하는 표현이 서브-프래그먼트 인덱스 박스들 (314) 의 정보를 이용하여 바이트 범위들에 의하여 액세스될 수 있는 시간적 서브-시퀀스를 포함한다는 것을 규정하는 Temporal SubSequence 엘리먼트를 포함한다. RAP들 (316) 은 무비 프래그먼트들의 부분들, 도 3 에 예시된 예컨대 무비 프래그먼트들 (162) 에 대응할 수도 있다.
서브-프래그먼트 인덱스 박스들 (314) 은 일반적으로 대응하는 세그먼트들 (312) 의 랜덤 액세스 포인트들 (316) 의 바이트 범위 위치들을 기술할 수도 있다. 일반적으로, 서브-프래그먼트 인덱스 박스들 (314) 은 세그먼트들 (312) 의 세그먼트 인덱스 (SIDX) 박스 (도 6 에는 미도시) 이후에 나타나며, 그리고 바로 선행하는 세그먼트 인덱스 박스에서 참조된 무비 프래그먼트들에 대한 무비 프래그먼트 프리픽스 크기들을 제공할 수도 있다. 아래의 표 5 는 예시적인 SFIX 박스의 속성들을 제공한다.
박스 타입 | SFIX |
컨테이너 | 없음 |
필수여부 | 아님 |
양 | 세그먼트 인덱스 박스 당 1 |
아래의 의사코드는 서브-프래그먼트 인덱스 박스들 (314) 에 대한 예시적인 구문을 제공한다:
아래의 기술은 위에서 설명된 구문에 대한 의미론들의 하나의 예시적인 세트를 제공한다:
fragment_count 는 이 박스 내에서 서브-프래그먼트 정보가 규정된 대상이 되는 프래그먼트들의 개수를 규정한다. 이것은 바로 선행하는 세그먼트 인덱스 박스 내의 프래그먼트 참조들의 개수와 동일해야 한다.
sub_fragment_count 는 프래그먼트 당 서브-프래그먼트들의 개수를 규정한다.
prefix_size 는 서브-프래그먼트 j 에 의하여 점유된 프래그먼트 i 의 프리픽스의 크기를 규정한다.
이에 부가하거나 대안적으로, 서브-트랙 프래그먼트 박스는 세그먼트들 (312) 내에 포함될 수도 있다. 서브-프래그먼트 인덱스 박스가 미디어 데이터를 요청하기 이전의 세그먼트 인덱스 박스와 함께 클라이언트 디바이스 (40) 에 의하여 취출될 수 있는 구문 정보를 제공할 수도 있는 반면에, 서브-프래그먼트 인덱스 박스는 클라이언트 디바이스 (40) 가 프래그먼트 데이터의 서브세트들, 예를 들어, 시간적 서브-층들을 타게팅하는 바이트 범위 요청들을 구성하기 위한 정보를 제공할 수도 있다.
Sub-Track Fragment 박스는 트랙 프래그먼트의 샘플 데이터의 재-순서 결정을 규정함으로써, 각각의 서브-트랙 프래그먼트의 샘플들이 더 높은 서브-트랙 프래그먼트들에서만 발생하는 모든 샘플들을 선행하도록 할 수도 있다. 임의의 더 낮은 서브-트랙 프래그먼트 내에서 발생하지 않는 서브-트랙 프래그먼트의 샘플들은 그들이 Track Run 박스에서 발생한 것과 동일한 순서로 그 파일 (예를 들어, 세그먼트들 (312) 의 대응하는 하나) 내에서 근접하도록 배치될 수도 있다. 이것이 샘플들이 트랙 프래그먼트 내에서 시간적 확장가능성 (scalability) 계층의 순서로 저장되도록 허용할 수도 있다. 이 박스가 존재한다면 오직 하나의 Track Run 박스가 존재할 수도 있다.
표 6 은 서브-트랙 프래그먼트 박스의 속성들을 기술한다:
박스 타입 | STRF |
컨테이너 | 트랙 프래그먼트 박스 ("TRAF") |
필수여부 | 아님 |
양 | 0 또는 1 |
아래의 의사코드는 서브-트랙 프래그먼트 박스에 대한 하나의 예시적인 구문을 예시한다:
아래의 기술은 위에서 기술된 서브-트랙 프래그먼트 박스의 예시적인 구문에 대한 예시적인 의미론들을 제공한다:
sub _ track _ count 는 서브-트랙 프래그먼트들의 개수를 표시한다; 이 박스가 존재하면, sub_track_count 는 2 이상일 수 있다.
sample _ count [i] 는 i+1 의 인덱스를 가지는 서브-트랙 프래그먼트 내의 샘플들의 개수를 표시한다. 서브-트랙 프래그먼트의 샘플들은 더 작은 인덱스 값들을 가지는 모든 서브-트랙 프래그먼트들의 멤버들인 것으로 간주된다. 서브-트랙 프래그먼트 0 에서 샘플들의 개수는 후속 루프 내의 제 1 비트스트링의 0 들의 개수와 등가이다. sub_track_count-1 의 인덱스를 가지는 서브-트랙 프래그먼트 내의 샘플들의 개수는 sample_count[sub_track_count-1]이며, 이것은 Track Fragment 내의 샘플들의 개수와 동일하다.
외부 루프의 반복 (iteration) i 에서 1 과 동일한 cur _ sub _ track _ flag 는 샘플이 i+1 의 인덱스를 가지는 서브-트랙 프래그먼트에 속한다는 것을 표시한다. 외부 루프의 반복에서 0 과 동일한 이러한 값은 샘플이 i+1 보다 작은 인덱스를 가지는 서브-트랙 프래그먼트에 속한다는 것을 표시한다. 주의: 즉, 루프의 제 1 반복은, 서브-트랙-프래그먼트 0 내에도 존재하지 않는 서브-트랙-프래그먼트 1 의 샘플들의 포지션들을 표시하는 sample_count[0] 프래그들을 포함한다. 루프의 제 2 반복은, 서브-트랙-프래그먼트 1 등 내에도 존재하지 않는 서브-트랙-프래그먼트 2 의 샘플들의 포지션들을 표시하는 sample_count[1] 프래그들을 포함하는 등으로 진행한다. sample_count[sub_track_count-1] 는 Track Fragment 내의 샘플들의 개수와 동일하다고 간주된다.
트릭 모드들은 다양한 상이한 시나리오들에 적용될 수도 있다. 예를 들어, 트릭 모드들은 (예를 들어, 재생이 차단되거나 또는 특정 원하는 시간적 포지션을 탐색하기 위하여) 서비스를 순간적으로 일시 정지시키거나, 일시 정지 이후에 서비스를 재개하거나, 일정 기간 동안 리와인드 하거나, 그리고/또는 원하는 시간적 포지션으로 진행하기 위해 패스트 포워드하도록 이용될 수도 있다.
시간적 서브시퀀스들을 이용하여 트릭 모드들을 지원하는 것은 다수의 이점들을 제공할 수도 있다. 예를 들어, 시간적 서브시퀀스들은 다양한 프레임 레이트들을 상대적으로 용이하게 지원할 수도 있다. 이와 유사하게, 시간적 서브시퀀스를 포함하는 표현은, 그 표현이 그 시간적 서브-시퀀스로 제한되지 않기 때문에 정규 재생을 위하여 이용될 수도 있다. 더욱이, 시간적 서브시퀀스들을 이용한 인코딩은 매우 효율적일 수도 있다. 또한, 시간적 서브시퀀스들은 임의의 새로운 코딩 프로파일들 또는 레벨들을 요구하지 않으며, 정규 표현들을 재-사용할 수 있고, 추가적인 클라이언트 복잡성을 회피하며, 단순한 콘텐츠 프로비져닝을 가능하게 하고, 대역폭, 캐시, 및 저장 효율을 제공하며, 클라이언트 구현예에 유연성을 제공하여 사용자 경험을 최적화하고, 상이한 트릭 모드 동작들 사이에서 공통일 수도 있고, 그리고 넓은 클라이언트의 스펙트럼 구현예들에 적용될 수 있을 수 있으며, 그리고 탐색 이후의 시작 지연 및 양호한 프레임 레이트들, 반응성, 및 다른 이러한 메트릭들의 관점에서 상대적으로 양호한 사용자 경험을 제공할 수 있다.
도 7 은 세그먼트들 (362A-362D) 이 MPD (352) 가 업데이트되어야 한다는 것을 표시하는 MPD 업데이트 박스들 (364) 을 포함할 수도 있는 다른 예시적인 멀티미디어 콘텐츠 (350) 를 예시하는 개념도이다. 멀티미디어 콘텐츠 (350) 는 멀티미디어 콘텐츠 (64) (도 1), 또는 메모리 (62) 내에 저장된 다른 멀티미디어 콘텐츠에 대응할 수도 있다. 일반적으로, MPD (352) 는 표현 (360) 에 대한 표현 정보 (354), 예컨대 표현 (360) 의 특징들 및 표현 (360) 의 세그먼트들 (362) 의 URI들 또는 URL들을 포함한다. 몇 가지 경우들에서는, 표현 (360) 은 생방송 콘텐츠, 예를 들어, 스포츠 이벤트로부터 형성될 수도 있고, 그러므로, 세그먼트들 (362) 의 URI들은 사전에 결정되지 않을 수도 있다. 그러므로, 표현 (360) 의 세그먼트들이 형성될 때, 하나 이상의 세그먼트들은 MPD (352) 가 업데이트되어야 한다는 것을 표시하는 MPD 업데이트 박스들을 포함할 수도 있다.
예를 들어, 도 7 에서는, 세그먼트 (362A) 가 MPD 업데이트 박스 (364) 및 세그먼트 데이터 (366A) 를 포함한다. 세그먼트 데이터 (366A) 는 일반적으로 비디오 파일 (150) (도 3) 에 따라서 형성될 수도 있다. 그러나, 세그먼트 (362A) 는 또한 MPD 업데이트 박스 (364A) 를 포함한다. 이러한 방식으로, 클라이언트 디바이스 (40) 는 MPD (352) 를 MPD 업데이트 박스 (364A) 의 데이터에 기초하여 업데이트할 수도 있다. MPD 업데이트 박스 (364A) 는 MPD (352) 로의 업데이트들을 포함할 수도 있고, 또는 MPD (352) 에 대한 업데이트의 URI 또는 URL을 포함할 수도 있다. MPD 업데이트 박스들 (364) 의 데이터가 반드시 명시적 박스들 내에 포함되어야 하는 것은 아니라는 것이 이해되어야 한다. 예를 들어, 실질적으로 MPD 업데이트 박스들 (364) 의 데이터에 따르는 데이터가 세그먼트들 (362) 의 다른 박스들 내에, 또는 세그먼트들 (362) 의 헤더 부분 내에 포함될 수도 있다. 이러한 방식으로, MPD 업데이트 정보를 포함하는 세그먼트들 (362) 의 "부분" 은 헤더 부분, MPD 업데이트 박스들 (364) 과 유사한 MPD 업데이트 박스, 또는 세그먼트들 (362) 의 하나 이상의 다른 박스들 내에 포함된 데이터에 대응할 수도 있다.
이러한 방식으로, 세그먼트 (362A) 의 데이터를 취출한 이후에, 클라이언트 디바이스 (40) 는 MPD 업데이트 박스 (364A) 를 분석하여 MPD (352) 를 업데이트할 수도 있다. 그러면, 클라이언트 디바이스 (40) 는 MPD (352) 의 업데이트된 버전을 이용하여 세그먼트들 (362B 및 362C) 을 취출할 수도 있다. 세그먼트들 (362B 및 362C) 은 세그먼트 데이터 (366B, 366C) 를 포함하는데, 이것이 다시 도 3 의 비디오 파일 (150) 에 따라서 포매팅될 수도 있다. 또한, 클라이언트 디바이스 (40) 는 세그먼트의 데이터 (362D) 를 취출할 수도 있다. 이러한 예에서는, 세그먼트 (362D) 는 MPD (352) 업데이트 박스 (364B) 를 포함하는데, 클라이언트 디바이스 (40) 는 이것을 제 1 업데이트에 실질적으로 따르는 방식으로 MPD (352) 로의 다른 업데이트를 수행하기 위하여 이용할 수도 있다. 이에 상응하여, 표현 (360) 의 세그먼트 (362D) 너머의 세그먼트들을 수신하기 위하여, 클라이언트 디바이스 (40) 는 MPD (352) 의 새롭게 업데이트된 버전을 MPD 업데이트 박스 (364B) 의 데이터에 대하여 수행된 업데이트들에 기초하여 이용할 수도 있다.
MPD 업데이트 박스, 예컨대 MPD 업데이트 박스들 (364A, 364B) 은 아래의 표 7 에 따르는 속성들을 포함할 수도 있다:
박스 타입 | MUPE |
컨테이너 | 없음 |
필수여부 | 아님 |
양 | 0 또는 1 |
다음 구문이 몇 가지 예들에서 MPD 업데이트 박스를 정의하기 위하여 이용될 수도 있다:
예시적인 MPD 업데이트 박스 구문에 대한 의미론들의 하나의 예시적인 세트가 아래에 제공된다:
mpd_information_flags 은 다음 것들의 0 개 이상의 논리적 OR 를 포함한다:
0x00 Media Presentation Description 지금 업데이트
0x01 Media Presentation Description 사전 업데이트
0x02 프리젠테이션의 종료
0x03-0x07 예비됨
만일 new_location_flag 이 1 로 설정되면, 새로운 Media Presentation Description 이 mpd_location 내에서 규정된 새로운 위치에서 이용가능하다.
latest_mpd_update_time 은 최후의 MPD의 MPD 이슈 (issue) 시간에 상대적으로 MPD 업데이트가 필요한 끝 시간을 ms 단위로 규정한다. 클라이언트는 지금부터 그 시간 사이의 임의의 시간에 MPD를 업데이트하도록 선택할 수도 있다.
mpd_location 는 new_location_flag 이 설정되고 새로운 Media Presentation Description에 대한 유니폼 리소스 로케이터를 제공할 경우, 그리고 오직 이 경우에만 존재한다.
이러한 방식으로, 세그먼트 레벨에서의 대역-내 시그널링이 MPD (302) 로의 업데이트을 표시하기 위하여 이용될 수도 있다. 몇 가지 예들에서는, 업데이트들은 세그먼트 경계들에서 제공될 수도 있다. 즉, MPD 업데이트 박스들 (364) 은 다양한 예들에서는 개별 세그먼트들의 시작들에서 또는 끝들에서만 발생할 수도 있다. 몇 가지 예들에서는, 만일 MPD의 대역폭 업데이트들이 이슈를 제공한다면, 서버 디바이스 (60) (도 1) 는 어떤 디바이스 성능들에 대한 MPD들을 제공함으로써, 이러한 부분들만이 업데이트되도록 할 수도 있다. 더욱이, MPD (302) 의 MPD 엘리먼트는 MPD (302) 의 벽-시계 시간에서 발행 시간 (publishing time) 을 제공할 수도 있다. 이것이 고유한 MPD 발행 시간을 제공할 수도 있는데, 이것이 MPD가 이슈되었으면 그 MPD에 대한 고유 식별자를 제공할 수도 있다. 또한, 이것은 업데이트 프로시져들에 대한 앵커 (anchor) 를 제공할 수도 있다. 더욱이, 서버 디바이스 (60) 및/또는 콘텐츠 준비 디바이스 (20) 는 업데이트가 필요하지 않는 MPD (302) 의 다른 부분들을 변동시키지 않으면서, 계층적 구조들을 이용하여 MPD 업데이트들을 최적화시킴으로써, 예를 들어 업데이트들을 요구하는 MPD (302) 의 부분들만을 업데이트할 수도 있다.
또한, 광고 삽입, 예컨대 타겟화된 광고 삽입이 도 7 의 그것들과 유사한 MPD 업데이트 박스들을 이용하여 수행될 수도 있다. 즉, MPD 업데이트 박스가 제공되어 클라이언트 디바이스 (40) 가 데이터를 광고 멀티미디어 콘텐츠로부터 취출하도록 디렉팅할 수도 있다. 이것은 게임의 진행을 지연시키는 스포츠 이벤트들 내의 타임아웃들 또는 다른 액션들 도중에, 그리고 이와 유사하게 비디오 재생을 위한 흥미로운 액션의 비디오 재생을 위한 타임아웃들 또는 지연들 내에서 발생할 수도 있다. 이러한 이벤트들이 다소 무작위적으로 발생할 수도 있기 때문에, 광고들이 삽입될 시간들은 선험적으로 알려지지 않을 수도 있다.
MPD (302) 의 업데이트는 세그먼트들의 전달과 동기적인 방식으로 실현 가능할 수도 있다. 서버 디바이스 (60) 는 어떤 MPD가 시간의 특정 양 동안에 업데이트되지 않을 것이라는 보장들을 클라이언트 디바이스 (40) 에게 제공할 수도 있다. 그러나, 서버 디바이스 (60) 는 최소 업데이트 기간 이전에 언제 MPD가 업데이트되는지를 명시적으로 시그널링할 필요가 없다. 클라이언트 디바이스들이 상이한 MPD 업데이트 인스턴스들에서 동작할 수 있기 때문에, 완전히 동기화된 재생은 거의 달성하기가 어려울 수도 있다. 그러므로, 클라이언트들은 드리프트 (drift) 를 경험할 수도 있다. 시간-천이 시청 (time-shift viewing) 이 서버 디바이스 (60) 및/또는 콘텐츠 준비 디바이스 (20) 에 의하여 제공할 수도 있다.
도 8 은 서버 디바이스에 의하여 표현 그룹들의 표시들을 제공하고, 그리고 클라이언트 디바이스에 의하여 표현 그룹들 및 선택된 표현 그룹 내의 개별 표현을 선택하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다. 비록 도 8 의 방법이 서버 디바이스 (60) 및 클라이언트 디바이스 (40) 에 대하여 설명되었지만, 다른 디바이스들도 도 8 의 방법의 그것들과 유사한 기법들을 구현할 수도 있다는 것이 이해되어야 한다. 예를 들어, 콘텐츠 준비 디바이스 (20), 또는 콘텐츠 전달 네트워크의 하나 이상의 네트워크 디바이스들이 서버 디바이스 (60) 로 부여된 기능들 중 일부 또는 전부를 수행할 수도 있다.
우선, 서버 디바이스 (60) 는 미디어 콘텐츠의 표현들의 세트에 대한 데이터를 획득 (예를 들어, 생성하거나 콘텐츠 준비 디바이스 (20) 로부터 수신) 할 수도 있는데, 여기서 그 세트 내의 표현들은 하나 이상의 공통 특징들, 및 그 멀티미디어 콘텐츠에 대한 매니페스트 파일을 가진다. 표현들의 세트는 하나의 표현 그룹에 대응할 수도 있다. 서버 디바이스 (60) 는 표현 그룹들의 표시들을 클라이언트 디바이스 (40) 로 제공할 수도 있다 (단계 (400)). 예를 들어, 서버 디바이스 (60) 는 MPD (202) (도 4) 또는 MPD 부분 (252) (도 5) 을 클라이언트 디바이스 (40) 로 제공할 수도 있다. 또한, 도 2, 도 6, 및 도 7 의 다른 예시적인 MPD들도 표현 그룹들의 표시들, 예컨대 표현 그룹 XML 엘리먼트들을 포함할 수도 있다. 어떠한 경우에서도, 클라이언트 디바이스 (40) 는 표현 그룹 특징들을 기술하는 정보를, 예를 들어 서버 디바이스 (60) 로부터 수신된 MPD 의 파일 또는 MPD 파일의 부분으로부터 수신할 수도 있다 (단계 (402)).
그러면, 클라이언트 디바이스 (40) 는 표현 그룹 특징들을 분석하여 클라이언트 디바이스 (40) 가 취출, 디코딩, 또는 렌더링할 수 없거나 하지 않기로 선택하는 표현 그룹들을 제거할 수도 있다. 예를 들어, 클라이언트 디바이스 (40) 는 디코딩 및 렌더링 성능들을 표현 그룹들의 특징들과 비교하여 부적합한 표현 그룹들을 결정할 수도 있다. 다른 예로서, 클라이언트 디바이스 (40) 는 언어, 등급, 및 (예를 들어, 특정 카메라 각도들을 가지는 두 개 이상의 뷰들에 의하여 제공되는 바와 같은) 깊이의 양에 대한 사용자 선호도들을 비교하여, 원하지 않는 표현 그룹들을 제거할 수도 있다. 그러면, 클라이언트 디바이스 (40) 는 적합한 표현 그룹을 적어도 부분적으로 클라이언트 디바이스 (40) 의 디코딩 및 렌더링 성능들에 기초하여 선택할 수도 있다 (단계 (404)). 물론, 이러한 선택도 또한 (추가적으로 또는 대안적으로) 위에서 논의된 바와 같은 사용자 선호도들에 기초하여 이루어질 수도 있다는 것이 이해되어야 한다. 이러한 방식으로, 클라이언트 디바이스 (40) 는 표현들의 세트에 대한 공통 특징들에 기초하여 표현들의 세트를 선택할 수도 있다.
표현 그룹을 선택한 이후에, 클라이언트 디바이스 (40) 는 그 표현 그룹의 표현들을 구체적으로 기술하는 MPD 부분에 대한 데이터를 요청할 수도 있다. 이에 응답하여, 서버 디바이스 (60) 는 선택된 표현 그룹 내의 표현 비트레이트들의 표시들을 다른 개별 표현 특징들 사이에서 클라이언트 디바이스 (40) 로 제공할 수도 있다 (단계 (406)). 예를 들어, 서버 디바이스 (60) 는 표현 그룹들 (260) (도 5) 에 대한 MPD 부분들 중 특정한 하나에 대한 데이터를 클라이언트 디바이스 (40) 로 전송할 수도 있다. 다른 예들에서는, 클라이언트 디바이스 (40) 는 멀티미디어 콘텐츠에 대한 전체 MPD (예를 들어, 도 4 의 MPD (202)) 를 이미 수신했을 수도 있지만, 하지만 선택된 표현 그룹에 특정하게 대응하는 MPD의 부분들을 특정하게 분석할 수도 있다. 이러한 방식으로, 몇 가지 예들에서는, 도 8 의 단계 (406) 는 단계 (402) 및/또는 단계 (404) 이전에 발생할 수도 있다.
어떠한 경우에서도, 표현들에 대한 비트레이트들을 포함하는, 선택된 표현 그룹의 표현들에 특정한 특징을 수신한 이후에 (단계 (408)), 클라이언트 디바이스 (40) 는 현재 가용 네트워크 대역폭의 양을 결정할 수도 있다 (단계 (410)). 그러면, 클라이언트 디바이스 (40) 는 선택된 표현 그룹으로부터의 표현을 선택함으로써 (단계 (412)), 선택된 표현이 네트워크 대역폭의 결정된 현재 가용 양에 의하여 수용될 수 있는 비트레이트를 가지도록 할 수도 있다. 표현들의 비트레이트들은 표현 그룹 내의 개별 표현들의 코딩 특징들의 예들을 나타낸다. 그러면, 클라이언트 디바이스 (40) 는 선택된 표현의 데이터를 요청할 수도 있다 (단계 (414)). 예를 들어, 클라이언트 디바이스 (40) 는 선택된 표현의 일 세그먼트를 요청하기 위한 HTTP GET 요청을 구성 (예를 들어, 생성 및 전송) 할 수도 있다. 대안적으로는, 클라이언트 디바이스 (40) 는 선택된 표현의 일 세그먼트의 바이트 범위를 규정하는 HTTP 부분 GET을 구성할 수도 있다. 어떠한 경우에서도, 클라이언트 디바이스 (40) 는 요청을 서버 디바이스 (60) 로 제출할 수도 있다.
서버 디바이스 (60) 는 요청을 수신하고, 그리고 이에 응답하여, 요청된 데이터를 클라이언트 디바이스 (40) 로 전송할 수도 있다 (단계 (416)). 예를 들어, 요청 처리 유닛 (70) 은 수신된 요청의 데이터, 예를 들어, 수신된 요청의 소스 인터넷 프로토콜 (IP) 주소 및 소스 포트로부터 클라이언트 디바이스 (40) 의 네트워크 어드레스를 결정할 수도 있다. 요청 처리 유닛 (70) 은 요청된 데이터를 포함하는 네트워크 패킷들을 형성하고 그리고 요청된 데이터를 클라이언트 디바이스 (40) 로, 예를 들어 클라이언트 디바이스 (40) 의 결정된 IP 어드레스에 대하여 목적지가 결정된 것으로 전송할 수도 있다.
요청된 데이터를 수신한 이후에, 클라이언트 디바이스는 수신된 데이터의 디코딩 및 디스플레이를 시작할 수도 있다 (단계 (418)). 요청된 데이터를 수신하는 동안에, 클라이언트 디바이스 (40) 는 현재 가용 네트워크 대역폭의 분석 및 네트워크 대역폭의 현재 가용 양에 의하여 수용될 수 있는 비트레이트들을 가지는 표현들로부터의 요청들의 제출을 계속할 수도 있다 (단계 (410-414)). 만일 네트워크 대역폭의 양이 변동하면, 클라이언트 디바이스 (40) 는 적응적으로 선택된 표현 그룹 내의 상이한 표현으로 스위칭할 수도 있다. 예를 들어, 클라이언트 디바이스 (40) 는 표현 그룹 내의 이전 표현으로부터 요청된 마지막 세그먼트의 시간적 위치에 대응하는, 새로운 표현 내의 세그먼트를 결정하고, 그리고 새로운 표현 내의 결정된 세그먼트 (또는 그의 일부) 를 요청할 수도 있다.
몇 가지 예들에서는, 서버 디바이스 (60) 는 도 8 의 방법 도중에 타겟화된 광고 삽입에 대응하는 MPD를 클라이언트 디바이스 (40) 로 제공할 수도 있다. MPD 는 클라이언트 디바이스 (40) 로 하여금 클라이언트 디바이스 (40) 의 사용자에게 타겟화된 광고 멀티미디어 데이터를 취출하게 할 수도 있다. 몇 가지 예들에서는, 클라이언트 디바이스는 더 나아가 사용자 정보를 서버 디바이스 (60) 로 제공함으로써 광고 미디어 데이터를 클라이언트 디바이스 (40) 의 사용자에게 타겟화할 수도 있다. 사용자 정보는 사용자 선호도들, 사용자 식별 정보 (예컨대 사용자 ID), 사용자 데모그래픽 정보, 또는 다른 이러한 정보를 포함할 수도 있다. 타겟화된 광고 삽입은, 예를 들어 도 8 의 단계 (400) 이전에, 또는 단계 (418) 이후에, 그리고, 예를 들어 멀티미디어 콘텐츠의 후속 기간에 대한 후속 표현을 선택 이전에 발생할 수도 있다.
이러한 방식으로, 도 8 의 방법은 멀티미디어 콘텐츠에 대한 매니페스트 파일의 적어도 일부를 분석하는 단계로서, 매니페스트 파일의 일부는 멀티미디어 콘텐츠의 표현들의 세트들을 표시하는 정보 및 표현들의 세트들 각각에 대한 공통 특징들을 표시하는 정보를 포함하는, 분석하는 단계, 표현들의 세트들 중 하나에 대한 공통 특징들에 기초하여 표현들의 세트들 중 하나를 선택하는 단계, 세트들 중 선택된 하나의 표현들 중 하나의 하나 이상의 코딩 특징들에 기초하여 표현들의 세트들 중 하나의 표현들 중 하나를 선택하는 단계, 및 선택에 기초하여 표현들 중 하나의 데이터에 대한 요청을 생성하는 단계를 포함하는 방법의 일 예를 나타낸다.
이와 유사하게, 도 8 의 방법은 하나 이상의 공통 특징들을 가지는 멀티미디어 콘텐츠의 표현들의 세트를 획득하는 단계로서, 세트 내의 표현들 각각은 공통 특징들로부터 분리되는 개별 코딩 특징들을 가지는, 표현들의 세트를 획득하는 단계, 멀티미디어 콘텐츠에 대한 매니페스트 파일을 획득하는 단계로서, 매니페스트 파일은 세트 내의 표현들을 표시하는 정보, 표현들의 세트에 대한 공통 특징들을 표시하는 정보, 및 세트 내의 표현들 각각에 대한 코딩 특징들을 표시하는 정보를 포함하는, 매니페스트 파일을 획득하는 단계, 및 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하는 단계를 포함하는 방법의 일 예를 나타낸다.
도 9 는 서버 디바이스에 의하여 트릭 모드를 나타내는 데이터를 제공하고, 그리고 클라이언트 디바이스에 의하여 이 데이터를 이용해서 멀티미디어 콘텐츠의 트릭 모드 데이터를 취출하고 재생하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다. 비록 도 9 의 방법이 서버 디바이스 (60) 및 클라이언트 디바이스 (40) 에 대하여 설명되었지만, 다른 디바이스들도 도 9 의 방법의 그것들과 유사한 기법들을 구현할 수도 있다는 것이 이해되어야 한다. 예를 들어, 콘텐츠 준비 디바이스 (20), 또는 콘텐츠 전달 네트워크의 하나 이상의 네트워크 디바이스들이 서버 디바이스 (60) 로 부여된 기능들 중 일부 또는 전부를 수행할 수도 있다. 더욱이, 트릭 모드의 선택은 위의 도 8 에 대하여 설명된 바와 같은 표현 그룹 및 그 표현 그룹으로부터의 표현의 선택과 결합하여 수행될 수도 있다.
서버 디바이스 (60) 는 먼저 멀티미디어 콘텐츠의 하나 이상의 표현들에 대한 데이터를 획득 (예를 들어, 생성하거나 콘텐츠 준비 디바이스 (20) 로부터 수신) 할 수도 있는데, 여기서 이 표현들 중 적어도 하나는 시간적 서브-시퀀스 및 그 멀티미디어 콘텐츠에 대한 매니페스트 파일을 포함한다. 매니페스트 파일은 그 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시할 수도 있다. 서버 디바이스 (60) 는 멀티미디어 콘텐츠의 표현들의 표시들, 예를 들어 표현들의 특징들을 클라이언트 디바이스 (40) 로 제공할 수도 있다 (단계 (430)). 또한, 서버 디바이스 (60) 는 하나 이상의 표현들의 시간적 서브-시퀀스들의 표시들을 제공할 수도 있다 (단계 (432)). 즉, 서버 디바이스 (60) 는 멀티미디어 콘텐츠에 대한 MPD 파일 내에 시간적 서브-시퀀스들이 멀티미디어 콘텐츠의 하나 이상의 표현들에 대하여 이용 가능하다는 것을 표시하는 정보를 제공할 수도 있다. 예를 들어, 서버 디바이스 (60) 는 위의 도 6 에 대하여 설명된 바와 같은 시간적 서브-시퀀스 서브-엘리먼트를 가지는 트릭 모드 엘리먼트를 포함하는 MPD의 적어도 일부를 클라이언트 디바이스 (40) 로 제공할 수도 있다.
클라이언트 디바이스 (40) 는 멀티미디어 콘텐츠의 표현들의 특징들에 기초하여 한 표현을 선택할 수도 있다 (단계 (434)). 비록 클라이언트 디바이스 (40) 가 시간적 서브-시퀀스를 가지는 표현을 반드시 선택할 필요가 있는 것은 아니지만, 이러한 기법들을 예시하려는 논의의 목적들을 위하여, 클라이언트 디바이스 (40) 가 예시의 목적들을 위하여 그에 대하여 시간적 서브-시퀀스가 이용 가능한 표현을 선택한다는 것이 가정된다. 그러면, 클라이언트 디바이스 (40) 는 트릭 모드를 이용하려는 요청을 수신할 수도 있다 (단계 (436)). 예를 들어, 클라이언트 디바이스 (40) 는 재생을 시작할 소스가 되는 특정 시간적 위치의 선택을, 예를 들어 클라이언트 디바이스 (40) 의 사용자로부터 수신할 수도 있다. 대안적으로는, 클라이언트 디바이스는 비디오 데이터를 패스트 포워드 또는 리와인드하려는 요청을 수신할 수도 있다.
트릭 모드를 이용하려는 요청에 응답하여, 클라이언트 디바이스 (40) 는 그 표현에 대한 시간적 서브-시퀀스가 이용 가능한지 여부를 결정하고, 그리고 만일 그러하다면, 그 시간적 서브-시퀀스의 적어도 일부를 취출하기 위한 데이터를 요청하도록 결정할 수도 있다 (단계 (438)). 서버 디바이스 (60) 는 시간적 서브-시퀀스에 대한 데이터의 위치들의 표시들을 클라이언트 디바이스 (40) 로 제공함으로써 요청에 대해 응답할 수도 있다 (단계 (440)). 몇 가지 예들에서는, 멀티미디어 콘텐츠에 대한 MPD의 일부가 시간적 서브-시퀀스에 대한 데이터의 위치들을 표시할 수도 있다. 다른 예들에서는, 클라이언트 디바이스 (40) 는 대응하는 표현의 세그먼트들 로부터 서브-프래그먼트 인덱스 박스들 및/또는 서브-트랙 프래그먼트 박스들을 요청할 수도 있다.
어떠한 경우에서도, 클라이언트 디바이스 (40) 는 시간적 서브-시퀀스에 대한 데이터의 위치들을 표시하는 정보를 포함하는 수신된 데이터를 이용하여 그 시간적 서브-시퀀스의 데이터를 특정된 위치들로부터 요청할 수도 있다 (단계 (442)). 예를 들어, 클라이언트 디바이스 (40) 는 IDR 랜덤 액세스 포인트들 및/또는 ODR 랜덤 액세스 포인트들을 포함하는 위치들 (예를 들어, 세그먼트들의 URL들 및, 가능하게는 세그먼트들의, 바이트 범위들) 을 결정할 수도 있다. 그러면, 클라이언트 디바이스 (40) 는 트릭 모드에 따라서 비디오 데이터를 재생하기 위하여, 시간적 서브-시퀀스의 데이터에 대한 HTTP GET 또는 부분 GET 요청들을 구성할 수도 있다.
HTTP GET 및/또는 부분 GET 요청들을 클라이언트 디바이스 (40) 로부터 수신한 이후에, 서버 디바이스 (60) 는 요청된 데이터를 클라이언트 디바이스 (40) 로 제공할 수도 있다 (단계 (444)). 예를 들어, 서버 디바이스 (60) 는 세그먼트들을 HTTP GET 요청들에 응답하여 또는 세그먼트들의 미디어 프래그먼트들 (또는 미디어 프래그먼트들의 부분들) 을 HTTP 부분 GET 요청들에 응답하여 전송할 수도 있다. 요청된 데이터를 수신한 이후에, 클라이언트 디바이스 (40) 는 수신된 데이터를 디코딩하고 디스플레이할 수도 있다 (단계 (446)). 이와 유사하게, 클라이언트 디바이스 (40) 는 그 표현 (또는 가용 네트워크 대역폭이 변동할 경우에는 상이한 표현) 으로부터 데이터를 계속 요청할 수도 있다.
이러한 방식으로, 도 9 의 방법은, 멀티미디어 콘텐츠에 대한 매니페스트 파일의 정보를 분석하는 단계로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 정보를 분석하는 단계, 시간적 서브-시퀀스에 대한 데이터의 하나 이상의 위치들을 결정하는 단계, 및 시간적 서브-시퀀스에 대한 데이터에 대한 하나 이상의 요청들을 제출하는 단계를 포함하는, 방법의 일 예를 나타낸다.
이와 유사하게, 도 9 의 방법은, 시간적 서브-시퀀스를 포함하는 멀티미디어 콘텐츠의 적어도 하나의 표현에 대한 데이터를 획득하는 단계, 멀티미디어 콘텐츠에 대한 매니페스트 파일에 대하여 정보를 분석하는 단계로서, 매니페스트 파일의 정보는 멀티미디어 콘텐츠의 적어도 하나의 표현이 시간적 서브-시퀀스를 포함한다는 것을 표시하는, 정보를 분석하는 단계, 및 매니페스트 파일의 적어도 일부를 클라이언트 디바이스로 전송하는 단계를 포함하는, 방법의 일 예를 나타낸다.
도 10 은 서버 디바이스에 의하여 매니페스트 파일, 예컨대 MPD가 업데이트되어야 한다는 표시들을 제공하고, 그리고 클라이언트 디바이스에 의하여 MPD를 업데이트하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다. 비록 도 10 의 방법이 서버 디바이스 (60) 및 클라이언트 디바이스 (40) 에 대하여 설명되었지만, 다른 디바이스들도 도 10 의 방법의 그것들과 유사한 기법들을 구현할 수도 있다는 것이 이해되어야 한다. 예를 들어, 콘텐츠 준비 디바이스 (20), 또는 콘텐츠 전달 네트워크의 하나 이상의 네트워크 디바이스들이 서버 디바이스 (60) 로 부여된 기능들 중 일부 또는 전부를 수행할 수도 있다. 더욱이, MPD의 업데이트는 위의 도 8 및 도 9 에 대하여 설명된 바와 같은 트릭 모드의 및/또는 표현 그룹 및 그 표현 그룹으로부터의 표현의 선택과 결합하여 수행될 수도 있다.
몇 가지 예들에서는, 콘텐츠 준비 디바이스 (20) 는 생방송 이벤트, 예컨대 스포츠 이벤트 도중에 캡쳐된 인코딩된 비디오 데이터를 인코딩하고 캡슐화할 수도 있다. 이러한 방식으로, 클라이언트 디바이스 (40) 는 이벤트가 발생하고 있는 때에 거의 실시간으로 이벤트의 코딩된 데이터를 취출할 수도 있다. 먼저, 서버 디바이스 (60) 는 생방송 이벤트에 대응하는 멀티미디어 콘텐츠의 하나 이상의 표현들을 수신하고 멀티미디어 콘텐츠의 표현들에 대한 특징들의 표시들을 MPD 내에 제공할 수도 있다 (단계 (460)). 이벤트가 생방송으로 촬영되고 있는 때에 형성되는 멀티미디어 콘텐츠에 기인하여, MPD 는 멀티미디어 콘텐츠의 특정 시간적 위치까지의 세그먼트들의 특징들 및 위치들만을 기술할 수도 있다.
클라이언트 디바이스 (40) 는 MPD 의 정보를 이용하여 표현을 선택할 수도 있다 (단계 (462)). 현재 MPD를 이용하면서, 클라이언트 디바이스 (40) 는 선택된 표현의 세그먼트들을, 예를 들어 그 시간적 위치까지 요청할 수도 있다. 이에 응답하여, 서버 디바이스 (60) 는 요청된 세그먼트들을 전송할 수도 있다. 그러나, 이에 부가하여, 서버 디바이스 (60) 는 MPD 업데이트 박스 또는 그 세그먼트에 대하여 MPD가 업데이트되어야 한다고 표시하는 다른 정보를 포함하는 세그먼트를 전송할 수도 있다 (단계 (466)).
이에 응답하여, 클라이언트 디바이스 (40) 는 수신된 세그먼트 중 하나 이상의의 데이터를 디코딩하고 디스플레이할 수도 있다 (단계 (468)). 또한, 클라이언트 디바이스 (40) 는 MPD 가 업데이트되어야 한다고 표시하는 정보를 수신할 수도 있다 (단계 (470)). 예를 들어, 클라이언트 디바이스 (40) 는 MPD가 더 이상 적용되지 않는 시간적 위치 이전에 마지막 세그먼트를 수신할 수도 있다. 클라이언트 디바이스 (40) 는 그 마지막 세그먼트가 도 7 에 대하여 설명된 MPD 업데이트 박스들과 유사한 MPD 업데이트 박스를 포함한다고 결정할 수도 있다.
업데이트 박스를 이용하면서, 클라이언트 디바이스 (40) 는 MPD 에 대한 업데이트들을 요청할 수도 있다 (단계 (472)). 예를 들어, 클라이언트 디바이스 (40) 는 MPD에 대한 업데이트들의 네트워크 위치를 결정하고 결정된 위치로부터의 업데이트들을 요청할 수도 있다. 서버 디바이스 (60), 또는 MPD 로의 업데이트들을 저장하는 다른 디바이스 (예를 들어, 콘텐츠 준비 디바이스 (20)) 가 MPD에 대한 업데이트들을 표시하는 정보를 전송할 수도 있으며 (단계 (474)), 클라이언트 디바이스 (40) 는 이것을 이용하여 MPD 를 업데이트 할 수도 있다 (단계 (476)). 대안적으로는, 몇 가지 예들에서는, MPD 업데이트 박스는 MPD 업데이트들 자체를 표시하는 정보를 포함할 수도 있으며, 이 경우에는 클라이언트 디바이스 (40) 는 MPD 를 MPD 업데이트 박스의 정보를 이용하여 업데이트할 수도 있다. 어떠한 경우에서도, 이제 클라이언트 디바이스 (40) 는 MPD의 업데이트된 버전을 이용하여 이전 MPD 가 더 이상 적용되지 않는 시간적 위치를 추종하는 세그먼트들을 요청할 수도 있다 (단계 (478)). 클라이언트 디바이스 (40) 및 서버 디바이스 (60) 는 클라이언트 디바이스 (40) 가 멀티미디어 콘텐츠의 재생을 완료했을 때까지 유사한 단계들을 계속 수행할 수도 있다.
몇 가지 예들에서는, 도 10 의 방법과 유사한 기법들이 타겟화된 광고 삽입을 수행하기 위하여 이용될 수도 있다. 예를 들어, 업데이트된 MPD 는 광고 미디어 콘텐츠에 대응하는 부분을 포함할 수도 있다. 원하는 미디어 콘텐츠의 후속 미디어 데이터를 취출하기 위한 다른 업데이트된 MPD 를 포함할 수도 있는, 광고 미디어 콘텐츠의 하나 이상의 세그먼트들의 데이터를 수신하기 위하여, 클라이언트 디바이스 (40) 는 업데이트된 MPD에 기초하여 광고 미디어 콘텐츠의 데이터를 취출하고 재생하도록 요구될 수도 있다.
이러한 방식으로, 도 10 의 방법은, 클라이언트 디바이스에 의하여 저장된 매니페스트 파일의 복제본의 데이터에 따라서 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하는 단계, 매니페스트 파일에 따라서 표현의 제 2 세그먼트의 일부를 취출하는 단계로서, 제 2 세그먼트는 표현 내에서 제 1 세그먼트 이후에 발생하고, 제 2 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 표시하는, 제 2 세그먼트의 일부를 취출하는 단계, 매니페스트 파일이 업데이트되어야 한다는 표시에 기초하여 클라이언트 디바이스에 의하여 저장된 매니페스트 파일의 복제본을 업데이트하는 단계, 및 업데이트된 매니페스트 파일에 따라서 제 2 세그먼트의 미디어 데이터를 취출하는 단계를 포함하는, 방법의 일 예를 나타낸다.
이와 유사하게, 도 10 의 방법은, 멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스로 전송하는 단계로서, 매니페스트 파일은 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 전송하는 단계, 클라이언트 디바이스로부터의 요청에 응답하여 표현의 제 1 세그먼트의 적어도 일부를 클라이언트 디바이스로 전송하는 단계로서, 제 1 세그먼트의 일부는 매니페스트 파일이 업데이트되어야 한다는 것을 나타내고, 매니페스트 파일의 업데이트된 버전은 표현의 제 2 의 상이한 세그먼트를 표시하는 정보를 포함하는, 전송하는 단계, 및 클라이언트 디바이스로부터 수신되고 업데이트된 매니페스트 파일에 따라서 형성된 요청에 응답하여, 제 2 세그먼트의 데이터를 클라이언트 디바이스로 전송하는 단계를 포함하는, 방법의 일 예를 나타낸다.
도 11 은 경험 품질 (QoE) 보고 문서의 데이터를 구성하고 이용하기 위한 하나의 예시적인 방법을 예시하는 흐름도이다. 비록 도 11 의 방법이 서버 디바이스 (60) 및 클라이언트 디바이스 (40) 에 대하여 설명되었지만, 다른 디바이스들도 도 11 의 방법의 그것들과 유사한 기법들을 구현할 수도 있다는 것이 이해되어야 한다. 예를 들어, 콘텐츠 준비 디바이스 (20), 또는 콘텐츠 전달 네트워크의 하나 이상의 네트워크 디바이스들이 서버 디바이스 (60) 로 부여된 기능들 중 일부 또는 전부를 수행할 수도 있다. 더욱이, QoE 보고서를 서버 디바이스 (60) 및/또는 콘텐츠 준비 디바이스 (20) 로 제공하는 것은, 위의 도 8, 도 9, 및 도 10 에 대하여 설명된 바와 같은, MPD의 업데이트, 트릭 모드의 선택, 및/또는 표현 그룹 및 그 표현 그룹으로부터의 표현의 선택의 임의의 것 또는 전부와 결합하여 수행될 수도 있다.
먼저, 서버 디바이스 (60) 는 멀티미디어 콘텐츠의 표현들의 특징들의 표시들을 MPD 내에서 클라이언트 디바이스 (40) 로 제공할 수도 있다 (단계 (500)). 위에서 논의된 바와 같이, 클라이언트 디바이스 (40) 는, 예를 들어, 클라이언트 디바이스 (40) 의 디코딩 및/또는 렌더링 성능들, 사용자 선호도들, 가용 네트워크 대역폭, 및/또는 멀티미디어 콘텐츠의 표현들의 다른 특징들에 기초하여 표현을 선택할 수도 있다 (단계 (502)). 그러면, 클라이언트 디바이스 (40) 는 선택된 표현의 하나 이상의 세그먼트들을 요청할 수도 있다 (단계 (504)).
서버 디바이스 (60) 는 요청된 세그먼트들을 클라이언트 디바이스 (40) 로 전송할 수도 있다 (단계 (506)). 요청된 세그먼트들을 수신한 이후에, 클라이언트 디바이스 (40) 는 수신된 데이터를 디코딩하고 디스플레이 할 수도 있다 (단계 (508)). 그러면, 클라이언트 디바이스 (40) 는 모든 비디오 데이터가 수신되었는지 여부를 결정할 수도 있다 (단계 (510)). 만일 표현 (또는 일반적으로 멀티미디어 콘텐츠) 의 마지막 세그먼트가 아직 수신되지 않았으면 (단계 (510) 의 "아니오" 브랜치), 클라이언트 디바이스 (40) 는 다시 네트워크 대역폭의 현재 가용 양을 평가하고 이러한 분석에 기초하여 표현을 선택하며 (단계 (502)) 그 표현의 세그먼트들을 요청할 (단계 (504)) 수도 있다.
일반적으로, 클라이언트 디바이스 (40) 는 데이터를 버퍼링하고 그리고 현재의 가용 네트워크 대역폭에 의하여 수용될 수 있는 표현으로부터 멀티미디어 콘텐츠의 데이터를 요청함으로써 버퍼 오버-플로우 또는 언더-플로우를 회피하도록 시도할 수도 있다. 그러나, 예를 들어 만일 멀티미디어 콘텐츠의 실제 코딩 특징들이 시그널링된 코딩 특징들과 정합하지 않거나 또는 만일 적절한 선택을 하기 위하여 클라이언트 디바이스 (40) 에게 불충분한 데이터만이 있었다면, 버퍼 오버플로우 또는 언더플로우가 가끔 발생할 수도 있다. 또한, 다른 인자들도 클라이언트 디바이스 (40) 의 사용자에 대한 감소된 경험 품질을 초래할 수도 있다. 그러므로, 표현 (또는 멀티미디어 콘텐츠) 의 마지막 세그먼트가 수신되었고 적절하게 디코딩되었다면 ((510) 의 "예" 브랜치), 클라이언트 디바이스는 경험 품질 (QoE) 보고서를 서버 디바이스 (60) 로 제공할 수도 있다.
예를 들어, 클라이언트 디바이스 (40) 는 보고서가 선택된 세그먼트들 및 표현들을 포함하도록 구성할 수도 있다 (단계 (512)). 또한, 클라이언트 디바이스 (40) 는 버퍼 오버플로우/언더플로우의 발생들을 기록할 수도 있는데, 이것이 미디어 재생 도중의 일시 중지들을 초래할 수도 있다. 클라이언트 디바이스 (40) 는 그 Period들이 재생되었다는 것을 나타내는 PeriodReport 엘리먼트들의 시퀀스를 포함하는 보고서를 형성할 수도 있다. Period 엘리먼트는, 각각이 Representation의 일부의 연속 재생을 나타내며 그리고 실시간 및 프리젠테이션 시간 모두에서 시작 및 종료 시간들을 제공하는 RepresentationReport 엘리먼트들의 시퀀스를 포함할 수도 있다. 또한, 보고서는 초기 개시 시간을 포함할 수 있는데, 이것은 그 콘텐츠를 시청하기 위한 사용자 요청으로부터의 시간이며 재생의 시작이다. 이러한 방식으로, 보고서 문서는 클라이언트 디바이스가 멀티미디어 콘텐츠의 미디어 데이터를 취출한 소스가 되는 멀티미디어 콘텐츠의 표현들을 표시하는 확장가능 마크업 언어 (XML) 로 포맷된 전자 문서를 포함할 수도 있다.
클라이언트 디바이스 (40) 는 보고서를 서버 디바이스 (60) 또는 콘텐츠 전달 네트워크의 다른 디바이스, 예컨대 콘텐츠 준비 디바이스 (20) 또는 전용 보고서 수집 디바이스로 제공할 수도 있다. 이러한 방식으로, 서버 디바이스 (60) 는 클라이언트 디바이스 (40) 에 의하여 수신된 세그먼트들 및 표현들의 표시들을 수신할 수도 있다 (단계 (514)). 그러면, 서버 디바이스 (60) 는 표시들을, 예를 들어 콘텐츠 준비 디바이스 (20) 또는 서비스 제공자 또는 미디어 어셈블러와 연관된 다른 디바이스로 제공하여 콘텐츠 준비를 개선할 수도 있다 (단계 (516)). 클라이언트 디바이스 (40) 에 의하여 제공된 정보로부터, 재생 중에 일시 정지들이 존재했을 때에는, 그리고 표현들 사이의 스위칭들이 있었을 때에는 서비스 제공자는 무엇이 재생되었는지를 정확하게 결정할 수도 있다. 대안적으로는 또는 추가적으로, 클라이언트 디바이스 (40) 는 요약 정보를, 일시 정지들의 개수 및 일시 정지 지속 시간들의 평균 및 분산과 함께 전체 재생 지속 시간 및 각 표현에 대한 별개의 연속적인 재생 기간들의 개수의 형태로 제공할 수도 있다.
이러한 데이터를 이용하면서, 서비스 제공자는 미디어 콘텐츠의 새로운 피스에 대한 경험 품질 정보를 적응적 HTTP 스트리밍을 이용한 스트리밍을 위하여 분석할 수도 있다. 서비스 제공자는 가용한 상이한 비트레이트들에서 다수의 상이한 표현들을 생성하고, 미디어 파일들을 호스팅하기 위한 HTTP 서빙 인프라구조를 제공하며, 그리고 피드백을 수집하여 사용자들의 시청 경험들의 품질을 결정할 수도 있다. 서비스 제공자는 이러한 데이터를 이용하여 이것 또는 장래의 미디어 콘텐츠 호스팅을 위한 서비스의 품질을 개선할 수도 있다. 경험 품질 메트릭들은 사용자에 의하여 경험되는 실제 시청을 지칭할 수도 있고, HTTP 요청들, 표현 선택 결정들, 및 기타 등등의 스케줄링을 위하여 이용되는 클라이언트 알고리즘들로부터는 독립적일 수도 있다. 이러한 방식으로, 서비스 제공자는 특정 시청 세션에 대한 사용자의 시청 경험 품질의 상대적으로 정확한 묘사를 획득할 수도 있다.
이러한 방식으로, 도 11 의 방법은, 미디어 데이터가 취출되었던 소스가 되는 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 문서를 구성하는 단계, 및 미디어 데이터가 취출되었던 소스가 되는 구조화된 문서를 서버로 전송하는 단계를 포함하는 방법의 일 예를 나타낸다. 또한, 도 11 의 방법은 클라이언트 디바이스에 의하여 취출된 데이터를 표시하는 정보를 수신하는 단계를 포함하는 방법으로서, 클라이언트 디바이스가 멀티미디어 콘텐츠의 미디어 데이터를 취출했던 소스가 되는 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능한 마크업 언어로 포맷된 전자 문서를 수신하는 단계를 포함하는 방법의 일 예를 나타낸다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그것들의 임의의 조합으로도 구현될 수 있다. 소프트웨어로 구현된다면, 이러한 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독 가능한 매체 상에 저장되거나 송신될 수 있으며, 하드웨어 기초의 처리 유닛에 의하여 실행될 수도 있다. 컴퓨터 판독 가능한 매체는 데이터 저장 매체와 같은 유형의 매체에 대응하는 컴퓨터 판독가능 저장 매체나, 또는 예를 들어 통신 프로토콜에 따라, 한 장소에서 다른 장소로의 컴퓨터 프로그램의 전달을 용이하게 하는 임의의 매체를 포함하는 통신 매체를 포함할 수도 있다. 이러한 방법으로, 컴퓨터 판독 가능 매체는 일반적으로 (1) 비-일시적인 유형의 컴퓨터 판독가능 저장 매체 또는 (2) 신호 또는 반송파와 같은 통신 매체에 대응할 수도 있다. 데이터 저장 매체는 이 개시물에서 설명된 기법들의 구현을 위한 명령들, 코드들 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독 가능한 매체를 포함할 수도 있다.
한정하는 것이 아니라 예시적인 예로서, 이러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타의 광 디스크 스토리지, 자기 디스크 스토리지, 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 원하는 프로그램 코드를 컴퓨터에 의해 액세스될 수 있는 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 연결도 적절하게 컴퓨터 판독가능 매체라고 칭한다. 예를 들어, 명령들이 웹사이트, 서버, 또는 다른 원격 리소스으로부터 동축 케이블, 광섬유 케이블, 연선 (twisted pair), 디지털 가입자 회선 (DSL), 또는 무선 기술들 이를테면 적외선, 라디오, 및/또는 마이크로파를 이용하여 전송된다면, 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술이 매체의 정의에 포함된다. 그러나, 컴퓨터 판독 가능 저장 매체 및 데이터 저장 매체가, 연결들, 반송파들, 신호들 또는 다른 일시적 매체를 포함하지 않고, 대신에 비일시적이며 유형적인 저장 매체에 관련된 것이라는 것은 이해되어야 한다. 디스크 (Disk) 및 디스크 (disc) 는 여기서 사용되는 바와 같이, 콤팩트 디스크 (CD), 레이저 디스크, 광 디스크, 디지털 다용도 디스크 (DVD), 플로피 디스크 및 블루레이 디스크를 포함하는데, disk들은 보통 데이터를 자기적으로 재생하지만, disc들은 레이저들로써 광학적으로 데이터를 재생한다. 상기한 것들의 조합들도 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은 하나 이상의 프로세서들, 이를테면 하나 이상의 디지털 신호 프로세서들 (DSPs), 범용 마이크로프로세서들, 주문형 집적회로들 (ASICs), 필드 프로그램가능 로직 어레이들 (FPGAs), 또는 기타 동등한 집적 또는 개별 로직 회로에 의해 실행될 수 있다. 따라서, 여기서 사용된 용어 "프로세서"는 앞서의 구조 또는 여기서 설명된 기법들의 구현에 적합한 임의의 다른 구조 중의 어느 것이라도 가리킬 수 있다. 또한, 일부 양태들에서, 여기서 설명된 기능은 인코딩 및 디코딩을 위해 구성되는 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공되거나, 또는 조합된 코덱 (codec) 내에 통합될 수도 있다. 또한, 그 기술들은 하나 이상의 회로들 또는 로직 요소들 내에서 완전히 구현될 수 있다.
이 개시물의 기법들은 무선 핸드셋, 집적회로 (IC) 또는 한 세트의 IC들 (예컨대, 칩 셋) 을 포함하는 매우 다양한 디바이스들 또는 장치들에서 구현될 수 있다. 다양한 구성요소들, 모듈들, 또는 유닛들이 개시된 기법들을 수행하도록 구성되는 디바이스들의 기능적 양태들을 강조하기 위하여 이 개시물에서 설명되지만, 상이한 하드웨어 유닛들에 의하여 반드시 구현되어야 하는 것은 아니다. 오히려, 위에서 설명된 바와 같이, 다양한 유닛들은, 적합한 소프트웨어 및/또는 펌웨어와 연계하여, 위에서 설명된 바와 같은 하나 이상의 프로세서들을 포함하는, 상호운용적 하드웨어 유닛들의 컬렉션에 의해 제공되거나 코덱 하드웨어 유닛 내에 조합될 수도 있다.
Claims (46)
- 멀티미디어 데이터를 취출하는 방법으로서,
클라이언트 디바이스에 의해 저장된 매니페스트 파일의 카피의 데이터에 따라 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하는 단계;
상기 매니페스트 파일에 따라 상기 표현의 제 2 세그먼트의 일부를 취출하는 단계로서, 상기 제 2 세그먼트는 상기 표현에서 상기 제 1 세그먼트 이후에 발생하고, 상기 제 2 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하는, 상기 제 2 세그먼트의 일부를 취출하는 단계;
상기 매니페스트 파일이 업데이트될 것이라는 표시에 기초하여 상기 클라이언트 디바이스에 의해 저장된 상기 매니페스트 파일의 카피를 업데이트하는 단계; 및
상기 업데이트된 매니페스트 파일에 따라 상기 제 2 세그먼트의 미디어 데이터를 취출하는 단계를 포함하는, 멀티미디어 데이터를 취출하는 방법. - 제 1 항에 있어서,
상기 매니페스트 파일을 업데이트하는 것은, 상기 제 2 세그먼트의 일부의 데이터를 이용하여 상기 매니페스트 파일을 업데이트하는 것을 포함하는, 멀티미디어 데이터를 취출하는 방법. - 제 1 항에 있어서,
상기 매니페스트 파일을 업데이트하는 것은, 상기 제 2 세그먼트의 일부에 표시된 위치로부터 상기 매니페스트 파일을 업데이트하기 위한 데이터를 취출하는 것을 포함하는, 멀티미디어 데이터를 취출하는 방법. - 제 1 항에 있어서,
상기 매니페스트 파일을 업데이트하는 것은,
업데이트될 상기 매니페스트 파일의 하나 이상의 엘리먼트들을 결정하는 단계; 및
상기 매니페스트 파일의 오직 결정된 하나 이상의 엘리먼트들만을 업데이트하는 단계를 포함하는, 멀티미디어 데이터를 취출하는 방법. - 제 1 항에 있어서,
상기 멀티미디어 콘텐츠의 제 2 의, 상이한 표현으로부터 미디어 데이터를 취출하는 단계; 및
상기 제 1 표현과 상기 제 2 표현으로부터 취출된 데이터를 표시하는 정보를 전송하는 단계를 더 포함하는, 멀티미디어 데이터를 취출하는 방법. - 제 5 항에 있어서,
상기 제 1 및 제 2 표현들을 포함한, 상기 미디어 데이터가 취출된, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 구성하는 단계를 더 포함하고,
상기 취출된 데이터를 표시하는 정보를 전송하는 단계는, 상기 미디어 데이터가 취출된 상기 구성된 문서를 서버로 전송하는 단계를 포함하는, 멀티미디어 데이터를 취출하는 방법. - 멀티미디어 데이터를 취출하는 디바이스로서,
상기 멀티미디어 데이터를 취출하는 디바이스에 의해 저장된 매니페스트 파일의 카피의 데이터에 따라 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하고,
상기 매니페스트 파일에 따라 상기 표현의 제 2 세그먼트의 일부를 취출하는 것으로서, 상기 제 2 세그먼트는 상기 표현에서 상기 제 1 세그먼트 이후에 발생하고, 상기 제 2 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하는, 상기 제 2 세그먼트의 일부를 취출하고,
상기 매니페스트 파일이 업데이트될 것이라는 표시에 기초하여 상기 멀티미디어 데이터를 취출하는 디바이스에 의해 저장된 상기 매니페스트 파일의 카피를 업데이트하며, 그리고
상기 업데이트된 매니페스트 파일에 따라 상기 제 2 세그먼트의 미디어 데이터를 취출하도록
구성되는 하나 이상의 프로세서들을 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 제 7 항에 있어서,
상기 매니페스트 파일을 업데이트하기 위해, 상기 하나 이상의 프로세서들은, 상기 제 2 세그먼트의 일부의 데이터를 이용하여 상기 매니페스트 파일을 업데이트하도록 구성되는, 멀티미디어 데이터를 취출하는 디바이스. - 제 7 항에 있어서,
상기 매니페스트 파일을 업데이트하기 위해, 상기 하나 이상의 프로세서들은, 상기 제 2 세그먼트의 일부에 표시된 위치로부터 상기 매니페스트 파일을 업데이트하기 위한 데이터를 취출하도록 구성되는, 멀티미디어 데이터를 취출하는 디바이스. - 제 7 항에 있어서,
상기 매니페스트 파일을 업데이트하기 위해, 상기 하나 이상의 프로세서들은, 업데이트될 상기 매니페스트 파일의 하나 이상의 엘리먼트들을 결정하고, 상기 매니페스트 파일의 오직 결정된 하나 이상의 엘리먼트들만을 업데이트하도록 구성되는, 멀티미디어 데이터를 취출하는 디바이스. - 제 7 항에 있어서,
상기 하나 이상의 프로세서들은, 또한, 상기 멀티미디어 콘텐츠의 제 2 의, 상이한 표현으로부터 미디어 데이터를 취출하고, 상기 제 1 표현과 상기 제 2 표현으로부터 취출된 데이터를 표시하는 정보를 전송하도록 구성되는, 멀티미디어 데이터를 취출하는 디바이스. - 제 11 항에 있어서,
상기 하나 이상의 프로세서들은, 또한, 상기 제 1 및 제 2 표현들을 포함한, 상기 미디어 데이터가 취출된, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 구성하도록 구성되며,
상기 하나 이상의 프로세서들은, 상기 미디어 데이터가 취출된 상기 구성된 문서를 서버로 전송하도록 구성되는, 멀티미디어 데이터를 취출하는 디바이스. - 제 7 항에 있어서,
상기 멀티미디어 데이터를 취출하는 디바이스는,
집적 회로;
마이크로프로세서; 및
상기 하나 이상의 프로세서들을 포함하는 무선 통신 디바이스
중 적어도 하나를 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 멀티미디어 데이터를 취출하는 디바이스로서,
상기 멀티미디어 데이터를 취출하는 디바이스에 의해 저장된 매니페스트 파일의 카피의 데이터에 따라 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하는 수단;
상기 매니페스트 파일에 따라 상기 표현의 제 2 세그먼트의 일부를 취출하는 수단으로서, 상기 제 2 세그먼트는 상기 표현에서 상기 제 1 세그먼트 이후에 발생하고, 상기 제 2 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하는, 상기 제 2 세그먼트의 일부를 취출하는 수단;
상기 매니페스트 파일이 업데이트될 것이라는 표시에 기초하여 상기 멀티미디어 데이터를 취출하는 디바이스에 의해 저장된 상기 매니페스트 파일의 카피를 업데이트하는 수단; 및
상기 업데이트된 매니페스트 파일에 따라 상기 제 2 세그먼트의 미디어 데이터를 취출하는 수단을 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 제 14 항에 있어서,
상기 매니페스트 파일을 업데이트하는 것은, 상기 제 2 세그먼트의 일부의 데이터를 이용하여 상기 매니페스트 파일을 업데이트하는 것을 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 제 1 항에 있어서,
상기 매니페스트 파일을 업데이트하는 것은, 상기 제 2 세그먼트의 일부에 표시된 위치로부터 상기 매니페스트 파일을 업데이트하기 위한 데이터를 취출하는 것을 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 제 14 항에 있어서,
상기 매니페스트 파일을 업데이트하는 수단은,
업데이트될 상기 매니페스트 파일의 하나 이상의 엘리먼트들을 결정하는 수단; 및
상기 매니페스트 파일의 오직 결정된 하나 이상의 엘리먼트들만을 업데이트하는 수단을 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 제 14 항에 있어서,
상기 멀티미디어 콘텐츠의 제 2 의, 상이한 표현으로부터 미디어 데이터를 취출하는 수단; 및
상기 제 1 표현과 상기 제 2 표현으로부터 취출된 데이터를 표시하는 정보를 전송하는 수단을 더 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 제 18 항에 있어서,
상기 제 1 및 제 2 표현들을 포함한, 상기 미디어 데이터가 취출된, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 구성하는 수단을 더 포함하고,
상기 취출된 데이터를 표시하는 정보를 전송하는 수단은, 상기 미디어 데이터가 취출된 상기 구성된 문서를 서버로 전송하는 수단을 포함하는, 멀티미디어 데이터를 취출하는 디바이스. - 명령들이 저장된 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
상기 명령들은, 실행될 경우, 멀티미디어 데이터를 취출하는 디바이스의 프로세서로 하여금,
상기 멀티미디어 데이터를 취출하는 디바이스에 의해 저장된 매니페스트 파일의 카피의 데이터에 따라 멀티미디어 콘텐츠의 표현의 제 1 세그먼트의 데이터를 취출하게 하고,
상기 매니페스트 파일에 따라 상기 표현의 제 2 세그먼트의 일부를 취출하게 하는 것으로서, 상기 제 2 세그먼트는 상기 표현에서 상기 제 1 세그먼트 이후에 발생하고, 상기 제 2 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하는, 상기 제 2 세그먼트의 일부를 취출하게 하고,
상기 매니페스트 파일이 업데이트될 것이라는 표시에 기초하여 상기 멀티미디어 데이터를 취출하는 디바이스에 의해 저장된 상기 매니페스트 파일의 카피를 업데이트하게 하며, 그리고
상기 업데이트된 매니페스트 파일에 따라 상기 제 2 세그먼트의 미디어 데이터를 취출하게 하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 20 항에 있어서,
상기 프로세서로 하여금 상기 매니페스트 파일을 업데이트하게 하는 명령들은, 상기 프로세서로 하여금, 상기 제 2 세그먼트의 일부의 데이터를 이용하여 상기 매니페스트 파일을 업데이트하게 하는 명령들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 20 항에 있어서,
상기 프로세서로 하여금 매니페스트 파일을 업데이트하게 하는 명령들은, 상기 프로세서로 하여금, 상기 제 2 세그먼트의 일부에 표시된 위치로부터 상기 매니페스트 파일을 업데이트하기 위한 데이터를 취출하게 하는 명령들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 20 항에 있어서,
상기 프로세서로 하여금 상기 매니페스트 파일을 업데이트하게 하는 명령들은, 상기 프로세서로 하여금,
업데이트될 상기 매니페스트 파일의 하나 이상의 엘리먼트들을 결정하게 하고, 그리고
상기 매니페스트 파일의 오직 결정된 하나 이상의 엘리먼트들만을 업데이트하게 하는
명령들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 20 항에 있어서,
상기 프로세서로 하여금,
상기 멀티미디어 콘텐츠의 제 2 의, 상이한 표현으로부터 미디어 데이터를 취출하게 하고, 그리고
상기 제 1 표현과 상기 제 2 표현으로부터 취출된 데이터를 표시하는 정보를 전송하게 하는
명령들을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 24 항에 있어서,
상기 프로세서로 하여금,
상기 제 1 및 제 2 표현들을 포함한, 상기 미디어 데이터가 취출된, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 구성하게 하는
명령들을 더 포함하고,
상기 프로세서로 하여금 상기 취출된 데이터를 표시하는 정보를 전송하게 하는 명령들은, 상기 프로세서로 하여금, 상기 미디어 데이터가 취출된 상기 구성된 문서를 서버로 전송하게 하는 명령들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 멀티미디어 데이터에 대한 정보를 전송하는 방법으로서,
멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스에 전송하는 단계로서, 상기 매니페스트 파일은 상기 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 상기 매니페스트 파일의 데이터를 전송하는 단계;
상기 클라이언트 디바이스로부터의 요청에 응답하여 상기 표현의 제 1 세그먼트의 적어도 일부를 상기 클라이언트 디바이스에 전송하는 단계로서, 상기 제 1 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하고, 상기 매니페스트 파일의 업데이트 버전은 상기 표현의 제 2 의, 상이한 세그먼트를 표시하는 정보를 포함하는, 상기 제 1 세그먼트의 적어도 일부를 전송하는 단계; 및
상기 클라이언트 디바이스로부터 수신되고 또한 상기 업데이트된 매니페스트 파일에 따라 형성된 요청에 응답하여, 상기 제 2 세그먼트의 데이터를 상기 클라이언트 디바이스에 전송하는 단계를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 방법. - 제 26 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 정보를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 방법. - 제 26 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 데이터의 위치를 표시하는 정보를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 방법. - 제 26 항에 있어서,
상기 클라이언트 디바이스에 의해 취출된 상기 멀티미디어 콘텐츠의 데이터를 표시하는 정보를 수신하는 단계를 더 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 방법. - 제 29 항에 있어서,
상기 클라이언트 디바이스에 의해 취출된 데이터를 표시하는 정보를 수신하는 단계는, 상기 클라이언트 디바이스가 상기 멀티미디어 콘텐츠의 미디어 데이터를 취출한, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 수신하는 단계를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 방법. - 멀티미디어 데이터에 대한 정보를 전송하는 디바이스로서,
멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스에 전송하는 것으로서, 상기 매니페스트 파일은 상기 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 상기 매니페스트 파일의 데이터를 전송하고,
상기 클라이언트 디바이스로부터의 요청에 응답하여 상기 표현의 제 1 세그먼트의 적어도 일부를 상기 클라이언트 디바이스에 전송하는 것으로서, 상기 제 1 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하고, 상기 매니페스트 파일의 업데이트 버전은 상기 표현의 제 2 의, 상이한 세그먼트를 표시하는 정보를 포함하는, 상기 제 1 세그먼트의 적어도 일부를 전송하며, 그리고
상기 클라이언트 디바이스로부터 수신되고 또한 상기 업데이트된 매니페스트 파일에 따라 형성된 요청에 응답하여, 상기 제 2 세그먼트의 데이터를 상기 클라이언트 디바이스에 전송하도록
구성되는 하나 이상의 프로세서들을 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 31 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 정보를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 31 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 데이터의 위치를 표시하는 정보를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 31 항에 있어서,
상기 하나 이상의 프로세서들은, 상기 클라이언트 디바이스에 의해 취출된 상기 멀티미디어 콘텐츠의 데이터를 표시하는 정보를 수신하도록 구성되는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 34 항에 있어서,
상기 클라이언트 디바이스에 의해 취출된 데이터를 표시하는 정보는, 상기 클라이언트 디바이스가 상기 멀티미디어 콘텐츠의 미디어 데이터를 취출한, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 수신하는 것을 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 31 항에 있어서,
상기 멀티미디어 데이터에 대한 정보를 전송하는 디바이스는,
집적 회로;
마이크로프로세서; 및
상기 하나 이상의 프로세서들을 포함하는 무선 통신 디바이스
중 적어도 하나를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 멀티미디어 데이터에 대한 정보를 전송하는 디바이스로서,
멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스에 전송하는 수단으로서, 상기 매니페스트 파일은 상기 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 상기 매니페스트 파일의 데이터를 전송하는 수단;
상기 클라이언트 디바이스로부터의 요청에 응답하여 상기 표현의 제 1 세그먼트의 적어도 일부를 상기 클라이언트 디바이스에 전송하는 수단으로서, 상기 제 1 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하고, 상기 매니페스트 파일의 업데이트 버전은 상기 표현의 제 2 의, 상이한 세그먼트를 표시하는 정보를 포함하는, 상기 제 1 세그먼트의 적어도 일부를 전송하는 수단; 및
상기 클라이언트 디바이스로부터 수신되고 또한 상기 업데이트된 매니페스트 파일에 따라 형성된 요청에 응답하여, 상기 제 2 세그먼트의 데이터를 상기 클라이언트 디바이스에 전송하는 수단을 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 37 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 정보를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 37 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 데이터의 위치를 표시하는 정보를 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 37 항에 있어서,
상기 클라이언트 디바이스에 의해 취출된 상기 멀티미디어 콘텐츠의 데이터를 표시하는 정보를 수신하는 수단을 더 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 제 40 항에 있어서,
상기 클라이언트 디바이스에 의해 취출된 데이터를 표시하는 정보를 수신하는 수단은, 상기 클라이언트 디바이스가 상기 멀티미디어 콘텐츠의 미디어 데이터를 취출한, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 수신하는 수단을 포함하는, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스. - 명령들이 저장된 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
상기 명령들은, 실행될 경우, 멀티미디어 데이터에 대한 정보를 전송하는 디바이스의 프로세서로 하여금,
멀티미디어 콘텐츠의 매니페스트 파일의 데이터를 클라이언트 디바이스에 전송하게 하는 것으로서, 상기 매니페스트 파일은 상기 멀티미디어 콘텐츠의 표현의 제 1 세그먼트를 표시하는 정보를 포함하는, 상기 매니페스트 파일의 데이터를 전송하게 하고,
상기 클라이언트 디바이스로부터의 요청에 응답하여 상기 표현의 제 1 세그먼트의 적어도 일부를 상기 클라이언트 디바이스에 전송하게 하는 것으로서, 상기 제 1 세그먼트의 일부는 상기 매니페스트 파일이 업데이트될 것을 표시하고, 상기 매니페스트 파일의 업데이트 버전은 상기 표현의 제 2 의, 상이한 세그먼트를 표시하는 정보를 포함하는, 상기 제 1 세그먼트의 적어도 일부를 전송하게 하며, 그리고
상기 클라이언트 디바이스로부터 수신되고 또한 상기 업데이트된 매니페스트 파일에 따라 형성된 요청에 응답하여, 상기 제 2 세그먼트의 데이터를 상기 클라이언트 디바이스에 전송하게 하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 42 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 정보를 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 42 항에 있어서,
상기 제 1 세그먼트의 일부는 상기 매니페스트 파일에 대한 업데이트들을 표시하는 데이터의 위치를 표시하는 정보를 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 42 항에 있어서,
상기 프로세서로 하여금, 상기 클라이언트 디바이스에 의해 취출된 상기 멀티미디어 콘텐츠의 데이터를 표시하는 정보를 수신하게 하는 명령들을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 45 항에 있어서,
상기 프로세서로 하여금 상기 클라이언트 디바이스에 의해 취출된 데이터를 표시하는 정보를 수신하게 하는 명령들은, 상기 프로세서로 하여금, 상기 클라이언트 디바이스가 상기 멀티미디어 콘텐츠의 미디어 데이터를 취출한, 상기 멀티미디어 콘텐츠의 표현들을 표시하는 정보를 포함하는 확장가능 마크업 언어로 포맷화된 전자 문서를 수신하게 하는 명령들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37239910P | 2010-08-10 | 2010-08-10 | |
US61/372,399 | 2010-08-10 | ||
US13/205,574 US8806050B2 (en) | 2010-08-10 | 2011-08-08 | Manifest file updates for network streaming of coded multimedia data |
US13/205,574 | 2011-08-08 | ||
PCT/US2011/047128 WO2012021543A1 (en) | 2010-08-10 | 2011-08-09 | Manifest file updates for network streaming of coded video data |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130061170A true KR20130061170A (ko) | 2013-06-10 |
KR101442999B1 KR101442999B1 (ko) | 2014-09-22 |
Family
ID=44509694
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006119A KR101542310B1 (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 비디오 표현 그룹들 |
KR1020157020151A KR101709030B1 (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 트릭 모드들 |
KR1020137006120A KR101442999B1 (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 매니페스트 파일 업데이트들 |
KR1020137006118A KR20130042611A (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 트릭 모드들 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006119A KR101542310B1 (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 비디오 표현 그룹들 |
KR1020157020151A KR101709030B1 (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 트릭 모드들 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006118A KR20130042611A (ko) | 2010-08-10 | 2011-08-09 | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 트릭 모드들 |
Country Status (23)
Country | Link |
---|---|
US (3) | US8806050B2 (ko) |
EP (3) | EP2604015B1 (ko) |
JP (5) | JP5612211B2 (ko) |
KR (4) | KR101542310B1 (ko) |
CN (3) | CN103141069B (ko) |
AR (3) | AR082614A1 (ko) |
AU (2) | AU2011289511B2 (ko) |
BR (2) | BR112013002686B1 (ko) |
CA (2) | CA2807157C (ko) |
DK (2) | DK2604014T3 (ko) |
ES (3) | ES2730896T3 (ko) |
HK (2) | HK1181577A1 (ko) |
HU (3) | HUE044113T2 (ko) |
IL (2) | IL224449A (ko) |
MY (2) | MY155946A (ko) |
PL (1) | PL2604014T3 (ko) |
PT (1) | PT2604014T (ko) |
RU (2) | RU2558615C2 (ko) |
SG (3) | SG10201505779QA (ko) |
SI (2) | SI2604014T1 (ko) |
TW (3) | TWI458313B (ko) |
UA (2) | UA107125C2 (ko) |
WO (3) | WO2012021538A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110139214A (ko) * | 2009-03-16 | 2011-12-28 | 마이크로소프트 코포레이션 | 컴퓨터 구현 방법 및 컴퓨터 시스템 |
Families Citing this family (269)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6307487B1 (en) * | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage 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 |
US6909383B2 (en) | 2002-10-05 | 2005-06-21 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
CN101834610B (zh) | 2003-10-06 | 2013-01-30 | 数字方敦股份有限公司 | 通过通信信道接收从源发射的数据的方法和装置 |
US8472792B2 (en) | 2003-12-08 | 2013-06-25 | Divx, Llc | Multimedia distribution system |
US7519274B2 (en) | 2003-12-08 | 2009-04-14 | Divx, Inc. | File format for multiple track digital data |
KR101161193B1 (ko) | 2004-05-07 | 2012-07-02 | 디지털 파운튼, 인크. | 파일 다운로드 및 스트리밍 시스템 |
US10862994B1 (en) * | 2006-11-15 | 2020-12-08 | Conviva Inc. | Facilitating client decisions |
EP1985021A4 (en) | 2006-02-13 | 2013-05-29 | Digital Fountain Inc | CONTINUOUS TRANSMISSION AND BUFFER DELIVERY USING CONTINUOUS MONITORING OVERVIEW AND PERIODS OF PROTECTION |
US9270414B2 (en) * | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
JP5200204B2 (ja) | 2006-03-14 | 2013-06-05 | ディブエックス リミテッド ライアビリティー カンパニー | 高信頼性システムを含む連合型デジタル権限管理機構 |
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 |
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 |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9386064B2 (en) * | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US9432433B2 (en) * | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US9264780B1 (en) | 2006-11-15 | 2016-02-16 | Conviva Inc. | Managing synchronized data requests in a content delivery network |
US8874725B1 (en) | 2006-11-15 | 2014-10-28 | Conviva Inc. | Monitoring the performance of a content player |
US8751605B1 (en) | 2006-11-15 | 2014-06-10 | Conviva Inc. | Accounting for network traffic |
ES2709208T3 (es) | 2007-01-05 | 2019-04-15 | Sonic Ip Inc | Sistema de distribución de vídeo que incluye reproducción progresiva |
WO2009036378A1 (en) | 2007-09-12 | 2009-03-19 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
US8233768B2 (en) | 2007-11-16 | 2012-07-31 | Divx, Llc | Hierarchical and reduced index structures for multimedia files |
US9986279B2 (en) | 2008-11-26 | 2018-05-29 | Free Stream Media Corp. | Discovery, access control, and communication with networked services |
US10631068B2 (en) | 2008-11-26 | 2020-04-21 | Free Stream Media Corp. | Content exposure attribution based on renderings of related content across multiple devices |
US9026668B2 (en) | 2012-05-26 | 2015-05-05 | Free Stream Media Corp. | Real-time and retargeted advertising on multiple screens of a user watching television |
US10977693B2 (en) | 2008-11-26 | 2021-04-13 | Free Stream Media Corp. | Association of content identifier of audio-visual data with additional data through capture infrastructure |
US9386356B2 (en) | 2008-11-26 | 2016-07-05 | Free Stream Media Corp. | Targeting with television audience data across multiple screens |
US10334324B2 (en) | 2008-11-26 | 2019-06-25 | Free Stream Media Corp. | Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device |
US10419541B2 (en) | 2008-11-26 | 2019-09-17 | Free Stream Media Corp. | Remotely control devices over a network without authentication or registration |
US9154942B2 (en) | 2008-11-26 | 2015-10-06 | Free Stream Media Corp. | Zero configuration communication between a browser and a networked media device |
US9519772B2 (en) | 2008-11-26 | 2016-12-13 | Free Stream Media Corp. | Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device |
US10880340B2 (en) | 2008-11-26 | 2020-12-29 | Free Stream Media Corp. | Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device |
US9961388B2 (en) | 2008-11-26 | 2018-05-01 | David Harrison | Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements |
US8180891B1 (en) | 2008-11-26 | 2012-05-15 | Free Stream Media Corp. | Discovery, access control, and communication with networked services from within a security sandbox |
US10567823B2 (en) | 2008-11-26 | 2020-02-18 | Free Stream Media Corp. | Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device |
US9281847B2 (en) * | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US8402494B1 (en) | 2009-03-23 | 2013-03-19 | Conviva Inc. | Switching content |
US9203913B1 (en) * | 2009-07-20 | 2015-12-01 | Conviva Inc. | Monitoring the performance of a content player |
US8566393B2 (en) | 2009-08-10 | 2013-10-22 | Seawell Networks Inc. | Methods and systems for scalable video chunking |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US20110096828A1 (en) * | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
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 |
US8930991B2 (en) * | 2009-11-19 | 2015-01-06 | Gregory Philpott | System and method for delivering content to mobile devices |
WO2011068668A1 (en) | 2009-12-04 | 2011-06-09 | Divx, Llc | Elementary bitstream cryptographic material transport systems and methods |
ES2627521T3 (es) * | 2010-01-18 | 2017-07-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Método y disposición para soportar reproducción de contenidos |
KR101777348B1 (ko) * | 2010-02-23 | 2017-09-11 | 삼성전자주식회사 | 데이터 전송 방법 및 장치와 데이터 수신 방법 및 장치 |
KR101781873B1 (ko) * | 2010-04-19 | 2017-09-26 | 엘지전자 주식회사 | 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치 |
KR101702562B1 (ko) * | 2010-06-18 | 2017-02-03 | 삼성전자 주식회사 | 멀티미디어 스트림 파일의 저장 파일 포맷, 저장 방법 및 이를 이용한 클라이언트 장치 |
US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
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 |
KR20120034550A (ko) | 2010-07-20 | 2012-04-12 | 한국전자통신연구원 | 스트리밍 컨텐츠 제공 장치 및 방법 |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
KR20120060134A (ko) * | 2010-08-16 | 2012-06-11 | 삼성전자주식회사 | 광고 재생 방법 및 장치 |
US9317622B1 (en) * | 2010-08-17 | 2016-04-19 | Amazon Technologies, Inc. | Methods and systems for fragmenting and recombining content structured language data content to reduce latency of processing and rendering operations |
CN102130936B (zh) * | 2010-08-17 | 2013-10-09 | 华为技术有限公司 | 一种在动态http流传输方案中支持时移回看的方法和装置 |
KR101737325B1 (ko) * | 2010-08-19 | 2017-05-22 | 삼성전자주식회사 | 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치 |
US9794312B2 (en) | 2010-09-01 | 2017-10-17 | Electronics And Telecommunications Research Institute | Method and device for providing streaming content |
US9467493B2 (en) | 2010-09-06 | 2016-10-11 | Electronics And Telecommunication Research Institute | Apparatus and method for providing streaming content |
CN102148851B (zh) * | 2010-09-30 | 2014-09-17 | 华为技术有限公司 | 一种在动态http流传输中应用父母控制的方法和装置 |
EP2625867A1 (en) * | 2010-10-05 | 2013-08-14 | Telefonaktiebolaget L M Ericsson (publ) | A client, a content creator entity and methods thereof for media streaming |
KR101206698B1 (ko) * | 2010-10-06 | 2012-11-30 | 한국항공대학교산학협력단 | 스트리밍 콘텐츠 제공 장치 및 방법 |
US9369512B2 (en) * | 2010-10-06 | 2016-06-14 | Electronics And Telecommunications Research Institute | Apparatus and method for providing streaming content |
WO2012060581A2 (ko) * | 2010-11-02 | 2012-05-10 | 엘지전자 주식회사 | 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치 |
KR101884725B1 (ko) * | 2011-01-04 | 2018-08-03 | 톰슨 라이센싱 | 라이브 미디어 콘텐츠 전송 장치 및 방법 |
US9247312B2 (en) | 2011-01-05 | 2016-01-26 | Sonic Ip, Inc. | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
WO2012093202A1 (en) * | 2011-01-07 | 2012-07-12 | Nokia Corporation | Method and apparatus for signaling presentation |
JP2012151849A (ja) | 2011-01-19 | 2012-08-09 | Nhn Business Platform Corp | P2p基盤のストリーミングサービスのデータストリームをパケット化するシステムおよび方法 |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
KR101803970B1 (ko) * | 2011-03-16 | 2017-12-28 | 삼성전자주식회사 | 컨텐트를 구성하는 장치 및 방법 |
EP2924989A1 (en) * | 2011-03-16 | 2015-09-30 | Electronics and Telecommunications Research Institute | Apparatus and method for providing streaming content using representations |
US9112948B1 (en) | 2011-03-18 | 2015-08-18 | Amazon Technologies, Inc. | System and method for assignment and switching of content sources for a streaming content session |
US9215268B1 (en) * | 2011-03-18 | 2015-12-15 | Amazon Technologies, Inc. | System and method for selection and switching of content sources for a streaming content session |
US20120311076A1 (en) * | 2011-05-31 | 2012-12-06 | Cisco Technology, Inc. | System and method to support different uniform resource locator formats for content on different network elements |
CN107529709B (zh) | 2011-06-16 | 2019-05-07 | Ge视频压缩有限责任公司 | 解码器、编码器、解码和编码视频的方法及存储介质 |
US8812662B2 (en) | 2011-06-29 | 2014-08-19 | Sonic Ip, Inc. | Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content |
US10320869B2 (en) * | 2011-07-07 | 2019-06-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Network-capacity optimized adaptive HTTP streaming |
US8925021B2 (en) | 2011-07-11 | 2014-12-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for trick play in over-the-top video delivery |
UA114674C2 (uk) | 2011-07-15 | 2017-07-10 | ДЖ.І. ВІДІЕУ КЕМПРЕШН, ЛЛСі | Ініціалізація контексту в ентропійному кодуванні |
US9467708B2 (en) | 2011-08-30 | 2016-10-11 | Sonic Ip, Inc. | Selection of resolutions for seamless resolution switching of multimedia content |
KR101928910B1 (ko) | 2011-08-30 | 2018-12-14 | 쏘닉 아이피, 아이엔씨. | 복수의 최대 비트레이트 레벨들을 사용하여 인코딩된 비디오를 인코딩하고 스트리밍하기 위한 시스템들 및 방법들 |
US8806188B2 (en) | 2011-08-31 | 2014-08-12 | Sonic Ip, Inc. | Systems and methods for performing adaptive bitrate streaming using automatically generated top level index files |
US8799647B2 (en) | 2011-08-31 | 2014-08-05 | Sonic Ip, Inc. | Systems and methods for application identification |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US8964977B2 (en) | 2011-09-01 | 2015-02-24 | Sonic Ip, Inc. | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
EP2769523A4 (en) * | 2011-10-17 | 2015-07-22 | Ericsson Telefon Ab L M | ADAPTIVE CONTINUOUS DIFFUSION METHOD, LOCAL STORAGE AND ENHANCED POST-STORAGE QUALITY OF A CONTENT FILE |
US10003817B2 (en) | 2011-11-07 | 2018-06-19 | Microsoft Technology Licensing, Llc | Signaling of state information for a decoded picture buffer and reference picture lists |
KR101922552B1 (ko) * | 2011-12-06 | 2018-11-29 | 삼성전자주식회사 | 멀티미디어 컨텐트 전송 시스템에서 적응적 스트리밍을 이용한 트래픽 제어 방법 및 장치 |
US8976814B2 (en) * | 2011-12-09 | 2015-03-10 | General Electric Company | Method of transporting data from sending node to destination node |
WO2013089437A1 (ko) * | 2011-12-12 | 2013-06-20 | 엘지전자 주식회사 | 미디어 컨텐트를 수신하는 장치 및 방법 |
WO2013090280A2 (en) * | 2011-12-15 | 2013-06-20 | Dolby Laboratories Licensing Corporation | Bandwidth adaptation for dynamic adaptive transferring of multimedia |
EP2798816B1 (en) * | 2011-12-29 | 2016-05-11 | Koninklijke KPN N.V. | Network-initiated content streaming control |
US8977704B2 (en) * | 2011-12-29 | 2015-03-10 | Nokia Corporation | Method and apparatus for flexible caching of delivered media |
US8918908B2 (en) | 2012-01-06 | 2014-12-23 | Sonic Ip, Inc. | Systems and methods for accessing digital content using electronic tickets and ticket tokens |
US10218756B2 (en) | 2012-01-06 | 2019-02-26 | Comcast Cable Communications, Llc | Streamlined delivery of video content |
US8850054B2 (en) * | 2012-01-17 | 2014-09-30 | International Business Machines Corporation | Hypertext transfer protocol live streaming |
US9401968B2 (en) | 2012-01-20 | 2016-07-26 | Nokia Techologies Oy | Method and apparatus for enabling pre-fetching of media |
US20130246578A1 (en) * | 2012-03-16 | 2013-09-19 | Cisco Technology, Inc. | Adaptive Bit Rate Optimizations When Joining Single Profile Multicast Streams |
US20130243079A1 (en) * | 2012-03-19 | 2013-09-19 | Nokia Siemens Networks Oy | Storage and processing savings when adapting video bit rate to link speed |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
WO2013152326A1 (en) | 2012-04-05 | 2013-10-10 | Huawei Technologies Co., Ltd. | System and method for secure asynchronous event notification for adaptive streaming based on iso base media file format |
US9613042B1 (en) | 2012-04-09 | 2017-04-04 | Conviva Inc. | Dynamic generation of video manifest files |
US9438883B2 (en) | 2012-04-09 | 2016-09-06 | Intel Corporation | Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content |
US9712887B2 (en) * | 2012-04-12 | 2017-07-18 | Arris Canada, Inc. | Methods and systems for real-time transmuxing of streaming media content |
KR102090261B1 (ko) | 2012-04-18 | 2020-03-17 | 구글 엘엘씨 | 임의의 시점에서 스트리밍 미디어에 컨텐츠를 삽입하는 방법 및 시스템 |
US9635004B2 (en) | 2012-04-25 | 2017-04-25 | Futurewei Technologies, Inc. | Systems and methods for segment integrity and authenticity for adaptive streaming |
US9628531B2 (en) * | 2012-04-25 | 2017-04-18 | Futurewei Technologies, Inc. | Systems and methods for controlling client behavior in adaptive streaming |
KR101617340B1 (ko) | 2012-04-26 | 2016-05-02 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 어댑티브 스트리밍을 위한 세그먼트 암호화 및 키 유도를 시그널링하기 위한 시스템 및 방법 |
KR101501344B1 (ko) * | 2012-05-02 | 2015-03-10 | 삼성전자주식회사 | 멀티미디어 서비스 송수신 방법 및 장치 |
US9185470B2 (en) * | 2012-05-03 | 2015-11-10 | Nuance Communications, Inc. | Remote processing of content |
US20130311668A1 (en) * | 2012-05-15 | 2013-11-21 | Shahid Akhtar | Methods And Systems For Providing Fairness And Stability To Video Streams |
US9241166B2 (en) | 2012-06-11 | 2016-01-19 | Qualcomm Incorporated | Technique for adapting device tasks based on the available device resources |
US9674247B1 (en) * | 2012-06-21 | 2017-06-06 | Google Inc. | Generating manifest files for digital media items |
EP2680527A1 (en) * | 2012-06-28 | 2014-01-01 | Alcatel-Lucent | Adaptive streaming aware node, encoder and client enabling smooth quality transition |
BR122015005194A2 (pt) * | 2012-06-28 | 2019-08-20 | Ericsson Ab | Método e sistema para inserção de anúncio em entrega de mídia ao vivo over the top |
KR20140002447A (ko) * | 2012-06-29 | 2014-01-08 | 삼성전자주식회사 | 멀티미디어 시스템에서 적응적 미디어 구조 송수신 방법 및 장치 |
US10616297B2 (en) * | 2012-07-09 | 2020-04-07 | Futurewei Technologies, Inc. | Content-specific identification and timing behavior in dynamic adaptive streaming over hypertext transfer protocol |
JP6064249B2 (ja) * | 2012-07-09 | 2017-01-25 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 動的適応ストリーミングオーバーハイパーテキスト転送プロトコルクライアント挙動フレームワークおよびセッション管理の実装 |
US8495675B1 (en) * | 2012-07-30 | 2013-07-23 | Mdialog Corporation | Method and system for dynamically inserting content into streaming media |
US9125073B2 (en) | 2012-08-03 | 2015-09-01 | Intel Corporation | Quality-aware adaptive streaming over hypertext transfer protocol using quality attributes in manifest file |
JP5961760B2 (ja) | 2012-08-22 | 2016-08-02 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Mpeg−2トランスポートストリームにおけるiso−bmffイベントボックスの搬送 |
US9215269B2 (en) * | 2012-08-23 | 2015-12-15 | Amazon Technologies, Inc. | Predictive caching for content |
US9936267B2 (en) | 2012-08-31 | 2018-04-03 | Divx Cf Holdings Llc | System and method for decreasing an initial buffering period of an adaptive streaming system |
US9246965B1 (en) | 2012-09-05 | 2016-01-26 | Conviva Inc. | Source assignment based on network partitioning |
US10182096B1 (en) | 2012-09-05 | 2019-01-15 | Conviva Inc. | Virtual resource locator |
TWI669952B (zh) * | 2012-09-18 | 2019-08-21 | 美商Vid衡器股份有限公司 | 使用圖塊及圖塊組的感興趣區域視訊編碼的方法及裝置 |
US9648352B2 (en) | 2012-09-24 | 2017-05-09 | Qualcomm Incorporated | Expanded decoding unit definition |
US9313500B2 (en) | 2012-09-30 | 2016-04-12 | Microsoft Technology Licensing, Llc | Conditional signalling of reference picture list modification information |
WO2014054925A1 (en) * | 2012-10-04 | 2014-04-10 | Samsung Electronics Co., Ltd. | Apparatus for reproducing recording medium and method thereof |
ITTO20120901A1 (it) * | 2012-10-15 | 2014-04-16 | Rai Radiotelevisione Italiana | Procedimento di codifica e decodifica di un video digitale e relativi dispositivi di codifica e decodifica |
CN104854839B (zh) * | 2012-10-19 | 2018-10-12 | 交互数字专利控股公司 | Http流传输的多假设速率自适应 |
ES2621240T3 (es) * | 2012-11-13 | 2017-07-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Procesado de datos multimedia |
US9813664B1 (en) * | 2012-11-29 | 2017-11-07 | Discovery Communications, Llc | Method and system for creating media content |
US9143543B2 (en) * | 2012-11-30 | 2015-09-22 | Google Technology Holdings LLC | Method and system for multi-streaming multimedia data |
US9128892B2 (en) | 2012-12-10 | 2015-09-08 | Netflix, Inc. | Managing content on an ISP cache |
US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
EP2941897B1 (en) * | 2013-01-07 | 2019-03-13 | Akamai Technologies, Inc. | Connected-media end user experience using an overlay network |
US10015437B2 (en) | 2013-01-15 | 2018-07-03 | Qualcomm Incorporated | Supporting transport diversity and time-shifted buffers for media streaming over a network |
EP2947887A4 (en) * | 2013-01-18 | 2016-08-24 | Sony Corp | CONTENT SERVICES, CONTENT PROCESSING, CONTENT PROCESSING SYSTEM, CLIENT DEVICE AND CONTENT MANAGEMENT PROCESS |
WO2014113710A1 (en) * | 2013-01-18 | 2014-07-24 | Huawei Technologies. Co., Ltd | Method and apparatus for performing adaptive streaming on media contents |
US9961415B2 (en) | 2013-01-24 | 2018-05-01 | Google Llc | Method and system for identifying events in a streaming media program |
US9832492B2 (en) * | 2013-01-29 | 2017-11-28 | Espial Group Inc. | Distribution of adaptive bit rate video streaming via hyper-text transfer protocol |
EP2954653B1 (en) * | 2013-02-06 | 2018-11-28 | Telefonaktiebolaget LM Ericsson (publ) | Technique for detecting an encoder functionality issue |
EP2956865A4 (en) | 2013-02-12 | 2016-09-07 | Ericsson Ab | PERSONAL OVER-THE-TOP NETWORK VIDEO RECORDER |
US10142390B2 (en) * | 2013-02-15 | 2018-11-27 | Nec Corporation | Method and system for providing content in content delivery networks |
US20140281002A1 (en) * | 2013-03-14 | 2014-09-18 | General Instrument Corporation | Devices, systems, and methods for managing and adjusting adaptive streaming traffic |
US10397292B2 (en) | 2013-03-15 | 2019-08-27 | Divx, Llc | Systems, methods, and media for delivery of content |
US9906785B2 (en) | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
US9578333B2 (en) | 2013-03-15 | 2017-02-21 | Qualcomm Incorporated | Method for decreasing the bit rate needed to transmit videos over a network by dropping video frames |
CN105379293B (zh) | 2013-04-19 | 2019-03-26 | 华为技术有限公司 | 基于超文本协议的动态自适应流媒体中的媒体质量信息指示 |
US9338209B1 (en) * | 2013-04-23 | 2016-05-10 | Cisco Technology, Inc. | Use of metadata for aiding adaptive streaming clients |
CN104125516B (zh) * | 2013-04-24 | 2018-09-28 | 华为技术有限公司 | 媒体文件接收、媒体文件发送方法和装置及系统 |
US9654758B2 (en) * | 2013-04-26 | 2017-05-16 | Microsoft Technology Licensing, Llc | Synchronizing external data to video playback |
CA2875845C (en) * | 2013-05-02 | 2020-08-25 | This Technology, Inc. | Method and system for efficient manifest manipulation |
US9973559B2 (en) * | 2013-05-29 | 2018-05-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for presenting content streams to a client device |
US9094737B2 (en) | 2013-05-30 | 2015-07-28 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9380099B2 (en) | 2013-05-31 | 2016-06-28 | Sonic Ip, Inc. | Synchronizing multiple over the top streaming clients |
US9100687B2 (en) | 2013-05-31 | 2015-08-04 | Sonic Ip, Inc. | Playback synchronization across playback devices |
US9444863B2 (en) | 2013-06-06 | 2016-09-13 | Intel Corporation | Manager for DASH media streaming |
US8762564B1 (en) * | 2013-07-10 | 2014-06-24 | Mdialog Corporation | Method and system for dynamically selecting, assembling and inserting content into stream media |
KR101909160B1 (ko) | 2013-07-12 | 2018-10-18 | 캐논 가부시끼가이샤 | 푸시 메시지 제어를 이용하는 적응적 데이터 스트리밍 방법 |
WO2015009723A1 (en) * | 2013-07-15 | 2015-01-22 | Huawei Technologies Co., Ltd. | Just-in-time dereferencing of remote elements in dynamic adaptive streaming over hypertext transfer protocol |
CN105230024B (zh) * | 2013-07-19 | 2019-05-24 | 华为技术有限公司 | 一种媒体表示自适应方法、装置及计算机存储介质 |
EP2973228B1 (en) * | 2013-07-26 | 2019-08-28 | Huawei Technologies Co., Ltd. | Spatial adaptation in adaptive streaming |
JP6327809B2 (ja) * | 2013-08-20 | 2018-05-23 | キヤノン株式会社 | 受信装置、制御方法及びプログラム |
US9124947B2 (en) | 2013-09-04 | 2015-09-01 | Arris Enterprises, Inc. | Averting ad skipping in adaptive bit rate systems |
US9258747B2 (en) * | 2013-09-17 | 2016-02-09 | Intel IP Corporation | User equipment and methods for fast handover failure recovery in 3GPP LTE network |
US9955203B2 (en) | 2013-09-24 | 2018-04-24 | Ericsson Ab | Recording device and method for efficient network personal video recorder manipulation through adaptive bit rate streaming |
US10749761B1 (en) * | 2013-09-27 | 2020-08-18 | Amazon Technologies, Inc. | Unique user session tracking in adaptive bitrate video delivery |
US20150095450A1 (en) * | 2013-09-30 | 2015-04-02 | Qualcomm Incorporated | Utilizing multiple switchable adaptation sets for streaming media data |
US9270721B2 (en) | 2013-10-08 | 2016-02-23 | Qualcomm Incorporated | Switching between adaptation sets during media streaming |
US9621919B2 (en) * | 2013-10-23 | 2017-04-11 | Qualcomm Incorporated | Multi-layer video file format designs |
WO2015081218A1 (en) | 2013-11-27 | 2015-06-04 | Interdigital Patent Holdings, Inc. | Media presentation description |
KR101462557B1 (ko) * | 2013-12-20 | 2014-11-27 | 연세대학교 산학협력단 | Dash에서 레프리젠테이션을 재구성하는 방법 |
EP2890075B1 (en) * | 2013-12-26 | 2016-12-14 | Telefonica Digital España, S.L.U. | A method and a system for smooth streaming of media content in a distributed content delivery network |
US9386067B2 (en) | 2013-12-30 | 2016-07-05 | Sonic Ip, Inc. | Systems and methods for playing adaptive bitrate streaming content by multicast |
US10476930B2 (en) * | 2014-01-06 | 2019-11-12 | Intel IP Corporation | Client/server signaling commands for dash |
KR102154800B1 (ko) * | 2014-01-10 | 2020-09-10 | 삼성전자주식회사 | 전자 장치의 데이터 스트리밍 방법 및 그 전자 장치 |
JP2015136057A (ja) * | 2014-01-17 | 2015-07-27 | ソニー株式会社 | 通信装置、通信データ生成方法、および通信データ処理方法 |
EP3105931A4 (en) | 2014-02-10 | 2017-08-23 | LG Electronics Inc. | Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals |
US9900362B2 (en) | 2014-02-11 | 2018-02-20 | Kiswe Mobile Inc. | Methods and apparatus for reducing latency shift in switching between distinct content streams |
CN106416198A (zh) * | 2014-03-20 | 2017-02-15 | 三星电子株式会社 | 用于使用http流的dash流的方法和装置 |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
CA2944773A1 (en) * | 2014-04-11 | 2015-10-15 | Sony Corporation | Reception apparatus, reception method, transmission apparatus, and transmission method |
US9544388B1 (en) | 2014-05-09 | 2017-01-10 | Amazon Technologies, Inc. | Client-side predictive caching for content |
US20150350622A1 (en) | 2014-05-30 | 2015-12-03 | Apple Inc. | Packed i-frames |
US11869038B2 (en) * | 2014-06-24 | 2024-01-09 | Arris Enterprises Llc | Tracking ad preferences in adaptive bit rate systems |
EP3163570A4 (en) * | 2014-06-30 | 2018-02-14 | Sony Corporation | Information processor and information-processing method |
EP3169078A4 (en) * | 2014-07-07 | 2018-03-07 | Sony Corporation | Reception device, reception method, transmission device, and transmission method |
KR102597985B1 (ko) | 2014-08-07 | 2023-11-06 | 디빅스, 엘엘씨 | 독립적으로 인코딩된 타일을 포함한 기본 비트스트림을 보호하는 시스템 및 방법 |
US9973345B2 (en) * | 2014-09-10 | 2018-05-15 | Qualcomm Incorporated | Calculating and signaling segment availability times for segments of media data |
US9894130B2 (en) * | 2014-09-23 | 2018-02-13 | Intel Corporation | Video quality enhancement |
US9681185B2 (en) * | 2014-11-04 | 2017-06-13 | Spot Trender Inc. | Content utilization paramerization |
US10869099B2 (en) | 2014-11-26 | 2020-12-15 | Sony Corporation | Transmission device, transmission method, reception device, and reception method |
US20160155477A1 (en) * | 2014-12-01 | 2016-06-02 | Microsoft Corporation | Identifying Media Types |
US20160164943A1 (en) * | 2014-12-05 | 2016-06-09 | Qualcomm Incorporated | Transport interface for multimedia and file transport |
US10305955B1 (en) | 2014-12-08 | 2019-05-28 | Conviva Inc. | Streaming decision in the cloud |
US10178043B1 (en) | 2014-12-08 | 2019-01-08 | Conviva Inc. | Dynamic bitrate range selection in the cloud for optimized video streaming |
US11778014B2 (en) * | 2014-12-12 | 2023-10-03 | Arris Enterprises Llc | Throttling content download in adaptive HTTP live streaming |
JP2016116065A (ja) * | 2014-12-15 | 2016-06-23 | 日本放送協会 | 受信機、送信機、及びコンテンツの受信方法 |
US9414130B2 (en) * | 2014-12-15 | 2016-08-09 | At&T Intellectual Property, L.P. | Interactive content overlay |
CN104484185B (zh) * | 2014-12-30 | 2018-03-20 | 深圳市大疆创新科技有限公司 | 固件生成系统及方法 |
KR102012682B1 (ko) | 2015-01-06 | 2019-08-22 | 디브이엑스, 엘엘씨 | 디바이스들간에 콘텐트를 인코딩 및 공유하기 위한 시스템들 및 방법들 |
US10270823B2 (en) * | 2015-02-10 | 2019-04-23 | Qualcomm Incorporated | Low latency video streaming |
KR101897959B1 (ko) | 2015-02-27 | 2018-09-12 | 쏘닉 아이피, 아이엔씨. | 라이브 비디오 인코딩 및 스트리밍에서의 프레임 복제 및 프레임 확장을 위한 시스템 및 방법 |
US10749930B2 (en) | 2015-03-02 | 2020-08-18 | Qualcomm Incorporated | Indication for partial segment |
US10659507B2 (en) * | 2015-03-02 | 2020-05-19 | Qualcomm Incorporated | Indication for partial segment |
US10412138B2 (en) | 2015-03-02 | 2019-09-10 | Qualcomm Incorporated | Indication for partial segment |
US9326046B1 (en) | 2015-03-19 | 2016-04-26 | Amazon Technologies, Inc. | Uninterrupted playback of video streams using lower quality cached files |
WO2017004196A1 (en) | 2015-06-29 | 2017-01-05 | Vid Scale, Inc. | Dash caching proxy application |
WO2017007192A1 (ko) | 2015-07-06 | 2017-01-12 | 엘지전자 주식회사 | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 |
US10652603B2 (en) * | 2015-07-09 | 2020-05-12 | Triton Us Vp Acquision Co. | Transitioning between broadcast and unicast streams |
US10693936B2 (en) | 2015-08-25 | 2020-06-23 | Qualcomm Incorporated | Transporting coded audio data |
EP3343938A4 (en) * | 2015-08-28 | 2019-03-13 | Sony Corporation | RECEIVING DEVICE, TRANSMISSION DEVICE, AND DATA PROCESSING METHOD |
US11336928B1 (en) | 2015-09-24 | 2022-05-17 | Amazon Technologies, Inc. | Predictive caching of identical starting sequences in content |
WO2017061854A1 (en) * | 2015-10-08 | 2017-04-13 | Tradecast B.V. | Client and method for playing a sequence of video streams, and corresponding server and computer program product |
US10516891B2 (en) * | 2015-11-20 | 2019-12-24 | Intel Corporation | Method and system of reference frame caching for video coding |
EP3179688A1 (en) * | 2015-12-11 | 2017-06-14 | Koninklijke KPN N.V. | Updating part of a manifest file on the basis of patches |
US9998746B2 (en) * | 2016-02-10 | 2018-06-12 | Amazon Technologies, Inc. | Video decoder memory optimization |
JP6981257B2 (ja) * | 2016-02-12 | 2021-12-15 | ソニーグループ株式会社 | 情報処理装置および情報処理方法 |
US10075292B2 (en) | 2016-03-30 | 2018-09-11 | Divx, Llc | Systems and methods for quick start-up of playback |
RU2632128C1 (ru) | 2016-04-04 | 2017-10-02 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и система загрузки фрагментов изображения на клиентское устройство |
US11038938B2 (en) * | 2016-04-25 | 2021-06-15 | Time Warner Cable Enterprises Llc | Methods and apparatus for providing alternative content |
CN105898625B (zh) * | 2016-04-29 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 一种播放处理方法及终端设备 |
US10129574B2 (en) | 2016-05-24 | 2018-11-13 | Divx, Llc | Systems and methods for providing variable speeds in a trick-play mode |
US10231001B2 (en) | 2016-05-24 | 2019-03-12 | Divx, Llc | Systems and methods for providing audio content during trick-play playback |
US10116719B1 (en) | 2016-06-03 | 2018-10-30 | Amazon Technologies, Inc. | Customized dash manifest |
US10104143B1 (en) * | 2016-06-03 | 2018-10-16 | Amazon Technologies, Inc. | Manifest segmentation |
JP6669403B2 (ja) * | 2016-06-03 | 2020-03-18 | キヤノン株式会社 | 通信装置、通信制御方法および通信システム |
US10432690B1 (en) * | 2016-06-03 | 2019-10-01 | Amazon Technologies, Inc. | Manifest partitioning |
US10148989B2 (en) | 2016-06-15 | 2018-12-04 | Divx, Llc | Systems and methods for encoding video content |
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 |
US10389785B2 (en) * | 2016-07-17 | 2019-08-20 | Wei-Chung Chang | Method for adaptively streaming an audio/visual material |
US10367865B2 (en) | 2016-07-28 | 2019-07-30 | Verizon Digital Media Services Inc. | Encodingless transmuxing |
EP3497909B1 (en) | 2016-08-11 | 2022-06-01 | Telefonaktiebolaget LM Ericsson (publ) | Improved adaptive bit rate streaming of live content with manifest update push notification or long poll |
ES2896803T3 (es) * | 2016-08-11 | 2022-02-25 | Ericsson Telefon Ab L M | Transmisión con tasa de bits adaptativa mejorada de contenido en vivo |
US10412412B1 (en) * | 2016-09-30 | 2019-09-10 | Amazon Technologies, Inc. | Using reference-only decoding of non-viewed sections of a projected video |
US10553029B1 (en) | 2016-09-30 | 2020-02-04 | Amazon Technologies, Inc. | Using reference-only decoding of non-viewed sections of a projected video |
EP3520353A1 (en) * | 2016-09-30 | 2019-08-07 | Net Insight Intellectual Property AB | Playout buffering in a live content distribution system |
US10063902B2 (en) | 2016-12-22 | 2018-08-28 | Cisco Technology, Inc. | ABR network profile selection engine |
US10476943B2 (en) * | 2016-12-30 | 2019-11-12 | Facebook, Inc. | Customizing manifest file for enhancing media streaming |
US10440085B2 (en) | 2016-12-30 | 2019-10-08 | Facebook, Inc. | Effectively fetch media content for enhancing media streaming |
WO2018122402A1 (en) * | 2017-01-02 | 2018-07-05 | Koninklijke Kpn N.V. | Selectively updating a dynamic manifest file |
US10609356B1 (en) | 2017-01-23 | 2020-03-31 | Amazon Technologies, Inc. | Using a temporal enhancement layer to encode and decode stereoscopic video content |
US10498795B2 (en) | 2017-02-17 | 2019-12-03 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
GB2593598B (en) | 2017-04-21 | 2021-12-29 | Zenimax Media Inc | Systems and methods for rendering & pre-encoded load estimation based encoder hinting |
US10887645B2 (en) * | 2017-07-13 | 2021-01-05 | Qualcomm Incorporated | Processing media data using file tracks for web content |
US10587883B2 (en) * | 2017-07-14 | 2020-03-10 | Qualcomm Incorporated | Region-wise packing, content coverage, and signaling frame packing for media content |
CN113206826B (zh) * | 2018-09-28 | 2022-10-04 | 华为技术有限公司 | 传输媒体数据的方法、客户端和服务器 |
US11381867B2 (en) * | 2019-01-08 | 2022-07-05 | Qualcomm Incorporated | Multiple decoder interface for streamed media data |
US11757965B2 (en) | 2019-02-19 | 2023-09-12 | Apple Inc. | Low latency streaming media |
BR112021018802A2 (pt) | 2019-03-21 | 2021-11-23 | Divx Llc | Sistemas e métodos para enxames de multimídia |
US11831879B2 (en) * | 2019-09-20 | 2023-11-28 | Comcast Cable Communications, Llc | Methods, systems, and apparatuses for enhanced adaptive bitrate segmentation |
EP4111700A4 (en) * | 2020-02-28 | 2024-03-20 | Hulu Llc | IDENTIFICATION OF ELEMENTS IN A GROUP TO REPLACE DYNAMIC ELEMENTS |
EP4111698A4 (en) * | 2020-02-28 | 2024-03-13 | Hulu Llc | CLIENT-BASED REMOTE ELEMENT RESOLUTION STORAGE |
US11166055B2 (en) * | 2020-03-31 | 2021-11-02 | Viacom International Inc. | Fast video stream startup |
EP3958579A1 (en) * | 2020-08-17 | 2022-02-23 | THEO Technologies | A media decoder for decoding streamed media and a method therefor |
US11880921B2 (en) | 2022-01-27 | 2024-01-23 | Cobalt Inc. | System and method for multimedia presentation |
Family Cites Families (563)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3909721A (en) | 1972-01-31 | 1975-09-30 | Signatron | Signal processing system |
US4365338A (en) | 1980-06-27 | 1982-12-21 | Harris Corporation | Technique for high rate digital transmission over a dynamic dispersive channel |
US4965825A (en) | 1981-11-03 | 1990-10-23 | The Personalized Mass Media Corporation | Signal processing apparatus and methods |
US4589112A (en) | 1984-01-26 | 1986-05-13 | International Business Machines Corporation | System for multiple error detection with single and double bit error correction |
US4901319A (en) | 1988-03-18 | 1990-02-13 | General Electric Company | Transmission system with adaptive interleaving |
GB8815978D0 (en) | 1988-07-05 | 1988-08-10 | British Telecomm | Method & apparatus for encoding decoding & transmitting data in compressed form |
US5136592A (en) | 1989-06-28 | 1992-08-04 | Digital Equipment Corporation | Error detection and correction system for long burst errors |
US5701582A (en) | 1989-08-23 | 1997-12-23 | Delta Beta Pty. Ltd. | Method and apparatus for efficient transmissions of programs |
US5421031A (en) | 1989-08-23 | 1995-05-30 | Delta Beta Pty. Ltd. | Program transmission optimisation |
US7594250B2 (en) | 1992-04-02 | 2009-09-22 | Debey Henry C | Method and system of program transmission optimization using a redundant transmission sequence |
US5329369A (en) | 1990-06-01 | 1994-07-12 | Thomson Consumer Electronics, Inc. | Asymmetric picture compression |
US5455823A (en) | 1990-11-06 | 1995-10-03 | Radio Satellite Corporation | Integrated communications terminal |
US5164963A (en) | 1990-11-07 | 1992-11-17 | At&T Bell Laboratories | Coding for digital transmission |
US5465318A (en) | 1991-03-28 | 1995-11-07 | Kurzweil Applied Intelligence, Inc. | Method for generating a speech recognition model for a non-vocabulary utterance |
US5379297A (en) | 1992-04-09 | 1995-01-03 | Network Equipment Technologies, Inc. | Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode |
EP0543070A1 (en) | 1991-11-21 | 1993-05-26 | International Business Machines Corporation | Coding system and method using quaternary codes |
US6850252B1 (en) | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
US5371532A (en) | 1992-05-15 | 1994-12-06 | Bell Communications Research, Inc. | Communications architecture and method for distributing information services |
US5425050A (en) | 1992-10-23 | 1995-06-13 | Massachusetts Institute Of Technology | Television transmission system using spread spectrum and orthogonal frequency-division multiplex |
US5372532A (en) | 1993-01-26 | 1994-12-13 | Robertson, Jr.; George W. | Swivel head cap connector |
EP0613249A1 (en) | 1993-02-12 | 1994-08-31 | Altera Corporation | Custom look-up table with reduced number of architecture bits |
DE4316297C1 (de) | 1993-05-14 | 1994-04-07 | Fraunhofer Ges Forschung | Frequenzanalyseverfahren |
AU665716B2 (en) | 1993-07-05 | 1996-01-11 | Mitsubishi Denki Kabushiki Kaisha | A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame |
US5590405A (en) | 1993-10-29 | 1996-12-31 | Lucent Technologies Inc. | Communication technique employing variable information transmission |
JP2576776B2 (ja) | 1993-11-10 | 1997-01-29 | 日本電気株式会社 | パケット伝送方法・パケット伝送装置 |
US5517508A (en) | 1994-01-26 | 1996-05-14 | Sony Corporation | Method and apparatus for detection and error correction of packetized digital data |
CA2140850C (en) | 1994-02-24 | 1999-09-21 | Howard Paul Katseff | Networked system for display of multimedia presentations |
US5566208A (en) | 1994-03-17 | 1996-10-15 | Philips Electronics North America Corp. | Encoder buffer having an effective size which varies automatically with the channel bit-rate |
US5432787A (en) | 1994-03-24 | 1995-07-11 | Loral Aerospace Corporation | Packet data transmission system with adaptive data recovery method |
US5757415A (en) | 1994-05-26 | 1998-05-26 | Sony Corporation | On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks are re-arranged for storage to data storage means |
US5802394A (en) | 1994-06-06 | 1998-09-01 | Starlight Networks, Inc. | Method for accessing one or more streams in a video storage system using multiple queues and maintaining continuity thereof |
US5739864A (en) | 1994-08-24 | 1998-04-14 | Macrovision Corporation | Apparatus for inserting blanked formatted fingerprint data (source ID, time/date) in to a video signal |
US5568614A (en) | 1994-07-29 | 1996-10-22 | International Business Machines Corporation | Data streaming between peer subsystems of a computer system |
US5668948A (en) | 1994-09-08 | 1997-09-16 | International Business Machines Corporation | Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports |
US5926205A (en) | 1994-10-19 | 1999-07-20 | Imedia Corporation | Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program |
US5659614A (en) | 1994-11-28 | 1997-08-19 | Bailey, Iii; John E. | Method and system for creating and storing a backup copy of file data stored on a computer |
US5617541A (en) | 1994-12-21 | 1997-04-01 | International Computer Science Institute | System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionalized priority level and received fractionalized packets |
JP3614907B2 (ja) | 1994-12-28 | 2005-01-26 | 株式会社東芝 | データ再送制御方法及びデータ再送制御システム |
EP0823153A4 (en) | 1995-04-27 | 1999-10-20 | Stevens Inst Technology | HIGH INTEGRITY TRANSPORT METHOD FOR TIME-CRITICAL MULTIMEDIA NETWORK APPLICATIONS |
US5835165A (en) | 1995-06-07 | 1998-11-10 | Lsi Logic Corporation | Reduction of false locking code words in concatenated decoders |
US5805825A (en) | 1995-07-26 | 1998-09-08 | Intel Corporation | Method for semi-reliable, unidirectional broadcast information services |
US6079041A (en) | 1995-08-04 | 2000-06-20 | Sanyo Electric Co., Ltd. | Digital modulation circuit and digital demodulation circuit |
US5754563A (en) | 1995-09-11 | 1998-05-19 | Ecc Technologies, Inc. | Byte-parallel system for implementing reed-solomon error-correcting codes |
US6123756A (en) * | 1995-09-29 | 2000-09-26 | Remmers Bauchemine Gmbh | Wood-protecting agent |
KR0170298B1 (ko) | 1995-10-10 | 1999-04-15 | 김광호 | 디지탈 비디오 테이프의 기록 방법 |
US5751336A (en) | 1995-10-12 | 1998-05-12 | International Business Machines Corporation | Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems |
JP3305183B2 (ja) | 1996-01-12 | 2002-07-22 | 株式会社東芝 | ディジタル放送受信端末装置 |
US6012159A (en) | 1996-01-17 | 2000-01-04 | Kencast, Inc. | Method and system for error-free data transfer |
US5852565A (en) | 1996-01-30 | 1998-12-22 | Demografx | Temporal and resolution layering in advanced television |
US5936659A (en) | 1996-01-31 | 1999-08-10 | Telcordia Technologies, Inc. | Method for video delivery using pyramid broadcasting |
US5903775A (en) | 1996-06-06 | 1999-05-11 | International Business Machines Corporation | Method for the sequential transmission of compressed video information at varying data rates |
US5745504A (en) | 1996-06-25 | 1998-04-28 | Telefonaktiebolaget Lm Ericsson | Bit error resilient variable length code |
US5940863A (en) | 1996-07-26 | 1999-08-17 | Zenith Electronics Corporation | Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators |
US5936949A (en) | 1996-09-05 | 1999-08-10 | Netro Corporation | Wireless ATM metropolitan area network |
KR100261706B1 (ko) | 1996-12-17 | 2000-07-15 | 가나이 쓰도무 | 디지탈방송신호의 수신장치와 수신 및 기록재생장치 |
US6044485A (en) | 1997-01-03 | 2000-03-28 | Ericsson Inc. | Transmitter method and transmission system using adaptive coding based on channel characteristics |
US6011590A (en) | 1997-01-03 | 2000-01-04 | Ncr Corporation | Method of transmitting compressed information to minimize buffer space |
US6141053A (en) | 1997-01-03 | 2000-10-31 | Saukkonen; Jukka I. | Method of optimizing bandwidth for transmitting compressed video data streams |
EP0854650A3 (en) | 1997-01-17 | 2001-05-02 | NOKIA TECHNOLOGY GmbH | Method for addressing a service in digital video broadcasting |
US5946357A (en) | 1997-01-17 | 1999-08-31 | Telefonaktiebolaget L M Ericsson | Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal |
US5983383A (en) | 1997-01-17 | 1999-11-09 | Qualcom Incorporated | Method and apparatus for transmitting and receiving concatenated code data |
US6014706A (en) | 1997-01-30 | 2000-01-11 | Microsoft Corporation | Methods and apparatus for implementing control functions in a streamed video display system |
EP1024672A1 (en) | 1997-03-07 | 2000-08-02 | Sanyo Electric Co., Ltd. | Digital broadcast receiver and display |
US6115420A (en) | 1997-03-14 | 2000-09-05 | Microsoft Corporation | Digital video signal encoder and encoding method |
DE19716011A1 (de) | 1997-04-17 | 1998-10-22 | Abb Research Ltd | Verfahren und Vorrichtung zur Informationsübertragung über Stromversorgungsleitungen |
US6226259B1 (en) | 1997-04-29 | 2001-05-01 | Canon Kabushiki Kaisha | Device and method for transmitting information device and method for processing information |
US5970098A (en) | 1997-05-02 | 1999-10-19 | Globespan Technologies, Inc. | Multilevel encoder |
US5844636A (en) | 1997-05-13 | 1998-12-01 | Hughes Electronics Corporation | Method and apparatus for receiving and recording digital packet data |
EP0933768A4 (en) | 1997-05-19 | 2000-10-04 | Sanyo Electric Co | DIGITAL MODULATION AND DEMODULATION |
JP4110593B2 (ja) | 1997-05-19 | 2008-07-02 | ソニー株式会社 | 信号記録方法及び信号記録装置 |
JPH1141211A (ja) | 1997-05-19 | 1999-02-12 | Sanyo Electric Co Ltd | ディジタル変調回路と変調方法、ディジタル復調回路と復調方法 |
US6128649A (en) | 1997-06-02 | 2000-10-03 | Nortel Networks Limited | Dynamic selection of media streams for display |
US6081907A (en) | 1997-06-09 | 2000-06-27 | Microsoft Corporation | Data delivery system and method for delivering data and redundant information over a unidirectional network |
US5917852A (en) | 1997-06-11 | 1999-06-29 | L-3 Communications Corporation | Data scrambling system and method and communications system incorporating same |
KR100240869B1 (ko) | 1997-06-25 | 2000-01-15 | 윤종용 | 이중 다이버서티 시스템을 위한 데이터 전송 방법 |
US6175944B1 (en) | 1997-07-15 | 2001-01-16 | Lucent Technologies Inc. | Methods and apparatus for packetizing data for transmission through an erasure broadcast channel |
US5933056A (en) | 1997-07-15 | 1999-08-03 | Exar Corporation | Single pole current mode common-mode feedback circuit |
US6047069A (en) | 1997-07-17 | 2000-04-04 | Hewlett-Packard Company | Method and apparatus for preserving error correction capabilities during data encryption/decryption |
US6904110B2 (en) | 1997-07-31 | 2005-06-07 | Francois Trans | Channel equalization system and method |
US6178536B1 (en) | 1997-08-14 | 2001-01-23 | International Business Machines Corporation | Coding scheme for file backup and systems based thereon |
FR2767940A1 (fr) | 1997-08-29 | 1999-02-26 | Canon Kk | Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre |
EP0903955A1 (en) | 1997-09-04 | 1999-03-24 | STMicroelectronics S.r.l. | Modular architecture PET decoder for ATM networks |
US6088330A (en) | 1997-09-09 | 2000-07-11 | Bruck; Joshua | Reliable array of distributed computing nodes |
US6134596A (en) | 1997-09-18 | 2000-10-17 | Microsoft Corporation | Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates |
US6272658B1 (en) | 1997-10-27 | 2001-08-07 | Kencast, Inc. | Method and system for reliable broadcasting of data files and streams |
US6081909A (en) | 1997-11-06 | 2000-06-27 | Digital Equipment Corporation | Irregularly graphed encoding technique |
US6163870A (en) | 1997-11-06 | 2000-12-19 | Compaq Computer Corporation | Message encoding with irregular graphing |
US6081918A (en) | 1997-11-06 | 2000-06-27 | Spielman; Daniel A. | Loss resilient code with cascading series of redundant layers |
US6195777B1 (en) | 1997-11-06 | 2001-02-27 | Compaq Computer Corporation | Loss resilient code with double heavy tailed series of redundant layers |
US6073250A (en) | 1997-11-06 | 2000-06-06 | Luby; Michael G. | Loss resilient decoding technique |
JP3472115B2 (ja) | 1997-11-25 | 2003-12-02 | Kddi株式会社 | マルチチャンネルを用いるビデオデータ伝送方法及びその装置 |
US5870412A (en) | 1997-12-12 | 1999-02-09 | 3Com Corporation | Forward error correction system for packet based real time media |
US6243846B1 (en) | 1997-12-12 | 2001-06-05 | 3Com Corporation | Forward error correction system for packet based data and real time media, using cross-wise parity calculation |
US6849803B1 (en) | 1998-01-15 | 2005-02-01 | Arlington Industries, Inc. | Electrical connector |
US6097320A (en) | 1998-01-20 | 2000-08-01 | Silicon Systems, Inc. | Encoder/decoder system with suppressed error propagation |
US6226301B1 (en) | 1998-02-19 | 2001-05-01 | Nokia Mobile Phones Ltd | Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system |
US6141788A (en) | 1998-03-13 | 2000-10-31 | Lucent Technologies Inc. | Method and apparatus for forward error correction in packet networks |
US6278716B1 (en) | 1998-03-23 | 2001-08-21 | University Of Massachusetts | Multicast with proactive forward error correction |
US6459811B1 (en) | 1998-04-02 | 2002-10-01 | Sarnoff Corporation | Bursty data transmission of compressed video data |
US6185265B1 (en) | 1998-04-07 | 2001-02-06 | Worldspace Management Corp. | System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload |
US6067646A (en) | 1998-04-17 | 2000-05-23 | Ameritech Corporation | Method and system for adaptive interleaving |
US6018359A (en) | 1998-04-24 | 2000-01-25 | Massachusetts Institute Of Technology | System and method for multicast video-on-demand delivery system |
US6445717B1 (en) | 1998-05-01 | 2002-09-03 | Niwot Networks, Inc. | System for recovering lost information in a data stream |
US6421387B1 (en) | 1998-05-15 | 2002-07-16 | North Carolina State University | Methods and systems for forward error correction based loss recovery for interactive video transmission |
US6937618B1 (en) | 1998-05-20 | 2005-08-30 | Sony Corporation | Separating device and method and signal receiving device and method |
US6333926B1 (en) | 1998-08-11 | 2001-12-25 | Nortel Networks Limited | Multiple user CDMA basestation modem |
BR9913277A (pt) | 1998-09-04 | 2001-09-25 | At & T Corp | Codificação de bloco-espaço e codificação de canal combinado em um arranjo de multi-antenas |
US6415326B1 (en) | 1998-09-15 | 2002-07-02 | Microsoft Corporation | Timeline correlation between multiple timeline-altered media streams |
US6320520B1 (en) | 1998-09-23 | 2001-11-20 | Digital Fountain | Information additive group code generator and decoder for communications systems |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US7243285B2 (en) | 1998-09-23 | 2007-07-10 | Digital Fountain, Inc. | Systems and methods for broadcasting information additive codes |
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US6704370B1 (en) | 1998-10-09 | 2004-03-09 | Nortel Networks Limited | Interleaving methodology and apparatus for CDMA |
IT1303735B1 (it) | 1998-11-11 | 2001-02-23 | Falorni Italia Farmaceutici S | Acidi ialuronici reticolati e loro usi medici. |
US6408128B1 (en) | 1998-11-12 | 2002-06-18 | Max Abecassis | Replaying with supplementary information a segment of a video |
US6483736B2 (en) | 1998-11-16 | 2002-11-19 | Matrix Semiconductor, Inc. | Vertically stacked field programmable nonvolatile memory and method of fabrication |
JP2000151426A (ja) | 1998-11-17 | 2000-05-30 | Toshiba Corp | インターリーブ・デインターリーブ回路 |
US6166544A (en) | 1998-11-25 | 2000-12-26 | General Electric Company | MR imaging system with interactive image contrast control |
US6876623B1 (en) | 1998-12-02 | 2005-04-05 | Agere Systems Inc. | Tuning scheme for code division multiplex broadcasting system |
JP3464981B2 (ja) | 1998-12-03 | 2003-11-10 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 情報送信装置及びその方法並びに情報受信装置及びその方法 |
US6637031B1 (en) | 1998-12-04 | 2003-10-21 | Microsoft Corporation | Multimedia presentation latency minimization |
US6496980B1 (en) | 1998-12-07 | 2002-12-17 | Intel Corporation | Method of providing replay on demand for streaming digital multimedia |
US6223324B1 (en) | 1999-01-05 | 2001-04-24 | Agere Systems Guardian Corp. | Multiple program unequal error protection for digital audio broadcasting and other applications |
JP3926499B2 (ja) | 1999-01-22 | 2007-06-06 | 株式会社日立国際電気 | 畳み込み符号軟判定復号方式の受信装置 |
US6618451B1 (en) | 1999-02-13 | 2003-09-09 | Altocom Inc | Efficient reduced state maximum likelihood sequence estimator |
US6041001A (en) | 1999-02-25 | 2000-03-21 | Lexar Media, Inc. | Method of increasing data reliability of a flash memory device without compromising compatibility |
EP1083496A1 (en) | 1999-03-03 | 2001-03-14 | Sony Corporation | Transmitter, receiver, transmitter/receiver system, transmission method and reception method |
US6466698B1 (en) | 1999-03-25 | 2002-10-15 | The United States Of America As Represented By The Secretary Of The Navy | Efficient embedded image and video compression system using lifted wavelets |
JP3256517B2 (ja) | 1999-04-06 | 2002-02-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 符号化回路、回路、パリティ生成方法及び記憶媒体 |
US6609223B1 (en) | 1999-04-06 | 2003-08-19 | Kencast, Inc. | Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter |
US6535920B1 (en) | 1999-04-06 | 2003-03-18 | Microsoft Corporation | Analyzing, indexing and seeking of streaming information |
US6804202B1 (en) | 1999-04-08 | 2004-10-12 | Lg Information And Communications, Ltd. | Radio protocol for mobile communication system and method |
US7885340B2 (en) | 1999-04-27 | 2011-02-08 | Realnetworks, Inc. | System and method for generating multiple synchronized encoded representations of media data |
FI113124B (fi) | 1999-04-29 | 2004-02-27 | Nokia Corp | Tiedonsiirto |
KR100784652B1 (ko) | 1999-05-06 | 2007-12-12 | 소니 가부시끼 가이샤 | 데이터 처리 방법/장치, 데이터 재생 방법/장치, 및 기록매체 |
KR100416996B1 (ko) | 1999-05-10 | 2004-02-05 | 삼성전자주식회사 | 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법 |
US6229824B1 (en) | 1999-05-26 | 2001-05-08 | Xm Satellite Radio Inc. | Method and apparatus for concatenated convolutional endcoding and interleaving |
US6154452A (en) | 1999-05-26 | 2000-11-28 | Xm Satellite Radio Inc. | Method and apparatus for continuous cross-channel interleaving |
AU5140200A (en) | 1999-05-26 | 2000-12-18 | Enounce, Incorporated | Method and apparatus for controlling time-scale modification during multi-media broadcasts |
JP2000353969A (ja) | 1999-06-11 | 2000-12-19 | Sony Corp | デジタル音声放送の受信機 |
US6577599B1 (en) | 1999-06-30 | 2003-06-10 | Sun Microsystems, Inc. | Small-scale reliable multicasting |
IL141800A0 (en) | 1999-07-06 | 2002-03-10 | Samsung Electronics Co Ltd | Rate matching device and method for a data communication system |
US6643332B1 (en) | 1999-07-09 | 2003-11-04 | Lsi Logic Corporation | Method and apparatus for multi-level coding of digital signals |
US6279072B1 (en) | 1999-07-22 | 2001-08-21 | Micron Technology, Inc. | Reconfigurable memory with selectable error correction storage |
JP3451221B2 (ja) | 1999-07-22 | 2003-09-29 | 日本無線株式会社 | 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体 |
US6453440B1 (en) | 1999-08-04 | 2002-09-17 | Sun Microsystems, Inc. | System and method for detecting double-bit errors and for correcting errors due to component failures |
JP2001060934A (ja) | 1999-08-20 | 2001-03-06 | Matsushita Electric Ind Co Ltd | Ofdm通信装置 |
US6430233B1 (en) | 1999-08-30 | 2002-08-06 | Hughes Electronics Corporation | Single-LNB satellite data receiver |
US6332163B1 (en) | 1999-09-01 | 2001-12-18 | Accenture, Llp | Method for providing communication services over a computer network system |
JP4284774B2 (ja) | 1999-09-07 | 2009-06-24 | ソニー株式会社 | 送信装置、受信装置、通信システム、送信方法及び通信方法 |
JP2001094625A (ja) | 1999-09-27 | 2001-04-06 | Canon Inc | データ通信装置、データ通信方法及び記憶媒体 |
US7529806B1 (en) | 1999-11-04 | 2009-05-05 | Koninklijke Philips Electronics N.V. | Partitioning of MP3 content file for emulating streaming |
JP2003510734A (ja) | 1999-09-27 | 2003-03-18 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ストリーミングのエミュレート用ファイル分割 |
US20050160272A1 (en) | 1999-10-28 | 2005-07-21 | Timecertain, Llc | System and method for providing trusted time in content of digital data files |
US6523147B1 (en) | 1999-11-11 | 2003-02-18 | Ibiquity Digital Corporation | Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system |
US6748441B1 (en) | 1999-12-02 | 2004-06-08 | Microsoft Corporation | Data carousel receiving and caching |
US6678855B1 (en) | 1999-12-02 | 2004-01-13 | Microsoft Corporation | Selecting K in a data transmission carousel using (N,K) forward error correction |
US6798791B1 (en) | 1999-12-16 | 2004-09-28 | Agere Systems Inc | Cluster frame synchronization scheme for a satellite digital audio radio system |
US6487692B1 (en) | 1999-12-21 | 2002-11-26 | Lsi Logic Corporation | Reed-Solomon decoder |
US20020009137A1 (en) | 2000-02-01 | 2002-01-24 | Nelson John E. | Three-dimensional video broadcasting system |
US6965636B1 (en) | 2000-02-01 | 2005-11-15 | 2Wire, Inc. | System and method for block error correction in packet-based digital communications |
US7304990B2 (en) | 2000-02-03 | 2007-12-04 | Bandwiz Inc. | Method of encoding and transmitting data over a communication medium through division and segmentation |
WO2001057667A1 (en) | 2000-02-03 | 2001-08-09 | Bandwiz, Inc. | Data streaming |
IL140504A0 (en) | 2000-02-03 | 2002-02-10 | Bandwiz Inc | Broadcast system |
US6765866B1 (en) | 2000-02-29 | 2004-07-20 | Mosaid Technologies, Inc. | Link aggregation |
DE10009443A1 (de) | 2000-02-29 | 2001-08-30 | Philips Corp Intellectual Pty | Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals |
US6384750B1 (en) | 2000-03-23 | 2002-05-07 | Mosaid Technologies, Inc. | Multi-stage lookup for translating between signals of different bit lengths |
US6510177B1 (en) | 2000-03-24 | 2003-01-21 | Microsoft Corporation | System and method for layered video coding enhancement |
JP2001274776A (ja) | 2000-03-24 | 2001-10-05 | Toshiba Corp | 情報データ伝送システムとその送信装置及び受信装置 |
US6851086B2 (en) | 2000-03-31 | 2005-02-01 | Ted Szymanski | Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link |
US6473010B1 (en) | 2000-04-04 | 2002-10-29 | Marvell International, Ltd. | Method and apparatus for determining error correction code failure rate for iterative decoding algorithms |
US8572646B2 (en) | 2000-04-07 | 2013-10-29 | Visible World Inc. | System and method for simultaneous broadcast for personalized messages |
US7073191B2 (en) | 2000-04-08 | 2006-07-04 | Sun Microsystems, Inc | Streaming a single media track to multiple clients |
US6631172B1 (en) | 2000-05-01 | 2003-10-07 | Lucent Technologies Inc. | Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels |
US6742154B1 (en) | 2000-05-25 | 2004-05-25 | Ciena Corporation | Forward error correction codes for digital optical network optimization |
US6694476B1 (en) | 2000-06-02 | 2004-02-17 | Vitesse Semiconductor Corporation | Reed-solomon encoder and decoder |
US6738942B1 (en) | 2000-06-02 | 2004-05-18 | Vitesse Semiconductor Corporation | Product code based forward error correction system |
US7373413B1 (en) | 2000-06-28 | 2008-05-13 | Cisco Technology, Inc. | Devices and methods for minimizing start up delay in transmission of streaming media |
GB2366159B (en) | 2000-08-10 | 2003-10-08 | Mitel Corp | Combination reed-solomon and turbo coding |
US6834342B2 (en) | 2000-08-16 | 2004-12-21 | Eecad, Inc. | Method and system for secure communication over unstable public connections |
KR100447162B1 (ko) | 2000-08-19 | 2004-09-04 | 엘지전자 주식회사 | 래디오 링크 콘트롤(rlc)에서 프로토콜 데이터 유닛(pdu) 정보의 길이 지시자(li) 처리방법 |
JP2002073625A (ja) | 2000-08-24 | 2002-03-12 | Nippon Hoso Kyokai <Nhk> | 放送番組に同期した情報提供の方法、サーバ及び媒体 |
US7340664B2 (en) | 2000-09-20 | 2008-03-04 | Lsi Logic Corporation | Single engine turbo decoder with single frame size buffer for interleaving/deinterleaving |
US7151754B1 (en) | 2000-09-22 | 2006-12-19 | Lucent Technologies Inc. | Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding |
US7031257B1 (en) | 2000-09-22 | 2006-04-18 | Lucent Technologies Inc. | Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol |
US6486803B1 (en) | 2000-09-22 | 2002-11-26 | Digital Fountain, Inc. | On demand encoding with a window |
US7490344B2 (en) | 2000-09-29 | 2009-02-10 | Visible World, Inc. | System and method for seamless switching |
US6411223B1 (en) | 2000-10-18 | 2002-06-25 | Digital Fountain, Inc. | Generating high weight encoding symbols using a basis |
US7613183B1 (en) | 2000-10-31 | 2009-11-03 | Foundry Networks, Inc. | System and method for router data aggregation and delivery |
US6694478B1 (en) | 2000-11-07 | 2004-02-17 | Agere Systems Inc. | Low delay channel codes for correcting bursts of lost packets |
US6732325B1 (en) | 2000-11-08 | 2004-05-04 | Digeo, Inc. | Error-correction with limited working storage |
US20020133247A1 (en) | 2000-11-11 | 2002-09-19 | Smith Robert D. | System and method for seamlessly switching between media streams |
US7072971B2 (en) | 2000-11-13 | 2006-07-04 | Digital Foundation, Inc. | Scheduling of multiple files for serving on a server |
US7240358B2 (en) | 2000-12-08 | 2007-07-03 | Digital Fountain, Inc. | Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources |
ATE464740T1 (de) | 2000-12-15 | 2010-04-15 | British Telecomm | Übertagung von ton- und/oder bildmaterial |
AU2092702A (en) | 2000-12-15 | 2002-06-24 | British Telecomm | Transmission and reception of audio and/or video material |
US6850736B2 (en) | 2000-12-21 | 2005-02-01 | Tropian, Inc. | Method and apparatus for reception quality indication in wireless communication |
US7143433B1 (en) | 2000-12-27 | 2006-11-28 | Infovalve Computing Inc. | Video distribution system using dynamic segmenting of video data files |
US20020085013A1 (en) | 2000-12-29 | 2002-07-04 | Lippincott Louis A. | Scan synchronized dual frame buffer graphics subsystem |
NO315887B1 (no) | 2001-01-04 | 2003-11-03 | Fast Search & Transfer As | Fremgangsmater ved overforing og soking av videoinformasjon |
US20080059532A1 (en) | 2001-01-18 | 2008-03-06 | Kazmi Syed N | Method and system for managing digital content, including streaming media |
FI118830B (fi) | 2001-02-08 | 2008-03-31 | Nokia Corp | Tietovirran toisto |
US6868083B2 (en) | 2001-02-16 | 2005-03-15 | Hewlett-Packard Development Company, L.P. | Method and system for packet communication employing path diversity |
US20020129159A1 (en) | 2001-03-09 | 2002-09-12 | Michael Luby | Multi-output packet server with independent streams |
KR100464360B1 (ko) | 2001-03-30 | 2005-01-03 | 삼성전자주식회사 | 고속 패킷 데이터 전송 이동통신시스템에서 패킷 데이터채널에 대한 효율적인 에너지 분배 장치 및 방법 |
US20020143953A1 (en) | 2001-04-03 | 2002-10-03 | International Business Machines Corporation | Automatic affinity within networks performing workload balancing |
US6785836B2 (en) | 2001-04-11 | 2004-08-31 | Broadcom Corporation | In-place data transformation for fault-tolerant disk storage systems |
US6820221B2 (en) | 2001-04-13 | 2004-11-16 | Hewlett-Packard Development Company, L.P. | System and method for detecting process and network failures in a distributed system |
US7010052B2 (en) | 2001-04-16 | 2006-03-07 | The Ohio University | Apparatus and method of CTCM encoding and decoding for a digital communication system |
US7035468B2 (en) | 2001-04-20 | 2006-04-25 | Front Porch Digital Inc. | Methods and apparatus for archiving, indexing and accessing audio and video data |
TWI246841B (en) | 2001-04-22 | 2006-01-01 | Koninkl Philips Electronics Nv | Digital transmission system and method for transmitting digital signals |
US20020191116A1 (en) | 2001-04-24 | 2002-12-19 | Damien Kessler | System and data format for providing seamless stream switching in a digital video recorder |
US20020194608A1 (en) | 2001-04-26 | 2002-12-19 | Goldhor Richard S. | Method and apparatus for a playback enhancement system implementing a "Say Again" feature |
US6497479B1 (en) | 2001-04-27 | 2002-12-24 | Hewlett-Packard Company | Higher organic inks with good reliability and drytime |
US7962482B2 (en) | 2001-05-16 | 2011-06-14 | Pandora Media, Inc. | Methods and systems for utilizing contextual feedback to generate and modify playlists |
US6633856B2 (en) | 2001-06-15 | 2003-10-14 | Flarion Technologies, Inc. | Methods and apparatus for decoding LDPC codes |
US7076478B2 (en) | 2001-06-26 | 2006-07-11 | Microsoft Corporation | Wrapper playlists on streaming media services |
US6745364B2 (en) | 2001-06-28 | 2004-06-01 | Microsoft Corporation | Negotiated/dynamic error correction for streamed media |
JP2003018568A (ja) | 2001-06-29 | 2003-01-17 | Matsushita Electric Ind Co Ltd | 再生システム、サーバ装置及び再生装置 |
JP2003022232A (ja) | 2001-07-06 | 2003-01-24 | Fujitsu Ltd | コンテンツデータ転送システム |
JP2003019012A (ja) | 2001-07-09 | 2003-01-21 | Akira Okabe | 発光ステッキ |
US6895547B2 (en) | 2001-07-11 | 2005-05-17 | International Business Machines Corporation | Method and apparatus for low density parity check encoding of data |
US6928603B1 (en) | 2001-07-19 | 2005-08-09 | Adaptix, Inc. | System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system |
US6961890B2 (en) | 2001-08-16 | 2005-11-01 | Hewlett-Packard Development Company, L.P. | Dynamic variable-length error correction code |
US7110412B2 (en) | 2001-09-18 | 2006-09-19 | Sbc Technology Resources, Inc. | Method and system to transport high-quality video signals |
FI115418B (fi) | 2001-09-20 | 2005-04-29 | Oplayo Oy | Adaptiivinen mediavirta |
US6990624B2 (en) | 2001-10-12 | 2006-01-24 | Agere Systems Inc. | High speed syndrome-based FEC encoder and decoder and system using same |
US7480703B2 (en) | 2001-11-09 | 2009-01-20 | Sony Corporation | System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user |
US7003712B2 (en) | 2001-11-29 | 2006-02-21 | Emin Martinian | Apparatus and method for adaptive, multimode decoding |
US7363354B2 (en) | 2001-11-29 | 2008-04-22 | Nokia Corporation | System and method for identifying and accessing network services |
JP2003174489A (ja) | 2001-12-05 | 2003-06-20 | Ntt Docomo Inc | ストリーミング配信装置、ストリーミング配信方法 |
EP1454250A4 (en) * | 2001-12-15 | 2010-08-25 | Thomson Licensing | SYSTEM AND METHOD FOR MODIFYING A VIDEO DATA FLOW BASED ON A CLIENT OR NETWORK ENVIRONMENT |
FI114527B (fi) | 2002-01-23 | 2004-10-29 | Nokia Corp | Kuvakehysten ryhmittely videokoodauksessa |
EP1479245A1 (en) | 2002-01-23 | 2004-11-24 | Nokia Corporation | Grouping of image frames in video coding |
JP4472347B2 (ja) | 2002-01-30 | 2010-06-02 | エヌエックスピー ビー ヴィ | 可変の帯域を有するネットワーク上でのマルチメディアデータのストリーミング |
WO2003071440A1 (en) | 2002-02-15 | 2003-08-28 | Digital Fountain, Inc. | System and method for reliably communicating the content of a live data stream |
JP4126928B2 (ja) | 2002-02-28 | 2008-07-30 | 日本電気株式会社 | プロキシサーバ及びプロキシ制御プログラム |
JP4116470B2 (ja) | 2002-03-06 | 2008-07-09 | ヒューレット・パッカード・カンパニー | メディア・ストリーミング配信システム |
FR2837332A1 (fr) | 2002-03-15 | 2003-09-19 | Thomson Licensing Sa | Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants |
WO2003090391A1 (en) | 2002-04-15 | 2003-10-30 | Nokia Corporation | Rlp logical layer of a communication station |
US6677864B2 (en) | 2002-04-18 | 2004-01-13 | Telefonaktiebolaget L.M. Ericsson | Method for multicast over wireless networks |
JP3689063B2 (ja) | 2002-04-19 | 2005-08-31 | 松下電器産業株式会社 | データ受信装置及びデータ配信システム |
JP3629008B2 (ja) | 2002-04-19 | 2005-03-16 | 松下電器産業株式会社 | データ受信装置及びデータ配信システム |
JP4134027B2 (ja) | 2002-04-25 | 2008-08-13 | シャープ株式会社 | 画像符号化装置、画像復号装置、及び画像記録装置 |
US20030204602A1 (en) | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
US7177658B2 (en) | 2002-05-06 | 2007-02-13 | Qualcomm, Incorporated | Multi-media broadcast and multicast service (MBMS) in a wireless communications system |
US7200388B2 (en) | 2002-05-31 | 2007-04-03 | Nokia Corporation | Fragmented delivery of multimedia |
CN100401281C (zh) | 2002-06-04 | 2008-07-09 | 高通股份有限公司 | 用于在便携设备中再现多媒体的方法和系统 |
US20040083015A1 (en) | 2002-06-04 | 2004-04-29 | Srinivas Patwari | System for multimedia rendering in a portable device |
AR039964A1 (es) * | 2002-06-04 | 2005-03-09 | Qualcomm Inc | Metodo y sistema para emitir un contenido de multimedia en un dispositivo portatil y un medio legible por computadora |
AU2002368007A1 (en) | 2002-06-11 | 2003-12-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Generation of mixed media streams |
US6856263B2 (en) | 2002-06-11 | 2005-02-15 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
US6956875B2 (en) | 2002-06-19 | 2005-10-18 | Atlinks Usa, Inc. | Technique for communicating variable bit rate data over a constant bit rate link |
JP4154569B2 (ja) | 2002-07-10 | 2008-09-24 | 日本電気株式会社 | 画像圧縮伸長装置 |
JP4120461B2 (ja) | 2002-07-12 | 2008-07-16 | 住友電気工業株式会社 | 伝送データ生成方法及び伝送データ生成装置 |
CN101232616B (zh) | 2002-07-16 | 2015-07-22 | 诺基亚有限公司 | 用于在视频编码中随机存取和逐步更新图像的方法 |
AU2003252347A1 (en) | 2002-07-31 | 2004-03-11 | Sharp Kabushiki Kaisha | Data communication device, its intermittent communication method, program describing its method, and recording medium on which program is recorded |
JP2004070712A (ja) | 2002-08-07 | 2004-03-04 | Nippon Telegr & Teleph Corp <Ntt> | データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム |
DK1529389T3 (en) | 2002-08-13 | 2016-05-30 | Nokia Technologies Oy | Symbol Interleaving |
US6985459B2 (en) | 2002-08-21 | 2006-01-10 | Qualcomm Incorporated | Early transmission and playout of packets in wireless communication systems |
WO2004030273A1 (ja) | 2002-09-27 | 2004-04-08 | Fujitsu Limited | データ配信方法、システム、伝送方法及びプログラム |
JP3534742B1 (ja) | 2002-10-03 | 2004-06-07 | 株式会社エヌ・ティ・ティ・ドコモ | 動画像復号方法、動画像復号装置、及び動画像復号プログラム |
US6909383B2 (en) | 2002-10-05 | 2005-06-21 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
JP2004135013A (ja) | 2002-10-10 | 2004-04-30 | Matsushita Electric Ind Co Ltd | 伝送装置及び伝送方法 |
FI116816B (fi) | 2002-10-14 | 2006-02-28 | Nokia Corp | Median suoratoisto |
US8320301B2 (en) | 2002-10-25 | 2012-11-27 | Qualcomm Incorporated | MIMO WLAN system |
US7289451B2 (en) | 2002-10-25 | 2007-10-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Delay trading between communication links |
WO2004040831A1 (en) | 2002-10-30 | 2004-05-13 | Koninklijke Philips Electronics N.V. | Adaptative forward error control scheme |
JP2004165922A (ja) | 2002-11-12 | 2004-06-10 | Sony Corp | 情報処理装置および方法、並びにプログラム |
WO2004047455A1 (en) | 2002-11-18 | 2004-06-03 | British Telecommunications Public Limited Company | Transmission of video |
GB0226872D0 (en) | 2002-11-18 | 2002-12-24 | British Telecomm | Video transmission |
JP3935419B2 (ja) | 2002-11-19 | 2007-06-20 | Kddi株式会社 | 動画像符号化ビットレート選択方式 |
KR100502609B1 (ko) | 2002-11-21 | 2005-07-20 | 한국전자통신연구원 | Ldpc 코드를 이용한 부호화기 및 부호화 방법 |
US7086718B2 (en) | 2002-11-23 | 2006-08-08 | Silverbrook Research Pty Ltd | Thermal ink jet printhead with high nozzle areal density |
JP2004192140A (ja) | 2002-12-09 | 2004-07-08 | Sony Corp | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム |
JP2004193992A (ja) | 2002-12-11 | 2004-07-08 | Sony Corp | 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム |
US8135073B2 (en) | 2002-12-19 | 2012-03-13 | Trident Microsystems (Far East) Ltd | Enhancing video images depending on prior image enhancements |
US7164882B2 (en) | 2002-12-24 | 2007-01-16 | Poltorak Alexander I | Apparatus and method for facilitating a purchase using information provided on a media playing device |
WO2004068715A2 (en) | 2003-01-29 | 2004-08-12 | Digital Fountain, Inc. | Systems and processes for fast encoding of hamming codes |
US7756002B2 (en) | 2003-01-30 | 2010-07-13 | Texas Instruments Incorporated | Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer |
US7525994B2 (en) | 2003-01-30 | 2009-04-28 | Avaya Inc. | Packet data flow identification for multiplexing |
US7231404B2 (en) | 2003-01-31 | 2007-06-12 | Nokia Corporation | Datacast file transmission with meta-data retention |
US7062272B2 (en) | 2003-02-18 | 2006-06-13 | Qualcomm Incorporated | Method and apparatus to track count of broadcast content recipients in a wireless telephone network |
EP1455504B1 (en) | 2003-03-07 | 2014-11-12 | Samsung Electronics Co., Ltd. | Apparatus and method for processing audio signal and computer readable recording medium storing computer program for the method |
JP4173755B2 (ja) | 2003-03-24 | 2008-10-29 | 富士通株式会社 | データ伝送サーバ |
US7610487B2 (en) | 2003-03-27 | 2009-10-27 | Microsoft Corporation | Human input security codes |
US7266147B2 (en) | 2003-03-31 | 2007-09-04 | Sharp Laboratories Of America, Inc. | Hypothetical reference decoder |
JP2004343701A (ja) | 2003-04-21 | 2004-12-02 | Matsushita Electric Ind Co Ltd | データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム |
US7408486B2 (en) | 2003-04-21 | 2008-08-05 | Qbit Corporation | System and method for using a microlet-based modem |
JP4379779B2 (ja) | 2003-04-28 | 2009-12-09 | Kddi株式会社 | 映像配信方式 |
US20050041736A1 (en) | 2003-05-07 | 2005-02-24 | Bernie Butler-Smith | Stereoscopic television signal processing method, transmission system and viewer enhancements |
KR100492567B1 (ko) | 2003-05-13 | 2005-06-03 | 엘지전자 주식회사 | 이동통신 시스템의 http 기반 비디오 스트리밍 장치및 방법 |
US7113773B2 (en) | 2003-05-16 | 2006-09-26 | Qualcomm Incorporated | Reliable reception of broadcast/multicast content |
JP2004348824A (ja) | 2003-05-21 | 2004-12-09 | Toshiba Corp | Eccエンコード方法、eccエンコード装置 |
US8161116B2 (en) | 2003-05-23 | 2012-04-17 | Kirusa, Inc. | Method and system for communicating a data file over a network |
JP2004362099A (ja) | 2003-06-03 | 2004-12-24 | Sony Corp | サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
MXPA05013237A (es) | 2003-06-07 | 2006-03-09 | Samsung Electronics Co Ltd | Aparato y metodo para la organizacion e interpretacion de datos multimedia en un medio de grabacion. |
KR101003413B1 (ko) | 2003-06-12 | 2010-12-23 | 엘지전자 주식회사 | 이동통신 단말기의 전송데이터 압축/해제 방법 |
US7603689B2 (en) | 2003-06-13 | 2009-10-13 | Microsoft Corporation | Fast start-up for digital video streams |
RU2265960C2 (ru) | 2003-06-16 | 2005-12-10 | Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" | Способ передачи информации с использованием адаптивного перемежения |
US7391717B2 (en) | 2003-06-30 | 2008-06-24 | Microsoft Corporation | Streaming of variable bit rate multimedia content |
US20050004997A1 (en) | 2003-07-01 | 2005-01-06 | Nokia Corporation | Progressive downloading of timed multimedia content |
US8149939B2 (en) | 2003-07-07 | 2012-04-03 | Samsung Electronics Co., Ltd. | System of robust DTV signal transmissions that legacy DTV receivers will disregard |
US7254754B2 (en) | 2003-07-14 | 2007-08-07 | International Business Machines Corporation | Raid 3+3 |
KR100532450B1 (ko) | 2003-07-16 | 2005-11-30 | 삼성전자주식회사 | 에러에 대해 강인한 특성을 가지는 데이터 기록 방법,이에 적합한 데이터 재생 방법, 그리고 이에 적합한 장치들 |
US20050028067A1 (en) | 2003-07-31 | 2005-02-03 | Weirauch Charles R. | Data with multiple sets of error correction codes |
US8694869B2 (en) | 2003-08-21 | 2014-04-08 | QUALCIMM Incorporated | Methods for forward error correction coding above a radio link control layer and related apparatus |
IL157886A0 (en) | 2003-09-11 | 2009-02-11 | Bamboo Mediacasting Ltd | Secure multicast transmission |
IL157885A0 (en) | 2003-09-11 | 2004-03-28 | Bamboo Mediacasting Ltd | Iterative forward error correction |
JP4183586B2 (ja) | 2003-09-12 | 2008-11-19 | 三洋電機株式会社 | 映像表示装置 |
WO2005029237A2 (en) | 2003-09-15 | 2005-03-31 | Digital Networks North America, Inc. | Method and system for adaptive transcoding and transrating in a video network |
KR100608715B1 (ko) | 2003-09-27 | 2006-08-04 | 엘지전자 주식회사 | QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법 |
DE60307852D1 (de) | 2003-09-30 | 2006-10-05 | Ericsson Telefon Ab L M | In-place Entschachtelung von Daten |
US7559004B1 (en) | 2003-10-01 | 2009-07-07 | Sandisk Corporation | Dynamic redundant area configuration in a non-volatile memory system |
CN101834610B (zh) | 2003-10-06 | 2013-01-30 | 数字方敦股份有限公司 | 通过通信信道接收从源发射的数据的方法和装置 |
US7614071B2 (en) | 2003-10-10 | 2009-11-03 | Microsoft Corporation | Architecture for distributed sending of media data |
US7516232B2 (en) | 2003-10-10 | 2009-04-07 | Microsoft Corporation | Media organization for distributed sending of media data |
WO2005036811A2 (en) | 2003-10-14 | 2005-04-21 | Matsushita Electric Industrial Co., Ltd. | Data converter |
US7650036B2 (en) | 2003-10-16 | 2010-01-19 | Sharp Laboratories Of America, Inc. | System and method for three-dimensional video coding |
US7168030B2 (en) | 2003-10-17 | 2007-01-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Turbo code decoder with parity information update |
US8132215B2 (en) | 2003-10-27 | 2012-03-06 | Panasonic Corporation | Apparatus for receiving broadcast signal |
JP2005136546A (ja) | 2003-10-29 | 2005-05-26 | Sony Corp | 送信装置および方法、記録媒体、並びにプログラム |
EP1528702B1 (en) | 2003-11-03 | 2008-01-23 | Broadcom Corporation | FEC (forward error correction) decoding with dynamic parameters |
US20050102371A1 (en) | 2003-11-07 | 2005-05-12 | Emre Aksu | Streaming from a server to a client |
WO2005055016A2 (en) | 2003-12-01 | 2005-06-16 | Digital Fountain, Inc. | Protection of data from erasures using subsymbol based codes |
US7428669B2 (en) | 2003-12-07 | 2008-09-23 | Adaptive Spectrum And Signal Alignment, Inc. | Adaptive FEC codeword management |
US7574706B2 (en) | 2003-12-15 | 2009-08-11 | Microsoft Corporation | System and method for managing and communicating software updates |
US7590118B2 (en) | 2003-12-23 | 2009-09-15 | Agere Systems Inc. | Frame aggregation format |
JP4536383B2 (ja) | 2004-01-16 | 2010-09-01 | 株式会社エヌ・ティ・ティ・ドコモ | データ受信装置およびデータ受信方法 |
KR100770902B1 (ko) | 2004-01-20 | 2007-10-26 | 삼성전자주식회사 | 고속 무선 데이터 시스템을 위한 가변 부호율의 오류 정정부호 생성 및 복호 장치 및 방법 |
KR100834750B1 (ko) | 2004-01-29 | 2008-06-05 | 삼성전자주식회사 | 엔코더 단에서 스케일러빌리티를 제공하는 스케일러블비디오 코딩 장치 및 방법 |
JP4321284B2 (ja) | 2004-02-03 | 2009-08-26 | 株式会社デンソー | ストリーミングデータ送信装置、および情報配信システム |
US7599294B2 (en) | 2004-02-13 | 2009-10-06 | Nokia Corporation | Identification and re-transmission of missing parts |
KR100596705B1 (ko) | 2004-03-04 | 2006-07-04 | 삼성전자주식회사 | 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템 |
KR100586883B1 (ko) | 2004-03-04 | 2006-06-08 | 삼성전자주식회사 | 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법 |
US7609653B2 (en) | 2004-03-08 | 2009-10-27 | Microsoft Corporation | Resolving partial media topologies |
WO2005094020A1 (en) | 2004-03-19 | 2005-10-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Higher layer packet framing using rlp |
US7240236B2 (en) | 2004-03-23 | 2007-07-03 | Archivas, Inc. | Fixed content distributed data storage using permutation ring encoding |
JP4433287B2 (ja) | 2004-03-25 | 2010-03-17 | ソニー株式会社 | 受信装置および方法、並びにプログラム |
US8842175B2 (en) | 2004-03-26 | 2014-09-23 | Broadcom Corporation | Anticipatory video signal reception and processing |
US20050216472A1 (en) | 2004-03-29 | 2005-09-29 | David Leon | Efficient multicast/broadcast distribution of formatted data |
KR20070007810A (ko) | 2004-03-30 | 2007-01-16 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 디스크 기반 멀티미디어 콘텐츠에 대한 개선된 트릭 모드수행을 지원하는 시스템 및 방법 |
TW200534875A (en) | 2004-04-23 | 2005-11-01 | Lonza Ag | Personal care compositions and concentrates for making the same |
FR2869744A1 (fr) | 2004-04-29 | 2005-11-04 | Thomson Licensing Sa | Methode de transmission de paquets de donnees numeriques et appareil implementant la methode |
US8868772B2 (en) | 2004-04-30 | 2014-10-21 | Echostar Technologies L.L.C. | Apparatus, system, and method for adaptive-rate shifting of streaming content |
KR101161193B1 (ko) | 2004-05-07 | 2012-07-02 | 디지털 파운튼, 인크. | 파일 다운로드 및 스트리밍 시스템 |
US7633970B2 (en) | 2004-05-07 | 2009-12-15 | Agere Systems Inc. | MAC header compression for use with frame aggregation |
US20050254575A1 (en) | 2004-05-12 | 2005-11-17 | Nokia Corporation | Multiple interoperability points for scalable media coding and transmission |
US20050254526A1 (en) | 2004-05-12 | 2005-11-17 | Nokia Corporation | Parameter sets update in streaming applications |
US20060037057A1 (en) | 2004-05-24 | 2006-02-16 | Sharp Laboratories Of America, Inc. | Method and system of enabling trick play modes using HTTP GET |
US8331445B2 (en) | 2004-06-01 | 2012-12-11 | Qualcomm Incorporated | Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques |
US20070110074A1 (en) | 2004-06-04 | 2007-05-17 | Bob Bradley | System and Method for Synchronizing Media Presentation at Multiple Recipients |
US7492828B2 (en) | 2004-06-18 | 2009-02-17 | Qualcomm Incorporated | Time synchronization using spectral estimation in a communication system |
US7139660B2 (en) | 2004-07-14 | 2006-11-21 | General Motors Corporation | System and method for changing motor vehicle personalization settings |
US8112531B2 (en) | 2004-07-14 | 2012-02-07 | Nokia Corporation | Grouping of session objects |
US8544043B2 (en) | 2004-07-21 | 2013-09-24 | Qualcomm Incorporated | Methods and apparatus for providing content information to content servers |
JP2006033763A (ja) | 2004-07-21 | 2006-02-02 | Toshiba Corp | 電子機器及び通信制御方法 |
US7409626B1 (en) | 2004-07-28 | 2008-08-05 | Ikanos Communications Inc | Method and apparatus for determining codeword interleaver parameters |
US7590922B2 (en) | 2004-07-30 | 2009-09-15 | Nokia Corporation | Point-to-point repair request mechanism for point-to-multipoint transmission systems |
US7376150B2 (en) | 2004-07-30 | 2008-05-20 | Nokia Corporation | Point-to-point repair response mechanism for point-to-multipoint transmission systems |
US7930184B2 (en) | 2004-08-04 | 2011-04-19 | Dts, Inc. | Multi-channel audio coding/decoding of random access points and transients |
WO2006020826A2 (en) | 2004-08-11 | 2006-02-23 | Digital Fountain, Inc. | Method and apparatus for fast encoding of data symbols according to half-weight codes |
JP4405875B2 (ja) | 2004-08-25 | 2010-01-27 | 富士通株式会社 | エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体 |
JP2006074335A (ja) | 2004-09-01 | 2006-03-16 | Nippon Telegr & Teleph Corp <Ntt> | 伝送方法、伝送システム及び伝送装置 |
JP4576936B2 (ja) | 2004-09-02 | 2010-11-10 | ソニー株式会社 | 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム |
JP2006115104A (ja) | 2004-10-13 | 2006-04-27 | Daiichikosho Co Ltd | 高能率符号化された時系列情報をパケット化してリアルタイム・ストリーミング送信し受信再生する方法および装置 |
US7529984B2 (en) | 2004-11-16 | 2009-05-05 | Infineon Technologies Ag | Seamless change of depth of a general convolutional interleaver during transmission without loss of data |
US7751324B2 (en) | 2004-11-19 | 2010-07-06 | Nokia Corporation | Packet stream arrangement in multimedia transmission |
JP5053097B2 (ja) | 2004-11-22 | 2012-10-17 | トムソン リサーチ ファンディング コーポレイション | Dslシステムにおけるチャンネル切り替えの方法及び装置 |
US8015474B2 (en) | 2004-12-02 | 2011-09-06 | Thomson Licensing | Adaptive forward error correction |
KR20060065482A (ko) | 2004-12-10 | 2006-06-14 | 마이크로소프트 코포레이션 | 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스 |
JP2006174032A (ja) | 2004-12-15 | 2006-06-29 | Sanyo Electric Co Ltd | 画像データ伝送システム、画像データ受信装置及び画像データ送信装置 |
JP2006174045A (ja) | 2004-12-15 | 2006-06-29 | Ntt Communications Kk | 画像配信装置、プログラム及び方法 |
US7398454B2 (en) | 2004-12-21 | 2008-07-08 | Tyco Telecommunications (Us) Inc. | System and method for forward error correction decoding using soft information |
JP4391409B2 (ja) | 2004-12-24 | 2009-12-24 | 株式会社第一興商 | 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置 |
EP1847087A1 (en) | 2005-02-08 | 2007-10-24 | Telefonaktiebolaget LM Ericsson (publ) | On-demand multi-channel streaming session over packet-switched networks |
US7925097B2 (en) | 2005-02-18 | 2011-04-12 | Sanyo Electric Co., Ltd. | Image display method, image coding apparatus, and image decoding apparatus |
US7822139B2 (en) | 2005-03-02 | 2010-10-26 | Rohde & Schwarz Gmbh & Co. Kg | Apparatus, systems, methods and computer products for providing a virtual enhanced training sequence |
WO2006096104A1 (en) | 2005-03-07 | 2006-09-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Multimedia channel switching |
US8028322B2 (en) | 2005-03-14 | 2011-09-27 | Time Warner Cable Inc. | Method and apparatus for network content download and recording |
US7219289B2 (en) | 2005-03-15 | 2007-05-15 | Tandberg Data Corporation | Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same |
US7418649B2 (en) | 2005-03-15 | 2008-08-26 | Microsoft Corporation | Efficient implementation of reed-solomon erasure resilient codes in high-rate applications |
US7450064B2 (en) | 2005-03-22 | 2008-11-11 | Qualcomm, Incorporated | Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system |
JP4487028B2 (ja) | 2005-03-31 | 2010-06-23 | ブラザー工業株式会社 | 配信速度制御装置、配信システム、配信速度制御方法、及び配信速度制御用プログラム |
US7715842B2 (en) | 2005-04-09 | 2010-05-11 | Lg Electronics Inc. | Supporting handover of mobile terminal |
EP1869891A4 (en) | 2005-04-13 | 2014-06-11 | CODING, STORAGE AND SIGNALING OF SCALABILITY INFORMATION | |
JP4515319B2 (ja) | 2005-04-27 | 2010-07-28 | 株式会社日立製作所 | コンピュータシステム |
US8683066B2 (en) | 2007-08-06 | 2014-03-25 | DISH Digital L.L.C. | Apparatus, system, and method for multi-bitrate content streaming |
US7961700B2 (en) | 2005-04-28 | 2011-06-14 | Qualcomm Incorporated | Multi-carrier operation in data transmission systems |
JP2006319743A (ja) | 2005-05-13 | 2006-11-24 | Toshiba Corp | 受信装置 |
US8228994B2 (en) | 2005-05-20 | 2012-07-24 | Microsoft Corporation | Multi-view video coding based on temporal and view decomposition |
KR20100037659A (ko) | 2005-05-24 | 2010-04-09 | 노키아 코포레이션 | 디지털 방송에서 계층적인 전송/수신을 위한 방법 및 장치 |
US7644335B2 (en) | 2005-06-10 | 2010-01-05 | Qualcomm Incorporated | In-place transformations with applications to encoding and decoding various classes of codes |
US7676735B2 (en) | 2005-06-10 | 2010-03-09 | Digital Fountain Inc. | Forward error-correcting (FEC) coding and streaming |
JP2007013436A (ja) | 2005-06-29 | 2007-01-18 | Toshiba Corp | 符号化ストリーム再生装置 |
US20070006274A1 (en) | 2005-06-30 | 2007-01-04 | Toni Paila | Transmission and reception of session packets |
JP2007013675A (ja) | 2005-06-30 | 2007-01-18 | Sanyo Electric Co Ltd | ストリーミング配信システム及びサーバ |
US7725593B2 (en) | 2005-07-15 | 2010-05-25 | Sony Corporation | Scalable video coding (SVC) file format |
US20070022215A1 (en) | 2005-07-19 | 2007-01-25 | Singer David W | Method and apparatus for media data transmission |
JP2007036666A (ja) | 2005-07-27 | 2007-02-08 | Onkyo Corp | コンテンツ配信システム、クライアント及びクライアントプログラム |
CN101053249B (zh) | 2005-09-09 | 2011-02-16 | 松下电器产业株式会社 | 图像处理方法、图像存储方法、图像处理装置及文件格式 |
US7924913B2 (en) | 2005-09-15 | 2011-04-12 | Microsoft Corporation | Non-realtime data transcoding of multimedia content |
US20070067480A1 (en) | 2005-09-19 | 2007-03-22 | Sharp Laboratories Of America, Inc. | Adaptive media playout by server media processing for robust streaming |
US9113147B2 (en) | 2005-09-27 | 2015-08-18 | Qualcomm Incorporated | Scalability techniques based on content information |
US20070078876A1 (en) | 2005-09-30 | 2007-04-05 | Yahoo! Inc. | Generating a stream of media data containing portions of media files using location tags |
US7720062B2 (en) | 2005-10-05 | 2010-05-18 | Lg Electronics Inc. | Method of processing traffic information and digital broadcasting system |
US7164370B1 (en) | 2005-10-06 | 2007-01-16 | Analog Devices, Inc. | System and method for decoding data compressed in accordance with dictionary-based compression schemes |
RU2407217C2 (ru) | 2005-10-11 | 2010-12-20 | Нокиа Корпорейшн | Система и способ для эффективной адаптации масштабируемых потоков |
CN100442858C (zh) | 2005-10-11 | 2008-12-10 | 华为技术有限公司 | 分组网络中多媒体实时传输的唇同步方法及其装置 |
US7720096B2 (en) | 2005-10-13 | 2010-05-18 | Microsoft Corporation | RTP payload format for VC-1 |
JP5587552B2 (ja) | 2005-10-19 | 2014-09-10 | トムソン ライセンシング | スケーラブル映像符号化を用いた多視点映像符号化 |
JP4727401B2 (ja) | 2005-12-02 | 2011-07-20 | 日本電信電話株式会社 | 無線マルチキャスト伝送システム、無線送信装置及び無線マルチキャスト伝送方法 |
FR2894421B1 (fr) | 2005-12-07 | 2008-01-18 | Canon Kk | Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique |
KR100759823B1 (ko) | 2005-12-08 | 2007-09-18 | 한국전자통신연구원 | 제로 복귀 신호 발생 장치 및 그 방법 |
JP4456064B2 (ja) | 2005-12-21 | 2010-04-28 | 日本電信電話株式会社 | パケット送信装置、受信装置、システム、およびプログラム |
US20070157267A1 (en) | 2005-12-30 | 2007-07-05 | Intel Corporation | Techniques to improve time seek operations |
CN101416526B (zh) | 2006-01-05 | 2013-06-19 | 艾利森电话股份有限公司 | 媒体容器文件管理方法和服务器 |
US8214516B2 (en) | 2006-01-06 | 2012-07-03 | Google Inc. | Dynamic media serving infrastructure |
US8767818B2 (en) | 2006-01-11 | 2014-07-01 | Nokia Corporation | Backward-compatible aggregation of pictures in scalable video coding |
EP1977593A4 (en) | 2006-01-12 | 2010-06-16 | Lg Electronics Inc | PROCESSING MORE VIEW VIDEO |
WO2007086654A1 (en) | 2006-01-25 | 2007-08-02 | Lg Electronics Inc. | Digital broadcasting system and method of processing data |
RU2290768C1 (ru) | 2006-01-30 | 2006-12-27 | Общество с ограниченной ответственностью "Трафиклэнд" | Система медиавещания в инфраструктуре оператора мобильной связи |
US8990153B2 (en) | 2006-02-07 | 2015-03-24 | Dot Hill Systems Corporation | Pull data replication model |
CN101379712B (zh) | 2006-02-08 | 2011-12-14 | 汤姆森特许公司 | 瑞普特代码的解码 |
EP1985021A4 (en) | 2006-02-13 | 2013-05-29 | Digital Fountain Inc | CONTINUOUS TRANSMISSION AND BUFFER DELIVERY USING CONTINUOUS MONITORING OVERVIEW AND PERIODS OF PROTECTION |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US20070200949A1 (en) | 2006-02-21 | 2007-08-30 | Qualcomm Incorporated | Rapid tuning in multimedia applications |
JP2007228205A (ja) | 2006-02-23 | 2007-09-06 | Funai Electric Co Ltd | ネットワークサーバ |
US8320450B2 (en) | 2006-03-29 | 2012-11-27 | Vidyo, Inc. | System and method for transcoding between scalable and non-scalable video codecs |
US20080010153A1 (en) | 2006-04-24 | 2008-01-10 | Pugh-O'connor Archie | Computer network provided digital content under an advertising and revenue sharing basis, such as music provided via the internet with time-shifted advertisements presented by a client resident application |
US20090100496A1 (en) | 2006-04-24 | 2009-04-16 | Andreas Bechtolsheim | Media server system |
US7640353B2 (en) | 2006-04-27 | 2009-12-29 | Microsoft Corporation | Guided random seek support for media streaming |
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 |
US7525993B2 (en) | 2006-05-24 | 2009-04-28 | Newport Media, Inc. | Robust transmission system and method for mobile television applications |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US20100211690A1 (en) | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
JP2008011404A (ja) | 2006-06-30 | 2008-01-17 | Toshiba Corp | コンテンツ処理装置及びコンテンツ処理方法 |
JP4392004B2 (ja) | 2006-07-03 | 2009-12-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | パケット回復のための符号化および復号化技術 |
CN102148857A (zh) | 2006-07-20 | 2011-08-10 | 桑迪士克股份有限公司 | 内容分布系统 |
US7711797B1 (en) | 2006-07-31 | 2010-05-04 | Juniper Networks, Inc. | Optimizing batch size for prefetching data over wide area networks |
US8209736B2 (en) | 2006-08-23 | 2012-06-26 | Mediatek Inc. | Systems and methods for managing television (TV) signals |
WO2008023328A2 (en) | 2006-08-24 | 2008-02-28 | Nokia Corporation | System and method for indicating track relationships in media files |
US20080066136A1 (en) | 2006-08-24 | 2008-03-13 | International Business Machines Corporation | System and method for detecting topic shift boundaries in multimedia streams using joint audio, visual and text cues |
JP2008109637A (ja) | 2006-09-25 | 2008-05-08 | Toshiba Corp | 動画像符号化装置及びその方法 |
US8428013B2 (en) | 2006-10-30 | 2013-04-23 | Lg Electronics Inc. | Method of performing random access in a wireless communcation system |
JP2008118221A (ja) | 2006-10-31 | 2008-05-22 | Toshiba Corp | 復号装置及び復号方法 |
WO2008054100A1 (en) | 2006-11-01 | 2008-05-08 | Electronics And Telecommunications Research Institute | Method and apparatus for decoding metadata used for playing stereoscopic contents |
CA2668670C (en) | 2006-11-14 | 2013-04-30 | Qualcomm Incorporated | Systems and methods for channel switching |
US8027328B2 (en) | 2006-12-26 | 2011-09-27 | Alcatel Lucent | Header compression in a wireless communication network |
ES2709208T3 (es) | 2007-01-05 | 2019-04-15 | Sonic Ip Inc | Sistema de distribución de vídeo que incluye reproducción progresiva |
US20080168516A1 (en) | 2007-01-08 | 2008-07-10 | Christopher Lance Flick | Facilitating Random Access In Streaming Content |
EP2122874A1 (en) | 2007-01-09 | 2009-11-25 | Nokia Corporation | Method for supporting file versioning in mbms file repair |
MX2009000619A (es) | 2007-01-11 | 2009-04-16 | Panasonic Corp | Metodo para la reproduccion de truco de datos multimedia en flujo y encriptados. |
US20080172430A1 (en) | 2007-01-11 | 2008-07-17 | Andrew Thomas Thorstensen | Fragmentation Compression Management |
KR20080066408A (ko) | 2007-01-12 | 2008-07-16 | 삼성전자주식회사 | 3차원 영상 처리 장치 및 방법 |
WO2008085013A1 (en) | 2007-01-12 | 2008-07-17 | University-Industry Cooperation Group Of Kyung Hee University | Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, qos control algorithm and apparatus for ipv6 label switching using the format |
US8126062B2 (en) | 2007-01-16 | 2012-02-28 | Cisco Technology, Inc. | Per multi-block partition breakpoint determining for hybrid variable length coding |
US7721003B2 (en) | 2007-02-02 | 2010-05-18 | International Business Machines Corporation | System and method to synchronize OSGi bundle inventories between an OSGi bundle server and a client |
US7805456B2 (en) | 2007-02-05 | 2010-09-28 | Microsoft Corporation | Query pattern to enable type flow of element types |
CN100551043C (zh) * | 2007-02-08 | 2009-10-14 | 华为技术有限公司 | 一种快进快退播放视频数据的方法和流媒体服务器 |
US20080192818A1 (en) | 2007-02-09 | 2008-08-14 | Dipietro Donald Vincent | Systems and methods for securing media |
US20080232357A1 (en) | 2007-03-19 | 2008-09-25 | Legend Silicon Corp. | Ls digital fountain code |
JP4838191B2 (ja) | 2007-05-08 | 2011-12-14 | シャープ株式会社 | ファイル再生装置、ファイル再生方法、ファイル再生を実行させるプログラム及びそのプログラムを記録した記録媒体 |
JP2008283571A (ja) | 2007-05-11 | 2008-11-20 | Ntt Docomo Inc | コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信方法 |
US8275002B2 (en) | 2007-05-14 | 2012-09-25 | Samsung Electronics Co., Ltd. | Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service |
JP5317222B2 (ja) | 2007-05-16 | 2013-10-16 | トムソン ライセンシング | 信号を符号化および復号する方法および装置 |
FR2917262A1 (fr) | 2007-06-05 | 2008-12-12 | Thomson Licensing Sas | Dispositif et procede de codage d'un contenu video sous la forme d'un flux scalable. |
US8487982B2 (en) | 2007-06-07 | 2013-07-16 | Reald Inc. | Stereoplexing for film and video applications |
US8274551B2 (en) | 2007-06-11 | 2012-09-25 | Samsung Electronics Co., Ltd. | Method and apparatus for generating header information of stereoscopic image data |
EP2158747B1 (en) | 2007-06-20 | 2016-11-23 | Telefonaktiebolaget LM Ericsson (publ) | Method and arrangement for improved media session management |
RU2010102823A (ru) | 2007-06-26 | 2011-08-10 | Нокиа Корпорейшн (Fi) | Система и способ индикации точек переключения временных уровней |
US7917702B2 (en) | 2007-07-10 | 2011-03-29 | Qualcomm Incorporated | Data prefetch throttle |
US8156164B2 (en) | 2007-07-11 | 2012-04-10 | International Business Machines Corporation | Concurrent directory update in a cluster file system |
JP2009027598A (ja) | 2007-07-23 | 2009-02-05 | Hitachi Ltd | 映像配信サーバおよび映像配信方法 |
US8327403B1 (en) | 2007-09-07 | 2012-12-04 | United Video Properties, Inc. | Systems and methods for providing remote program ordering on a user device via a web server |
WO2009036378A1 (en) | 2007-09-12 | 2009-03-19 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
US8233532B2 (en) | 2007-09-21 | 2012-07-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal |
US8346959B2 (en) | 2007-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Client-controlled adaptive streaming |
EP2046044B1 (en) | 2007-10-01 | 2017-01-18 | Cabot Communications Ltd | A method and apparatus for streaming digital media content and a communication system |
WO2009048277A2 (en) | 2007-10-09 | 2009-04-16 | Samsung Electronics Co., Ltd. | Apparatus and method for generating and parsing mac pdu in a mobile communication system |
US8706907B2 (en) | 2007-10-19 | 2014-04-22 | Voxer Ip Llc | Telecommunication and multimedia management method and apparatus |
US8635360B2 (en) | 2007-10-19 | 2014-01-21 | Google Inc. | Media playback point seeking using data range requests |
US7895629B1 (en) | 2007-11-07 | 2011-02-22 | At&T Mobility Ii Llc | Video service buffer management in a mobile rate control enabled network |
US20090125636A1 (en) | 2007-11-13 | 2009-05-14 | Qiong Li | Payload allocation methods for scalable multimedia servers |
EP2215595B1 (en) * | 2007-11-23 | 2012-02-22 | Media Patents S.L. | A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems |
US8543720B2 (en) | 2007-12-05 | 2013-09-24 | Google Inc. | Dynamic bit rate scaling |
TWI355168B (en) | 2007-12-07 | 2011-12-21 | Univ Nat Chiao Tung | Application classification method in network traff |
JP5385598B2 (ja) | 2007-12-17 | 2014-01-08 | キヤノン株式会社 | 画像処理装置及び画像管理サーバ装置及びそれらの制御方法及びプログラム |
US9313245B2 (en) | 2007-12-24 | 2016-04-12 | Qualcomm Incorporated | Adaptive streaming for on demand wireless services |
KR101506217B1 (ko) | 2008-01-31 | 2015-03-26 | 삼성전자주식회사 | 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치 |
EP2086237B1 (en) | 2008-02-04 | 2012-06-27 | Alcatel Lucent | Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions |
US8151174B2 (en) | 2008-02-13 | 2012-04-03 | Sunrise IP, LLC | Block modulus coding (BMC) systems and methods for block coding with non-binary modulus |
US20090219985A1 (en) | 2008-02-28 | 2009-09-03 | Vasanth Swaminathan | Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File |
US7984097B2 (en) | 2008-03-18 | 2011-07-19 | Media Patents, S.L. | Methods for transmitting multimedia files and advertisements |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US20090257508A1 (en) | 2008-04-10 | 2009-10-15 | Gaurav Aggarwal | Method and system for enabling video trick modes |
EP2263341B1 (en) | 2008-04-14 | 2018-09-19 | Amazon Technologies, Inc. | Method and apparatus for performing random access procedures |
US20100049865A1 (en) | 2008-04-16 | 2010-02-25 | Nokia Corporation | Decoding Order Recovery in Session Multiplexing |
WO2009130561A1 (en) | 2008-04-21 | 2009-10-29 | Nokia Corporation | Method and device for video coding and decoding |
CA2723386A1 (en) | 2008-05-07 | 2009-11-12 | Digital Fountain, Inc. | Fast channel zapping and high quality streaming protection over a broadcast channel |
US7979570B2 (en) | 2008-05-12 | 2011-07-12 | Swarmcast, Inc. | Live media delivery over a packet-based computer network |
JP5022301B2 (ja) | 2008-05-19 | 2012-09-12 | 株式会社エヌ・ティ・ティ・ドコモ | プロキシサーバおよび通信中継プログラム、並びに通信中継方法 |
CN101287107B (zh) | 2008-05-29 | 2010-10-13 | 腾讯科技(深圳)有限公司 | 媒体文件的点播方法、系统和设备 |
US7925774B2 (en) | 2008-05-30 | 2011-04-12 | Microsoft Corporation | Media streaming using an index file |
US8775566B2 (en) | 2008-06-21 | 2014-07-08 | Microsoft Corporation | File format for media distribution and presentation |
US8387150B2 (en) | 2008-06-27 | 2013-02-26 | Microsoft Corporation | Segmented media content rights management |
US8468426B2 (en) | 2008-07-02 | 2013-06-18 | Apple Inc. | Multimedia-aware quality-of-service and error correction provisioning |
US8539092B2 (en) | 2008-07-09 | 2013-09-17 | Apple Inc. | Video streaming using multiple channels |
US20100153578A1 (en) | 2008-07-16 | 2010-06-17 | Nokia Corporation | Method and Apparatus for Peer to Peer Streaming |
US8638796B2 (en) | 2008-08-22 | 2014-01-28 | Cisco Technology, Inc. | Re-ordering segments of a large number of segmented service flows |
KR101019634B1 (ko) | 2008-09-04 | 2011-03-07 | 에스케이 텔레콤주식회사 | 미디어 전송 시스템 및 방법 |
EP2329404B1 (en) | 2008-09-05 | 2018-04-04 | Thomson Licensing DTV | Method and system for dynamic play list modification |
US8325796B2 (en) | 2008-09-11 | 2012-12-04 | Google Inc. | System and method for video coding using adaptive segmentation |
US8265140B2 (en) | 2008-09-30 | 2012-09-11 | Microsoft Corporation | Fine-grained client-side control of scalable media delivery |
JP5163415B2 (ja) * | 2008-10-07 | 2013-03-13 | 富士通株式会社 | 階層型変調方法、階層型復調方法、階層型変調を行う送信装置、階層型復調を行う受信装置 |
US8370520B2 (en) | 2008-11-24 | 2013-02-05 | Juniper Networks, Inc. | Adaptive network content delivery system |
US8099476B2 (en) | 2008-12-31 | 2012-01-17 | Apple Inc. | Updatable real-time or near real-time streaming |
EP2392112A2 (en) | 2008-12-31 | 2011-12-07 | Apple Inc. | Method for streaming multimedia data over a non-streaming protocol |
US8743906B2 (en) | 2009-01-23 | 2014-06-03 | Akamai Technologies, Inc. | Scalable seamless digital video stream splicing |
AU2010206977B2 (en) | 2009-01-26 | 2016-02-25 | Interdigital Vc Holdings, Inc. | Frame packing for video coding |
CN104780385B (zh) | 2009-01-29 | 2018-01-16 | 杜比实验室特许公司 | 视频装置、用于将多视图帧的序列编码为比特流的装置 |
US8909806B2 (en) | 2009-03-16 | 2014-12-09 | Microsoft Corporation | Delivering cacheable streaming media presentations |
US8621044B2 (en) | 2009-03-16 | 2013-12-31 | Microsoft Corporation | Smooth, stateless client media streaming |
WO2010120804A1 (en) | 2009-04-13 | 2010-10-21 | Reald Inc. | Encoding, decoding, and distributing enhanced resolution stereoscopic video |
US9807468B2 (en) | 2009-06-16 | 2017-10-31 | Microsoft Technology Licensing, Llc | Byte range caching |
US8903895B2 (en) | 2009-07-22 | 2014-12-02 | Xinlab, Inc. | Method of streaming media to heterogeneous client devices |
US8355433B2 (en) | 2009-08-18 | 2013-01-15 | Netflix, Inc. | Encoding video streams for adaptive video streaming |
US20120151302A1 (en) | 2010-12-10 | 2012-06-14 | Qualcomm Incorporated | Broadcast multimedia storage and access using page maps when asymmetric memory is used |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
KR101598317B1 (ko) | 2009-09-02 | 2016-02-26 | 애플 인크. | 무선 시스템들의 mac 패킷 데이터 유닛 구성 |
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 |
US20110096828A1 (en) | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
US9438861B2 (en) | 2009-10-06 | 2016-09-06 | Microsoft Technology Licensing, Llc | Integrating continuous and sparse streaming data |
JP2011087103A (ja) | 2009-10-15 | 2011-04-28 | Sony Corp | コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供 |
PL2497267T3 (pl) | 2009-11-03 | 2015-02-27 | Ericsson Telefon Ab L M | Strumieniowanie z opcjonalną rozgłoszeniową transmisją segmentów danych |
CN107911332B (zh) | 2009-11-04 | 2021-01-08 | 阿莫泰克有限公司 | 媒体内容流播的方法、系统和计算机可读介质 |
KR101786051B1 (ko) | 2009-11-13 | 2017-10-16 | 삼성전자 주식회사 | 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치 |
KR101786050B1 (ko) | 2009-11-13 | 2017-10-16 | 삼성전자 주식회사 | 데이터 전송 방법 및 장치 |
CN101729857A (zh) | 2009-11-24 | 2010-06-09 | 中兴通讯股份有限公司 | 一种接入视频服务的方法及视频播放系统 |
US8510375B2 (en) | 2009-12-11 | 2013-08-13 | Nokia Corporation | Apparatus and methods for time mapping media segments in streaming media files |
JP5996439B2 (ja) | 2010-02-19 | 2016-09-21 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | Httpストリーミングにおける表現切り替えのための方法及び装置 |
CA2786257C (en) | 2010-02-19 | 2018-03-06 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangement for adaptation in http streaming |
EP3079269B1 (en) | 2010-03-11 | 2020-10-28 | Electronics and Telecommunications Research Institute | Method and apparatus for transceiving data in a mimo system |
US9497290B2 (en) | 2010-06-14 | 2016-11-15 | Blackberry Limited | Media presentation description delta file for HTTP streaming |
EP2585947A1 (en) * | 2010-06-23 | 2013-05-01 | Telefónica, S.A. | A method for indexing multimedia information |
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 |
US9131033B2 (en) | 2010-07-20 | 2015-09-08 | Qualcomm Incoporated | Providing sequence data sets for streaming video data |
KR20120010089A (ko) | 2010-07-20 | 2012-02-02 | 삼성전자주식회사 | Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치 |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8711933B2 (en) | 2010-08-09 | 2014-04-29 | Sony Computer Entertainment Inc. | Random access point (RAP) formation using intra refreshing technique in video coding |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
KR101737325B1 (ko) | 2010-08-19 | 2017-05-22 | 삼성전자주식회사 | 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치 |
US8615023B2 (en) | 2010-10-27 | 2013-12-24 | Electronics And Telecommunications Research Institute | Apparatus and method for transmitting/receiving data in communication system |
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 |
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 |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
-
2011
- 2011-08-08 US US13/205,574 patent/US8806050B2/en active Active
- 2011-08-08 US US13/205,565 patent/US9319448B2/en active Active
- 2011-08-08 US US13/205,559 patent/US9456015B2/en active Active
- 2011-08-09 TW TW100128447A patent/TWI458313B/zh active
- 2011-08-09 SG SG10201505779QA patent/SG10201505779QA/en unknown
- 2011-08-09 EP EP11746404.0A patent/EP2604015B1/en active Active
- 2011-08-09 PL PL11746402T patent/PL2604014T3/pl unknown
- 2011-08-09 JP JP2013524181A patent/JP5612211B2/ja active Active
- 2011-08-09 TW TW100128448A patent/TWI479882B/zh active
- 2011-08-09 KR KR1020137006119A patent/KR101542310B1/ko active IP Right Grant
- 2011-08-09 WO PCT/US2011/047121 patent/WO2012021538A1/en active Application Filing
- 2011-08-09 HU HUE11746402A patent/HUE044113T2/hu unknown
- 2011-08-09 WO PCT/US2011/047128 patent/WO2012021543A1/en active Application Filing
- 2011-08-09 EP EP11748529.2A patent/EP2604016B1/en active Active
- 2011-08-09 SI SI201131692T patent/SI2604014T1/sl unknown
- 2011-08-09 PT PT11746402T patent/PT2604014T/pt unknown
- 2011-08-09 ES ES11748529T patent/ES2730896T3/es active Active
- 2011-08-09 SG SG2013007026A patent/SG187638A1/en unknown
- 2011-08-09 KR KR1020157020151A patent/KR101709030B1/ko active IP Right Grant
- 2011-08-09 HU HUE11748529A patent/HUE044114T2/hu unknown
- 2011-08-09 CA CA2807157A patent/CA2807157C/en active Active
- 2011-08-09 DK DK11746402.4T patent/DK2604014T3/da active
- 2011-08-09 CN CN201180039437.0A patent/CN103141069B/zh active Active
- 2011-08-09 RU RU2013110060/08A patent/RU2558615C2/ru active
- 2011-08-09 AR ARP110102900A patent/AR082614A1/es active IP Right Grant
- 2011-08-09 SI SI201131696T patent/SI2604016T1/sl unknown
- 2011-08-09 WO PCT/US2011/047125 patent/WO2012021540A1/en active Application Filing
- 2011-08-09 AU AU2011289511A patent/AU2011289511B2/en active Active
- 2011-08-09 EP EP11746402.4A patent/EP2604014B1/en active Active
- 2011-08-09 KR KR1020137006120A patent/KR101442999B1/ko active IP Right Grant
- 2011-08-09 CN CN201180039093.3A patent/CN103069769B/zh active Active
- 2011-08-09 BR BR112013002686-3A patent/BR112013002686B1/pt active IP Right Grant
- 2011-08-09 AR ARP110102902A patent/AR082616A1/es active IP Right Grant
- 2011-08-09 AU AU2011289514A patent/AU2011289514B2/en active Active
- 2011-08-09 RU RU2013110285/08A patent/RU2571375C2/ru active
- 2011-08-09 CA CA2807156A patent/CA2807156C/en active Active
- 2011-08-09 DK DK11748529.2T patent/DK2604016T3/da active
- 2011-08-09 AR ARP110102898A patent/AR082612A1/es active IP Right Grant
- 2011-08-09 HU HUE11746404 patent/HUE044172T2/hu unknown
- 2011-08-09 ES ES11746402T patent/ES2726772T3/es active Active
- 2011-08-09 SG SG2013006952A patent/SG187636A1/en unknown
- 2011-08-09 BR BR112013002692-8A patent/BR112013002692B1/pt active IP Right Grant
- 2011-08-09 CN CN201180039099.0A patent/CN103081433B/zh active Active
- 2011-08-09 KR KR1020137006118A patent/KR20130042611A/ko active Application Filing
- 2011-08-09 MY MYPI2013000396A patent/MY155946A/en unknown
- 2011-08-09 MY MYPI2013000395A patent/MY156640A/en unknown
- 2011-08-09 TW TW100128446A patent/TWI501630B/zh active
- 2011-08-09 JP JP2013524184A patent/JP5559432B2/ja active Active
- 2011-08-09 JP JP2013524180A patent/JP2013538506A/ja not_active Withdrawn
- 2011-08-09 ES ES11746404T patent/ES2730894T3/es active Active
- 2011-09-08 UA UAA201302836A patent/UA107125C2/ru unknown
- 2011-09-08 UA UAA201302837A patent/UA107394C2/ru unknown
-
2013
- 2013-01-28 IL IL224449A patent/IL224449A/en active IP Right Grant
- 2013-01-29 IL IL224476A patent/IL224476A/en active IP Right Grant
- 2013-07-26 HK HK13108752.6A patent/HK1181577A1/xx unknown
- 2013-07-26 HK HK13108751.7A patent/HK1181576A1/zh unknown
-
2014
- 2014-06-05 JP JP2014116878A patent/JP2014209752A/ja active Pending
-
2015
- 2015-01-23 JP JP2015011413A patent/JP5932070B2/ja active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110139214A (ko) * | 2009-03-16 | 2011-12-28 | 마이크로소프트 코포레이션 | 컴퓨터 구현 방법 및 컴퓨터 시스템 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101442999B1 (ko) | 코딩된 비디오 데이터의 네트워크 스트리밍을 위한 매니페스트 파일 업데이트들 | |
KR101703179B1 (ko) | 미디어 스트리밍 동안 적응 세트들 간의 스위칭 | |
KR101558116B1 (ko) | 코딩된 멀티미디어 데이터의 네트워크 스트리밍 동안의 표현들 사이의 전환 | |
CN115943631A (zh) | 流式传输包括具有切换集的可寻址资源索引轨道的媒体数据 |
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: 20170629 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180628 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190624 Year of fee payment: 6 |