KR20170070857A - 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체 - Google Patents

정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR20170070857A
KR20170070857A KR1020170072480A KR20170072480A KR20170070857A KR 20170070857 A KR20170070857 A KR 20170070857A KR 1020170072480 A KR1020170072480 A KR 1020170072480A KR 20170072480 A KR20170072480 A KR 20170072480A KR 20170070857 A KR20170070857 A KR 20170070857A
Authority
KR
South Korea
Prior art keywords
segments
information
segment
file
data
Prior art date
Application number
KR1020170072480A
Other languages
English (en)
Other versions
KR101868281B1 (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 KR20170070857A publication Critical patent/KR20170070857A/ko
Application granted granted Critical
Publication of KR101868281B1 publication Critical patent/KR101868281B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing 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 for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • 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/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • 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/8455Structuring 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal

Abstract

콘텐츠를 수신, 송신, 부호화, 복호화하기 위한 방법, 장치, 인코더 및 디코더가 제공된다. 상기 방법은, 상기 콘텐츠의, 제1 포맷을 갖는 제1 세그먼트를 수신하는 단계와, 송신 장치로부터, 상기 콘텐츠의, 제2 포맷을 갖는 제2 세그먼트를 수신하는 단계와, 상기 수신 장치와 상기 송신 장치 사이의 네트워크 상황을 모니터링 하는 단계와, 상기 모니터링된 네트워크 상황에 기초하여, 상기 제1 세그먼트 또는 제2 세그먼트를 선택하는 단계를 포함한다.

Description

정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체{INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND COMPUTER-READABLE RECORDING MEDIUM}
관련 출원에 대한 상호 참조
본 출원은 일본특허출원 제2009-238130호(2009년 10월 15일)에 대한 우선권을 주장하며, 그 전체 내용은 참조에 의해 본원에 원용된다.
본 개시 내용은, 콘텐츠 재생 시스템, 콘텐츠 재생 장치, 프로그램, 콘텐츠 재생 방법, 및 콘텐츠 서버의 제공에 관한 것이다.
근래, 콘텐츠 전송을 위한 HTTP(HyperText Transfer Protocol), 및 콘텐츠 압축/부호화에 관련한 MP4가 널리 이용되고 있다. HTTP에 따르면, 인터넷상에 있어서, 콘텐츠의 다운로드뿐만 아니라, 그 스트리밍을 행하는 것이 가능하다. 이 HTTP 스트리밍은, "DLNA guidelines"(2006) 및 "Open IPTV Forum"(2009) 등의 네트워크 미디어 규격에도 채용되어 있다. 또한, MP4(ISO/IEC-14496-12, 14)는, 기억 포맷으로서뿐만 아니라, 다운로드나 스트리밍 등을 위한 전송 포맷으로서도 이용가능하다.
예를 들어, "IIS Smooth Streaming Technical Overview," Alex Zambelli, Microsoft Corporation, March 2009에는, 인터넷을 통한 콘텐츠의 스트리밍을 HTTP 및 MP4를 사용해서 행하는 것이 기재되어 있다. 보다 상세하게는, "IIS Smooth Streaming Technical Overview," Alex Zambelli, Microsoft Corporation, March 2009에는, 서버가, 상이한 비트 레이트(bit rate)로 부호화된 MP4 형식의 부호화 파일을 기억하고 있고, 네트워크 상황에 적절한 부호화 파일을 구성하는 세그먼트를 순차적으로 송신하는 것이 기재되어 있다.
"IIS Smooth Streaming Technical Overview," Alex Zambelli, Microsoft Corporation, March 2009
그러나, 종래의 시스템에서는, 세그먼트가 송신되는 부호화 파일을 서버측에서 판단하고 있었으므로, 서버측의 부하가 커져버리는 문제가 있었다. 또한, 클라이언트에게는, 세그먼트가 재생되는 시간(콘텐츠의 선두부터의 상대 시간) 등의 정보가 제공되지 않고, 이 때문에 가변속 재생 등의 트릭(trick) 플레이를 행하거나, 상대 시간으로의 건너뜀에 의한 재생(시크(seek) 재생)을 행하기가 곤란하였다.
따라서, 콘텐츠를 송신하는 방법을 개시한다. 이 방법은, 상기 콘텐츠를 제1 및 제2 포맷으로 부호화하는 단계와, 상기 부호화된 콘텐츠를 제1 및 제2 파일로 기억시키는 단계와, 포맷된 세그먼트에 대한 요구를 수신하는 단계 - 상기 포맷된 세그먼트는 상기 제2 파일의 상기 부호화 데이터의 일부를 포함하고, 상기 요구는 상기 포맷된 세그먼트의 위치를 식별하는 위치 정보를 포함함 - 와, 상기 포맷된 세그먼트를 송신하는 단계를 포함한다.
일 실시형태에 따르면, 콘텐츠 송신 장치가 제공된다. 상기 장치는, 제1 및 제2 포맷으로 상기 콘텐츠를 부호화하도록 구성된 인코더와, 제1 및 제2 파일에 상기 부호화 콘텐츠를 기억시키도록 구성된 기억부와, 포맷된 세그먼트에 대한 요구를 수신하도록 구성된 수신부 - 상기 포맷된 세그먼트는 상기 제2 파일에 부호화 데이터의 일부를 포함하고, 상기 요구는 상기 포맷된 세그먼트의 위치를 식별하는 위치 정보를 포함함- 와, 상기 포맷된 세그먼트를 송신하도록 구성된 송신부를 포함한다.
일 실시형태에 따르면, 수신 장치에서의 콘텐츠를 수신하는 방법이 제공된다. 상기 방법은, 상기 콘텐츠의, 제1 포맷을 갖는 제1 세그먼트를 수신하는 단계와, 송신 장치로부터, 상기 콘텐츠의, 제2 포맷을 갖는 제2 세그먼트를 수신하는 단계와, 상기 수신 장치와 상기 송신 장치 사이의 네트워크 상황을 모니터링 하는 단계와, 상기 모니터링된 네트워크 상황에 기초하여, 상기 제1 세그먼트 또는 제2 세그먼트를 선택하는 단계를 포함한다.
일 실시형태에 따르면, 콘텐츠 부호화 방법이 제공된다. 상기 방법은, 상기 콘텐츠를 부호화하여 제1 포맷의 콘텐츠를 생성하는 단계와, 상기 콘텐츠를 부호화하여 제2 포맷의 콘텐츠를 생성하는 단계와, 상기 제2 포맷의 상기 콘텐츠의 일부를 식별하는 포션 정보를 처리하는 단계와, 상기 제1 포맷의 상기 콘텐츠에 상기 포션 정보를 부가하는 단계를 포함한다.
일 실시형태에 따르면, 콘텐츠 복호화 방법이 제공된다. 상기 방법은, 부호화 데이터를 수신하는 단계 - 상기 부호화 데이터는 디스크립션 정보를 포함하는 제1 섹션, 및 제1 포맷으로 부호화된 상기 콘텐츠를 포함하는 제1 포맷 세그먼트를 포함하는 제2 섹션을 포함하고, 상기 디스크립션 정보는 위치 정보를 포함함 - 와, 부호화 콘텐츠의 상기 제1 포맷 세그먼트를 복호화하는 단계와, 상기 부호화 콘텐츠의 제2 포맷 세그먼트에 대한 요구를 생성하는 단계 - 상기 제2 포맷 세그먼트는 상기 제1 포맷 세그먼트에 대응하고, 상기 요구는 상기 위치 정보의 적어도 일부를 포함함 - 를 포함한다.
일 실시형태에 따르면, 수신 장치에서의 콘텐츠 수신 장치가 제공된다. 상기 장치는, 송신 장치로부터, 제1 포맷의 제1 세그먼트와 제2 포맷의 제2 세그먼트를 수신하도록 구성된 수신부 - 상기 제1 세그먼트와 상기 제2 세그먼트는 상기 콘텐츠의 일부를 포함함 - 와, 상기 수신 장치와 상기 송신 장치 사이의 네트워크 상황을 모니터링하도록 구성된 모니터링부와, 상기 모니터링된 네트워크 상황에 기초하여, 상기 제1 세그먼트 또는 상기 제2 세그먼트를 선택하도록 구성된 선택부를 포함한다.
일 실시형태에 따르면, 콘텐츠 부호화 장치가 제공된다. 상기 장치는, 상기 콘텐츠를 부호화하여 제1 포맷 및 제2 포맷의 콘텐츠를 생성하도록 구성된 인코더와, 상기 제2 포맷의 상기 콘텐츠의 일부를 식별하는 포션 정보를 처리하도록 구성된 처리부와, 상기 제1 포맷의 상기 콘텐츠에 상기 포션 정보를 부가하도록 구성된 부가부를 포함한다.
이상 설명한 바와 같이, 본 발명에 따르면, 콘텐츠의 적응적인 스트리밍을 콘텐츠 서버의 부하를 경감하여 실현할 수 있다.
도 1은 본 발명의 일 실시형태에 따른 콘텐츠 재생 시스템의 구성을 나타낸 설명도.
도 2는 본 실시형태에 따른 콘텐츠 재생 시스템에 있어서의 데이터의 흐름을 나타낸 설명도.
도 3은 콘텐츠 재생 장치의 하드웨어 구성을 나타낸 블록도.
도 4는 본 실시형태에 따른 콘텐츠 서버의 구성을 나타낸 기능 블록도.
도 5는 일반적인 MP4 파일의 구성을 나타낸 설명도.
도 6은 본 실시형태에 있어서 파일 생성부에 의해 생성되는 MP4 파일의 구성을 나타낸 설명도.
도 7은 본 실시형태에 있어서 파일 생성부에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도.
도 8은 본 실시형태에 따른 콘텐츠 재생 장치의 구성을 나타낸 기능 블록도.
도 9는 본 실시형태에 따른 콘텐츠 재생 시스템의 동작을 나타낸 시퀀스도.
도 10은 본 실시형태에 있어서 파일 생성부에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도.
도 11은 본 실시형태에 있어서 파일 생성부에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도.
도 12는 본 실시형태에 있어서 파일 생성부에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도.
이하, 첨부 도면을 참조하여, 본 발명의 바람직한 실시형태에 대해 상세하게 설명한다. 또한, 본 명세서 및 도면에 있어서, 실질적으로 동일한 기능 및 구성을 갖는 구성 요소에 대해서는, 동일한 번호를 부여하고, 그들 구성 요소의 중복되는 설명을 생략한다.
또한, 이하에 나타내는 순서에 따라서 "실시형태의 상세한 설명"을 기술한다.
1. 콘텐츠 재생 시스템의 개요
2. 콘텐츠 재생 장치의 하드웨어 구성
3. 콘텐츠 서버의 기능
4. 콘텐츠 재생 장치의 기능
5. 콘텐츠 재생 시스템의 동작
6. 변형예
7. 정리
<1. 콘텐츠 재생 시스템의 개요>
우선, 도 1 및 도 2를 참조하여, 본 발명의 일 실시형태에 따른 콘텐츠 재생 시스템(1)에 대해 개략적으로 설명한다.
도 1은, 본 발명의 일 실시형태에 따른 콘텐츠 재생 시스템의 구성을 나타낸 설명도이다. 도 1에 나타낸 바와 같이, 본 발명의 일 실시형태에 따른 콘텐츠 재생 시스템(1)은, 콘텐츠 서버(10)(예컨대, 송신 장치)와, 네트워크(12)와, 콘텐츠 재생 장치(20)(예컨대, 클라이언트 및/또는 수신 장치)를 포함한다.
콘텐츠 서버(10)와 콘텐츠 재생 장치(20)는, 네트워크(12)를 통해서 접속되어 있다. 이 네트워크(12)는, 네트워크(12)에 접속되어 있는 장치로부터 송신되는 정보의 유선 또는 무선의 전송로이다.
예를 들어, 네트워크(12)는, 인터넷, 전화 회선망, 위성 통신망 등의 공중 회선망이나, Ethernet(등록 상표)을 포함하는 LAN(Local Area Network)나 WAN(Wide Area Network) 등을 포함해도 된다. 또한, 네트워크(12)는, IP-VPN(Internet Protocol-Virtual Private Network) 등의 전용 회선망을 포함해도 된다.
콘텐츠 서버(10)는, 콘텐츠 데이터를 부호화하고, 부호화 데이터(예컨대, 제1 포맷 세그먼트 및/또는 제2 포맷 세그먼트) 및 부호화 데이터의 메타 정보(예컨대, 디스크립션 정보 및/또는 포션 정보)를 포함하는 데이터 파일을 생성하여 기억한다. 또한, 콘텐츠 서버(10)가 MP4 형식의 데이터 파일을 생성할 경우, 부호화 데이터는 "mdat"에 해당하고, 메타 정보는 "moov"에 해당한다.
또한, 콘텐츠 데이터는, 음악, 강연 및 라디오 프로그램 등의 음악 데이터나, 영화, 텔레비전 프로그램, 비디오 프로그램, 사진, 문서, 회화 및 도표 등의 영상 데이터나, 게임 및 소프트웨어 등이어도 된다.
본 실시형태에 따른 콘텐츠 서버(10)는, 동일 콘텐츠로부터 다른 비트 레이트(예컨대, 압축 포맷)로 복수의 데이터 파일을 생성한다. 이하, 도 2를 참조하여 당해 사항에 대해서 구체적으로 설명한다.
도 2는, 본 실시형태에 따른 콘텐츠 재생 시스템(1)에 있어서의 데이터의 흐름을 나타낸 설명도이다. 콘텐츠 서버(10)는, 동일한 콘텐츠 데이터를 다른 비트 레이트로 부호화하여, 도 2에 나타낸 바와 같이, 예를 들어 2Mbps의 파일 A, 1.5Mbps의 파일 B 및 1Mbps의 파일 C를 생성한다. 상대적으로, 파일 A는 하이 비트 레이트이며, 파일 B는 표준 비트 레이트이며, 파일 C는 로우 비트 레이트이다.
또한, 도 2에 나타낸 바와 같이, 각 파일의 부호화 데이터는 복수의 세그먼트로 구분되어 있다. 예를 들어, 파일 A의 부호화 데이터는 "A1", "A2", "A3", …, "An"이라고 하는 세그먼트(예컨대, 제1 포맷 세그먼트)로 구분되어 있고, 파일 B의 부호화 데이터는 "B1", "B2", "B3", …, "Bn"이라고 하는 세그먼트(예컨대, 제2 포맷 세그먼트)로 구분되어 있고, 파일 C의 부호화 데이터는 "C1", "C2", "C3", …, "Cn"이라고 하는 세그먼트로 구분되어 있다.
여기서, 각 세그먼트는 MP4의 싱크 샘플(예를 들어, AVC/H.264의 영상 부호화에서는 IDR-picture)로 시작되는 단독으로 재생가능한 1 또는 2 이상의 영상 부호화 데이터 및 음성 부호화 데이터에 의해 구성된 샘플에 의해 구성된다. 예를 들어, 30프레임/초의 비디오 데이터가 15 프레임 고정 길이의 GOP(Group of Picture)에 의해 부호화되어 있었을 경우, 각 세그먼트는, 4 GOP에 상당하는 2초분의 영상 및 음성 부호화 데이터이어도 되고, 20 GOP에 상당하는 10초분의 영상 및 음성 부호화 데이터이어도 된다.
또한, 각 파일에 있어서의 배치 순서가 동일한 세그먼트에 의한 재생 범위(콘텐츠의 선두부터의 시간 위치의 범위)는 동일하다. 예를 들어, 세그먼트 "A2", 세그먼트 "B2" 및 세그먼트 "C2"의 재생 범위는 동일하고, 각 세그먼트가 2초분의 부호화 데이터일 경우, 세그먼트 "A2", 세그먼트 "B2" 및 세그먼트 "C2"의 재생 범위는, 모두 콘텐츠의 2초 내지 4초이다.
콘텐츠 서버(10)는, 이러한 복수의 세그먼트에 의해 제각기 구성되는 파일 A 내지 파일 C를 생성한 후, 파일 A 내지 파일 C를 기억한다. 그리고나서, 콘텐츠 서버(10)는, 도 2에 나타낸 바와 같이, 다른 파일을 구성하는 세그먼트를 콘텐츠 재생 장치(20)에 순차적으로 송신하고, 콘텐츠 재생 장치(20)는, 수신한 세그먼트를 스트리밍으로서 재생한다.
또한, 도 1에는 콘텐츠 재생 장치(20)의 일례로서 표시 장치를 나타내고 있지만, 콘텐츠 재생 장치(20)는 이러한 예로 한정되지 않는다. 예를 들어, 콘텐츠 재생 장치(20)는, PC(Personal Computer), 가정용 영상 처리 장치(DVD 레코더와 VCR 등), PDA(Personal Digital Assistant), 가정용 게임 기기 및 가전 기기 등의 정보 처리 장치이어도 된다. 혹은, 콘텐츠 재생 장치(20)는, 휴대 전화, PHS(Personal Handyphone System), 휴대용 음악 재생 장치, 휴대용 영상 처리 장치, 휴대용 게임 기기 등의 정보 처리 장치이어도 된다.
여기서, 콘텐츠 서버(10)로부터는 네트워크 상황(예컨대, 네트워크 상태)에 따른 세그먼트가 송신되는 것이 바람직하다. 예를 들어, 네트워크 대역의 여유가 충분한 경우에는 하이 비트 레이트의 세그먼트(예를 들어, 파일 A를 구성하는 세그먼트)를 송신하고, 네트워크 대역의 여유가 적을 경우에는 로우 비트 레이트의 세그먼트(예를 들어, 파일 C를 구성하는 세그먼트)를 송신하는 것이 적합하다.
그러나, 네트워크 상황의 감시 및 네트워크 상황에 따른 세그먼트의 선택을 콘텐츠 서버(10)가 행하면, 콘텐츠 서버(10)의 부하가 커져버리는 문제가 있다.
따라서, 상기 배경하에서 본 실시형태에 따른 콘텐츠 재생 시스템(1)을 창작하기에 이르렀다. 본 실시형태에 따른 콘텐츠 재생 시스템(1)에 의하면, 적응적인 스트리밍을, 서버측의 부하를 경감시키면서, 실현할 수 있다.
또한, 본 실시형태에 따른 콘텐츠 재생 시스템(1)에 의하면, HTTP와 MP4 등의 규격 대부분이 지원되며, 또한, 기존 장치와의 호환성을 유지할 수 있다. 이하, 이러한 본 실시형태에 따른 콘텐츠 재생 시스템(1)을 구성하는 콘텐츠 재생 장치(20) 및 콘텐츠 서버(10)에 대해서 상세하게 설명한다.
<2. 콘텐츠 재생 장치의 하드웨어 구성>
도 3은, 콘텐츠 재생 장치(20)의 하드웨어 구성을 나타낸 블록도이다. 콘텐츠 재생 장치(20)는, CPU(Central Processing Unit)(201)와, ROM(Read Only Memory)(202)과, RAM(Random Access Memory)(203)과, 호스트 버스(204)를 포함한다. 또한, 콘텐츠 재생 장치(20)는, 브릿지(205)와, 외부 버스(206)와, 인터페이스(207)와, 입력 장치(208)와, 출력 장치(210)와, 스토리지 장치(HDD)(211)와, 드라이브(212)와, 통신 장치(215)를 포함한다.
CPU(201)는, 연산 처리 장치 및 제어 장치로서 기능하고, 각종 프로그램에 따라서 콘텐츠 재생 장치(20)의 동작 전반을 제어한다. 또한, CPU(201)는, 마이크로프로세서, 처리부(processing unit), 부가부(adding unit), 및/또는 요구부(request unit)이어도 된다. ROM(202)은, CPU(201)가 사용하는 프로그램이나 연산 파라미터 등을 기억한다. RAM(203)은, CPU(201)의 실행에 있어서 사용하는 프로그램이나, 그 실행 중에 적절히 변화하는 파라미터를 일시적으로 기억한다. 이들은 CPU 버스 등으로 구성되는 호스트 버스(204)에 의해 서로 접속되어 있다.
호스트 버스(204)는, 브릿지(205)를 거쳐서, PCI(Peripheral Component Interconnect/Interface) 버스 등의 외부 버스(206)에 접속되어 있다. 또한, 반드시 호스트 버스(204), 브릿지(205) 및 외부 버스(206)를 분리 구성할 필요는 없으며, 하나의 버스에 이들의 기능을 실장해도 된다.
입력 장치(208)는, 마우스, 키보드, 터치 패널, 버튼, 마이크로폰, 스위치 및 레버 등의 유저가 정보를 입력하기 위한 입력 수단과, 유저에 의한 입력에 기초하여 입력 신호를 생성하여 CPU(201)에 출력하는 입력 제어 회로 등으로 구성되어 있다. 콘텐츠 재생 장치(20)의 유저는, 상기 입력 장치(208)를 조작함으로써, 콘텐츠 재생 장치(20)에 대하여 각종 데이터를 입력하거나 처리 동작을 지시할 수 있다.
출력 장치(210)는, 예를 들어, CRT(Cathode Ray Tube) 디스플레이 장치, 액정 디스플레이(LCD) 장치, OLED(Organic Light Emitting Diode) 장치 및 램프 등의 표시 장치를 포함한다. 또한, 출력 장치(210)는, 스피커 및 헤드폰 등의 음성 출력 장치를 포함한다. 출력 장치(210)는, 예를 들어, 재생된 콘텐츠를 출력한다. 보다 구체적으로는, 표시 장치는 재생된 영상 데이터 등의 각종 정보를 텍스트 또는 이미지로 표시한다. 한편, 음성 출력 장치는, 재생된 음성 데이터 등을 음성으로 변환하여 출력한다.
스토리지 장치(211)는, 본 실시형태에 따른 콘텐츠 재생 장치(20)의 기억부의 일례로서 구성된 데이터 저장용의 장치이다. 스토리지 장치(211)는, 기억 매체, 기억 매체에 데이터를 기록하는 기록 장치, 기억 매체로부터 데이터를 판독하는 읽어내기 장치, 또는 기억 매체에 기록된 데이터를 삭제하는 삭제 장치 등을 포함해도 된다. 스토리지 장치(211)는, 예를 들어, HDD(Hard Disk Drive)로 구성된다. 이 스토리지 장치(211)는, 하드 디스크를 구동하고, CPU(201)가 실행하는 프로그램 및 각종 데이터를 저장한다.
드라이브(212)는, 기억 매체용 리더 라이터이며, 콘텐츠 재생 장치(20)에 내장 또는 외장된다. 드라이브(212)는, 삽입되어 있는 자기 디스크, 광 디스크, 광자기 디스크 또는 반도체 메모리 등의 리무버블 기억 매체(24)에 기록되어 있는 정보를 판독하고, 그 정보를 RAM(203)으로 출력한다. 또한, 드라이브(212)는, 리무버블 기억 매체(24)에 정보를 기입할 수도 있다.
통신 장치(215)는, 예를 들어, 네트워크(12)에 접속하기 위한 통신 디바이스 등으로 구성된 통신 인터페이스이다. 또한, 통신 장치(215)는, 무선 LAN(Local Area Network) 대응 통신 장치이어도 되고, LTE(Long Term Evolution) 대응 통신 장치이어도 되고, 또는 유선에 의한 통신을 행하는 유선 통신 장치이어도 된다.
이상, 도 3을 참조하여 콘텐츠 재생 장치(20)의 하드웨어 구성에 대해서 설명했다. 콘텐츠 서버(10)의 하드웨어는 콘텐츠 재생 장치(20)와 실질적으로 동일하게 구성하는 것이 가능하므로, 그 설명을 생략한다.
<3. 콘텐츠 서버의 기능>
다음으로, 도 4 내지 도 7을 참조하여, 본 실시형태에 따른 콘텐츠 서버(10)의 기능을 설명한다.
도 4는, 본 실시형태에 따른 콘텐츠 서버(10)의 구성을 나타낸 기능 블록도이다. 도 4에 나타낸 바와 같이, 본 실시형태에 따른 콘텐츠 서버(10)는, 파일 생성부(120)와, 기억부(130)와, 통신부(140)를 포함한다.
파일 생성부(120)는, 콘텐츠 데이터를 부호화하는 인코더(122)를 포함하고, 부호화 데이터 및 그 메타데이터를 포함하는 MP4 파일을 생성한다. 보다 상세하게는, 파일 생성부(120)는, 동일 콘텐츠로부터 부호화 데이터의 비트 레이트가 다른 복수의 MP4 파일을 생성한다. 이하, 도 5를 참조하여 일반적인 MP4 파일의 구성을 설명한 후, 본 실시형태에 있어서 파일 생성부(120)에 의해 생성되는 MP4 파일의 구성을 설명한다.
도 5는, 일반적인 MP4 파일의 구성을 나타낸 설명도이다. 도 5에 나타낸 바와 같이, MP4 파일은 "moov" 및 "mdat"를 포함한다. "mdat"는 영상 및 음성의 부호화 데이터이다. 본 실시형태에서는, 영상 부호화에는 H.264/AVC를 이용하고, 음성 부호화에는 HE-AAC를 이용한다. "moov"는, "trak(video)" 및 "trak(audio)" 등, "mdat"에 포함되는 각 세그먼트에 대한 액세스 정보(예컨대, 디스크립션 정보 및/또는 포션 정보)를 포함한다. 액세스 정보로서는, 각 샘플의 소재 정보(byte offset) 및 재생 시간 정보 등을 예로 들 수 있다.
또한, MP4에 있어서는 다른 외부 파일을 참조하기 위한 데이터 박스로서 "dinf"가 규정되어 있다. 도 5에 나타낸 바와 같이 "moov"의 참조처가 동일한 MP4 파일에 포함되는 "mdat"일 경우, 이 "dinf"의 값은 "null"이다. 이에 대해, 본 실시형태에 있어서는, 도 6을 참조하여 설명하는 바와 같이, 이 "dinf"를 온전히 활용함으로써 현저한 효과를 얻을 수 있다.
도 6은, 본 실시형태에 있어서 파일 생성부(120)에 의해 생성되는 MP4 파일의 구성을 나타낸 설명도이다. 도 6에 나타낸 바와 같이, 파일 생성부(120)는, 동일 콘텐츠로부터 비트 레이트가 다른 "mdat"를 포함하는 복수의 MP4 파일 A 내지 MP4 파일 C를 생성한다.
본 실시형태에서는, 세그먼트는 비디오의 MP4 Sync Sample을 경계로 해서 분할된 데이터이며, 세그먼트 중에는 영상 부호화 데이터와 음성 부호화 데이터가 인터리브(interleave)되어 배치되어 있다. 세그먼트는, 콘텐츠가 재생되는 시계열로 연속적으로 "mdat"에 배열되어 있다. 영상 및 음성은, 비트 레이트가 다른 각 데이터 파일의 세그먼트의 재생 시간은 동일하도록 부호화되어 있다. 또한, AVC/H.264의 경우에는, 영상 부호화 데이터 및 음성 부호화 데이터는, 세그먼트의 선두에 IDR 픽처가 존재하도록 배치됨으로써, 데이터를, 비트 레이트가 다른 데이터로, 세그먼트 단위로, 절환할 수 있다.
또한, 각 세그먼트의 위치는 Sync Sample의 위치이며, 콘텐츠 재생 장치(20)는, "moov"의 Sample Description box의 정보로부터 얻어지거나, 혹은 여기에 포함되는 Sync sample table box와 조합에 의해 얻어지는 세그먼트 위치를 바탕으로, 각 데이터 파일로부터 세그먼트 데이터를 읽어들일 수 있다. 본 실시형태에서는, 1개의 비디오 프레임을 하나의 샘플로 설정하여, 30 프레임에 일회 IDR 픽처가 존재하는 샘플인 Sync Sample을 형성하고, Sample Description box에는 Sync sample table box를 제공한다.
MP4 파일 B(제1 데이터 파일)의 "mdat"는, 비트 레이트가 1.5Mbps인 세그먼트 B1 내지 Bn으로 구성되고, MP4 파일 C(제2 데이터 파일)의 "mdat"는, 비트 레이트가 1Mbps인 세그먼트 C1 내지 Cn으로 구성되고, MP4 파일 A(제3 데이터 파일)의 "mdat"는, 비트 레이트가 2Mbps인 세그먼트 A1 내지 An으로 구성된다.
또한, MP4 파일 B의 "moov"는, 동일 파일을 구성하는 세그먼트 B1 내지 Bn에 액세스하기 위한 "trak(videoB)" 및 "trak(audioB)"를 포함한다.
또한, MP4 파일 B의 "moov"는, MP4 파일 C를 구성하는 세그먼트 C1 내지 Cn에 액세스하기 위한 "trak(videoC')" 및 "trak(audioC')"을 포함한다.
즉, "trak(videoC')" 및 "trak(audioC')"의 "dinf"에는, MP4 파일 C의 URL이 기재된다. 보다 구체적으로는, 이하에 나타내는 "dinf"의 구문의 'location' 필드에 MP4 파일 C의 URL이 기재된다. 또한, "trak(videoC')" 및 "trak(audioC')"에 기재되어 있는 영상 트랙의 Sample Description Box의 정보로부터, 각 Sample 및 Sync Sample 세그먼트 C1 내지 Cn의 위치 정보(파일내에서의 byte offset)가 얻어진다.
(구문예)
Figure pat00001
마찬가지로, MP4 파일 B의 "moov"는, MP4 파일 A를 구성하는 세그먼트 A1 내지 An에 액세스하기 위한 "trak(videoA')" 및 "trak(audioA')"을 포함한다. 즉, 이 "trak(videoA')" 및 "trak(audioA')"의 "dinf"에는, MP4 파일 A의 URL이 기재된다.
또한, MP4 파일 A에도, MP4 파일 A를 구성하는 세그먼트 A1 내지 An에 액세스하기 위한 "trak(videoA)" 및 "trak(audioA)"이 포함되지만, 콘텐츠 재생 장치(20)는, 이들은 후술하는 적응적인 스트리밍에는 이용하지 않는다.
마찬가지로, MP4 파일 C에도 MP4 파일 C를 구성하는 세그먼트 C1 내지 Cn에 액세스하기 위한 "trak(videoC)" 및 "trak(audioC)"이 포함되지만, 콘텐츠 재생 장치(20)는, 이들은 후술하는 적응적인 스트리밍에는 이용하지 않는다.
상술한 바와 같이, 본 실시형태에 있어서는, 다른 비트 레이트를 갖는 "mdat"를, 동일한 MP4 파일이 아니라, 다른 MP4 파일에 작성한다. 또한, 하나의 MP4 파일의 Sample Description box에, 다른 MP4 파일에 포함되는 "mdat"를 참조하기 위한 URL 및 각 세그먼트의 파일내에서의 오프셋 정보가 기재된다.
이러한 구성에 의해, 본 실시형태에 따른 MP4 파일을, 스트리밍용뿐만이 아니라, 다운로드용으로도 이용할 수 있다. 그 이유를, 다른 비트 레이트를 갖는 복수의 "mdat"를 동일 파일에 생성할 경우와 비교하여 설명한다.
다른 비트 레이트를 갖는 복수의 "mdat"를 동일 파일에 생성하고, 당해 파일을 다운로드용으로서도 이용할 경우, 클라이언트는, 복수의 "mdat"를 포함하는 당해 파일 전체를 다운로드하는 것이 된다. 따라서, 다운로드 데이터량 및 다운로드 시간이 불필요하게 배로 증가되어버리는 문제가 발생한다.
이에 대해, 본 실시형태에 있어서는, 비트 레이트가 다른 복수의 "mdat" 중에서, 하나의 "mdat"만을 포함하는 MP4 파일을 다운로드할 수 있다. 예를 들어, 콘텐츠 재생 장치(20)는, 비트 레이트가 다른 복수의 "mdat" 중에서, 하이 비트 레이트의 "mdat"만을 포함하는 MP4 파일 A를 다운로드할 수 있다. 따라서, 클라이언트는, 다운로드 데이터량 및 다운로드 시간을 억제하면서 다운로드를 행할 수 있다.
또한, 파일 생성부(120)는, 파일 B의 "moov" 중의 각 트랙의 "minfo"에, 각 "trak"의 참조처의 미디어 데이터가, 다른 비트 레이트로의 부호화에 의해 얻어진 대체가능한 미디어 데이터의 그룹에 속하는 지의 정보를 기재해도 된다. 예를 들어, 이하에 나타내는 "minfo"의 구문에 이하의 확장 블록을 제공하고, "alternative_media_group"에 대체가능한 미디어 데이터의 그룹의 식별 번호를 기재하고, "extended_type"에 "<uuid_value>:T.B.D"를 기재하고, "flags"에 "0"을 기재해도 된다. 콘텐츠 재생 장치(20)는, 대체가능한 미디어 데이터의 그룹에 속하는 미디어 데이터의 세그먼트는, 동일한 그룹에 속하는 다른 미디어 데이터 중의 대응 세그먼트로 대체가능한 것을 인식할 수 있다. 또한, 미디어의 최대 비트 레이트 maxbitrate 및 평균 비트 레이트 avgbitrate가 기재되어 있어, 콘텐츠 재생 장치(20)가, 어느 부호화 데이터 세그먼트를 취득할지에 대한 판단에 이용할 수 있다.
(구문예)
Figure pat00002
이러한 구성에 의해, 콘텐츠 재생 장치(20)는, MP4 파일의 "moov" 중의 "minfo"를 확인함으로써, 당해 MP4 파일이 본 실시형태의 방법에 의해 생성된 것인지를 판단할 수 있다. 그리고나서, 당해 MP4 파일이 본 실시형태의 방법에 의해 생성된 것일 경우, 콘텐츠 재생 장치(20)는, 후술하는 바와 같이, 적응적인 스트리밍을 콘텐츠 서버(10)에 대해 요구할 수 있다.
또한, 도 6에 있어서는, MP4 파일이 주로 "moov"와 "mdat"에 의해 구성되는 예를 나타냈지만, MP4 파일의 구성은 이러한 예에 한정되지 않는다. 예를 들어, 도 6에 나타낸 "moov"에 포함되는 액세스 정보를, 도 7에 나타낸 바와 같이, "moov"와 "moof"를 사용해서 분산적으로 배치하여도 된다.
도 7은, 본 실시형태에 있어서 파일 생성부(120)에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도이다. 도 7에 나타낸 바와 같이, 각 파일의 선두에는 "moov"가 배치되고, 이후, "mdat"와 "moof"가 교대로 배치된다. MP4 파일 B의 "moov"에는, 전술한 MP4 파일의 구조와 마찬가지로, MP4 파일 B, A 및 C의 각 세그먼트에 액세스 정보가 기재된 "trak" 및 후속의 "mdat"에 액세스하기 위한 Sample description box가 포함된다. 또한, MP4 파일 B의 각 "moof"에는, "moov"에 기재된 "trak"에 대응한 복수의 "traf"를 포함하고, "traf"는 각각의 파일에 후속하는 "mdat"의 각 세그먼트에 액세스하기 위한 정보를 포함한다. 또한, MP4 파일 C와 A에도 "moov"와 "moof"는 기재되어도 되지만, 전례와 마찬가지로, 콘텐츠 재생 장치(20)는, 이들을 적응 스트리밍에서는 사용하지 않는다.
이와 같이 액세스 정보를 분산적으로 배치함으로써, MP4 파일 B의 선두에서의 "moov" 및 각 "moof"의 데이터량을 작게 할 수 있고, 따라서 선두의 "moov" 취득 시간의 억제 및, 콘텐츠 재생 장치(20)가 버퍼(230)에 유지하는 "moov" 및 "moof"의 정보를 감소시킬 수 있다. 또한, "moof" 및 대응하는 mdat는 독립하여 생성할 수 있기 때문에, 생방송 등의 라이브 콘텐츠의 스트리밍에 이용할 수 있다. 본 실시형태는, "moov", "moof" 및 "mdat"를 분산적으로 배치하는 도 7에 나타낸 포맷에도 적용할 수 있다.
여기에서, 도 4를 참조하여 콘텐츠 서버(10)의 구성의 설명으로 돌아간다. 도 4에 나타낸 콘텐츠 서버(10)의 기억부(130)는, 파일 생성부(120)에 의해 생성된 복수의 MP4 파일을 기억하는 기억 매체이다.
예를 들어, 기억부(130)는, 불휘발성 메모리, 자기 디스크, 광 디스크 및 MO(Magneto Optical) 디스크 등의 기억 매체이어도 된다. 불휘발성 메모리로서는, EEPROM(Electrically Erasable Programmable Read-Only Memory) 및 EPROM(Erasable Programmable ROM)을 예로 들 수 있다. 또한, 자기 디스크로서는, 하드 디스크 및 원반형 자성체 디스크 등을 예로 들 수 있다. 또한, 광 디스크로서는, CD(Compact Disc), DVD-R(Digital Versatile Disc Recordable) 및 BD(Blu-ray Disc(등록 상표)) 등을 예로 들 수 있다.
통신부(140)는, 콘텐츠 재생 장치(20)와의 인터페이스이며, 네트워크(12)를 통해서 콘텐츠 재생 장치(20)와 통신한다. 보다 상세하게는, 통신부(140)는, HTTP에 따라서 콘텐츠 재생 장치(20)와 통신하는 HTTP 서버로서의 기능을 갖는다. 예를 들어, 통신부(140)는, HTTP에 따라서 콘텐츠 재생 장치(20)로부터 요구된 데이터를 기억부(130)로부터 추출하고, HTTP 리스펀스로서 콘텐츠 재생 장치(20)에 데이터를 송신한다.
<4. 콘텐츠 재생 장치의 기능>
이상, 본 실시형태에 따른 콘텐츠 서버(10)의 기능을 설명하였다. 다음으로, 도 8을 참조하여, 본 실시형태에 따른 콘텐츠 재생 장치(20)의 기능을 설명한다.
도 8은, 본 실시형태에 따른 콘텐츠 재생 장치(20)의 구성을 나타내는 기능 블록도이다. 도 8에 나타낸 바와 같이, 본 실시형태에 따른 콘텐츠 재생 장치(20)는, 취득부(220)와, 버퍼(230)와, 재생부(240)와, 선택부(250)를 포함한다.
취득부(220)는, 콘텐츠 서버(10)와의 인터페이스이며, 콘텐츠 서버(10)에 대하여 데이터를 요구하고, 콘텐츠 서버(10)로부터 데이터를 취득한다. 보다 상세하게는, 취득부(220)는, HTTP에 따라서 콘텐츠 재생 장치(20)와 통신하는 HTTP 클라이언트로서의 기능을 갖는다. 예를 들어, 취득부(220)는, HTTP 레인지(Range)를 이용함으로써, 콘텐츠 서버(10)로부터 MP4 파일의 일부("moov" 또는 "세그먼트")를 부분적으로 취득할 수 있다.
버퍼(230)는, 취득부(220)에 의해 콘텐츠 서버(10)로부터 취득되는 세그먼트를 순차적으로 버퍼링한다. 버퍼(230)에서 버퍼링된 세그먼트는, FIFO(First In First Out)에 따라서 재생부(240)에 순차적으로 공급된다.
재생부(240)는, 버퍼(230)로부터 공급되는 세그먼트를 순차적으로 재생한다. 보다 구체적으로는, 재생부(240)는, 세그먼트 디코딩, DA 변환 및 렌더링을 행한다.
선택부(250)는, 어느 쪽의 MP4 파일을 구성하는 세그먼트를 취득할지, 즉, 어느 쪽의 비트 레이트를 갖는 세그먼트를 취득할지를, 네트워크(12)의 상황에 따라 동일 콘텐츠 내에서 순차적으로 선택한다. 예를 들어, 선택부(250)가 세그먼트 "A1", "B2", "A3"을 순차적으로 선택하면, 도 2에 나타낸 바와 같이, 취득부(220)가 콘텐츠 서버(10)로부터 세그먼트 "A1", "B2", "A3"를 순차적으로 취득한다.
또한, 취득부(220)는, 세그먼트의 취득에 앞서 MP4 파일의 "moov"를 취득하고 있으며, 선택부(250)에 의해 선택된 세그먼트를 당해 "moov"에 포함되는 액세스 정보를 지정함으로써 콘텐츠 서버(10)로부터 취득할 수 있다.
여기서, 네트워크(12)의 대역이 커지면 버퍼(230)의 버퍼링 데이터량이 증가하고, 네트워크(12)의 대역이 작아지면 버퍼(230)의 버퍼링 데이터량이 감소한다고 생각된다. 따라서, 선택부(250)는, 버퍼(230)의 버퍼링 상황을 감시함으로써, 네트워크(12)의 상황을 간접적으로 파악해도 된다.
예를 들어, 선택부(250)는, 버퍼(230)에 버퍼링되어 있는 샘플수(비디오 프레임수)가 소정 범위 내일 경우, 즉, 버퍼(230)에 버퍼링 되어 있는 샘플에 의해 재생가능한 시간이 소정 범위 내일 경우에는, 표준 비트 레이트(예를 들어, 1.5Mbps)의 세그먼트를 선택해도 된다. 예를 들어, 콘텐츠 재생 장치(20)는, 표준 비트 레이트의 90개의 샘플(3초분)을 일시적으로 축적한 후에, 스트리밍의 재생을 개시하고, 후속의 세그먼트 데이터를 읽으면서 재생을 계속하지만, 그 재생 중에 버퍼(230)의 데이터가 75개로부터 105개의 샘플의 범위에 있는 경우에는, 선택부(250)는 표준 비트 레이트의 세그먼트를 선택한다.
한편, 선택부(250)는, 버퍼링량이 감소하고, 버퍼(230)에 버퍼링되어 있는 샘플에 의해 재생가능한 시간이 소정 범위를 하회하였을 경우, 로우 비트 레이트(예를 들어, 1Mbps)의 세그먼트를 선택해도 된다. 예를 들어, 선택부(250)는, 재생 중에 버퍼(230)의 데이터가 75개의 샘플 이하가 된 경우에는, 로우 비트 레이트의 세그먼트를 선택한다.
또한, 선택부(250)는, 버퍼링량이 증가하고, 버퍼(230)에 버퍼링 되어 있는 샘플에 의해 재생가능한 시간이 소정 범위를 상회하였을 경우, 하이 비트 레이트(예를 들어, 2Mbps)의 세그먼트를 선택해도 된다. 예를 들어, 선택부(250)는 재생 중에 버퍼(230)의 데이터가 105개 샘플 이상이 된 경우에는, 하이 비트 레이트의 세그먼트를 선택한다. 또한, 버퍼(230) 중의 세그먼트수가 120개에 도달하여 세그먼트가 충분히 축적되었을 경우에는, 선택부(250)는 읽어들이기를 일시적으로 중단하고, 그 수가 120개 이하가 되었을 경우에는, 선택부(250)는 읽어들이기를 재개한다.
또한, 상기에서는 네트워크(12)의 대역을 판단하는 방법의 일례로서 버퍼(230)의 버퍼링 상황을 감시하는 예를 설명하였지만, 본 실시형태는 이러한 예에 한정되지 않는다. 예를 들어, 콘텐츠 재생 장치(20)는, 실제로 더미 패킷을 네트워크(12)로 송신함으로써 네트워크(12)의 대역을 판단해도 되고, 또는 취득부(220)에 의한 세그먼트의 취득 속도에 기초하여 네트워크(12)의 대역을 판단해도 된다.
<5. 콘텐츠 재생 시스템의 동작>
이상, 본 실시형태에 따른 콘텐츠 서버(10) 및 콘텐츠 재생 장치(20)의 기능을 설명하였다. 다음으로, 본 실시형태에 따른 콘텐츠 재생 시스템(1)의 동작에 대해서 도 9를 참조하여 설명한다.
도 9는, 본 실시형태에 따른 콘텐츠 재생 시스템(1)의 동작을 나타낸 시퀀스도이다. 우선, 콘텐츠 재생 장치(20)의 취득부(220)는, "HTTP:GET URL-B with Range"에 의해, 콘텐츠 서버(10)에 대해 몇몇 콘텐츠에 관한 MP4 파일 B의 "moov"의 송신을 요구한다(S304). 그리고나서, 콘텐츠 서버(10)의 통신부(140)는, "HTTP:Response"로서, MP4 파일 B의 "moov"를 콘텐츠 재생 장치(20)로 송신한다(S308). 또한, MP4 파일 B의 URL-B는, 콘텐츠의 메타데이터 정보에 기재되어서, 콘텐츠 재생 장치(20)는 콘텐츠를 사전에 취득한 것으로 한다. 그리고나서, 콘텐츠 재생 장치(20)의 버퍼(230)가, 콘텐츠 서버(10)로부터 취득되는 MP4 파일 B의 "moov"의 버퍼링을 개시한다(S310).
여기서, 콘텐츠 재생 장치(20)의 선택부(250)는, "moov" 중의 "minfo"를 확인함으로써, "moov" 중의 "trak"의 참조처의 파일이, 다른 비트 레이트로의 부호화에 의해 얻어진 대체 미디어 그룹에 속해 있는 것인지의 여부를 판단할 수 있다.
그리고나서, "moov" 중의 "trak"의 참조처의 파일이 다른 비트 레이트로의 부호화에 의해 얻어진 대체 미디어 그룹에 속해 있을 경우, 선택부(250)는, 표준 비트 레이트를 갖는 MP4 파일 B의 세그먼트 Bi를 선택한다.
다음으로, 취득부(220)가, "HTTP:GET URL-B with Range"를 사용하여, 선택부(250)에 의해 선택된 MP4 파일 B의 세그먼트 Bi를 콘텐츠 서버(10)에 요구한다(S312). 보다 구체적으로는, 취득부(220)는, MP4 파일 B의 네트워크 위치 정보 및 MP4 파일 B에 있어서의 세그먼트 Bi의 바이트 단위의 위치 정보를 지정함으로써, MP4 파일 B의 세그먼트 Bi를 콘텐츠 서버(10)에 요구한다. 또한, MP4 파일 B의 네트워크 위치 정보 및 MP4 파일 B에 있어서의 세그먼트 Bi의 바이트 단위에서의 위치 정보는, 스텝 S308에서 수신되는 MP4 파일 B의 "moov"에 기재되어 있다. 그리고나서, 콘텐츠 서버(10)의 통신부(140)는, "HTTP:Response"로서, MP4 파일 B의 세그먼트 Bi를 콘텐츠 재생 장치(20)로 송신한다(S316).
그 후, 콘텐츠 재생 장치(20)의 버퍼(230)에 세그먼트 Bi가 충분히 버퍼링되면, 재생부(240)가 세그먼트 Bi의 재생을 개시한다(S320). 또한, 버퍼링 개시 후에(S310), 어떤 일정한 시간이 경과 되어도 충분히 버퍼의 판독을 할 수 없는 경우에는, 네트워크 대역이 충분하지 않다고 생각할 수 있다. 따라서, 이러한 경우에는, S316으로부터 후속하는 세그먼트의 읽어들이기를 파일 C의 세그먼트로 절환해도 된다. 마찬가지로, 소정의 세그먼트를 보다 일찍 버퍼링 가능한 것으로 판단한 경우는, 파일 A의 세그먼트를 버퍼링하고나서 재생을 개시하는(S320)것도 가능하다.
마찬가지로, 콘텐츠 재생 장치(20)의 취득부(220)는, "HTTP:GET URL-B with Range"를 사용하여, 다음 세그먼트 Bj를 콘텐츠 서버(10)에 요구한다(S324). 그리고나서, 콘텐츠 서버(10)의 통신부(140)는, "HTTP:Response"로서, 다음 세그먼트 Bj를 콘텐츠 재생 장치(20)로 송신한다(S328).
여기서, 버퍼(230)의 버퍼링량이 감소하여, 버퍼(230)에 버퍼링 되어 있는 샘플에 의해 재생가능한 시간이 소정 범위를 하회하였을 경우(S332), 선택부(250)는, 로우 비트 레이트를 갖는 MP4 파일 C의 세그먼트 Ck를 선택한다.
그리고나서, 취득부(220)가, "HTTP:GET URL-C with Range"를 사용하여, 선택부(250)에 의해 선택된 MP4 파일 C의 세그먼트 Ck를 콘텐츠 서버(10)에 요구한다(S336). 당해 요구를 받은 콘텐츠 서버(10)의 통신부(140)는, "HTTP:Response"로서, MP4 파일 C의 세그먼트 Ck를 콘텐츠 재생 장치(20)로 송신한다(S340).
그 후, 버퍼(230)의 버퍼링량이 증가하여, 버퍼(230)에 버퍼링 되어 있는 샘플에 의해 재생가능한 시간이 소정 범위가 되었을 경우(S344), 선택부(250)는, 표준 비트 레이트를 갖는 MP4 파일 B의 세그먼트 Bl을 선택한다.
다음으로, 취득부(220)가, "HTTP:GET URL-B with Range"를 사용하여, 선택부(250)에 의해 선택된 MP4 파일 B의 세그먼트 Bl을 콘텐츠 서버(10)에 요구한다(S348). 그리고나서, 콘텐츠 서버(10)의 통신부(140)는, "HTTP:Response"로서, MP4 파일 B의 세그먼트 Bl을 콘텐츠 재생 장치(20)로 송신한다(S352).
또한, 그 후, 버퍼(230)의 버퍼링량이 증가하여, 버퍼(230)에 버퍼링 되어 있는 샘플에 의해 재생가능한 시간이 소정 범위를 상회했을 경우(S356), 선택부(250)는, 하이 비트 레이트를 갖는 MP4 파일 A의 세그먼트 Am을 선택한다.
다음으로, 취득부(220)가, "HTTP:GET URL-A with Range"를 사용하여, 선택부(250)에 의해 선택된 MP4 파일 A의 세그먼트 Am을 콘텐츠 서버(10)에 요구한다(S360). 그리고나서, 콘텐츠 서버(10)의 통신부(140)는, "HTTP:Response"로서, MP4 파일 A의 세그먼트 Am을 콘텐츠 재생 장치(20)로 송신한다(S352).
이후도 마찬가지로, 버퍼(230)의 버퍼링량에 따라서 선택부(250)가 요구되는 비트 레이트를 갖는 세그먼트를 선택하고, 선택부(250)에 의해 선택된 세그먼트를 취득부(220)가 콘텐츠 서버(10)로부터 취득한다.
이러한 구성에 의해, 네트워크(12)의 대역이 작을 경우에 재생이 도중에 끊어져버리는 것을 방지하고, 또한, 네트워크(12)의 대역이 큰 경우에는 고품질의 재생을 실현할 수 있다. 또한, 본 실시형태에 있어서는, 네트워크(12)의 대역 판단 및 요구하는 세그먼트의 선택을 콘텐츠 재생 장치(20)측에서 행할 수 있기 때문에, 콘텐츠 서버(10)의 부하 경감을 도모하는 것이 가능하다.
<6. 변형예>
상기에서는, "trak" 중의 "dinf"를 사용해서 타 파일의 "mdat"에의 액세스를 가능하게 하는 예를 설명했지만, 도 10을 참조하여 설명한 바와 같이, "trak"을 사용해서 타 파일의 "trak"을 참조할 수 있게 해도 된다.
도 10은, 본 실시형태에 있어서 파일 생성부(120)에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도이다. 도 10에 나타낸 바와 같이, MP4 파일 B의 "trak"에 MP4 파일 A의 "trak"에의 액세스 정보를 기재하면, 콘텐츠 재생 장치(20)는, MP4 파일 B의 "trak"을 해석하고, 기재되어 있는 액세스 정보를 이용함으로써 MP4 파일 A의 "trak"을 취득할 수 있다. 따라서, 콘텐츠 재생 장치(20)는, MP4 파일 A의 "trak"에 기초하여 세그먼트 A1, A2, …를 취득할 수 있다.
마찬가지로, MP4 파일 B의 "trak"에 MP4 파일 C의 "trak"에의 액세스 정보를 기재하면, 콘텐츠 재생 장치(20)는, MP4 파일 B의 "trak"을 해석하고, 기재되어 있는 액세스 정보를 이용해서 MP4 파일 C의 "trak"을 취득할 수 있다. 따라서, 콘텐츠 재생 장치(20)는, MP4 파일 C의 "trak" 및 그 안에 기재된 Sample Description box에 기초하여 세그먼트 C1, C2, …를 취득할 수도 있다.
보다 구체적으로는, MP4 파일 포맷을 확장하여, 이하에 나타내는 확장 박스를 "minfo"에 기재하고, 구문 중의 "extended_type"에 "<uuid_value>: T. B. D"를 기재하고, "location"에 참조처의 MP4 파일의 URL을 기재하고, "track_ID"에 참조처의 MP4 파일에 있어서의 "trak"의 식별자를 기재해도 된다. 이에 따라서, 콘텐츠 재생 장치(20)는, 파일 B의 트랙 상의 미디어 데이터로서 대체가능한 미디어 데이터가 파일 C의 track_id에 의해 표시되는 트랙 상에 위치되어 있는 것을 인식할 수 있다. 또한, 미디어의 최대 비트 레이트 maxbitrate 및 평균 비트 레이트 avgbitrate 등의 비트 레이트 정보가 기재되어, 콘텐츠 재생 장치(20)가 어느 부호화 데이터 세그먼트를 취득할지의 판단에 이용할 수 있다.
(구문예)
Figure pat00003
또한, 상기 구성은, "moov"에 포함되는 액세스 정보를, "moov"와 "moof"를 사용해서 분산적으로 배치하는 파일 포맷에도 마찬가지로 적용가능하다. 이 경우, 도 11에 나타낸 바와 같이, "trak"에 타 파일의 "trak"에의 액세스 정보를 기재함으로써, MP4 파일 B의 "trak"을 사용하여 다른 파일의 "trak" 및 "traf"에 액세스하는 것이 가능하다.
도 11은, 본 실시형태에 있어서 파일 생성부(120)에 의해 생성되는 MP4 파일의 변형예를 나타낸 설명도이다. 도 11에 나타낸 바와 같이, MP4 파일 B의 "trak"에 MP4 파일 A의 "trak"에의 액세스 정보를 기재하면, 콘텐츠 재생 장치(20)는, MP4 파일 B의 "trak"을 해석하고, 기재되어 있는 액세스 정보를 이용함으로써 MP4 파일 A의 "trak"을 취득할 수 있다. 따라서, 콘텐츠 재생 장치(20)는, MP4 파일 A의 "trak"에 기초하여 세그먼트 A11, A12, …를 취득할 수도 있다.
마찬가지로, MP4 파일 B의 "trak"에 MP4 파일 C의 "trak"에의 액세스 정보를 기재하면, 콘텐츠 재생 장치(20)는, MP4 파일 B의 "trak"을 해석하고, 기재되어 있는 액세스 정보를 사용해서 MP4 파일 C의 "trak"을 취득할 수 있다. 따라서, 콘텐츠 재생 장치(20)는, MP4 파일 C의 "trak" 및 각 "traf"에 기초하여 세그먼트 C11, C12, …를 취득하는 것도 가능하다. 또한, 각 파일의 "moof"의 파일 중의 위치는, 콘텐츠 재생 장치(20)가 MP4 파일의 BOX 구조를 해석함으로써도 취득 가능하지만, 각 moof의 위치 정보는, MP4 파일에 기재된 Movie Fragment Random access box를 이용하여, 해당 moof 정보를 취득한 후에, moof에 후속하는 mdat의 각 세그먼트에 액세스하여 취득해도 된다. 또한, moof 정보를 미리 읽어서 "traf"를 해석해 둠으로써, "moof" 직후의 mdat를 시간적 지연 없이 판독가능하다.
<7. 정리>
이상 설명한 바와 같이, 본 실시형태에 있어서는, 콘텐츠 재생 장치(20)의 선택부(250)가 요구되는 비트 레이트를 갖는 세그먼트를 네트워크(12)의 대역에 따라서 선택하고, 선택된 세그먼트를 취득부(220)가 콘텐츠 서버(10)로부터 취득한다. 따라서, 본 실시형태에 따르면, 콘텐츠 서버(10)의 부하 경감을 도모하는 것이 가능하다.
또한, 본 실시형태는 대부분, HTTP 및 MP4 등의 기존의 규격에 준거하는 것이다. 따라서, 본 실시형태는, 기존의 HTTP 및 MP4를 이용하는 스트리밍과 호환성을 갖고, 또한, 확장 기능을 최소한으로 할 수 있기 때문에, 원활한 도입이 기대된다.
또한, 본 실시형태에 있어서는, 다른 비트 레이트를 갖는 "mdat"를, 동일한 MP4 파일이 아니라, 다른 MP4 파일에 작성한다. 따라서, 각 MP4 파일을, 스트리밍용으로서 뿐만 아니라, 다운로드용으로서도 지장없이 이용하는 것이 가능하다.
본 발명이 속하는 기술 분야에 있어서의 통상의 지식을 갖는 자이면, 특허청구범위 및 그 균등물에 기재된 기술적 사상의 범주 내에 있는 한, 설계 요구조건 및 다른 팩터에 따라 각종 변경예, 조합예, 하위 조합예 또는 수정예에 상도할 수 있는 것이다.
예를 들어, 본 명세서의 콘텐츠 재생 시스템(1)의 처리에 있어서의 각 스텝은, 반드시 시퀀스도로서 기재된 순서에 따라 시계열적으로 처리할 필요는 없다. 예를 들어, 콘텐츠 재생 시스템(1)의 처리에 있어서의 각 스텝은, 시퀀스도로서 기재한 순서와 다른 순서로 처리되어도 되거나, 병렬적으로 처리되어도 된다.
또한, 콘텐츠 재생 장치(20) 및 콘텐츠 서버(10)에 내장되는 CPU(201), ROM(202) 및 RAM(203) 등의 하드웨어를, 상술한 콘텐츠 재생 장치(20) 및 콘텐츠 서버(10)의 각 구성과 동등한 기능을 발휘시키기 위한 컴퓨터 프로그램도 작성가능하다. 또한, 상기 컴퓨터 프로그램을 기억시킨 기억 매체도 제공된다.
또한, 본 실시형태에서는, 도 6, 도 7, 도 10, 도 11에 나타내는 바와 같이, 제1 데이터 파일에 표준 비트 레이트의 부호화 데이터를 배치했지만, 로우 비트 레이트 또는 하이 비트 레이트의 부호화 데이터를 배치해도 된다.
또한, 본 실시형태에서는, 도 6, 도 7, 도 10, 도 11에 나타내는 바와 같이, 제1 데이터 파일에 부호화 데이터를 배치했지만, 제1 데이터 파일의 moof에는 그러한 부호화 데이터에의 액세스 정보만을 배치해도 된다.
또한, 본 실시형태에서는, 도 7에 나타낸 바와 같이, "moov", "moof" 및 "mdat"를 분산적으로 배치하는 예를 나타냈지만, 제1 데이터 파일만 분산적으로 배치하고, 다른 데이터 파일은 도 8에 나타낸 바와 같이 "moov" 및 이에 대응하는 "mdat"로 구성되도록 배치해도 된다.
또한, 제1 데이터 파일에 부호화 데이터가 포함되지 않을 경우의 실시형태를 도 12에 나타낸다. 제1 데이터 파일에는, 다른 데이터 파일에 배치된 각 세그먼트에 대한 액세스 정보가 기재되어 있다. 또한, 제1 데이터 파일에는 "moov" 및 "moof"를 이용해서 액세스 정보가 분산적으로 배치되고, 각 "moof"에는 단지 1개의 데이터 파일의 세그먼트에의 액세스 정보만이 기재되어 있다.
이 경우는, 영상 트랙 및 음성 트랙 각각의 "traf"에는 각 세그먼트에의 액세스 정보가 각 "moof"에 기재되어 있고, 또한 연속해서 배치된 "moof"의 조(이 경우는 3조)의 범위의 세그먼트에 대한 액세스 정보가 기재된다.
도 12에 나타낸 예에서는, "moov"의 각 "trak"에는 세그먼트에의 액세스 정보가 포함되지 않고, 다음 3개의 "moof"에 세그먼트 1로부터 세그먼트 i-1에의 액세스 정보가 기재된다. 마찬가지로, 다음 3개의 "moof"에 세그먼트 i로부터 세그먼트 j-1에의 액세스 정보가 기재되고, 또한 다음 3개의 "moof"에 세그먼트 j로부터 세그먼트 k-1에의 액세스 정보가 기재된다. 또한, "moov" 중의 "trak"의 배치 순서(즉, B, C, A)와, 3개의 "moof" 중의 "traf"의 배치 순서(즉, B, C, A)는 일치하고 있으므로, "traf"의 읽어들이기가 용이하게 된다.
이와 같이 제1 데이터 파일을 구성함으로써, 세그먼트에의 액세스 정보가 제1 데이터 파일을 해석하는 것만으로 용이하게 얻어진다. 또한, 각 데이터 파일의 세그먼트 정보도 "moof"의 단위로 분할되어 있으므로, 콘텐츠 재생 장치(20)는, 모든 데이터 파일의 세그먼트에의 액세스 정보를 유지할 필요없이, 필요한 데이터 파일의 "moof"만을 취득하여 유지함으로써, 네트워크 상황에 맞는 적절한 비트 레이트의 데이터 파일을 선택하면서, 적응 스트리밍을 행하는 것이 가능하게 된다.
또한, 부호화 데이터를 포함하지 않는 데이터 파일은 "moof"에 의한 분산화가 되어 있지 않고, "moov"와 "mdat"에 의해 구성되기 때문에, 이러한 데이터 파일은, 기존의 HTTP 및 MP4를 이용하는 스트리밍만을 지원하는 콘텐츠 재생 장치에 이용할 수 있다.
한편, 제1 데이터 파일에는 부호화 데이터가 포함되지 않기 때문에, 기존의 콘텐츠 재생 장치에 의해서는 재생할 수 없는 등의 문제를 고려하여, 콘텐츠 재생 장치가 적응 스트리밍을 위해 제공되고 있는 경우에는 제1 MP4 파일이 재생되고, 그렇지 않은 경우에는 분산화되지 않은 MP4 파일이 재생되는 구조를 제공해도 된다. 예를 들어, 콘텐츠 재생 장치로 하여금, 각 URL과 그 속성을 개시시켜, 콘텐츠 재생 장치의 능력과 속성에 기초하여 URL을 선택하는 방법 등이 알려져 있다.
상기한 실시형태 및 다른 실시형태들의 개관 및 특정한 예들은 예에 지나지 않는다. 본 발명은 다른 실시형태에도 적용가능하다.
본 발명이 속하는 기술 분야에 있어서의 통상의 지식을 갖는 자이면, 특허청구범위 및 그 균등물에 기재된 기술적 사상의 범주 내에 있는 한, 설계 요구조건 및 다른 팩터에 따라 각종 변경예, 조합예, 하위 조합예 또는 수정예에 상도할 수 있다.

Claims (15)

  1. 정보 처리 장치로서,
    처리 회로를 포함하고,
    상기 처리 회로는,
    복수의 데이터의 각 데이터에 관한 정보를 디바이스에 송신하고 - 상이한 복수의 비트 레이트(bit rate)로 저장된 각 데이터는 복수의 세그먼트로 구성되고, 상기 각 데이터에 관한 정보는, 각 데이터에 대응하는 URL(uniform resource locator)에 관한 정보, 상기 복수의 비트 레이트 각각에 관한 정보 및 상기 복수의 세그먼트 각각의 세그먼트에 대한 위치 정보인 복수의 세그먼트의 각 세그먼트의 바이트 범위에 대한 인덱스에 관한 정보를 포함함 - ,
    각 URL에 관한 상기 정보, 각 비트 레이트에 관한 상기 정보 및 상기 바이트 범위에 대한 인덱스에 관한 상기 정보에 기초하여 상기 디바이스에 의해 선택된, 하나 이상의 세그먼트에 대한 요구를 상기 디바이스로부터 수신하고,
    요구된 상기 하나 이상의 세그먼트를 상기 디바이스에 송신하도록 구성되는, 정보 처리 장치.
  2. 제1항에 있어서,
    상기 각 데이터는 각각의 세그먼트의 인덱스를 포함하는, 정보 처리 장치.
  3. 제1항에 있어서,
    상기 하나 이상의 세그먼트는, 네트워크 상황에 기초하여 상기 디바이스에 의해 선택되는, 정보 처리 장치.
  4. 제1항에 있어서,
    상기 디바이스로부터의 상기 요구는, 상기 복수의 세그먼트 각각의 세그먼트에 대한 상기 바이트 범위에 대한 인덱스에 관한 상기 정보를 포함하는, 정보 처리 장치.
  5. 제1항에 있어서,
    상기 처리 회로는 또한, 상기 URL에 관한 상기 정보에 대한 요구를 상기 디바이스로부터 수신하도록 구성되는, 정보 처리 장치.
  6. 제1항에 있어서,
    상기 처리 회로는 또한, 요구된 상기 하나 이상의 세그먼트에 대한 상기 바이트 범위에 대한 인덱스에 관한 상기 정보에 기초하여, 요구된 상기 하나 이상의 세그먼트를 액세스하도록 구성되는, 정보 처리 장치.
  7. 제2항에 있어서,
    상기 처리 회로는 또한, 상기 복수의 세그먼트 각각의 세그먼트의 상기 인덱스 및 요구된 상기 하나 이상의 세그먼트에 대한 상기 바이트 범위에 대한 인덱스에 관한 상기 정보에 기초하여, 요구된 상기 하나 이상의 세그먼트를 액세스하도록 구성되는, 정보 처리 장치.
  8. 제1항에 있어서,
    상기 처리 회로는, HTTP 응답으로서, 요구된 상기 하나 이상의 세그먼트를 상기 디바이스에 송신하도록 구성되는, 정보 처리 장치.
  9. 제1항에 있어서,
    상기 데이터는, 부호화된 음성 콘텐츠 또는 부호화된 영상 콘텐츠 중 적어도 하나를 포함하는, 정보 처리 장치.
  10. 제1항에 있어서,
    상기 데이터는 MP4 포맷에 대응하는, 정보 처리 장치.
  11. 제1항에 있어서,
    상기 디바이스로부터의 상기 요구는, 상기 상이한 복수의 비트 레이트의 미리 정해진 비트 레이트를 식별하는 정보를 포함하는, 정보 처리 장치.
  12. 제11항에 있어서,
    상기 디바이스로부터의 상기 요구는, 상기 미리 정해진 비트 레이트를 갖는 상기 복수의 세그먼트의 세그먼트들에 대해 요구하는 것인, 정보 처리 장치.
  13. 제1항에 있어서,
    상기 하나 이상의 세그먼트는, 상기 하나 이상의 세그먼트의 비트 레이트에 기초하여 상기 디바이스에 의해 선택되는, 정보 처리 장치.
  14. 정보 처리 방법으로서,
    복수의 데이터의 각 데이터에 관한 정보를 디바이스에 송신하는 단계 - 상이한 복수의 비트 레이트(bit rate)로 저장된 각 데이터는 복수의 세그먼트로 구성되고, 상기 각 데이터에 관한 정보는, 각 데이터에 대응하는 URL(uniform resource locator)에 관한 정보, 복수의 비트 레이트 각각에 관한 정보 및 상기 복수의 세그먼트 각각의 세그먼트에 대한 위치 정보인 복수의 세그먼트의 각 세그먼트의 바이트 범위에 대한 인덱스에 관한 정보를 포함함 - ;
    각 URL에 관한 상기 정보, 각 비트 레이트에 관한 상기 정보 및 상기 바이트 범위에 대한 인덱스에 관한 상기 정보에 기초하여 상기 디바이스에 의해 선택된, 하나 이상의 세그먼트에 대한 요구를 상기 디바이스로부터 수신하는 단계; 및
    요구된 상기 하나 이상의 세그먼트를 상기 디바이스에 송신하는 단계
    를 포함하는, 정보 처리 방법.
  15. 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금,
    복수의 데이터의 각 데이터에 관한 정보를 디바이스에 송신하는 단계 - 상이한 복수의 비트 레이트(bit rate)로 저장된 각 데이터는 복수의 세그먼트로 구성되고, 상기 각 데이터에 관한 정보는, 각 데이터에 대응하는 URL(uniform resource locator)에 관한 정보, 복수의 비트 레이트 각각에 관한 정보 및 상기 복수의 세그먼트 각각의 세그먼트에 대한 위치 정보인 복수의 세그먼트의 각 세그먼트의 바이트 범위에 대한 인덱스에 관한 정보를 포함함 - ;
    각 URL에 관한 상기 정보, 각 비트 레이트에 관한 상기 정보 및 상기 바이트 범위에 대한 인덱스에 관한 상기 정보에 기초하여 상기 디바이스에 의해 선택된, 하나 이상의 세그먼트에 대한 요구를 상기 디바이스로부터 수신하는 단계; 및
    요구된 상기 하나 이상의 세그먼트를 상기 디바이스에 송신하는 단계
    를 포함하는 방법을 구현하는 프로그램이 저장된 비일시적 컴퓨터 판독 가능한 기록 매체.
KR1020170072480A 2009-10-15 2017-06-09 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체 KR101868281B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2009-238130 2009-10-15
JP2009238130A JP2011087103A (ja) 2009-10-15 2009-10-15 コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020100097801A Division KR101750558B1 (ko) 2009-10-15 2010-10-07 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체

Publications (2)

Publication Number Publication Date
KR20170070857A true KR20170070857A (ko) 2017-06-22
KR101868281B1 KR101868281B1 (ko) 2018-06-15

Family

ID=43598096

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020100097801A KR101750558B1 (ko) 2009-10-15 2010-10-07 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체
KR1020170072476A KR101868280B1 (ko) 2009-10-15 2017-06-09 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체
KR1020170072480A KR101868281B1 (ko) 2009-10-15 2017-06-09 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020100097801A KR101750558B1 (ko) 2009-10-15 2010-10-07 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체
KR1020170072476A KR101868280B1 (ko) 2009-10-15 2017-06-09 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체

Country Status (6)

Country Link
US (4) US8812735B2 (ko)
EP (2) EP2312850A3 (ko)
JP (1) JP2011087103A (ko)
KR (3) KR101750558B1 (ko)
CN (2) CN104253999B (ko)
TW (3) TWI562641B (ko)

Families Citing this family (94)

* Cited by examiner, † Cited by third party
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
EP2355360B1 (en) 2002-10-05 2020-08-05 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
EP2202888A1 (en) 2004-05-07 2010-06-30 Digital Fountain, Inc. File download and streaming system
KR101292851B1 (ko) 2006-02-13 2013-08-02 디지털 파운튼, 인크. 가변적 fec 오버헤드 및 보호 구간을 이용하는 스트리밍및 버퍼링
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
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
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
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
CN101802797B (zh) 2007-09-12 2013-07-17 数字方敦股份有限公司 生成和传达源标识信息以实现可靠的通信
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
EP2362651A1 (en) 2010-02-19 2011-08-31 Thomson Licensing Multipath delivery for adaptive streaming
US9225961B2 (en) 2010-05-13 2015-12-29 Qualcomm Incorporated Frame packing for asymmetric stereo video
KR101702562B1 (ko) * 2010-06-18 2017-02-03 삼성전자 주식회사 멀티미디어 스트림 파일의 저장 파일 포맷, 저장 방법 및 이를 이용한 클라이언트 장치
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
FR2975555A1 (fr) * 2011-05-18 2012-11-23 Thomson Licensing Methode d'adaptation dynamique du debit de reception et recepteur associe
EP2719190B8 (en) * 2011-06-08 2017-11-22 Koninklijke KPN N.V. Spatially-segmented content delivery
JP5259848B2 (ja) * 2011-07-29 2013-08-07 株式会社東芝 再生制御装置及び再生制御方法
US9253233B2 (en) * 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US9445136B2 (en) 2011-09-21 2016-09-13 Qualcomm Incorporated Signaling characteristics of segments for network streaming of media data
CA2850416C (en) 2011-09-30 2016-02-23 Huawei Technologies Co., Ltd. Method and device for transmitting streaming media
US9843844B2 (en) * 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9055136B2 (en) * 2011-10-13 2015-06-09 Qualcomm Incorporated Controlling streaming delay in networks
EP2587824A1 (en) * 2011-10-27 2013-05-01 Thomson Licensing Method and apparatus to manage the operation of an adaptive streaming client
EP2595399A1 (en) * 2011-11-16 2013-05-22 Thomson Licensing Method of digital content version switching and corresponding device
US9225762B2 (en) 2011-11-17 2015-12-29 Google Technology Holdings LLC Method and apparatus for network based adaptive streaming
US9584596B2 (en) * 2011-12-01 2017-02-28 Thomson Licensing Sa Device for obtaining content by choosing the transport protocol according to the available bandwidth
DE102012200083A1 (de) * 2012-01-04 2013-07-04 Robert Bosch Gmbh Verfahren und Steuergerät zur Ermittlung eines Identifikationscodes für ein Audiodatenpaket
WO2013122569A1 (en) * 2012-02-13 2013-08-22 Affirmed Networks, Inc. Mobile video delivery
US9219929B2 (en) * 2012-02-27 2015-12-22 Fritz Barnes Enhanced startup and channel change for fragmented media stream delivery
US9392304B2 (en) * 2012-02-29 2016-07-12 Hulu, LLC Encoding optimization using quality level of encoded segments
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
EP2661045A1 (en) * 2012-05-04 2013-11-06 Thomson Licensing Method and apparatus for providing a plurality of transcoded content streams
CN104488246B (zh) 2012-07-10 2018-11-02 Vid拓展公司 质量驱动串流
WO2014010992A1 (ko) * 2012-07-13 2014-01-16 삼성전자 주식회사 컨텐츠 이름 기반의 컨텐츠 중심 네트워크에서 컨텐츠 및 실시간 스트리밍 컨텐츠 제공을 위한 컨텐츠 요청자 및 컨텐츠 제공자의 통신 방법
US9420217B2 (en) * 2012-08-17 2016-08-16 Microsoft Technology Licensing, Llc Program identifier based recording
EP2917807A4 (en) * 2012-11-09 2016-06-15 Nokia Solutions & Networks Oy ADAPTIVE EXPLOITATION OF NETWORK INFORMATION
US9712515B2 (en) * 2012-12-21 2017-07-18 Cellco Partnership Verifying an identity of a message sender
WO2014111547A1 (en) * 2013-01-18 2014-07-24 Canon Kabushiki Kaisha Method, device, and computer program for encapsulating partitioned timed media data
TWI543594B (zh) * 2013-03-01 2016-07-21 致伸科技股份有限公司 數位媒體播放系統
KR20140111859A (ko) * 2013-03-12 2014-09-22 삼성전자주식회사 콘텐트 공유 방법 및 이를 위한 디바이스
US10033658B2 (en) 2013-06-20 2018-07-24 Samsung Electronics Co., Ltd. Method and apparatus for rate adaptation in motion picture experts group media transport
JPWO2014207978A1 (ja) * 2013-06-26 2017-02-23 日本電気株式会社 送信装置、受信装置および中継装置
BR112016000427B1 (pt) 2013-07-17 2023-05-09 Sony Corporation Dispositivo, método e sistema de suprimento de conteúdo, e, dispositivo terminal
US20150039660A1 (en) * 2013-07-31 2015-02-05 Cleversafe, Inc. Co-locate objects request
US20180188964A1 (en) * 2013-07-31 2018-07-05 International Business Machines Corporation Managed storage unit shutdown in a distributed storage network
KR102133531B1 (ko) 2013-08-23 2020-07-13 삼성전자주식회사 컨텐츠 재생 방법 및 그에 따른 단말, 그에 따른 시스템
JP2015136059A (ja) 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
JP2015136060A (ja) 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
JP2015136058A (ja) 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
JP2015136057A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
EP3103245B1 (en) * 2014-02-05 2019-06-19 Seon Design (USA) Corp. Uploading data from mobile devices
WO2015170565A1 (ja) 2014-05-07 2015-11-12 ソニー株式会社 受信装置、送信装置、データ通信方法、およびデータ処理方法
CN106471574B (zh) 2014-06-30 2021-10-12 索尼公司 信息处理装置和信息处理方法
EP3148200B1 (en) * 2014-06-30 2020-06-17 Sony Corporation Information processing device and method selecting content files based on encoding parallelism type
KR102529711B1 (ko) 2014-10-20 2023-05-09 소니그룹주식회사 수신 장치, 송신 장치, 및 데이터 처리 방법
EP3910904A1 (en) 2015-01-06 2021-11-17 DivX, LLC Systems and methods for encoding and sharing content between devices
JPWO2016174959A1 (ja) 2015-04-30 2018-02-22 ソニー株式会社 受信装置、送信装置、およびデータ処理方法
CN107534793B (zh) 2015-04-30 2021-08-03 索尼公司 接收装置、传输装置以及数据处理方法
EP3310065B1 (en) 2015-06-09 2022-04-13 Sony Group Corporation Receiving device, transmission device and data processing method
JPWO2016203850A1 (ja) 2015-06-16 2018-04-05 ソニー株式会社 受信装置、送信装置、およびデータ処理方法
US10820041B2 (en) 2015-07-23 2020-10-27 Saturn Licensing Llc Reception apparatus, transmission apparatus and data processing method
TWI736542B (zh) * 2015-08-06 2021-08-21 日商新力股份有限公司 資訊處理裝置、資料配訊伺服器及資訊處理方法、以及非暫時性電腦可讀取之記錄媒體
JPWO2017038353A1 (ja) 2015-08-28 2018-06-14 ソニー株式会社 受信装置、送信装置、およびデータ処理方法
KR102640835B1 (ko) 2015-09-18 2024-02-27 소니그룹주식회사 송신 장치, 수신 장치, 및 데이터 처리 방법
WO2017047433A1 (ja) 2015-09-18 2017-03-23 ソニー株式会社 送信装置、受信装置、およびデータ処理方法
KR102209292B1 (ko) 2015-11-04 2021-01-29 삼성전자 주식회사 멀티미디어 시스템에서 데이터 제공 방법 및 장치
US10666961B2 (en) 2016-01-08 2020-05-26 Qualcomm Incorporated Determining media delivery event locations for media transport
TWI559753B (zh) * 2016-03-16 2016-11-21 晶睿通訊股份有限公司 傳輸隨選影音檔案的方法
CN105847724B (zh) * 2016-04-12 2018-12-07 深圳市极酷威视科技有限公司 一种视频录制断电保护方法及装置
US10863247B2 (en) 2016-07-20 2020-12-08 Saturn Licensing Llc Receiving device and data processing method
TWI599218B (zh) * 2016-07-29 2017-09-11 元智大學 即時影音傳輸系統
CN107979783B (zh) * 2016-10-25 2020-03-24 杭州海康威视数字技术股份有限公司 一种流式数据解析方法、装置及电子设备
JP6472478B2 (ja) * 2017-04-07 2019-02-20 キヤノン株式会社 映像配信装置、映像配信方法及びプログラム
CN111164947A (zh) * 2017-08-14 2020-05-15 英国电讯有限公司 用于对音频和/或视频数据进行编码的方法和设备
CN110099088B (zh) * 2018-01-31 2022-03-08 国广融合(北京)传媒科技发展有限公司 一种基于融合传输系统的自适应数据传输方法
CN110545491B (zh) * 2018-05-29 2021-08-10 北京字节跳动网络技术有限公司 一种媒体文件的网络播放方法、装置及存储介质
JP7105675B2 (ja) 2018-11-02 2022-07-25 株式会社東芝 送信装置、サーバ装置、送信方法およびプログラム
CN113475052B (zh) 2019-01-31 2023-06-06 英国电讯有限公司 对音频数据和/或视频数据进行编码的方法和装置
GB2582014A (en) * 2019-03-08 2020-09-09 Canon Kk Method, device, and computer program for optimizing transmission of portions of encapsulated media content
KR102291293B1 (ko) * 2020-02-26 2021-08-20 가부시끼가이샤 도시바 송신 디바이스, 통신 시스템, 송신 방법, 및 비일시적 컴퓨터 판독가능 기록 매체
CN113365140B (zh) 2021-06-21 2022-12-23 北京百度网讯科技有限公司 Mp4在线播放方法、装置、设备、存储介质及程序产品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060086944A (ko) * 2003-09-30 2006-08-01 소니 가부시끼 가이샤 콘텐츠 취득 방법
JP2007036666A (ja) * 2005-07-27 2007-02-08 Onkyo Corp コンテンツ配信システム、クライアント及びクライアントプログラム

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6477565B1 (en) * 1999-06-01 2002-11-05 Yodlee.Com, Inc. Method and apparatus for restructuring of personalized data for transmission from a data network to connected and portable network appliances
FI115418B (fi) * 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
CA2669171C (en) * 2001-09-26 2012-05-01 Interact Devices System and method for communicating media signals
US20040267821A1 (en) * 2001-11-29 2004-12-30 Jiro Kiyama Data recording method, data deletion method, data display method, recording apparatus, recording medium, and program
US20030221014A1 (en) * 2002-05-24 2003-11-27 David Kosiba Method for guaranteed delivery of multimedia content based on terminal capabilities
DE60212383T2 (de) * 2002-08-27 2006-10-19 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren zur Übertragung von Datenströmen mit Datensegmenten variabler Länge
AU2003255983A1 (en) * 2002-08-28 2004-03-19 Koninklijke Philips Electronics N.V. Method of streaming multimedia data
JP2004165855A (ja) * 2002-11-11 2004-06-10 Sony Corp オーサリング装置および方法、オーサリングプログラム、ならびに、オーサリングプログラムが記録された記録媒体
JP2004312413A (ja) * 2003-04-08 2004-11-04 Sony Corp コンテンツ提供サーバ、情報処理装置、および方法、並びにコンピュータ・プログラム
KR100524770B1 (ko) * 2003-09-17 2005-10-31 엘지전자 주식회사 주문형 비디오 서비스 장치 및 방법
KR100608715B1 (ko) * 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
US7555009B2 (en) * 2003-11-14 2009-06-30 Canon Kabushiki Kaisha Data processing method and apparatus, and data distribution method and information processing apparatus
KR101244308B1 (ko) * 2003-12-08 2013-03-18 삼성전자주식회사 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권관리방법
US7567584B2 (en) * 2004-01-15 2009-07-28 Panasonic Corporation Multiplex scheme conversion apparatus
JP2005318473A (ja) * 2004-04-30 2005-11-10 Toshiba Corp 動画像のメタデータ
KR20060059782A (ko) * 2004-11-29 2006-06-02 엘지전자 주식회사 영상신호의 스케일러블 프로그레시브 다운로딩을 지원하는방법
US20060259781A1 (en) * 2005-04-29 2006-11-16 Sony Corporation/Sony Electronics Inc. Method and apparatus for detecting the falsification of metadata
US20070022215A1 (en) * 2005-07-19 2007-01-25 Singer David W Method and apparatus for media data transmission
JP4598627B2 (ja) * 2005-08-24 2010-12-15 富士通株式会社 コンテンツ編集装置及びその再生装置
KR20050092688A (ko) * 2005-08-31 2005-09-22 한국정보통신대학교 산학협력단 통합 멀티미디어 파일 포맷 구조와 이를 기반으로 하는멀티미디어 서비스 제공 시스템 및 그 방법
EP1932315A4 (en) * 2005-09-01 2012-05-09 Nokia Corp METHOD FOR INTEGRATING SVG CONTENT INTO ISO MULTIMEDIA FILE FORMAT FOR PROGRESSIVE DOWNLOAD AND CONTINUOUS TRANSMISSION OF RICH MULTIMEDIA CONTENT
JP4991034B2 (ja) * 2005-11-04 2012-08-01 エルジー エレクトロニクス インコーポレイティド モバイル通信ターミナル及びモバイル通信ターミナルのメディア再生時間を計算する方法
JP2007173987A (ja) 2005-12-19 2007-07-05 Canon Inc マルチメディアデータ送受信システム、及び装置、又はプログラム
JP4944484B2 (ja) * 2006-04-20 2012-05-30 キヤノン株式会社 再生装置、再生方法及びプログラム
JP2008033838A (ja) 2006-07-31 2008-02-14 Sanyo Electric Co Ltd メモリ管理装置及びメモリ管理方法
JP4828352B2 (ja) * 2006-08-18 2011-11-30 ソニー株式会社 情報処理装置、情報処理方法、コンピュータプログラム、半導体装置
JP4948147B2 (ja) * 2006-12-15 2012-06-06 富士通株式会社 複合コンテンツファイルの編集方法および装置
KR20080070471A (ko) * 2007-01-26 2008-07-30 엘지전자 주식회사 파일 포맷을 구성하는 방법과 상기 파일 포맷을 가지는파일을 포함한 디지털 방송 신호를 처리하는 장치 및 방법
US20080208806A1 (en) * 2007-02-28 2008-08-28 Microsoft Corporation Techniques for a web services data access layer
US8543720B2 (en) * 2007-12-05 2013-09-24 Google Inc. Dynamic bit rate scaling
JP2009157815A (ja) * 2007-12-27 2009-07-16 Hitachi Ltd 広告配信システム及び広告配信方法
JP2009238130A (ja) 2008-03-28 2009-10-15 Fujitsu Ltd プリント基板設計装置およびプリント基板設計方法
US8370520B2 (en) * 2008-11-24 2013-02-05 Juniper Networks, Inc. Adaptive network content delivery system
US8219711B2 (en) * 2008-11-24 2012-07-10 Juniper Networks, Inc. Dynamic variable rate media delivery system
WO2010108053A1 (en) * 2009-03-19 2010-09-23 Azuki Systems, Inc. Method for scalable live streaming delivery for mobile audiences
US9680892B2 (en) * 2009-06-26 2017-06-13 Adobe Systems Incorporated Providing integration of multi-bit-rate media streams
EP2467786B1 (en) * 2009-08-17 2019-07-31 Akamai Technologies, Inc. Method and system for http-based stream delivery
WO2011039614A1 (en) * 2009-09-29 2011-04-07 Nokia Corporation Systems, methods and apparatuses for media file streaming

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060086944A (ko) * 2003-09-30 2006-08-01 소니 가부시끼 가이샤 콘텐츠 취득 방법
JP2007036666A (ja) * 2005-07-27 2007-02-08 Onkyo Corp コンテンツ配信システム、クライアント及びクライアントプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"IIS Smooth Streaming Technical Overview," Alex Zambelli, Microsoft Corporation, March 2009

Also Published As

Publication number Publication date
TW201644269A (zh) 2016-12-16
TW201121328A (en) 2011-06-16
US8812735B2 (en) 2014-08-19
TW201507481A (zh) 2015-02-16
EP2312850A3 (en) 2011-08-31
KR20170070856A (ko) 2017-06-22
KR101868280B1 (ko) 2018-06-15
KR20110041409A (ko) 2011-04-21
EP2802151A1 (en) 2014-11-12
KR101750558B1 (ko) 2017-07-04
JP2011087103A (ja) 2011-04-28
US20140325020A1 (en) 2014-10-30
CN104253999B (zh) 2017-09-01
EP2312850A2 (en) 2011-04-20
TWI465113B (zh) 2014-12-11
US20160112333A1 (en) 2016-04-21
TWI643502B (zh) 2018-12-01
CN104253999A (zh) 2014-12-31
KR101868281B1 (ko) 2018-06-15
CN102045338A (zh) 2011-05-04
US20160112334A1 (en) 2016-04-21
US20110093617A1 (en) 2011-04-21
TWI562641B (en) 2016-12-11

Similar Documents

Publication Publication Date Title
KR101868281B1 (ko) 정보 처리 장치, 정보 처리 방법 및 컴퓨터 판독 가능한 기록 매체
KR101737325B1 (ko) 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
WO2013008867A1 (ja) 送信装置、送信装置の制御方法、制御プログラム、及び記録媒体
JP2019517219A (ja) トリックプレイ再生の間にオーディオコンテンツを提供するためのシステムおよび方法
WO2014112186A1 (ja) コンテンツサーバおよびコンテンツ配信方法
JP4526294B2 (ja) ストリームデータ送信装置、受信装置、プログラムを記録した記録媒体、およびシステム
KR101515551B1 (ko) 데이터 처리장치 및 그 제어방법, 및 기억매체
KR101517959B1 (ko) 적응형 스트리밍 방법
JP6258168B2 (ja) 配信装置、再生装置および配信システム
JP4731600B2 (ja) コンテンツ送信システムにおけるサーバー装置およびコンテンツ送信方法
WO2014171385A1 (ja) サーバ装置、コンテンツ提供方法及びコンピュータプログラム
JP2014131307A (ja) 情報処理装置、情報処理方法およびプログラム
US20110276662A1 (en) Method of constructing multimedia streaming file format, and method and apparatus for servicing multimedia streaming using the multimedia streaming file format
JP2016040919A (ja) 情報処理装置、情報処理方法およびプログラム
KR100931344B1 (ko) Vod 스트리밍 서비스를 제공하는 방법과 그를 위한시스템, 서버 및 사용자 단말기
KR101499194B1 (ko) 적응형 스트리밍 방법
KR20170102448A (ko) 요청 응답 방식의 적응형 컨텐츠 재생 방법
KR101781023B1 (ko) 컨텐츠 전송과 연계된 실시간 컨텐츠 재생 방법
KR20160017655A (ko) 적응형 스트리밍 방법
KR20160137472A (ko) 요청 응답 방식의 적응형 컨텐츠 재생 방법
KR20150054734A (ko) 적응형 스트리밍 방법
KR20090123519A (ko) 다운로드-앤-플레이 서비스에서 전 구간에 대한 컨텐츠트릭 플레이 기능 및 찾기 기능을 제공하는 방법 및 그컨텐츠 수신 장치
KR20110123644A (ko) 멀티미디어 스트리밍 파일 포맷 구조 및 그를 이용한 멀티미디어 스트리밍 서비스 방법 및 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right