WO2012060581A2 - 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치 - Google Patents

미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치 Download PDF

Info

Publication number
WO2012060581A2
WO2012060581A2 PCT/KR2011/008094 KR2011008094W WO2012060581A2 WO 2012060581 A2 WO2012060581 A2 WO 2012060581A2 KR 2011008094 W KR2011008094 W KR 2011008094W WO 2012060581 A2 WO2012060581 A2 WO 2012060581A2
Authority
WO
WIPO (PCT)
Prior art keywords
subsegment
representation
media content
representations
subsegments
Prior art date
Application number
PCT/KR2011/008094
Other languages
English (en)
French (fr)
Other versions
WO2012060581A3 (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 CN201180060590.1A priority Critical patent/CN103262556B/zh
Priority to EP11838186.2A priority patent/EP2637414A4/en
Priority to KR1020137011179A priority patent/KR101452669B1/ko
Priority to DE112011103642T priority patent/DE112011103642T5/de
Priority to GB1308663.2A priority patent/GB2499539B/en
Priority to KR1020167009513A priority patent/KR101649533B1/ko
Priority to US13/882,926 priority patent/US9781188B2/en
Priority to CA2816621A priority patent/CA2816621A1/en
Priority to KR1020147012386A priority patent/KR101613941B1/ko
Publication of WO2012060581A2 publication Critical patent/WO2012060581A2/ko
Publication of WO2012060581A3 publication Critical patent/WO2012060581A3/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/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/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • 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
    • 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/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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip
    • 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

Definitions

  • the present invention relates to a method and apparatus for transmitting and receiving media content via the Internet.
  • DMB digital multimedia broadcasting
  • TS MPEG-2 Transport Stream
  • Digital broadcasting includes stereo 3D video broadcasting, ultra high definition (UHD) broadcasting, and multiview 3D. Increasing amounts of transmission are required, such as video broadcasting and hologram broadcasting.
  • MPEG-2 TS having a fixed length packet of 188 bytes may be inefficient to transmit content having a higher resolution than conventional HDTV using an IP network.
  • One embodiment of the present invention is to provide a method and apparatus for transmitting and receiving that can efficiently stream media content according to network conditions.
  • a method of transmitting media content comprising: organizing media content into a plurality of representations; Dividing the constructed representation into a plurality of segments; Arranging subsegments included in the segment; And transmitting any one of the representations, wherein the subsegments are the earliest presentation time of a k-th subsegment included in a first representation of the representations. It is arranged to be larger than the latest presentation time of the k-1 th subsegment included in the second representation.
  • a method of receiving media content includes: receiving a first representation of a plurality of representations including the media content; Switching the received representation to a second representation; And reproducing the received representation, wherein the representation is divided into a plurality of segments and received, and the subsegments included in the segment are included in any one of the first and second representations.
  • the earliest playing time of the k-th subsegment included is arranged to be greater than the latest playing time of the k-th subsegment included in another representation.
  • an apparatus for transmitting media content includes: a media encoder configured to configure the media content into a plurality of representations; A segmenter for dividing the configured representation into a plurality of segments, wherein the sub-segments included in the segment include a head of a k-th sub-segment included in a first representation of the representations.
  • the fast playback time is arranged such that it is greater than the latest playback time of the k-1 th subsegment included in the second representation.
  • a media receiving apparatus includes: a receiving unit configured to receive any one of a plurality of representations including the media content; And a controller for switching the received representation, wherein the representation is divided into a plurality of segments and received, and the subsegments included in the segment are assigned to a first representation of the representations.
  • the earliest playing time of the k-th subsegment included is arranged to be greater than the latest playing time of the k-th subsegment included in the second representation.
  • the media content transmission / reception method may be implemented as a computer-readable recording medium that records a program to be executed in a computer.
  • the subsegments included in the segments according to the reproduction time of the representation may be used. By aligning, it is possible to prevent loss or duplicate reception of data that may occur during bitstream switching.
  • the client receiving the media content can easily switch representations in any subsegment that includes a Representation Access Point (RAP) without additional searching or parsing.
  • RAP Representation Access Point
  • the media content can be continuously played back seamlessly.
  • FIG. 1 is a block diagram showing the configuration of a media content transmission and reception system according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a structure of an MPEG2 TS (Transport Stream).
  • FIG. 3 is a flowchart illustrating a method of transmitting media content according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating an embodiment of a configuration of representations including media content.
  • FIG. 5 is a diagram illustrating an embodiment of a configuration of a subsegment.
  • 6 and 7 are diagrams for describing an embodiment of a method of determining a location of a RAP included in a subsegment.
  • FIGS. 8 and 9 are diagrams for describing an embodiment of a method of aligning subsegments.
  • 10 and 11 illustrate embodiments of a method of switching representations.
  • FIGS. 12 and 13 are diagrams illustrating a first embodiment of the configuration of a segment index box that provides metadata about media content.
  • 14 and 15 are diagrams illustrating a second embodiment of the configuration of the segment index box.
  • 16 is a block diagram illustrating a configuration of an apparatus for receiving media content according to an embodiment of the present invention.
  • 17 is a flowchart illustrating a method of receiving media content according to an embodiment of the present invention.
  • FIG. 18 is a block diagram showing a first embodiment of the configuration of the IPTV receiver according to the present invention.
  • FIG. 19 is a block diagram showing a second embodiment of the configuration of the IPTV receiver according to the present invention.
  • the transmitting apparatus and the receiving apparatus transmit and receive media content using an IP (Internet Protocol) based transmission system.
  • IP Internet Protocol
  • the media content is TCP (Transmission Control Protocol) and HTTP (Hypertext Transfer Protocol).
  • TCP Transmission Control Protocol
  • HTTP Hypertext Transfer Protocol
  • the transmitting device may receive content from a content provider, convert the content, transmit the content, or store the content in a media DB (media DataBase).
  • a content provider converts the content, transmit the content, or store the content in a media DB (media DataBase).
  • media DB media DataBase
  • the media content provided from the content provider may be in the MPEG-2 Transport Stream (MPEG-2 TS) format or the ISO Base Media file format, and the transmitting apparatus may transmit the media content in IP-based transmission (IP-). After converting to a format that is easy for based delivery, it may be transmitted through a network such as an internet network or stored in the media DB.
  • MPEG-2 Transport Stream MPEG-2 TS
  • IP- IP-based transmission
  • the reception device may receive media content from a transmission device using an IP-based transmission system, convert the received media content, play the converted media content, or store the content in a local storage.
  • the receiving device may convert the media content received from the transmitting device into the MPEG-2 TS format or the ISO Base Media file format, process it, play it, or store it in the local storage medium.
  • the bandwidth that can be transmitted to the receiving device is dynamically changed according to network traffic, thus providing stable and fixed bandwidth for transmitting content files. It can be difficult to secure.
  • the Internet server which is a transmitting device operating in an open Internet environment, may still have difficulty in guaranteeing QoS because services are transmitted through different networks.
  • services such as YouTube may be provided through another network operated by a specific service provider, so that content may be delayed, dropped, or retransmitted as network configuration or traffic volume increases during the transmission process.
  • a specific service provider For example, services such as YouTube may be provided through another network operated by a specific service provider, so that content may be delayed, dropped, or retransmitted as network configuration or traffic volume increases during the transmission process.
  • content may be delayed, dropped, or retransmitted as network configuration or traffic volume increases during the transmission process.
  • the QoS guarantee problem as described above may be a major cause of difficulty for content providers who provide content services in an open Internet environment.
  • an adaptive streaming (adaptive streaming) method that can properly transmit and receive the content according to the network bandwidth by using the play list file of the M3U type may be used.
  • HTTP Adaptive Streaming content files having different bit rates for one content are made, and a bit rate can be selected and transmitted according to the bandwidth of a receiving device. Since most of the content is transmitted using the HTTP protocol, it is called HTTP Adaptive Streaming.
  • FIG. 1 is a block diagram illustrating a configuration of a content transmission and reception system according to an embodiment of the present invention, and illustrates an example of a structure of the system for adaptive streaming.
  • a system for adaptive streaming may include a server 10, a distribution server 20, and a client 30.
  • the media encoder 51 transmits the AV data to a streaming file in the form of MPEG-2 TS. Convert to Streaming File Format.
  • the streaming segmenter 12 may divide the MPEG-2 TS streaming file output from the media encoder 11 into a plurality of segments.
  • the streaming segmenter 12 may divide one file or a real-time MPEG-2 TS streaming file into segments of a size that can be played for about 10 seconds and then store the same in the distribution server 20.
  • the client 30 may request and receive the divided files stored in the distribution server 20 using the HTTP protocol.
  • MPEG-2 TS file segments having different bit rates may be stored in the distribution server 20, and a web server 21 for storing MPEG-2 TS file segments encoded at a specific bit rate for each of them may be stored.
  • Multiple distribution servers may exist.
  • MPEG-2 TS file segments encoded at a bit rate of 20 kbps and MPEG-2 TS file segments encoded at a bit rate of 500 kbps may be stored in the distribution server 20 under different file names.
  • the client 30 may request a file encoded at a bit rate of 20 kbps and play the file for 10 seconds, and periodically check the bandwidth before the 10 second, which is the reproduction time, elapses. .
  • the client 30 may request the transmission of the file encoded at a bit rate of 500kbps.
  • the client 30 can alternately receive and reproduce contents encoded at bit rates of 20 kbps and 500 kbps adaptively according to the network bandwidth. If the bandwidth is not good, the quality of the video to be played back may be degraded. Breaking can be minimized.
  • the media content may be composed of a plurality of representations, and the media content included in each of the representations has a bitrate and a resolution.
  • the resolution, language, or codec may be different.
  • the media content includes media components such as audio, video or timed text, and the representation is a structured collection of one or more media components. May be).
  • the client 30 may request and receive any one of a plurality of representations configured to have different bit rates as described above.
  • the server 10 includes a media presentation description (MPD) including metadata required by the client 30 together with the segment data. Can be provided.
  • MPD media presentation description
  • the client 30 may select and transmit any one of the plurality of representations by using an element included in the MPD.
  • the representation is divided into a plurality of segments as described above, and is divided into segments or segments according to a request of the client 30 using the HTTP GET or HTTP partial GET method defined in HTTP 1.1 (RFC 2616). Can be sent.
  • the client 30 may switch the received representation to another representation based on the updated information during media playback.
  • the client 30 may receive and play a new representation from the time when the previous representation was played.
  • the segment may include a plurality of sub-segments, and the sub-segments may mean the smallest unit that can be indexed at the segment level.
  • the MPEG-2 TS may include a plurality of MPEG-2 TS packets each having a fixed bit rate of 188 bytes, and the subsegment may be configured as a set of consecutive MPEG-2 TS packets. .
  • one sample is an access unit composed of one or more MPEG-2 TS packets having the same PID value, and the subsegment may be defined as one indexed set of successive access units in decoding order. have.
  • a "fragmented file” structure can be used to stream the ISO Base Media file format.
  • the fragmented file physically divides media tracks into a plurality of fragments, and each fragment may be composed of a moof (Movie Fragment) box and a mdat (media data) box.
  • moof Menovie Fragment
  • mdat media data
  • the mdat box after the moof box includes fragment media data, and thus the combined moof-mdat pairs may constitute one fragment.
  • the subsegment may be defined as a self-contained set of one or more contiguous movie fragments, and thus one or more moof (Movie Fragment) boxes and corresponding mdat (media data) boxes. Can include them.
  • moof Menovie Fragment
  • mdat media data
  • the server 10 in the client 30 may be aligned to efficiently perform bitstream switching of the segments.
  • the media content of the MPEG2 TS or ISO base media file format is transmitted to the Internet through HTTP.
  • the present invention is not limited thereto, and the media content transmission and reception method according to an embodiment of the present invention and The device is applicable to media content in various formats.
  • FIG. 3 is a flowchart illustrating a media content transmission method according to an embodiment of the present invention, and descriptions of the same as those described with reference to FIGS. 1 and 2 will be omitted below.
  • the transmission apparatus configures media content into a plurality of representations (step S100), and divides the configured representation into a plurality of segments (step S110).
  • the plurality of representations may be configured differently according to at least one of a bit rate, a resolution, a language, and a codec of the transmitted media content, and each representation may include a plurality of representations for transmission using an HTTP protocol. It may be divided into segments of.
  • the transmitting apparatus may make the media content into Representation A and Representation A having different bit rates, and the Representations A and B are one. Groups can be formed. The group may further include other representations in addition to the representations A and B.
  • index information exists for all subsegments included in the representations A and B, and the index information is randomly obtained by the client 30 using the partial HTTP GET method. May be for access.
  • each of the subsegments may include a segment index, or an index segment may exist that provides an index for the subsegment.
  • the earliest presentation time (T E ) and the latest reproduction time (T L ) of the sub segment 200 may be defined.
  • the subsegment 200 may include two media components, video and audio, and any one of the media components (eg, video) may be a reference stream ( reference stream).
  • the reference stream may mean a group of consecutive samples of a primary media component among media components.
  • the fastest playback time T E of the subsegment 200 may be defined as the fastest playback time of any sample present in the reference stream, and thus the fastest sample 201 of the video samples. It can be play time.
  • the latest playback time T L of the subsegment 200 may be the playback time of the latest sample 204 present in the reference stream.
  • sample 204 may mean an access unit present in the stream of the subsegment 200 (or segment).
  • Subsegments as shown in FIG. 4 may differ in size or duration of media content.
  • the latest reproduction time T L of a subsegment is shown in the boundary between successive sub-segments in FIG. 4, the latest reproduction time T L of the sub-segment is between the sub-segments. May be slightly ahead of the boundary.
  • the latest reproduction time T L of the K-th subsegment may be slightly earlier than the time corresponding to the boundary between the K-th subsegment and the K + 1th subsegment.
  • a segment may include one or more Representation Access Points (RAPs), and the RAPs may be included in a subsegment.
  • RAPs Representation Access Points
  • the client 30 may start playback forward from the position corresponding to the RAP using only the information included in the subsegment , and the RAP may include a byte index I LRAP and a playback time T RAP .
  • the reproduction time T RAP may mean the earliest reproduction time for all access units having a reproduction time greater than or equal to the T RAP to be correctly decoded.
  • the client 30 searches for the RAP in the representation B at a reproduction time close to the current reproduction time, and then the K-th subsegment 210. Up to the RAP 211 included in the) may reproduce the representation A, and after the searched RAP 211 may reproduce the representation B.
  • the subsegment does not include a RAP or includes one RAP, but the subsegment may include two or more RAPs, in which case the RAP illustrated in FIG. It may mean the first RAP among the fastest.
  • the playback time of the first RAP included in the sub-segment (T RAP) can match the earliest reproduction time of the sub-segment (T E).
  • the playback time (T RAP ) of the first RAP included in the subsegment is the fastest playback time (T E ) of the corresponding subsegment. It allows the client 30 to switch representations at any boundary between successive subsegments with consecutive indices.
  • the client 30 has a boundary or K-th subsegment between the K-th subsegment 220 and the K-th subsegment 210 after bitstream switching is required.
  • the presentation can be seamlessly played back by switching the representation at any desired position among the boundaries between the 210 and the K + 1 th subsegments 230.
  • the transmitting device arranges the subsegments included in the segment (step S120).
  • the server 10 may arrange the subsegments included in the segment such that data provided to the client 30 is not repeatedly received or lost during bitstream switching.
  • the earliest reproduction time T E of the K-th subsegment 200 of representation A is the latest reproduction of the K-th sub-segment 230 of representation B.
  • FIG. May be less than the time T L.
  • the client 30 switches at the boundary between representation K-th subsegment 220 and K-th subsegment 210. After that, the representation B can be reproduced.
  • K-th subsegment 210 of Representation A since the client 30 has already received the K-th subsegment 210 of Representation A before the switching, some of the K-th subsegments 200 may be duplicated and provided to the client 30. .
  • the redundant data may be some samples having a fast playback time among the reference streams included in the K-th subsegment 200.
  • the fastest playing time T E of the K-th subsegment 200 of the representation A is K-1 of the representation B. It should have a value larger than the latest reproduction time T L of the first subsegment 230.
  • the earliest reproduction time T E of the K-th subsegment 210 of the representation B is the latest reproduction of the K-th subsegment 240 of the representation A.
  • FIG. May be less than the time T L.
  • the client 30 switches at the boundary between representation K-th subsegment 220 and K-th subsegment 210. Accordingly, some of the K-th subsegments 240 may be lost without being provided to the client 30.
  • the lost data may be some samples having a slow playback time among reference streams included in the K-1 th subsegment 240.
  • the fastest reproduction time T E of the K-th subsegment 210 of the representation B is the K-1 th subsegment 240 of the representation A.
  • T L the latest playback time
  • the fastest playback time T E of the k-th subsegment included in either of the representations A and B is determined.
  • the subsegments may be aligned such that they are greater than the latest playing time T L of the k-1 th subsegment included in another representation.
  • two subsegments having different indices included in representations A and B may be arranged so as not to overlap each other.
  • non-overlapping of the first subsegment and the second subsegment means that, for all media streams of one media component, the fastest playback time T of the first subsegment T E ) is less than the latest reproduction time T L of the second subsegment or the latest reproduction time T L of the first subsegment is the earliest reproduction time T E of the second subsegment. It may mean a smaller case.
  • the client 30 includes any subs including the RAP in the representation B.
  • FIG. 9 Even when switching to a segment, redundant data may not be provided or data may be lost.
  • the data provided to the client 30 may not be duplicated or lost.
  • the client 30 searches for the RAP located after the current playback time in Representation B, and searches for the K-1 th subsegment ( Switching the representation at any point of the boundary B1 between 220 and the K-th subsegment 210 and the boundary B2 between the K-th subsegment 210 and the K + 1th subsegment 230. can do.
  • the client 30 since the K-1 st subsegment 220 of Representation B does not include a RAP, the client 30 includes the RAP after the K-1 st subsegment 220.
  • the representation may be switched at any of the boundaries B1 and B2 of the subsegments.
  • the transmitting device transmits any one of the plurality of representations (step S130).
  • the client 30 selects one of a plurality of representations having different bit rates, resolutions, languages, or codecs, etc. of media content by using a media presentation description (MPD) provided from the server 10.
  • MPD media presentation description
  • the segment corresponding to the selected representation may be requested or a part of the segment by using the HTTP GET or HTTP partial GET method defined in HTTP 1.1 (RFC 2616).
  • the MPD may include a bitstream switching flag indicating whether to bitstream the representations, and a subsegment alignment flag indicating whether the subsegments are aligned. have.
  • the client 30 may perform the bitstream switching operation as described above.
  • the subsegment alignment flag included in the MPD is 'true'
  • the subsegments are aligned as shown in FIGS. 9 to 11, so that the client 30 can be continuously executed without duplicate or lost data. Representation can be switched at any boundary by subsegments.
  • index information for all subsegments, and it is the earliest playing time T E of the corresponding subsegment in the playing time T RAP of the first RAP included in the subsegment.
  • the earliest play time T E of the k th subsegment included in any first representation of the plurality of representations is the latest of the k-1 th subsegment included in any second representation.
  • the client receiving the media content can easily switch the representation in any subsegment including RAP without searching or parsing, so that even when the bitstream is switched due to a change in network state, etc. Media content can be played back continuously without persistence.
  • the media in order to divide MPEG2 TS media into segments for transmission, the media depends on the duration of a reference program element (which may mean the same as the above-mentioned reference stream) as required by the transmission protocol. Can be roughly divided. The boundary between the segments can be aligned with the MPEG2 TS packets.
  • any program element belonging to a program is selected as a reference, and the fastest playback time for the playback unit (PU) for the reference program element in the segment is to be delivered. Can be.
  • a data offset and a stamp (PTS) for the earliest playback time of that subsegment are delivered, optionally the playback time of the random access point and the PTS discontinuity. Whether or not (PTS discontinuity) occurs may be transmitted.
  • the play time of the random access point and whether PTS discontinuity occurs may be used to allow the client 30 to fit the PTS-PCR based timeline to the media play timeline.
  • the metadata may be represented in a binary format based on general ISO Base Media file format data types, which may have a structure similar to a 'sidx' box used in Dynamic adaptive streaming over HTTP (DASH).
  • DASH Dynamic adaptive streaming over HTTP
  • the format of the metadata may allow the client 30 to fit the MPEG2 PTS-PCR based timeline to the media playback timeline.
  • This may be done by delivering the earliest PTS of the playback unit (PU) in the subsegment, and information about discontinuities present in the MPEG2 PTS timeline may be conveyed.
  • PU playback unit
  • FIGS. 12 and 13 illustrate a first embodiment of the configuration of a segment index box that provides metadata about media content.
  • the metadata may be composed of an MPEG-2 segment index box ('m2si'), and the 'm2si' box may be an MPEG2 segment index box different from a subsegment in one segment. Indexes can be provided.
  • the index may refer directly to a subsegment, or may refer to segment indexes referencing a subsegment, the segment index conveying a time and byte offset for another MPEG2 segment index box within the same segment or subsegment. This can be specified hierarchically or in a simple-chain or other form.
  • the earliest reproduction time of the reference program element of the segment may be recorded at the segment index.
  • the reference type indicates whether the reference is for a subsegment or an MPEG2 segment index box, and the offset is from the first byte of the first subsegment indexed in the box to the first byte of the referenced entity. You can provide the distance in bytes.
  • the earliest playing time (for a reference program element) of the first subsegment recorded at the index is provided, and the segment index can provide one entry for each subsegment recorded by the index. .
  • a subsegment duration is provided, wherein the fastest playback time of the subsegment is added by adding the subsegment duration of the previous subsegments and the earliest playback time of the first subsegment. Can be calculated.
  • the earliest reproduction time of the subsegment may mean the earliest reproduction time on a reproduction timescale of any reproduction unit PU in the reference program element of the subsegment.
  • the earliest PTS of the reference program element may be passed with a flag indicating whether the subsegment starts with a PTS discontinuity.
  • segment index box may include a random access point.
  • flags are 24-bit integers having flags and may be defined as the following values.
  • the timescale-present indicates whether a time scale of a media play time exists in a corresponding box, and a flag value may have '0x000001'.
  • the timescale is a timescale for playback, where its value may be the same for the entire playback when provided more than once in one media presentation.
  • reference_PID provides a PID of MPEG2 TS packets carrying a reference program element.
  • program_element_count represents the number of program elements indexed in the next loop and may be designated as 1 or greater.
  • reference_count represents the number of elements indexed by the second loop, and may have a value of 1 or greater.
  • PID represents the PID of MPEG2 TS packets that transmit a program element provided with a presentation time (presentation_time), and one PID in a corresponding loop is the same as the reference_PID.
  • earlist_presentation_time may indicate the earliest playback time for the playback unit (PU) in the program element identified by the PID.
  • reference_type indicates that the reference is for a subsegment, and if it is set to '1', it indicates that the reference is for an MPEG2 segment index ('m2si) box.
  • discontinuity may be set to '1' to indicate that the corresponding subsegment starts with a PTS discontinuity.
  • contains_PTS may be set to '1' to indicate that the PTS of the first playback unit (PU) of the reference program element is delivered in the corresponding subsegment.
  • contains_RAP may be set to '1' to indicate that the reference program element in the referenced subsegment includes a random access point (RAP).
  • the reference_offset may indicate the distance from the first byte of the first subsegment indexed in the corresponding box to the first byte of the subsegment referenced by the iteration of the loop in bytes.
  • subsegment_duration passes the sum of the subsegment_duration fields present in the box when the reference is for an MPEG2 segment index ('m2si) box, and any of the reference program elements in the next subsegment when the reference is for a subsegment. It is possible to convey the difference between the earliest reproduction time of the reproduction unit PU of and the earliest reproduction time of any reproduction unit PU of the reference program element in the referenced subsegment.
  • the duration may be represented by a signaled timescale that is signaled.
  • the PTS may indicate the earliest MPEG2 TS PTS of the reference program element of the corresponding subsegment.
  • RAP_delta_time may provide a reproduction time offset of the random access point (RAP) with respect to earlist_presentation_time of the reference program element. Meanwhile, when the contains_RAP is '0', the RAP_delta_time may be maintained at a value of '0'.
  • the PTS may provide the fastest PTS of the reference program element of the corresponding subsegment.
  • Meta data having the configuration as described above may be delivered to the client 30 in various ways.
  • the metadata represented in the binary format may be called before the MPEG2 TS as a header part of the segments.
  • the boxes may be located before the first byte of the subsegment being indexed, in which case the data offset may include the size of the meta data boxes.
  • the first byte of the subsegment may be interpreted as the first byte of the meta data box that indexes the subsegment.
  • Meta data expressed in XML or binary format may be delivered to the client 30 in a separate file, which may be an HTTP resource or provided out-of-band for the client 30.
  • the client 30 should use the HTTP URL to obtain the resource.
  • this may be provided in a Media Presentation Description with a mechanism similar to URL information for media segments.
  • an additional indexing mechanism based on super-segments may be needed to index the set of boxes at the segment level of a given representation.
  • the MPEG2 Super-Segment Index Box ('mp2s') is an MPEG2 Segment Index Box ('m2si') of one or more segments included in the representation. It can provide an index on a set of).
  • reference_count indicates the number of segments indexed by the corresponding loop.
  • segment_index is the unique segment index of the segment used by the segment list generation.
  • m2si_count represents the number of MPEG2 segment index boxes ('m2si') belonging to one segment identified by the current segment_index.
  • offset indicates the distance in bytes from the first byte of the first MPEG2 segment index box 'm2si' indexed by the loop to the first byte of the first MPEG2 segment index box 'm2si' for the indexed segment.
  • An apparatus for transmitting media content may perform at least some of operations of the server 10 as described with reference to FIGS. 1 to 15, and for this purpose, a plurality of representations of the media content may be used. It may include a media encoder (11) consisting of a segment (segmenter, 12) for dividing the configured representation into a plurality of segments.
  • the receiving device 300 may perform an operation of the client 30 as described with reference to FIGS. 1 to 15.
  • the configuration of the media content received by the receiving device 300 for example, the configuration of the representation, the segment, and the subsegment, may be the same as described with reference to FIGS. 3 to 11, a detailed description thereof will be omitted below. Let's do it.
  • FIG. 16 is a block diagram illustrating a configuration of a media content receiving apparatus according to an exemplary embodiment of the present invention.
  • the illustrated receiving apparatus 300 includes a network interface 310, a decoder 320, and a synchronizer 330. It can be configured to include.
  • the network interface 310 of the receiving apparatus 300 receives a media file together with the synchronization information, and the decoding unit 320 decodes the received media file. You can print
  • the synchronizer 330 may synchronize the decoded media file to a media playback timeline using the media playback time included in the synchronization information.
  • the network interface unit 310 may receive, from the transmitting apparatus 100, the synchronization information (Sync Info.) Having the configuration described with reference to FIGS. 6 to 13 together with the MPEG2 TS.
  • the synchronization information Synchronization information
  • the decoding unit 320 may include a second decoder 322 for decoding the MPEG2 TS, and the second decoder 322 may be a general MPEG2 TS decoder.
  • the second decoder 322 may receive and decode the MPEG2 TS from the network interface 310, and then output the decoded playback units and their PTSs.
  • the synchronizer 330 may identify a play unit provided with a media play time through the received sync information. For that purpose, the network interface 310 should recover the PTS of the playback units provided with the playback time and transfer it to the synchronization unit 330, or the PTS of the playback unit together with the playback time should be provided from the transmitting device 100 as well. do.
  • Elementary stream time recovery may be used for the PTS recovery.
  • the decoder 320 may further include a first decoder 321 for decoding another media received through the network interface 310, and the first decoder 321 may be It may be a decoder for decoding media of another format, such as a 3GPP file format, or the same MPEG2 TS decoder as the second decoder 322.
  • the synchronizer 330 removes the MPEG2 TS-based media output from the second decoder 322 by using encoding information (for example, media playback times for the playback units) transmitted from the transmission apparatus 100. 1 may be synchronized with other media output from the decoder (321).
  • the reception device 300 may play the MPEG2 TS-based media and the other media synchronized by the synchronization unit 330 together.
  • FIG. 17 is a flowchart illustrating a method of receiving media content according to an embodiment of the present invention. A description of the same receiving method as that described with reference to FIGS. 1 to 16 will be omitted.
  • the transmitting apparatus 300 receives a plurality of representations including media content (step S400), and plays the received representation (step S420).
  • a receiving unit (not shown) provided in the network interface unit 310 of the transmitting device 300 may use the HTTP GET or HTTP partial GET method defined in HTTP 1.1 (RFC 2616) for the segment or part of the segment.
  • the transmission can be requested to the transmitting device.
  • control unit (not shown) provided in the network interface 310 is a plurality of representations different from each other in the bit rate, resolution, language or codec of the media content by using the Media Presentation Description (MPD) received from the transmitting device Either one can be selected as the representation to receive.
  • MPD Media Presentation Description
  • the controller checks whether bitstream switching is required (step S410).
  • the controller switches the received representation to a new representation (S430).
  • the method of switching the representations by the controller of the transmitting device 300 may be the same as the switching operation of the client 30 described with reference to FIGS. 3 to 11.
  • the method of receiving and processing media content as described with reference to FIGS. 1 through 17 may be performed by an IPTV receiver according to an embodiment of the present invention.
  • FIG. 18 is a block diagram illustrating a configuration of an IPTV receiver according to an embodiment of the present invention.
  • the IPTV receiver according to an embodiment of the present invention may include a separate tuner or the like for receiving terrestrial broadcasting, cable broadcasting, satellite broadcasting, or the like.
  • a separate tuner or the like for receiving terrestrial broadcasting, cable broadcasting, satellite broadcasting, or the like.
  • a description will be given of the configuration of receiving an IPTV service provided using an IP network.
  • ITF represents an Open IPTV Terminal Function, which may mean a receiver composed of a function module required to support the IPTV service.
  • the IPTV receiver includes a network interface unit 501, a TCP / IP manager 502, a service delivery manager 504, a PVR manager 505, Demultiplexer (508), Data Decoder (507), Audio / Video Decoder (512), A / V Display & OSD Module (515), Application Manager ( Application Manager (513, 514), Service Information Database (SI & Metadata DB) 511, Service Discovery Manager (509), Service Control Manager (503), Metadata Manager (Metadata Manager) 510 and a content database unit (Content DB) 506.
  • a network interface unit 501 a TCP / IP manager 502, a service delivery manager 504, a PVR manager 505, Demultiplexer (508), Data Decoder (507), Audio / Video Decoder (512), A / V Display & OSD Module (515), Application Manager ( Application Manager (513, 514), Service Information Database (SI & Metadata DB) 511, Service Discovery Manager (509), Service Control Manager (503), Metadata Manager (Metadata Manager) 510
  • the network interface unit 501 receives packets received from a network and transmits the packets to the network. That is, the network interface unit 501 receives a service, media content, etc. from a service provider through a network.
  • the TCP / IP manager 502 is involved in packet forwarding from the source to the destination for packets received by the IPTV receiver and packets transmitted by the IPTV receiver. In addition, the TCP / IP manager 502 classifies the received packet to correspond to an appropriate protocol, and sends it to the service delivery manager 504, the service discovery manager 509, the service control manager 503, and the metadata manager 510. Output sorted packets.
  • the service delivery manager 504 is responsible for controlling the received service data.
  • RTP / RTCP can be used to control real-time streaming data.
  • the service delivery manager 504 parses the received data packet according to the RTP and transmits it to the demultiplexer 508 or under the control of the service manager 514.
  • the content database unit 506 stores the content.
  • the service delivery manager 504 feeds back the network reception information to a server that provides a service using RTCP.
  • the demultiplexer 508 demultiplexes the received packet into audio, video, PSI (Program Specific Information) data, and the like, and transmits the demultiplexer 508 to the audio / video decoder 512 and the data decoder 507, respectively.
  • PSI Program Specific Information
  • the data decoder 507 decodes service information such as, for example, program specific information (PSI). That is, the data decoder 507 receives and decodes the demultiplexed PSI section, the Program and Service Information Protocol (PSIP) section, or the Service Information (DVB-SI) section from the demultiplexer 508.
  • PSI program specific information
  • PSIP Program and Service Information Protocol
  • DVB-SI Service Information
  • the data decoder 507 decodes the received sections to create a database of service information, and stores the database of the service information in the service information database unit 511.
  • An audio / video decoder 512 decodes the video data and audio data received at the demultiplexer 508.
  • the audio data and the video data decoded by the audio / video decoder 512 are provided to the user through the display unit 515.
  • the application manager manages the overall state of the IPTV receiver, provides a user interface, and manages other managers.
  • the application manager includes a user interface manager 513 and a service manager 514.
  • the user interface manager 513 provides a graphical user interface (GUI) for a user using an OSD (On Screen Display), etc., and receives a key input from a user to perform a receiver operation according to the input. For example, upon receiving a key input related to channel selection from a user, the key input signal is transmitted to the service manager 514.
  • GUI graphical user interface
  • the service manager 514 controls a manager associated with a service, such as a service delivery manager 504, a service discovery manager 509, a service control manager 503, and a metadata manager 510.
  • the service manager 514 creates a channel map and selects a channel using the channel map according to a key input received from the user interface manager 513.
  • the service manager 514 receives service information of a channel from the data decoder 507 and sets an audio / video packet identifier (PID) of the selected channel to the demultiplexer 508.
  • PID audio / video packet identifier
  • the service discovery manager 509 provides information necessary to select a service provider that provides a service. Upon receiving a signal regarding channel selection from the service manager 514, the service discovery manager 509 uses the information to find a service.
  • the service control manager 503 is responsible for selecting and controlling a service.
  • the service control manager 503 uses IGMP or RTSP when the user selects a Live Broadcasting service such as a conventional broadcasting method, and uses RTSP when selecting a service such as Video On Demand (VOD). Can be used to select and control services.
  • IGMP Live Broadcasting service
  • RTSP Video On Demand
  • the RTSP protocol may provide a trick mode for real time streaming.
  • the service control manager 503 may initiate and manage a session through the IMC gateway using an IP multimedia subsystem (IMS) or a session initiation protocol (SIP).
  • IMS IP multimedia subsystem
  • SIP session initiation protocol
  • the protocols are one embodiment, and other protocols may be used depending on implementation.
  • the metadata manager 510 manages metadata associated with a service and stores the metadata in the service information database unit 511.
  • the service information database unit 511 stores service information decoded by the data decoder 507, metadata managed by the metadata manager 510, and information necessary to select a service provider provided by the service discovery manager 509. do. In addition, the service information database unit 511 may store setup data for the system.
  • the service information database unit 511 and the content database unit 506 may be implemented using nonvolatile memory (NVRAM) or flash memory, respectively, and are two logically separated areas on the same storage area. Can be implemented.
  • NVRAM nonvolatile memory
  • flash memory flash memory
  • the PVR manager 505 is a module for recording and playing back live streaming content.
  • the PVR manager 505 may collect metadata about the recorded content and generate additional information provided to a user such as a thumbnail image or an index.
  • Functions of the control unit of the IPTV receiver is the TCP / IP manager 502, service delivery manager 504, PVR manager 505, application managers (513, 514), service discovery shown in FIG.
  • the manager 509, the service control manager 503, and the metadata manager 510 may be divided into a plurality of modules and implemented.
  • the TCP / IP manager 502 filters the SD & S information by using the target package information as described above, so that the network interface unit 501 corresponds to a specific package (for example, a package to which an IPTV receiver is subscribed). Only the payload or segment may be requested to the server and received.
  • the TCP / IP manager 502 filters the SD & S information received by the multicast method using the target package information so that only payloads or segments corresponding to a specific package are parsed and processed by the data decoder 507. can do.
  • FIG. 19 is a block diagram showing another embodiment of the configuration of the IPTV receiver according to the present invention, and shows the configuration of the IPTV receiver in functional blocks.
  • the solid line arrow shown in FIG. 19 corresponds to the data path, and the dotted line arrow corresponds to the control signal path.
  • Cable modem, DSL modem, etc (601) is an interface that allows ITF to be connected to IP network at the physical level, and demodulates the signal transmitted through the physical medium to restore the digital signal.
  • the Ethernet NIC 602 restores the signal received through the physical interface to IP data, and the IP Network Stack 607 processes each layer according to the IP Protocol stack.
  • the XML Parser 609 parses an XML Document among received IP data
  • the File Handler 608 processes data transmitted in the form of File through FLUTE among the received IP data.
  • the SI Handler 611 processes the part corresponding to the IPTV service information among the received File type data and stores it in the storage 612, and the EPG Handler 610 corresponds to the IPTV EPG information among the received File type data.
  • the portion can be processed and stored in Storage 612.
  • the storage 612 stores various data such as the SI and the EPG.
  • the SI Decoder 613 receives the SI data from the storage 612 and analyzes it to obtain channel map information.
  • the EPG Decoder 614 analyzes the EPG data stored in the storage 612 to restore necessary information for the EPG configuration. do.
  • the ITF Operation Controller 615 is a main controller that controls the operation of an ITF such as a channel change or an EPG display.
  • the channel service manager 616 performs an operation such as changing a channel according to a user input
  • the application manager 617 may perform an application service such as an EPG display according to the user input.
  • the MPEG-2 Demultiplexer 603 may extract MPEG-2 Transport Stream data from the received IP datagram and transmit the MPEG-2 Transport Stream data to the corresponding module according to the packet identification information (PID).
  • PID packet identification information
  • the MPEG-2 PSI / PSIP Parser 604 extracts and parses PSI / PSIP data including packet identification information (PID) of A / V data or access information about a program element from the MPEG-2 Transport Stream. Can be.
  • PID packet identification information
  • the A / V Decoder 605 decodes the input audio and video data and transmits the decoded audio and video data to the display module 606.
  • the display module 606 may output decoded A / V data or an application.
  • the above-described method for transmitting and receiving media content according to the present invention can be stored in a computer-readable recording medium that is produced as a program for execution on a computer.
  • Examples of the computer-readable recording medium include ROM, RAM, CD-ROM. Magnetic tapes, floppy disks, optical data storage devices, and the like, and also include those implemented in the form of carrier waves (eg, transmission over the Internet).
  • the computer readable recording medium can be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
  • functional programs, codes, and code segments for implementing the method can be easily inferred by programmers in the art to which the present invention belongs.

Abstract

본 발명은 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치에 관한 것으로, 그 방법은 미디어 콘텐트를 복수의 레프리젠테이션들(representations)로 구성하는 단계; 레프리젠테이션을 복수의 세그먼트들(segments)로 분할하는 단계; 세그먼트에 포함된 서브세그먼트들(subsegments)을 정렬하는 단계; 및 레프리젠테이션들 중 어느 하나를 전송하는 단계를 포함한다.

Description

미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치
본 발명은 미디어 콘텐트를 인터넷을 통해 송수신하는 방법 및 장치에 관한 것이다.
현재, 지상파, 케이블, 위성 또는 DMB(Digital Multimedia Broadcasting) 등과 같은 디지털 방송들은 대부분 MPEG-2 TS(Transport Stream)을 이용하여 AV 콘텐트를 스트리밍하고 있다.
또한, 최근 인터넷의 빠른 성장에 따라 IP(Internet Protocol) 네트워크를 주 전송망으로 하여 콘텐트를 제공하는 멀티미디어 서비스가 활성화되고 있으며, 디지털 방송은 스테레오 3D 비디오 방송, UHD(Ultra High Definition) 방송, 다시점 3D 비디오 방송, 홀로그램 방송 등과 같이 보다 많은 전송량이 요구되는 방향으로 발전해 나가고 있다.
그러나, 188 바이트의 고정 길이 패킷을 가지는 MPEG-2 TS는 IP 네트워크를 이용하여 기존 HDTV보다 높은 해상도를 가지는 콘텐트를 전송하기에는 비효율적일 수 있다.
본 발명의 일실시예는 미디어 콘텐트를 네트워크 상태에 따라 효율적으로 스트리밍할 수 있도록 하는 송수신 방법 및 장치를 제공하는 것을 목적으로 한다.
본 발명의 실시예에 따른 미디어 콘텐트 전송 방법은, 미디어 콘텐트를 복수의 레프리젠테이션들(representations)로 구성하는 단계; 상기 구성된 레프리젠테이션을 복수의 세그먼트들(segments)로 분할하는 단계; 상기 세그먼트에 포함된 서브세그먼트들(subsegments)을 정렬하는 단계; 및 상기 레프리젠테이션들 중 어느 하나를 전송하는 단계를 포함하고, 상기 서브세그먼트들은 상기 레프리젠테이션들 중 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간(the earliest presentation time)이 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간(the latest presentation time)보다 크도록 정렬된다.
본 발명의 실시예에 따른 미디어 콘텐트 수신 방법은, 상기 미디어 콘텐트를 포함하는 복수의 레프리젠테이션들 중 제1 레프리젠테이션을 수신하는 단계; 상기 수신되는 레프리젠테이션을 제2 레프리젠테이션으로 스위칭하는 단계; 및 상기 수신되는 레프리젠테이션을 재생하는 단계를 포함하고, 상기 레프리젠테이션은 복수의 세그먼트들로 분할되어 수신되며, 상기 세그먼트에 포함된 서브세그먼트들은 상기 제1, 2 레프리젠테이션 중 어느 하나에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간이 또 다른 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간보다 크도록 정렬되어 있다.
본 발명의 실시예에 따른 미디어 콘텐트 전송 장치는, 상기 미디어 콘텐트를 복수의 레프리젠테이션들로 구성하는 미디어 인코더; 상기 구성된 레프리젠테이션을 복수의 세그먼트들로 분할하는 세그멘터(segmenter)를 포함하고, 상기 세그먼트에 포함된 서브세그먼트들은 상기 레프리젠테이션들 중 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간이 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간보다 크도록 정렬된다.
본 발명의 실시예에 따른 미디어 수신 장치는, 상기 미디어 콘텐트를 포함하는 복수의 레프리젠테이션들 중 어느 하나를 수신하는 수신부; 및 상기 수신되는 레프리젠테이션을 스위칭하는 제어부를 포함하고, 상기 레프리젠테이션은 복수의 세그먼트들로 분할되어 수신되며, 상기 세그먼트에 포함된 서브세그먼트들은 상기 레프리젠테이션들 중 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간이 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간보다 크도록 정렬되어 있다.
한편, 상기 미디어 콘텐트 송수신 방법은 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
본 발명의 일실시예에 따르면, 미디어 콘텐트를 서로 다른 비트율 등을 가지는 복수의 레프리젠테이션들로 구성하여 세그먼트 단위로 송수신함에 있어, 레프리젠테이션의 재생 시간에 맞추어 상기 세그먼트에 포함된 서브세그먼트들을 정렬함으로써, 비트스트림 스위칭시 발생할 수 있는 데이터의 손실 또는 중복 수신을 방지할 수 있다.
또한, 미디어 콘텐트를 수신하는 클라이언트는 별도의 탐색이나 파싱없이RAP(Representation Access Point)를 포함하는 임의의 서브세그먼트에서 레프리젠테이션을 용이하게 스위칭할 수 있다.
그에 따라, 네트워크 상태의 변화 등에 의해 비트스트림을 스위칭하는 경우에도 미디어 콘텐트가 끈김없이 연속하여 재생될 수 있다.
도 1은 본 발명의 일실시예에 따른 미디어 콘텐트 송수신 시스템의 구성을 나타내는 블록도이다.
도 2는 MPEG2 TS(Transport Stream)의 구조를 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 미디어 콘텐트 전송 방법을 나타내는 흐름도이다.
도 4는 미디어 콘텐트를 포함하는 레프리젠테이션들의 구성에 대한 일실시예를 나타내는 도면이다.
도 5는 서브세그먼트의 구성에 대한 일실시예를 나타내는 도면이다.
도 6 및 도 7은 서브세그먼트에 포함되는 RAP의 위치를 결정하는 방법에 대한 일실시예를 설명하기 위한 도면들이다.
도 8 및 도 9는 서브세그먼트들을 정렬하는 방법에 대한 일실시예를 설명하기 위한 도면들이다.
도 10 및 도 11은 레프리젠테이션을 스위칭하는 방법에 대한 실시예들을 나타내는 도면들이다.
도 12 및 도 13은 미디어 콘텐트에 대한 메타 데이터를 제공하는 세그먼트 인덱스 박스(Segment Index Box)의 구성에 대한 제1 실시예를 나타내는 도면들이다.
도 14 및 도 15는 상기 세그먼트 인덱스 박스의 구성에 대한 제2 실시예를 나타내는 도면들이다.
도 16은 본 발명의 실시예에 따른 미디어 콘텐트 수신 장치의 구성을 나타내는 블록도이다.
도 17은 본 발명의 실시예에 따른 미디어 콘텐트 수신 방법을 나타내는 흐름도이다.
도 18은 본 발명에 따른 IPTV 수신기의 구성에 대한 제1 실시예를 나타내는 블록도이다.
도 19는 본 발명에 따른 IPTV 수신기의 구성에 대한 제2 실시예를 나타내는 블록도이다.
이하, 첨부된 도 1 내지 도 19를 참조하여 본 발명의 실시예에 따른 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치에 대하여 상세히 설명하기로 한다.
이하에서 본 발명의 실시예를 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고, 후술 되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명의 실시예에 따른 송신 장치와 수신 장치는 IP(Internet Protocol) 기반의 전송 시스템을 이용하여 미디어 콘텐트를 송수신하며, 예를 들어 상기 미디어 콘텐트는 TCP(Transmission Control Protocol) 및 HTTP(Hypertext Transfer Protocol) 프로토콜을 이용하여 웹서버를 통해 스트리밍될 수 있다.
상기 송신 장치는 콘텐트 제공자로부터 콘텐트를 제공받아 이를 변환하여 전송하거나, 또는 미디어 DB(media DataBase)에 저장하여 보관할 수 있다.
예를 들어, 상기 콘텐트 제공자로부터 제공되는 미디어 콘텐트는 MPEG-2 Transport Stream(MPEG-2 TS) 포맷 또는 ISO Base Media 파일 포맷에 따른 것일 수 있으며, 송신 장치는 상기 미디어 콘텐트를 IP 기반 전송(IP-based delivery)에 용이한 포맷으로 변환한 후 인터넷(internet) 망 등의 네트워크(network)를 통해 전송하거나 또는 상기 미디어 DB에 저장할 수 있다.
한편, 상기 수신 장치는 IP 기반의 전송 시스템을 이용하여 송신 장치로부터 미디어 콘텐트를 수신하고, 상기 수신된 미디어 콘텐트를 변환한 후 재생하거나, 로컬 저장매체(local storage)에 저장할 수 있다.
예를 들어, 상기 수신 장치는 상기 송신 장치로부터 수신되는 미디어 콘텐트를 MPEG-2 TS 포맷 또는 ISO Base Media 파일 포맷으로 변환한 후 처리하여 재생하거나 또는 상기 로컬 저장 매체에 저장할 수 있다.
한편, HTTP를 이용한 IP 기반의 오픈 인터넷 환경은 QoS를 보장하지 않으므로, 네트워크 트래픽(network traffic)에 따라 수신 장치로 전송할 수 있는 대역폭이 동적으로 변화하여 콘텐트 파일의 전송을 위해 필요한 안정적이고 고정적인 대역폭을 확보하기 어려울 수 있다.
예를 들어, 사용자가 집에서 사용하는 PC 시스템에서 네트워크 전송이 빈번한 소프트웨어를 설치 또는 사용하는 경우, 네트워크 트래픽의 증가로 인해 안정적이고 고정적인 대역폭을 확보할 수 없으며, 이러한 문제의 해결을 위해인터넷 게이트웨이가 특정 소프트웨어에 대역폭을 할당하는 방법도 고안되어 있지만 현재까지는 널리 사용되지 못하고 있다.
또한, 수신 장치에 고정적인 대역폭이 보장되는 경우에도, 오픈 인터넷 환경에서 운영되는 송신 장치인 인터넷 서버는 여러 다른 네트워크들을 거쳐 서비스가 전송되므로, 여전히 QoS 보장에 어려움이 있을 수 있다.
예를 들어, 유튜브(Youtube) 등과 같은 서비스들은 특정 서비스 사업자 운영하는 다른 네트워크를 통하여 제공되어, 전송 과정에서 네트워크 설정이나 트래픽의 양이 증가함에 따라 콘텐트가 지연 전송되거나 전송 포기(drop) 또는 재전송될 가능성이 있다.
상기한 바와 같은 QoS 보장의 문제는 오픈 인터넷 환경에서 콘텐트 서비스를 제공하는 콘텐트 제공자들에게 어려움을 느끼게 하는 주요한 원인이 될 수 있다.
한편, 상기와 같은 콘텐트 전송의 어려움을 해결하기 위하여, M3U 형태의 플레이 리스트 파일을 이용하여 네트워크 대역폭에 따라 콘텐트를 적절하게 송수신할 수 있도록 하는 적응적 스트리밍(adaptive streaming) 방식이 이용될 수 있다.
상기 적응적 스트리밍(adaptive streaming) 방식은 하나의 콘텐트에 대하여 서로 다른 비트율(bitrate) 등을 가진 콘텐트 파일들을 만들어 두고 수신 장치의 대역폭에 따라 비트율을 선택하여 전송 요청할 수 있도록 하는 것으로, 오픈 인터넷 환경에서는 대부분 HTTP 프로토콜을 이용해 콘텐트를 전송하고 있기 때문에, HTTP Adaptive Streaming이라고 지칭된다.
도 1은 본 발명의 일실시예에 따른 콘텐트 송수신 시스템의 구성을 블록도로 도시한 것으로, 상기 적응적 스트리밍(adaptive streaming)을 위한 시스템의 구조에 대한 일예를 나타낸 것이다.
도 1을 참조하면, 적응적 스트리밍(adaptive streaming)을 위한 시스템은 서버(server, 10), 분배 서버(distribution, 20) 및 클라이언트(client, 30)를 포함하여 구성될 수 있다.
서버(10)가 AV(Audio/Video)를 미가공된 데이터(raw data)로 미디어 인코더(media encoder, 11)에 전달하면, 미디어 인코더(51)는 상기 AV 데이터를 MPEG-2 TS 형태의 스트리밍 파일 포맷(streaming File Format)으로 변환할 수 있다.
한편, 스트리밍 세그멘터(stream segmenter, 12)는 미디어 인코더(11)로부터 출력되는 MPEG-2 TS 스트리밍 파일을 복수의 세그먼트들로 분할할 수 있다.
예를 들어, 스트리밍 세그멘터(12)는 하나의 파일 또는 실시간 MPEG-2 TS 스트리밍 파일을 약 10초간 재생할 수 있는 크기의 세그멘트들로 분할한 후 분배 서버(20)에 저장시킬 수 있다.
클라이언트(30)는 HTTP 프로토콜을 이용해 분배 서버(20)에 저장되어 있는 분할된 파일들을 요청하여 전송받아 재생할 수 있다.
또한, 서로 다른 비트율을 가지는 MPEG-2 TS 파일 세그먼트들이 분배 서버(20)에 저장될 수 있으며, 그를 위해 각각 특정 비트율로 인코딩된 MPEG-2 TS 파일 세그먼트들이 저장된 웹 서버(web server, 21)가 분배 서버(20)에 여러개 존재할 수 있다.
예를 들어, 20kbps의 비트율로 인코딩된 MPEG-2 TS 파일 세그먼트들과 500kbps의 비트율로 인코딩된 MPEG-2 TS 파일 세그먼트들이 서로 다른 파일명으로 분배 서버(20)에 저장될 수 있다.
그에 따라, 클라이언트(30)는 수신 지역의 대역폭이 감소하는 경우, 20kbps의 비트율로 인코딩된 파일을 요청하여 10초간 재생하고, 상기 재생 시간인 10초가 경과하기 전에 다시 주기적으로 대역폭을 검사할 수 있다.
이 때, 상기 대역폭이 고용량, 고품질의 파일을 전송할 수 있을 정도로 증가하는 경우, 클라이언트(30)는 500kbps의 비트율로 인코딩된 파일의 전송을 요청할 수 있다.
그로 인해, 클라이언트(30)는 네트워크 대역폭에 따라 적응적으로 20kbps와 500kbps의 비트율들로 인코딩된 콘텐트들을 번갈아 수신하여 재생할 수 있으며, 대역폭이 좋지 않은 경우 재생하는 영상의 질이 저하될 수 있으나 영상이 끊어지는 현상이 최소화될 수 있다.
상기한 바와 같은 HTTP 프로토콜을 이용한 적응적 스트리밍을 위해, 미디어 콘텐트는 복수의 레프리젠테이션들(representations)로 구성될 수 있으며, 상기 레프리젠테이션들에 각각 포함된 미디어 콘텐트는 비트율(bitrate), 해상도(resolution), 언어(language) 또는 코덱(codec)이 서로 다를 수 있다.
상기 미디어 콘텐트는 오디오(audio), 비디오(video) 또는 텍스트(timed text) 등과 같은 미디어 컴포넌트들(media components)을 포함하며, 상기 레프리젠테이션은 하나 또는 그 이상의 미디어 컴포넌트들의 구조화된 모음(structured collection)일 수 있다.
이 경우, 클라이언트(30)는 상기한 바와 같이 서로 다른 비트율 등을 가지도록 구성된 복수의 레프리젠테이션들 중 어느 하나를 서버(20)에 요청하여 수신할 수 있다.
한편, 클라이언트(30)가 상기 세그먼트들에 액세스하여 사용자에게 스트리밍 서비스를 제공하기 위해, 서버(10)는 세그먼트 데이터와 함께 클라이언트(30)에 의해 요구되는 메타 데이터를 포함하는 MPD(Media Presentation Description)를 제공할 수 있다.
클라이언트(30)는 상기 MPD에 포함된 엘리먼트(element)를 이용해 상기 복수의 레프리젠테이션들 중 어느 하나를 선택하여 전송 요청할 수 있다.
상기 레프리젠테이션은 상기한 바와 같이 복수의 세그먼트들로 분할되며, HTTP 1.1(RFC 2616)에서 정의된 HTTP GET 또는 HTTP partial GET method를 이용한 클라이언트(30)의 요청에 따라 세크먼트 또는 세그먼트의 일부분으로 전송될 수 있다.
한편, 비트스트림 스위칭(bitstream switching)이 가능한 경우, 클라이언트(30)는 미디어 재생 도중 업데이트된 정보에 기초하여 수신되는 레프리젠테이션을 다른 레프리젠테이션으로 전환할 수 있다.
이 경우, 클라이언트(30)는 이전 레프리젠테이션이 재생되던 시점부터 새로운 레프리젠테이션을 수신하여 재생할 수 있다.
또한, 상기 세그먼트는 복수의 서브세그먼트들을 포함하여 구성될 수 있으며, 상기 서브세그먼트는 세그먼트 레벨에서 인덱스될 수 있는 가장 작은 단위(unit)를 의미할 수 있다.
도 2를 참조하면, MPEG-2 TS는 각각 188바이트의 고정 비트율을 가지는 복수의 MPEG-2 TS 패킷들을 포함할 수 있으며, 상기 서브세그먼트는 연속하는 MPEG-2 TS 패킷들의 집합으로 구성될 수 있다.
예를 들어, 하나의 샘플은 동일한 PID 값을 가지는 하나 또는 그 이상의 MPEG-2 TS 패킷들로 구성된 액세스 유닛이며, 상기 서브세그먼트는 복호화 순서로 연속되는 액세스 유닛들의 하나의 인덱스된 집합으로 정의될 수 있다.
한편, ISO Base Media 파일 포맷을 스트리밍(streaming) 하기 위하여 "단편화된 파일(fragmented file)" 구조가 이용될 수 있다.
예를 들어, 상기 단편화된 파일은 미디어 트랙들을 물리적으로 복수의 프래그먼트들로 나누며, 각각의 프래그먼트는 moof(Movie Fragment) 박스와 mdat(media data) 박스로 구성될 수 있다.
상기 moof 박스 이후의 mdat 박스는 프래그먼트 미디어 데이터를 포함하여, 이와 같이 조합된 moof-mdat 쌍은 하나의 프래그먼트를 구성할 수 있다.
이 경우, 상기 서브세그먼트는 연속되는 하나 또는 그 이상의 movie 프래그먼트들의 독립된(self-contained) 집합으로 정의될 수 있으며, 그에 따라 하나 이상의 moof(Movie Fragment) 박스들과 그에 대응되는 mdat(media data) 박스들을 포함할 수 있다.
본 발명의 실시예에 따르면, 상기한 바와 같이 MPEG2 TS 또는 ISO base 미디어 파일 포맷의 미디어 콘텐트를 복수의 레프리젠테이션들로 구성하여 세그먼트 단위로 전송함에 있어, 서버(10)는 클라이언트(30)에서의 비트스트림 스위칭이 효율적으로 수행되도록 상기 세그먼트에 포함된 서브세그먼트들을 정렬할 수 있다.
한편, 상기에서는 MPEG2 TS 또는 ISO base 미디어 파일 포맷의 미디어 콘텐트가 HTTP를 통해 인터넷으로 전송되는 경우를 예로 들어 설명하였으나, 본 발명은 이에 한정되지 아니하며, 본 발명의 실시예에 따른 미디어 콘텐트 송수신 방법 및 장치는 다양한 포맷의 미디어 콘텐트들에 대해 적용 가능하다.
이하, 도 3 내지 도 11을 참조하여 서브세그먼트들을 정렬하여 미디어 콘텐트를 전송하는 방법에 대한 실시예들에 대해 상세하게 설명하기로 한다.
도 3은 본 발명의 실시예에 따른 미디어 콘텐트 전송 방법을 흐름도로 도시한 것으로, 도시된 전송 방법 중 도 1 및 도 2를 참조하여 설명한 것과 동일한 것에 대한 설명은 이하 생략하기로 한다.
도 3을 참조하면, 송신 장치는 미디어 콘텐트를 복수의 레프리젠테이션들로 구성하고(S100 단계), 상기 구성된 레프리젠테이션을 복수의 세그먼트들로 분할한다(S110 단계).
예를 들어, 상기 복수의 레프리젠테이션들은 상기 전송되는 미디어 콘텐트의 비트율, 해상도, 언어 및 코덱 중 적어도 하나에 따라 상이하게 구성될 수 있으며, 각각의 레프리젠테이션은 HTTP 프로토콜을 이용한 전송을 위해 복수의 세그먼트들로 분할될 수 있다.
도 4를 참조하면, 송신 장치는 미디어 콘텐트를 서로 다른 비트율을 가지는 레프리젠테이션 A(Representation A)와 레프리젠테이션 B(Representation A)로 만들어 놓을 수 있으며, 상기 레프리젠테이션 A와 B는 하나의 그룹을 형성할 수 있다. 상기 그룹은 상기 레프리젠테이션 A와 B 이외에 다른 레프리젠테이션들을 더 포함할 수 도 있다.
한편, 상기 레프리젠테이션 A 및 B에 포함된 모든 서브세그먼트들에 대하여 인덱스(index) 정보가 존재하며, 상기 인덱스 정보는 클라이언트(30)가 partial HTTP GET method를 이용하여 세그먼트의 서브세그먼트들을 랜덤하게 액세스하기 위한 것일 수 있다.
예를 들어, 상기 서브세그먼트들이 각각 세그먼트 인덱스(segment index)를 포함하거나, 또는 상기 서브세그먼트에 대한 인덱스를 제공하는 인덱스 세그먼트(index segment)가 존재할 수도 있다.
상기 서브세그먼트들에 대한 인덱스 정보를 제공하는 방법에 대해서는, 도 12 내지 도 15를 참조하여 뒤에서 상세히 설명하기로 한다.
또한, 상기 서브세그먼트와 관련하여, 서브세그먼트(200)의 가장 빠른 재생 시간(TE, the earliest presentation time)과 가장 늦은 재생 시간(TL, the latest presentation time)이 정의될 수 있다.
도 5를 참조하면, 서브세그먼트(200)는 비디오(Video)와 오디오(Audio), 2개의 미디어 컴포넌트들을 포함할 수 있으며, 상기 미디어 컴포넌트들 중 어느 하나(예를 들어, 비디오)가 레퍼런스 스트림(reference stream)으로 지정될 수 있다.
즉, 상기 레퍼런스 스트림은 미디어 컴포넌트들 중 주된 미디어 컴포넌트(primary media component)의 연속하는 샘플들의 그룹을 의미할 수 있다.
이 경우, 서브세그먼트(200)의 가장 빠른 재생 시간(TE)은 레퍼런스 스트림에 존재하는 임의의 샘플의 가장 빠른 재생 시간으로 정의될 수 있으며, 그에 따라 비디오 샘플들 중 가장 빠른 샘플(201)의 재생 시간이 될 수 있다.
그리고, 서브세그먼트(200)의 가장 늦은 재생 시간(TL)은 레퍼런스 스트림에 존재하는 가장 늦은 샘플(204)의 재생 시간이 될 수 있다.
한편, 상기 샘플(204)은 서브세그먼트(200)(또는 세그먼트)의 스트림에 존재하는 액세스 유닛(access unit)을 의미할 수 있다.
도 4에 도시된 바와 같은 서브세그먼트들은 크기 또는 미디어 콘텐트의 지속 시간(duration)이 상이할 수 있다.
또한, 도 4에서는 서브세그먼트의 가장 늦은 재생 시간(TL)이 연속하는 서브세그먼트들 사이의 경계에 위치하는 것으로 도시되었으나, 상기 서브세그먼트의 가장 늦은 재생 시간(TL)은 상기 서브세그먼트들 사이의 경계보다 약간 앞설 수 있다.
즉, 상기 레프리젠테이션 A에서, K 번째 서브세그먼트의 가장 늦은 재생 시간(TL)은 K 번째 서브세그먼트와 K+1 번째 서브세그먼트 사이의 경계에 해당하는 시간보다 약간 앞설 수 있다.
도 6을 참조하면, 세그먼트는 하나 이상의 RAP(Representation Access Point)를 포함하며, 상기 RAP는 서브세그먼트 내에 포함되어 있을 수 있다.
클라이언트(30)는 서브세그먼트에 포함된 정보만을 이용하여 상기 RAP에 해당하는 위치로부터 앞으로 재생을 시작할 수 있으며, 상기 RAP은 바이트 인덱스(ILRAP)와 재생 시간(TRAP)을 포함할 수 있다.
상기 재생 시간(TRAP)은, TRAP보다 크거나 또는 같은 재생 시간을 가지는 모든 액세스 유닛들이 올바르게 복호화될 수 있도록 하는 가장 빠른 재생 시간을 의미할 수 있다.
한편, 레프리젠테이션 A로부터 레프리젠테이션 B로 비트스트림 스위칭이 요구되면, 클라이언트(30)는 현재 재생 시간에 이후 가까운 재생 시간에 상기 레프리젠테이션 B에서 RAP를 탐색하여, K 번째 서브세그먼트(210)에 포함된 RAP(211) 까지는 상기 레프리젠테이션 A를 재생하며, 상기 탐색된 RAP(211) 이후로는 상기 레프리젠테이션 B를 재생할 수 있다.
도 6에서는 서브세그먼트가 RAP을 포함하지 않거나 하나의 RAP을 포함하는 것으로 도시되었으나, 상기 서브세그먼트는 2 이상의 RAP들을 포함할 수 있으며, 그러한 경우 도 6에 도시된 RAP은 서브세그먼트에 포함된 RAP들 중 가장 빠른 첫번째 RAP을 의미할 수 있다.
도 7을 참조하면, 서브세그먼트에 포함된 첫번째 RAP의 재생 시간(TRAP)은 해당 서브세그먼트의 가장 빠른 재생 시간(TE)과 일치할 수 있다.
이와 같이, RAP를 포함하는 모든 서브세그먼트들(contatins_RAP=1)에 대하여, 상기 서브세그먼트에 포함된 첫번째 RAP의 재생 시간(TRAP)이 해당 서브세그먼트의 가장 빠른 재생 시간(TE)이 되도록 함으로써, 클라이언트(30)가 연속하는 인덱스들을 가지는 연속한 서브세그먼트들 사이의 임의의 경계에서 레프리젠테이션들을 스위칭할 수 있도록 한다.
예를 들어, 도 7에 도시된 경우에 있어서, 클라이언트(30)는 비트스트림 스위칭이 요구된 후 K-1 번째 서브세그먼트(220)와 K 번째 서브세그먼트(210) 사이의 경계 또는 K 번째 서브세그먼트(210)와 K+1 번째 서브세그먼트(230) 사이의 경계 중 원하는 임의의 위치에서 레프리젠테이션을 스위칭하여 미디어 콘텐트를 끈김없이 재생할 수 있다.
이하에서는, 도 7를 참조하여 설명한 바와 같이, 서브세그먼트에 포함된 첫번째 RAP의 재생 시간(TRAP)이 해당 서브세그먼트의 가장 빠른 재생 시간(TE)과 일치하는 것으로 가정한다.
송신 장치는 상기 세그먼트에 포함된 서브세그먼트들을 정렬한다(S120 단계).
상기 S120 단계에서, 서버(10)는 비트스트림 스위칭시 클라이언트(30)로 제공되는 데이터가 중복 수신되거나 손실되지 않도록 상기 세그먼트에 포함된 서브세그먼트들을 정렬할 수 있다.
도 8의 (a)을 참조하면, 레프리젠테이션 A의 K 번째 서브세그먼트(200)의 가장 빠른 재생 시간(TE)이 레프리젠테이션 B의 K-1 번째 서브세그먼트(230)의 가장 늦은 재생 시간(TL) 보다 작을 수 있다.
이 경우, 레프리젠테이션 A에서 B로의 비트스트림 스위칭이 요구되면, 클라이언트(30)는 레프리젠테이션 B의 K-1 번째 서브세그먼트(220)와 K 번째 서브세그먼트(210) 사이의 경계에서 스위칭을 하여, 그 후로는 상기 레프리젠테이션 B를 재생할 수 있다.
한편, 클라이언트(30)는 상기 스위칭 이전에 이미 레프리젠테이션 A의 K 번째 서브세그먼트(210)를 수신하였으므로, 상기 K 번째 서브세그먼트(200) 중 일부가 중복되어 클라이언트(30)로 제공될 수 있다.
예를 들어, 상기 중복된 데이터(Redundant data)는 상기 K 번째 서브세그먼트(200)에 포함된 레퍼런스 스트림 중 재생 시간이 빠른 일부 샘플들일 수 있다.
따라서 상기 스위칭 과정에서 중복된 데이터가 클라이언트(30)에 제공되지 않도록 하기 위해서는, 레프리젠테이션 A의 K 번째 서브세그먼트(200)의 가장 빠른 재생 시간(TE)이 레프리젠테이션 B의 K-1 번째 서브세그먼트(230)의 가장 늦은 재생 시간(TL) 보다 큰 값을 가져야 한다.
도 8의 (b)을 참조하면, 레프리젠테이션 B의 K 번째 서브세그먼트(210)의 가장 빠른 재생 시간(TE)이 레프리젠테이션 A의 K-1 번째 서브세그먼트(240)의 가장 늦은 재생 시간(TL) 보다 작을 수 있다.
이 경우, 레프리젠테이션 A에서 B로의 비트스트림 스위칭이 요구되면, 클라이언트(30)는 레프리젠테이션 B의 K-1 번째 서브세그먼트(220)와 K 번째 서브세그먼트(210) 사이의 경계에서 스위칭을 하며, 그에 따라 상기 K-1 번째 서브세그먼트(240) 중 일부가 클라이언트(30)로 제공되지 않고 손실될수 있다.
예를 들어, 상기 손실된 데이터(Missin data)는 상기 K-1 번째 서브세그먼트(240)에 포함된 레퍼런스 스트림 중 재생 시간이 늦은 일부 샘플들일 수 있다.
따라서 상기 스위칭 과정에서 손실된 데이터가 존재하지 않도록 하기 위해서는, 레프리젠테이션 B의 K 번째 서브세그먼트(210)의 가장 빠른 재생 시간(TE)이 레프리젠테이션 A의 K-1 번째 서브세그먼트(240)의 가장 늦은 재생 시간(TL) 보다 큰 값을 가져야 한다.
즉, 비트스트림 스위칭 과정에서 상기한 바와 같은 데이터의 중복이나 손실이 모두 발생하지 않도록 하기 위해서는, 레프리젠테이션 A 및 B 중 어느 하나에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간(TE)이 또 다른 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간(TL)보다 크도록, 서브세그먼트들이 정렬될 수 있다.
도 9에 도시된 바와 같이, 레프리젠테이션 A 및 B에 각각 포함된 서로 다른 인덱스를 가지는 두 서브세그먼트들이 서로 중첩되지 않도록(non-overlapping) 정렬될 수 있다.
상기한 바와 같이, 제1 서브세그먼트와 제2 서브세그먼트가 서로 중첩되지 않음(non-overlapping)은, 어느 한 미디어 컨포넌트의 모든 미디어 스트림들에 대해, 상기 제1 서브세그먼트의 가장 빠른 재생 시간(TE)이 상기 제2 서브세그먼트의 가장 늦은 재생 시간(TL)보다 작거나 또는 상기 제1 서브세그먼트의 가장 늦은 재생 시간(TL)이 상기 제2 서브세그먼트의 가장 빠른 재생 시간(TE)보다 작은 경우를 의미할 수 있다.
상기한 바와 같은 서브세그먼트 정렬 방식에 따라, 레프리젠테이션 A 및 B에 포함된 서브세그먼트들이 도 9에 도시된 바와 같이 정렬되면, 클라이언트(30)가 레프리젠테이션 B 중 RAP를 포함하는 임의의 서브세그먼트로 스위칭하여도, 중복된 데이터(Redundant data)가 제공되거나 데이터가 손실되지 않을 수 있다.
도 9에 도시된 바와 같이 서브세그먼트들이 정렬되면, 레프리젠테이션 B에서
A로의 스위칭이 요구되는 경우에도, 클라이언트(30)로 제공되는 데이터가 중복되거나 손실되는 일이 발생하지 않을 수 있다.
도 10을 참조하면, 레프리젠테이션 A에서 B로의 스위칭이 요구되는 경우, 클라이언트(30)는 현재 재생 시간에 이후에 위치하는 RAP을 상기 레프리젠테이션 B에서 탐색하여, K-1 번째 서브세그먼트(220)와 K 번째 서브세그먼트(210) 사이의 경계(B1)와 K 번째 서브세그먼트(210)와 K+1 번째 서브세그먼트(230) 사이의 경계(B2) 중 임의의 시점에서 레프리젠테이션을 스위칭할 수 있다.
한편, 도 11에 도시된 경우에 있어서는, 레프리젠테이션 B의 K-1 번째 서브세그먼트(220)가 RAP을 포함하지 않으므로, 클라이언트(30)는 K-1 번째 서브세그먼트(220) 이후 RAP을 포함하는 서브세그먼트들의 경계들(B1, B2) 중 임의의 경계에서 레프리젠테이션을 스위칭할 수 있다.
상기한 바와 같이 서브세그먼트들이 정렬되면, 송신 장치는 복수의 레프리젠테이션들 중 어느 하나를 전송한다(S130 단계).
예를 들어, 클라이언트(30)는 서버(10)로부터 제공되는 MPD(Media Presentation Description)을 이용하여 미디어 콘텐트의 비트율, 해상도, 언어 또는 코덱 등이 서로 상이한 복수의 레프리젠테이션들 어느 하나를 선택하고, HTTP 1.1(RFC 2616)에서 정의된 HTTP GET 또는 HTTP partial GET method를 이용해 상기 선택된 레프리젠테이션에 대응되는 세그먼트 또는 세그먼트의 일부를 요청할 수 있다.
한편, 상기 MPD는 레프리젠테이션들에 대한 비트스트림 스위칭 여부를 나타내는 비트스트림 스위칭 플래그(bitstream switching flag)와, 서브세그먼트들에 대한 정렬 여부를 나타내는 서브세그먼트 정렬 플래그(subsegment alignment flag)를 포함할 수 있다.
상기 MPD에 포함된 비트스트림 스위칭 플래그가 'true'인 경우, 클라이언트(30)는 상기한 바와 같은 비트스트림 스위칭 동작을 수행할 수 있다.
또한, 상기 MPD에 포함된 서브세그먼트 정렬 플래그가 'true'인 경우, 서브세그먼트들이 도 9 내지 도 11에 도시된 바와 같이 정렬되며, 그에 따라 클라이언트(30)는, 중복 또는 손실된 데이터 없이, 연속하는 서브세그먼트들에 의한 임의의 경계에서 레프리젠테이션를 스위칭할 수 있다.
본 발명의 실시예에 따르면, 모든 서브세그먼트들에 대한 인덱스 정보가 존재하고, 상기 서브세그먼트에 포함된 첫번째 RAP의 재생 시간(TRAP)에 해당 서브세그먼트의 가장 빠른 재생 시간(TE)이며, 복수의 레프리젠테이션들 중 임의의 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간(TE)이 임의의 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간(TL)보다 크도록 정렬됨으로써, 비트스트림 스위칭시 발생할 수 있는 데이터의 손실 또는 중복 수신을 방지할 수 있다.
또한, 미디어 콘텐트를 수신하는 클라이언트는 별도의 탐색이나 파싱없이RAP를 포함하는 임의의 서브세그먼트에서 레프리젠테이션을 용이하게 스위칭할 수 있으며, 그에 따라 네트워크 상태의 변화 등에 의해 비트스트림을 스위칭하는 경우에도 미디어 콘텐트가 끈김없이 연속하여 재생될 수 있다.
한편, MPEG2 TS 미디어를 전송을 위한 세그먼트들로 분할하기 위해, 상기 미디어는 전송 프로토콜에 의해 요구되는 대로 레퍼런스 프로그램 엘리먼트(이는 상기한 레퍼런스 스트림과 동일한 의미일 수 있다)의 지속 시간(duration)에 따라 대략적으로 분할될 수 있다. 상기 세그먼트들 사이의 경계는 MPEG2 TS 패킷들에 맞추어 정렬될 수 있다.
상기 MPEG2 TS 미디어를 위해 전달되는 메타 데이터에서는, 프로그램에 속하는 어느 한 프로그램 엘리먼트가 레퍼런스로 선택되고, 세그먼트에서 상기 레퍼런스 프로그램 엘리먼트에 대한 재생 유닛(PU, Play Unit)을 위한 가장 빠른 재생 시간이 전달될 수 있다.
또한, 서브세그먼트들 각각에 대해, 데이터 오프셋(data offset)과 해당 서브세그먼트의 가장 빠른 재생 시간에 대한 스탬프(PTS)가 전달되며, 선택적으로 랜덤 액세스 포인트(random access point)의 재생 시간과 PTS 불연속(PTS discontinuity) 발생 여부가 전달될 수 있다.
한편, 상기 랜덤 액세스 포인트의 재생 시간과 PTS 불연속의 발생 여부는 클라이언트(30)가 PTS-PCR 기반 타임라인을 미디어 재생 타임 라인에 맞출 수 있도록 하기 위해 이용될 수 있다.
상기 메타 데이터는 일반적인 ISO Base Media 파일 포맷 데이터 타입들에 기반한 바이너리 포맷으로 표현될 수 있으며, 이는 Dynamic adaptive streaming over HTTP(DASH)에서 이용되는 'sidx' 박스와 유사한 구조를 가질 수 있다.
상기 'sidx' 박스의 기능에 추가하여, 본 발명의 일실시예에 따른 메타 데이터의 포맷은 클라이언트(30)가 MPEG2 PTS-PCR 기반 타임라인을 미디어 재생 타임라인에 맞출 수 있도록 할 수 있다.
이는 서브세그먼트에 있는 재생 유닛(PU)의 가장 빠른 PTS를 전달함에 의해 이루어 질 수 있으며, 또한 MPEG2 PTS 타임라인에 존재하는 불연속에 대한 정보가 전달될 수 있다.
도 12 및 도 13은 미디어 콘텐트에 대한 메타 데이터를 제공하는 세그먼트 인덱스 박스(Segment Index Box)의 구성에 대한 제1 실시예를 도시한 것이다.
도 12를 참조하면, 상기 메타 데이터는 MPEG2 세그먼트 인덱스 박스('m2si', MPEG-2 Segment Index Box)로 구성될 수 있으며, 상기 'm2si' 박스는 하나의 세그먼트 내의 서브세그먼트와 다른 MPEG2 세그먼트 인덱스 박스들에 대한 인덱스를 제공할 수 있다.
상기 인덱스는 서브세그먼트를 직접 참조하거나, 또는 서브세그먼트를 참조하는 세그먼트 인덱트들을 참조할 수 있으며, 상기 세그먼트 인덱스는 동일한 세그먼트 또는 서브세그먼트 내부의 다른 MPEG2 세그먼트 인덱스 박스에 대한 시간 및 바이트 오프셋을 전달하기 위해 계층적 또는 데이시-체인(dasy-chain)이나 다른 형태로 지정될 수 있다.
상기 세그먼트의 레퍼런스 프로그램 엘리먼트의 가장 빠른 재생 시간은 상기 세그먼트 인덱스에서 기록될 수 있다.
상기 레퍼런스 타입은 해당 레퍼런스가 서브세그먼트에 대한 것인지 또는 MPEG2 세그먼트 인덱스 박스에 대한 것인지 여부를 나타내며, 상기 오프셋은 해당 박스에서 인덱스되는 첫번째 서브세그먼트의 첫번째 바이트로부터 참조되는 엔티티(entity)의 첫번째 바이트까지의 거리를 바이트 단위로 제공할 수 있다.
상기 인덱스에서 기록된 첫번째 서브세그먼트의 가장 빠른 재생 시간(레퍼런스 프로그램 엘리먼트에 대해)이 제공되고, 상기 세그먼트 인덱스는 해당 인덱스에 의해 기록된 각 서브세그먼트에 대해 하나의 엔트리(entry)를 제공할 수 있다.
상기 각각의 서브세그먼트들에 대해, 서브세그먼트 지속 시간(duration)이 제공되며, 서브세그먼트의 가장 빠른 재생 시간이 이전 서브세그먼트들의 서브세그먼트 지속 시간과 상기 첫번째 서브세그먼트의 가장 빠른 재생 시간을 더함에 의해 계산될 수 있다.
상기 서브세그먼트의 가장 빠른 재생 시간은 해당 서브세그먼트의 레퍼런스 프로그램 엘리먼트에 있는 임의의 재생 유닛(PU)의 재생 타임스케일(timescale) 상의 가장 빠른 재생 시간을 의미할 수 있다.
선택적으로, 상기 레퍼런스 프로그램 엘리먼트의 가장 빠른 PTS는 서브세그먼트가 PTS 불연속으로 시작하는지를 나타내는 플래그(flag)와 함꼐 전달될 수 있다.
또한, 상기 세그먼트 인덱스 박스는 랜던 액세스 포인트(random access point)를 포함할 수 있다.
도 13에 도시된 'm2si' 박스의 신텍스 구조를 참조하면, flags는 플래그들을 가지는 24-비트의 정수로서, 이하의 값들로 정의될 수 있다.
timescale-present는 해당 박스에 미디어 재생 시간의 타임 스케일(time scale)이 존재하는지 여부를 나타내며, 플래그 값은 '0x000001'을 가질 수 있다.
timescale은 재생에 관한 타임스케일로서, 하나의 미디어 재생(media presentation) 내에서 한번 이상 제공되는 경우 그의 값은 전체 재생에 대해 동일할 수 있다.
reference_PID는 레퍼런스 프로그램 엘리먼트를 전송하는 MPEG2 TS 패킷들의 PID를 제공한다.
program_element_count는 다음의 루프에서 인덱스되는 프로그램 엘리먼트들의 수를 나타내며, 1 또는 그 보다 큰 값으로 지정될 수 있다.
reference_count는 두번째 루프에 의해 인덱스되는 엘리먼트들의 개수를 나타내며, 1 또는 그 보다 큰 값으을 가질 수 있다.
PID는 재생 시간(presentation_time)이 제공되는 프로그램 엘리먼트를 전송하는 MPEG2 TS 패킷들의 PID를 나타내며, 해당 루프에 있는 하나의 PID는 상기 reference_PID과 동일하다.
earlist_presentation_time은 PID에 의해 식별되는 프로그램 엘리먼트 내의 재생 유닛(PU)에 대한 가장 빠른 재생 시간을 나타낼 수 있다.
reference_type이 '0'으로 설정되면 레퍼런스가 서브세그먼트에 대한 것임으로 나타내며, '1'로 설정되면 레퍼런스가 MPEG2 세그먼트 인덱스('m2si) 박스에 대한 것임을 나타낸다.
discontinuity는 해당 서브세그먼트가 PTS 불연속으로 시작됨을 나타내기 위해 '1'로 설정될 수 있다.
contains_PTS는 해당 서브세그먼트에서 레퍼런스 프로그램 엘리먼트의 첫번째 재생 유닛(PU)의 PTS가 전달됨을 나타내기 위해 '1'로 설정될 수 있다.
contains_RAP은 상기 참조되는 서브세그먼트에 있는 레퍼런스 프로그램 엘리먼트가 랜덤 액세스 포인트(RAP)를 포함함을 나타내기 위해 '1'로 설정될 수 있다.
reference_offset은 해당 박스에서 인덱스되는 첫번째 서브세그먼트의 첫번째 바이트로부터 해당 루프의 반복(iteration)에 의해 참조되는 서브세그먼트의 첫번째 바이트까지의 거리를 바이트 단위로 나타낼 수 있다.
subsegment_duration은, 상기 레퍼런스가 MPEG2 세그먼트 인덱스('m2si) 박스에 대한 것일 때는 해당 박스에 존재하는 subsegment_duration 필드들의 합을 전달하며, 상기 레퍼런스가 서브세그먼트에 대한 것일 때는 다음 서브세그먼트에 있는 레퍼런스 프로그램 엘리먼트의 임의의 재생 유닛(PU)의 가장 빠른 재생 시간과 상기 참조되는 서브세그먼트에 있는 레퍼런스 프로그램 엘리먼트의 임의의 재생 유닛(PU)의 가장 빠른 재생 시간 사이의 차이를 전달할 수 있다. 상기 지속 시간(duration)은 시그널링되는 타임스케일(signaled timescale)로 표현될 수 있다.
PTS는 해당 서브세그먼트의 레퍼런스 프로그램 엘리먼트의 가장 빠른 MPEG2 TS PTS를 나타낼 수 있다.
RAP_delta_time은, 상기 contains_RAP이 '1'로 설정되는 경우, 레퍼런스 프로그램 엘리먼트의 earlist_presentation_time에 대한 랜덤 액세스 포인트(RAP)의 재생 시간 오프셋을 제공할 수 있다. 한편, 상기 contains_RAP이 '0'인 경우, 상기 RAP_delta_time은 '0'의 값으로 유지될 수 있다.
또한, 상기 contains_PTS가 '1'인 경우, 상기 PTS는 해당 서브세그먼트의 레퍼런스 프로그램 엘리먼트의 가장 빠른 PTS를 제공할 수 있다.
상기한 바와 같은 구성을 가지는 메타 데이터는 다양한 방법으로 클라이언트(30)에 전달될 수 있다.
예를 들어, 상기 바이너리 포맷으로 표현된 메타 데이터는 세그먼트들의 해더(header) 부분으로 MPEG2 TS의 앞에 불을 수 있다. 상기 박스들은 인덱스되는 서브세그먼트의 첫번째 바이트 이전에 위치될 수 있으며, 이 경우 상기 데이터 오프셋은 상기 메타 데이터 박스들의 크기를 포함할 수 있다.
또한, 서브세그먼트를 참조할 때, 서브세그먼트의 첫번째 바이트는 상기 서브세그먼트를 인덱스하는 메타 데이터 박스의 첫번째 바이트로 해석될 수 있다.
XML 또는 바이너티 포맷으로 표현된 메타 데이터는 별도의 파일로 클라이언트(30)에게 전달될 수도 있으며, 이는 클라이언트(30)를 위한 HTTP 자원 또는 제공된 대역 외(provided out-of-band)일 수 있다.
이 경우, HTTP 상에서 별도의 자원으로 제공되며, 클라이언트(30)는 해당 자원을 획득하기 위해 HTTP URL을 이용하여야 한다. 그에 따라, 이는 미디어 세그먼트들을 위한 URL 정보와 유사한 매커니즘으로 MPD(Media Presentation Description에서 제공될 수도 있다.
그러나, 상기와 같은 메타 데이터 박스들의 집합을 하나의 파일로 그룹화하는 것이 좋을 수 있으며, 그에 따라 저장매체의 오버헤드를 감소시키고 전달을 용이하게 할 수 있으며, 서로 다른 세그먼트 크기들에 적응적일 수 있다.
이를 위해, 주어진 레프리젠테이션의 세그먼트 레벨에서 상기 박스들의 집합을 인덱스하기 위해 수퍼-세그먼트(super-segment)에 기초한 추가적인 인덱싱 메커니즘이 필요할 수 있다.
도 14 및 도 15는 상기 세그먼트 인덱스 박스의 구성에 대한 제2 실시예를 도시한 것으로, 수퍼-세그먼트 인덱스 박스(Super-Segment Index Box)의 구성을 나타낸 것이다.
도 14를 참조하면, 상기 MPEG2 수퍼-세그먼트 인덱스 박스('mp2s', MPEG-2 Super-Segment Index Box)는 레프리젠테이션에 포함된 하나 또는 그 이상의 세그먼트들에 대한 MPEG2 세그먼트 인덱스 박스('m2si')들의 집합에 관한 인덱스를 제공할 수 있다.
도 15에 도시된 'mp2s' 박스의 신텍스 구조를 참조하면, reference_count는 해당 루프에 의해 인덱스되는 세그먼트들의 개수를 나타낸다.
segment_index는 세그먼트 리스트 생성에 의해 사용되는 세그먼트의 유일한 세그먼트 인덱스(unique segment index)이다.
m2si_count는 현재의 segment_index에 의해 식별되는 하나의 세그먼트에 속하는 MPEG2 세그먼트 인덱스 박스('m2si')들의 개수를 나타낸다.
offset은 해당 루프에 의해 인덱스되는 첫번째 MPEG2 세그먼트 인덱스 박스('m2si')의 첫번째 바이트로부터 상기 인덱스되는 세그먼트에 대한 첫번째 MPEG2 세그먼트 인덱스 박스('m2si')의 첫번째 바이트까지의 거리를 바이트 단위로 나타낸다.
본 발명의 일실시예에 따른 미디어 콘텐트 송신 장치는 도 1 내지 도 15를 참조하여 설명한 바와 같은 서버(10)의 동작 중 적어도 일부를 수행할 수 있으며, 그를 위해 미디어 콘텐트를 복수의 레프리젠테이션들로 구성하는 미디어 인코더(11)와 상기 구성된 레프리젠테이션을 복수의 세그먼트들로 분할하는 세그멘터(segmenter, 12)를 포함할 수 있다.
이하에서는 도 16 및 도 17을 참조하여 본 발명에 따른 미디어 콘텐트 수신 방법 및 장치에 대한 실시예들에 대해 설명하기로 한다.
본 발명의 일실시예에 따른 수신 장치(300)는 도 1 내지 도 15를 참조하여 설명한 바와 같은 클라이언트(30)의 동작을 수행할 수 있다.
또한, 수신 장치(300)가 수신하는 미디어 콘텐트의 구성, 예를 들어 레프리젠테이션, 세그먼트 및 서브세그먼트의 구성은 도 3 내지 도 11을 참조하여 설명한 바와 같을 수 있으므로, 그에 대한 구체적인 설명은 이하 생략하기로 한다.
도 16은 본 발명의 실시예에 따른 미디어 콘텐트 수신 장치의 구성을 블록도로 도시한 것으로, 도시된 수신 장치(300)는 네트워크 인터페이스부(310), 디코딩부(320) 및 동기화부(330)를 포함하여 구성될 수 있다.
도 14를 참조하면, 수신 장치(300)의 네트워크 인터페이스부(310), 예를 들어 HTTP 인터페이스는 미디어 파일을 상기 동기화 정보와 함께 수신하고, 디코딩부(320)는 상기 수신된 미디어 파일을 복호화하여 출력할 수 있다.
한편, 동기화부(330)는 상기 동기화 정보에 포함된 미디어 재생 시간을 이용해 상기 복호화된 미디어 파일을 미디어 재생 타임라인에 동기화시킬 수 있다.
예를 들어, 네트워크 인터페이스부(310)는 MPEG2 TS와 함께 도 6 내지 도 13을 참조하여 설명한 바와 같은 구성을 가지는 동기화 정보(Sync Info.)를 송신 장치(100)로부터 수신할 수 있다.
디코딩부(320)는 MPEG2 TS를 복호화하기 위한 제2 디코더(322)를 포함할 수 있으며, 상기 제2 디코더(322)는 일반적인 MPEG2 TS 디코더일 수 있다.
제2 디코더(322)는 네트워크 인터페이스부(310)로부터 MPEG2 TS를 입력받아 복호화한 후, 복호화된 재생 유닛들과 그들의 PTS들을 출력할 수 있다.
한편, 동기화부(330)는 상기 수신되는 동기화 정보를 통해 미디어 재생 시간이 제공된 재생 유닛을 식별할 수 있다. 그를 위해, 네트워크 인터페이스부(310)가 재생 시간이 제공된 재생 유닛들의 PTS를 복구하여 동기화부(330)로 전달하거나, 또는 상기 재생 시간과 함께 해당 재생 유닛의 PTS도 송신 장치(100)로부터 제공되어야 한다.
상기 PTS 복구를 위해, 엘리먼터리 스트림 시간 복구(elementary stream time recovery)가 이용될 수도 있다.
또한, 디코딩부(320)는 네트워크 인터페이스부(310)를 통해 수신되는 또 다른 미디어(other media)를 복호화하기 위한 제1 디코더(321)를 더 포함할 수 있으며, 상기 제1 디코더(321)는 3GPP 파일 포맷 등과 같은 다른 포맷의 미디어를 복호화하기 위한 디코더이거나 또는 제2 디코더(322)와 동일한 MPEG2 TS 디코더일 수도 있다.
동기화부(330)는 송신 장치(100)로부터 전달되는 부호화 정보(예를 들어, 재생 유닛들에 대한 미디어 재생 시간들)를 이용하여 제2 디코더(322)로부터 출력되는 MPEG2 TS 기반의 미디어를 제1 디코더(321)로부터 출력되는 다른 미디어와 동기화시킬 수 있다.
한편, 수신 장치(300)는 동기화부(330)에 의해 동기화된 상기 MPEG2 TS 기반 미디어와 상기 다른 미디어를 함께 재생할 수 있다.
도 17은 본 발명의 실시예에 따른 미디어 콘텐트 수신 방법을 흐름도로 도시한 것으로, 도시된 수신 방법 중 도 1 내지 도 16을 참조하여 설명한 것과 동일한 것에 대한 설명은 이하 생략하기로 한다.
도 17을 참조하면, 송신 장치(300)는 미디어 콘텐트를 포함하는 복수의 레프리젠테이션을 수신하여(S400 단계), 상기 수신되는 레프리젠테이션을 재생한다(S420 단계).
예를 들어, 송신 장치(300)의 네트워크 인터페이스부(310)에 구비된 수신부(미도시)는 HTTP 1.1(RFC 2616)에서 정의된 HTTP GET 또는 HTTP partial GET method를 이용해 세그먼트 또는 세그먼트의 일부에 대한 전송을 송신 장치에 요청할 수 있다.
한편, 네트워크 인터페이스부(310)에 구비된 제어부(미도시)는 송신 장치로부터 수신되는 MPD(Media Presentation Description)을 이용하여 미디어 콘텐트의 비트율, 해상도, 언어 또는 코덱 등이 서로 상이한 복수의 레프리젠테이션들 어느 하나를 상기 수신할 레프리젠테이션으로 선택할 수 잇다.
상기 수신되는 레프리젠테이션를 재생하는 동안, 상기 제어부는 비트스트림 스위칭이 요구되는지 여부를 확인한다(S410 단계).
비트스트림 스위칭이 요구되는 경우, 상기 제어부는 수신되는 레프리젠테이션를 새로운 레프리젠테이션으로 스위칭한다(S430 단계).
상기 송신 장치(300)의 제어부가 레프리젠테이션들을 스위칭하는 방법은 도 3 내지 도 11을 참조하여 설명한 클라이언트(30)의 스위칭 동작과 동일할 수 있다.
도 1 내지 도 17을 참조하여 설명한 바와 같은 미디어 콘텐트의 수신 및 처리 방법은 본 발명의 실시예에 따른 IPTV 수신기에 의해 수행될 수 있다.
이하, 도 18 및 도 19를 참조하여 본 발명의 실시예에 따른 IPTV 수신기의 구성에 대해 보다 상세히 설명하기로 한다.
도 18은 본 발명의 일실시예에 의한 IPTV 수신기 구성을 블록도로 도시한 것이다.
본 발명의 일실시예에 따른 IPTV 수신기는, 지상파 방송, 케이블 방송, 위성 방송 등을 수신할 수 있도록 별도의 튜너 등을 구비할 수도 있다. 그러나, 본 발명에서는 설명의 편의를 위해 IP 네트워크를 이용하여 제공되는 IPTV 서비스를 수신하는 구성을 중심으로 설명하기로 한다.
한편, ITF는 Open IPTV Terminal Function을 나타내는 것으로, IPTV 서비스를 지원하는데 필요한 기능 모듈로 구성된 수신기를 의미할 수 있다.
IPTV 수신기는 네트워크 인터페이스부(Network Interface)(501), TCP/IP 매니저(TCP/IP Manager)(502), 서비스 전달 매니저(Service Delivery Manager)(504), PVR 매니저(PVR Manager)(505), 디멀티플렉서(Demux)(508), 데이터 디코더(Data Decoder)(507), 오디오/비디오 디코더(Audio/Video Decoder)(512), 디스플레이부(A/V Display & OSD Module)(515), 애플리케이션 매니저(Application Manager)(513, 514), 서비스 정보 데이터베이스부(SI & Metadata DB)(511), 서비스 디스커버리 매니저(Service Discovery Manager)(509), 서비스 제어 매니저(Service Control Manager)(503), 메타데이터 매니저(Metadata Manager)(510) 및 콘텐트 데이터베이스부(Content DB)(506)를 포함할 수 있다.
도 18을 참조하면, 네트워크 인터페이스부(501)는 네트워크 망으로부터 수신되는 패킷(packet)들을 수신하고, 네트워크 망으로 패킷을 전송한다. 즉 네트워크 인터페이스부(501)는 네트워크 망을 통해 서비스 프로바이더로부터 서비스, 미디어 콘텐트 등을 수신한다.
TCP/IP 매니저(502)는, IPTV 수신기로 수신되는 패킷과 IPTV 수신기에서 전송하는 패킷에 대하여, 소스로부터 목적지까지의 패킷 전달에 관여한다. 또한, TCP/IP 매니저(502)는 수신된 패킷을 적절한 프로토콜에 대응되도록 분류하고, 서비스 전달 매니저(504), 서비스 디스커버리 매니저(509), 서비스 제어 매니저(503) 및 메타데이터 매니저(510)로 분류된 패킷을 출력한다.
서비스 전달 매니저(504)는 수신되는 서비스 데이터의 제어를 담당한다. 예를 들어, 실시간 스트리밍(realtime streaming) 데이터를 제어하는 경우 RTP/RTCP를 사용할 수 있다.
상기 실시간 스트리밍 데이터를 RTP를 사용하여 전송하는 경우, 서비스 전달 매니저(504)는 상기 수신된 데이터 패킷을 RTP에 따라 파싱(parsing)하여 디멀티플렉서(508)에 전송하거나 서비스 매니저(514)의 제어에 따라 콘텐트 데이터베이스부(506)에 저장한다. 또한, 서비스 전달 매니저(504)는 RTCP를 이용하여 상기 네트워크 수신 정보를 서비스를 제공하는 서버측에 피드백(feedback)한다.
디멀티플렉서(508)는 수신된 패킷을 오디오, 비디오, PSI(Program Specific Information) 데이터 등으로 역다중화하여 각각 오디오/비디오 디코더(512), 데이터 디코더(507)에 전송한다.
데이터 디코더(507)는 예를 들어, PSI(Program Specific Information) 등의 서비스 정보를 디코딩한다. 즉, 데이터 디코더(507)는 상기 디멀티플렉서(508)에서 역다중화된 PSI 섹션, PSIP(Program and Service Information Protocol) 섹션 또는 DVB-SI(Service Information) 섹션 등을 수신하여 디코딩한다.
또한, 데이터 디코더(507)는 상기 수신된 섹션들을 디코딩하여 서비스 정보에 관한 데이터베이스를 만들고, 상기 서비스 정보에 관한 데이터베이스는 서비스 정보 데이터베이스부(511)에 저장한다.
오디오/비디오 디코더(512)는 상기 디멀티플렉서(508)에서 수신된 비디오 데이터와 오디오 데이터를 디코딩한다. 상기 오디오/비디오 디코더(512)에서 디코딩된 오디오 데이터 및 비디오 데이터는 디스플레이부(515)를 통하여 사용자에게 제공된다.
애플리케이션 매니저는 IPTV 수신기의 전반적인 상태를 관리하고 유저 인터페이스를 제공하며, 다른 매니저를 관리한다. 이를 위해 애플리케이션 매니저는 유저 인터페이스 매니저(User Interface Manager)(513) 및 서비스 매니저(514)를 포함한다.
유저 인터페이스 매니저(513)는 사용자를 위한 GUI(Graphic User Interface)를 OSD(On Screen Display) 등을 이용하여 제공하며, 사용자로부터 키 입력을 받아 상기 입력에 따른 수신기 동작을 수행한다. 예를 들어, 사용자로부터 채널선택에 관한 키 입력을 받으면 상기 키 입력신호를 서비스 매니저(514)에 전송한다.
서비스 매니저(514)는 서비스 전달 매니저(504), 서비스 디스커버리 매니저(509), 서비스 제어 매니저(503) 및 메타데이터 매니저(510) 등 서비스와 연관된 매니저를 제어한다.
또한, 서비스 매니저(514)는 채널 맵(Channel Map)을 만들고 상기 유저 인터페이스 매니저(513)로부터 수신한 키 입력에 따라 상기 채널 맵을 이용하여 채널을 선택하다. 그리고 상기 서비스 매니저(514)는 데이터 디코더(507)로부터 채널의 서비스 정보를 전송받아 선택된 채널의 오디오/비디오 PID(Packet Identifier)를 디멀티플렉서(508)에 설정한다.
서비스 디스커버리 매니저(509)는 서비스를 제공하는 서비스 프로바이더를 선택하는데 필요한 정보를 제공한다. 상기 서비스 매니저(514)로부터 채널선택에 관한 신호를 수신하면, 서비스 디스커버리 매니저(509)는 상기 정보를 이용하여 서비스를 찾는다.
서비스 제어 매니저(503)는 서비스의 선택과 제어를 담당한다. 예를 들어, 서비스 제어 매니저(503)는 사용자가 기존의 방송방식과 같은 Live Broadcasting 서비스를 선택하는 경우 IGMP 또는 RTSP 등을 사용하고, VOD(Video On Demand)와 같은 서비스를 선택하는 경우에는 RTSP를 사용하여 서비스의 선택, 제어를 수행할 수 있다.
상기 RTSP 프로토콜은 실시간 스트리밍에 대해 트릭 모드(trick mode)를 제공할 수 있다. 또한, 서비스 제어 매니저(503)는 IMS(IP Multimedia Subsystem), SIP(Session Initiation Protocol)를 이용하여 IMC 게이트웨이를 통하 세션을 초기화하고 관리할 수 있다. 상기 프로토콜들은 일 실시예이며, 구현 예에 따라 다른 프로토콜을 사용할 수도 있다.
메타데이터 매니저(510)는 서비스와 연관된 메타데이터를 관리하고 상기 메타데이터를 서비스 정보 데이터베이스부(511)에 저장한다.
서비스 정보 데이터베이스부(511)는 데이터 디코더(507)가 디코딩한 서비스 정보, 메타데이터 매니저(510)가 관리하는 메타데이터 및 서비스 디스커버리 매니저(509)가 제공하는 서비스 프로바이더를 선택하는데 필요한 정보를 저장한다. 또한, 서비스 정보 데이터베이스부(511)는 시스템에 대한 셋업 데이터 등을 저장할 수 있다.
서비스 정보 데이터베이스부(511) 및 콘텐트 데이터베이스부(506)는 각각 비휘발성 메모리(NonVolatile RAM : NVRAM) 또는 플래쉬 메모리 등을 사용하여 구현될 수 있으며, 동일한 저장영역 상에 논리적으로 분리된 두 개의 영역으로 구현될 수 있다.
PVR 매니저(505)는 라이브 스트리밍 콘텐트를 레코딩 하고 재생하기 위한 모듈로서, 녹화된 콘텐트에 관한 메타데이터를 수집하고, thumbnail image나 index와 같은 사용자에게 제공되는 부가 정보를 생성할 수 있다.
본 발명의 실시예에 따른 IPTV 수신기의 제어부의 기능은 도 18에 도시된 TCP/IP 매니저(502), 서비스 전달 매니저(504), PVR 매니저(505), 애플리케이션 매니저(513, 514), 서비스 디스커버리 매니저(509), 서비스 제어 매니저(503) 및 메타데이터 매니저(510)와 같이 복수의 모듈들로 분할되어 구현될 수 있다.
예를 들어, TCP/IP 매니저(502)는 상기한 바와 같은 타켓 패키지 정보를 이용해 SD&S 정보를 필터링하여, 네트워크 인터페이스부(501)가 특정 패키지(예를 들어, IPTV 수신기가 가입된 패키지)에 해당하는 페이로드 또는 세그먼트만을 서버로 요청하여 수신하도록 제어할 수 있다.
또는, TCP/IP 매니저(502)는 멀티캐스트 방식으로 수신되는 SD&S 정보를 상기 타켓 패키지 정보를 이용해 필터링하여, 특정 패키지에 해당하는 페이로드 또는 세그먼트만이 데이터 디코더(507)에 의해 파싱되어 처리되도록 할 수 있다.
도 19는 본 발명에 따른 IPTV 수신기의 구성에 대한 또 다른 실시예를 블록도로 도시한 것으로, IPTV 수신기의 구성을 기능적인 블록들로 나타낸 것이다. 도 19에 도시된 실선 화살표는 data path에 대응하며, 점선 화살표는 control signal path에 대응한다.
Cable modem, DSL modem, etc(601)는 physical level에서 ITF가 IP Network와 연결될 수 있도록하는 Interface로서, physical medium을 통해 전송된 신호를 Demodulate하여 Digital 신호를 복원한다.
Ethernet NIC(602)는 상기 physical interface를 통해 수신한 신호를 IP 데이터로 복원하며, IP Network Stack(607)은 IP Protocol stack에 따라 각 layer를 처리한다.
한편, XML Parser(609)는 수신되는 IP 데이터 중 XML Document를 파싱하며, File Handler(608)는 수신되는 IP 데이터 중 FLUTE 등을 통해 File 형태로 전송되는 데이터를 처리한다.
SI Handler(611)은 수신되는 File 형태의 데이터 중 IPTV 서비스 정보에 해당하는 부분을 처리하여 Storage(612)에 저장하며, EPG Handler(610)는 수신되는 File 형태의 데이터 중 IPTV EPG 정보에 해당하는 부분을 처리하여 Storage(612)에 저장할 수 있다.
Storage(612)는 상기 SI 및 EPG 등의 다양한 데이터를 저장한다.
SI Decoder(613)는 Storage(612)로부터 SI 데이터를 입력받아 분석하여 채널 맵 정보를 획득하고, EPG Decoder(614)는 Storage(612)에 저장된 EPG 데이터를 분석하여 EPG 구성을 위한 필요한 정보를 복원한다.
ITF Operation Controller(615)는 Channel 변경 또는 EPG Display 등의 ITF의 동작을 제어하는 main controller이다.
Channel Service Manager(616)는 사용자 입력에 따라 Channel 변경 등의 동작을 수행하며, Application Manager(617)는 사용자 입력에 따라 EPG Display 등의 Application 서비스를 수행할 수 있다.
MPEG-2 Demultiplexer(603)는 수신되는 IP 데이터그램(Datagram)으로부터 MPEG-2 Transport Stream 데이터를 추출하여 패킷 식별 정보(PID)에 따라 해당 모듈로 전달할 수 있다.
또한, MPEG-2 PSI/PSIP Parser(604)는 상기 MPEG-2 Transport Stream으로부터 A/V 데이터의 패킷 식별 정보(PID) 또는 program element에 대한 접속 정보를 포함하는 PSI/PSIP 데이터를 추출하여 파싱할 수 있다.
한편, A/V Decoder(605)는 입력되는 Audio 및 Video 데이터를 디코딩하여 Display 모듈(606)로 전달하며, Display 모듈(606)은 디코딩된 A/V 데이터 또는 application을 출력할 수 있다.
상술한 본 발명에 따른 미디어 콘텐트 송수신 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

Claims (20)

  1. 인터넷을 통해 미디어 콘텐트(media content)를 전송하는 방법에 있어서,
    상기 미디어 콘텐트를 복수의 레프리젠테이션들(representations)로 구성하는 단계;
    상기 구성된 레프리젠테이션을 복수의 세그먼트들(segments)로 분할하는 단계;
    상기 세그먼트에 포함된 서브세그먼트들(subsegments)을 정렬하는 단계; 및
    상기 레프리젠테이션들 중 어느 하나를 전송하는 단계를 포함하고,
    상기 서브세그먼트들은
    상기 레프리젠테이션들 중 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간(the earliest presentation time)이 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간(the latest presentation time)보다 크도록 정렬되는 미디어 콘텐트 전송 방법.
  2. 제1항에 있어서, 상기 복수의 레프리젠테이션들은
    상기 전송되는 미디어 콘텐트의 비트율(bitrate), 해상도(resolution), 언어(language) 및 코덱(codec) 중 적어도 하나에 따라 상이하게 구성되는 미디어 콘텐트 전송 방법.
  3. 제1항에 있어서,
    상기 세그먼트에 포함된 모든 서브세그먼트들에 대한 인덱스(index) 정보가 존재하는 미디어 콘텐트 전송 방법.
  4. 제3항에 있어서,
    상기 서브세그먼트들은 각각 세그먼트 인덱스를 포함하는 미디어 콘텐트 전송 방법.
  5. 제1항에 있어서,
    상기 서브세그먼트들 중 RAP(Representation Access Point)를 포함하는 서브세그먼트에 대하여, 상기 서브세그먼트에 포함된 첫번째 RAP의 재생 시간은 상기 서브세그먼트의 가장 빠른 재생 시간과 일치하는 미디어 콘텐트 전송 방법.
  6. 제1항에 있어서, 상기 서브세그먼트의 가장 빠른 재생 시간은
    상기 서브세그먼트의 레퍼런스 스트림에 존재하는 임의의 샘플의 가장 빠른 재생 시간인 미디어 콘텐트 전송 방법.
  7. 제1항에 있어서, 상기 서브세그먼트의 가장 늦은 재생 시간은
    상기 서브세그먼트의 레퍼런스 스트림에 존재하는 가장 늦은 샘플의 재생 시간인 미디어 콘텐트 전송 방법.
  8. 제1항에 있어서, 상기 서브세그먼트는
    하나 또는 연속하는 2 이상의 MPEG2 TS 패킷들을 포함하는 미디어 콘텐트 전송 방법.
  9. 제1항에 있어서,
    클라이언트(client)로부터 수신되는 요청에 따라, 상기 전송되는 레프리젠테이션을 스위칭(switching) 하는 단계를 더 포함하는 미디어 콘텐트 전송 방법.
  10. 제1항에 있어서,
    상기 세그먼트들에 액세스하기 위한 메타데이터를 포함하는 MPD(Media Presentation Description)를 클라이언트로 전송하는 단계를 더 포함하고,
    상기 MPD는 상기 레프리젠테이션들에 대한 비트스트림 스위칭 여부를 나타내는 제1 플래그(frag) 및 상기 서브세그먼트들에 대한 정렬 여부를 나타내는 제2 플래그를 포함하는 미디어 콘텐트 전송 방법.
  11. 인터넷을 통해 미디어 콘텐트를 수신하는 방법에 있어서,
    상기 미디어 콘텐트를 포함하는 복수의 레프리젠테이션들 중 제1 레프리젠테이션을 수신하는 단계;
    상기 수신되는 레프리젠테이션을 제2 레프리젠테이션으로 스위칭하는 단계; 및
    상기 수신되는 레프리젠테이션을 재생하는 단계를 포함하고,
    상기 레프리젠테이션은 복수의 세그먼트들로 분할되어 수신되며,
    상기 세그먼트에 포함된 서브세그먼트들은
    상기 제1, 2 레프리젠테이션 중 어느 하나에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간이 또 다른 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간보다 크도록 정렬되어 있는 미디어 콘텐트 수신 방법.
  12. 제11항에 있어서,
    상기 세그먼트에 포함된 모든 서브세그먼트들에 대한 인덱스 정보가 존재하는 미디어 콘텐트 수신 방법.
  13. 제11항에 있어서,
    상기 서브세그먼트들 중 RAP를 포함하는 서브세그먼트에 대하여, 상기 서브세그먼트에 포함된 첫번째 RAP의 재생 시간은 상기 서브세그먼트의 가장 빠른 재생 시간과 일치하는 미디어 콘텐트 수신 방법.
  14. 제11항에 있어서,
    상기 스위칭 전후에 수신된 상기 제1, 2 레프리젠테이션들은 중복된 데이터를 포함하지 않는 미디어 콘텐트 수신 방법.
  15. 제11항에 있어서,
    상기 스위칭 전후에 수신된 상기 제1, 2 레프리젠테이션들에 손실된 데이터가 존재하지 않는 미디어 콘텐트 수신 방법. 미디어 콘텐트 수신 방법.
  16. 제11항에 있어서, 상기 스위칭 단계는
    상기 제2 레프리젠테이션 중 RAP를 포함하는 임의의 서브세그먼트로 스위칭하는 미디어 콘텐트 수신 방법.
  17. 제11항에 있어서, 상기 스위칭 단계는
    연속하는 서브세그먼트들 사이의 경계에서 수행되는 미디어 콘텐트 수신 방법.
  18. 인터넷을 통해 미디어 콘텐트를 전송하는 장치에 있어서,
    상기 미디어 콘텐트를 복수의 레프리젠테이션들로 구성하는 미디어 인코더;
    상기 구성된 레프리젠테이션을 복수의 세그먼트들로 분할하는 세그멘터(segmenter)를 포함하고,
    상기 세그먼트에 포함된 서브세그먼트들은
    상기 레프리젠테이션들 중 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간이 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간보다 크도록 정렬되는 미디어 콘텐트 전송 장치.
  19. 제18항에 있어서,
    상기 서브세그먼트들 중 RAP를 포함하는 서브세그먼트에 대하여, 상기 서브세그먼트에 포함된 첫번째 RAP의 재생 시간은 상기 서브세그먼트의 가장 빠른 재생 시간과 일치하는 미디어 콘텐트 전송 장치.
  20. 인터넷을 통해 미디어 콘텐트를 수신하는 장치에 있어서,
    상기 미디어 콘텐트를 포함하는 복수의 레프리젠테이션들 중 어느 하나를 수신하는 수신부; 및
    상기 수신되는 레프리젠테이션을 스위칭하는 제어부를 포함하고,
    상기 레프리젠테이션은 복수의 세그먼트들로 분할되어 수신되며,
    상기 세그먼트에 포함된 서브세그먼트들은
    상기 레프리젠테이션들 중 제1 레프리젠테이션에 포함된 k 번째 서브세그먼트의 가장 빠른 재생 시간이 제2 레프리젠테이션에 포함된 k-1 번째 서브세그먼트의 가장 늦은 재생 시간보다 크도록 정렬되어 있는 미디어 콘텐트 수신 장치.
PCT/KR2011/008094 2010-11-02 2011-10-27 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치 WO2012060581A2 (ko)

Priority Applications (9)

Application Number Priority Date Filing Date Title
CN201180060590.1A CN103262556B (zh) 2010-11-02 2011-10-27 收发媒体内容的方法和利用该方法进行收发的装置
EP11838186.2A EP2637414A4 (en) 2010-11-02 2011-10-27 METHOD FOR TRANSMITTING / RECEIVING MULTIMEDIA CONTENT AND TRANSMITTING / RECEIVING DEVICE USING THE SAME
KR1020137011179A KR101452669B1 (ko) 2010-11-02 2011-10-27 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치
DE112011103642T DE112011103642T5 (de) 2010-11-02 2011-10-27 Verfahren zum Senden/Empfangen von Medieninhalt und Vorrichtung zum Senden/Empfangen, die dieses verwendet
GB1308663.2A GB2499539B (en) 2011-10-27 2011-10-27 Method for transreceiving media content and device for transreceiving using same
KR1020167009513A KR101649533B1 (ko) 2010-11-02 2011-10-27 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치
US13/882,926 US9781188B2 (en) 2010-11-02 2011-10-27 Method for transreceiving media content and device for transreceiving using same
CA2816621A CA2816621A1 (en) 2010-11-02 2011-10-27 Method for adaptive streaming that transmits/receives media content according to a network bandwidth and device for adaptive streaming using the same
KR1020147012386A KR101613941B1 (ko) 2010-11-02 2011-10-27 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40912610P 2010-11-02 2010-11-02
US61/409,126 2010-11-02

Publications (2)

Publication Number Publication Date
WO2012060581A2 true WO2012060581A2 (ko) 2012-05-10
WO2012060581A3 WO2012060581A3 (ko) 2012-07-19

Family

ID=46024918

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2011/008094 WO2012060581A2 (ko) 2010-11-02 2011-10-27 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치

Country Status (7)

Country Link
US (1) US9781188B2 (ko)
EP (1) EP2637414A4 (ko)
KR (3) KR101613941B1 (ko)
CN (2) CN106851334A (ko)
CA (1) CA2816621A1 (ko)
DE (1) DE112011103642T5 (ko)
WO (1) WO2012060581A2 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014028168A1 (en) * 2012-08-13 2014-02-20 Disney Enterprises, Inc. Content based partitioning of digital media content
WO2014171718A1 (ko) * 2013-04-16 2014-10-23 엘지전자 주식회사 방송 전송 장치, 방송 수신 장치, 방송 전송 장치의 동작 방법 및 방송 수신 장치의 동작 방법
CN105210372A (zh) * 2013-05-22 2015-12-30 索尼公司 内容供应装置、内容供应方法、程序以及内容供应系统
EP3018912A4 (en) * 2013-07-02 2017-03-08 Sony Corporation Content provision device, content provision method, program, terminal device, and content provision system
WO2018021616A1 (en) * 2016-07-29 2018-02-01 Airbroad Inc. Operating method of client for streaming service
US11711569B2 (en) * 2015-11-09 2023-07-25 Interdigital Vc Holdings, Inc. Method and device for adapting the video content decoded from elementary streams to the characteristics of a display

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103222276B (zh) * 2010-09-20 2017-04-19 数码士有限公司 将在http流式传输中发生表达切换时实现的处理方法
WO2012125006A2 (ko) 2011-03-16 2012-09-20 한국전자통신연구원 레프리젠테이션을 사용하는 스트리밍 콘텐츠 제공 장치 및 방법
US9590814B2 (en) * 2011-08-01 2017-03-07 Qualcomm Incorporated Method and apparatus for transport of dynamic adaptive streaming over HTTP (DASH) initialization segment description fragments as user service description fragments
WO2013089437A1 (ko) * 2011-12-12 2013-06-20 엘지전자 주식회사 미디어 컨텐트를 수신하는 장치 및 방법
CN104737514B (zh) * 2012-10-23 2018-08-17 瑞典爱立信有限公司 用于分布媒体内容服务的方法和设备
US9075619B2 (en) * 2013-01-15 2015-07-07 Nuance Corporation, Inc. Method and apparatus for supporting multi-modal dialog applications
US9854017B2 (en) * 2013-03-15 2017-12-26 Qualcomm Incorporated Resilience in the presence of missing media segments in dynamic adaptive streaming over HTTP
MX353123B (es) * 2013-07-02 2017-12-20 Sony Corp Dispositivo de suministro de contenido, método de suministro de contenido, programa, dispositivo terminal, y sistema de suministro de contenido.
EP3033683B1 (en) * 2013-08-13 2020-07-08 Canon Kabushiki Kaisha Information processing apparatus, control method therefor, and program
US10097294B2 (en) 2014-01-03 2018-10-09 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
US20150253974A1 (en) 2014-03-07 2015-09-10 Sony Corporation Control of large screen display using wireless portable computer interfacing with display controller
US20170055046A1 (en) * 2014-05-21 2017-02-23 Lg Electronics Inc. Broadcast signal transmitting/receiving method and device
EP2978225B1 (en) * 2014-07-23 2017-11-08 Wildmoka Method for obtaining in real time a user selected multimedia content part
EP3182712B1 (en) 2014-08-12 2019-12-11 Lg Electronics Inc. Method and device for transmitting broadcast signal using a link layer packet header structure allowing variable packet types
KR102326282B1 (ko) 2015-02-09 2021-11-15 한국전자통신연구원 대역폭에 적응적인 대쉬 기반 컨텐츠 제공 장치 및 방법
US9973562B2 (en) 2015-04-17 2018-05-15 Microsoft Technology Licensing, Llc Split processing of encoded video in streaming segments
KR20170142989A (ko) * 2015-05-18 2017-12-28 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
MX2018001690A (es) * 2015-08-17 2018-05-07 Sony Corp Aparato de recepcion, aparato de transmision y metodo de procesamiento de datos.
CN105451073B (zh) * 2015-11-16 2018-11-02 深圳Tcl数字技术有限公司 Mp4视频源的传送方法和装置
US11128914B2 (en) * 2018-04-25 2021-09-21 Roku, Inc. Client side stitching of content into a multimedia stream
US11438647B2 (en) * 2018-05-11 2022-09-06 Qualcomm Incorporated Signaling missing sections of media data for network streaming in a manifest file
US10715882B2 (en) * 2018-06-29 2020-07-14 Intel Corporation Timing synchronization between a content source and a display panel
CN110876084B (zh) * 2018-08-29 2021-01-01 浙江大学 处理和传输媒体数据的方法和装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1220375C (zh) * 1999-09-20 2005-09-21 提维股份有限公司 电视影音广播数据流标签与解释的方法和装置
KR100486713B1 (ko) 2002-09-17 2005-05-03 삼성전자주식회사 멀티미디어 스트리밍 장치 및 방법
WO2004028156A1 (en) * 2002-09-19 2004-04-01 Thomson Licensing S.A. Hybrid video on demand using mpeg 2 transport
US8650599B2 (en) * 2004-03-29 2014-02-11 Panasonic Corporation Accumulation display device, interlocked display method and system
US8494342B2 (en) * 2005-04-25 2013-07-23 Sharp Kabushiki Kaisha Recording apparatus, reproducing apparatus, recording/reproducing apparatus, recording program and storage medium thereof, and reproduction program and storage medium thereof
JP4534997B2 (ja) 2006-02-13 2010-09-01 ソニー株式会社 送受信システム、受信装置、受信方法
US9432433B2 (en) * 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US8370887B2 (en) 2008-05-30 2013-02-05 Microsoft Corporation Media streaming with enhanced seek operation
JP4686587B2 (ja) * 2008-10-16 2011-05-25 株式会社東芝 映像記録再生装置およびファイル管理方法
US9319448B2 (en) * 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US20120114118A1 (en) 2010-11-05 2012-05-10 Samsung Electronics Co., Ltd. Key rotation in live adaptive streaming
US9462024B2 (en) * 2011-06-08 2016-10-04 Futurewei Technologies, Inc. System and method of media content streaming with a multiplexed representation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014028168A1 (en) * 2012-08-13 2014-02-20 Disney Enterprises, Inc. Content based partitioning of digital media content
US9282348B2 (en) 2012-08-13 2016-03-08 Disney Enterprises, Inc. Content based partitioning of digital media content
WO2014171718A1 (ko) * 2013-04-16 2014-10-23 엘지전자 주식회사 방송 전송 장치, 방송 수신 장치, 방송 전송 장치의 동작 방법 및 방송 수신 장치의 동작 방법
CN105210372A (zh) * 2013-05-22 2015-12-30 索尼公司 内容供应装置、内容供应方法、程序以及内容供应系统
US9942619B2 (en) 2013-05-22 2018-04-10 Saturn Licensing Llc Content supply device, content supply method, program, and content supply system
CN105210372B (zh) * 2013-05-22 2019-05-17 索尼公司 内容供应装置、内容供应方法、程序以及内容供应系统
EP3018912A4 (en) * 2013-07-02 2017-03-08 Sony Corporation Content provision device, content provision method, program, terminal device, and content provision system
US11711569B2 (en) * 2015-11-09 2023-07-25 Interdigital Vc Holdings, Inc. Method and device for adapting the video content decoded from elementary streams to the characteristics of a display
WO2018021616A1 (en) * 2016-07-29 2018-02-01 Airbroad Inc. Operating method of client for streaming service
KR20180013298A (ko) * 2016-07-29 2018-02-07 주식회사 에어브로드 스트리밍 서비스를 위한 클라이언트의 동작 방법
KR101863598B1 (ko) * 2016-07-29 2018-06-01 주식회사 에어브로드 스트리밍 서비스를 위한 클라이언트의 동작 방법

Also Published As

Publication number Publication date
KR101613941B1 (ko) 2016-04-20
EP2637414A4 (en) 2014-10-22
US20130238758A1 (en) 2013-09-12
CN106851334A (zh) 2017-06-13
EP2637414A2 (en) 2013-09-11
US9781188B2 (en) 2017-10-03
WO2012060581A3 (ko) 2012-07-19
KR101452669B1 (ko) 2014-10-23
KR20140066265A (ko) 2014-05-30
KR101649533B1 (ko) 2016-08-19
KR20160047585A (ko) 2016-05-02
CN103262556A (zh) 2013-08-21
CA2816621A1 (en) 2012-05-10
DE112011103642T5 (de) 2013-09-19
CN103262556B (zh) 2016-12-07
KR20130076884A (ko) 2013-07-08

Similar Documents

Publication Publication Date Title
WO2012060581A2 (ko) 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치
WO2012177041A2 (ko) 미디어 컨텐트 송수신 방법 및 그를 이용한 송수신 장치
WO2012011724A2 (ko) 미디어 파일 송수신 방법 및 그를 이용한 송수신 장치
WO2011059291A2 (en) Method and apparatus for transmitting and receiving data
WO2013169084A1 (ko) Mmt 패킷 포맷 확장을 통한 하이브리드 전송 방법
WO2013141666A1 (ko) Mmt 패키지화된 svc 비디오 콘텐츠의 하이브리드 전송 방법 및 수신 방법
WO2013089437A1 (ko) 미디어 컨텐트를 수신하는 장치 및 방법
WO2011152675A2 (en) Method and apparatus for adaptive streaming based on plurality of elements for determining quality of content
WO2011059273A2 (en) Method and apparatus for adaptive streaming using segmentation
WO2011071290A2 (en) Streaming method and apparatus operating by inserting other content into main content
WO2011105811A2 (en) Method and apparatus for transmitting and receiving data
WO2012011722A2 (ko) 미디어 송수신 방법 및 그를 이용한 송수신 장치
WO2013077698A1 (ko) Mmt 미디어와 dash 미디어와의 연동 방법
WO2011059274A2 (en) Adaptive streaming method and apparatus
WO2015002500A1 (ko) 실시간 전송 프로토콜 기반의 방송 시스템에서 미디어 방송 신호의 송수신 방법 및 장치
WO2013025035A2 (ko) 송신 장치, 수신 장치 및 그 송수신 방법
WO2012011735A2 (en) Method and apparatus for transmitting and receiving adaptive streaming mechanism-based content
WO2011132883A2 (ko) 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
WO2015012605A1 (ko) 3차원 콘텐츠의 부호화 방법 및 장치
WO2011115454A2 (en) Method and apparatus for adaptively streaming content including plurality of chapters
WO2011132879A2 (ko) 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
WO2010123248A2 (ko) P2p 전송 방식에 의한 iptv 스트리밍 서비스를 전송하는 방법 및 p2p 전송 방식에 의한 iptv 스트리밍 서비스를 수신하는 방법.
WO2011132882A2 (ko) 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
WO2011132880A2 (ko) 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
WO2011132881A2 (ko) 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11838186

Country of ref document: EP

Kind code of ref document: A2

ENP Entry into the national phase

Ref document number: 20137011179

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2816621

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 13882926

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1120111036426

Country of ref document: DE

Ref document number: 112011103642

Country of ref document: DE

ENP Entry into the national phase

Ref document number: 1308663

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20111027

WWE Wipo information: entry into national phase

Ref document number: 1308663.2

Country of ref document: GB

WWE Wipo information: entry into national phase

Ref document number: 2011838186

Country of ref document: EP