KR20160032085A - 콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템 - Google Patents

콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템 Download PDF

Info

Publication number
KR20160032085A
KR20160032085A KR1020167000149A KR20167000149A KR20160032085A KR 20160032085 A KR20160032085 A KR 20160032085A KR 1020167000149 A KR1020167000149 A KR 1020167000149A KR 20167000149 A KR20167000149 A KR 20167000149A KR 20160032085 A KR20160032085 A KR 20160032085A
Authority
KR
South Korea
Prior art keywords
unit
data unit
file transmission
data
sequentially
Prior art date
Application number
KR1020167000149A
Other languages
English (en)
Other versions
KR102272876B1 (ko
Inventor
야스아키 야마기시
Original Assignee
소니 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 주식회사 filed Critical 소니 주식회사
Publication of KR20160032085A publication Critical patent/KR20160032085A/ko
Application granted granted Critical
Publication of KR102272876B1 publication Critical patent/KR102272876B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21815Source of audio or video content, e.g. local disk arrays comprising local storage units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Abstract

본 개시는, 세그먼트 스트림의 파일 송신 단위를 지체없이 송신할 수 있도록 하는 콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템에 관한 것이다. 본 개시의 콘텐츠 공급 장치는, 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치에 있어서, 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와, 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신부를 구비한다. 본 개시는, 콘텐츠를 FLUTE 멀티캐스트 배신하는 시스템에 적용할 수 있다.

Description

콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템{CONTENT PROVISION DEVICE, CONTENT PROVISION METHOD, PROGRAM, TERMINAL DEVICE, AND CONTENT PROVISION SYSTEM}
본 개시는, 콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템에 관한 것으로, 특히 콘텐츠의 스트리밍 데이터를 FLUTE(File Delivery over Unidirectional Transport) 배신하는 경우에 사용하기에 적합한 콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템에 관한 것이다.
인터넷을 통한 동화상 배신에 이용 가능한 국제 표준화된 동화상 배신 프로토콜로서, 웹 사이트 등의 열람과 마찬가지의 HTTP를 사용하는 MPEG-DASH(Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP. 이하, DASH라고 칭함)가 알려져 있다(예를 들어, 비특허문헌 1을 참조).
DASH에서는 적응형 스트리밍 기술이 실현되어 있다. 즉, 콘텐츠의 공급측은, 동일 내용의 콘텐츠이며, 화질이나 화각 사이즈 등의 차이에 의해 비트 레이트가 상이한 복수의 스트림을 준비하도록 되어 있다. 한편, 수신측은, 공급측이 준비하고 있는 복수의 스트림 중, 인터넷의 통신 환경이나 자기의 디코드 능력 등에 따라 최적의 스트림을 선택해서 취득, 재생할 수 있다.
또한, 수신측이 스트림을 적응적으로 선택해서 수신, 재생할 수 있도록, MPD(Media Presentation Description)라고 칭해지는 메타파일이 공급측으로부터 수신측으로 공급되도록 되어 있다.
MPD에는, 청크화된 콘텐츠의 스트리밍 데이터(Audio/Video/Subtitle 등의 미디어 데이터)를 수신측에 공급하는 서버(공급원)의 어드레스(url 정보)가 기술되어 있다. 수신측은 상기 url 정보에 기초하여, 콘텐츠의 공급원이 되는 서버에 액세스해서 스트리밍 데이터를 요구하고, 상기 요구에 따라서 서버로부터 HTTP 유니캐스트 배신되는 스트리밍 데이터를 수신, 재생하게 된다.
도 1은, DASH에 기초하여 콘텐츠를 스트리밍 배신하는 콘텐츠 공급 시스템의 구성 일례를 나타내고 있다.
상기 콘텐츠 공급 시스템(10)은, 콘텐츠를 공급하는 복수의 콘텐츠 공급 장치(20)와, 콘텐츠를 수신, 재생하는 다수의 DASH 클라이언트(30)를 포함한다. DASH 클라이언트(30)는, 인터넷(11)을 이용한 CDN(Contents Delivery Network)(12)을 통하여 콘텐츠 공급 장치(20)에 접속할 수 있다.
콘텐츠 공급 장치(20)는, 동일 내용의 콘텐츠이며 비트 레이트가 상이한 복수의 스트림을 배신한다. 콘텐츠 공급 장치(20)는, 채널 스트리머(21), DASH 세그먼트 스트리머(22) 및 DASH MPD 서버(23)를 갖는다.
채널 스트리머(21)는, DASH 클라이언트(30)에 배신하기 위한 콘텐츠 소스 데이터를 관리하고 있고, 상기 소스 데이터로부터 비트 레이트가 상이한 복수의 스트리밍 데이터를 생성해서 DASH 세그먼트 스트리머(22)에 출력한다.
DASH 세그먼트 스트리머(22)는, 각 스트리밍 데이터를 시간적으로 세그먼트로 분할함으로써, 예를 들어 Fragmented MP4 등의 세그먼트 스트림을 생성하고, 생성한 세그먼트 스트림을 파일화해서 보유 지지한다. 또한, DASH 세그먼트 스트리머(22)은, WEB 서버로서, DASH 클라이언트(30)로부터의 요구(HTTP 리퀘스트)에 응답하여, 보유 지지하는 세그먼트 스트림의 파일을 요구원에 HTTP 유니캐스트 배신한다. 또한, DASH 세그먼트 스트리머(22)는, 세그먼트 스트림의 파일 공급원을 나타내는 어드레스를 포함하는 메타데이터를 DASH MPD 서버(23)에 통지한다.
DASH MPD 서버(23)는, 세그먼트 스트림의 파일 공급원(즉, DASH 세그먼트 스트리머(22))을 나타내는 어드레스 등을 기술한 MPD를 생성한다. 또한, DASH MPD 서버(23)는, WEB 서버로서, DASH 클라이언트(30)로부터의 요구(HTTP 리퀘스트)에 응답하여, 생성한 MPD를 요구원에 HTTP 유니캐스트 배신한다.
DASH 클라이언트(30)는, DASH MPD 서버(23)에 대하여 MPD를 요구하고, 이것에 응답하여 HTTP 유니캐스트 배신된 MPD를 수신한다. 또한, DASH 클라이언트(30)는, 수신한 MPD에 기초하여, DASH 세그먼트 스트리머(22)에 세그먼트 스트림의 파일을 요구하고, 이것에 응답하여 HTTP 유니캐스트 배신되는 세그먼트 스트림의 파일을 수신, 재생한다.
또한, CDN(12)은, 캐시 서버(도시하지 않음)를 포함하고 있고, 상기 캐시 서버는, CDN(12)을 통하여 HTTP 유니캐스트 배신되는 MPD나 세그먼트 스트림의 파일을 캐싱한다. 그리고, 캐시 서버는, WEB 서버로서의 DASH MPD 서버(23) 또는 DASH 세그먼트 스트리머(22) 대신에, 캐싱하고 있는 MPD나 세그먼트 스트림의 파일을, 요구원의 DASH 클라이언트(30)에 HTTP 유니캐스트 배신할 수 있다.
「기존의 Web 서버로 끊김 없는 동화상 배신을 실현」, 히라바야시 미쓰히로, NIKKEI ELECTRONICS 2012.3.19
상술한 바와 같이, DASH에서는 HTTP 유니캐스트 배신을 사용한 적응적 스트리밍 기술이 실현되어 있다.
그런데, 수신측이 HTTP 유니캐스트 배신뿐만 아니라, 예를 들어 FLUTE 멀티캐스트 배신이나 RTP 멀티캐스트 배신되는 스트림도 수신할 수 있는 것이라면, 그들 배신 패스도 사용해서 스트림을 배신하도록 하여, 수신측에서 적응적으로 스트림을 선택할 수 있도록 하는 것이 바람직하다.
즉, FLUTE 멀티캐스트 배신이나 RTP 멀티캐스트 배신은 QoS(보증 대역/지연 등)가 보증되어 있으므로, 라이브 영상 등의 리얼타임성이 요구되는 콘텐츠를 배신하는 경우, HTTP 유니캐스트 배신과 비교해서 수신측에서의 안정된 스트림의 수신, 재생을 기대할 수 있다.
여기서, 실시간으로 촬영되고 있는 콘텐츠의 소스 데이터로부터 Fragmented MP4 등의 세그먼트 스트림이 생성되고, 이것이 순차, FLUTE 멀티캐스트 배신되는 경우에 대해서 고찰한다.
도 2는, Fragmented MP4를 FLUTE 배신하는 경우의 파일 송신 단위의 종래 생성 방법의 개요를 나타내고 있다.
즉, Fragmented MP4가 FLUTE 배신되는 경우, fragmentedMP4의 랜덤 액세스 가능한 최소 단위인 GOP 단위별로 파일 송신 단위가 생성되어, 이것이 FLUTE 멀티캐스트 배신된다. 단 실제로는, GOP의 정수배의 단위별로 파일 송신 단위가 생성되는 경우도 있지만, 본 명세서에 있어서는 GOP 단위별로 파일 송신 단위가 생성되는 것으로 한다.
또한, 도 2의 예에서는, Fragmented MP4의 GOP 범위의 데이터가, 시계열순으로 Sample(s)(1), Sample(s)(2), Sample(s)(3)을 포함하는 것으로 한다. 파일 송신 단위는, Sample(s)(1)로부터 Sample(s)(3)까지가 생성되는 것을 기다려 생성되고, FLUTE 멀티캐스트 배신된다.
도 3은, Fragmented MP4가 FLUTE 배신되는 경우의 종래의 파일 송신 단위의 데이터 구조를 나타내고 있다.
이 파일 송신 단위(Media Segment)는 styp, moof, mdat를 포함한다 moof는 mfhd와 traf를 포함하고, traf는 tfhd, tfdt, trun, sdtp를 갖는다. mfhd에는 순차 송신되는 파일 송신 단위의 sequence_number가 저장되고, traf의 tfdt에는, 상기 GOP 단위의 선두 Sample(s)(1)의 BaseMediaDecodeTime-1이 저장된다. traf의 trun에는, 상기 GOP 단위에 속하는 Sample(s)(1) 내지 Sample(s)(3)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보가 저장된다. mdat에는, mdat의 헤더와 Sample(s)(1) 내지 Sample(s)(3)이 저장된다.
도 4는, 파일 송신 단위를 송신하는 타이밍을 나타내고 있다. 도 4의 A는, 파일 송신 단위의 송신되는 방송망 등의 대역이 파일 송신 단위의 데이터양과 비교해서 충분히 넓은 경우를 나타내고 있고, 이 경우라면, GOP마다 파일 송신 단위를 지체없이 수신측에 벌크 전송할 수 있다.
그러나, 실제로는, 반드시 파일 송신 단위를 순간적으로 벌크 전송할 수 있을 만큼 방송망 등의 대역이 넓다고는 할 수 없으며, 또한 앞으로, 콘텐츠가 고화질화되어 Fragmented MP4의 비트 레이트가 증가할 것도 생각된다. 그러한 경우, 도 4B에 도시되는 바와 같이, 파일 송신 단위의 공급에 지체를 발생시켜 버리는 일이 일어날 수 있고, 이 지체가 수신측에서의 버퍼링의 개시 시각에 지연을 초래하여, 결과적으로 리얼타임성이 있는 콘텐츠의 재생에 악영향을 주어 버리게 된다.
도 5는, 상술한 문제를 해결하기 위한 방법의 개요를 나타내고 있다. 즉, 상기의 문제를 해결하기 위해서는, GOP마다의 Sample(s)(1) 내지 Sample(s)(3)의 생성을 대기하여 파일 송신 단위를 생성, 송신하는 것이 아니라, 도 5에 도시되는 바와 같이, 파일 송신 단위를 보다 소형화해서 차차 송신하면 된다. 그러나, 그러한 방법은 종래 확립되어 있지 않다.
본 개시는 이러한 상황을 감안하여 이루어진 것이며, 세그먼트 스트림의 파일 송신 단위를 지체없이 송신할 수 있도록 하는 것이다.
본 개시의 제1 측면인 콘텐츠 공급 장치는, 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치에 있어서, 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와, 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신부를 구비한다.
상기 배신부는, 상기 프래그먼트 스트림의 상기 제1 데이터 단위의 상기 제2 데이터 단위에 대하여 version 속성이 추가된 moof 및 상기 제2 데이터 단위의 데이터를 저장한 mdat를 포함하는 상기 파일 송신 단위를 생성할 수 있다.
상기 배신부는, 상기 프래그먼트 스트림의 상기 제1 데이터 단위의 선두의 상기 제2 데이터 단위에 대하여, styp, version 속성 및 ntpt가 추가된 moof, 및 상기 제2 데이터 단위의 데이터를 저장한 mdat를 포함하는 상기 파일 송신 단위를 생성하고, 상기 제1 데이터 단위의 상기 선두의 상기 제2 데이터 단위와는 상이한 다른 제2 데이터 단위에 대하여, moof 및 mdat를 포함하는 상기 파일 송신 단위를 생성할 수 있다.
상기 배신부는, 상기 version 속성에 moof의 버전을 나타내는 수치를 저장하고, 상기 ntpt에 상기 제1 데이터 단위의 선두의 상기 제2 데이터 단위의 BaseMediaDecodeTime-1에 대응하는 NTP Time-1을 저장할 수 있다.
상기 배신부는, 상기 선두의 상기 제2 데이터 단위와는 상이한 다른 제2 데이터 단위에 대응하는 상기 파일 송신 단위의 moof를, 전회 생성한 상기 파일 송신 단위의, 상기 version 속성 및 상기 ntpt를 포함하는 상기 moof를 카피해서 갱신함으로써 생성할 수 있다.
본 개시의 제1 측면인 콘텐츠 공급 방법은, 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치의 콘텐츠 공급 방법에 있어서, 상기 콘텐츠 공급 장치에 의한, 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성 스텝과, 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신 스텝을 포함한다.
본 개시의 제1 측면인 프로그램은, 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 컴퓨터에, 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와, 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신부로서 기능시킨다.
본 개시의 제1 측면에 있어서는, 콘텐츠의 소스 데이터를 바탕으로 해서 프래그먼트 스트림이 생성되고, 생성된 상기 프래그먼트 스트림이 랜덤 액세스 가능한 제1 데이터 단위로 구획되고, 또한 상기 제1 데이터 단위가 제2 데이터 단위별로 세분화되고, 상기 제2 데이터 단위별로 파일 송신 단위가 생성되어 FLUTE 멀티캐스트 배신된다.
본 개시의 제2 측면인 단말 장치는, 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치로부터 배신된 상기 콘텐츠를 수신, 재생하는 단말 장치에 있어서, 상기 콘텐츠 공급 장치가, 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와, 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신부를 구비하고, FLUTE 멀티캐스트 배신된 상기 파일 송신 단위를 수신하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위를 수신할 수 있을 때까지 버퍼링하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위별로 재생한다.
본 개시의 제2 측면에 있어서는, FLUTE 멀티캐스트 배신된 파일 송신 단위가 수신되고, 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위를 수신할 수 있을 때까지 버퍼링되고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위별로 재생된다.
본 개시의 제3 측면인 콘텐츠 공급 시스템은, 콘텐츠 공급 장치와, 상기 콘텐츠 공급 장치로부터 배신된 상기 콘텐츠를 수신, 재생하는 단말 장치를 포함하는 콘텐츠 공급 시스템에 있어서, 상기 콘텐츠 공급 장치가, 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와, 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신부를 구비하고, 상기 단말 장치가, FLUTE 멀티캐스트 배신된 상기 파일 송신 단위를 수신하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위를 수신할 수 있을 때까지 버퍼링하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위별로 재생한다.
본 개시의 제3 측면에 있어서는, 콘텐츠 공급 장치에 의해, 콘텐츠의 소스 데이터를 바탕으로 해서 프래그먼트 스트림이 생성되고, 생성된 상기 프래그먼트 스트림이 랜덤 액세스 가능한 제1 데이터 단위로 구획되고, 또한 상기 제1 데이터 단위가 제2 데이터 단위별로 세분화되고, 상기 제2 데이터 단위별로 파일 송신 단위가 생성되어 FLUTE 멀티캐스트 배신된다. 또한, 단말 장치에 의해, FLUTE 멀티캐스트 배신된 파일 송신 단위가 수신되고, 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위를 수신할 수 있을 때까지 버퍼링되고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위별로 재생된다.
본 개시의 제1 측면에 의하면, 세그먼트 스트림의 파일 송신 단위를 지체없이 송신할 수 있다.
본 개시의 제2 측면에 의하면, FLUTE 멀티캐스트 배신된 세그먼트 스트림을 수신, 재생할 수 있다.
본 개시의 제3 측면에 의하면, 세그먼트 스트림의 파일 송신 단위를 지체없이 송신하고, 단말 장치에서 수신, 재생할 수 있다.
도 1은 종래의 콘텐츠 공급 시스템의 구성 일례를 도시하는 블록도.
도 2는 Fragmented MP4를 FLUTE 배신하는 경우의 파일 송신 단위의 종래 생성 방법의 개요를 도시하는 도면.
도 3은 Fragmented MP4를 FLUTE 배신하는 경우의 종래 파일 송신 단위의 데이터 구조를 도시하는 도면.
도 4는 파일 송신 단위의 송신 타이밍을 도시하는 도면.
도 5는 파일 송신 단위의 송신 타이밍을 도시하는 도면.
도 6은 본 개시를 적용한 콘텐츠 공급 시스템의 구성예를 도시하는 블록도.
도 7은 콘텐츠 공급 장치에서 Fragmented MP4를 FLUTE 배신하는 경우의 파일 송신 단위의 생성 방법의 개요를 도시하는 도면.
도 8은 콘텐츠 공급 장치에서 Fragmented MP4를 FLUTE 배신하는 경우의 데이터 구조를 도시하는 도면.
도 9는 Fragmented MP4 파일 포맷 사양의 확장을 도시하는 도면.
도 10은 Fragmented MP4 파일 포맷 사양의 확장을 도시하는 도면.
도 11은 FLUTE 스트림 배신 처리를 설명하는 흐름도.
도 12는 도 11 스텝 S4의 처리를 설명하는 흐름도.
도 13은 컴퓨터의 구성예를 도시하는 블록도.
이하, 본 개시를 실시하기 위한 구체적인 내용(이하, 실시 형태라고 칭함)에 대해서 설명한다.
[콘텐츠 공급 시스템의 구성예]
도 6은, 본 개시의 실시 형태인 콘텐츠 공급 시스템의 구성예를 나타내고 있다.
상기 콘텐츠 공급 시스템(50)은, 복수의 콘텐츠 공급 장치(60)와, 다수의 단말 장치(70)를 포함한다. 콘텐츠 공급 장치(60)와 단말 장치(70)는, 네트워크(51)를 통하여 접속할 수 있다.
네트워크(51)는, 인터넷과 그것을 이용한 CDN으로 대표되는 쌍방향 통신망 외에, 지상방송파, 위성 방송파, 휴대 방송(e) MBMS 등을 이용한 각종 방송망을 포함한다.
네트워크(51)에는, UTC 타임 포맷에 따른 시스템 시각 정보를 제공하는 NTP 서버(52)가 접속되어 있다. NTP 서버(52)는, 각 콘텐츠 공급 장치(60), 각 단말 장치(70) 등에 대하여 시스템 시각 정보를 공급할 수 있고, 각 콘텐츠 공급 장치(60) 및 각 단말 장치(70)는, NTP 서버(52)로부터의 시스템 시각 정보에 따라서, 자기의 시스템 시각을 NTP 시간축과 동기시켜서 동작한다.
콘텐츠 공급 장치(60)는, 콘텐츠를 HTTP 유니캐스트 배신함과 함께 FLUTE 멀티캐스트 배신하는 것이다. 콘텐츠 공급 장치(60)는, 채널 스트리머(61), DASH 세그먼터(62), FLUTE 스트리머(63), MPD 제네레이터(64), WEB 서버(65) 및 멀티캐스트 서버(66)를 갖는다.
또한, 콘텐츠 공급 장치(60)가 갖는 채널 스트리머(61) 내지 멀티캐스트 서버(66)는, 1개소에 집적해서 배치해도 되고, 인터넷 등을 통하여 분산해서 배치해도 된다.
채널 스트리머(61)는, 단말 장치(70)에 배신하기 위한, 실시간으로 촬영된 콘텐츠의 소스 데이터로부터 비트 레이트가 상이한 복수의 스트리밍 데이터를 생성해서 DASH 세그먼터(62)에 출력한다.
DASH 세그먼터(62)는, 각 스트리밍 데이터를 시간적으로 세그먼트로 분할함으로써, 예를 들어 Fragmented MP4 등의 세그먼트 스트림을 생성하고, 생성한 세그먼트 스트림을 FLUTE 스트리머(63) 및 WEB 서버(65)에 출력한다. 또한, DASH 세그먼터(62)는, 세그먼트 스트림의 공급원을 나타내는 어드레스를 포함하는 메타데이터를 MPD 제네레이터(64)에 통지한다.
FLUTE 스트리머(63)는, DASH 세그먼터(62)로부터 순차 입력되는 세그먼트 스트림을 FLUTE 스트림으로 변환해서 멀티캐스트 서버(66)에 출력한다(상세 후술). 또한, FLUTE 스트리머(63)는, MPD 제네레이터(64)에서 생성되는 MPD를 FLUTE 패킷에 저장해서 멀티캐스트 서버(66)에 출력한다.
MPD 제네레이터(64)는, DASH 세그먼터(62)로부터 통지되는 메타데이터에 기초하여, 세그먼트 스트림의 파일 공급원(WEB 서버(65))을 나타내는 어드레스 등을 기술한 MPD를 생성해서 FLUTE 스트리머(63) 및 WEB 서버(65)에 출력한다.
WEB 서버(65)는, 단말 장치(70)로부터의 MPD의 요구(HTTP 리퀘스트)에 응답하여, MPD 제네레이터(64)로부터 입력되고 있는 MPD를 요구원에 HTTP 유니캐스트 배신한다. 또한, WEB 서버(65)는, 단말 장치(70)로부터의 세그먼트 스트림의 요구(HTTP 리퀘스트)에 응답하여, 세그먼트 스트림의 파일을 요구원에 HTTP 유니캐스트 배신한다.
멀티캐스트 서버(66)는, MPD를 FLUTE 멀티캐스트 배신한다. 또한, 멀티캐스트 서버(66)는, FLUTE 스트림을 FLUTE 멀티캐스트 배신한다.
단말 장치(70)는, 네트워크(51)를 통하여 콘텐츠 공급 장치(60)로부터 MPD를 취득한다. 구체적으로는, HTTP 리퀘스트를 송신, 그에 따라 HTTP 유니캐스트 배신되는 MPD를 수신하거나, FLUTE 멀티캐스트 배신되는 MPD를 수신한다. 또한, 단말 장치(70)는, 취득한 MPD에 기초하여 WEB 서버(65)에 세그먼트 스트림을 요구하고, 이것에 응답하여 HTTP 멀티캐스트 배신되는 세그먼트 스트림의 파일을 수신, 재생한다. 또한, 단말 장치(70)는, FLUTE 멀티캐스트 배신되는 FLUTE 스트림을 수신, 재생한다. 또한, 단말 장치(70)가, FLUTE 멀티캐스트 배신되는 MPD나 FLUTE 스트림을 수신하는 경우에는, FLUTE 멀티캐스트 배신을 행하는 멀티캐스트 서버(66)의 포털 채널이 기술된 아나운스 정보가 참조된다.
상기 아나운스 정보는, FLUTE 멀티캐스트 배신이 네트워크(51)에 포함되는 휴대 방송(e) MBMS를 통하여 행하여지는 경우, MBMS에 있어서의 USD(User Service Description) 등에 의해, 인터랙션 채널 또는 브로드 캐스트·멀티캐스트 채널을 통하여 주지된다. 또한, FLUTE 멀티캐스트 배신이 네트워크(51)에 포함되는 지상방송파 또는 위성 방송을 통하여 행하여지는 경우, 상기 아나운스 정보는, DVB-H(IPDC)의 ESG(Electronic Service Guide) 등에 의해, 인터랙션 채널 또는 브로드 캐스트·멀티캐스트 채널을 통하여 주지된다.
[Fragmented MP4에 기초하는 FLUTE 스트림의 생성에 대해서]
상술한 바와 같이, 종래, Fragmented MP4를 FLUTE 배신하는 경우에는, GOP마다 파일 송신단을 생성해서 송신하고 있었다. 본 실시 형태에서는, GOP의 도중이어도 순차, 파일 전송 단위를 생성해서 배신하도록 한다.
도 7은, FLUTE 스트리머(63)에 의한, 순차 입력되는 Fragmented MP4의 세그먼트 스트림으로부터, FLUTE 스트림의 파일 전송 단위를 생성하는 개요를 나타내고 있다. 도 7의 예에서는, Fragmented MP4의 GOP 범위의 데이터가, 시계열순으로 Sample(s)(1), Sample(s)(2), Sample(s)(3)을 포함하는 것으로 한다.
먼저, Sample(s)(1)이 입력된 단계에서, Sample(s)(1)에 대응하는 파일 송신 단위가 생성, FLUTE 배신되고, 이어서 Sample(s)(2)가 입력된 단계에서, Sample(s)(2)에 대응하는 파일 송신 단위가 생성, FLUTE 배신이 생성된다.
또한, Sample(s)(3)이 입력된 단계에서, Sample(s)(3)에 대응하는 파일 송신 단위가 생성, FLUTE 배신된다. 단, 단말 장치(70)에서는, GOP를 구성하는 Sample(s)(1) 내지 Sample(s)(3)에 대응하는 3개의 파일 송신 단위를 수신한 단계에서 디코드를 행하는 것으로 한다.
도 8은, 본 실시 형태에서 생성되는 파일 송신 단위의 데이터 구조를 나타내고 있다. 이 파일 송신 단위(Media Segment)는 styp, moof, mdat를 포함한다. moof는 mfhd와 traf를 포함하고, traf는 tfhd, tfdt, ntpt, trun, sdtp를 갖는다.
도 8과 도 3을 비교해서 명확한 바와 같이, 본 실시 형태에서 생성되는 파일 송신 단위에는, 도 3의 파일 송신 단위에 대하여, mfhd에는, moof의 버전을 나타내는 version 속성이 추가된다. 또한, moof의 traf에는 NTP Time Box(ntpt)가 추가된다. ntpt에는, tfdt에 저장되는 상기 GOP 단위의 선두 Sample(s)(1)의 BaseMediaDecodeTime-1에 대응하는 NTP Time-1이 저장된다.
Sample(s)(1)에 대응하는 파일 송신 단위는, styp, moof, mdat를 갖고, moof/mfhd에는 sequence_number와 version=1이 저장되고, moof/traf/tfdt에는 Sample(s)(1)의 BaseMediaDecodeTime-1이 저장되고, moof/traf/ntpt에는 BaseMediaDecodeTime-1에 대응하는 NTP Time-1이 저장된다. 또한, moof/traf/trun에는 Sample(s)(1)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보가 저장된다. mdat에는, mdat의 헤더와 Sample(s)(1)이 저장된다.
Sample(s)(2)에 대응하는 파일 송신 단위에서는, styp가 생략되고, moof는 Sample(s)(1)에 대응하는 파일 송신 단위의 moof가 카피되고, moof/mfhd의 version이 2로 갱신되어, moof/traf/trun에는 Sample(s)(2)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보가 추가된다. mdat에는, Sample(s)(2)가 저장된다.
Sample(s)(3)에 대응하는 파일 송신 단위에서는, styp가 생략되고, moof는 Sample(s)(2)에 대응하는 파일 송신 단위의 moof가 카피되고, moof/mfhd의 version이 3으로 갱신되어, moof/traf/trun에는 Sample(s)(3)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보가 추가된다. mdat에는, Sample(s)(3)이 저장된다.
Sample(s)(1), Sample(s)(2), Sample(s)(3) 각각에 대응하는 파일 송신 단위의 데이터를 비교한 경우, moof에 대해서는 서서히 그 데이터양이 커지기는 하지만, mdat에는, 거의 동등하게 된다. 또한, 이들과 종래의 GOP 단위의 파일 송신 단위의 데이터양을 비교한 경우, 거의 1/3으로 할 수 있으므로, 도 5에 도시된 바와 같이, 파일 송신 단위를 보다 소형화해서 차차 송신하는 것이 가능하게 된다.
[Fragmented MP4 파일 포맷 사양의 확장]
도 9는, moof/mfhd에 version 속성을 추가하기 위한 Fragmented MP4 파일 포맷 사양의 확장을 나타내고 있다.
즉, 본 실시 형태에서는, 도 9의 A에 도시되는 종래의 moof/mfhd의 sequence_number 속성에 관한 Syntax에, 도 9의 B에 도시되는 바와 같이 version 속성을 추가한 상태로 확장된다. version 속성을 설정함으로써, 단말 장치(70)에서 수신한 파일 송신 단위에 포함되는 moof의 sequence_number가 동일한 경우에, 그 moof가 선두의 Sample(s)(1)에만 대응하는 것인지, Sample(s)(1) 내지 Sample(s)(3), 즉 GOP 전체에 대응하는 것인지를 판단할 수 있다. 또한, 도 9의 A 및 도 9의 B를 통합하여, 도 9의 C에 도시되는 바와 같이 Fragmented MP4 파일 포맷 사양을 확장해도 된다.
도 10은, moof/traf에 NTP Time Box(ntpt)를 추가하기 위한 Fragmented MP4의 파일 포맷 사양의 확장을 나타내고 있다. ntpt를 설치함으로써, 콘텐츠의 리얼타임성을 확보해서 그 Fragmented MP4를 FLUTE 멀티캐스트 배신할 수 있다.
[콘텐츠 공급 시스템(50)의 동작]
이어서, 콘텐츠 공급 시스템(50)의 동작에 대해서 설명한다.
도 11은, 콘텐츠 공급 장치(60)에서 FLUTE 스트림을 배신하는 처리(이하, FLUTE 스트림 배신 처리라고 칭함)를 설명하는 흐름도이다.
스텝 S1에 있어서, 채널 스트리머(61)는, 단말 장치(70)에 배신하기 위한, 실시간으로 촬영된 콘텐츠의 소스 데이터로부터 비트 레이트가 상이한 복수의 스트리밍 데이터를 생성해서 DASH 세그먼터(62)에 출력한다. DASH 세그먼터(62)는, 각 스트리밍 데이터를 바탕으로, Fragmented MP4(세그먼트 스트림)를 생성해서 FLUTE 스트리머(63)에 출력한다.
스텝 S2에 있어서, FLUTE 스트리머(63)는, DASH 세그먼터(62)로부터 순차 입력되는 Fragmented MP4의 GOP의 선두의 Sample(s)(1)에 대응하는 파일 송신 단위를 생성한다.
구체적으로는, Sample(s)(1)에 대응하는 파일 송신 단위로서, styp, moof, mdat를 설치하고, moof/mfhd에는 sequence_number와 version=1을 저장하고, moof/traf/tfdt에는 Sample(s)(1)의 BaseMediaDecodeTime-1을 저장하고, moof/traf/ntpt에는 BaseMediaDecodeTime-1에 대응하는 NTP Time-1을 저장한다. 또한, moof/traf/trun에는 Sample(s)(1)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보를 저장한다. mdat에는, mdat의 헤더와 Sample(s)(1)을 저장한다.
스텝 S3에 있어서, 멀티캐스트 서버(16)는, 스텝 S2의 처리에서 생성된 Sample(s)(1)에 대응하는 파일 송신 단위를, 네트워크(51)를 통하여 FLUTE 멀티캐스트 배신한다.
이어서, 스텝 S4에 있어서, FLUTE 스트리머(63)는, DASH 세그먼터(62)로부터 순차 입력되는 Fragmented MP4의 GOP의 다음 Sample(s)(Sample(s)(2) 또는 Sample(s)(3))에 대응하는 파일 송신 단위를 생성한다.
이 스텝 S4의 처리에 대해서 상세하게 설명한다. 도 12는, 스텝 S4의 처리를 상세하게 설명하는 흐름도이다.
다음 Sample(s)이 Sample(s)(2)인 경우, 스텝 S11에 있어서, FLUTE 스트리머(63)는, styp를 생략하고, 이전의 파일 송신 단위(지금의 경우, Sample(s)(1)에 대응하는 파일 송신 단위)로부터 moof를 카피한다. 또한, 스텝 S12에 있어서, FLUTE 스트리머(63)는, moof/mfhd의 version을 2로 갱신한다. 또한, moof/traf/trun에는 Sample(s)(2)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보를 추가한다. 스텝 S13에 있어서, FLUTE 스트리머(63)는, mdat에 Sample(s)(2)를 저장한다.
또한, 다음의 Sample(s)이 Sample(s)(3)인 경우, 스텝 S11에 있어서, FLUTE 스트리머(63)는, styp를 생략하고, 이전의 파일 송신 단위(지금의 경우, Sample(s)(2)에 대응하는 파일 송신 단위)로부터 moof를 카피한다. 또한, 스텝 S12에 있어서, FLUTE 스트리머(63)는, moof/mfhd의 version을 3으로 갱신한다. 또한, moof/traf/trun에는 Sample(s)(3)의 프리젠테이션 타임을 계산하기 위해서 필요한 정보를 추가한다. 스텝 S13에 있어서, FLUTE 스트리머(63)는, mdat에 Sample(s)(3)을 저장한다.
도 11로 복귀한다. 스텝 S5에 있어서, 멀티캐스트 서버(16)는, 스텝 S4에서 생성된 파일 송신 단위를, 네트워크(51)를 통하여 FLUTE 멀티캐스트 배신한다. 스텝 S6에 있어서, FLUTE 스트리머(63)는, 스텝 S4에서 생성한 파일 송신 단위가 GOP의 종료에 대응하는 것인지 여부를 판단한다. 이 판단이 부정일 경우, 처리는 스텝 S4로 되돌려져서, 그 이후가 반복된다. 스텝 S6에서의 판단이 긍정일 경우, 처리는 스텝 S7로 진행된다.
스텝 S7에 있어서, FLUTE 스트리머(63)는, DASH 세그먼터(62)로부터 Fragmented MP4(세그먼트 스트림)의 입력이 종료되었는지를 판단한다. 이 판단이 부정일 경우, 처리는 스텝 S2로 되돌려져서, 그 이후가 반복된다. 스텝 S7에서의 판단이 긍정일 경우, 이 FLUTE 스트림 배신 처리는 종료된다.
이상 설명한 FLUTE 스트림 배신 처리에 의하면, Fragmented MP4(세그먼트 스트림)를 FLUTE 멀티캐스트 배신하는 경우, 더 작은 파일 송신 단위로서 차차 송신할 수 있다. 따라서, 이후, 콘텐츠가 고화질화해서 Fragmented MP4의 비트 레이트가 증가하거나 해도, 파일 송신 단위의 공급에 지체를 발생시켜 버리는 것을 억제할 수 있다. 또한, 이 지체에 의한 단말 장치(70)에서의 버퍼링의 개시 시각에 지연을 초래하거나, 그 결과로서 리얼타임성이 있는 콘텐츠의 재생에 악영향을 주거나 하는 것을 억제할 수 있다.
그런데, 상술한 일련의 처리를 실행하는 콘텐츠 공급 장치(60) 및 단말 장치(70)는, 각각을 하드웨어에 의해 구성하는 것 이외에, 컴퓨터가 소프트웨어를 실행함으로써 실현할 수도 있다. 이 컴퓨터에는, 전용의 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 13은, 상술한 컴퓨터의 하드웨어 구성예를 도시하는 블록도이다.
이 컴퓨터(100)에 있어서, CPU(Central Processing Unit)(101), ROM(Read Only Memory)(102), RAM(Random Access Memory)(103)은, 버스(104)에 의해 서로 접속되어 있다.
버스(104)에는 또한 입출력 인터페이스(105)가 접속되어 있다. 입출력 인터페이스(105)에는, 입력부(106), 출력부(107), 기억부(108), 통신부(109) 및 드라이브(110)가 접속되어 있다.
입력부(106)는, 키보드, 마우스, 마이크로폰 등으로 이루어진다. 출력부(107)는, 디스플레이, 스피커 등으로 이루어진다. 기억부(108)는, 하드 디스크나 불휘발성 메모리 등으로 이루어진다. 통신부(109)는, 네트워크 인터페이스 등으로 이루어진다. 드라이브(110)는, 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등의 리무버블 미디어(111)를 구동한다.
이상과 같이 구성되는 컴퓨터(100)에서는, CPU(101)가, 예를 들어 기억부(108)에 기억되어 있는 프로그램을, 입출력 인터페이스(105) 및 버스(104)를 통하여, RAM(103)에 로드해서 실행함으로써, 상술한 일련의 처리가 행하여진다.
컴퓨터(100)(CPU(101))가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(111)에 기록해서 제공할 수 있다. 또한, 프로그램은, 로컬에리어 네트워크, 인터넷, 디지털 위성 방송과 같은, 유선 또는 무선의 전송 매체를 통하여 제공할 수 있다.
컴퓨터(100)에서는, 프로그램은, 리무버블 미디어(111)를 드라이브(110)에 장착함으로써, 입출력 인터페이스(105)를 통하여, 기억부(108)에 인스톨할 수 있다. 또한, 프로그램은, 유선 또는 무선의 전송 매체를 통하여, 통신부(109)에서 수신하고, 기억부(108)에 인스톨할 수 있다. 기타, 프로그램은, ROM(102)이나 기억부(108)에, 미리 인스톨해 둘 수 있다.
또한, 컴퓨터(100)가 실행하는 프로그램은, 본 명세서에서 설명하는 순서를 따라서 시계열로 처리가 행하여지는 프로그램이어도 되고, 병렬로, 또는 호출이 행하여졌을 때 등의 필요한 타이밍에 처리가 행하여지는 프로그램이어도 된다.
본 개시의 실시 형태는, 상술한 실시 형태에 한정되는 것이 아니라, 본 개시의 요지를 일탈하지 않는 범위에서 다양한 변경이 가능하다.
본 개시는 이하와 같은 구성도 취할 수 있다.
(1) 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치에 있어서,
상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와,
생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위로 구획하고, 또한 상기 제1 데이터 단위를 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 생성해서 FLUTE 멀티캐스트 배신하는 배신부를 구비하는 콘텐츠 공급 장치.
(2) 상기 배신부는, 상기 프래그먼트 스트림의 상기 제1 데이터 단위의 상기 제2 데이터 단위에 대하여 version 속성이 추가된 moof 및 상기 제2 데이터 단위의 데이터를 저장한 mdat를 포함하는 상기 파일 송신 단위를 생성하는 상기 (1)에 기재된 콘텐츠 공급 장치.
(3) 상기 배신부는,
상기 프래그먼트 스트림의 상기 제1 데이터 단위의 선두의 상기 제2 데이터 단위에 대하여 styp, version 속성 및 ntpt가 추가된 moof 및 상기 제2 데이터 단위의 데이터를 저장한 mdat를 포함하는 상기 파일 송신 단위를 생성하고,
상기 제1 데이터 단위의 상기 선두의 상기 제2 데이터 단위와는 상이한 다른 제2 데이터 단위에 대하여 moof 및 mdat를 포함하는 상기 파일 송신 단위를 생성하는 상기 (1) 또는(2)에 기재된 콘텐츠 공급 장치.
(4) 상기 배신부는, 상기 version 속성에 moof의 버전을 나타내는 수치를 저장하고, 상기 ntpt에 상기 제1 데이터 단위의 선두의 상기 제2 데이터 단위의 BaseMediaDecodeTime-1에 대응하는 NTP Time-1을 저장하는 상기 (3)에 기재된 콘텐츠 공급 장치.
(5) 상기 배신부는, 상기 선두의 상기 제2 데이터 단위와는 상이한 다른 제2 데이터 단위에 대응하는 상기 파일 송신 단위의 moof를, 전회 생성한 상기 파일 송신 단위의, 상기 version 속성 및 상기 ntpt를 포함하는 상기 moof를 카피해서 갱신함으로써 생성하는 상기 (4)에 기재된 콘텐츠 공급 장치.
50 콘텐츠 공급 시스템
51 네트워크
52 NTP 서버
60 콘텐츠 공급 장치
61 채널 스트리머
62 DASH 세그먼터
63 FLUTE 스트리머
64 MPD 제네레이터
65 WEB 서버
66 멀티캐스트 서버
70 단말 장치
100 컴퓨터
101 CPU

Claims (9)

  1. 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치에 있어서,
    실시간으로 촬영된 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와,
    순차 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위보다도 시간의 길이가 짧은 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 순차 생성하고, 순차 생성한 상기 파일 송신 단위를 순차 FLUTE 멀티캐스트 배신하는 배신부를 구비하는 콘텐츠 공급 장치.
  2. 제1항에 있어서,
    상기 배신부는, 상기 프래그먼트 스트림의 상기 제1 데이터 단위의 상기 제2 데이터 단위에 대하여 version 속성이 추가된 moof 및 상기 제2 데이터 단위의 데이터를 저장한 mdat를 포함하는 상기 파일 송신 단위를 생성하는 콘텐츠 공급 장치.
  3. 제2항에 있어서,
    상기 배신부는,
    상기 프래그먼트 스트림의 상기 제1 데이터 단위의 선두의 상기 제2 데이터 단위에 대하여, styp, version 속성 및 ntpt가 추가된 moof, 및 상기 제2 데이터 단위의 데이터를 저장한 mdat를 포함하는 상기 파일 송신 단위를 생성하고,
    상기 제1 데이터 단위의 상기 선두의 상기 제2 데이터 단위와는 상이한 다른 제2 데이터 단위에 대하여, moof 및 mdat를 포함하는 상기 파일 송신 단위를 생성하는 콘텐츠 공급 장치.
  4. 제3항에 있어서,
    상기 배신부는, 상기 version 속성에 moof의 버전을 나타내는 수치를 저장하고, 상기 ntpt에 상기 제1 데이터 단위의 선두의 상기 제2 데이터 단위의 BaseMediaDecodeTime-1에 대응하는 NTP Time-1을 저장하는 콘텐츠 공급 장치.
  5. 제4항에 있어서,
    상기 배신부는, 상기 선두의 상기 제2 데이터 단위와는 상이한 다른 제2 데이터 단위에 대응하는 상기 파일 송신 단위의 moof를, 전회 생성한 상기 파일 송신 단위의, 상기 version 속성 및 상기 ntpt를 포함하는 상기 moof를 카피해서 갱신함으로써 생성하는 콘텐츠 공급 장치.
  6. 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치의 콘텐츠 공급 방법에 있어서,
    상기 콘텐츠 공급 장치에 의한,
    실시간으로 촬영된 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성 스텝과,
    순차 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위보다도 시간의 길이가 짧은 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 순차 생성하고, 순차 생성한 상기 파일 송신 단위를 순차 FLUTE 멀티캐스트 배신하는 배신 스텝을 포함하는 콘텐츠 공급 방법.
  7. 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 컴퓨터에,
    실시간으로 촬영된 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와,
    순차 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위보다도 시간의 길이가 짧은 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 순차 생성하고, 순차 생성한 상기 파일 송신 단위를 순차 FLUTE 멀티캐스트 배신하는 배신부로서 기능시키는 프로그램.
  8. 콘텐츠의 프래그먼트 스트림을 멀티캐스트 배신하는 콘텐츠 공급 장치로부터 배신된 상기 콘텐츠를 수신, 재생하는 단말 장치에 있어서,
    상기 콘텐츠 공급 장치는,
    실시간으로 촬영된 상기 콘텐츠의 소스 데이터를 바탕으로 해서 상기 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와,
    순차 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위보다도 시간의 길이가 짧은 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 순차 생성하고, 순차 생성한 상기 파일 송신 단위를 순차 FLUTE 멀티캐스트 배신하는 배신부를 구비하고,
    FLUTE 멀티캐스트 배신된 상기 파일 송신 단위를 수신하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위를 수신할 수 있을 때까지 버퍼링하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위별로 재생하는 단말 장치.
  9. 콘텐츠 공급 장치와, 상기 콘텐츠 공급 장치로부터 배신된 상기 콘텐츠를 수신, 재생하는 단말 장치를 포함하는 콘텐츠 공급 시스템에 있어서,
    상기 콘텐츠 공급 장치는,
    실시간으로 촬영된 상기 콘텐츠의 소스 데이터를 바탕으로 해서 프래그먼트 스트림을 생성하는 프래그먼트 스트림 생성부와,
    순차 생성된 상기 프래그먼트 스트림을 랜덤 액세스 가능한 제1 데이터 단위보다도 시간의 길이가 짧은 제2 데이터 단위별로 세분화하고, 상기 제2 데이터 단위별로 파일 송신 단위를 순차 생성하고, 순차 생성한 상기 파일 송신 단위를 순차 FLUTE 멀티캐스트 배신하는 배신부를 구비하고,
    상기 단말 장치는,
    FLUTE 멀티캐스트 배신된 상기 파일 송신 단위를 수신하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위를 수신할 수 있을 때까지 버퍼링하고, 상기 제1 데이터 단위에 대응하는 복수의 상기 파일 송신 단위별로 재생하는 콘텐츠 공급 시스템.
KR1020167000149A 2013-07-17 2014-07-08 콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템 KR102272876B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2013-148212 2013-07-17
JP2013148212 2013-07-17
PCT/JP2014/068125 WO2015008653A1 (ja) 2013-07-17 2014-07-08 コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム

Publications (2)

Publication Number Publication Date
KR20160032085A true KR20160032085A (ko) 2016-03-23
KR102272876B1 KR102272876B1 (ko) 2021-07-05

Family

ID=52346121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167000149A KR102272876B1 (ko) 2013-07-17 2014-07-08 콘텐츠 공급 장치, 콘텐츠 공급 방법, 프로그램, 단말 장치 및 콘텐츠 공급 시스템

Country Status (10)

Country Link
US (2) US10530710B2 (ko)
EP (1) EP3024245A4 (ko)
JP (1) JP6653575B2 (ko)
KR (1) KR102272876B1 (ko)
CN (1) CN105359536B (ko)
BR (1) BR112016000427B1 (ko)
CA (1) CA2916655C (ko)
MX (1) MX358670B (ko)
RU (1) RU2655744C2 (ko)
WO (1) WO2015008653A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112016000427B1 (pt) * 2013-07-17 2023-05-09 Sony Corporation Dispositivo, método e sistema de suprimento de conteúdo, e, dispositivo terminal

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050007533A (ko) * 2002-06-06 2005-01-19 인터내셔널 비지네스 머신즈 코포레이션 디지털 콘텐츠 배신 시스템, 디지털 콘텐츠 배신 방법, 이방법을 실행하기 위한 프로그램, 이 프로그램을 기억한컴퓨터 판독 가능한 기록 매체, 및 이를 위한 서버 및클라이언트
KR20110041409A (ko) * 2009-10-15 2011-04-21 소니 주식회사 콘텐츠 재생 시스템, 콘텐츠 재생 장치, 프로그램, 콘텐츠 재생 방법, 및 콘텐츠 서버의 제공
US20110302618A1 (en) * 2010-06-04 2011-12-08 Mobitv, Inc. Fragmented file structure for live media stream delivery
US20120239785A1 (en) * 2011-03-14 2012-09-20 Pazos Carlos M D System and apparatus for using multichannel file delivery over unidirectional transport ("flute") protocol for delivering different classes of files in a broadcast network
WO2013052780A1 (en) * 2011-10-05 2013-04-11 Qualcomm Incorporated Network streaming of media data
US20130194996A1 (en) * 2012-01-27 2013-08-01 Ozgur Oyman Techniques for improved multicast content delivery

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4299836B2 (ja) 2002-07-12 2009-07-22 パナソニック株式会社 データ処理装置
EP1566966A4 (en) 2003-03-25 2007-02-28 Matsushita Electric Ind Co Ltd DATA TRANSMISSION DEVICE
KR101117874B1 (ko) * 2003-10-24 2012-03-08 마이크로소프트 코포레이션 실시간 제어 프로토콜(rtcp) 메시지 내로의 세션 설명메시지의 임베딩
US9432433B2 (en) * 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US8973036B2 (en) 2007-12-04 2015-03-03 Qualcomm Incorporated Mapping mobile device electronic program guide to content
CN101771662B (zh) * 2008-12-30 2012-11-07 华为技术有限公司 网络电视架构中下载业务信息的获取方法、装置及系统
US9237387B2 (en) * 2009-10-06 2016-01-12 Microsoft Technology Licensing, Llc Low latency cacheable media streaming
EP2596633B1 (en) 2010-07-20 2016-11-23 Nokia Technologies Oy A media streaming apparatus
CN102572708B (zh) * 2010-12-08 2015-04-01 中国电信股份有限公司 多播广播业务处理方法与系统、广播多播业务平台
US9026671B2 (en) * 2011-04-05 2015-05-05 Qualcomm Incorporated IP broadcast streaming services distribution using file delivery methods
WO2011100901A2 (zh) 2011-04-07 2011-08-25 华为技术有限公司 媒体内容的传输处理方法、装置与系统
CN103733631B (zh) * 2011-06-20 2017-02-15 Lg电子株式会社 媒体内容收发方法和使用该方法的收发设备
US9253233B2 (en) * 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9357275B2 (en) 2011-09-06 2016-05-31 Qualcomm Incorporated Network streaming of coded video data
US20150172348A1 (en) * 2012-01-17 2015-06-18 Telefonaktiebolaget L M Ericsson (Publ) Method for sending respectively receiving a media stream
US9450997B2 (en) * 2012-02-27 2016-09-20 Qualcomm Incorporated Dash client and receiver with request cancellation capabilities
US9820259B2 (en) * 2012-05-04 2017-11-14 Qualcomm Incorporated Smooth transition between multimedia broadcast multicast service (MBMS) and unicast service by demand
US8923880B2 (en) * 2012-09-28 2014-12-30 Intel Corporation Selective joinder of user equipment with wireless cell
BR112016000427B1 (pt) * 2013-07-17 2023-05-09 Sony Corporation Dispositivo, método e sistema de suprimento de conteúdo, e, dispositivo terminal
JP2015061307A (ja) * 2013-09-20 2015-03-30 ソニー株式会社 コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050007533A (ko) * 2002-06-06 2005-01-19 인터내셔널 비지네스 머신즈 코포레이션 디지털 콘텐츠 배신 시스템, 디지털 콘텐츠 배신 방법, 이방법을 실행하기 위한 프로그램, 이 프로그램을 기억한컴퓨터 판독 가능한 기록 매체, 및 이를 위한 서버 및클라이언트
KR20110041409A (ko) * 2009-10-15 2011-04-21 소니 주식회사 콘텐츠 재생 시스템, 콘텐츠 재생 장치, 프로그램, 콘텐츠 재생 방법, 및 콘텐츠 서버의 제공
US20110302618A1 (en) * 2010-06-04 2011-12-08 Mobitv, Inc. Fragmented file structure for live media stream delivery
US20120239785A1 (en) * 2011-03-14 2012-09-20 Pazos Carlos M D System and apparatus for using multichannel file delivery over unidirectional transport ("flute") protocol for delivering different classes of files in a broadcast network
WO2013052780A1 (en) * 2011-10-05 2013-04-11 Qualcomm Incorporated Network streaming of media data
US20130091251A1 (en) * 2011-10-05 2013-04-11 Qualcomm Incorporated Network streaming of media data
US20130194996A1 (en) * 2012-01-27 2013-08-01 Ozgur Oyman Techniques for improved multicast content delivery

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
「기존의 Web 서버로 끊김 없는 동화상 배신을 실현」, 히라바야시 미쓰히로, NIKKEI ELECTRONICS 2012.3.19
3GPP ISO-IEC_23001-6* *
ISO/IEC 14496-12, original publication 2003 *

Also Published As

Publication number Publication date
WO2015008653A1 (ja) 2015-01-22
CA2916655C (en) 2022-05-03
JP6653575B2 (ja) 2020-02-26
BR112016000427A8 (pt) 2020-01-07
RU2655744C2 (ru) 2018-05-30
CN105359536A (zh) 2016-02-24
MX358670B (es) 2018-08-31
US11075855B2 (en) 2021-07-27
RU2016100308A (ru) 2017-07-17
JPWO2015008653A1 (ja) 2017-03-02
CN105359536B (zh) 2020-07-24
US10530710B2 (en) 2020-01-07
US20160142339A1 (en) 2016-05-19
US20200067850A1 (en) 2020-02-27
BR112016000427B1 (pt) 2023-05-09
MX2016000341A (es) 2016-05-05
EP3024245A4 (en) 2017-01-11
BR112016000427A2 (pt) 2017-07-25
EP3024245A1 (en) 2016-05-25
KR102272876B1 (ko) 2021-07-05
CA2916655A1 (en) 2015-01-22

Similar Documents

Publication Publication Date Title
EP2897369A1 (en) Content supply device, content supply method, program, and content supply system
JP6329964B2 (ja) 送信装置、送信方法、受信装置、及び、受信方法
US10939150B2 (en) Content supply device, content supply method, program, terminal device, and content supply system
US10623463B2 (en) Content supplying apparatus, content supplying method, program, terminal device, and content supplying system
US11075855B2 (en) Content supply device, content supply method, program, terminal device, and content supply system
WO2014196393A1 (ja) コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム
US20170155968A1 (en) Content supply apparatus, content supply method, program terminal apparatus, and content supply system
RU2658672C2 (ru) Устройство предоставления контента, программа, оконечное устройство и система предоставления контента
WO2015012140A1 (ja) コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant