KR20110053178A - 적응적인 스트리밍 방법 및 장치 - Google Patents

적응적인 스트리밍 방법 및 장치 Download PDF

Info

Publication number
KR20110053178A
KR20110053178A KR1020100103722A KR20100103722A KR20110053178A KR 20110053178 A KR20110053178 A KR 20110053178A KR 1020100103722 A KR1020100103722 A KR 1020100103722A KR 20100103722 A KR20100103722 A KR 20100103722A KR 20110053178 A KR20110053178 A KR 20110053178A
Authority
KR
South Korea
Prior art keywords
media data
file
information
content
client
Prior art date
Application number
KR1020100103722A
Other languages
English (en)
Other versions
KR101750049B1 (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 삼성전자주식회사
Priority to JP2012538765A priority Critical patent/JP5794998B2/ja
Priority to CN2010800614944A priority patent/CN102812674A/zh
Priority to EP10830206.8A priority patent/EP2499793B1/en
Priority to PCT/KR2010/008017 priority patent/WO2011059274A2/en
Priority to US12/945,498 priority patent/US9967598B2/en
Publication of KR20110053178A publication Critical patent/KR20110053178A/ko
Application granted granted Critical
Publication of KR101750049B1 publication Critical patent/KR101750049B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • 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/38Flow control; Congestion control by adapting coding or compression rate
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream 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 or manipulating encoded video stream 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/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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • 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/2665Gathering content from different sources, e.g. Internet and satellite
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
    • 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
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • 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/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • 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
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Astronomy & Astrophysics (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Information Transfer Between Computers (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보에 기초해 스트리밍 환경에 적응적인 스트리밍을 수행하는 방법 및 장치가 개시된다.

Description

적응적인 스트리밍 방법 및 장치{Method and apparatus for adaptive streaming}
본 발명은 스트리밍 방법 및 장치에 관한 것으로, 보다 상세히는 스트리밍 환경의 변동(fluctuation)에 따라 적응적으로 미디어 데이터를 스트리밍하는 방법 및 장치에 관한 것이다.
네트워크를 통해 미디어 데이터를 전송하는 방식에는 다운로드 방식과 스트리밍 방식이 있다. 스트리밍 방식은 서버가 실시간으로 미디어 데이터를 전송하고, 클라이언트는 수신된 미디어 데이터를 실시간으로 재생하는 방식이다.
스트리밍 방식은 미디어 데이터를 모두 송수신하고 난 다음에 미디어 데이터의 재생이 시작되는 다운로드 방식과 달리 스트리밍 방식에 따르면 서버와 클라이언트 사이에 설정된 논리적인 채널을 통해 실시간으로 미디어 데이터가 송수신되고, 재생되기 때문에 스트리밍 환경의 변동을 반영하여 미디어 데이터 재생의 QoS(Quality of Sevice)를 유지할 수 있는 방법 및 장치가 필요하다.
본 발명이 해결하고자 하는 기술적 과제는 스트리밍 즉, 미디어 데이터의 전송 및 수신을 스트리밍 환경에 따라 적응적으로 조절하여 수행하는 방법 및 장치를 제공하는데 있고, 상기 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 수신하는 방법은 소정의 콘텐트에 대한 정보를 포함하는 제1 파일을 서버로부터 수신하는 단계; 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 제1 파일에 기초해 서버로부터 수신하는 단계; 및 상기 제2 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 수신하는 단계를 포함하고, 상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일의 위치에 대한 정보는 상기 제2 파일의 URL(Uniform Resource Locator) 정보인 것을 특징으로 한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일을 상기 제1 파일에 기초해 서버로부터 수신하는 단계는 상기 제2 파일의 URL 정보에 기초해 상기 제2 파일의 전송을 요청하는 HTTP(Hypertext Transfer Protocol) 요청 메시지를 상기 서버에 전송하는 단계; 및 상기 요청 메시지에 대한 응답으로 상기 제2 파일을 포함하는 HTTP 응답 메시지를 상기 서버로부터 수신하는 단계를 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 복수의 미디어 데이터는 상기 콘텐트를 소정 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 복수의 부분 중 적어도 하나를 각각 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일은 상기 복수의 부분의 URL에 대한 템플릿(template) 및 미디어 데이터의 포맷 중 적어도 하나에 대한 정보를 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일은 상기 복수의 미디어 데이터의 헤더를 지시하는 정보를 더 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 복수의 미디어 데이터는 복수의 엘리멘터리 스트림에 각각 대응되고, 상기 복수의 미디어 데이터의 헤더는 상기 복수의 엘리멘터리 스트림에 대한 PAT(Program Association Table) 및 PMT (Program Map Table)중 적어도 하나를 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 PAT 및 PMT 중 적어도 하나는 상기 복수의 미디어 데이터의 전체 리스트를 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 복수의 미디어 데이터는 PID(packet ID)가 상이한 것을 특징으로 한다.
본 발명의 또 다른 실시예에 따르면, 상기 적어도 하나의 부분은 적어도 하나의 PES(Packetized Elementary Stream)를 포함하는 것을 특징으로 한다.
본 발명의 또 다른 실시예에 따르면, 상기 복수의 미디어 데이터 중 서로 다른 미디어 데이터에 포함된 PES의 PTS(Presentation Time Stamp) 및 DTS(Decoding Time Stamp)는 미디어 데이터의 재생시간에 따라 정렬(aligned)되는 것을 특징으로 한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일은 상기 콘텐트 이후 수신할 콘텐트를 상이한 품질로 인코딩하여 생성된 또 다른 복수의 미디어 데이터에 대한 정보를 포함하는 제3 파일에 대한 정보를 더 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나에 대한 정보를 포함한다.
본 발명의 또 다른 실시예에 따르면, 상기 제2 파일은 상기 복수의 미디어 데이터 중 적어도 하나를 수신하는 사용자의 등급에 따라 상이한 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른, 미디어 데이터를 전송하는 방법은 소정 콘텐트에 대한 정보를 포함하는 제1 파일을 클라이언트에 전송하는 단계; 상기 제1 파일에 기초한 상기 클라이언트의 요청에 따라 전송하는 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 클라이언트에 전송하는 단계; 및 상기 제2 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 단계를 포함하고, 상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 수신하는 장치는 소정 콘텐트에 대한 정보를 포함하는 제1 파일을 서버로부터 수신하고, 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 제1 파일에 기초해 서버로부터 수신하는 정보수신부; 및 상기 제2 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 수신하는 미디어데이터수신부를 포함하고, 상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 전송하는 장치는 소정 콘텐트에 대한 정보를 포함하는 제1 파일을 클라이언트에 전송하고, 상기 제1 파일에 기초한 상기 클라이언트의 요청에 따라 전송하는 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 클라이언트에 전송하는 정보전송부; 및 상기 제2 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 미디어데이터전송부를 포함하고, 상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 수신하는 방법은 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 서버로부터 수신하는 단계; 및 상기 수신된 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 적어도 하나의 미디어 데이터를 수신하는 단계를 포함하고, 상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 전송하는 방법은 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 상기 클라이언트에 전송하는 단계; 및 상기 전송된 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 단계를 포함하고, 상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 수신하는 장치는 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 서버로부터 수신하는 정보수신부; 및 상기 수신된 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 적어도 하나의 미디어 데이터를 수신하는 미디어데이터수신부를 포함하고, 상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 미디어 데이터를 전송하는 장치는 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 상기 클라이언트에 전송하는 정보전송부; 및 상기 전송된 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 미디어데이터전송부를 포함하고, 상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함한다.
본 발명에 따른 일 실시예는 상기된 미디어 데이터 수신 방법 및 미디어 데이터 전송 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
본 발명에 따르면, 서버 및/또는 클라이언트의 구성을 변경하지 않고, 기존의 프로토콜의 이용한 스트리밍 환경에 따른 적응적인 스트리밍이 가능해져, 낮은 비용으로 다양한 미디어 데이터 포맷에 호환되는 적응적인 스트리밍 시스템 구축이 가능해진다.
도 1은 본 발명의 일 실시예에 따른 스트리밍 시스템을 도시한다.
도 2a 및 2b는 본 발명의 일 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 콘텐트에 대한 정보를 포함하는 파일의 스키마(schema)를 도시한다.
도 4a는 본 발명의 일 실시예에 따른 복수의 미디어 데이터를 정의하기 위한 정보를 도시한다.
도 4b는 본 발명의 일 실시예에 따른 미디어 데이터의 헤더에 대한 정보를 도시한다.
도 4c는 본 발명의 일 실시예에 따른 복수의 미디어 데이터 각각에 포함된 적어도 하나의 부분들에 대한 정보를 포함한다.
도 5a 및 5b는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 또 다른 실시예에 따른 콘텐트에 대한 정보를 포함하는 파일의 스키마를 도시한다.
도 7은 본 발명의 또 다른 실시예에 따른 콘텐트에 대한 정보를 도시한다.
도 8a 및 8b는 본 발명의 일 실시예에 따른 미디어 표현 기술의 스키마를 도시한다.
도 9a 내지 9h는 본원 발명의 일 실시예에 따른 미디어 표현 기술을 도시한다.
도 10a 내지 10c는 본 발명의 일 실시예에 따른 복수의 미디어 데이터를 도시한다.
도 11a 및 11b는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 12a 및 12c는 본 발명의 또 다른 실시예에 따른 복수의 미디어 데이터를 도시한다.
도 13은 본 발명의 일 실시예에 따른 서버의 미디어 데이터 전송 장치를 도시한다.
도 14는 본 발명의 일 실시예에 따른 클라이언트의 미디어 데이터 수신 장치를 도시한다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 스트리밍 시스템을 도시한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 스트리밍 시스템(100)은 인코딩 장치(110), 서버(120) 및 클라이언트(130)를 포함한다.
인코딩 장치(110)는 입력된 콘텐트를 복수의 상이한 품질로 인코딩하여 하나의 콘텐트에 대한 복수의 미디어 데이터를 생성한다. 서버(120)가 클라이언트(130)에 미디어 데이터를 스트리밍할 때, 스트리밍 환경은 변경될 수 있다. 예를 들어, 스트리밍을 위한 네트워크(140) 대역폭이 변경될 수도 있고, 미디어 데이터를 전송하기 위해 서버(120)가 사용 가능한 하드웨어 자원 또는 미디어 데이터를 수신하기 위해 클라이언트(130)가 사용 가능한 하드웨어 자원이 변경될 수도 있다.
따라서, 인코딩 장치(110)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 하나의 콘텐트를 복수의 상이한 품질로 인코딩한다. 비트율(bit rate) 또는 샘플링 주파수(sampling frequency) 또는 해상도 또는 프레임율(frame rate) 등과 같은 인자들을 조절함으로써 하나의 콘텐트를 복수의 상이한 품질로 인코딩할 수 있다. 예를 들어, 하나의 동영상 콘텐트를 서로 다른 해상도로 인코딩하여 500 Kbps, 1000 Kbps 및 2000 Kbps의 복수의 미디어 데이터를 생성할 수 있다.
상이한 품질로 인코딩된 복수의 미디어 데이터는 서버(120)에 전송되고, 이 때, 콘텐트에 대한 정보 및 복수의 미디어 데이터 각각에 대한 정보도 함께 서버(120)에 전송된다. 콘텐트에 대한 정보는 콘텐트의 메타 데이터로서 콘텐트의 제목(title), 시놉시스(synopsis), 콘텐트 식별자(Content ID), 콘텐트 URL(Uniform Resource Locator) 등과 같은 정보를 포함할 수 있다. 복수의 미디어 데이터에 대한 정보는 각각의 미디어 데이터의 품질, 유형 및 식별자 등을 포함할 수 있는 바 이에 대해서는 도 4a, 4b 및 4c를 참조하여 상세히 설명한다.
클라이언트(140)는 콘텐트에 대한 정보 및 복수의 미디어 데이터에 대한 정보 중 적어도 하나를 수신하고, 이에 기초해 서버(120)에 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 요청한다. 클라이언트(130)는 스트리밍 환경을 추정(estimation)하고, 추정된 스트리밍 환경에 기초해 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 선택한다. 추정된 스트리밍 환경에서 적절한 QoS를 유지할 수 있는 적어도 하나의 미디어 데이터를 선택할 수 있다. 그러 다음, 클라이언트(130)는 선택된 적어도 하나의 미디어 데이터의 전송을 요청하는 HTTP 요청(request)을 서버(120)에 전송할 수 있다.
스트리밍 환경이 열화되어 높은 품질의 미디어 데이터를 수신하면, 끊임없이 미디어 데이터를 재생할 수 없는 경우에는 복수의 미디어 데이터 중 낮은 품질의 미디어 데이터를 요청하고, 스트리밍 환경이 개선되어 높은 품질의 미디어 데이터를 수신하여도, 끊임없이 미디어 데이터를 재생할 수 있는 경우에는 복수의 미디어 데이터 중 높은 품질의 미디어 데이터를 요청할 수 있다.
소정의 미디어 데이터를 수신하고 있는 도중에 다른 미디어 데이터를 전송할 것을 서버(120)에 요청할 수도 있다. 예를 들어, 스트리밍 환경이 열화된 상태에서 낮은 품질의 제1 미디어 데이터를 요청하여 수신하고 있던 클라이언트(130)는 스트리밍 환경이 개선됨에 따라 보다 높은 품질의 제2 미디어 데이터를 전송할 것을 서버(120)에 요청할 수 있다. 종래 기술에 따른 스트리밍 방법에 의하면, 서버(120)와 클라이언트(130)가 스트리밍 채널을 최초에 설정할 때, 품질을 한번 설정하면, 계속해서 동일한 품질로 미디어 데이터를 송수신하여야 했다. 그러나, 본원 발명에 따르면, 클라이언트(130)가 낮은 품질의 제1 미디어 데이터를 수신하던 중에도 동일한 콘텐트에 대한 보다 높은 품질의 제2 미디어 데이터를 다시 요청할 수 있어, 스트리밍 환경에 따른 적응적인 스트리밍이 가능해진다.
네트워크(140)의 대역폭 및 서버(120) 또는 클라이언트(130)의 사용 가능한 하드웨어 자원에 기초해 스트리밍 환경을 추정하는 다양한 방법들이 클라이언트(130)가 스트리밍 환경을 추정하는데 이용될 수 있다. 예를 들어, 클라이언트(130)는 수신되는 미디어 데이터의 타임 스탬프 및 BER(Bit Error Rate)에 기초해 스트리밍 환경을 추정할 수 있다. 수신되는 미디어 데이터의 타임 스탬프를 확인하여 미디어 데이터가 재생 속도보다 느린 속도로 수신되고 있으면, 스트리밍 환경이 열화되고 있는 것으로 판단할 수 있다. 또한, 수신되는 미디어 데이터의 BER이 높아져도 스트리밍 환경이 열화되고 있는 것으로 판단할 수 있다.
클라이언트(130)가 스트리밍 환경에 따라 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 전송할 것을 요청하면, 서버(120)는 요청된 미디어 데이터를 클라이언트(130)에 전송한다. HTTP 요청에 대한 HTTP 응답으로서 요청된 미디어 데이터를 클라이언트(130)에 전송할 수 있다.
복수의 미디어 데이터 각각은 콘텐트를 상이한 품질로 인코딩하고, 분할하여 생성된 복수의 부분 중 적어도 하나를 포함할 수 있다. 다시 말해, 인코딩 장치(110)의 인코딩 결과 생성된 복수의 미디어 데이터 각각은 시간에 기초해 분할된 적어도 하나의 부분들을 각각 포함할 수 있다. 서버(120)는 콘텐트를 하나의 스트림으로 인코딩하여 연속해서 전송하는 것이 아니라 복수의 부분으로 분할하여 각각 전송한다. 콘텐트를 10초 또는 20초와 같이 소정의 시간 단위로 콘텐트를 분할하여 복수의 부분을 생성할 수 있다. 분할의 기초가 되는 시간은 GOP(Group of Picture)에 기초해 설정될 수 있다. 하나 또는 둘 이상의 GOP의 픽처들에 대응되는 미디어 데이터를 하나의 부분으로 설정할 수 있다.
예를 들어, 두 종류의 품질로 콘텐트가 스트리밍 되는 경우, 제1 미디어 데이터는 콘텐트를 제1 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 적어도 하나의 부분을 포함할 수 있고, 제2 미디어 데이터는 콘텐트를 제2 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 적어도 하나의 부분을 포함할 수 있다.
복수의 미디어 데이터를 시간에 기초해 각각 분할함으로써, 전술한 적응적인 스트리밍이 가능해진다. 예를 들어, 스트리밍이 시작되면 서버(120)는 품질이 낮은 제1 미디어 데이터의 0초에서 20초에 해당하는 부분을 전송한다. 그런 다음, 20초 이후에 스트리밍 환경이 개선된 것으로 판단되어 클라이언트(130)가 보다 높은 품질의 미디어 데이터를 요청하면, 서버(120)는 보다 품질이 높은 제2 미디어 데이터의 20초에서 40초에 해당하는 부분을 전송할 수 있다. 미디어 데이터가 시간에 기초해 복수의 부분들로 분할되어 있기 때문에 스트리밍 도중에도 스트리밍 환경에 따라 상이한 미디어 데이터의 부분들을 전송할 수 있다.
도 2a는 본 발명의 일 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 2a를 참조하면, 단계 210에서 클라이언트(130)는 소정의 콘텐트에 대한 정보를 전송할 것을 서버(120)에 요청한다. 클라이언트(130)의 사용자가 클라이언트(130)의 화면에 표시된 사용자 인터페이스에서 소정의 콘텐트를 선택하면, 선택된 콘텐트에 대한 정보를 전송할 것을 서버(120)에 요청한다. 클라이언트(130)는 콘텐트에 대한 정보를 전송할 것을 요청하는 HTTP 요청을 서버(120)에 전송할 수 있다.
클라이언트(130)로부터 요청을 수신한 서버(120)는 클라이언트(130)에 콘텐트에 대한 정보를 전송한다. HTTP 요청에 대한 HTTP 응답으로서 콘텐트에 대한 정보를 클라이언트(130)에 전송할 수 있다. 콘텐트에 대한 정보는 OIPF(Open IPTV Forum) 표준에 따른 CAD(Content Access Descriptor)일 수 있다. 도 3을 참조하여 상세히 설명한다.
도 3은 본 발명의 일 실시예에 따른 콘텐트에 대한 정보를 포함하는 파일의 스키마(schema)를 도시한다. 콘텐트에 대한 정보를 포함하는 파일은 CAD로서 XML(eXtensible Markup Language) 파일일 수 있다. 이하 본 발명의 상세한 설명에서는 태그(tag) 및 속성(attribute)을 구분하여 설명하나, 본 발명의 상세한 설명에서 태그에 의해 정의되는 항목을 태그가 아닌 속성에 의해 정의하거나, 본 발명의 상세한 설명에서 속성에 의해 정의되는 항목을 속성이 아닌 태그에 의해 정의할 수 있음은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 쉽게 알 수 있다.
도 3을 참조하면, 콘텐트에 대한 정보는 "Title", "Synopsis", "OriginSite", "ContentURL" 태그 등을 포함할 수 있다.
종래 기술에 따른 미디어 데이터의 스트리밍은 하나의 콘텐트를 소정의 품질로 인코딩하여 하나의 미디어 데이터를 생성하므로, 종래 기술에 따른 콘텐트에 대한 정보(특히, OIPF에 따른 CAD)는 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하지 않는다.
그러나, 본 발명의 일 실시예에 따른 콘텐트에 대한 정보는 하나의 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 바, 도 3에 도시된 실시예의 "Tracks", "RefData" 및 "Fragments" 태그가 이에 해당한다.
도 4a는 본 발명의 일 실시예에 따른 복수의 미디어 데이터를 정의하기 위한 정보를 도시한다.
도 4a를 참조하면, "Tracks" 태그는 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터를 구분하기 위한 정보이다. "Tracks" 태그는 복수의 미디어 데이터 각각에 할당된 "ID" 속성(attribute), "Type" 속성 및 "Bitrate" 속성을 포함한다.
"ID" 속성은 미디어 데이터에 대해 순서대로 부여되는 식별자를 정의하고, "Type" 속성은 미디어 데이터의 오디오 데이터, 비디오 데이터, 비디오/오디오 데이터, 자막 데이터 중 어떤 데이터에 해당하는지를 정의한다. "Type" 속성이 "Packed"이면, 미디어 데이터가 비디오/오디오 데이터임을 나타내고, "Type" 속성이 "Video"이면, 미디어 데이터가 비디오 데이터임을 나타낸다. "Bitrate" 속성은 비디어 데이터의 인코딩에 이용된 비트율을 정의한다.
도 4b는 본 발명의 일 실시예에 따른 미디어 데이터의 헤더에 대한 정보를 도시한다.
도 4b를 참조하면, "RefData" 태그는 "Type" 속성 및 "ID" 속성을 포함한다. "Type" 속성은 헤더가 어떠한 미디어 포맷의 헤더인지 정의한다. 예를 들어, "Type" 속성이 "HEAD-TS"이면, 헤더가 전송 스트림(transport stream) 포맷의 헤더임을 나타낸다. "ID" 속성은 헤더가 복수의 미디어 데이터 중 어떤 미디어 데이터의 헤더인지 정의한다. "ID" 속성이 "1"이면, 미디어 데이터 식별자가 "1"인 미디어 데이터에 대한 헤더임을 나타낸다. 또한, "RefData" 태그는 헤더를 지시(pointing)하는 정보를 포함하는 바, "URL" 태그는 헤더의 위치 즉, URL을 정의한다.
"RefData" 태그는 선택적인 요소이다. 헤더가 미디어 데이터와 분리되어 별도의 파일로 존재하는 경우에만 콘텐트에 대한 정보에 "RefData" 태그가 포함되며, 미디어 데이터와 결합되어 존재하는 경우에는 콘텐트에 대한 정보에 "RefData" 태그가 포함되지 않을 수 있다.
도 4c는 본 발명의 일 실시예에 따른 복수의 미디어 데이터 각각에 포함된 적어도 하나의 부분들에 대한 정보를 포함한다.
도 4c를 참조하면, "Fragments" 태그의 하위 태그인 "Fragment" 태그에 복수의 미디어 데이터 각각에 포함된 적어도 하나의 부분에 대한 정보가 포함된다.
"Fragments" 태그는 "NextFragmentsXMLURL" 속성을 포함한다. 라이브 스트리밍과 같이 하나의 콘텐트 스트리밍이 완료되면, 다음 콘텐트가 이어서 스트리밍되는 경우에는 다음에 스트리밍될 콘텐트에 대한 정보를 클라이언트(130)가 미리 알아야, 끊임없이 콘텐트를 스트리밍할 수 있다. 따라서, "Fragments" 태그는 다음에 스트리밍될 콘텐트에 대한 정보를 "NextFragmentsXMLURL" 속성으로 정의한다. 다음에 스트리밍될 콘텐트에 대한 복수의 미디어 데이터의 URL이 "NextFragmentsXMLURL" 속성으로 정의될 수 있다.
"Fragment" 태그는 현재 스트리밍되는 콘텐트의 적어도 하나의 부분들에 대한 정보를 포함한다. 도 4c에 도시된 실시예를 예로 들어 설명하면, 제1 미디어 데이터로서 콘텐트를 제1 품질로 인코딩하여 생성된 첫 번째 부분인 "slice1-1.as"의 URL 정보가 "URL" 태그에 의해 정의되며, 대응되는 헤더의 식별자가 "RefPointer" 태그에 의해 정의된다. 또한, 첫 번째 부분의 시작 시간이 "StartTime" 속성에 의해 정의되며, 각각의 부분의 지속 시간이 "Duration" 속성에 의해 정의된다. 제1 미디어 데이터의 품질은 "BitRate" 속성에 의해 정의된다.
도 4c에 도시된 실시예에서는 "Fragments" 태그는 각각의 미디어 데이터가 하나의 부분만을 포함하는 경우를 도시하였다. 그러나, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 도 1과 관련하여 전술한 바와 같이 각각의 미디어 데이터가 복수의 부분으로 분할되는 경우, 하나의 "Fragments" 태그가 둘 이상의 부분에 대한 정보를 포함할 수 있음을 쉽게 알 수 있다.
다시 도 2a를 참조하면, 단계 220에서 클라이언트(130)는 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 전송할 것을 서버(120)에 요청한다. 복수의 미디어 데이터는 하나의 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터이다. 클라이언트(130)는 복수의 미디어 데이터 중에서 스트리밍 환경에 적합한 품질로 부호화된 적어도 하나의 미디어 데이터를 선택하여 서버(120)에 요청한다. 클라이언트(130)는 콘텐트에 대한 정보에 포함된 복수의 미디어 데이터에 대한 정보에 기초해 HTTP 요청을 서버(120)에 전송할 수 있다.
콘텐트에 대한 정보는 도 4c와 관련하여 전술한 바와 같이 "Fragments" 태그를 포함하고 있다. 따라서, 클라이언트(130)는 "Fragments" 태그에 포함된 URL 정보에 기초해 선택된 미디어 데이터의 전송을 서버(120)에 요청한다.
클라이언트(120)의 요청에 따라 서버(120)는 미디어 데이터를 전송한다. 요청된 미디어 데이터의 적어도 하나의 부분을 클라이언트(120)에 전송할 수 있다. HTTP 요청에 대한 HTTP 응답으로서 요청된 미디어 데이터를 클라이언트(120)에 전송할 수 있다.
도 2b는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다. 도 2b는 헤더가 미디어 데이터와 분리되어 별도의 파일로 존재하는 경우의 스트리밍 방법을 도시한다.
도 2b를 참조하면, 단계 212에서 클라이언트(130)는 소정의 콘텐트에 대한 정보를 전송할 것을 서버(120)에 요청하고, 서버(120)로부터 콘텐트에 대한 정보를 전송한다. 도 2a의 단계 210에 도시된다. 도 4b와 관련하여 전술한 "RefData" 태그를 포함하는 콘텐트에 대한 정보를 수신한다.
단계 222에서 클라이언트(130)는 단계 210에서 수신된 콘텐트에 대한 정보에 기초해 복수의 미디어 데이터 중 선택된 미디어 데이터의 헤더를 요청한다. 단계 212에서 수신된 콘텐트에 대한 정보에 기초해 복수의 미디어 데이터 중 스트리밍 환경에 적합한 적어도 하나의 미디어 데이터를 선택하고 선택된 미디어 데이터의 헤더를 요청한다. 단계 212에서 수신된 콘텐트에 대한 정보에 포함된 "RefData" 태그를 참조하여 선택된 미디어 데이터의 헤더를 요청한다.
서버(120)는 요청된 미디어 데이터의 헤더를 클라이언트(130)에 전송한다. 헤더 파일을 클라이언트(130)에 전송할 수 있으며, 헤더 파일은 XML 파일일 수 있다.
단계 232에서 클라이언트(130)는 단계 212에서 수신된 콘텐트에 대한 정보 및 단계 222에서 수신된 헤더에 기초해 선택된 미디어 데이터의 전송을 서버(120)에 요청한다. 미디어 데이터를 시간에 기초해 분할하여 생성된 적어도 하나의 부분을 전송할 것을 서버(130)에 요청하고, 서버(120)는 요청된 적어도 하나의 부분을 클라이언트(130)에 전송한다.
도 5a는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 5a를 참조하면, 단계 510에서 클라이언트(130)는 소정의 콘텐트에 대한 정보를 전송할 것을 서버(120)에 요청하고, 서버(120)로부터 콘텐트에 대한 정보를 전송한다. 소정의 콘텐트에 대한 정보를 전송할 것을 요청하는 HTTP 요청을 서버(120)에 전송하고, 이에 대한 HTTP 응답으로서 콘텐트에 대한 정보를 수신한다. 콘텐트에 대한 정보를 포함하는 XML 파일을 수신할 수 있다. 단계 510에서 클라이언트(130)가 수신하는 콘텐트에 대한 정보는 도 2의 단계 210에서 클라이언트(130)가 수신하는 콘텐트에 대한 정보와 상이한 바, 도 6 및 7을 참조하여 상세히 설명한다.
도 6은 본 발명의 또 다른 실시예에 따른 콘텐트에 대한 정보를 포함하는 파일의 스키마를 도시한다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 콘텐트에 대한 정보는 도 3과 동일하게 "Title", "Synopsis", "OriginSite", "ContentURL" 태그 등을 포함할 수 있다.
그러나, 도 3에 도시된 실시예에서는 콘텐트에 대한 정보가 "Tracks", "RefData" 및 "Fragments" 태그를 포함함으로써 복수의 미디어 데이터에 대한 정보도 함께 포함하는데 반해, 도 6에 도시된 실시예에서는 콘텐트에 대한 정보가 복수의 미디어 데이터에 대한 정보를 포함하는 것이 아니라, 복수의 미디어 데이터에 대한 정보를 포함하는 파일(이하, Media Presentation Description : '미디어 표현 기술'이라 한다.)의 URL만 정의하는 것이 상이하다. "ContentURL" 태그에 의해 미디어 표현 기술의 URL이 정의될 수 있다.
도 6에 도시된 바와 같이 종래 기술에 따른 다양한 콘텐트에 대한 정보 파일의 스키마를 크게 변경하지 않고, 미디어 표현 기술의 URL만 콘텐트에 대한 정보 파일에 삽입함으로써, 다양한 미디어 데이터 포맷과의 호환성을 유지하면서, 스트리밍 환경에 적응적인 스트리밍이 가능해진다.
도 6에 도시된 바에 따르면, 콘텐트에 대한 정보는 복수의 미디어 데이터에 대한 정보는 포함하지 않고, 스트리밍 방법과 관련된 정보만 포함할 수 있다. 다시 말해, "ContentURL" 태그는 스트리밍에 이용되는 미디어 데이터의 포맷을 정의하는 "MediaFormat" 속성, 미디어 데이터의 종류를 정의하는 "MIMEType" 속성 등을 포함할 수 있다.
특히, "ContentURL" 태그는 콘텐트의 스트리밍이 어떤 서비스와 관련되어 있는지 정의하는 "TransferType" 속성을 포함할 수 있다. "TransferType" 속성은 콘텐트의 스트리밍이 CoD(Content on Delivery) 서비스, 생중계(Live), 적응 스트리밍 생중계(Adaptive Streaming Live) 및 적응 스트리밍 CoD(Adaptive Streaming CoD) 중 어떠한 서비스와 관련되었는지 정의할 수 있다.
도 7은 본 발명의 또 다른 실시예에 따른 콘텐트에 대한 정보를 도시한다. 도 7은 OIPF 표준에 따른 CAD일 수 있다.
도 7을 참조하면, 도 6에 도시된 스키마에 따라 생성된 콘텐트에 대한 정보는 "ContentURL" 태그에 미디어 표현 기술의 URL이 정의될 수 있다. "http://asexample.com/vod/movies/18888/Meta/MainMeta.xml"이 미디어 표현 기술의 URL이다. 또한, 도 6과 관련하여 전술한 바와 같이 "MediaFormat" 속성, "MIMEType" 속성 및 "TransferType" 속성 등이 "ContentURL" 태그에 정의될 수 있다.
다시 도 5a를 참조하면, 단계 520에서 클라이언트(130)는 단계 510에서 수신된 콘텐트에 대한 정보에 기초해 복수의 미디어 데이터에 대한 정보를 서버(120)에 요청한다. 미디어 표현 기술을 HTTP 요청을 통해 서버(120)에 요청하고, HTTP 응답으로서 미디어 표현 기술을 수신할 수 있다.
단계 510에서 클라이언트(130)가 서버(120)로부터 수신한 콘텐트에 대한 정보는 도 6 및 7과 관련하여 전술한 바와 같이 미디어 표현 기술의 URL 정보를 포함할 수 있는 바, 클라이언트(130)는 콘텐트에 대한 정보의 "ContentURL" 태그를 참조하여 미디어 표현 기술을 서버(120)에 요청하고, 수신한다. 미디어 표현 기술에 대해 도 8a, 8b, 9a 내지 9g를 참조하여 상세히 설명한다.
도 8a 및 8b는 본 발명의 일 실시예에 따른 미디어 표현 기술의 스키마를 도시한다. 미디어 표현 기술은 OIPF 표준에 따른 미디어 표현 기술일 수 있다.
도 8a를 참조하면, 본 발명의 일 실시예에 따른 미디어 표현 기술은 복수의 미디어 데이터의 URL에 대한 템플릿(template) 태그, 헤더의 위치를 정의하기 위한 태그, 스트리밍이 어떠한 서비스와 관련되어 있는지 정의하기 위한 태그, 미디어 데이터 콘테이너(container) 포맷을 정의하기 위한 태그 및 복수의 미디어 데이터를 정의하기 위한 태그를 포함한다.
"urlTemplate" 태그는 복수의 미디어 데이터에 대한 URL 정보의 공통 부분을 정의한다. 예를 들어, "http://example.com/vod/movie/18888/Track/{TrackID}/Segments/{SegmentID}"가 URL 템플릿이라면, "TrackID" 및 "SegmentID"에 복수의 미디어 데이터 각각의 식별자 및 각각의 미디어 데이터에 포함된 적어도 하나의 부분의 식별자를 대입함으로써, 미디어 데이터에 대한 URL을 정의할 수 있다.
"headerUrl" 태그는 도 4b와 관련하여 전술한 "RefData" 태그에 대응된다. 다시 말해, 복수의 미디어 데이터의 헤더 URL을 정의한다.
"isLive" 태그는 스트리밍이 어떠한 서비스와 관련되어 있는지 정의하는 태그이다. 예를 들어, "isLive" 태그가 "Live"로 정의되면 스트리밍이 생방송 서비스와 관련되어있음을 나타내고, "isLive" 태그가 "CoD"로 정의되면 스트리밍이 CoD 서비스와 관련되어 있음을 나타낸다.
"contentType" 태그는 스트리밍에 이용되는 미디어 데이터의 콘테이너 포맷을 정의한다. 미디어 데이터의 콘테이너 포맷이 MP4 포맷인지 MPEG2-TS 포맷인지 나타내기 위한 정보일 수 있다. 본 발명의 상세한 설명에서는 미디어 데이터의 콘테이너 포맷이 MP4 포맷 또는 MPEG2-TS 포맷인 경우를 예로 들어 설명한다. 그러나, 콘테이너 포맷은 이에 한정되지 아니하며, 미디어 데이터의 전송을 위한 모든 콘테이너 포맷이 본 발명이 적용될 수 있음은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 쉽게 알 수 있다. 예를 들어, 상기 “contentType” 태그는 미디어 데이터의 콘테이너 포맷이 MMT(MPEG Media Transport) 표준에 따른 포맷임을 정의할 수도 있다.
"Stream" 태그는 복수의 미디어 데이터 각각에 대해 생성되며 복수의 미디어 데이터 각각을 정의한다. 하나의 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터 각각을 정의하기 위해, "streamName" 속성, "type" 속성, "bitrate" 속성, "startTime" 속성, "firstIntervalNum" 속성, "duration" 속성, 및 "intervalCount" 속성을 포함한다.
"streamName" 속성은 미디어 데이터의 명칭을 정의한다. 미디어 데이터의 식별자일 수 있다. "type" 속성은 미디어 데이터의 유형을 정의한다. 미디어 데이터가 오디오 데이터, 비디오 데이터 및 오디오/비디오 데이터 중 어떤 미디어의 데이터인지 정의한다. 미디어 데이터가 변속 재생(trick play)을 위해 I 프레임에 대한 데이터만 포함하는 경우에는 이에 대한 정보가 "type" 속성으로 정의될 수 있다.
"Bitrate" 속성은 미디어 데이터의 비트율을 정의하고, "startTime" 속성은 미디어 데이터의 시작 시간을 특정하는 타임 스탬프를 정의하며, "firstIntervalNum" 속성은 최초 시작되는 부분의 번호를 정의한다.
"duration" 속성은 미디어 데이터에 포함된 부분의 지속 시간을 정의하고, "intervalConunt" 속성은 미디어 데이터에 포함된 적어도 하나의 부분의 전체 개수를 정의한다.
"Segment" 태그는 "Stream" 태그의 하위 태그로서 미디어 데이터가 전술한 바와 같이 콘텐트를 소정의 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 적어도 하나의 부분이면, 이러한 적어도 하나의 부분 각각을 정의한다.
"IntNum" 속성은 부분의 번호를 정의하며, "StartTime"은 해당 부분의 시작 시간을 정의한다. "Duration"은 해당 부분의 지속 시간을 정의하며, "url"은 해당 부분의 URL 정보를 정의한다.
"Segment" 태그는 선택적인 태그로서, 미디어 데이터에 포함된 적어도 하나의 부분에 대한 정보가 "Stream" 태그의 다른 속성들로부터 유추될 수 있는 경우에는 미디어 표현 기술에 포함되지 않을 수 있다. 다시 말해, “Stream” 태그에 정의된 “startTime”, “firstIntervalNum”, “duration” 및 “intervalCount” 속성에 의해서 “Stream” 태그로부터 유추될 수 있는 경우에는 미디어 표현 기술에 포함되지 않을 수 있다. 또한, "urlTemplate" 태그에 소정의 템플릿이 정의되어 있고, 이렇게 정의된 템플릿에 복수의 미디어 데이터 각각의 식별자 및 각각의 미디어 데이터에 포함된 적어도 하나의 부분의 식별자를 대입함으로써 부분들의 URL 정보를 유추할 수 있으면, "Segment" 태그의 "url" 속성은 필요하지 않을 수 있다.
그러나, 반대로 "Stream" 태그의 다른 속성들로부터 “Segment”의 속성들이 유추될 수 없는 경우에는 “Segment”의 속성이 각각의 부분들에 대해 별도로 정의된다. 부분들의 지속 시간이 상이한 경우가 이러한 경우에 해당하는데 지속 시간이 상이하면, “Stream” 태그의 속성들로부터 미디어 데이터에 포함된 부분들의 지속 시간을 유추할 수 없으므로, “Segment” 태그의 “duration” 속성을 이용해 미디어 데이터의 지속 시간을 각각 설정해줄 수 있다. 부분들의 지속 시간이 상이해짐에 따라 연속된 부분들의 시작도 상이해진다. 예를 들어, 제1 미디어 데이터의 첫번째 부분의 지속 시간과 두번째 부분의 지속 시간이 상이하면, 두번째 부분의 시작 시각과 세번째 부분의 시작 시각은 “Stream” 태그로부터 유추할 수 없다. 따라서, 각각의 부분에 대한 시작 시각도 “startTime” 속성으로 정의할 수 있다.
“Segment” 태그의 “duration” 속성 및 “startTime” 속성이 아닌 “Segment” 태그의 하위 태그를 이용해 지속 시간 및/또는 시작 시각을 정의할 수도 있다. 예를 들어, “Segment” 태그의 하위 태그인 “Url” 태그를 설정하고, “Url” 태그의 속성으로서 지속 시간을 정의할 수 있는 바, “<Url = www.example.com/~/segment.ts, duration= 10/>와 같이 Url 태그의 속성으로서 지속 시간을 정의할 수 있다.
또한, 본 발명의 또 다른 실시예에 따르면, 연속된 부분들의 지속 시간의 차이에 기초해 지속 시간을 정의할 수도 있다. 상위 태그에서 디폴트 지속 시간을 정의하고, 하위 태그인 “Url” 태그에서는 디폴트 지속 시간과 부분의 실제 지속 시간 사이의 차이만 각각의 부분에 대해서 정의할 수 있다. 전술한 바와 같이 “Segment” 태그의 하위 태그인 “Url” 태그를 “<Url = www.example.com/~/segment.ts, duration=difference/>”와 같이 정의할 수 있다. “difference”는 디폴트 지속 시간과 실제 지속 시간 사이의 차이를 의미한다.
“Stream” 태그 또는 “Segment” 태그를 이용해 해당 부분의 디폴트 지속 시간을 10분으로 정의하고, 하위 태그인 “Url” 태그가 “<Url = www.example.com/~/segment.ts, duration=2/>”로 정의되었다면, 해당 부분의 지속 시간은 10+2=12분으로 정의될 수 있다.
도 8b를 참조하면, 본 발명의 또 다른 실시예에 따른 미디어 표현 기술은 "nextManifestURL" 태그를 더 포함할 수 있다. 전술한 바와 같이 라이브 스트리밍 또는 광고의 삽입과 같이 하나의 콘텐트 스트리밍이 완료되면, 다음 콘텐트가 이어서 스트리밍되는 경우에는 다음에 스트리밍될 콘텐트에 대한 정보를 클라이언트(130)가 미리 알아야, 끊임없이 콘텐트를 스트리밍할 수 있으므로, 현재 스트리밍 중인 콘텐트 다음에 스트리밍될 콘텐트의 미디어 표현 기술의 URL 정보가 "nextManifestURL" 태그에 의해 정의될 수 있다.
도 9a 내지 9h는 본원 발명의 일 실시예에 따른 미디어 표현 기술을 도시한다.
도 9a를 참조하면, 본 발명의 일 실시예에 따른 미디어 표현 기술은 "URLTemplate" 태그 , "RefDataURL" 태그 및 복수의 미디어 데이터 각각을 정의하는 복수의 태그를 포함한다.
"URLTemplate" 태그 및 "RefDataURL" 태그는 각각 도 8a 및 8b의 "urlTemplate" 태그 및 "RefDataURL" 태그에 대응된다.
"ID" 속성, "Type" 속성, "BitRate" 속성, "StartTime" 속성, "SegmentDuration" 속성, "SegmentStartID" 속성 및 "SegmentCount" 속성은 각각 도 8a 및 8b의 "streamName" 속성, "type" 속성, "bitrate" 속성, "startTime" 속성, "Stream" 태그의 "duration" 속성, "Stream" 태그의 "firstIntervalNum" 속성 및 "intervalCount" 속성에 대응된다.
도 9a에 도시된 미디어 표현 기술은 콘텐트를 상이한 품질로 생성된 세 가지의 비디오 데이터, 하나의 오디오 데이터 및 변속 재생을 위해 I 프레임들만 인코딩하여 생성된 미디어 데이터에 대한 정보를 포함한다.
도 9b를 참조하면, 본 발명의 일 실시예에 따른 미디어 표현 기술은 "NextAdaptiveControlURL" 태그를 더 포함한다. "NextAdaptiveControlURL" 태그는 도 8b의 "nextManifestURL" 태그에 대응된다. 따라서, 현재 재생 중인 콘텐트 다음에 이어서 재생할 콘텐트의 미디어 표현 기술의 URL이 "NextAdaptiveControlURL" 태그에 의해 정의될 수 있다.
도 9c는 현재 재생 중인 콘텐트에 이어서 재생할 콘텐트의 미디어 표현 기술의 URL이 도 9b의 "NextAdaptiveControlURL" 태그에 의해 정의되었을 때, 다음에 이어서 재생할 콘텐트의 미디어 표현 기술을 도시한다. 도 9b의 미디어 표현 기술과 비교하면, 도 9c는 다음에 이어서 재생될 콘텐트의 미디어 표현 기술이므로, "StartTime" 속성의 현재 재생 중인 콘텐트의 미디어 표현 기술과 상이하다.
도 9d 및 9e는 사용자의 고화질 비디오 재생을 선택적으로 제어하기 위한 미디어 표현 기술을 도시한다. 하나의 콘텐트를 5가지의 상이한 품질로 인코딩하여 복수의 미디어 데이터가 생성될 수 있고, 도 9d는 이 경우 미디어 표현 기술을 도시한다. 그러나, 도 9e에 도시된 미디어 표현 기술에서 높은 품질로 인코딩된 비디오에 대한 정보를 포함하고 있는 태그 즉, "ID" 속성이 "5"인 미디어 데이터의 "StartTime" 속성 및 "SegmentCount" 속성이 도 9d의 미디어 표현 기술과 상이하다.
서버(120)는 클라이언트(130)의 사용자 등급에 따라 도 9d의 미디어 표현 기술 또는 도 9e의 미디어 표현 기술을 선택적으로 전송할 수 있다. 클라이언트(130)의 사용자 등급이 높은 경우(예를 들어, 클라이언트(130)가 유료 사용자인 경우)에는 도 9d의 미디어 표현 기술을 전송함으로써 높은 품질의 비디오도 자유롭게 재생하게 하고, 클라이언트(130)의 사용자 등급이 낮은 경우(예를 들어, 클라이언트(130)가 무료 사용자인 경우)에는 도 9e의 미디어 표현 기술을 전송함으로써 높은 품질의 비디오는 "StartTime" 속성에 의해 정의된 시간에서부터 "SegmentCount" 속성에 의해 정의된 부분들만 재생할 수 있게 한다.
도 9f는 콘텐트에 광고가 삽입되는 경우의 미디어 표현 기술을 도시한다. 도 9f를 참조하면, 미디어 표현 기술은 "StartTime" 속성이 상이한 광고 콘텐트 및 메인 콘텐트에 대한 정보를 포함할 수 있다. 미디어 표현 기술은 "00:00:00"부터 "00:02:00"까지 재생되는 비트율이 "500000"인 광고 콘텐트에 대한 정보 및 "00:02:00"부터 재생되는 비트율이 "1000000", "2000000", "3000000" 및 "4000000"인 메인 콘텐트에 대한 정보를 포함할 수 있다. 서버(120)가 광고 콘텐트를 하나의 비트율에 의해 인코딩하여 클라이언트(130)에 제공하고, 광고 콘텐트와 "StartTime" 속성을 달리하는 메인 콘텐트는 네가지의 상이한 비트율에 의해 인코딩하여 클라이언트(130)에 제공하는 경우, 도 9f의 미디어 표현 기술이 서버(120)로부터 클라이언트(130)에 전송될 수 있다.
도 9g는 본 발명의 일 실시예에 따른 광고 콘텐트에 대한 정보를 포함하는 미디어 표현 기술을 도시한다. 메인 콘텐트를 제공하는 서버와 광고 콘텐트를 제공하는 서버가 상이할 수 있다. 다시 말해, 클라이언트(130)가 메인 콘텐트는 도 5a의 서버(120)로부터 제공받고, 광고 콘텐트는 도 5a의 서버(120)가 아닌 다른 서버로부터 수신하는 경우, 광고 콘텐트에 대한 정보를 포함하는 미디어 표현 기술은 광고 콘텐트의 URL 정보를 포함할 수 있다. 도 9g에 도시된 바와 같이 하나의 품질로 부호화된 광고 콘텐트의 URL 정보가 미디어 표현 기술에 포함될 수 있다.
도 9h는 본 발명의 일 실시예에 따른 언어 정보 및 자막 정보를 포함하는 미디어 표현 기술을 도시한다. 도 9h를 참조하면, 오디오 데이터는 다중 언어에 대한 정보를 포함할 수 있다. "ID" 속성이 "4" 및 "5"인 다중 언어의 오디오 데이터에 대한 정보가 미디어 표현 기술에 포함될 수 있으며, "ID" 속성이 "6" 및 "7"인 다중 언어의 자막에 대한 정보가 미디어 표현 기술에 포함될 수 있다.
오디오 데이터는 물론 자막도 시간에 따라 복수의 부분으로 분할될 수 있으므로, 스트리밍 도중에 오디오 데이터 및 자막을 상이한 언어의 오디오 데이터 및 자막으로 변경할 수 있다.
다시 도 5a를 참조하면, 단계 530에서 클라이언트(130)는 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 전송할 것을 서버(120)에 요청한다. 클라이언트(130)는 복수의 미디어 데이터에 대한 정보를 참조하여 스트리밍 환경에 적합한 품질로 부호화된 적어도 하나의 미디어 데이터를 선택하여 서버(120)에 요청한다. 클라이언트(130)는 소정의 미디어 데이터를 전송할 것을 요청하는 HTTP 요청을 서버(120)에 전송할 수 있다. 클라이언트(120)의 요청에 따라 서버(120)는 미디어 데이터를 전송한다. 콘텐트를 소정의 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 적어도 하나의 부분을 클라이언트(120)에 전송할 수 있다. HTTP 요청에 대한 HTTP 응답으로서 요청된 미디어 데이터를 클라이언트(120)에 전송할 수 있다.
도 5b는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 5b를 참조하면, 단계 512에서 클라이언트(130)는 소정의 콘텐트에 대한 정보를 전송할 것을 서버(120)에 요청하고, 서버(120)로부터 콘텐트에 대한 정보를 전송한다. 소정의 콘텐트에 대한 정보를 전송할 것을 요청하는 HTTP 요청을 서버(120)에 전송하고, 이에 대한 HTTP 응답으로서 콘텐트에 대한 정보를 수신한다. 콘텐트에 대한 정보를 포함하는 XML 파일을 수신할 수 있다.
단계 522에서 클라이언트(130)는 단계 512에서 수신된 콘텐트에 대한 정보에 기초해 복수의 미디어 데이터에 대한 정보를 서버(120)에 요청한다. 미디어 표현 기술을 HTTP 요청을 통해 서버(120)에 요청하고, HTTP 응답으로서 미디어 표현 기술을 수신할 수 있다.
단계 532에서 클라이언트(130)는 단계 522에서 수신된 복수의 미디어 데이터에 대한 정보에 기초해 선택된 미디어 데이터의 헤더를 요청한다. 단계 522에서 수신된 정보에 기초해 복수의 미디어 데이터 중 스트리밍 환경에 적합한 적어도 하나의 미디어 데이터를 선택하고 선택된 미디어 데이터의 헤더를 요청한다. 단계 522에서 수신된 복수의 미디어 데이터에 대한 정보를 참조하여 선택된 미디어 데이터의 헤더를 요청한다. 서버(120)는 요청에 대한 응답으로, 선택된 미디어 데이터의 헤더 파일을 클라이언트(130)에 전송한다.
단계 542에서 클라이언트(130)는 단계 522에서 수신된 복수의 미디어 데이터에 대한 정보 및 단계 222에서 수신된 헤더에 기초해 선택된 미디어 데이터의 전송을 서버(120)에 요청한다. 콘텐트를 소정의 비율로 인코딩하고, 시간에 기초해 분할하여 생성된 적어도 하나의 부분을 전송할 것을 서버(130)에 요청하고, 서버(120)는 요청된 적어도 하나의 부분을 클라이언트(130)에 전송한다.
도 10a 내지 10c는 본 발명의 일 실시예에 따른 복수의 미디어 데이터를 도시한다. 도 10a 내지 10c는 도 5a 및 5b에 따른 스트리밍 방법을 수행하기 위해 서버(120)가 보유하는 복수의 미디어 데이터를 도시한다.
도 10a를 참조하면, 스트리밍 환경에 적응적인 스트리밍을 위해 서버(120)는 하나의 콘텐트를 복수의 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터(1010 내지 1030)를 보유할 수 있다. "Track1", "Track2", ... , "TrackN"이 복수의 미디어 데이터이다. 또한, 각각의 미디어 데이터는 각각의 미디어 데이터를 시간에 기초해 분할하여 생성된 적어도 하나의 부분들을 포함할 수 있다. "Slice1-1.as", "Slice1-2.as", "Slice1-3.as", "Slice2-1.as", "Slice2-2.as", "Slice2-3.as", "SliceN-1.as", "SliceN-2.as", "SliceN-3.as" 등이 적어도 하나의 부분들이다.
또한, 서버(120)는 클라이언트(130)가 복수의 미디어 데이터에 액세스하기 위해 필요한 정보(1040)를 보유할 수 있다. 콘텐트에 대한 정보로서 "CadMeta.xml" 파일, 복수의 미디어 데이터에 대한 정보로서 "MainMeta.xml" 파일을 보유할 수 있고, 복수의 미디어 데이터의 헤더로서 "Head1.ref", "Head2.ref" 파일 등을 보유할 수 있다. “Head1.ref”는 “Track1”의 헤더 파일일 수 있고, “Head2,ref”는 “Track2”의 헤더 파일 일 수 있다.
"CadMeta.xml"은 OIPF 표준에 따른 CAD 파일일 수 있고, "MainMeta.xml"은 전술한 미디어 표현 기술일 수 있다. 또한, "Head1.ref", "Head2.ref" 파일은 선택적인 요소로서, 헤더가 복수의 미디어 데이터(1010 내지 1030)에 포함되어 있는 경우에는 존재하지 않을 수 있다.
도 10b를 참조하면, 클라이언트(130)가 복수의 미디어 데이터에 액세스하기 위해 필요한 정보(1042)는 "NextMeta.xml"을 더 포함할 수 있다. 전술한 바와 같이 "NextMeta.xml"은 현재 재생 중인 콘텐트에 이어서 재생될 다음 콘텐트의 미디어 표현 기술일 수 있다. 전술한 바와 같이 현재 재생 중인 미디어 표현 기술 즉, "MainMeta.xml" 파일은 이어서 재생할 콘텐트의 미디어 표현 기술의 URL 정보를 포함하고 있는 바, 이에 기초해 클라이언트(130)는 "NextMeta.xml" 파일에 액세스 할 수 있다.
도 10c를 참조하면, 복수의 미디어 데이터의 헤더는 하나의 파일(1050)로 존재할 수 있다. 헤더 파일이 복수의 미디어 데이터 각각에 대해 복수로 존재하는 것이 아니라 하나의 헤더 파일(1050)로서 복수의 미디어 데이터에 액세스하기 위해 필요한 정보(1044)에 포함될 수 있다.
예를 들어, 복수의 미디어 데이터 각각이 엘리멘터리 스트림(elementary stream)(예를 들어, MPEG-2에 따른 엘리멘터리 스트림)에 대응될 때, 복수의 미디어 데이터의 헤더는 PAT(Program Association Table) 및 PMT(Program Map Table) 중 적어도 하나를 포함하는 하나의 헤더 파일(1050)일 수 있다. PAT 및 PMT 중 적어도 하나를 복수의 미디어 데이터(1010 내지 1030)와 분리하여 하나의 헤더 파일(1050)을 만들고, 미디어 표현 기술은 이 헤더 파일(1050)를 지시(pointing)하는 정보를 포함할 수 있다. 지시 정보는 헤더 파일(1050)의 URL 정보일 수도 있고, MPEG-2 전송 스트림(transport stream)에서 헤더 파일(1050)를 포함하고 있는 패킷을 특정하기 위한 정보일 수도 있다. PAT 및 PMT 중 적어도 하나를 포함하는 헤더 파일(1050)는 초기화 부분(initialization segment)로서 미디어 데이터의 재생을 개시하기 위해 페이로드 데이터를 포함하고 있는 부분들보다 먼저 클라이언트(130)에 전송될 수 있다.
전술한 단계 532에서 클라이언트(130)는 미디어 표현 기술을 참조하여 헤더 파일(1050)에 대한 지시 정보를 획득하고, 지시 정보에 기초해 헤더 파일(1050)을 요청할 수 있다. 지시 정보에 기초해 헤더 파일(1050)을 요청하고 수신한 다음, 헤더 파일(1050)에 포함되어 있는 PAT 및 PMT 중 적어도 하나에 기초해 복수의 미디어 데이터 중 적어도 하나를 선택하고, 선택된 미디어 데이터를 서버(120)에 요청한다. PAT 및 PMT는 헤더 파일(1050)로 분리되어 있을 수도 있고, 복수의 미디어 데이터(1010 내지 1030)에 포함되어 있을 수도 있으나, 포함된 위치와 무관하게 복수의 미디어 데이터(1010 내지 1030)에 포함된 엘리멘터리 스트림의 전체 리스트를 포함한다.
MPEG-2에 따르면, PAT 및 PMT에서 정의되는 PID(Packet ID)는 엘리멘터리 스트림에 따라 상이하다. 따라서, 복수의 미디어 데이터 각각에 할당되는 PID는 상이할 수 있다. 그러나, 또 다른 실시예에 따르면, 하나의 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터는 동일한 콘텐트에 대한 엘리멘터리 스트림들이므로, PID가 동일하게 설정될 수도 있다
복수의 미디어 데이터(1010 내지 1030)가 MPEG-2에 따른 복수의 엘리멘터리 스트림에 대응되는 경우 복수의 미디어 데이터(1010 내지 1030)에 포함된 부분들 각각은 적어도 하나의 연속된 PES(Packetized Elementary Stream)을 포함할 수 있다. 그러나, 하나의 PES는 하나의 부분에만 포함된다. 다시 말해, 하나의 PES가 상이한 부분에 포함될 수 없다.
복수의 미디어 데이터는 하나의 콘텐트를 상이한 품질로 인코딩하여 생성된 것이므로, 복수의 미디어 데이터 포함된 PES의 PTS(Presentation Time Stamp) 및/또는 DTS(Decoding Time Stamp)는 미디어 데이터의 재생시간에 따라 정렬(aligned)될 수 있다. 다시 말해, 제1 미디어 데이터의 최초 PES와 제2 미디어 데이터의 최초 PES가 동일한 시간에 재생되는 콘텐트라면, PTS 및/또는 DTS가 동일하게 설정될 수 있다.
또한, 제1 미디어 데이터를 재생하던 중 재생되는 미디어 데이터를 변경하여 제2 미디어 데이터 재생하는 경우에도 연속적으로 재생될 수 있도록 PTS 및/또는 DTS도 연속적으로 정렬될 수 있다. 다시 말해, 제1 미디어 데이터의 재생하던 중 미디어 데이터를 변경하여 제2 미디어 데이터의 재생하는 경우에는 제1 미디어 데이터의 마지막 PES의 PTS 및/또는 DTS와 제2 미디어 데이터의 최초 PES의 PTS 및/또는 DTS가 연속적으로 설정될 수 있다.
전술한 PTS 및/또는 DTS는 비디오 데이터의 타임 스탬프를 정의한다. 따라서, 비디오 데이터에 대한 복수의 미디어 데이터의 타임 스탬프는 전술한 바와 같이 미디어 데이터의 재생시간에 따라 정렬(aligned)된다. 그러나, 이러한 재생 시간에 기초한 타임 스탬프의 정렬은 오디오 데이터에 대해서도 동일하게 적용될 수 있다. 다시 말해, 오디오 데이터에 대한 복수의 미디어 데이터의 타임 스탬프도 비디오 데이터에 대한 복수의 미디어 데이터와 마찬가지로 재생 시간에 기초해 적응적인 스트리밍이 가능하도록 재생 시간에 따라 정렬될 수 있다.
도 11a는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 11a를 참조하면, 단계 1110에서 클라이언트(130)는 복수의 미디어 데이터에 대한 정보를 서버(120)에 요청한다. 미디어 표현 기술을 HTTP 요청을 통해 서버(120)에 요청하고, HTTP 응답으로서 미디어 표현 기술을 수신할 수 있다. 클라이언트(130)는 스트리밍 환경에 적응적인 스트리밍을 수행하기 위해 하나의 콘텐트를 복수의 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 서버(120)에 요청하고, 수신한다. 콘텐트에 대한 정보의 요청 및 수신없이 복수의 미디어 데이터에 대한 정보의 요청 및 수신이 수행된다는 점이 도 5a에 도시된 실시예와 상이하다.
단계 1120에서 클라이언트(130)는 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 전송할 것을 서버(120)에 요청한다. 클라이언트(130)는 복수의 미디어 데이터에 대한 정보를 참조하여 스트리밍 환경에 적합한 품질로 부호화된 적어도 하나의 미디어 데이터를 선택하여 서버(120)에 요청하고, 요청된 미디어 데이터를 서버(120)로부터 수신한다.
도 11b는 본 발명의 또 다른 실시예에 따른 스트리밍 방법을 설명하기 위한 흐름도이다.
도 11b를 참조하면, 단계 1112에서 클라이언트(130)는 복수의 미디어 데이터에 대한 정보를 서버(120)에 요청하고, 요청에 대한 응답으로 복수의 미디어 데이터에 대한 정보를 서버(120)로부터 수신한다. 미디어 표현 기술을 HTTP 요청을 통해 서버(120)에 요청하고, HTTP 응답으로서 미디어 표현 기술을 수신할 수 있다.
단계 1122에서 클라이언트(130)는 단계 1112에서 수신된 복수의 미디어 데이터에 대한 정보에 기초해 선택된 미디어 데이터의 헤더를 요청한다. 단계 522에서 수신된 복수의 미디어 데이터에 대한 정보를 참조하여 스트리밍 환경에 따라 선택된 미디어 데이터의 헤더를 요청한다. 서버(120)는 요청에 대한 응답으로, 선택된 미디어 데이터의 헤더를 포함하는 파일을 클라이언트(130)에 전송한다.
단계 1132에서 클라이언트(130)는 단계 1112에서 수신된 복수의 미디어 데이터에 대한 정보 및 단계 1122에서 수신된 헤더에 기초해 선택된 미디어 데이터의 전송을 서버(120)에 요청한다. 콘텐트를 소정의 비율로 인코딩하고, 시간에 기초해 분할하여 생성된 적어도 하나의 부분을 전송할 것을 서버(130)에 요청하고, 서버(120)는 요청된 적어도 하나의 부분을 클라이언트(130)에 전송한다.
도 12a 내지 12c는 본 발명의 또 다른 실시예에 따른 복수의 미디어 데이터를 도시한다. 도 12a 및 12b는 도 11a 및 11b에 따른 스트리밍 방법을 수행하기 위해 서버(120)가 보유하는 복수의 미디어 데이터를 도시한다.
도 12a를 참조하면, 도 10a에 도시된 실시예와 마찬가지로 스트리밍 환경에 적응적인 스트리밍을 위해 서버(120)는 하나의 콘텐트를 복수의 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터(1010 내지 1030)를 보유할 수 있다.
클라이언트(130)가 복수의 미디어 데이터에 액세스하기 위해 필요한 정보(1240)만 상이한 바, 도 10a에 도시된 실시예와 달리 서버(120)는 콘텐트에 대한 정보를 제외한 복수의 미디어 데이터에 대한 정보만 포함할 수 있다. 이 경우, 클라이언트(130)는 콘텐트에 대한 정보를 서버(120)가 아닌 다른 엔티티로부터 수신하고, 콘텐트에 대한 정보에 기초해 서버(120)가 보유하고 있는 복수의 미디어 데이터에 액세스할 수도 있다.
도 12b를 참조하면, 클라이언트(130)가 복수의 미디어 데이터에 액세스하기 위해 필요한 정보(1242)는 도 12a의 정보(1240)에 "NextMeta.xml"을 더 포함할 수 있다.
도 12c를 참조하면, 복수의 미디어 데이터의 헤더는 하나의 파일(1250)로 존재할 수 있다. 헤더 파일이 복수의 미디어 데이터 각각에 대해 복수로 존재하는 것이 아니라 하나의 헤더 파일(1250)로서 복수의 미디어 데이터에 액세스하기 위해 필요한 정보(1244)에 포함될 수 있다. 헤더 파일은 도 10c의 헤더 파일(1050)에 대응되며, 도 10c의 헤더 파일(1050)은 도 15b, 17b 및 17c와 관련하여 전술한 "Reference Data"에 대응될 수 있음은 도 10c와 관련하여 전술하였다.
도 13은 본 발명의 일 실시예에 따른 서버의 미디어 데이터 전송 장치를 도시한다.
도 13을 참조하면, 본 발명의 일 실시예에 따른 서버(120)의 미디어 데이터 전송 장치(1300)는 정보전송부(1310) 및 미디어데이터전송부(1320)를 포함한다.
정보전송부(1310)는 클라이언트(130)로부터 소정 정보의 전송 요청을 수신하고 이에 대한 응답으로 요청된 정보를 전송한다. 콘텐트에 대한 정보 및 복수의 미디어 데이터에 대한 정보 중 적어도 하나의 전송 요청을 클라이언트(130)로부터 수신하고, 요청된 정보를 클라이언트(130)에 전송한다. 도 2a, 2b, 5a, 5b, 11a 및 11b에 도시된 실시예에 따라 콘텐트에 대한 정보 및 복수의 미디어 데이터에 대한 정보 중 적어도 하나의 전송을 요청하는 HTTP 요청을 클라이언트(130)로부터 수신하고, HTTP 응답으로서 요청된 정보를 전송한다.
미디어데이터전송부(1320)는 복수의 미디어 데이터 중 스트리밍 환경에 따라 선택된 적어도 하나의 미디어 데이터의 전송 요청을 클라이언트(130)로부터 수신하고, 요청된 미디어 데이터를 클라이언트(1320)에 전송한다. 정보전송부(1310)가 클라이언트(130)에 전송한 복수의 미디어 데이터에 대한 정보에 기초해 선택된 미디어 데이터의 전송 요청을 수신한다. 서버(120)는 인코딩장치(110)로부터 상이한 품질로 인코딩된 복수의 미디어 데이터를 수신하여 보유하고 있다가, 요청된 미디어 데이터를 클라이언트(130)에 전송할 수도 있다. 또한, 클라이언트(130)의 전송 요청에 따라 실시간으로 인코딩 장치(110)로부터 미디어 데이터를 수신하여 클라이언트(130)에 전달할 수도 있다.
도 14는 본 발명의 일 실시예에 따른 클라이언트의 미디어 데이터 수신 장치를 도시한다.
도 14를 참조하면, 본 발명의 일 실시예에 따른 클라이언트(130)의 미디어 데이터 수신 장치(1400)는 정보수신부(1410) 및 미디어데이터수신부(1420)를 포함한다.
정보수신부(1410)는 소정 정보의 전송 요청을 서버(120)에 전송하고, 이에 대한 응답으로 요청된 정보를 서버(120)로부터 수신한다. 콘텐트에 대한 정보 및 복수의 미디어 데이터에 대한 정보 중 적어도 하나의 전송 요청을 서버(120)에 전송하고, 요청된 정보를 수신한다. 도 2a, 2b, 5a, 5b, 11a 및 11b에 도시된 실시예에 따라 콘텐트에 대한 정보 및 복수의 미디어 데이터에 대한 정보 중 적어도 하나의 전송을 요청하는 HTTP 요청을 서버(120)에 전송하고, HTTP 응답으로서 요청된 정보를 수신한다.
미디어데이터수신부(1420)는 복수의 미디어 데이터 중 스트리밍 환경에 따라 선택된 적어도 하나의 미디어 데이터의 전송 요청을 서버(120)에 전송하고, 요청된 미디어 데이터를 클라이언트(1320)로부터 수신한다. 정보수신부(1410)가 서버(120)로부터 수신한 복수의 미디어 데이터에 대한 정보에 기초해 스트리밍 환경에 따라 선택된 미디어 데이터의 전송 요청을 전송한다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다.
예를 들어, 본 발명의 예시적인 실시예에 따른 서버의 스트리밍 장치 및 클라이언트의 스트리밍 장치는 도 13 및 도 14에 도시된 바와 같은 장치의 각각의 유닛들에 커플링된 버스, 상기 버스에 결합된 적어도 하나의 프로세서를 포함할 수 있다. 또한, 명령, 수신된 메시지 또는 생성된 메시지를 저장하기 위해 상기 버스에 결합되어, 전술한 바와 같은 명령들을 수행하기 위한 적어도 하나의 프로세서에 커플링된 메모리를 포함할 수 있다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등을 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.

Claims (32)

  1. 소정의 콘텐트에 대한 정보를 포함하는 제1 파일을 서버로부터 수신하는 단계;
    상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 제1 파일에 기초해 서버로부터 수신하는 단계; 및
    상기 제2 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 수신하는 단계를 포함하고,
    상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  2. 제 1 항에 있어서, 상기 제2 파일의 위치에 대한 정보는
    상기 제2 파일의 URL(Uniform Resource Locator) 정보인 것을 특징으로 하는 미디어 데이터 수신 방법.
  3. 제 2 항에 있어서, 상기 제2 파일을 상기 제1 파일에 기초해 서버로부터 수신하는 단계는
    상기 제2 파일의 URL 정보에 기초해 상기 제2 파일의 전송을 요청하는 HTTP(Hypertext Transfer Protocol) 요청 메시지를 상기 서버에 전송하는 단계; 및
    상기 요청 메시지에 대한 응답으로 상기 제2 파일을 포함하는 HTTP 응답 메시지를 상기 서버로부터 수신하는 단계를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  4. 제 1 항에 있어서, 상기 복수의 미디어 데이터는
    상기 콘텐트를 소정 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 복수의 부분 중 적어도 하나를 각각 포함하는 것을 특징으로 미디어 데이터 수신 방법.
  5. 제 4 항에 있어서, 상기 제2 파일은
    상기 복수의 부분의 URL에 대한 템플릿(template) 및 미디어 데이터의 포맷 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  6. 제 5 항에 있어서, 상기 제2 파일은
    상기 복수의 미디어 데이터의 헤더를 지시하는 정보를 더 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  7. 제 6 항에 있어서,
    상기 복수의 미디어 데이터는 복수의 엘리멘터리 스트림에 각각 대응되고,
    상기 복수의 미디어 데이터의 헤더는 상기 복수의 엘리멘터리 스트림에 대한 PAT(Program Association Table) 및 PMT (Program Map Table)중 적어도 하나를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  8. 제 7 항에 있어서, 상기 PAT 및 PMT 중 적어도 하나는
    상기 복수의 미디어 데이터의 전체 리스트를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  9. 제 7 항에 있어서, 상기 복수의 미디어 데이터는
    PID(packet ID)가 상이한 것을 특징으로 하는 미디어 데이터 수신 방법.
  10. 제 7 항에 있어서, 상기 적어도 하나의 부분은
    적어도 하나의 PES(Packetized Elementary Stream)를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  11. 제 7 항에 있어서, 상기 복수의 미디어 데이터 중 서로 다른 미디어 데이터에 포함된 PES의 PTS(Presentation Time Stamp) 및 DTS(Decoding Time Stamp)는 미디어 데이터의 재생시간에 따라 정렬(aligned)되는 것을 특징으로 하는 미디어 데이터 수신 방법.
  12. 제 5 항에 있어서, 상기 제2 파일은
    상기 콘텐트 이후 수신할 콘텐트를 상이한 품질로 인코딩하여 생성된 또 다른 복수의 미디어 데이터에 대한 정보를 포함하는 제3 파일에 대한 정보를 더 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  13. 제 4 항에 있어서, 상기 제2 파일은
    상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  14. 제 5 항에 있어서, 상기 제2 파일은
    상기 복수의 미디어 데이터 중 적어도 하나를 수신하는 사용자의 등급에 따라 상이한 것을 특징으로 하는 미디어 데이터 수신 방법.
  15. 소정 콘텐트에 대한 정보를 포함하는 제1 파일을 클라이언트에 전송하는 단계;
    상기 제1 파일에 기초한 상기 클라이언트의 요청에 따라 전송하는 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 클라이언트에 전송하는 단계; 및
    상기 제2 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 단계를 포함하고,
    상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  16. 제 15 항에 있어서, 상기 제2 파일의 위치에 대한 정보는
    상기 제2 파일의 URL(Uniform Resource Locator) 정보인 것을 특징으로 하는 미디어 데이터 전송 방법.
  17. 제 16 항에 있어서, 상기 제2 파일을 상기 클라이언트에 전송하는 단계는
    상기 제2 파일의 URL 정보에 기초해 상기 클라이언트가 전송하는 상기 제2 파일의 전송을 요청하는 HTTP(Hypertext Transfer Protocol) 요청 메시지를 수신하는 단계; 및
    상기 요청 메시지에 대한 응답으로 상기 제2 파일을 포함하는 HTTP 응답 메시지를 상기 클라이언트에 전송하는 단계를 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  18. 제 15 항에 있어서, 상기 복수의 미디어 데이터는
    상기 콘텐트를 소정 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 복수의 부분 중 적어도 하나를 각각 포함하는 것을 특징으로 미디어 데이터 전송 방법.
  19. 제 18 항에 있어서, 상기 제2 파일은
    상기 복수의 부분의 URL에 대한 템플릿(template) 및 미디어 데이터의 포맷 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  20. 제 19 항에 있어서, 상기 제2 파일은
    상기 복수의 미디어 데이터 각각에 대한 헤더의 URL 정보를 더 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  21. 제 19 항에 있어서, 상기 제2 파일은
    상기 콘텐트 이후 수신할 콘텐트를 상이한 품질로 인코딩하여 생성된 또 다른 복수의 미디어 데이터에 대한 정보를 포함하는 제3 파일에 대한 정보를 더 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  22. 제 18 항에 있어서, 상기 제2 파일은
    상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  23. 소정 콘텐트에 대한 정보를 포함하는 제1 파일을 서버로부터 수신하고, 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 제1 파일에 기초해 서버로부터 수신하는 정보수신부; 및
    상기 제2 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 수신하는 미디어데이터수신부를 포함하고,
    상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 수신 장치.
  24. 소정 콘텐트에 대한 정보를 포함하는 제1 파일을 클라이언트에 전송하고, 상기 제1 파일에 기초한 상기 클라이언트의 요청에 따라 전송하는 상기 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 제2 파일을 상기 클라이언트에 전송하는 정보전송부; 및
    상기 제2 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 미디어데이터전송부를 포함하고,
    상기 제1 파일은 상기 제2 파일의 위치에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 전송 장치.
  25. 제 1 항 내지 제 22 항 중 어느 한 항의 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  26. 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 서버로부터 수신하는 단계; 및
    상기 수신된 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 적어도 하나의 미디어 데이터를 수신하는 단계를 포함하고,
    상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  27. 제 26 항에 있어서,
    상기 복수의 미디어 데이터는 상기 콘텐트를 소정 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 복수의 부분 중 적어도 하나를 각각 포함하고,
    상기 파일은 상기 복수의 부분의 URL에 대한 템플릿(template) 및 미디어 데이터의 포맷 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 수신 방법.
  28. 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 상기 클라이언트에 전송하는 단계; 및
    상기 전송된 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 단계를 포함하고,
    상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  29. 제 28 항에 있어서,
    상기 복수의 미디어 데이터는 상기 콘텐트를 소정 품질로 인코딩하고, 시간에 기초해 분할하여 생성된 복수의 부분 중 적어도 하나를 각각 포함하고,
    상기 파일은 상기 복수의 부분의 URL에 대한 템플릿(template) 및 미디어 데이터의 포맷 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는 미디어 데이터 전송 방법.
  30. 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 서버로부터 수신하는 정보수신부; 및
    상기 수신된 파일에 기초해 상기 복수의 미디어 데이터 중 적어도 적어도 하나의 미디어 데이터를 수신하는 미디어데이터수신부를 포함하고,
    상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함하는 것을 특징으로 하는 미디어 데이터 수신 장치.
  31. 소정 콘텐트를 상이한 품질로 인코딩하여 생성된 복수의 미디어 데이터에 대한 정보를 포함하는 파일을 상기 클라이언트에 전송하는 정보전송부; 및
    상기 전송된 파일에 기초한 클라이언트의 요청에 따라 상기 복수의 미디어 데이터 중 적어도 하나의 미디어 데이터를 상기 클라이언트에 전송하는 미디어데이터전송부를 포함하고,
    상기 파일은 상기 복수의 미디어 데이터 각각에 대한 미디어 데이터의 명칭, 유형, 품질 및 타임 스탬프 중 적어도 하나를 포함하는 것을 특징으로 하는 미디어 데이터 전송 장치.
  32. 제 26 항 내지 제 29 항 중 어느 한 항의 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020100103722A 2009-11-13 2010-10-22 적응적인 스트리밍 방법 및 장치 KR101750049B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2012538765A JP5794998B2 (ja) 2009-11-13 2010-11-12 適応的なストリーミング方法及びその装置
CN2010800614944A CN102812674A (zh) 2009-11-13 2010-11-12 适应的流方法和装置
EP10830206.8A EP2499793B1 (en) 2009-11-13 2010-11-12 Adaptive streaming method and apparatus
PCT/KR2010/008017 WO2011059274A2 (en) 2009-11-13 2010-11-12 Adaptive streaming method and apparatus
US12/945,498 US9967598B2 (en) 2009-11-13 2010-11-12 Adaptive streaming method and apparatus

Applications Claiming Priority (14)

Application Number Priority Date Filing Date Title
US26090609P 2009-11-13 2009-11-13
US61/260,906 2009-11-13
US26270809P 2009-11-19 2009-11-19
US61/262,708 2009-11-19
US26713109P 2009-12-07 2009-12-07
US61/267,131 2009-12-07
US29421110P 2010-01-12 2010-01-12
US61/294,211 2010-01-12
US30377810P 2010-02-12 2010-02-12
US61/303,778 2010-02-12
US38046110P 2010-09-07 2010-09-07
US38048910P 2010-09-07 2010-09-07
US61/380,461 2010-09-07
US61/380,489 2010-09-07

Publications (2)

Publication Number Publication Date
KR20110053178A true KR20110053178A (ko) 2011-05-19
KR101750049B1 KR101750049B1 (ko) 2017-06-22

Family

ID=44362921

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100103722A KR101750049B1 (ko) 2009-11-13 2010-10-22 적응적인 스트리밍 방법 및 장치

Country Status (6)

Country Link
US (1) US9967598B2 (ko)
EP (1) EP2499793B1 (ko)
JP (1) JP5794998B2 (ko)
KR (1) KR101750049B1 (ko)
CN (1) CN102812674A (ko)
WO (1) WO2011059274A2 (ko)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013077697A1 (ko) * 2011-11-25 2013-05-30 (주)휴맥스 Mmt 패키지화 컨텐츠의하이브리드 전송 방법 및 컨텐츠 수신 방법
WO2013089437A1 (ko) * 2011-12-12 2013-06-20 엘지전자 주식회사 미디어 컨텐트를 수신하는 장치 및 방법
WO2013052490A3 (en) * 2011-10-04 2013-07-11 Google Inc. System and method for obtaining video streams
KR101336585B1 (ko) * 2012-04-16 2013-12-05 갤럭시아커뮤니케이션즈 주식회사 적응형 스트리밍 서비스를 위한 시스템 및 방법
KR101403943B1 (ko) * 2012-08-31 2014-06-09 삼성전자주식회사 스트리밍 미디어의 공급 제어 장치, 서버, 수신기 및 제어 방법
KR101467700B1 (ko) * 2013-08-30 2014-12-01 충북대학교 산학협력단 적응적 스트리밍 서비스 지원 에이전트를 구비한 스트리밍 서비스 제공 시스템
KR20160032143A (ko) * 2013-07-12 2016-03-23 캐논 가부시끼가이샤 푸시 메시지 제어를 이용하는 적응적 데이터 스트리밍 방법
KR20160048390A (ko) 2014-10-24 2016-05-04 에스케이텔레콤 주식회사 컨텐츠 제공 방법, 이를 위한 노드 제어 서버
WO2016167632A1 (ko) * 2015-04-17 2016-10-20 삼성전자 주식회사 방송 서비스를 위한 서비스 시그널링을 송수신하는 방법 및 장치
KR20170026810A (ko) 2015-08-28 2017-03-09 전자부품연구원 컨텐츠 중심 네트워크 연동을 통한 컨텐츠 제공 방법 및 이를 위한 장치
KR20180054532A (ko) * 2011-06-13 2018-05-24 한국전자통신연구원 오버헤드를 최소화한 헤더를 가지는 패킷 기반의 미디어 데이터 전송 방법
US11317138B2 (en) 2015-04-17 2022-04-26 Samsung Electronics Co., Ltd. Method and apparatus for transmitting or receiving service signaling for broadcasting service

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156089B2 (en) 2008-12-31 2012-04-10 Apple, Inc. Real-time or near real-time streaming with compressed playlists
US8260877B2 (en) 2008-12-31 2012-09-04 Apple Inc. Variant streams for real-time or near real-time streaming to provide failover protection
US20100169303A1 (en) 2008-12-31 2010-07-01 David Biderman Playlists for real-time or near real-time streaming
US8578272B2 (en) 2008-12-31 2013-11-05 Apple Inc. Real-time or near real-time streaming
GB201105502D0 (en) 2010-04-01 2011-05-18 Apple Inc Real time or near real time streaming
US8805963B2 (en) 2010-04-01 2014-08-12 Apple Inc. Real-time or near real-time streaming
US8560642B2 (en) 2010-04-01 2013-10-15 Apple Inc. Real-time or near real-time streaming
TWI451279B (zh) 2010-04-07 2014-09-01 Apple Inc 即時或接近即時串流傳輸之內容存取控制
WO2012125006A2 (ko) * 2011-03-16 2012-09-20 한국전자통신연구원 레프리젠테이션을 사용하는 스트리밍 콘텐츠 제공 장치 및 방법
US8856283B2 (en) * 2011-06-03 2014-10-07 Apple Inc. Playlists for real-time or near real-time streaming
US8843586B2 (en) 2011-06-03 2014-09-23 Apple Inc. Playlists for real-time or near real-time streaming
AU2015221573B2 (en) * 2011-06-03 2016-12-15 Apple Inc. Playlists for real-time or near real-time streaming
EP2566171A1 (en) * 2011-09-02 2013-03-06 Thomson Licensing Method for adapting the segment size in transcoded multimedia streams
US8676952B2 (en) 2011-09-13 2014-03-18 Ericsson Television Inc. User adaptive HTTP stream manager and method for using same
US9813350B2 (en) 2012-01-31 2017-11-07 Sharp Kabushiki Kaisha Generation device, reproduction device, data structure, generation method, reproduction method, control program, and recording medium
US20140052824A1 (en) * 2012-08-20 2014-02-20 Qualcomm Incorporated Conveying state information for streaming media
US20140108495A1 (en) * 2012-10-11 2014-04-17 Steven A. Benno Adaptive streaming client
CN104080014B (zh) * 2013-03-28 2018-09-28 浙江大华技术股份有限公司 一种实时视频处理方法和装置
EP3018912B1 (en) 2013-07-02 2018-09-12 Sony Corporation Content provision device, content provision method, program, terminal device, and content provision system
JP2015136057A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
CN104244099A (zh) * 2014-09-28 2014-12-24 北京金山安全软件有限公司 一种媒体内容推荐方法和装置
KR20190048186A (ko) 2017-10-30 2019-05-09 광운대학교 산학협력단 적응적 스트리밍 서비스를 위한 다중 경로 기반 분할 전송 시스템 및 스트리밍 방법

Family Cites Families (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0822061B2 (ja) 1993-03-02 1996-03-04 エヌ・ティ・ティ・データ通信株式会社 画像音声符号化デ−タ多重化装置および多重化デ−タ読み込み装置
US6122403A (en) 1995-07-27 2000-09-19 Digimarc Corporation Computer system linked by using information in data objects
JP3377788B1 (ja) 1995-09-29 2003-02-17 松下電器産業株式会社 再生方法、再生装置、記録方法、記録装置、光ディスク
JP3922592B2 (ja) 1995-09-29 2007-05-30 松下電器産業株式会社 記録方法
JP3943674B2 (ja) 1996-10-25 2007-07-11 キヤノン株式会社 カメラ制御システム並びにカメラサーバ及びその制御方法
US6460087B1 (en) * 1998-02-25 2002-10-01 Kdd Corporation Method of transferring file
JP2000013761A (ja) 1998-06-18 2000-01-14 Sony Corp 情報送信装置および方法、情報受信装置および方法、並びに提供媒体
JP4240187B2 (ja) 1998-09-17 2009-03-18 ソニー株式会社 画像表示装置および方法
WO2000045297A1 (en) * 1998-11-20 2000-08-03 Smart Online, Inc. Systems, methods and computer program products for mining data from host computers via the internet
JP4292654B2 (ja) 1999-03-19 2009-07-08 ソニー株式会社 記録装置および方法、再生装置および方法、並びに記録媒体
JP2001024994A (ja) 1999-07-07 2001-01-26 Matsushita Electric Ind Co Ltd 送信装置、受信装置、記録装置及びプログラム記録媒体
US8341662B1 (en) 1999-09-30 2012-12-25 International Business Machine Corporation User-controlled selective overlay in a streaming media
KR100872138B1 (ko) 2000-02-24 2008-12-08 오병석 주문형 멀티미디어 콘텐츠 제공 시스템 및 방법
US20020161739A1 (en) 2000-02-24 2002-10-31 Byeong-Seok Oh Multimedia contents providing system and a method thereof
WO2001067772A2 (en) * 2000-03-09 2001-09-13 Videoshare, Inc. Sharing a streaming video
JP4529240B2 (ja) 2000-06-13 2010-08-25 ソニー株式会社 情報処理装置および方法、情報処理システム、並びに記録媒体
US7624337B2 (en) * 2000-07-24 2009-11-24 Vmark, Inc. System and method for indexing, searching, identifying, and editing portions of electronic multimedia files
US20050193425A1 (en) 2000-07-24 2005-09-01 Sanghoon Sull Delivery and presentation of content-relevant information associated with frames of audio-visual programs
US7548565B2 (en) 2000-07-24 2009-06-16 Vmark, Inc. Method and apparatus for fast metadata generation, delivery and access for live broadcast program
US7103668B1 (en) 2000-08-29 2006-09-05 Inetcam, Inc. Method and apparatus for distributing multimedia to remote clients
JP4087706B2 (ja) 2000-12-15 2008-05-21 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー オーディオおよび、またはビデオマテリアルの送信および受信
ATE464740T1 (de) * 2000-12-15 2010-04-15 British Telecomm Übertagung von ton- und/oder bildmaterial
FI20011871A (fi) 2001-09-24 2003-03-25 Nokia Corp Multimediadatan prosessointi
JP2003111048A (ja) 2001-09-26 2003-04-11 Ntt Software Corp コンテンツ再生のためのサーバ及びプログラム
US20030072376A1 (en) 2001-10-12 2003-04-17 Koninklijke Philips Electronics N.V. Transmission of video using variable rate modulation
US7421127B2 (en) 2001-10-26 2008-09-02 Koninklijke Philips Electronics N.V. Spatial scalable compression scheme using spatial sharpness enhancement techniques
KR20040054744A (ko) 2001-10-26 2004-06-25 코닌클리케 필립스 일렉트로닉스 엔.브이. 적응 콘텐트 필터링을 사용하는 공간 스케일가능 압축 체계
US6826572B2 (en) * 2001-11-13 2004-11-30 Overture Services, Inc. System and method allowing advertisers to manage search listings in a pay for placement search system using grouping
KR100464076B1 (ko) * 2001-12-29 2004-12-30 엘지전자 주식회사 동영상 비디오 브라우징 방법과 장치
WO2003065683A1 (en) 2002-01-30 2003-08-07 Koninklijke Philips Electronics N.V. Streaming multimedia data over a network having a variable bandwidth
JP2003235031A (ja) 2002-02-08 2003-08-22 Nippon Telegr & Teleph Corp <Ntt> 映像情報提供方法,装置およびそのプログラム
US20030204602A1 (en) * 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
JP2004013283A (ja) 2002-06-04 2004-01-15 Hitachi Ltd コンテンツ配信方法及びコンテンツ配信装置
KR101019981B1 (ko) 2002-06-07 2011-03-09 톰슨 라이센싱 네트워크에서 디지털 인코딩된 데이터의 분배를 제어하기 위한 방법 및 장치
JP2004088766A (ja) 2002-07-22 2004-03-18 Matsushita Electric Ind Co Ltd データ管理装置及びデータ管理システム
US7249060B2 (en) * 2002-08-12 2007-07-24 Paybyclick Corporation Systems and methods for distributing on-line content
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
JP4127497B2 (ja) 2002-09-27 2008-07-30 富士フイルム株式会社 ディジタル・サービス・システム
JP2004140584A (ja) 2002-10-17 2004-05-13 Toshiba Corp コンテンツ配信・再生システム、広告コンテンツ挿入方法及びクライアント端末
JP2004140654A (ja) * 2002-10-18 2004-05-13 Nec Engineering Ltd 画像データ転送方法及びシステム
JP4209665B2 (ja) 2002-12-02 2009-01-14 パナソニック株式会社 受信装置及び受信方法
US20040119814A1 (en) 2002-12-20 2004-06-24 Clisham Allister B. Video conferencing system and method
JP3976191B2 (ja) 2003-01-07 2007-09-12 株式会社エヌ・ティ・ティ・ドコモ サーバ、送信レート制御方法、プログラムおよび記録媒体
JP2004312304A (ja) 2003-04-04 2004-11-04 Sony Corp 復号化装置及びその方法、再生装置及びその方法並びに記憶メディア
JP2004312413A (ja) * 2003-04-08 2004-11-04 Sony Corp コンテンツ提供サーバ、情報処理装置、および方法、並びにコンピュータ・プログラム
JP2004328204A (ja) 2003-04-23 2004-11-18 Canon Inc 映像信号処理装置
US6895410B2 (en) 2003-05-02 2005-05-17 Nokia Corporation Method and apparatus for providing a multimedia data stream
KR20040096718A (ko) 2003-05-10 2004-11-17 삼성전자주식회사 멀티미디어 데이터 재생장치, 오디오 데이터 수신방법 및오디오 데이터 구조
JP2004364227A (ja) 2003-06-09 2004-12-24 Sony Corp 受信装置および選局方法、ならびに、ストリーム配信システム
JP2005039667A (ja) 2003-07-17 2005-02-10 Sony Corp データ送受信システム、データ受信装置、データ送信装置及びデータ送受信方法
JP2005073138A (ja) 2003-08-27 2005-03-17 Casio Comput Co Ltd 情報再生装置および情報再生処理プログラム
KR100547139B1 (ko) 2003-09-03 2006-01-26 학교법인 고황재단 IETF QoS 프로토콜을 이용한 MPEG 미디어데이터 전송 방법 및 장치
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
US8250622B2 (en) 2003-10-30 2012-08-21 Panasonic Corporation Method and apparatus for broadcasting to a portable terminal
EP2051510B1 (en) 2003-10-30 2013-08-14 Panasonic Corporation Mobile-terminal-orientated transmission method and apparatus
US20050102371A1 (en) 2003-11-07 2005-05-12 Emre Aksu Streaming from a server to a client
US7613748B2 (en) * 2003-11-13 2009-11-03 Commvault Systems, Inc. Stored data reverification management system and method
KR101244308B1 (ko) 2003-12-08 2013-03-18 삼성전자주식회사 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권관리방법
US20050183120A1 (en) 2004-01-13 2005-08-18 Saurabh Jain Multi-user personalized digital multimedia distribution methods and systems
KR101022471B1 (ko) 2004-01-17 2011-03-16 삼성전자주식회사 멀티미디어 데이터를 기록한 정보저장매체, 그 재생방법및 재생장치
JP2005229153A (ja) 2004-02-10 2005-08-25 Sony Corp 調光システムおよび調光方法、配信装置および配信方法、受信装置および受信方法、記録装置および記録方法、ならびに、再生装置および再生方法
KR101145261B1 (ko) 2004-02-27 2012-05-24 삼성전자주식회사 멀티미디어 데이터를 기록한 정보저장매체, 그 재생방법및 재생장치
US7430222B2 (en) 2004-02-27 2008-09-30 Microsoft Corporation Media stream splicer
JP2005303927A (ja) 2004-04-15 2005-10-27 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US7818444B2 (en) * 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
CN101014947A (zh) 2004-04-30 2007-08-08 移动网络有限公司 一种关于流内容的自适应速率切换的装置、系统和方法
US20050262541A1 (en) 2004-05-21 2005-11-24 Sony Corporation Reception device, station selection method, and stream distribution system
US20060037057A1 (en) 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
EP1784014B1 (en) 2004-08-17 2011-10-12 Panasonic Corporation Image encoding device, and image decoding device
US7991778B2 (en) * 2005-08-23 2011-08-02 Ricoh Co., Ltd. Triggering actions with captured input in a mixed media environment
US7543073B2 (en) 2004-12-10 2009-06-02 Microsoft Corporation System and process for performing an exponentially weighted moving average on streaming data to establish a moving average bit rate
FR2882164A1 (fr) 2005-02-11 2006-08-18 Canon Kk Procede et dispositif de transfert de donnees numeriques a format progressif
US20080301380A1 (en) 2005-02-18 2008-12-04 Masanori Itho Data Processor
AU2006230233B2 (en) 2005-03-29 2011-01-20 Microsoft Corp. System and method for transferring web page data
JP4541962B2 (ja) 2005-04-25 2010-09-08 パナソニック株式会社 多重化装置、再生装置
JP4356645B2 (ja) 2005-04-28 2009-11-04 ソニー株式会社 字幕生成装置及び方法
US20060265371A1 (en) * 2005-05-20 2006-11-23 Andrew Edmond Grid network for distribution of files
JP2007011584A (ja) 2005-06-29 2007-01-18 Fujifilm Holdings Corp マルチメディアデータ処理装置、マルチメディアデータ処理方法及びマルチメディアデータ処理プログラム
JP2007025959A (ja) 2005-07-14 2007-02-01 Fujifilm Holdings Corp マルチメディアデータ処理装置、マルチメディアデータ処理方法及びマルチメディアデータ処理プログラム
KR100716291B1 (ko) 2005-07-27 2007-05-09 삼성전자주식회사 영상재생장치와 그 제어방법 및 pvr
JP2007036666A (ja) 2005-07-27 2007-02-08 Onkyo Corp コンテンツ配信システム、クライアント及びクライアントプログラム
JP2007080357A (ja) 2005-09-13 2007-03-29 Toshiba Corp 情報記憶媒体、情報再生方法、情報再生装置
CN1988547A (zh) 2005-12-23 2007-06-27 腾讯科技(深圳)有限公司 一种在线播放媒体文件的方法、服务器及系统
EP2421265B1 (en) 2006-01-05 2013-10-02 Telefonaktiebolaget LM Ericsson (PUBL) Generation of media container files
JP2007207328A (ja) 2006-01-31 2007-08-16 Toshiba Corp 情報記憶媒体、プログラム、情報再生方法、情報再生装置、データ転送方法、及びデータ処理方法
CN101025737B (zh) 2006-02-22 2011-08-17 王东 基于关注度的同源信息搜索引擎聚合显示方法
US20070204011A1 (en) * 2006-02-28 2007-08-30 Maven Networks, Inc. Systems and methods for offline access to video content of a web-site
US20070204115A1 (en) * 2006-02-28 2007-08-30 Maven Networks, Inc. Systems and methods for storage shuffling techniques to download content to a file
US8001471B2 (en) * 2006-02-28 2011-08-16 Maven Networks, Inc. Systems and methods for providing a similar offline viewing experience of online web-site content
US8015491B2 (en) * 2006-02-28 2011-09-06 Maven Networks, Inc. Systems and methods for a single development tool of unified online and offline content providing a similar viewing experience
US20070204003A1 (en) * 2006-02-28 2007-08-30 Maven Networks, Inc. Downloading a file over HTTP from multiple servers
EP1999872B1 (en) 2006-03-24 2017-08-09 LG Electronics Inc. Ofdm symbol design for different channel conditions and for backward compatibility with 1xev-do and nxev-do
JP2007274142A (ja) 2006-03-30 2007-10-18 Victor Co Of Japan Ltd 映像送信装置及び映像送信方法
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US20080040498A1 (en) 2006-08-10 2008-02-14 Nokia Corporation System and method of XML based content fragmentation for rich media streaming
JP4785687B2 (ja) 2006-09-15 2011-10-05 キヤノン株式会社 映像制御装置及びその方法
JP4862600B2 (ja) 2006-10-12 2012-01-25 パナソニック電工株式会社 住宅設備監視システム用表示装置
KR100805308B1 (ko) 2006-10-13 2008-02-20 에스케이 텔레콤주식회사 이동통신 단말기에서의 컨텐츠 추천 서비스 방법 및 이를위한 이동통신 단말기
US8407741B2 (en) 2006-11-20 2013-03-26 Sk Planet Co., Ltd. System, server and method for providing supplementary information service related to broadcast content
CN100544439C (zh) 2006-11-21 2009-09-23 华为技术有限公司 一种支持多种编码格式的媒体数据的方法及系统
WO2008080022A2 (en) 2006-12-22 2008-07-03 Apple Inc. Communicating and storing information associated with media broadcasts
KR100810223B1 (ko) 2007-01-19 2008-03-06 삼성전자주식회사 단말 간 실시간 스트리밍 서비스 제공 시스템 및 방법
CA2676279A1 (en) * 2007-01-22 2008-07-31 Syracuse University Distributed video content management and sharing system
CN100551043C (zh) 2007-02-08 2009-10-14 华为技术有限公司 一种快进快退播放视频数据的方法和流媒体服务器
JP5230112B2 (ja) 2007-03-01 2013-07-10 キヤノン株式会社 情報配信装置、情報配信方法及び情報配信プログラム
JP2008236667A (ja) 2007-03-23 2008-10-02 Victor Co Of Japan Ltd デジタル放送受信装置
US8949926B2 (en) 2007-04-23 2015-02-03 Lg Electronics Inc. Method for protecting contents, method for sharing contents and device based on security level
KR101369747B1 (ko) 2007-05-10 2014-03-06 삼성전자주식회사 정보저장매체, 비디오 컨텐츠 재생 장치 및 재생 방법
KR101517959B1 (ko) 2007-05-11 2015-05-18 주식회사 비즈모델라인 적응형 스트리밍 방법
US7908317B2 (en) * 2007-06-07 2011-03-15 Oracle International Corporation System and method for URL compression
CN101321265B (zh) 2007-06-07 2011-03-16 中兴通讯股份有限公司 对等网络媒体点播跨帧播放方式的实现方法及系统
JP4609802B2 (ja) 2007-07-06 2011-01-12 Necアクセステクニカ株式会社 ホームゲートウェイ
KR20090005845A (ko) 2007-07-10 2009-01-14 삼성전자주식회사 태그를 이용한 미디어 신호 재생 제어 방법 및 장치
US7694006B2 (en) 2007-07-27 2010-04-06 Realnetworks, Inc. System and method for distributing media data
US8542693B2 (en) * 2007-08-01 2013-09-24 Texas Instruments Incorporated Managing free packet descriptors in packet-based communications
CN101365128A (zh) * 2007-08-10 2009-02-11 中兴通讯股份有限公司 综合视频业务对等网络系统
RU2477883C2 (ru) 2007-08-20 2013-03-20 Нокиа Корпорейшн Сегментированные метаданные и индексы для потоковых мультимедийных данных
KR101128848B1 (ko) 2007-09-13 2012-03-23 에스케이플래닛 주식회사 멀티 앵글 모바일 방송 서비스를 제공하는 서버, 시스템 및방법
US8438136B2 (en) * 2007-09-27 2013-05-07 Symantec Corporation Backup catalog recovery from replicated data
KR20090036765A (ko) 2007-10-10 2009-04-15 삼성전자주식회사 와이브로 시스템에서 영상 데이터 전송을 위한 출력 비트레이트 설정 방법
US20090110060A1 (en) * 2007-10-30 2009-04-30 Mauricio Cortes Method and apparatus for performing lower complexity multiple bit rate video encoding using metadata
KR100889986B1 (ko) 2007-11-30 2009-03-25 엔에이치엔(주) 양방향 방송 단말기를 위한 추천 키워드 제공 시스템 및방법
KR101401967B1 (ko) 2007-12-04 2014-06-27 삼성전자주식회사 암호화된 데이터 스트림의 트릭 플레이 방법 및 장치
KR101529503B1 (ko) 2007-12-14 2015-06-30 엘지전자 주식회사 콘텐츠 제공/다운로드 방법, 이를 위한 전자장치 및 콘텐츠서버
US7979447B2 (en) * 2008-01-18 2011-07-12 Sony Corporation Method and apparatus for use in providing information to accessing content
US8140390B2 (en) 2008-02-12 2012-03-20 At&T Intellectual Property I, Lp System and method for displaying partial advertising data during trick play
CN101521583B (zh) * 2008-02-29 2012-07-04 华为技术有限公司 一种资源接纳控制方法、系统和装置
CN101247511B (zh) 2008-03-21 2016-04-06 中国电信股份有限公司 Iptv内容相关信息展现方法及系统
JPWO2009119394A1 (ja) * 2008-03-28 2011-07-21 日本電気株式会社 映像取得方法、映像取得装置、映像取得システム及び映像取得用プログラム
US8208006B2 (en) 2008-04-10 2012-06-26 Research In Motion Limited Method and system for progressive delivery and synchronization of discrete content in rich media services
US7925774B2 (en) * 2008-05-30 2011-04-12 Microsoft Corporation Media streaming using an index file
US8387150B2 (en) 2008-06-27 2013-02-26 Microsoft Corporation Segmented media content rights management
KR20100007368A (ko) 2008-07-14 2010-01-22 주식회사 케이티 스트리밍 서비스의 비트 레이트를 제어하기 위한 시스템 및그 방법
CN101459809B (zh) 2008-11-26 2010-06-23 北京惠信博思技术有限公司 一种数字电视节目播放的方法和系统
US8781305B2 (en) * 2008-12-02 2014-07-15 Microsoft Corporation Media streaming with smooth fast-forward and rewind
US8370198B2 (en) * 2009-03-14 2013-02-05 Microsoft Corporation Registering media for configurable advertising
US8621044B2 (en) * 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
US8909806B2 (en) * 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
JP2009159625A (ja) 2009-04-03 2009-07-16 Hitachi Ltd デジタル放送用ストリームの蓄積方法
US9203816B2 (en) * 2009-09-04 2015-12-01 Echostar Technologies L.L.C. Controlling access to copies of media content by a client device
US9438861B2 (en) * 2009-10-06 2016-09-06 Microsoft Technology Licensing, Llc Integrating continuous and sparse streaming data
US8392748B2 (en) * 2009-10-06 2013-03-05 Microsoft Corporation Reliable media streaming
US8677005B2 (en) 2009-11-04 2014-03-18 Futurewei Technologies, Inc. System and method for media content streaming
US8954596B2 (en) * 2010-04-02 2015-02-10 Netflix, Inc. Dynamic virtual chunking of streaming media content
US8782268B2 (en) * 2010-07-20 2014-07-15 Microsoft Corporation Dynamic composition of media

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190045117A (ko) * 2011-06-13 2019-05-02 한국전자통신연구원 오버헤드를 최소화한 헤더를 가지는 패킷 기반의 미디어 데이터 전송 방법
KR20180054532A (ko) * 2011-06-13 2018-05-24 한국전자통신연구원 오버헤드를 최소화한 헤더를 가지는 패킷 기반의 미디어 데이터 전송 방법
US9918115B2 (en) 2011-10-04 2018-03-13 Google Llc System and method for obtaining video streams
US10327024B2 (en) 2011-10-04 2019-06-18 Google Llc System and method for obtaining video streams
WO2013052490A3 (en) * 2011-10-04 2013-07-11 Google Inc. System and method for obtaining video streams
US9414123B2 (en) 2011-11-25 2016-08-09 Humax Co., Ltd. Method for hybrid delivery of MMT package and content and method for receiving content
WO2013077697A1 (ko) * 2011-11-25 2013-05-30 (주)휴맥스 Mmt 패키지화 컨텐츠의하이브리드 전송 방법 및 컨텐츠 수신 방법
WO2013089437A1 (ko) * 2011-12-12 2013-06-20 엘지전자 주식회사 미디어 컨텐트를 수신하는 장치 및 방법
US9712874B2 (en) 2011-12-12 2017-07-18 Lg Electronics Inc. Device and method for receiving media content
US9955220B2 (en) 2011-12-12 2018-04-24 Lg Electronics Inc. Device and method for receiving media content
KR101336585B1 (ko) * 2012-04-16 2013-12-05 갤럭시아커뮤니케이션즈 주식회사 적응형 스트리밍 서비스를 위한 시스템 및 방법
KR101403943B1 (ko) * 2012-08-31 2014-06-09 삼성전자주식회사 스트리밍 미디어의 공급 제어 장치, 서버, 수신기 및 제어 방법
US10104190B2 (en) 2013-07-12 2018-10-16 Canon Kabushiki Kaisha Adaptive data streaming method with push messages control
KR20160032143A (ko) * 2013-07-12 2016-03-23 캐논 가부시끼가이샤 푸시 메시지 제어를 이용하는 적응적 데이터 스트리밍 방법
KR101467700B1 (ko) * 2013-08-30 2014-12-01 충북대학교 산학협력단 적응적 스트리밍 서비스 지원 에이전트를 구비한 스트리밍 서비스 제공 시스템
KR20160048390A (ko) 2014-10-24 2016-05-04 에스케이텔레콤 주식회사 컨텐츠 제공 방법, 이를 위한 노드 제어 서버
WO2016167632A1 (ko) * 2015-04-17 2016-10-20 삼성전자 주식회사 방송 서비스를 위한 서비스 시그널링을 송수신하는 방법 및 장치
US11317138B2 (en) 2015-04-17 2022-04-26 Samsung Electronics Co., Ltd. Method and apparatus for transmitting or receiving service signaling for broadcasting service
KR20170026810A (ko) 2015-08-28 2017-03-09 전자부품연구원 컨텐츠 중심 네트워크 연동을 통한 컨텐츠 제공 방법 및 이를 위한 장치

Also Published As

Publication number Publication date
WO2011059274A2 (en) 2011-05-19
US20110125918A1 (en) 2011-05-26
KR101750049B1 (ko) 2017-06-22
WO2011059274A3 (en) 2011-10-20
EP2499793A2 (en) 2012-09-19
US9967598B2 (en) 2018-05-08
EP2499793B1 (en) 2016-10-05
JP2013511197A (ja) 2013-03-28
CN102812674A (zh) 2012-12-05
JP5794998B2 (ja) 2015-10-14
EP2499793A4 (en) 2014-03-12

Similar Documents

Publication Publication Date Title
KR101750049B1 (ko) 적응적인 스트리밍 방법 및 장치
KR101837687B1 (ko) 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치
JP6177843B2 (ja) 部分化を利用した適応的なストリーミング方法及びその装置
KR101737084B1 (ko) 메인 콘텐트에 다른 콘텐트를 삽입하여 스트리밍하는 방법 및 장치
JP6081541B2 (ja) データ伝送方法及び装置
EP2540034B1 (en) Method and apparatus for transmitting and receiving data
EP2499780B1 (en) Method and apparatus for providing and receiving data
US9197689B2 (en) Method and apparatus for adaptively streaming content including plurality of chapters
US20120272281A1 (en) Method and apparatus for transmitting media data, and method and apparatus for receving media data

Legal Events

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