WO2016114510A1 - 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 - Google Patents

방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 Download PDF

Info

Publication number
WO2016114510A1
WO2016114510A1 PCT/KR2015/014172 KR2015014172W WO2016114510A1 WO 2016114510 A1 WO2016114510 A1 WO 2016114510A1 KR 2015014172 W KR2015014172 W KR 2015014172W WO 2016114510 A1 WO2016114510 A1 WO 2016114510A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
information
data
packet
header
Prior art date
Application number
PCT/KR2015/014172
Other languages
English (en)
French (fr)
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 US15/540,006 priority Critical patent/US20170373916A1/en
Publication of WO2016114510A1 publication Critical patent/WO2016114510A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0042Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0079Formats for control data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint

Definitions

  • the present invention relates to a broadcast signal transmission apparatus, a broadcast signal reception apparatus, and a broadcast signal transmission and reception method.
  • the digital broadcast signal may include a larger amount of video / audio data than the analog broadcast signal, and may further include various types of additional data as well as the video / audio data.
  • the digital broadcasting system may provide high definition (HD) images, multichannel audio, and various additional services.
  • HD high definition
  • data transmission efficiency for a large amount of data transmission, robustness of a transmission / reception network, and network flexibility in consideration of a mobile receiving device should be improved.
  • the present invention provides a system and an associated signaling scheme that can effectively support next-generation broadcast services in an environment that supports next-generation hybrid broadcasting using terrestrial broadcasting networks and Internet networks. Suggest.
  • the present invention can provide various broadcast services by processing data according to service characteristics to control a quality of service (QoS) for each service or service component.
  • QoS quality of service
  • the present invention can achieve transmission flexibility by transmitting various broadcast services through the same radio frequency (RF) signal bandwidth.
  • RF radio frequency
  • the present invention it is possible to provide a broadcast signal transmission and reception method and apparatus capable of receiving a digital broadcast signal without errors even when using a mobile reception device or in an indoor environment.
  • the present invention can effectively support the next generation broadcast service in an environment supporting the next generation hybrid broadcast using the terrestrial broadcast network and the Internet network.
  • FIG. 1 shows a structure of a broadcast signal transmission apparatus for a next generation broadcast service according to an embodiment of the present invention.
  • FIG 2 illustrates an input formatting block according to an embodiment of the present invention.
  • FIG 3 illustrates an input formatting block according to another embodiment of the present invention.
  • BICM bit interleaved coding & modulation
  • FIG. 5 illustrates a BICM block according to another embodiment of the present invention.
  • FIG. 6 illustrates a frame building block according to an embodiment of the present invention.
  • FIG 7 illustrates an orthogonal frequency division multiplexing (OFDM) generation block according to an embodiment of the present invention.
  • OFDM orthogonal frequency division multiplexing
  • FIG. 8 illustrates a structure of a broadcast signal receiving apparatus for a next generation broadcast service according to an embodiment of the present invention.
  • FIG. 9 shows a frame structure according to an embodiment of the present invention.
  • FIG. 10 illustrates a signaling hierarchy structure of a frame according to an embodiment of the present invention.
  • FIG 11 illustrates preamble signaling data according to an embodiment of the present invention.
  • FIG 13 illustrates PLS2 data according to an embodiment of the present invention.
  • FIG 14 illustrates PLS2 data according to another embodiment of the present invention.
  • FIG. 15 illustrates a logical structure of a frame according to an embodiment of the present invention.
  • PLS 16 illustrates physical layer signaling (PLS) mapping according to an embodiment of the present invention.
  • EAC emergency alert channel
  • FEC forward error correction
  • 21 illustrates the basic operation of a twisted row-column block interleaver according to an embodiment of the present invention.
  • FIG. 22 illustrates an operation of a twisted row-column block interleaver according to another embodiment of the present invention.
  • FIG. 23 illustrates a diagonal read pattern of a twisted row-column block interleaver according to an embodiment of the present invention.
  • FIG. 24 illustrates XFECBLOCKs interleaved from each interleaving array according to an embodiment of the present invention.
  • FIG. 25 illustrates signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • FIG. 26 is a diagram illustrating FI schemes for FSS in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • FIG. 27 illustrates an operation of a reset mode for FES in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • FIG. 28 is a diagram for mathematically representing an input and an output of a frequency interleaver in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • 29 is a view illustrating equations of a logical operation mechanism of frequency interleaving according to FI scheme # 1 and FI scheme # 2 in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention. Indicates.
  • FIG. 30 is a diagram illustrating an embodiment in which the number of symbols is even in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • 31 is a diagram illustrating an embodiment in which the number of symbols is even in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • 32 is a diagram illustrating an embodiment in which the number of symbols is odd in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • 33 is a diagram illustrating an embodiment in which the number of symbols is odd in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • FIG. 34 illustrates operation of a frequency deinterleaver in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • 35 is a conceptual diagram illustrating a variable data-rate system according to another embodiment of the present invention.
  • FIG. 39 is a equation illustrating a reading operation after virtual FEC blocks are inserted according to an embodiment of the present invention.
  • 40 is a flowchart illustrating a process of time interleaving according to an embodiment of the present invention.
  • FIG. 41 is an equation illustrating a process of determining a shift value and a size of a maximum TI block according to an embodiment of the present invention.
  • 44 is a view illustrating a result of a skip operation performed in a reading operation according to an embodiment of the present invention.
  • 45 illustrates a writing process of time deinterleaving according to an embodiment of the present invention.
  • FIG. 47 is a equation illustrating reading operation of time deinterleaving according to another embodiment of the present invention.
  • 48 is a flowchart illustrating a process of time deinterleaving according to an embodiment of the present invention.
  • FIG. 49 illustrates a receiver protocol stack according to an embodiment of the present invention.
  • SLT service layer signaling
  • 51 is a diagram illustrating an SLT according to an embodiment of the present invention.
  • FIG 52 illustrates an SLS bootstrapping and service discovery process according to an embodiment of the present invention.
  • FIG. 53 illustrates a USBD fragment for ROUTE / DASH according to an embodiment of the present invention.
  • FIG. 54 illustrates an S-TSID fragment for ROUTE / DASH according to an embodiment of the present invention.
  • FIG. 55 illustrates a USBD / USD fragment for MMT according to an embodiment of the present invention.
  • 57 is a diagram illustrating a base header structure of a link layer packet according to an embodiment of the present invention.
  • 58 is a diagram illustrating an additional header structure of a link layer packet according to an embodiment of the present invention.
  • 59 is a diagram illustrating an additional header structure of a link layer packet according to another embodiment of the present invention.
  • 60 is a diagram illustrating a header structure of a link layer packet for an MPEG-2 TS packet and an encapsulation process according to an embodiment of the present invention.
  • FIG. 61 is a diagram showing an embodiment of adaptation modes in the IP header compression according to an embodiment of the present invention (the transmitting side).
  • LMT link mapping table
  • 63 is a diagram illustrating a link layer structure on the transmitter side according to an embodiment of the present invention.
  • 64 is a diagram illustrating a link layer structure of a receiver side according to an embodiment of the present invention.
  • 65 is a diagram illustrating a signaling transmission structure through a link layer according to an embodiment of the present invention (transmission / reception side).
  • 66 is a diagram illustrating a protocol stack for a next generation broadcast system according to an embodiment of the present invention.
  • 67 is a diagram illustrating a receiver of a next generation broadcast system according to an embodiment of the present invention.
  • FIG. 68 is a view illustrating a timeline component for synchronization between a transport stream of a broadcasting network and a transport stream of an internet network (heterogeneous network) according to an embodiment of the present invention.
  • 69 is a view of a broadcast transport frame according to an embodiment of the present invention.
  • 70 is a view of a broadcast transport frame according to another embodiment of the present invention.
  • 71 shows a structure of a transport packet for transmitting a broadcast service according to an embodiment of the present invention.
  • 72 is a view illustrating a value that a network_protocol field includes in a transport packet for transmitting a broadcast service according to an embodiment of the present invention.
  • 73 is a view illustrating a broadcast service signaling table and a broadcast service transmission path signaling information signaling a broadcast service and a broadcast service transmission path according to an embodiment of the present invention.
  • 74 is a view of a broadcast service signaling table according to an embodiment of the present invention.
  • 75 is a view illustrating a value that a service_category field includes in a broadcast service signaling table according to an embodiment of the present invention.
  • 76 is a view of a broadcast service signaling table according to another embodiment of the present invention.
  • FIG. 77 shows a stream identifier descriptor according to an embodiment of the present invention.
  • 78 is a view illustrating an operation of transmitting a broadcast broadcast packet by a broadcast transmission device according to an embodiment of the present invention.
  • 79 illustrates an operation of receiving a broadcast packet by the broadcast reception device according to an embodiment of the present invention.
  • FIG. 80 is a diagram illustrating a packet configuration according to an embodiment of the present invention.
  • RTP Real-time Transport Protocol
  • ISO BMFF ISO base media file format
  • 83 is a diagram showing the configuration of a payload header of a packet payload according to one embodiment of the present invention.
  • 84 to 85 show a payload configuration of a transport packet in which one media data is packet-tagged in one packet.
  • 86 to 87 illustrate a configuration of a transport packet in which a plurality of different media data are packetized in one packet.
  • FIG. 88 illustrates a payload configuration of a transport packet (hereinafter, a fragmented packet) packed with one piece of media data divided into a plurality of transport packets.
  • 89 shows another embodiment of a payload structure of the fragmented packet.
  • FIG. 90 illustrates that the broadcast transmission device fragments an ISO BMFF-based media file into a plurality of packets according to an embodiment of the present invention.
  • FIG. 91 shows a specific embodiment of data of the first fragmentation unit packetized by the broadcast transmission device of FIG. 90.
  • 92 to 94 illustrate an embodiment of a fragmentation unit including remaining data except start data among fragmentation unit data.
  • 96 illustrates a configuration of payload data in which one metadata is packetized in payload data of a transport packet.
  • 97 is a diagram for one embodiment when payload data of a transport packet includes metadata about a timeline.
  • FIG. 98 illustrates a case where a plurality of metadata are packetized in one transport packet.
  • 100 illustrates a packet payload obtained by packetizing one metadata into a plurality of transport packets.
  • 101 is a view illustrating another embodiment of a metadata fragment header.
  • 102 is a view illustrating an operation of receiving a broadcast packet by a broadcast reception device according to an embodiment of the present invention.
  • FIG. 103 illustrates a case in which a video stream is transmitted using an RTP protocol through a broadcast network and a video stream is transmitted using file format based media data through an Internet network.
  • FIG. 104 is a diagram showing the configuration of a transport packet according to one embodiment of the present invention.
  • 105 illustrates a configuration of a packet header according to an embodiment of the present invention.
  • 106 to 107 show a configuration of an extended header including time information.
  • 112 illustrates a structure of an extended header for supporting mapping with other timing information according to an embodiment of the present invention.
  • 113 is a flowchart illustrating a method of operating a broadcast transmission device according to an embodiment of the present invention.
  • 114 is a flowchart illustrating a method of operating a broadcast reception device according to one embodiment of the present invention.
  • 115 shows a structure of a packet header including information on a configuration of a transport packet.
  • FIG. 116 is a diagram illustrating a configuration of a transport packet described in FIG. 115.
  • 117 is a flowchart illustrating a method of operating a broadcast transmission device according to one embodiment of the present invention.
  • 118 illustrates a method of operating a broadcast reception device according to an embodiment of the present invention.
  • 119 is a diagram illustrating a hybrid broadcast reception device according to an embodiment of the present invention.
  • 120 is a block diagram of a hybrid broadcast receiver according to an embodiment of the present invention.
  • 121 is a diagram illustrating a protocol stack of a next generation hybrid broadcast system according to one embodiment of the present invention.
  • FIG. 122 illustrates a structure of a transport frame delivered to a physical layer of a next generation broadcast transmission system according to an embodiment of the present invention.
  • 123 is a diagram illustrating a first packet structure according to an embodiment of the present invention.
  • FIG. 124 is a diagram illustrating a first packet structure according to another embodiment of the present invention.
  • 125 is a diagram illustrating a first packet structure according to another embodiment of the present invention.
  • 126 is a view illustrating payload structures of a first packet according to another embodiment of the present invention.
  • 127 is a diagram illustrating a header structure and a payload header structure of a second packet according to an embodiment of the present invention.
  • 128 illustrates header structures of a second packet according to another embodiment of the present invention.
  • 129 is a view illustrating header extension structures of a second packet according to another embodiment of the present invention.
  • 130 is a diagram illustrating a process of transmitting a first packet or a second packet according to an embodiment of the present invention.
  • 131 illustrates a method of transmitting a broadcast signal according to an embodiment of the present invention.
  • FIG. 132 is a diagram illustrating an apparatus for transmitting a broadcast signal according to an embodiment of the present invention.
  • 133 is a table showing interleaving types applied according to the number of PLPs.
  • 134 is a block diagram including the first embodiment of the above-described hybrid time interleaver structure.
  • 135 is a block diagram including the second embodiment of the above-described hybrid time interleaver structure.
  • 136 is a block diagram including the first embodiment of the structure of the hybrid time deinterleaver.
  • 137 is a block diagram including the second embodiment of the structure of the hybrid time deinterleaver.
  • the present invention provides an apparatus and method for transmitting and receiving broadcast signals for next generation broadcast services.
  • the next generation broadcast service includes a terrestrial broadcast service, a mobile broadcast service, a UHDTV service, and the like.
  • a broadcast signal for a next generation broadcast service may be processed through a non-multiple input multiple output (MIMO) or MIMO scheme.
  • MIMO multiple input multiple output
  • the non-MIMO scheme may include a multiple input single output (MISO) scheme, a single input single output (SISO) scheme, and the like.
  • the MISO or MIMO scheme uses two antennas, but the present invention can be applied to a system using two or more antennas.
  • the present invention can define three physical profiles (base, handheld, advanced) that are optimized to minimize receiver complexity while achieving the performance required for a particular application. have.
  • the physical profile is a subset of all the structures that the corresponding receiver must implement.
  • the three physical profiles share most of the functional blocks, but differ slightly in certain blocks and / or parameters. Further physical profiles can be defined later.
  • a future profile may be multiplexed with a profile present in a single radio frequency (RF) channel through a future extension frame (FEF). Details of each physical profile will be described later.
  • RF radio frequency
  • FEF future extension frame
  • the base profile mainly indicates the main use of a fixed receiving device in connection with a roof-top antenna.
  • the base profile can be moved to any place but can also include portable devices that fall into a relatively stationary reception category.
  • the use of the base profile can be extended for handheld devices or vehicles with some improved implementation, but such use is not expected in base profile receiver operation.
  • the target signal-to-noise ratio range of reception is approximately 10-20 dB, which includes the 15 dB signal-to-noise ratio receiving capability of existing broadcast systems (eg, ATSC A / 53). Receiver complexity and power consumption are not as important as in battery powered handheld devices that will use the handheld profile. Key system parameters for the base profile are listed in Table 1 below.
  • the handheld profile is designed for use in battery powered handheld and in-vehicle devices.
  • the device may move at pedestrian or vehicle speed.
  • the power consumption as well as the receiver complexity is very important for the implementation of the device of the handheld profile.
  • the target signal-to-noise ratio range of the handheld profile is approximately 0-10 dB, but can be set to reach below 0 dB if intended for lower indoor reception.
  • the advance profile provides higher channel capability in exchange for greater execution complexity.
  • the profile requires the use of MIMO transmission and reception, and the UHDTV service is a target use, for which the profile is specifically designed.
  • the enhanced capability may also be used to allow for an increase in the number of services at a given bandwidth, for example multiple SDTV or HDTV services.
  • the target signal to noise ratio range of the advanced profile is approximately 20 to 30 dB.
  • MIMO transmissions initially use existing elliptic polarization transmission equipment and can later be extended to full power cross polarization transmissions. Key system parameters for the advance profile are listed in Table 3 below.
  • the base profile may be used as a profile for both terrestrial broadcast service and mobile broadcast service. That is, the base profile can be used to define the concept of a profile that includes a mobile profile. Also, the advanced profile can be divided into an advanced profile for the base profile with MIMO and an advanced profile for the handheld profile with MIMO. The three profiles can be changed according to the designer's intention.
  • Auxiliary stream A sequence of cells carrying data of an undefined modulation and coding that can be used as a future extension or as required by a broadcaster or network operator.
  • Base data pipe a data pipe that carries service signaling data
  • Baseband Frame (or BBFRAME): A set of Kbch bits that form the input for one FEC encoding process (BCH and LDPC encoding).
  • Coded block one of an LDPC encoded block of PLS1 data or an LDPC encoded block of PLS2 data
  • Data pipe a logical channel in the physical layer that carries service data or related metadata that can carry one or more services or service components
  • Data pipe unit A basic unit that can allocate data cells to data pipes in a frame
  • Data symbol OFDM symbol in a frame that is not a preamble symbol (frame signaling symbols and frame edge symbols are included in the data symbols)
  • DP_ID This 8-bit field uniquely identifies a data pipe within the system identified by SYSTEM_ID.
  • Dummy cell A cell that carries a pseudo-random value used to fill the remaining unused capacity for physical layer signaling (PLS) signaling, data pipes, or auxiliary streams.
  • PLS physical layer signaling
  • FAC Emergency alert channel
  • Frame A physical layer time slot starting with a preamble and ending with a frame edge symbol.
  • Frame repetition unit A set of frames belonging to the same or different physical profile that contains an FEF that is repeated eight times in a super-frame.
  • FEC Fast information channel
  • FECBLOCK set of LDPC encoded bits of data pipe data
  • FFT size The nominal FFT size used for a particular mode equal to the active symbol period Ts expressed in cycles of the fundamental period T.
  • Frame signaling symbol The higher pilot density used at the start of a frame in a particular combination of FFT size, guard interval, and scattered pilot pattern, which carries a portion of the PLS data. Having OFDM symbol
  • Frame edge symbol An OFDM symbol with a higher pilot density used at the end of the frame in a particular combination of FFT size, guard interval, and scatter pilot pattern.
  • Frame-group set of all frames with the same physical profile type in a superframe
  • Future extention frame A physical layer time slot within a super frame that can be used for future expansion, starting with a preamble.
  • Futurecast UTB system A proposed physical layer broadcast system whose input is one or more MPEG2-TS or IP (Internet protocol) or generic streams and the output is an RF signal.
  • Input stream A stream of data for the coordination of services delivered to the end user by the system.
  • Normal data symbols data symbols except frame signaling symbols and frame edge symbols
  • PHY profile A subset of all structures that the corresponding receiver must implement
  • PLS physical layer signaling data consisting of PLS1 and PLS2
  • PLS1 The first set of PLS data carried in a frame signaling symbol (FSS) with fixed size, coding, and modulation that conveys basic information about the system as well as the parameters needed to decode PLS2.
  • FSS frame signaling symbol
  • PLS2 The second set of PLS data sent to the FSS carrying more detailed PLS data about data pipes and systems.
  • PLS2 dynamic data PLS2 data that changes dynamically from frame to frame
  • PLS2 static data PLS2 data that is static during the duration of a frame group
  • Preamble signaling data signaling data carried by the preamble symbol and used to identify the basic mode of the system
  • Preamble symbol a fixed length pilot symbol carrying basic PLS data and positioned at the beginning of a frame
  • Preamble symbols are primarily used for fast initial band scans to detect system signals, their timings, frequency offsets, and FFT sizes.
  • Superframe set of eight frame repeat units
  • Time interleaving block A set of cells in which time interleaving is performed, corresponding to one use of time interleaver memory.
  • Time interleaving group A unit in which dynamic capacity allocation is performed for a particular data pipe, consisting of an integer, the number of XFECBLOCKs that change dynamically.
  • a time interleaving group can be directly mapped to one frame or mapped to multiple frames.
  • the time interleaving group may include one or more time interleaving blocks.
  • Type 1 DP A data pipe in a frame where all data pipes are mapped to frames in a time division multiplexing (TDM) manner
  • Type 2 DPs Types of data pipes in a frame where all data pipes are mapped to frames in an FDM fashion.
  • XFECBLOCK set of N cells cells carrying all the bits of one LDPC FECBLOCK
  • FIG. 1 shows a structure of a broadcast signal transmission apparatus for a next generation broadcast service according to an embodiment of the present invention.
  • a broadcast signal transmission apparatus for a next generation broadcast service includes an input format block 1000, a bit interleaved coding & modulation (BICM) block 1010, and a frame building block 1020, orthogonal frequency division multiplexing (OFDM) generation block (OFDM generation block) 1030, and signaling generation block 1040. The operation of each block of the broadcast signal transmission apparatus will be described.
  • BICM bit interleaved coding & modulation
  • OFDM generation block orthogonal frequency division multiplexing
  • signaling generation block 1040 The operation of each block of the broadcast signal transmission apparatus will be described.
  • IP streams / packets and MPEG2-TS are the main input formats and other stream types are treated as general streams.
  • management information is input to control the scheduling and allocation of the corresponding bandwidth for each input stream.
  • One or multiple TS streams, IP streams and / or general stream inputs are allowed at the same time.
  • the input format block 1000 can demultiplex each input stream into one or multiple data pipes to which independent coding and modulation is applied.
  • the data pipe is the basic unit for controlling robustness, which affects the quality of service (QoS).
  • QoS quality of service
  • One or multiple services or service components may be delivered by one data pipe. Detailed operations of the input format block 1000 will be described later.
  • a data pipe is a logical channel at the physical layer that carries service data or related metadata that can carry one or multiple services or service components.
  • the data pipe unit is a basic unit for allocating data cells to data pipes in one frame.
  • parity data is added for error correction and the encoded bit stream is mapped to a complex value constellation symbol.
  • the symbols are interleaved over the specific interleaving depth used for that data pipe.
  • MIMO encoding is performed at BICM block 1010 and additional data paths are added to the output for MIMO transmission. Detailed operations of the BICM block 1010 will be described later.
  • the frame building block 1020 may map data cells of an input data pipe to OFDM solid balls within one frame. After mapping, frequency interleaving is used for frequency domain diversity, in particular to prevent frequency selective fading channels. Detailed operations of the frame building block 1020 will be described later.
  • the OFDM generation block 1030 can apply existing OFDM modulation having a cyclic prefix as the guard interval.
  • a distributed MISO scheme is applied across the transmitter.
  • a peak-to-average power ratio (PAPR) scheme is implemented in the time domain.
  • PAPR peak-to-average power ratio
  • the proposal provides a variety of FFT sizes, guard interval lengths, and sets of corresponding pilot patterns. Detailed operations of the OFDM generation block 1030 will be described later.
  • the signaling generation block 1040 may generate physical layer signaling information used for the operation of each functional block.
  • the signaling information is also transmitted such that the service of interest is properly recovered at the receiver side. Detailed operations of the signaling generation block 1040 will be described later.
  • 2 illustrates an input format block according to an embodiment of the present invention. 2 shows an input format block when the input signal is a single input stream.
  • the input format block illustrated in FIG. 2 corresponds to an embodiment of the input format block 1000 described with reference to FIG. 1.
  • Input to the physical layer may consist of one or multiple data streams. Each data stream is carried by one data pipe.
  • the mode adaptation module slices the input data stream into a data field of a baseband frame (BBF).
  • BBF baseband frame
  • the system supports three types of input data streams: MPEG2-TS, IP, and GS (generic stream).
  • MPEG2-TS features a fixed length (188 bytes) packet where the first byte is a sync byte (0x47).
  • An IP stream consists of variable length IP datagram packets signaled in IP packet headers.
  • the system supports both IPv4 and IPv6 for IP streams.
  • the GS may consist of variable length packets or constant length packets signaled in the encapsulation packet header.
  • (a) shows a mode adaptation block 2000 and a stream adaptation (stream adaptation) 2010 for a signal data pipe
  • PLS generation block 2020 and PLS scrambler 2030 are shown. The operation of each block will be described.
  • the input stream splitter splits the input TS, IP, GS streams into multiple service or service component (audio, video, etc.) streams.
  • the mode adaptation module 2010 is composed of a CRC encoder, a baseband (BB) frame slicer, and a BB frame header insertion block.
  • the CRC encoder provides three types of CRC encoding, CRC-8, CRC-16, and CRC-32, for error detection at the user packet (UP) level.
  • the calculated CRC byte is appended after the UP.
  • CRC-8 is used for the TS stream
  • CRC-32 is used for the IP stream. If the GS stream does not provide CRC encoding, then the proposed CRC encoding should be applied.
  • the BB Frame Slicer maps the input to an internal logical bit format.
  • the first receive bit is defined as MSB.
  • the BB frame slicer allocates the same number of input bits as the available data field capacity. In order to allocate the same number of input bits as the BBF payload, the UP stream is sliced to fit the data field of the BBF.
  • the BB frame header insertion block can insert a 2 bytes fixed length BBF header before the BB frame.
  • the BBF header consists of STUFFI (1 bit), SYNCD (13 bit), and RFU (2 bit).
  • the BBF may have an extension field (1 or 3 bytes) at the end of the 2-byte BBF header.
  • Stream adaptation 2010 consists of a stuffing insertion block and a BB scrambler.
  • the stuffing insertion block may insert the stuffing field into the payload of the BB frame. If the input data for the stream adaptation is sufficient to fill the BB frame, STUFFI is set to 0, and the BBF has no stuffing field. Otherwise, STUFFI is set to 1 and the stuffing field is inserted immediately after the BBF header.
  • the stuffing field includes a 2-byte stuffing field header and variable sized stuffing data.
  • the BB scrambler scrambles the complete BBF for energy dissipation.
  • the scrambling sequence is synchronized with the BBF.
  • the scrambling sequence is generated by the feedback shift register.
  • the PLS generation block 2020 may generate PLS data.
  • PLS provides a means by which a receiver can connect to a physical layer data pipe.
  • PLS data consists of PLS1 data and PLS2 data.
  • PLS1 data is the first set of PLS data delivered to the FSS in frames with fixed size, coding, and modulation that convey basic information about the system as well as the parameters needed to decode the PLS2 data.
  • PLS1 data provides basic transmission parameters including the parameters required to enable reception and decoding of PLS2 data.
  • the PLS1 data is constant during the duration of the frame group.
  • PLS2 data is the second set of PLS data sent to the FSS that carries more detailed PLS data about the data pipes and systems.
  • PLS2 contains parameters that provide enough information for the receiver to decode the desired data pipe.
  • PLS2 signaling further consists of two types of parameters: PLS2 static data (PLS2-STAT data) and PLS2 dynamic data (PLS2-DYN data).
  • PLS2 static data is PLS2 data that is static during the duration of a frame group
  • PLS2 dynamic data is PLS2 data that changes dynamically from frame to frame.
  • the PLS scrambler 2030 may scramble PLS data generated for energy distribution.
  • the aforementioned blocks may be omitted or may be replaced by blocks having similar or identical functions.
  • FIG 3 illustrates an input format block according to another embodiment of the present invention.
  • the input format block illustrated in FIG. 3 corresponds to an embodiment of the input format block 1000 described with reference to FIG. 1.
  • FIG. 3 illustrates a mode adaptation block of an input format block when the input signal corresponds to a multi input stream.
  • a mode adaptation block of an input format block for processing multi input streams may independently process multiple input streams.
  • a mode adaptation block for processing a multi input stream may be an input stream splitter 3000 or an input stream synchro.
  • Each block of the mode adaptation block will be described.
  • Operations of the CRC encoder 3050, the BB frame slicer 3060, and the BB header insertion block 3070 correspond to the operations of the CRC encoder, the BB frame slicer, and the BB header insertion block described with reference to FIG. Is omitted.
  • the input stream splitter 3000 splits the input TS, IP, and GS streams into a plurality of service or service component (audio, video, etc.) streams.
  • the input stream synchronizer 3010 may be called ISSY.
  • ISSY can provide suitable means to ensure constant bit rate (CBR) and constant end-to-end transmission delay for any input data format.
  • CBR constant bit rate
  • ISSY is always used in the case of multiple data pipes carrying TS, and optionally in multiple data pipes carrying GS streams.
  • Compensating delay block 3020 may delay the split TS packet stream following the insertion of ISSY information to allow TS packet recombination mechanisms without requiring additional memory at the receiver. have.
  • the null packet deletion block 3030 is used only for the TS input stream. Some TS input streams or split TS streams may have a large number of null packets present to accommodate variable bit-rate (VBR) services in the CBR TS stream. In this case, to avoid unnecessary transmission overhead, null packets may be acknowledged and not transmitted. At the receiver, the discarded null packet can be reinserted in the exact place it originally existed with reference to the deleted null-packet (DNP) counter inserted in the transmission, ensuring CBR and time stamp (PCR) updates. There is no need.
  • VBR variable bit-rate
  • the header compression block 3040 can provide packet header compression to increase transmission efficiency for the TS or IP input stream. Since the receiver may have a priori information for a particular portion of the header, this known information may be deleted at the transmitter.
  • the receiver may have a priori information about the sync byte configuration (0x47) and the packet length (188 bytes). If the input TS delivers content with only one PID, that is, one service component (video, audio, etc.) or service subcomponent (SVC base layer, SVC enhancement layer, MVC base view, or MVC dependent view) Only, TS packet header compression may (optionally) be applied to the TS. TS packet header compression is optionally used when the input stream is an IP stream. The block may be omitted or replaced with a block having similar or identical functions.
  • FIG. 4 illustrates a BICM block according to an embodiment of the present invention.
  • the BICM block illustrated in FIG. 4 corresponds to an embodiment of the BICM block 1010 described with reference to FIG. 1.
  • the broadcast signal transmission apparatus for the next generation broadcast service may provide a terrestrial broadcast service, a mobile broadcast service, a UHDTV service, and the like.
  • the BICM block according to an embodiment of the present invention can independently process each data pipe by independently applying the SISO, MISO, and MIMO schemes to the data pipes corresponding to the respective data paths.
  • the apparatus for transmitting broadcast signals for the next generation broadcast service according to an embodiment of the present invention may adjust QoS for each service or service component transmitted through each data pipe.
  • the BICM block shared by the base profile and the handheld profile and the BICM block of the advanced profile may include a plurality of processing blocks for processing each data pipe.
  • the processing block 5000 of the BICM block for the base profile and the handheld profile includes a data FEC encoder 5010, a bit interleaver 5020, a constellation mapper 5030, a signal space diversity (SSD) encoding block ( 5040, and a time interleaver 5050.
  • a data FEC encoder 5010 a bit interleaver 5020
  • a constellation mapper 5030 a signal space diversity (SSD) encoding block ( 5040, and a time interleaver 5050.
  • SSD signal space diversity
  • the data FEC encoder 5010 performs FEC encoding on the input BBF to generate the FECBLOCK procedure using outer coding (BCH) and inner coding (LDPC).
  • Outer coding (BCH) is an optional coding method. The detailed operation of the data FEC encoder 5010 will be described later.
  • the bit interleaver 5020 may interleave the output of the data FEC encoder 5010 while providing a structure that can be efficiently realized to achieve optimized performance by a combination of LDPC codes and modulation schemes. The detailed operation of the bit interleaver 5020 will be described later.
  • Constellation mapper 5030 can be QPSK, QAM-16, non-uniform QAM (NUQ-64, NUQ-256, NUQ-1024) or non-uniform constellation (NUC-16, NUC-64, NUC-256, NUC-1024)
  • NUQ-64, NUQ-256, NUQ-1024 non-uniform QAM
  • NUC-16, NUC-64, NUC-256, NUC-1024 A constellation point whose power is normalized by modulating each cell word from the bit interleaver 5020 in the base and handheld profiles or the cell word from the cell word demultiplexer 5010-1 in the advanced profile. e l can be provided.
  • the constellation mapping applies only to data pipes. It is observed that NUQ has any shape, while QAM-16 and NUQ have a square shape. If each constellation is rotated by a multiple of 90 degrees, the rotated constellation overlaps exactly with the original. Due to the rotational symmetry characteristic, the real and imaginary components have the same capacity and average power. Both NUQ and N
  • the time interleaver 5050 may operate at the data pipe level.
  • the parameters of time interleaving can be set differently for each data pipe. The specific operation of the time interleaver 5050 will be described later.
  • the processing block 5000-1 of the BICM block for the advanced profile may include a data FEC encoder, a bit interleaver, a constellation mapper, and a time interleaver.
  • the processing block 5000-1 is distinguished from the processing block 5000 in that it further includes a cell word demultiplexer 5010-1 and a MIMO encoding block 5020-1.
  • operations of the data FEC encoder, the bit interleaver, the constellation mapper, and the time interleaver in the processing block 5000-1 may be performed by the data FEC encoder 5010, the bit interleaver 5020, and the constellation mapper 5030. Since this corresponds to the operation of the time interleaver 5050, the description thereof will be omitted.
  • Cell word demultiplexer 5010-1 is used by an advanced profile data pipe to separate a single cell word stream into a dual cell word stream for MIMO processing. A detailed operation of the cell word demultiplexer 5010-1 will be described later.
  • the MIMO encoding block 5020-1 may process the output of the cell word demultiplexer 5010-1 using the MIMO encoding scheme.
  • MIMO encoding scheme is optimized for broadcast signal transmission. MIMO technology is a promising way to gain capacity, but depends on the channel characteristics. Especially for broadcast, the difference in received signal power between two antennas due to different signal propagation characteristics or the strong LOS component of the channel makes it difficult to obtain capacity gains from MIMO.
  • the proposed MIMO encoding scheme overcomes this problem by using phase randomization and rotation based precoding of one of the MIMO output signals.
  • MIMO encoding is intended for a 2x2 MIMO system that requires at least two antennas at both the transmitter and the receiver.
  • Two MIMO encoding modes are defined in this proposal, full-rate spatial multiplexing (FR-SM) and full-rate full-diversity spatial multiplexing (FRFD-SM).
  • FR-SM encoding provides increased capacity with a relatively small complexity increase at the receiver side, while FRFD-SM encoding provides increased capacity and additional diversity gain with a larger complexity increase at the receiver side.
  • the proposed MIMO encoding scheme does not limit the antenna polarity arrangement.
  • MIMO processing is required for the advanced profile frame, which means that all data pipes in the advanced profile frame are processed by the MIMO encoder. MIMO processing is applied at the data pipe level.
  • the pair of constellation mapper outputs, NUQ (e 1, i and e 2, i ), are fed to the input of the MIMO encoder.
  • MIMO encoder output pairs g1, i and g2, i are transmitted by the same carrier k and OFDM symbol l of each transmit antenna.
  • FIG. 5 illustrates a BICM block according to another embodiment of the present invention.
  • the BICM block illustrated in FIG. 5 corresponds to an embodiment of the BICM block 1010 described with reference to FIG. 1.
  • the EAC is part of a frame carrying EAS information data
  • the FIC is a logical channel in a frame carrying mapping information between a service and a corresponding base data pipe. Detailed description of the EAC and FIC will be described later.
  • a BICM block for protecting PLS, EAC, and FIC may include a PLS FEC encoder 6000, a bit interleaver 6010, and a constellation mapper 6020.
  • the PLS FEC encoder 6000 may include a scrambler, a BCH encoding / zero insertion block, an LDPC encoding block, and an LDPC parity puncturing block. Each block of the BICM block will be described.
  • the PLS FEC encoder 6000 may encode scrambled PLS 1/2 data, EAC and FIC sections.
  • the scrambler may scramble PLS1 data and PLS2 data before BCH encoding and shortening and punctured LDPC encoding.
  • the BCH encoding / zero insertion block may perform outer encoding on the scrambled PLS 1/2 data using the shortened BCH code for PLS protection, and insert zero bits after BCH encoding. For PLS1 data only, the output bits of zero insertion can be permutated before LDPC encoding.
  • the LDPC encoding block may encode the output of the BCH encoding / zero insertion block using the LDPC code.
  • C ldpc and parity bits P ldpc are encoded systematically from each zero-inserted PLS information block I ldpc and appended after it.
  • LDPC code parameters for PLS1 and PLS2 are shown in Table 4 below.
  • the LDPC parity puncturing block may perform puncturing on the PLS1 data and the PLS2 data.
  • LDPC parity bits are punctured after LDPC encoding.
  • the LDPC parity bits of PLS2 are punctured after LDPC encoding. These punctured bits are not transmitted.
  • the bit interleaver 6010 may interleave each shortened and punctured PLS1 data and PLS2 data.
  • the constellation mapper 6020 may map bit interleaved PLS1 data and PLS2 data to constellations.
  • FIG. 6 illustrates a frame building block according to an embodiment of the present invention.
  • the frame building block illustrated in FIG. 7 corresponds to an embodiment of the frame building block 1020 described with reference to FIG. 1.
  • the frame building block may include a delay compensation block 7000, a cell mapper 7010, and a frequency interleaver 7020. have. Each block of the frame building block will be described.
  • the delay compensation block 7000 adjusts the timing between the data pipes and the corresponding PLS data to ensure co-time between the data pipes and the corresponding PLS data at the transmitter. have.
  • PLS data is delayed by the data pipe.
  • the delay of the BICM block is mainly due to the time interleaver 5050.
  • In-band signaling data may cause information of the next time interleaving group to be delivered one frame ahead of the data pipe to be signaled.
  • the delay compensation block delays the in-band signaling data accordingly.
  • the cell mapper 7010 may map a PLS, an EAC, an FIC, a data pipe, an auxiliary stream, and a dummy cell to an active carrier of an OFDM symbol in a frame.
  • the basic function of the cell mapper 7010 is to activate the data cells generated by time interleaving for each data pipe, PLS cell, and EAC / FIC cell, if any, corresponding to each OFDM symbol in one frame. (active) mapping to an array of OFDM cells.
  • Service signaling data (such as program specific information (PSI) / SI) may be collected separately and sent by a data pipe.
  • PSI program specific information
  • SI program specific information
  • the frequency interleaver 7020 may randomly interleave data cells received by the cell mapper 7010 to provide frequency diversity.
  • the frequency interleaver 7020 may operate in an OFDM symbol pair consisting of two sequential OFDM symbols using different interleaving seed order to obtain the maximum interleaving gain in a single frame.
  • FIG 7 illustrates an OFDM generation block according to an embodiment of the present invention.
  • the OFDM generation block illustrated in FIG. 7 corresponds to an embodiment of the OFDM generation block 1030 described with reference to FIG. 1.
  • the OFDM generation block modulates the OFDM carrier by inserting a pilot by the cell generated by the frame building block, inserts a pilot, and generates a time domain signal for transmission.
  • the block sequentially inserts a guard interval and applies a PAPR reduction process to generate a final RF signal.
  • the OFDM generation block includes a pilot and reserved tone insertion block (8000), a 2D-single frequency network (eSFN) encoding block 8010, an inverse fast fourier transform (IFFT).
  • Block 8020 PAPR reduction block 8030, guard interval insertion block 8040, preamble insertion block 8050, other system insertion block 8060, and DAC block ( 8070).
  • the other system insertion block 8060 may multiplex signals of a plurality of broadcast transmission / reception systems in a time domain so that data of two or more different broadcast transmission / reception systems providing a broadcast service may be simultaneously transmitted in the same RF signal band.
  • two or more different broadcast transmission / reception systems refer to a system that provides different broadcast services.
  • Different broadcast services may refer to terrestrial broadcast services or mobile broadcast services.
  • FIG. 8 illustrates a structure of a broadcast signal receiving apparatus for a next generation broadcast service according to an embodiment of the present invention.
  • the broadcast signal receiving apparatus for the next generation broadcast service may correspond to the broadcast signal transmitting apparatus for the next generation broadcast service described with reference to FIG. 1.
  • An apparatus for receiving broadcast signals for a next generation broadcast service includes a synchronization & demodulation module 9000, a frame parsing module 9010, a demapping and decoding module a demapping & decoding module 9020, an output processor 9030, and a signaling decoding module 9040. The operation of each module of the broadcast signal receiving apparatus will be described.
  • the synchronization and demodulation module 9000 receives an input signal through m reception antennas, performs signal detection and synchronization on a system corresponding to the broadcast signal receiving apparatus, and performs a reverse process of the procedure performed by the broadcast signal transmitting apparatus. Demodulation can be performed.
  • the frame parsing module 9010 may parse an input signal frame and extract data in which a service selected by a user is transmitted.
  • the frame parsing module 9010 may execute deinterleaving corresponding to the reverse process of interleaving. In this case, positions of signals and data to be extracted are obtained by decoding the data output from the signaling decoding module 9040, so that the scheduling information generated by the broadcast signal transmission apparatus may be restored.
  • the demapping and decoding module 9020 may convert the input signal into bit region data and then deinterleave the bit region data as necessary.
  • the demapping and decoding module 9020 can perform demapping on the mapping applied for transmission efficiency, and correct an error generated in the transmission channel through decoding. In this case, the demapping and decoding module 9020 can obtain transmission parameters necessary for demapping and decoding by decoding the data output from the signaling decoding module 9040.
  • the output processor 9030 may perform a reverse process of various compression / signal processing procedures applied by the broadcast signal transmission apparatus to improve transmission efficiency.
  • the output processor 9030 may obtain necessary control information from the data output from the signaling decoding module 9040.
  • the output of the output processor 8300 corresponds to a signal input to the broadcast signal transmission apparatus and may be MPEG-TS, IP stream (v4 or v6), and GS.
  • the signaling decoding module 9040 may obtain PLS information from the signal demodulated by the synchronization and demodulation module 9000. As described above, the frame parsing module 9010, the demapping and decoding module 9200, and the output processor 9300 may execute the function using data output from the signaling decoding module 9040.
  • FIG. 9 shows a frame structure according to an embodiment of the present invention.
  • FIG. 9 shows a structural example of a frame time and a frame repetition unit (FRU) in a super frame.
  • (a) shows a super frame according to an embodiment of the present invention
  • (b) shows a FRU according to an embodiment of the present invention
  • (c) shows a frame of various physical profile (PHY profile) in the FRU
  • (D) shows the structure of the frame.
  • Super frame may consist of eight FRUs.
  • the FRU is the basic multiplexing unit for the TDM of the frame and is repeated eight times in the super frame.
  • Each frame in the FRU belongs to one of the physical profiles (base, handheld, advanced profile) or FEF.
  • the maximum allowable number of frames in a FRU is 4, and a given physical profile may appear any number of times from 0 to 4 times in the FRU (eg, base, base, handheld, advanced).
  • the physical profile definition may be extended using the reserved value of PHY_PROFILE in the preamble if necessary.
  • the FEF portion is inserted at the end of the FRU if included. If the FEF is included in the FRU, the maximum number of FEFs is 8 in a super frame. It is not recommended that the FEF parts be adjacent to each other.
  • One frame is further separated into multiple OFDM symbols and preambles. As shown in (d), the frame includes a preamble, one or more FSS, normal data symbols, and FES.
  • the preamble is a special symbol that enables fast Futurecast UTB system signal detection and provides a set of basic transmission parameters for efficient transmission and reception of the signal. Details of the preamble will be described later.
  • the main purpose of the FSS is to carry PLS data.
  • the FSS For fast synchronization and channel estimation, and hence for fast decoding of PLS data, the FSS has a higher density pilot pattern than normal data symbols.
  • the FES has a pilot that is exactly the same as the FSS, which allows frequency only interpolation and temporal interpolation within the FES without extrapolation for symbols immediately preceding the FES.
  • FIG. 10 illustrates a signaling hierarchy structure of a frame according to an embodiment of the present invention.
  • PLS 10 shows a signaling hierarchy, which is divided into three main parts: preamble signaling data 11000, PLS1 data 11010, and PLS2 data 11020.
  • the purpose of the preamble carried by the preamble signal every frame is to indicate the basic transmission parameters and transmission type of the frame.
  • PLS1 allows the receiver to access and decode PLS2 data that includes parameters for connecting to the data pipe of interest.
  • PLS2 is delivered every frame and divided into two main parts, PLS2-STAT data and PLS2-DYN data. The static and dynamic parts of the PLS2 data are followed by padding if necessary.
  • FIG 11 illustrates preamble signaling data according to an embodiment of the present invention.
  • the preamble signaling data carries 21 bits of information needed to enable the receiver to access the PLS data and track the data pipes within the frame structure. Details of the preamble signaling data are as follows.
  • PHY_PROFILE This 3-bit field indicates the physical profile type of the current frame. The mapping of different physical profile types is given in Table 5 below.
  • FFT_SIZE This 2-bit field indicates the FFT size of the current frame in the frame group as described in Table 6 below.
  • GI_FRACTION This 3-bit field indicates a guard interval fraction value in the current super frame as described in Table 7 below.
  • EAC_FLAG This 1-bit field indicates whether EAC is provided in the current frame. If this field is set to 1, EAS is provided in the current frame. If this field is set to 0, EAS is not delivered in the current frame. This field may be converted to dynamic within a super frame.
  • PILOT_MODE This 1-bit field indicates whether the pilot mode is a mobile mode or a fixed mode for the current frame in the current frame group. If this field is set to 0, mobile pilot mode is used. If the field is set to '1', fixed pilot mode is used.
  • PAPR_FLAG This 1-bit field indicates whether PAPR reduction is used for the current frame in the current frame group. If this field is set to 1, tone reservation is used for PAPR reduction. If this field is set to 0, no PAPR reduction is used.
  • This 3-bit field indicates the physical profile type configuration of the FRU present in the current super frame. In the corresponding field in all preambles in the current super frame, all profile types carried in the current super frame are identified. The 3-bit field is defined differently for each profile as shown in Table 8 below.
  • PLS1 data provides basic transmission parameters including the parameters needed to enable the reception and decoding of PLS2. As mentioned above, the PLS1 data does not change during the entire duration of one frame group. A detailed definition of the signaling field of the PLS1 data is as follows.
  • PREAMBLE_DATA This 20-bit field is a copy of the preamble signaling data excluding EAC_FLAG.
  • NUM_FRAME_FRU This 2-bit field indicates the number of frames per FRU.
  • PAYLOAD_TYPE This 3-bit field indicates the format of payload data carried in the frame group. PAYLOAD_TYPE is signaled as shown in Table 9.
  • NUM_FSS This 2-bit field indicates the number of FSS in the current frame.
  • SYSTEM_VERSION This 8-bit field indicates the version of the signal format being transmitted. SYSTEM_VERSION is separated into two 4-bit fields: major and minor.
  • the 4-bit MSB in the SYSTEM_VERSION field indicates major version information. Changes in the major version field indicate incompatible changes. The default value is 0000. For the version described in that standard, the value is set to 0000.
  • Minor Version A 4-bit LSB in the SYSTEM_VERSION field indicates minor version information. Changes in the minor version field are compatible.
  • CELL_ID This is a 16-bit field that uniquely identifies a geographic cell in an ATSC network. ATSC cell coverage may consist of one or more frequencies depending on the number of frequencies used per Futurecast UTB system. If the value of CELL_ID is unknown or not specified, this field is set to zero.
  • NETWORK_ID This is a 16-bit field that uniquely identifies the current ATSC network.
  • SYSTEM_ID This 16-bit field uniquely identifies a Futurecast UTB system within an ATSC network.
  • Futurecast UTB systems are terrestrial broadcast systems whose input is one or more input streams (TS, IP, GS) and the output is an RF signal.
  • the Futurecast UTB system conveys the FEF and one or more physical profiles, if present.
  • the same Futurecast UTB system can carry different input streams and use different RFs in different geographic regions, allowing for local service insertion.
  • Frame structure and scheduling are controlled in one place and are the same for all transmissions within a Futurecast UTB system.
  • One or more Futurecast UTB systems may have the same SYSTEM_ID meaning that they all have the same physical structure and configuration.
  • the following loop is composed of FRU_PHY_PROFILE, FRU_FRAME_LENGTH, FRU_GI_FRACTION, and RESERVED indicating the length and FRU configuration of each frame type.
  • the loop size is fixed such that four physical profiles (including FFEs) are signaled within the FRU. If NUM_FRAME_FRU is less than 4, the unused fields are filled with zeros.
  • FRU_PHY_PROFILE This 3-bit field indicates the physical profile type of the (i + 1) th frame (i is a loop index) of the associated FRU. This field uses the same signaling format as shown in Table 8.
  • FRU_FRAME_LENGTH This 2-bit field indicates the length of the (i + 1) th frame of the associated FRU. Using FRU_FRAME_LENGTH with FRU_GI_FRACTION, the exact value of frame duration can be obtained.
  • FRU_GI_FRACTION This 3-bit field indicates the guard interval partial value of the (i + 1) th frame of the associated FRU.
  • FRU_GI_FRACTION is signaled according to Table 7.
  • the following fields provide parameters for decoding PLS2 data.
  • PLS2_FEC_TYPE This 2-bit field indicates the FEC type used by the PLS2 protection.
  • the FEC type is signaled according to Table 10. Details of the LDPC code will be described later.
  • PLS2_MOD This 3-bit field indicates the modulation type used by PLS2.
  • the modulation type is signaled according to Table 11.
  • PLS2_SIZE_CELL This 15-bit field indicates C total _partial_block which is the size (specified by the number of QAM cells) of all coding blocks for PLS2 carried in the current frame group. This value is constant for the entire duration of the current frame-group.
  • PLS2_STAT_SIZE_BIT This 14-bit field indicates the size, in bits, of the PLS2-STAT for the current frame-group. This value is constant for the entire duration of the current frame-group.
  • PLS2_DYN_SIZE_BIT This 14-bit field indicates the size, in bits, of the PLS2-DYN for the current frame-group. This value is constant for the entire duration of the current frame-group.
  • PLS2_REP_FLAG This 1-bit flag indicates whether the PLS2 repeat mode is used in the current frame group. If the value of this field is set to 1, PLS2 repeat mode is activated. If the value of this field is set to 0, PLS2 repeat mode is deactivated.
  • PLS2_REP_SIZE_CELL This 15-bit field indicates C total_partial_block , which is the size (specified by the number of QAM cells) of the partial coding block for PLS2 delivered every frame of the current frame group when PLS2 repetition is used. If iteration is not used, the value of this field is equal to zero. This value is constant for the entire duration of the current frame-group.
  • PLS2_NEXT_FEC_TYPE This 2-bit field indicates the FEC type used for PLS2 delivered in every frame of the next frame-group.
  • the FEC type is signaled according to Table 10.
  • PLS2_NEXT_MOD This 3-bit field indicates the modulation type used for PLS2 delivered in every frame of the next frame-group.
  • the modulation type is signaled according to Table 11.
  • PLS2_NEXT_REP_FLAG This 1-bit flag indicates whether the PLS2 repeat mode is used in the next frame group. If the value of this field is set to 1, PLS2 repeat mode is activated. If the value of this field is set to 0, PLS2 repeat mode is deactivated.
  • PLS2_NEXT_REP_SIZE_CELL This 15-bit field indicates C total_full_block , which is the size (specified in the number of QAM cells) of the entire coding block for PLS2 delivered every frame of the next frame-group when PLS2 repetition is used. If iteration is not used in the next frame-group, the value of this field is equal to zero. This value is constant for the entire duration of the current frame-group.
  • PLS2_NEXT_REP_STAT_SIZE_BIT This 14-bit field indicates the size, in bits, of the PLS2-STAT for the next frame-group. The value is constant in the current frame group.
  • PLS2_NEXT_REP_DYN_SIZE_BIT This 14-bit field indicates the size of the PLS2-DYN for the next frame-group, in bits. The value is constant in the current frame group.
  • PLS2_AP_MODE This 2-bit field indicates whether additional parity is provided for PLS2 in the current frame group. This value is constant for the entire duration of the current frame-group. Table 12 below provides the values for this field. If the value of this field is set to 00, no additional parity is used for PLS2 in the current frame group.
  • PLS2_AP_SIZE_CELL This 15-bit field indicates the size (specified by the number of QAM cells) of additional parity bits of PLS2. This value is constant for the entire duration of the current frame-group.
  • PLS2_NEXT_AP_MODE This 2-bit field indicates whether additional parity is provided for PLS2 signaling for every frame of the next frame-group. This value is constant for the entire duration of the current frame-group. Table 12 defines the values of this field.
  • PLS2_NEXT_AP_SIZE_CELL This 15-bit field indicates the size (specified by the number of QAM cells) of additional parity bits of PLS2 for every frame of the next frame-group. This value is constant for the entire duration of the current frame-group.
  • RESERVED This 32-bit field is reserved for future use.
  • FIG 13 illustrates PLS2 data according to an embodiment of the present invention.
  • PLS2-STAT data of the PLS2 data.
  • PLS2-STAT data is the same within a frame group, while PLS2-DYN data provides specific information about the current frame.
  • FIC_FLAG This 1-bit field indicates whether the FIC is used in the current frame group. If the value of this field is set to 1, the FIC is provided in the current frame. If the value of this field is set to 0, FIC is not delivered in the current frame. This value is constant for the entire duration of the current frame-group.
  • AUX_FLAG This 1-bit field indicates whether the auxiliary stream is used in the current frame group. If the value of this field is set to 1, the auxiliary stream is provided in the current frame. If the value of this field is set to 0, the auxiliary frame is not transmitted in the current frame. This value is constant for the entire duration of the current frame-group.
  • NUM_DP This 6-bit field indicates the number of data pipes carried in the current frame. The value of this field is between 1 and 64, and the number of data pipes is NUM_DP + 1.
  • DP_ID This 6-bit field uniquely identifies within the physical profile.
  • DP_TYPE This 3-bit field indicates the type of data pipe. This is signaled according to Table 13 below.
  • DP_GROUP_ID This 8-bit field identifies the data pipe group with which the current data pipe is associated. This can be used to connect to the data pipe of the service component associated with a particular service that the receiver will have the same DP_GROUP_ID.
  • BASE_DP_ID This 6-bit field indicates a data pipe that carries service signaling data (such as PSI / SI) used in the management layer.
  • the data pipe indicated by BASE_DP_ID may be a normal data pipe for delivering service signaling data together with service data or a dedicated data pipe for delivering only service signaling data.
  • DP_FEC_TYPE This 2-bit field indicates the FEC type used by the associated data pipe.
  • the FEC type is signaled according to Table 14 below.
  • DP_COD This 4-bit field indicates the code rate used by the associated data pipe.
  • the code rate is signaled according to Table 15 below.
  • DP_MOD This 4-bit field indicates the modulation used by the associated data pipe. Modulation is signaled according to Table 16 below.
  • DP_SSD_FLAG This 1-bit field indicates whether the SSD mode is used in the associated data pipe. If the value of this field is set to 1, the SSD is used. If the value of this field is set to 0, the SSD is not used.
  • DP_MIMO This 3-bit field indicates what type of MIMO encoding processing is applied to the associated data pipe.
  • the type of MIMO encoding process is signaled according to Table 17 below.
  • DP_TI_TYPE This 1-bit field indicates the type of time interleaving. A value of 0 indicates that one time interleaving group corresponds to one frame and includes one or more time interleaving blocks. A value of 1 indicates that one time interleaving group is delivered in more than one frame and contains only one time interleaving block.
  • DP_TI_LENGTH The use of this 2-bit field (only allowed values are 1, 2, 4, 8) is determined by the value set in the DP_TI_TYPE field as follows.
  • N TI the number of time interleaving block per time interleaving group
  • This 2-bit field represents the frame interval (I JUMP ) within the frame group for the associated data pipe, and allowed values are 1, 2, 4, 8 (the corresponding 2-bit fields are 00, 01, 10, 11). For data pipes that do not appear in every frame of a frame group, the value of this field is equal to the interval between sequential frames. For example, if a data pipe appears in frames 1, 5, 9, 13, etc., the value of this field is set to 4. For data pipes that appear in every frame, the value of this field is set to 1.
  • DP_TI_BYPASS This 1-bit field determines the availability of time interleaver 5050. If time interleaving is not used for the data pipe, this field value is set to 1. On the other hand, if time interleaving is used, the corresponding field value is set to zero.
  • DP_FIRST_FRAME_IDX This 5-bit field indicates the index of the first frame of the super frame in which the current data pipe occurs.
  • the value of DP_FIRST_FRAME_IDX is between 0 and 31.
  • DP_NUM_BLOCK_MAX This 10-bit field indicates the maximum value of DP_NUM_BLOCKS for the data pipe. The value of this field has the same range as DP_NUM_BLOCKS.
  • DP_PAYLOAD_TYPE This 2-bit field indicates the type of payload data carried by a given data pipe. DP_PAYLOAD_TYPE is signaled according to Table 19 below.
  • DP_INBAND_MODE This 2-bit field indicates whether the current data pipe carries in-band signaling information. In-band signaling type is signaled according to Table 20 below.
  • DP_PROTOCOL_TYPE This 2-bit field indicates the protocol type of the payload carried by the given data pipe.
  • the protocol type of payload is signaled according to Table 21 below when the input payload type is selected.
  • DP_CRC_MODE This 2-bit field indicates whether CRC encoding is used in the input format block. CRC mode is signaled according to Table 22 below.
  • DNP_MODE This 2-bit field indicates the null packet deletion mode used by the associated data pipe when DP_PAYLOAD_TYPE is set to TS ('00'). DNP_MODE is signaled according to Table 23 below. If DP_PAYLOAD_TYPE is not TS ('00'), DNP_MODE is set to a value of 00.
  • ISSY_MODE This 2-bit field indicates the ISSY mode used by the associated data pipe when DP_PAYLOAD_TYPE is set to TS ('00'). ISSY_MODE is signaled according to Table 24 below. If DP_PAYLOAD_TYPE is not TS ('00'), ISSY_MODE is set to a value of 00.
  • HC_MODE_TS This 2-bit field indicates the TS header compression mode used by the associated data pipe when DP_PAYLOAD_TYPE is set to TS ('00'). HC_MODE_TS is signaled according to Table 25 below.
  • HC_MODE_IP This 2-bit field indicates the IP header compression mode when DP_PAYLOAD_TYPE is set to IP ('01'). HC_MODE_IP is signaled according to Table 26 below.
  • PID This 13-bit field indicates the number of PIDs for TS header compression when DP_PAYLOAD_TYPE is set to TS ('00') and HC_MODE_TS is set to 01 or 10.
  • FIC_VERSION This 8-bit field indicates the version number of the FIC.
  • FIC_LENGTH_BYTE This 13-bit field indicates the length of the FIC in bytes.
  • NUM_AUX This 4-bit field indicates the number of auxiliary streams. Zero indicates that no auxiliary stream is used.
  • AUX_CONFIG_RFU This 8-bit field is reserved for future use.
  • AUX_STREAM_TYPE This 4 bits is reserved for future use to indicate the type of the current auxiliary stream.
  • AUX_PRIVATE_CONFIG This 28-bit field is reserved for future use for signaling the secondary stream.
  • FIG 14 illustrates PLS2 data according to another embodiment of the present invention.
  • the value of the PLS2-DYN data may change during the duration of one frame group, while the size of the field is constant.
  • FRAME_INDEX This 5-bit field indicates the frame index of the current frame within the super frame. The index of the first frame of the super frame is set to zero.
  • PLS_CHANGE_COUNTER This 4-bit field indicates the number of super frames before the configuration changes. The next super frame whose configuration changes is indicated by the value signaled in that field. If the value of this field is set to 0000, this means that no scheduled change is expected. For example, a value of 1 indicates that there is a change in the next super frame.
  • FIC_CHANGE_COUNTER This 4-bit field indicates the number of super frames before the configuration (i.e., the content of the FIC) changes. The next super frame whose configuration changes is indicated by the value signaled in that field. If the value of this field is set to 0000, this means that no scheduled change is expected. For example, a value of 0001 indicates that there is a change in the next super frame.
  • NUM_DP NUM_DP that describes the parameters related to the data pipe carried in the current frame.
  • DP_ID This 6-bit field uniquely represents a data pipe within the physical profile.
  • DP_START This 15-bit (or 13-bit) field indicates the first starting position of the data pipe using the DPU addressing technique.
  • the DP_START field has a length different according to the physical profile and the FFT size as shown in Table 27 below.
  • DP_NUM_BLOCK This 10-bit field indicates the number of FEC blocks in the current time interleaving group for the current data pipe.
  • the value of DP_NUM_BLOCK is between 0 and 1023.
  • the next field indicates the FIC parameter associated with the EAC.
  • EAC_FLAG This 1-bit field indicates the presence of an EAC in the current frame. This bit is equal to EAC_FLAG in the preamble.
  • EAS_WAKE_UP_VERSION_NUM This 8-bit field indicates the version number of the automatic activation indication.
  • EAC_FLAG field If the EAC_FLAG field is equal to 1, the next 12 bits are allocated to the EAC_LENGTH_BYTE field. If the EAC_FLAG field is equal to 0, the next 12 bits are allocated to EAC_COUNTER.
  • EAC_LENGTH_BYTE This 12-bit field indicates the length of the EAC in bytes.
  • EAC_COUNTER This 12-bit field indicates the number of frames before the frame in which the EAC arrives.
  • AUX_PRIVATE_DYN This 48-bit field is reserved for future use for signaling the secondary stream. The meaning of this field depends on the value of AUX_STREAM_TYPE in configurable PLS2-STAT.
  • CRC_32 32-bit error detection code that applies to the entire PLS2.
  • FIG. 15 illustrates a logical structure of a frame according to an embodiment of the present invention.
  • the PLS, EAC, FIC, data pipe, auxiliary stream, and dummy cell are mapped to the active carrier of the OFDM symbol in the frame.
  • PLS1 and PLS2 are initially mapped to one or more FSS. Then, if there is an EAC, the EAC cell is mapped to the immediately following PLS field. If there is an FIC next, the FIC cell is mapped.
  • the data pipes are mapped after the PLS or, if present, after the EAC or FIC. Type 1 data pipes are mapped first, and type 2 data pipes are mapped next. Details of the type of data pipe will be described later. In some cases, the data pipe may carry some special data or service signaling data for the EAS.
  • auxiliary stream or stream if present, is mapped to the data pipe next, followed by a dummy cell in turn. Mapping all together in the order described above, namely PLS, EAC, FIC, data pipe, auxiliary stream, and dummy cell, will correctly fill the cell capacity in the frame.
  • FIG 16 illustrates PLS mapping according to an embodiment of the present invention.
  • the PLS cell is mapped to an active carrier of the FSS. According to the number of cells occupied by the PLS, one or more symbols are designated as FSS, and the number N FSS of the FSS is signaled by NUM_FSS in PLS1.
  • FSS is a special symbol that carries a PLS cell. Since alertness and latency are critical issues in PLS, the FSS has a high pilot density, enabling fast synchronization and interpolation only on frequencies within the FSS.
  • the PLS cell is mapped to an active carrier of the FSS from the top down as shown in the example of FIG.
  • PLS1 cells are initially mapped in ascending order of cell index from the first cell of the first FSS.
  • the PLS2 cell follows immediately after the last cell of PLS1 and the mapping continues downward until the last cell index of the first FSS. If the total number of required PLS cells exceeds the number of active carriers of one FSS, the mapping proceeds to the next FSS and continues in exactly the same way as the first FSS.
  • EAC, FIC or both are present in the current frame, EAC and FIC are placed between the PLS and the normal data pipe.
  • FIG 17 illustrates EAC mapping according to an embodiment of the present invention.
  • the EAC is a dedicated channel for delivering EAS messages and is connected to the data pipes for the EAS. EAS support is provided, but the EAC itself may or may not be present in every frame. If there is an EAC, the EAC is mapped immediately after the PLS2 cell. Except for PLS cells, none of the FIC, data pipes, auxiliary streams or dummy cells are located before the EAC. The mapping procedure of the EAC cell is exactly the same as that of the PLS.
  • EAC cells are mapped in ascending order of cell index from the next cell of PLS2 as shown in the example of FIG. Depending on the EAS message size, as shown in FIG. 17, the EAC cell may occupy few symbols.
  • the EAC cell follows immediately after the last cell of PLS2 and the mapping continues downward until the last cell index of the last FSS. If the total number of required EAC cells exceeds the number of remaining active carriers of the last FSS, the EAC mapping proceeds to the next symbol and continues in exactly the same way as the FSS. In this case, the next symbol to which the EAC is mapped is a normal data symbol, which has more active carriers than the FSS.
  • the FIC is passed next if present. If no FIC is sent (as signaling in the PLS2 field), the data pipe follows immediately after the last cell of the EAC.
  • FIC is a dedicated channel that carries cross-layer information to enable fast service acquisition and channel scan.
  • the information mainly includes channel binding information between data pipes and services of each broadcaster.
  • the receiver can decode the FIC and obtain information such as broadcaster ID, number of services, and BASE_DP_ID.
  • BASE_DP_ID For high-speed service acquisition, not only the FIC but also the base data pipe can be decoded using BASE_DP_ID. Except for the content that the base data pipe transmits, the base data pipe is encoded and mapped to the frame in exactly the same way as a normal data pipe. Thus, no further explanation of the base data pipe is needed.
  • FIC data is generated and consumed at the management layer. The content of the FIC data is as described in the management layer specification.
  • FIC data is optional and the use of FIC is signaled by the FIC_FLAG parameter in the static part of the PLS2. If FIC is used, FIC_FLAG is set to 1 and the signaling field for FIC is defined in the static part of PLS2. Signaled in this field is FIC_VERSION, FIC_LENGTH_BYTE. FIC uses the same modulation, coding, and time interleaving parameters as PLS2. The FIC shares the same signaling parameters as PLS2_MOD and PLS2_FEC. FIC data is mapped after PLS2 if present, or immediately after EAC if EAC is present. None of the normal data pipes, auxiliary streams, or dummy cells are located before the FIC. The method of mapping the FIC cells is exactly the same as the EAC, which in turn is identical to the PLS.
  • the FIC cells are mapped in ascending order of cell index from the next cell of PLS2 as shown in the example of (a).
  • FIC cells are mapped for several symbols.
  • the FIC cell follows immediately after the last cell of PLS2 and the mapping continues downward until the last cell index of the last FSS. If the total number of required FIC cells exceeds the number of remaining active carriers of the last FSS, the mapping of the remaining FIC cells proceeds to the next symbol, which continues in exactly the same way as the FSS. In this case, the next symbol to which the FIC is mapped is a normal data symbol, which has more active carriers than the FSS.
  • the EAC is mapped before the FIC and the FIC cells are mapped in ascending order of cell index from the next cell of the EAC as shown in (b).
  • one or more data pipes are mapped, followed by auxiliary streams and dummy cells if present.
  • FIG 19 shows an FEC structure according to an embodiment of the present invention.
  • the data FEC encoder may perform FEC encoding on the input BBF to generate the FECBLOCK procedure using outer coding (BCH) and inner coding (LDPC).
  • BCH outer coding
  • LDPC inner coding
  • the illustrated FEC structure corresponds to FECBLOCK.
  • the FECBLOCK and FEC structures have the same value corresponding to the length of the LDPC codeword.
  • N ldpc 64800 bits (long FECBLOCK) or 16200 bits (short FECBLOCK).
  • Tables 28 and 29 below show the FEC encoding parameters for the long FECBLOCK and the short FECBLOCK, respectively.
  • a 12-error correcting BCH code is used for the outer encoding of the BBF.
  • the BBF-generated polynomials for short FECBLOCK and long FECBLOCK are obtained by multiplying all polynomials.
  • LDPC codes are used to encode the output of the outer BCH encoding.
  • ldpc P parity bits
  • I ldpc - is systematically encoded from the (BCH encoded BBF), it is attached to the I ldpc.
  • the finished B ldpc (FECBLOCK) is expressed by the following equation.
  • N ldpc for long FECBLOCK - specific procedures for calculating the K ldpc parity bits is as follows.
  • x represents the address of the parity bit accumulator corresponding to the first bit i 0
  • Q ldpc is a code rate dependent constant specified in the address of the parity check matrix.
  • Equation 6 x represents the address of the parity bit accumulator corresponding to information bit i 360 , that is, the entry of the second row of the parity check matrix.
  • the final parity bits are obtained as follows.
  • the corresponding LDPC encoding procedure for short FECBLOCK is t LDPC for long FECBLOCK.
  • the time interleaver operates at the data pipe level.
  • the parameters of time interleaving can be set differently for each data pipe.
  • DP_TI_TYPE (allowed values: 0 or 1): Represents the time interleaving mode.
  • 0 indicates a mode with multiple time interleaving blocks (one or more time interleaving blocks) per time interleaving group. In this case, one time interleaving group is directly mapped to one frame (without interframe interleaving).
  • 1 indicates a mode having only one time interleaving block per time interleaving group. In this case, the time interleaving block is spread over one or more frames (interframe interleaving).
  • DP_NUM_BLOCK_MAX (allowed values: 0 to 1023): Represents the maximum number of XFECBLOCKs per time interleaving group.
  • DP_FRAME_INTERVAL (allowed values: 1, 2, 4, 8): Represents the number of frames I JUMP between two sequential frames carrying the same data pipe of a given physical profile.
  • DP_TI_BYPASS (allowed values: 0 or 1): If time interleaving is not used for the data frame, this parameter is set to one. If time interleaving is used, it is set to zero.
  • the parameter DP_NUM_BLOCK from the PLS2-DYN data indicates the number of XFECBLOCKs carried by one time interleaving group of the data group.
  • each time interleaving group is a set of integer number of XFECBLOCKs, and will contain a dynamically varying number of XFECBLOCKs.
  • N xBLOCK_Group (n) The number of XFECBLOCKs in the time interleaving group at index n is represented by N xBLOCK_Group (n) and signaled as DP_NUM_BLOCK in the PLS2-DYN data.
  • N xBLOCK_Group (n) may vary from the minimum value 0 to the maximum value N xBLOCK_Group_MAX (corresponding to DP_NUM_BLOCK_MAX ) having the largest value 1023.
  • Each time interleaving group is either mapped directly to one frame or spread over P I frames.
  • Each time interleaving group is further divided into one or more (N TI ) time interleaving blocks.
  • each time interleaving block corresponds to one use of the time interleaver memory.
  • the time interleaving block in the time interleaving group may include some other number of XFECBLOCKs. If the time interleaving group is divided into multiple time interleaving blocks, the time interleaving group is directly mapped to only one frame. As shown in Table 32 below, there are three options for time interleaving (except for the additional option of omitting time interleaving).
  • the time interleaver will also act as a buffer for the data pipe data before the frame generation process. This is accomplished with two memory banks for each data pipe.
  • the first time interleaving block is written to the first bank.
  • the second time interleaving block is written to the second bank while reading from the first bank.
  • Time interleaving is a twisted row-column block interleaver.
  • the number of columns N c is equal to N xBLOCK_TI (n, s)
  • 21 illustrates the basic operation of a twisted row-column block interleaver according to an embodiment of the present invention.
  • Fig. 21A shows a write operation in the time interleaver
  • Fig. 21B shows a read operation in the time interleaver.
  • the first XFECBLOCK is written in the column direction to the first column of the time interleaving memory
  • the second XFECBLOCK is written to the next column, followed by this operation.
  • the cells are read diagonally.
  • Cells are read. Specifically, Assuming that this is a time interleaving memory cell position to be read sequentially, the read operation in this interleaving array is a row index as in the equation below. Column index Related twist parameters Is executed by calculating.
  • the cell position to be read is coordinate Calculated by
  • FIG. 22 illustrates an operation of a twisted row-column block interleaver according to another embodiment of the present invention.
  • FIG. 22 Denotes an interleaving array in the time interleaving memory for each time interleaving group including the virtual XFECBLOCK.
  • the interleaving array for twisted row-column block interleaver inserts a virtual XFECBLOCK into the time interleaving memory. It is set to the size of, and the reading process is made as follows.
  • the number of time interleaving groups is set to three.
  • the maximum number of XFECBLOCKs is signaled in PLS2-STAT data by NxBLOCK_Group_MAX, which Leads to.
  • Figure 23 illustrates a diagonal read pattern of a twisted row-column block interleaver according to one embodiment of the present invention.
  • FIG. 25 illustrates signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • the frequency interleaver according to the present invention performs interleaving using different interleaving sequences for each OFDM symbol, but the frequency deinterleaver may perform single memory deinterleaving on the received OFDM symbol.
  • the present invention proposes a method in which a frequency deinterleaver can perform single memory deinterleaving regardless of whether the number of OFDM symbols in a frame is even or odd.
  • the above-described structure of the frequency interleaver may operate differently depending on whether the number of OFDM symbols is even or odd.
  • signaling information related thereto may be further defined in the aforementioned preamble and / or PLS (Physical Layer Signaling).
  • PLS Physical Layer Signaling
  • the PLS may be included in the frame starting symbol (FSS) of each frame and transmitted.
  • the PLS may be included in the first OFDM symbol and transmitted.
  • signaling corresponding to the PLS may be included in the preamble and transmitted.
  • signaling information corresponding to the preamble and / or the PLS may be included in the bootstrap information and transmitted.
  • the bootstrap information may be an information part located in front of the preamble.
  • FI_mode field As information on a processing operation used in the frequency interleaver of the transmitter, there may be a FI_mode field and an N_sym field.
  • the FI_mode field may be a 1-bit field that may be located in the preamble.
  • the FI_mode field may indicate an interleaving scheme used for the frame starting symbol (FSS) or the first OFDM symbol of each frame.
  • Interleaving schemes indicated by the FI_mode field may include FI scheme # 1 and FI scheme # 2.
  • FI scheme # 1 may refer to a case in which the frequency interleaver performs a linear reading operation on the FSS after performing a random writing operation on the FSS. This case may correspond to a case where the FI_mode field value is 0.
  • random write and linear read operations may be performed in the memory.
  • the linear read may mean an operation of sequentially reading.
  • FI scheme # 2 may mean a case in which the frequency interleaver performs a random reading operation after performing a linear writing operation on the FSS at the transmitting side. This case may correspond to a case where the FI_mode field value is 1. Similarly, linear write and random read operations can be performed in a memory using values generated by an arbitrary random sequence generator using PRBS. In this case, the linear writing may mean performing a writing operation sequentially.
  • the FI_mode field may indicate an interleaving scheme used for the frame edge symbol (FES) or the last OFDM symbol of each frame.
  • the interleaving scheme applied to the FES may be indicated differently according to the value of the N_sym field transmitted by the PLS. That is, the interleaving scheme indicated by the FI_mode field may vary depending on whether the number of OFDM symbols is odd or even.
  • the relationship between the two fields may be previously defined as a table on the transmitting and receiving side.
  • the FI_mode field may be defined and transmitted in another part of the frame in addition to the preamble.
  • the N_sym field may be a field that may be located in the PLS part.
  • the number of bits of the N_sym field may vary according to an embodiment.
  • the N_sym field may indicate the number of OFDM symbols included in one frame. Accordingly, the receiving side can determine whether the number of OFDM symbols is even or odd.
  • the operation of the frequency deinterleaver corresponding to the frequency interleaver irrespective of the number of OFDM symbols in one frame described above is as follows.
  • the frequency deinterleaver may perform single memory deinterleaving using the proposed signaling fields regardless of whether the number of OFDM symbols is even or odd.
  • the frequency deinterleaver may perform frequency deinterleaving on the FSS using information of the FI_mode field of the preamble. This is because the frequency interleaving scheme utilized for the FSS is indicated by FI_mode.
  • the frequency deinterleaver may perform frequency deinterleaving on the FES using signaling information of the FI_mode field and signaling information of the N_sym field of the PLS. At this time, the relationship between the two fields may be grasped using a predefined table.
  • the predefined table will be described later.
  • the overall deinterleaving process of the other symbols may be performed in the reverse order of the interleaving process of the transmitter. That is, the frequency deinterleaver may perform deinterleaving by using one interleaving sequence with respect to a pair of input OFDM symbols.
  • one interleaving sequence may be an interleaving sequence used by the corresponding frequency interleaver for reading and writing.
  • the frequency deinterleaver may perform the read & write process in reverse order using the interleaving sequence.
  • the frequency deinterleaver according to the present invention may not use a ping pong structure using a double memory.
  • the frequency deinterleaver may perform deinterleaving using a single memory for successive input OFDM symbols. This can increase the memory usage efficiency of the frequency deinterleaver.
  • FIG. 26 is a diagram illustrating FI schemes for FSS in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • An interleaving scheme applied in the frequency interleaving process may be determined using the aforementioned FI_mode field and the N_sym field.
  • FI scheme # 1 may be performed on the FSS regardless of the FI_mode field value.
  • FI scheme # 1 When the number of OFDM symbols indicated by the N_sym field is odd, if the FI_mode field has a value of 0, FI scheme # 1 is applied to the FSS, and if it has a value of 1, FI scheme # 2 may be applied to the FSS. That is, when the number of OFDM symbols is odd, FI schemes # 1 and # 2 may be alternately applied to the FSS in frequency interleaving.
  • FIG. 27 illustrates an operation of a reset mode for FES in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • the aforementioned symbol offset generator may introduce a new concept called a reset mode.
  • the reset mode may mean a mode in which a symbol offset value generated by the symbol offset generator is '0'.
  • the reset mode of the symbol offset generator may not be operated regardless of the value of the FI_mode field.
  • the symbol offset generator may operate according to the reset mode (on).
  • the reset mode of the symbol offset generator may not operate. That is, when the number of OFDM symbols is an odd number, the reset mode may be alternately turned on / off in frequency interleaving.
  • FIG. 28 is a diagram for mathematically representing an input and an output of a frequency interleaver in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • interleaving may utilize a variety of other interleaving seeds generated by one main interleaving seed being cyclic-shifted.
  • the interleaving seed may be referred to as an interleaving sequence.
  • the interleaving seed may be referred to as an interleaving address value, an address value, or an interleaving address.
  • the term interleaving address value may be used to indicate a plurality of objects in the meaning of a set of a plurality of address values, or may be used to indicate a singular object in the meaning of an interleaving seed. That is, according to the embodiment, the interleaving address value may mean each address value of H (p) or may mean H (p) itself.
  • An input of frequency interleaving to be interleaved in one OFDM symbol may be denoted by O m, l (t50010).
  • each of the data cells may be represented by x m, l, 0 ,... X m, l, Ndata-1 .
  • p may mean a cell index
  • l may mean an OFDM symbol index
  • m may mean an index of a frame. That is, x m, l, p may refer to the p th data cell of the m th frame, the l th OFDM symbol.
  • N data may mean the number of data cells.
  • N sym may mean the number of symbols (frame signaling symbol, normal data symbol, frame edge symbol).
  • Data cells after interleaving by the above operation may be denoted by P m, l (t50020).
  • Each interleaved data cell may be denoted by v m, l, 0 ,... V m, l, Ndata-1 .
  • p, l, m may have the same index value as described above.
  • 29 is a view illustrating equations of a logical operation mechanism of frequency interleaving according to FI scheme # 1 and FI scheme # 2 in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention. Indicates.
  • frequency interleaving may be performed using an interleaving sequence (interleaving address) of each memory bank.
  • frequency interleaving may be performed using an interleaving sequence (interleaving address) to obtain an output v.
  • the p th input data x may be mixed in order to be equal to the H (p) th output data v.
  • a random write process may be performed first using an interleaving sequence, and then a linear read process may be sequentially read again.
  • the interleaving sequence (interleaving address) may be a value generated by an arbitrary random sequence generator using PRBS.
  • frequency interleaving may be performed using an interleaving sequence (interleaving address) to obtain an output v.
  • the H (p) th input data x may be mixed in order to be equal to the pth output data v. That is, when compared to the interleaving process for even-numbered symbols, the interleaving sequence (interleaving address) may be applied inversely (inversely, inverse).
  • a linear write operation of writing data to a memory in order may be performed first, and then a random read process may be performed to read randomly using an interleaving sequence.
  • the interleaving sequence (interleaving address) may be a value generated by any random sequence generator using PRBS or the like.
  • a random read operation may be performed after the linear write operation with respect to the even number symbol according to the illustrated equation (t51020).
  • a linear read operation may be performed after the random write operation according to the equation (t51010). Details are the same as described in FI Scheme # 1.
  • the symbol index l may be represented by 0, 1, ..., Nsym-1, and the cell index p by 0, 1, ..., Ndata-1.
  • frequency interleaving schemes for even-numbered symbols and odd-numbered symbols may be reversed.
  • frequency interleaving schemes according to FI scheme # 1 and FI scheme # 2 may be reversed.
  • FIG. 30 is a diagram illustrating an embodiment in which the number of symbols is even in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • the N_sym field may indicate that the number of OFDM is even in one frame. In this embodiment, it is assumed that one frame has one preamble and eight OFDM symbols.
  • the bootstrap information may be further included in front of the preamble. Bootstrap information is not shown.
  • one frame may include one FSS and FES, respectively. It is assumed here that the lengths of the FSS and the FES are the same.
  • the frequency deinterleaver may check this after FSS decoding.
  • decoding for the N_sym field is completed before the operation for FES is performed.
  • the value of the symbol offset generator can be reset to zero.
  • each first and second symbol can be processed by the same interleaving sequence.
  • the sequence # 0 may be used for operation again at the beginning of each frame.
  • the sequence # 1 and # 2 may be used to operate the frequency interleaver / deinterleaver.
  • 31 is a diagram illustrating an embodiment in which the number of symbols is even in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • the FSS In the first frame, information on how the FSS is interleaved can be obtained from the FI_mode field of the preamble. In this embodiment, since the OFDM symbols are even, only FI scheme # 1 may be used.
  • the FSS may be decoded to obtain N_sym information. It can be seen from the N_sym information that the number of symbols in the frame is even. Thereafter, when the frequency deinterleaver decodes the FES, decoding may be performed using the obtained FI_mode information and N_sym information. Since the number of symbols is an even number, the symbol offset generator does not operate according to the above-described reset mode. That is, the reset mode may be in an off state.
  • the frequency deinterleaver may operate in the same manner. That is, the FI scheme to be used in the FSS is FI scheme # 1, and the reset mode to be used in the FES may be in an off state.
  • 32 is a diagram illustrating an embodiment in which the number of symbols is odd in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • the N_sym field may indicate that the number of OFDM is odd in one frame. In this embodiment, it is assumed that one frame has one preamble and seven OFDM symbols.
  • the bootstrap information may be further included in front of the preamble. Bootstrap information is not shown.
  • one frame may include one FSS and FES, respectively. It is assumed here that the lengths of the FSS and the FES are the same.
  • the frequency deinterleaver since the information of the N_sym field is included in the PLS part and transmitted, the frequency deinterleaver may check this after FSS decoding. In addition, in the present embodiment, it is assumed that decoding for the N_sym field is completed before the operation for FES is performed.
  • the value of the symbol offset generator can be reset to zero.
  • the symbol offset generator may operate according to the reset mode according to the values of the FI_mode field and the N_sym field.
  • the value of the symbol offset generator may or may not be reset to zero. This reset process may be performed alternately every frame.
  • a reset of the symbol offset generator may occur at the last symbol of the first frame shown, FES.
  • the interleaving sequence can be reset to the # 0 sequence.
  • the frequency interleaver / deinterleaver may process the corresponding FES according to the sequence # 0 (t54010).
  • the symbol offset generator is reset again so that the # 0 sequence may be used (t54010).
  • a reset may not occur in the FES of the second frame (frame # 1), but again, a reset may occur in the FES of the third frame (frame # 2).
  • 33 is a diagram illustrating an embodiment in which the number of symbols is odd in signaling for single memory deinterleaving not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • FI scheme # 1 In the first frame, information on how the FSS is interleaved can be obtained from the FI_mode field of the preamble. Since the number of OFDM symbols is odd, FI scheme # 1 and FI scheme # 2 may be used. In the first frame of this embodiment, FI scheme # 1 is used.
  • the FSS may be decoded to obtain N_sym information. It can be seen from the N_sym information that the number of symbols in the frame is odd. Thereafter, when the frequency deinterleaver decodes the FES, decoding may be performed using the obtained FI_mode information and N_sym information. Since the number of symbols is an odd number and the FI scheme # 1 is used, the FI_mode field value is 0. Since FI_mode is 0, the symbol offset generator may operate according to the above-described reset mode. That is, the reset mode may be in an on state.
  • the symbol offset generator can be reset to zero. Since the value of the FI_mode field is 1 in the second frame, it can be seen that the FSS has been processed by the FI scheme # 2. Again, it can be seen that the number of symbols is odd through the N_sym field. In the case of the second frame, since the FI_mode field value is 1 and the number of symbols is odd, the symbol offset generator may not operate according to the reset mode.
  • the FI scheme to be used in the FSS can be set alternately between the FI schemes # 1 and # 2.
  • the reset mode to be used in the FES can be set alternately on and off. In some embodiments, the setting may not change every frame.
  • FIG. 34 illustrates operation of a frequency deinterleaver in signaling for single memory deinterleaving that is not affected by the number of symbols in a frame according to an embodiment of the present invention.
  • the frequency deinterleaver may perform frequency deinterleaving using information of the FI_mode field and / or the N_sym field defined above. As described above, the frequency deinterleaver may operate using a single memory. Basically, frequency deinterleaving may be a process of performing an inverse process of the frequency interleaving process performed by the transmitter so that the original data may be restored.
  • the frequency deinterleaving for the FSS may be operated based on the information about the FI scheme obtained by using the FI_mode field and the N_sym field of the preamble.
  • Frequency deinterleaving for FES may be operated based on whether the reset mode is operated through the FI_mode field and the N_sym field.
  • the frequency deinterleaver may perform a reverse process of the read / write operation of the frequency interleaver with respect to the pair of OFDM symbols input. In this process, one interleaving sequence may be used.
  • the frequency interleaver follows a ping-pong structure using a double memory, but the frequency deinterleaver may perform deinterleaving with a single memory.
  • This single memory frequency deinterleaving may be performed using information of the FI_mode field and the N_sym field. With this information, single memory frequency deinterleaving may be possible even for a frame having an odd number of OFDM symbols without being affected by the number of OFDM symbols.
  • the frequency interleaver according to the present invention can perform frequency interleaving on all data cells of an OFDM symbol.
  • the frequency interleaver may perform an operation of mapping data cells to an available data carrier of each symbol.
  • the frequency interleaver according to the present invention may operate in different interleaving modes according to the FFT size. For example, if the FFT size is 32K, the frequency interleaver performs random write / linear read operation on the even symbol and linear write / random read operation on the odd symbol as in the FI scheme # 1 described above. can do. In addition, when the FFT size is 16K or 8K, the frequency interleaver may perform a linear read / random write operation on all symbols regardless of even / odd.
  • the FFT size for determining the interleaving mode switching may be changed according to an embodiment. That is, in the case of 32K and 16K, the operation may be performed as in FI scheme # 1, and in the case of 8K, an even / odd independent operation may be performed. In addition, it may operate like FI scheme # 1 for all FFT sizes, and may perform an even / odd independent operation for all FFT sizes. In addition, according to an embodiment, the specific FFT size may operate as FI scheme # 2.
  • Such frequency interleaving may be performed using the above-described interleaving sequence (interleaving address).
  • the interleaving sequence may be variously generated using the offset value as described above.
  • an address check may be performed to generate various interleaving sequences.
  • 35 is a conceptual diagram illustrating a variable data-rate system according to another embodiment of the present invention.
  • one transmission super frame shown in this figure is composed of NTI_NUM TI groups, and each TI group may include N BLOCK_TI FEC blocks.
  • the number of FEC blocks included in each TI group may be different.
  • the TI group according to an embodiment of the present invention may be defined as a block for performing time interleaving and may be used in the same meaning as the above-described TI block or IF.
  • interleaving the TI groups using one twisted row-column block interleaving rule is performed. For example. This allows the receiver to perform deinterleaving using a single memory.
  • VBR variable bit-rate
  • Equation shown in the figure represents block interleaving applied to each TI group unit.
  • the shift value may be calculated when the number of FEC blocks included in the TI group is odd and even. That is, in the block interleaving according to an embodiment of the present invention, the number of FEC blocks is made odd and the shift value can be calculated.
  • the time interleaver may determine parameters related to interleaving based on a TI group having the largest number of FEC blocks in a super frame. This allows the receiver to perform deinterleaving using a single memory. In this case, virtual FEC blocks corresponding to the number of insufficient FEC blocks may be added to the TI group having fewer FEC blocks than the number of FEC blocks of the TI group including the most determined FEC blocks.
  • Virtual FEC blocks according to an embodiment of the present invention may be inserted before actual FEC blocks. Subsequently, the time interleaver according to an embodiment of the present invention performs interleaving for TI groups using one twisted row-column block interleaving rule in consideration of virtual FEC blocks. Can be done. In addition, the time interleaver according to an embodiment of the present invention may perform the skip operation described above when a memory-index corresponding to virtual FEC blocks occurs in a reading operation. After writing, the number of FEC blocks of the input TI group and the number of FEC blocks of the output TI group match when reading.
  • the left side of the figure shows a parameter and a number of virtual FEC blocks indicating the difference between the number of maximum FEC blocks and the number of actual FEC blocks included in the TI group and the number of maximum FEC blocks and the number of actual FEC blocks.
  • the equation is shown.
  • the right side of the figure shows an embodiment in which virtual FEC blocks are inserted into a TI group.
  • virtual FEC blocks may be inserted before the actual FEC block.
  • FIG. 39 is a equation illustrating a reading operation after virtual FEC blocks are inserted according to an embodiment of the present invention.
  • the skip operation shown in the figure may play a role of skipping virtual FEC blocks in a reading operation.
  • 40 is a flowchart illustrating a process of time interleaving according to an embodiment of the present invention.
  • the time interleaver according to an embodiment of the present invention may set an initial value (S67000).
  • the time interleaver may write actual FEC blocks in consideration of virtual FEC blocks (S67100).
  • the time interleaver may generate a temporal TI address (S67200).
  • the time interleaver according to an embodiment of the present invention may evaluate the availability of the generated TI reading address (S67300). Thereafter, the time interleaver according to the embodiment of the present invention may generate a final TI reading address (S67400).
  • time interleaver may read actual FEC blocks (S67500).
  • FIG. 41 is an equation illustrating a process of determining a shift value and a size of a maximum TI block according to an embodiment of the present invention.
  • the figure shows an embodiment in which there are two TI groups, the number of cells in the TI group is 30, the number of FEC blocks included in the first TI group is 5, and the number of FEC blocks included in the second TI block is 6. Indicates.
  • the number of maximum FEC blocks is 6, but is even, so that the number of adjusted maximum FEC blocks for obtaining the shift value can be 7, and the shift value can be calculated as four.
  • 42 to 44 are diagrams illustrating the TI process of the above-described embodiment in the previous figure.
  • This figure shows the writing operations for the two TI groups described in the previous figures.
  • the block shown on the left side of the figure represents a TI memory address array, and the block shown on the right side of the figure shows two and one virtual FEC blocks, respectively, for two consecutive TI groups. Represents a writing operation when a dog is inserted. Since the number of adjusted maximum FEC blocks is 7 as described above, two virtual FEC blocks are inserted into the first TI group, and one virtual FEC block is inserted into the second TI group.
  • the block shown on the left side of the figure represents a TI memory address array, and the block shown on the right side of the figure shows two and one virtual FEC blocks, respectively, for two consecutive TI groups.
  • 44 is a view illustrating a result of a skip operation performed in a reading operation according to an embodiment of the present invention.
  • virtual FEC blocks may be skipped in two TI groups.
  • FIG. 47 shows time deinterleaving for the first TI group
  • FIG. 48 shows time deinterleaving for the second TI group.
  • 45 illustrates a writing process of time deinterleaving according to an embodiment of the present invention.
  • the block shown on the left side of the figure represents a TI memory address array
  • the block shown in the middle of the figure represents the first TI group input to the time deinterleaver
  • the block shown on the right side of the figure represents the first consecutive A writing process performed taking into account virtual FEC blocks skipped for a TI group is shown.
  • two virtual FEC blocks that are skipped in the TI process may be restored in the writing process for accurate reading operation.
  • the location and amount of the two virtual FEC blocks that were skipped can be estimated through any algorithm.
  • the block shown on the left side of the figure represents a TI memory address array
  • the block shown in the middle of the figure represents the second TI group input to the time deinterleaver
  • the block shown on the right side of the figure represents the second consecutive.
  • a writing process performed taking into account virtual FEC blocks skipped for a TI group is shown.
  • one virtual FEC blocks skipped in the TI process may be restored in the writing process for accurate reading operation.
  • the location and amount of one virtual FEC blocks that were skipped can be estimated through any algorithm.
  • FIG. 47 is a equation illustrating reading operation of time deinterleaving according to another embodiment of the present invention.
  • the TDI shift value used in the receiver may be determined by the shift value used in the transmitter, and the skip operation plays a role of skipping virtual FEC blocks in a reading operation similar to the transmitter. Can be.
  • 48 is a flowchart illustrating a process of time deinterleaving according to an embodiment of the present invention.
  • the time deinterleaver according to an embodiment of the present invention may set an initial value (S75000).
  • the time interleaver may write actual FEC blocks in consideration of virtual FEC blocks (S75100).
  • the time interleaver may generate a temporal TDI address (S75200).
  • the time interleaver according to an embodiment of the present invention may evaluate the availability of the generated TDI reading address (S75300). Thereafter, the time interleaver according to an embodiment of the present invention may generate a final TDI reading address (S75400).
  • time interleaver may read actual FEC blocks (S75500).
  • FIG. 49 illustrates a receiver protocol stack according to an embodiment of the present invention.
  • the first method may be to transmit MPUs (Media Processing Units) using MMTP protocol (MMTP) based on MPEG Media Transport (MMT).
  • the second method may be to transmit DASH segments using Real Time Object Delivery over Unidirectional Transport (ROUTE) based on MPEG DASH.
  • MPUs Media Processing Units
  • MMT MPEG Media Transport
  • ROUTE Real Time Object Delivery over Unidirectional Transport
  • Non-time content including NRT media, EPG data, and other files, is delivered to ROUTE.
  • the signal may be delivered via MMTP and / or ROUTE, while bootstrap signaling information is provided by a service list table (SLT).
  • SLT service list table
  • hybrid service delivery MPEG DASH over HTTP / TCP / IP is used on the broadband side.
  • Media files in ISO base media file format (BMFF) are used as de-encapsulation and synchronization formats for delivery, broadcast, and broadband delivery.
  • BMFF ISO base media file format
  • hybrid service delivery may refer to a case in which one or more program elements are delivered through a broadband path.
  • the service is delivered using three functional layers. These are the physical layer, delivery layer, and service management layer.
  • the physical layer provides a mechanism by which signals, service announcements, and IP packet streams are transmitted in the broadcast physical layer and / or the broadband physical layer.
  • the delivery layer provides object and object flow transport functionality. This is possible by the MMTP or ROUTE protocol operating in the UDP / IP multicast of the broadcast physical layer, and by the HTTP protocol in the TCP / IP unicast of the broadband physical layer.
  • the service management layer enables all services such as linear TV or HTML5 application services executed by underlying delivery and physical layers.
  • a broadcast side protocol stack portion may be divided into a portion transmitted through SLT and MMTP, and a portion transmitted through ROUTE.
  • the SLT may be encapsulated via the UDP and IP layers.
  • the SLT will be described later.
  • the MMTP may transmit data formatted in an MPU format defined in MMT and signaling information according to the MMTP. These data can be encapsulated over the UDP and IP layers.
  • ROUTE can transmit data formatted in the form of a DASH segment, signaling information, and non timed data such as an NRT. These data can also be encapsulated over the UDP and IP layers. In some embodiments, some or all of the processing according to the UDP and IP layers may be omitted.
  • the signaling information shown here may be signaling information about a service.
  • the part transmitted through SLT and MMTP and the part transmitted through ROUTE may be encapsulated again in the data link layer after being processed in the UDP and IP layers.
  • the link layer will be described later.
  • the broadcast data processed in the link layer may be multicast as a broadcast signal through a process such as encoding / interleaving in the physical layer.
  • the broadband protocol stack portion may be transmitted through HTTP as described above.
  • Data formatted in the form of a DASH segment, information such as signaling information, and NRT may be transmitted through HTTP.
  • the signaling information shown here may be signaling information about a service.
  • These data can be processed over the TCP and IP layers and then encapsulated at the link layer. In some embodiments, some or all of TCP, IP, and a link layer may be omitted. Subsequently, the processed broadband data may be unicast to broadband through processing for transmission in the physical layer.
  • a service can be a collection of media components that are shown to the user as a whole, a component can be of multiple media types, a service can be continuous or intermittent, a service can be real time or non-real time, and a real time service can be a sequence of TV programs. It can be configured as.
  • SLT service layer signaling
  • Service signaling provides service discovery and description information and includes two functional components. These are bootstrap signaling and SLS via SLT. These represent the information needed to discover and obtain user services. SLT allows the receiver to build a basic list of services and bootstrap the discovery of SLS for each service.
  • SLT enables very fast acquisition of basic service information.
  • SLS allows the receiver to discover and access the service and its content components. Details of SLT and SLS will be described later.
  • the SLT may be transmitted through UDP / IP.
  • the data corresponding to the SLT may be delivered through the most robust method for this transmission.
  • the SLT may have access information for accessing the SLS carried by the ROUTE protocol. That is, the SLT may bootstrap to the SLS according to the ROUTE protocol.
  • This SLS is signaling information located in the upper layer of ROUTE in the above-described protocol stack and may be transmitted through ROUTE / UDP / IP.
  • This SLS may be delivered via one of the LCT sessions included in the ROUTE session. This SLS can be used to access the service component corresponding to the desired service.
  • the SLT may also have access information for accessing the MMT signaling component carried by the MMTP. That is, the SLT may bootstrap to the SLS according to the MMTP. This SLS may be delivered by an MMTP signaling message defined in MMT. This SLS can be used to access the streaming service component (MPU) corresponding to the desired service. As described above, in the present invention, the NRT service component is delivered through the ROUTE protocol, and the SLS according to the MMTP may also include information for accessing the same. In broadband delivery, SLS is carried over HTTP (S) / TCP / IP.
  • S HTTP
  • TCP Transmission Control Protocol
  • 51 is a diagram illustrating an SLT according to an embodiment of the present invention.
  • the service may be signaled as one of two basic types.
  • the first type is a linear audio / video or audio only service that can have app-based enhancements.
  • the second type is a service whose presentation and configuration are controlled by a download application executed by the acquisition of a service. The latter can also be called an app-based service.
  • Rules relating to the existence of an MMTP session and / or a ROUTE / LCT session for delivering a content component of a service may be as follows.
  • the content component of the service may be delivered by either (1) one or more ROUTE / LCT sessions or (2) one or more MMTP sessions, but not both. have.
  • the content component of the service may be carried by (1) one or more ROUTE / LCT sessions and (2) zero or more MMTP sessions.
  • the use of both MMTP and ROUTE for streaming media components in the same service may not be allowed.
  • the content component of the service may be delivered by one or more ROUTE / LCT sessions.
  • Each ROUTE session includes one or more LCT sessions that deliver, in whole or in part, the content components that make up the service.
  • an LCT session may deliver an individual component of a user service, such as an audio, video, or closed caption stream.
  • Streaming media is formatted into a DASH segment.
  • Each MMTP session includes one or more MMTP packet flows carrying an MMT signaling message or all or some content components.
  • the MMTP packet flow may carry components formatted with MMT signaling messages or MPUs.
  • an LCT session For delivery of NRT user service or system metadata, an LCT session carries a file based content item.
  • These content files may consist of continuous (timed) or discrete (non-timed) media components of an NRT service, or metadata such as service signaling or ESG fragments.
  • Delivery of system metadata, such as service signaling or ESG fragments, can also be accomplished through the signaling message mode of the MMTP.
  • Broadcast streams are the concept of an RF channel defined in terms of carrier frequencies concentrated within a particular band. It is identified by [geographic domain, frequency] pairs.
  • PLP physical layer pipe
  • Each PLP has specific modulation and coding parameters. It is identified by a unique PLPID (PLP identifier) in the broadcast stream to which it belongs.
  • PLP may be called a data pipe (DP).
  • Each service is identified by two types of service identifiers. One is the only compact form used in SLT and only within the broadcast domain, and the other is the only form in the world used in SLS and ESG.
  • ROUTE sessions are identified by source IP address, destination IP address, and destination port number.
  • An LCT session (associated with the service component it delivers) is identified by a transport session identifier (TSI) that is unique within the scope of the parent ROUTE session. Properties that are common to LCT sessions and that are unique to individual LCT sessions are given in the ROUTE signaling structure called service-based transport session instance description (S-TSID), which is part of service layer signaling.
  • S-TSID service-based transport session instance description
  • Each LCT session is delivered through one PLP. According to an embodiment, one LCT session may be delivered through a plurality of PLPs.
  • Different LCT sessions of a ROUTE session may or may not be included in different PLPs.
  • the ROUTE session may be delivered through a plurality of PLPs.
  • Properties described in the S-TSID include TSI values and PLPIDs for each LCT session, descriptors for delivery objects / files, and application layer FEC parameters.
  • MMTP sessions are identified by destination IP address and destination port number.
  • the MMTP packet flow (associated with the service component it carries) is identified by a unique packet_id within the scope of the parent MMTP session.
  • Properties common to each MMTP packet flow and specific properties of the MMTP packet flow are given to the SLT.
  • the properties for each MMTP session are given by the MMT signaling message that can be delivered within the MMTP session. Different MMTP packet flows of MMTP sessions may or may not be included in different PLPs.
  • the MMTP session may be delivered through a plurality of PLPs.
  • the properties described in the MMT signaling message include a packet_id value and a PLPID for each MMTP packet flow.
  • the MMT signaling message may be a form defined in MMT or a form in which modifications are made according to embodiments to be described later.
  • LLS Low Level Signaling
  • the signaling information carried in the payload of an IP packet with a well-known address / port dedicated to this function is called LLS.
  • This IP address and port number may be set differently according to the embodiment.
  • the LLS may be delivered in an IP packet with an address of 224.0.23.60 and a destination port of 4937 / udp.
  • the LLS may be located at a portion represented by "SLT" on the aforementioned protocol stack.
  • the LLS may be transmitted through a separate physical channel on a signal frame without processing the UDP / IP layer.
  • UDP / IP packets carrying LLS data may be formatted in the form of LLS tables.
  • the first byte of every UDP / IP packet carrying LLS data may be the beginning of the LLS table.
  • the maximum length of all LLS tables is limited to 65,507 bytes by the largest IP packet that can be delivered from the physical layer.
  • the LLS table may include an LLS table ID field for identifying a type of the LLS table and an LLS table version field for identifying a version of the LLS table. According to the value indicated by the LLS table ID field, the LLS table may include the aforementioned SLT or include a RRT (Rating Region Table). The RRT may have information about a content advisory rating.
  • the LLS may be signaling information supporting bootstrapping and fast channel scan of service acquisition by the receiver, and the SLT may be a table of signaling information used to build a basic service listing and provide bootstrap discovery of the SLS.
  • the function of the SLT is similar to the program association table (PAT) in the MPEG-2 system and the fast information channel (FIC) found in the ATSC system. For a receiver undergoing a broadcast emission for the first time, this is the starting point.
  • SLT supports fast channel scan that allows the receiver to build a list of all the services it can receive by channel name, channel number, and so on.
  • the SLT also provides bootstrap information that allows the receiver to discover the SLS for each service. For services delivered in ROUTE / DASH, the bootstrap information includes the destination IP address and destination port of the LCT session carrying the SLS. For services delivered to the MMT / MPU, the bootstrap information includes the destination IP address and destination port of the MMTP session carrying the SLS.
  • the SLT supports service acquisition and fast channel scan by including the following information about each service in the broadcast stream.
  • the SLT may include the information needed to allow the presentation of a list of services that are meaningful to the viewer and may support up / down selection or initial service selection via channel number.
  • the SLT may contain the information necessary to locate the SLS for each listed service. That is, the SLT may include access information about a location for delivering the SLS.
  • the SLT according to the exemplary embodiment of the present invention shown is represented in the form of an XML document having an SLT root element.
  • the SLT may be expressed in a binary format or an XML document.
  • the SLT root elements of the illustrated SLT may include @bsid, @sltSectionVersion, @sltSectionNumber, @totalSltSectionNumbers, @language, @capabilities, InetSigLoc, and / or Service.
  • the SLT root element may further include @providerId. In some embodiments, the SLT root element may not include @language.
  • Service elements are @serviceId, @SLTserviceSeqNumber, @protected, @majorChannelNo, @minorChannelNo, @serviceCategory, @shortServiceName, @hidden, @slsProtocolType, BroadcastSignaling, @slsPlpId, @slsDestinationIpAddress, @slsDestinationUdpPort, @slslsSourceItoAddressProtoMin @serviceLanguage, @broadbandAccessRequired, @capabilities and / or InetSigLoc.
  • the properties or elements of the SLT may be added / modified / deleted.
  • Each element included in the SLT may also additionally have a separate property or element, and some of the properties or elements according to the present embodiment may be omitted.
  • the field marked @ may correspond to an attribute and the field not marked @ may correspond to an element.
  • @bsid is an identifier of the entire broadcast stream.
  • the value of the BSID may be unique at the local level.
  • @providerId is the index of the broadcaster using some or all of this broadcast stream. This is an optional property. The absence of it means that this broadcast stream is being used by one broadcaster. @providerId is not shown in the figure.
  • @sltSectionVersion may be the version number of the SLT section.
  • the sltSectionVersion can be incremented by one when there is a change in the information delivered in the slt. When it reaches the maximum value it is shifted to zero.
  • @sltSectionNumber can be counted from 1 as the number of the corresponding section of the SLT. That is, it may correspond to the section number of the corresponding SLT section. If this field is not used, it may be set to a default value of 1.
  • @totalSltSectionNumbers may be the total number of sections of the SLT that the section is part of (ie, the section with the maximum sltSectionNumber).
  • sltSectionNumber and totalSltSectionNumbers can be considered to represent the "M part of N" of a portion of the SLT when sent together in splits. That is, transmission through fragmentation may be supported in transmitting the SLT. If this field is not used, it may be set to a default value of 1. If the field is not used, the SLT may be divided and not transmitted.
  • @language may indicate the main language of the service included in the case of the slt. According to an embodiment, this field value may be in the form of a three character language code defined in ISO. This field may be omitted.
  • @capabilities may indicate the capabilities required to decode and meaningfully represent the contents of all services in the case of the slt.
  • InetSigLoc can provide a URL telling the receiver where to get all the required types of data from an external server via broadband.
  • This element may further include @urlType as a subfield. According to the value of this @urlType field, the type of URL provided by InetSigLoc may be indicated. According to an embodiment, when the value of the @urlType field is 0, InetSigLoc may provide a URL of a signaling server. If the value of the @urlType field is 1, InetSigLoc can provide the URL of the ESG server. If the @urlType field has any other value, it can be reserved for future use.
  • the service field is an element having information on each service and may correspond to a service entry. There may be as many Service Element fields as the number N of services indicated by the SLT. The following describes the sub-properties / elements of the Service field.
  • @serviceId may be an integer number uniquely identifying the corresponding service within a range of the corresponding broadcast area. In some embodiments, the scope of @serviceId may be changed.
  • @SLTserviceSeqNumber may be an integer number indicating a sequence number of SLT service information having the same service ID as the serviceId property. The SLTserviceSeqNumber value can start at 0 for each service and can be incremented by 1 whenever any property changes in the corresponding Service element. If no property value changes compared to the previous service element with a specific value of ServiceID, SLTserviceSeqNumber will not be incremented. The SLTserviceSeqNumber field is shifted to zero after reaching the maximum value.
  • @protected is flag information and may indicate whether one or more components for meaningful playback of the corresponding service are protected. If set to "1" (true), one or more components required for a meaningful presentation are protected. If set to "0" (false), the corresponding flag indicates that none of the components required for meaningful presentation of the service are protected. The default value is false.
  • @majorChannelNo is an integer value indicating the "major" channel number of the service.
  • One embodiment of this field may range from 1 to 999.
  • @minorChannelNo is an integer value indicating the "minor" channel number of the service.
  • One embodiment of this field may range from 1 to 999.
  • @serviceCategory can indicate the category of the service.
  • the meaning indicated by this field may be changed according to an embodiment.
  • the corresponding service may be a linear A / V service, a linear audio only service, or an app-based service. -based service). If this field value is 0, it may be a service of an undefined category, and if this field value has a value other than 0, 1, 2, or 3, it may be reserved for future use.
  • @shortServiceName may be a short string name of a service.
  • @hidden may be a boolean value if present and set to "true", indicating that the service is for testing or exclusive use and is not selected as a normal TV receiver. If not present, the default value is "false”.
  • @slsProtocolType may be a property indicating the type of SLS protocol used by the service. The meaning indicated by this field may be changed according to an embodiment. According to an embodiment, when this field value is 1 or 2, the SLS protocols used by the corresponding service may be ROUTE and MMTP, respectively. If this field has a value of 0 or other value, it may be reserved for future use. This field may be called @slsProtocol.
  • the element InetSigLoc may exist as a child element of the slt root element, and the attribute urlType of the InetSigLoc element includes URL_type 0x00 (URL to signaling server).
  • @slsPlpId may be a string representing an integer representing the PLP ID of the PLP that delivers the SLS for the service.
  • @slsDestinationIpAddress can be a string containing the dotted-IPv4 destination address of the packet carrying SLS data for the service.
  • @slsDestinationUdpPort can be a string that contains the port number of the packet carrying SLS data for the service. As described above, SLS bootstrapping may be performed by destination IP / UDP information.
  • @slsSourceIpAddress can be a string containing the dotted-IPv4 source address of the packet carrying the SLS data for that service.
  • @slsMajorProtocolVersion can be the major version number of the protocol used to deliver the SLS for that service. The default value is 1.
  • @SlsMinorProtocolVersion can be the minor version number of the protocol used to deliver SLS for the service. The default value is zero.
  • @serviceLanguage may be a three letter language code indicating the primary language of the service.
  • the format of the value of this field may be changed according to an embodiment.
  • @broadbandccessRequired may be a boolean value indicating that the receiver needs broadband access to make a meaningful presentation of the service. If the value of this field is True, the receiver needs to access the broadband for meaningful service reproduction, which may correspond to a hybrid delivery case of the service.
  • @capabilities may indicate the capability required to decode and meaningfully indicate the contents of the service with the same service ID as the serviceId property.
  • InetSigLoc may provide a URL for accessing signaling or announcement information over broadband when available.
  • the data type can be an extension of any URL data type that adds an @urlType property that indicates where the URL is accessed.
  • the meaning of the @urlType field of this field may be the same as that of the aforementioned @urlType field of InetSigLoc.
  • an InetSigLoc element of property URL_type 0x00 exists as an element of the SLT, it can be used to make an HTTP request for signaling metadata.
  • This HTTP POST message body may contain a service term. If the InetSigLoc element appears at the section level, the service term is used to indicate the service to which the requested signaling metadata object applies.
  • InetSigLoc appears at the service level, there is no service term required to specify the desired service. If an InetSigLoc element of property URL_type 0x01 is provided, it can be used to retrieve ESG data over broadband. If the element appears as a child element of a service element, the URL can be used to retrieve data for that service. If the element appears as a child element of an SLT element, the URL can be used to retrieve ESG data for all services in that section.
  • the @sltSectionVersion, @sltSectionNumber, @totalSltSectionNumbers and / or @language fields of the SLT may be omitted.
  • InetSigLoc field may be replaced with an @sltInetSigUri and / or an @sltInetEsgUri field.
  • the two fields may include URI of signaling server and URI information of ESG server, respectively.
  • InetSigLoc field which is a sub-element of SLT
  • InetSigLoc field which is a sub-element of Service
  • the suggested default values can be changed according to the embodiment.
  • the shown use column is for each field, where 1 may mean that the field is required, and 0..1 may mean that the field is an optional field.
  • FIG 52 illustrates an SLS bootstrapping and service discovery process according to an embodiment of the present invention.
  • SLS service layer signaling
  • SLS may be signaling that provides information for discovering and obtaining services and their content components.
  • the SLS for each service describes the characteristics of the service, such as a list of components, where they can be obtained, and receiver performance required for a meaningful presentation of the service.
  • the SLS includes a user service bundle description (USBD), an S-TSID, and a media presentation description (DASH MPD).
  • USBD or the User Service Description (USD) may serve as a signaling hub for describing specific technical information of the service as one of the SLS XML fragments.
  • This USBD / USD can be further extended than defined in the 3GPP MBMS. Details of the USBD / USD will be described later.
  • Service signaling focuses on the basic nature of the service itself, in particular the nature necessary to obtain the service.
  • Features of services and programming for viewers are represented by service announcements or ESG data.
  • the SLT may include an HTTP URL from which the service signaling file may be obtained as described above.
  • LLS is used to bootstrap SLS acquisition, and then SLS is used to acquire service components carried in a ROUTE session or an MMTP session.
  • the figure depicted shows the following signaling sequence.
  • the receiver starts to acquire the SLT described above.
  • Each service identified by service_id delivered in a ROUTE session provides SLS bootstrapping information such as PLPID (# 1), source IP address (sIP1), destination IP address (dIP1), and destination port number (dPort1). do.
  • SLS bootstrapping information such as PLPID (# 2), destination IP address (dIP2), and destination port number (dPort2).
  • the receiver can obtain the SLS segmentation that is delivered to the PLP and IP / UDP / LCT sessions.
  • the receiver can obtain the SLS segmentation delivered to the PLP and MMTP sessions.
  • these SLS splits include USBD / USD splits, S-TSID splits, and MPD splits. They are related to a service.
  • the USBD / USD segment describes service layer characteristics and provides a URI reference for the S-TSID segment and a URI reference for the MPD segment. That is, USBD / USD can refer to S-TSID and MPD respectively.
  • the USBD refers to the MMT message of MMT signaling, whose MP table provides location information and identification of package IDs for assets belonging to the service.
  • Asset is a multimedia data entity, which may mean a data entity associated with one unique ID and used to generate one multimedia presentation.
  • Asset may correspond to a service component constituting a service.
  • the MPT message is a message having the MP table of the MMT, where the MP table may be an MMT Package Table having information on the MMT Asset and the content. Details may be as defined in the MMT.
  • the media presentation may be a collection of data for establishing a bound / unbound presentation of the media content.
  • S-TSID segmentation provides a mapping between component acquisition information associated with one service and the DASH representations found in the TSI and MPD corresponding to the component of that service.
  • the S-TSID may provide component acquisition information in the form of a TSI and associated DASH Representation Identifier, and a PLPID that conveys the DASH segmentation associated with the DASH Representation.
  • the receiver collects audio / video components from the service, starts buffering the DASH media segmentation, and then applies the appropriate decoding procedure.
  • the receiver obtains an MPT message with a matching MMT_package_id to complete the SLS.
  • the MPT message provides a complete list of service components, including acquisition information and services for each component.
  • the component acquisition information includes MMTP session information, PLPID for delivering the session, and packet_id in the session.
  • each S-TSID fragment may be used.
  • Each fragment may provide access information for LCT sessions that convey the content of each service.
  • the S-TSID, the USBD / USD, the MPD, or the LCT session carrying them may be referred to as a service signaling channel.
  • the S-TSID, the USBD / USD, the MPD, or the LCT session carrying them may be referred to as a service signaling channel.
  • MMT signaling messages or packet flow carrying them may be called a service signaling channel.
  • one ROUTE or MMTP session may be delivered through a plurality of PLPs. That is, one service may be delivered through one or more PLPs. As described above, one LCT session may be delivered through one PLP. Unlike shown, components constituting one service may be delivered through different ROUTE sessions. In addition, according to an embodiment, components constituting one service may be delivered through different MMTP sessions. According to an embodiment, components constituting one service may be delivered divided into a ROUTE session and an MMTP session. Although not shown, a component constituting one service may be delivered through a broadband (hybrid delivery).
  • FIG. 53 illustrates a USBD fragment for ROUTE / DASH according to an embodiment of the present invention.
  • service layer signaling will be described in the delivery based on ROUTE.
  • SLS provides specific technical information to the receiver to enable discovery and access of services and their content components. It may include a set of XML coded metadata fragments that are delivered to a dedicated LCT session.
  • the LCT session may be obtained using the bootstrap information included in the SLT as described above.
  • SLS is defined per service level, which describes a list of content components, how to obtain them, and access information and features of the service, such as the receiver capabilities required to make a meaningful presentation of the service.
  • the SLS consists of metadata partitions such as USBD, S-TSID, and DASH MPD.
  • the TSI of a specific LCT session to which an SLS fragment is delivered may have a different value.
  • the LCT session to which the SLS fragment is delivered may be signaled by SLT or another method.
  • ROUTE / DASH SLS may include USBD and S-TSID metadata partitioning. These service signaling divisions can be applied to services based on linear and application.
  • USBD partitioning is service identification, device performance information, references to other SLS partitioning required to access service and configuration media components, and metadata that allows the receiver to determine the transmission mode (broadcast and / or broadband) of the service component. It includes.
  • the S-TSID segment referenced by the USBD provides a transport session description for one or more ROUTE / LCT sessions to which the media content component of the service is delivered and a description of the delivery objects delivered in that LCT session. USBD and S-TSID will be described later.
  • the streaming content signaling component of the SLS corresponds to an MPD fragment.
  • MPD is primarily associated with linear services for the delivery of DASH partitions as streaming content.
  • the MPD provides the source identifiers for the individual media components of the linear / streaming service in the form of split URLs, and the context of the identified resources in the media presentation. Details of the MPD will be described later.
  • app-based enhancement signaling is used to deliver app-based enhancement components such as application logic files, locally cached media files, network content items, or announcement streams. Belongs.
  • the application can also retrieve locally cached data on the broadband connection if possible.
  • the top level or entry point SLS split is a USBD split.
  • the illustrated USBD fragment is an embodiment of the present invention, and fields of a basic USBD fragment not shown may be further added according to the embodiment. As described above, the illustrated USBD fragment may have fields added in the basic structure in an expanded form.
  • the illustrated USBD can have a bundleDescription root element.
  • the bundleDescription root element may have a userServiceDescription element.
  • the userServiceDescription element may be an instance of one service.
  • the userServiceDescription element may include @serviceId, @atsc: serviceId, @atsc: serviceStatus, @atsc: fullMPDUri, @atsc: sTSIDUri, name, serviceLanguage, atsc: capabilityCode and / or deliveryMethod.
  • @serviceId can be a globally unique URI that identifies a unique service within the scope of the BSID. This parameter can be used to associate the ESG data (Service @ globalServiceID).
  • serviced is a reference to the corresponding service entry in the LLS (SLT). The value of this property is equal to the value of serviceId assigned to that entry.
  • serviceStatus can specify the status of the service. The value indicates whether the service is enabled or disabled. If set to "1" (true), it indicates that the service is active. If this field is not used, it may be set to a default value of 1.
  • @atsc: fullMPDUri may refer to an MPD segmentation that optionally includes a description of the content component of the service delivered on the broadband and also on the broadband.
  • sTSIDUri may refer to an S-TSID segment that provides access-related parameters to a transport session that delivers the content of the service.
  • name can represent the name of the service given by the lang property.
  • the name element may include a lang property indicating the language of the service name.
  • the language can be specified according to the XML data type.
  • serviceLanguage may indicate an available language of the service.
  • the language can be specified according to the XML data type.
  • capabilityCode may specify the capability required for the receiver to generate a meaningful presentation of the content of the service. According to an embodiment, this field may specify a predefined capability group.
  • the capability group may be a group of capability properties values for meaningful presentation. This field may be omitted according to an embodiment.
  • the deliveryMethod may be a container of transports related to information pertaining to the content of the service on broadcast and (optionally) broadband mode of access. For the data included in the service, if the data is N pieces, delivery methods for the respective data can be described by this element.
  • the deliveryMethod element may include an r12: broadcastAppService element and an r12: unicastAppService element. Each subelement may have a basePattern element as a subelement.
  • the r12: broadcastAppService may be a DASH presentation delivered on a multiplexed or non-multiplexed form of broadcast including corresponding media components belonging to the service over all periods of the belonging media presentation. That is, each of the present fields may mean DASH presentations delivered through the broadcasting network.
  • r12: unicastAppService may be a DASH presentation delivered on a multiplexed or non-multiplexed form of broadband including constituent media content components belonging to the service over all durations of the media presentation to which it belongs. That is, each of the present fields may mean DASH representations delivered through broadband.
  • the basePattern may be a character pattern used by the receiver to match against all parts of the fragment URL used by the DASH client to request media segmentation of the parent presentation in the included period.
  • the match implies that the requested media segment is delivered on the broadcast transport.
  • a part of the URL may have a specific pattern, which pattern may be described by this field. have. Through this information, it may be possible to distinguish some data.
  • the suggested default values can be changed according to the embodiment.
  • the shown use column is for each field, M may be a required field, O is an optional field, OD is an optional field having a default value, and CM may mean a conditional required field. 0 ... 1 to 0 ... N may mean a possible number of corresponding fields.
  • FIG. 54 illustrates an S-TSID fragment for ROUTE / DASH according to an embodiment of the present invention.
  • the S-TSID may be an SLS XML fragment that provides overall session descriptive information for the transport session that carries the content component of the service.
  • the S-TSID is an SLS metadata fragment that contains overall transport session descriptive information for the configuration LCT session and zero or more ROUTE sessions to which the media content component of the service is delivered.
  • the S-TSID also contains file metadata for the delivery object or object flow delivered in the LCT session of the service, as well as additional information about the content component and payload format delivered in the LCT session.
  • S-TSID split is referenced in the USBD split by the @atsc: sTSIDUri property of the userServiceDescription element.
  • the S-TSID according to the embodiment of the present invention shown is represented in the form of an XML document. According to an embodiment, the S-TSID may be expressed in binary format or in the form of an XML document.
  • the S-TSID shown may have an S-TSID root element as shown.
  • the S-TSID root element may include @serviceId and / or RS.
  • @serviceID may be a reference corresponding to a service element in USD.
  • the value of this property may refer to a service having the corresponding value of service_id.
  • the RS element may have information about a ROUTE session for delivering corresponding service data. Since service data or service components may be delivered through a plurality of ROUTE sessions, the element may have 1 to N numbers.
  • the RS element may include @bsid, @sIpAddr, @dIpAddr, @dport, @PLPID and / or LS.
  • @bsid may be an identifier of a broadcast stream to which the content component of broadcastAppService is delivered. If the property does not exist, the PLP of the default broadcast stream may convey SLS splitting for the service. The value may be the same as broadcast_stream_id in the SLT.
  • @sIpAddr may indicate the source IP address.
  • the source IP address may be a source IP address of a ROUTE session for delivering a service component included in a corresponding service.
  • service components of one service may be delivered through a plurality of ROUTE sessions. Therefore, the service component may be transmitted in a ROUTE session other than the ROUTE session in which the corresponding S-TSID is transmitted.
  • this field may be used to indicate the source IP address of the ROUTE session.
  • the default value of this field may be the source IP address of the current ROUTE session. If there is a service component delivered through another ROUTE session and needs to indicate the ROUTE session, this field value may be a source IP address value of the ROUTE session. In this case, this field may be M, that is, a required field.
  • @dIpAddr may indicate a destination IP address.
  • the destination IP address may be a destination IP address of a ROUTE session for delivering a service component included in a corresponding service.
  • this field may indicate the destination IP address of the ROUTE session carrying the service component.
  • the default value of this field may be the destination IP address of the current ROUTE session. If there is a service component delivered through another ROUTE session and needs to indicate the ROUTE session, this field value may be a destination IP address value of the ROUTE session. In this case, this field may be M, that is, a required field.
  • @dport can represent a destination port.
  • the destination port may be a destination port of a ROUTE session for delivering a service component included in a corresponding service.
  • this field may indicate the destination port of the ROUTE session that carries the service component.
  • the default value of this field may be the destination port number of the current ROUTE session. If there is a service component delivered through another ROUTE session and needs to indicate the ROUTE session, this field value may be a destination port number value of the ROUTE session. In this case, this field may be M, that is, a required field.
  • @PLPID may be an ID of a PLP for a ROUTE session expressed in RS.
  • the default value may be the ID of the PLP of the LCT session that contains the current S-TSID.
  • this field may have an ID value of a PLP for an LCT session to which an S-TSID is delivered in a corresponding ROUTE session, or may have ID values of all PLPs for a corresponding ROUTE session.
  • the LS element may have information about an LCT session that carries corresponding service data. Since service data or service components may be delivered through a plurality of LCT sessions, the element may have 1 to N numbers.
  • the LS element may include @tsi, @PLPID, @bw, @startTime, @endTime, SrcFlow and / or RprFlow.
  • @tsi may indicate a TSI value of an LCT session in which a service component of a corresponding service is delivered.
  • @PLPID may have ID information of a PLP for a corresponding LCT session. This value may override the default ROUTE session value.
  • @bw may indicate the maximum bandwiss value.
  • @startTime can indicate the start time of the LCT session.
  • @endTime may indicate an end time of the corresponding LCT session.
  • the SrcFlow element may describe the source flow of ROUTE.
  • the RprFlow element may describe the repair flow of ROUTE.
  • the suggested default values can be changed according to the embodiment.
  • M may be a required field
  • O is an optional field
  • OD is an optional field having a default value
  • MPD is an SLS metadata fragment containing a formal description of a DASH media presentation corresponding to a linear service of a given duration as determined by the broadcaster (eg, a set of TV programs or a series of consecutive linear TV programs for a period of time). ).
  • the contents of the MPD provide source identifiers for context and segmentation for the identified resources within the media presentation.
  • the data structure and semantics of MPD segmentation may be according to the MPD defined by MPEG DASH.
  • One or more DASH presentations delivered in the MPD may be delivered on the broadcast.
  • MPD may describe additional presentations delivered on broadband as in the case of hybrid services, or may support service continuity in broadcast-to-broadcast handoffs due to broadcast signal degradation (eg, driving in tunnels). .
  • FIG. 55 illustrates a USBD / USD fragment for MMT according to an embodiment of the present invention.
  • MMT SLS for linear service includes USBD partition and MP table.
  • the MP table is as described above.
  • USBD partitioning is service identification, device performance information, references to other SLS partitioning required to access service and configuration media components, and metadata that allows the receiver to determine the transmission mode (broadcast and / or broadband) of the service component. It includes.
  • the MP table for the MPU component referenced by the USBD provides the transport session description for the MMTP session to which the media content component of the service is delivered and the description of the asset delivered in the MMTP session.
  • the streaming content signaling component of the SLS for the MPU component corresponds to an MP table defined in MMT.
  • the MP table provides a list of MMT assets for which each asset corresponds to a single service component and a description of location information for the corresponding component.
  • USBD partitioning may also include references to the S-TSID and MPD as described above for service components carried by the ROUTE protocol and broadband, respectively.
  • the service component delivered through the ROUTE protocol in delivery through MMT is data such as NRT
  • MPD may not be necessary in this case.
  • the S-TSID may not be necessary since the service component delivered through broadband does not need information about which LCT session to deliver.
  • the MMT package may be a logical collection of media data delivered using MMT.
  • the MMTP packet may mean a formatted unit of media data delivered using MMT.
  • the media processing unit (MPU) may mean a generic container of independently decodable timed / non-timed data.
  • the data in the MPU is a media codec agnostic.
  • the illustrated USBD fragment is an embodiment of the present invention, and fields of a basic USBD fragment not shown may be further added according to the embodiment. As described above, the illustrated USBD fragment may have fields added in the basic structure in an expanded form.
  • USBD according to the embodiment of the present invention shown is represented in the form of an XML document.
  • the USBD may be represented in a binary format or an XML document.
  • the illustrated USBD can have a bundleDescription root element.
  • the bundleDescription root element may have a userServiceDescription element.
  • the userServiceDescription element may be an instance of one service.
  • the userServiceDescription element may include @serviceId, @atsc: serviceId, name, serviceLanguage, atsc: capabilityCode, atsc: Channel, atsc: mpuComponent, atsc: routeComponent, atsc: broadband Component and / or atsc: ComponentInfo.
  • @serviceId, @atsc: serviceId, name, serviceLanguage, and atsc: capabilityCode may be the same as described above.
  • the lang field under the name field may also be the same as described above.
  • atsc: capabilityCode may be omitted according to an embodiment.
  • the userServiceDescription element may further include an atsc: contentAdvisoryRating element according to an embodiment. This element may be an optional element. atsc: contentAdvisoryRating may specify the content advisory ranking. This field is not shown in the figure.
  • Atsc: Channel may have information about a channel of a service.
  • the atsc: Channel element may include @atsc: majorChannelNo, @atsc: minorChannelNo, @atsc: serviceLang, @atsc: serviceGenre, @atsc: serviceIcon and / or atsc: ServiceDescription.
  • @atsc: majorChannelNo, @atsc: minorChannelNo, and @atsc: serviceLang may be omitted according to embodiments.
  • @atsc: majorChannelNo is a property that indicates the primary channel number of the service.
  • @atsc: serviceLang is a property that indicates the main language used in the service.
  • @atsc: serviceGenre is a property that represents the main genre of a service.
  • @atsc serviceIcon is a property that indicates the URL to the icon used to represent the service.
  • Atsc ServiceDescription contains a service description, which can be multiple languages.
  • ServiceDescription may include @atsc: serviceDescrText and / or @atsc: serviceDescrLang.
  • @atsc: serviceDescrText is a property that describes the description of the service.
  • @atsc: serviceDescrLang is a property indicating the language of the serviceDescrText property.
  • Atsc: mpuComponent may have information about a content component of a service delivered in MPU form.
  • atsc: mpuComponent may include @atsc: mmtPackageId and / or @atsc: nextMmtPackageId.
  • @atsc: mmtPackageId can refer to the MMT package for the content component of the service delivered to the MPU.
  • @atsc: nextMmtPackageId can refer to the MMT package used after being referenced by @atsc: mmtPackageId in accordance with the content component of the service delivered to the MPU.
  • routeComponent may have information about a content component of a service delivered through ROUTE.
  • routeComponent may include @atsc: sTSIDUri, @sTSIDPlpId, @sTSIDDestinationIpAddress, @sTSIDDestinationUdpPort, @sTSIDSourceIpAddress, @sTSIDMajorProtocolVersion and / or @sTSIDMinorProtocolVersion.
  • sTSIDUri may refer to an S-TSID segment that provides access-related parameters to a transport session that delivers the content of the service. This field may be the same as the URI for referencing the S-TSID in the USBD for ROUTE described above. As described above, even in service delivery by MMTP, service components delivered through NRT may be delivered by ROUTE. This field may be used to refer to an S-TSID for this purpose.
  • @sTSIDPlpId may be a string representing an integer indicating the PLP ID of the PLP that delivers the S-TSID for the service. (Default: current PLP)
  • @sTSIDDestinationIpAddress can be a string containing the dotted-IPv4 destination address of the packet carrying the S-TSID for the service. (Default: source IP address of the current MMTP session)
  • @sTSIDDestinationUdpPort may be a string including the port number of the packet carrying the S-TSID for the service.
  • @sTSIDSourceIpAddress can be a string containing the dotted-IPv4 source address of the packet carrying the S-TSID for the service.
  • @sTSIDMajorProtocolVersion can indicate the major version number of the protocol used to deliver the S-TSID for the service. The default value is 1.
  • @sTSIDMinorProtocolVersion can indicate the minor version number of the protocol used to deliver the S-TSID for the service. The default value is zero.
  • broadbandComponent may have information about a content component of a service delivered through broadband. That is, it may be a field that assumes hybrid delivery.
  • broadbandComponent may further include @atsc: fullfMPDUri.
  • @atsc: fullfMPDUri may be a reference to MPD segmentation that contains a description of the content component of the service delivered over broadband.
  • Atsc: ComponentInfo may have information about available components of a service. For each component, it may have information such as type, role, name, and the like. This field may exist as many as each component (N).
  • ComponentInfo may include @atsc: componentType, @atsc: componentRole, @atsc: componentProtectedFlag, @atsc: componentId and / or @atsc: componentName.
  • @atsc: componentType is a property that indicates the type of the component.
  • a value of 0 indicates audio component.
  • a value of 1 represents the video component.
  • a value of 2 indicates a closed caption component.
  • a value of 3 represents an application component.
  • the value of 4 to 7 is left. The meaning of this field value may be set differently according to an embodiment.
  • @atsc: componentRole is a property that indicates the role and type of the component.
  • the value of the componentRole property is as follows.
  • 0 Primary video
  • 1 Alternative camera view
  • 2 Other alternative video component
  • 3 Sign language inset
  • 4 follow subject video
  • 5 3D video left View (3D video left view)
  • 6 3D video right view
  • 7 3D video depth information
  • 8 Part of video array ⁇ x, y> of ⁇ n, m >
  • 9 follow-Subject metadata
  • componentType property If the value of the componentType property is between 3 and 7, it may be equal to componentRole 255.
  • the meaning of this field value may be set differently according to an embodiment.
  • componentProtectedFlag is a property that indicates whether the component is protected (eg encrypted). If the flag is set to a value of 1, the component is protected (eg encrypted). If the flag is set to a value of zero, the component is not protected (eg, not encrypted). If not present, the value of the componentProtectedFlag property is inferred to be equal to zero. The meaning of this field value may be set differently according to an embodiment.
  • @atsc: componentId is an attribute that indicates the identifier of the corresponding component.
  • the value of the property may be the same as asset_id in the MP table corresponding to the corresponding component.
  • @atsc: componentName is a property that indicates the human-readable name of the component.
  • the suggested default values can be changed according to the embodiment.
  • M may be a required field
  • O is an optional field
  • OD is an optional field having a default value
  • MMT media presentation description
  • An MPD is an SLS metadata partition that corresponds to a linear service of a given duration defined by a broadcaster (eg, one TV program, or a collection of consecutive linear TV programs for a period of time).
  • the content of the MPD provides the resource identifier for the partition and the context for the resource identified within the media presentation.
  • the data structure and semantics of the MPD may follow the MPD defined by MPEG DASH.
  • the MPD delivered by the MMTP session describes the presentation carried on the broadband, such as in the case of hybrid services, or due to broadcast signal deterioration (e.g., driving down a mountain or in a tunnel). Service continuity can be supported in a handoff from broadcast to broadcast.
  • the MMT signaling message defined by the MMT is carried by the MMTP packet according to the signaling message mode defined by the MMT.
  • the value of the packet_id field of the MMTP packet carrying the SLS is set to "00" except for the MMTP packet carrying the MMT signaling message specific to the asset, which may be set to the same packet_id value as the MMTP packet carrying the asset.
  • An identifier that references the appropriate packet for each service is signaled by the USBD segmentation as described above.
  • MPT messages with matching MMT_package_id may be carried on the MMTP session signaled in the SLT.
  • Each MMTP session carries an MMT signaling message or each asset carried by the MMTP session specific to that session.
  • the IP destination address / port number of the packet having the SLS for the specific service may be specified to access the USBD of the MMTP session.
  • the packet ID of the MMTP packet carrying the SLS may be designated as a specific value such as 00.
  • the above-described package ID information of the USBD may be used to access an MPT message having a matching package ID.
  • the MPT message can be used to access each service component / asset as described below.
  • the next MMTP message may be carried by the MMTP session signaled in the SLT.
  • MPT message This message carries an MP table containing a list of all assets and their location information as defined by the MMT. If the asset is delivered by a different PLP than the current PLP carrying the MP table, the identifier of the PLP carrying the asset may be provided in the MP table using the PLP identifier descriptor. The PLP identifier descriptor will be described later.
  • the following MMTP message may be carried by the MMTP session signaled in the SLT if necessary.
  • MPI message This message carries an MPI table that contains all or some documents of the presentation information.
  • the MP table associated with the MPI table can be conveyed by this message.
  • CRI (clock relation information) message This message carries a CRI table containing clock related information for mapping between NTP timestamp and MPEG-2 STC. In some embodiments, the CRI message may not be delivered through the corresponding MMTP session.
  • the following MMTP message may be delivered by each MMTP session carrying streaming content.
  • Virtual Receiver Buffer Model Message This message carries the information required by the receiver to manage the buffer.
  • This message carries the information required by the receiver to manage the MMT decapsulation buffer.
  • Mmt_atsc3_message which is one of MMT signaling messages
  • Mmt_atsc3_message () is defined to deliver information specific to a service according to the present invention described above.
  • This signaling message may include a message ID, version and / or length field which are basic fields of an MMT signaling message.
  • the payload of this signaling message may include service ID information, content type, content version, content compression information, and / or URI information.
  • the content type information may indicate the type of data included in the payload of the signaling message.
  • the content version information may indicate a version of data included in the payload, and the content compression information may indicate a compression type applied to the corresponding data.
  • the URI information may have URI information related to the content delivered by this message.
  • the PLP identifier descriptor is a descriptor that can be used as one of the descriptors of the aforementioned MP table.
  • the PLP identifier descriptor provides information about the PLP that carries the asset. If an asset is carried by a different PLP than the current PLP carrying the MP table, the PLP identifier descriptor can be used as an asset descriptor in the associated MP table to identify the PLP carrying that asset.
  • the PLP identifier descriptor may further include BSID information in addition to PLP ID information.
  • the BSID may be the ID of a broadcast stream that carries MMTP packets for the Asset described by this descriptor.
  • the link layer is a layer between the physical layer and the network layer, and the transmitting side transmits data from the network layer to the physical layer, and the receiving side transmits data from the physical layer to the network layer.
  • the purpose of the link layer is to summarize all input packet types into one format for processing by the physical layer, to ensure flexibility and future scalability for input types not yet defined.
  • processing within the link layer ensures that input data can be efficiently transmitted, for example by providing an option to compress unnecessary information in the header of the input packet.
  • Encapsulation, compression, and the like are referred to as link layer protocols, and packets generated using such protocols are called link layer packets.
  • the link layer may perform functions such as packet encapsulation, overhead reduction, and / or signaling transmission.
  • the link layer protocol enables encapsulation of all types of packets, including IP packets and MPEG-2 TS.
  • the physical layer needs to process only one packet format independently of the network layer protocol type (here, consider MPEG-2 TS packet as a kind of network layer packet).
  • Each network layer packet or input packet is transformed into a payload of a generic link layer packet.
  • concatenation and splitting may be performed to efficiently use physical layer resources when the input packet size is particularly small or large.
  • segmentation may be utilized in the packet encapsulation process. If the network layer packet is too large to be easily processed by the physical layer, the network layer packet is divided into two or more partitions.
  • the link layer packet header includes a protocol field for performing division at the transmitting side and recombination at the receiving side. If the network layer packet is split, each split may be encapsulated into a link layer packet in the same order as the original position in the network layer packet. In addition, each link layer packet including the division of the network layer packet may be transmitted to the physical layer as a result.
  • concatenation may also be utilized in the packet encapsulation process. If the network layer packet is small enough so that the payload of the link layer packet includes several network layer packets, the link layer packet header includes a protocol field for executing concatenation. A concatenation is a combination of multiple small network layer packets into one payload. When network layer packets are concatenated, each network layer packet may be concatenated into the payload of the link layer packet in the same order as the original input order. In addition, each packet constituting the payload of the link layer packet may be an entire packet instead of a packet division.
  • the link layer protocol can greatly reduce the overhead for the transmission of data on the physical layer.
  • the link layer protocol according to the present invention may provide IP overhead reduction and / or MPEG-2 TS overhead reduction.
  • IP overhead reduction IP packets have a fixed header format, but some information needed in a communication environment may be unnecessary in a broadcast environment.
  • the link layer protocol provides a mechanism to reduce broadcast overhead by compressing the header of IP packets.
  • MPEG-2 TS overhead reduction the link layer protocol provides sync byte removal, null packet deletion and / or common header removal (compression).
  • sink byte removal provides an overhead reduction of one byte per TS packet, and then a null packet deletion mechanism removes 188 bytes of null TS packets in a manner that can be reinserted at the receiver. Finally, a common header removal mechanism is provided.
  • the link layer protocol may provide a specific format for signaling packets to transmit link layer signaling. This will be described later.
  • the link layer protocol takes an input network layer packet such as IPv4, MPEG-2 TS, etc. as an input packet.
  • IPv4 IPv4, MPEG-2 TS, etc.
  • Future extensions represent protocols that can be entered at different packet types and link layers.
  • the link layer protocol specifies signaling and format for all link layer signaling, including information about the mapping for a particular channel in the physical layer.
  • the figure shows how ALP includes mechanisms to improve transmission efficiency through various header compression and deletion algorithms.
  • link layer protocol can basically encapsulate input packets.
  • 57 is a diagram illustrating a base header structure of a link layer packet according to an embodiment of the present invention. Hereinafter, the structure of the header will be described.
  • the link layer packet may include a header followed by the data payload.
  • the packet of the link layer packet may include a base header and may include an additional header according to a control field of the base header.
  • the presence of the optional header is indicated from the flag field of the additional header.
  • a field indicating the presence of an additional header and an optional header may be located in the base header.
  • the base header for link layer packet encapsulation has a hierarchical structure.
  • the base header may have a length of 2 bytes and is the minimum length of the link layer packet header.
  • the base header according to the embodiment of the present invention shown may include a Packet_Type field, a PC field, and / or a length field. According to an embodiment, the base header may further include an HM field or an S / C field.
  • the Packet_Type field is a 3-bit field indicating the packet type or the original protocol of the input data before encapsulation into the link layer packet.
  • IPv4 packets, compressed IP packets, link layer signaling packets, and other types of packets have this base header structure and can be encapsulated.
  • the MPEG-2 TS packet may have another special structure and may be encapsulated. If the value of Packet_Type is "000", the original data type "001" "100" or "111" of the ALP packet is one of an IPv4 packet, a compressed IP packet, a link layer signaling or an extension packet. If the MPEG-2 TS packet is encapsulated, the value of Packet_Type may be "010". The values of other Packet_Type fields may be reserved for future use.
  • the Payload_Configuration (PC) field may be a 1-bit field indicating the configuration of the payload.
  • a value of 0 may indicate that the link layer packet carries one full input packet and the next field is Header_Mode.
  • a value of 1 may indicate that the link layer packet carries one or more input packets (chains) or a portion of a large input packet (segmentation) and the next field is Segmentation_Concatenation.
  • the Header_Mode (HM) field may indicate that there is no additional header and may be a 1-bit field indicating that the length of the payload of the link layer packet is less than 2048 bytes. This value may vary depending on the embodiment. A value of 1 may indicate that an additional header for one packet defined below exists after the length field. In this case, the payload length is greater than 2047 bytes and / or optional features may be used (sub stream identification, header extension, etc.). This value may vary depending on the embodiment. This field may be present only when the Payload_Configuration field of the link layer packet has a value of zero.
  • the Segmentation_Concatenation (S / C) field may be a 1-bit field indicating that the payload carries a segment of the input packet and that an additional header for segmentation defined below exists after the length field.
  • a value of 1 may indicate that the payload carries more than one complete input packet and that an additional header for concatenation defined below exists after the length field. This field may be present only when the value of the Payload_Configuration field of the ALP packet is 1.
  • the length field may be an 11-bit field indicating 11 LSBs (least significant bits) of the length in bytes of the payload carried by the link layer packet. If there is a Length_MSB field in the next additional header, the length field is concatenated to the Length_MSB field and becomes the LSB to provide the actual total length of the payload. The number of bits in the length field may be changed to other bits in addition to 11 bits.
  • packet structure types are possible. That is, one packet without additional headers, one packet with additional headers, split packets, and concatenated packets are possible. According to an embodiment, more packet configurations may be possible by combining each additional header and optional header, an additional header for signaling information to be described later, and an additional header for type extension.
  • 58 is a diagram illustrating an additional header structure of a link layer packet according to an embodiment of the present invention.
  • Additional headers may be of various types. Hereinafter, an additional header for a single packet will be described.
  • Header_Mode (HM) "1". If the length of the payload of the link layer packet is larger than 2047 bytes or an option field is used, Header_Mode (HM) may be set to one. An additional header tsib10010 of one packet is shown in the figure.
  • the Length_MSB field may be a 5-bit field that may indicate the most significant bits (MSBs) of the total payload length in bytes in the current link layer packet, and is concatenated into a length field including 11 LSBs to obtain the total payload length. .
  • MSBs most significant bits
  • the number of bits in the length field may be changed to other bits in addition to 11 bits.
  • the length_MSB field may also change the number of bits, and thus the maximum representable payload length may also change.
  • each length field may indicate the length of the entire link layer packet, not the payload.
  • the Sub-stream Identifier Flag (SIF) field may be a 1-bit field that may indicate whether a sub-stream ID (SID) exists after the header extension flag (HEF) field. If there is no SID in the link layer packet, the SIF field may be set to zero. If there is an SID after the HEF field in the link layer packet, the SIF may be set to one. Details of the SID will be described later.
  • the HEF field may be a 1-bit field that may indicate that an additional header exists for later expansion. A value of 0 can indicate that this extension field does not exist.
  • Segment_Sequence_Number may be an unsigned integer of 5 bits that may indicate the order of the corresponding segment carried by the link layer packet. For a link layer packet carrying the first division of the input packet, the value of the corresponding field may be set to 0x0. This field may be incremented by one for each additional segment belonging to the input packet to be split.
  • the LSI may be a 1-bit field that may indicate that the partition in the payload is the end of the input packet. A value of zero can indicate that it is not the last partition.
  • the Sub-stream Identifier Flag may be a 1-bit field that may indicate whether the SID exists after the HEF field. If there is no SID in the link layer packet, the SIF field may be set to zero. If there is an SID after the HEF field in the link layer packet, the SIF may be set to one.
  • the HEF field may be a 1-bit field that may indicate that there is an optional header extension after the additional header for later expansion of the link layer header.
  • a value of 0 can indicate that there is no optional header extension.
  • a packet ID field indicating that each divided segment is generated from the same input packet may be added. This field may not be necessary if the segmented segments are transmitted in order.
  • Segmentation_Concatenation (S / C) "1"
  • an additional header tsib10030 may exist.
  • Length_MSB may be a 4-bit field that may indicate the MSB bit of the payload length in bytes in the corresponding link layer packet.
  • the maximum length of the payload is 32767 bytes for concatenation. As described above, the detailed values may be changed.
  • the Count field may be a field that may indicate the number of packets included in the link layer packet. 2 corresponding to the number of packets included in the link layer packet may be set in the corresponding field. Therefore, the maximum value of concatenated packets in the link layer packet is nine.
  • the way in which the Count field indicates the number may vary from embodiment to embodiment. That is, the number from 1 to 8 may be indicated.
  • the HEF field may be a 1-bit field that may indicate that an optional header extension exists after an additional header for future extension of the link layer header. A value of 0 can indicate that no extension header exists.
  • Component_Length may be a 12-bit field that may indicate the length in bytes of each packet.
  • the Component_Length field is included in the same order as the packets present in the payload except for the last component packet.
  • the number of length fields may be represented by (Count + 1). In some embodiments, there may be the same number of length fields as the value of the Count field.
  • four stuffing bits may follow the last Component_Length field. These bits can be set to zero.
  • the Component_Length field indicating the length of the last concatenated input packet may not exist. In this case, the length of the last concatenated input packet may be indicated as the length obtained by subtracting the sum of the values indicated by each Component_length field from the total payload length.
  • the optional header is described below.
  • the optional header may be added after the additional header.
  • the optional header field may include SID and / or header extension. SIDs are used to filter specific packet streams at the link layer level. One example of a SID is the role of a service identifier in a link layer stream that carries multiple services. If applicable, mapping information between the service and the SID value corresponding to the service may be provided in the SLT.
  • the header extension includes an extension field for future use. The receiver can ignore all header extensions that it does not understand.
  • the SID may be an 8-bit field that may indicate a sub stream identifier for the link layer packet. If there is an optional header extension, the SID is between the additional header and the optional header extension.
  • Header_Extension may include fields defined below.
  • Extension_Type may be an 8-bit field that may indicate the type of Header_Extension ().
  • Extension_Length may be an 8-bit field that may indicate the byte length of Header Extension () counted from the next byte to the last byte of Header_Extension ().
  • Extension_Byte may be a byte representing the value of Header_Extension ().
  • 59 is a diagram illustrating an additional header structure of a link layer packet according to another embodiment of the present invention.
  • link layer signaling is included in a link layer packet is as follows.
  • the signaling packet is identified when the Packet_Type field of the base header is equal to 100.
  • the figure tsib11010 illustrates a structure of a link layer packet including an additional header for signaling information.
  • the link layer packet may consist of two additional parts, an additional header for signaling information and the actual signaling data itself.
  • the total length of the link layer signaling packet is indicated in the link layer packet header.
  • the additional header for signaling information may include the following fields. In some embodiments, some fields may be omitted.
  • Signaling_Type may be an 8-bit field that may indicate the type of signaling.
  • Signaling_Type_Extension may be a 16-bit field that may indicate an attribute of signaling. Details of this field may be defined in the signaling specification.
  • Signaling_Version may be an 8-bit field that may indicate the version of signaling.
  • Signaling_Format may be a 2-bit field that may indicate a data format of signaling data.
  • the signaling format may mean a data format such as binary or XML.
  • Signaling_Encoding may be a 2-bit field that can specify the encoding / compression format. This field may indicate whether compression has not been performed or what specific compression has been performed.
  • Additional headers are defined to provide a mechanism that allows for an almost unlimited number of packet types and additional protocols carried by the link layer later.
  • Packet_type is 111 in the base header
  • packet type extension may be used.
  • the figure tsib11020 illustrates a structure of a link layer packet including an additional header for type extension.
  • the additional header for type extension may include the following fields. In some embodiments, some fields may be omitted.
  • the extended_type may be a 16-bit field that may indicate a protocol or packet type of an input encapsulated into a link layer packet as a payload. This field cannot be used for all protocols or packet types already defined by the Packet_Type field.
  • 60 is a diagram illustrating a header structure of a link layer packet for an MPEG-2 TS packet and an encapsulation process according to an embodiment of the present invention.
  • the Packet_Type field of the base header is equal to 010.
  • a plurality of TS packets may be encapsulated within each link layer packet.
  • the number of TS packets may be signaled through the NUMTS field.
  • a special link layer packet header format may be used.
  • the link layer provides an overhead reduction mechanism for MPEG-2 TS to improve transmission efficiency.
  • the sync byte (0x47) of each TS packet may be deleted.
  • the option to delete null packets and similar TS headers is also provided.
  • the deleted null packet may be recovered at the receiver side using the DNP field.
  • the DNP field indicates the count of deleted null packets. The null packet deletion mechanism using the DNP field is described below.
  • headers of MPEG-2 TS packets can be removed. If two or more sequential TS packets sequentially increment the CC (continuity counter) field and other header fields are also the same, the header is transmitted once in the first packet and the other header is deleted.
  • the HDM field may indicate whether the header has been deleted. The detailed procedure of common TS header deletion is described below.
  • overhead reduction may be performed in the following order: sink removal, null packet deletion, common header deletion. According to an embodiment, the order in which each mechanism is performed may be changed. In addition, some mechanisms may be omitted in some embodiments.
  • Packet_Type may be a 3-bit field that may indicate a protocol type of an input packet as described above. For MPEG-2 TS packet encapsulation, this field may always be set to 010.
  • NUMTS Number of TS packets
  • NUMTS Number of TS packets
  • NUMTS 0001 means that one TS packet is delivered.
  • An additional header flag may be a field that may indicate whether an additional header exists. A value of zero indicates that no additional header is present. A value of 1 indicates that an additional header of length 1 byte exists after the base header. If a null TS packet is deleted or TS header compression is applied, this field may be set to one.
  • the additional header for TS packet encapsulation consists of the following two fields and is present only when the value of AHF in the corresponding link layer packet is set to 1.
  • the header deletion mode may be a 1-bit field indicating whether TS header deletion may be applied to the corresponding link layer packet. A value of 1 indicates that TS header deletion can be applied. A value of 0 indicates that the TS header deletion method is not applied to the corresponding link layer packet.
  • the number of bits of each field described above may be changed, and the minimum / maximum value of the value indicated by the corresponding field may be changed according to the changed number of bits. This can be changed according to the designer's intention.
  • the sync byte (0x47) may be deleted from the start of each TS packet.
  • the length of an MPEG2-TS packet encapsulated in the payload of a link layer packet is always 187 bytes (instead of the original 188 bytes).
  • the transport stream rule requires that the bit rates at the output of the multiplexer of the transmitter and the input of the demultiplexer of the receiver are constant over time and the end-to-end delay is also constant.
  • null packets may be present to accommodate variable bitrate services in a constant bitlace stream.
  • This process is performed in such a way that the removed null packet can be reinserted into the original correct position at the receiver, thus ensuring a constant bitrate and eliminating the need for a PCR time stamp update.
  • a counter called DNP can be incremented for each discarded null packet prior to the first non-null TS packet that will be encapsulated in the payload of the current link layer packet after it is first reset to zero. have.
  • a group of consecutive useful TS packets can then be encapsulated in the payload of the current link layer packet, and the value of each field in its header can be determined.
  • the DNP is reset to zero. If the DNP reaches the highest allowance, if the next packet is also a null packet, that null packet remains a useful packet and is encapsulated in the payload of the next link layer packet.
  • Each link layer packet may include at least one useful TS packet in its payload.
  • TS packet header deletion may be referred to as TS packet header compression.
  • the header is sent once in the first packet and the other header is deleted. If duplicate MPEG-2 TS packets are included in two or more sequential TS packets, header deletion cannot be applied at the transmitter side.
  • the HDM field may indicate whether the header is deleted. If the TS header is deleted, the HDM may be set to one. At the receiver side, using the first packet header, the deleted packet header is recovered and recovered by increasing the CC in order from the first header.
  • the illustrated embodiment tsib12020 is an embodiment of a process in which an input stream of a TS packet is encapsulated into a link layer packet.
  • a TS stream composed of TS packets having SYNC bytes (0x47) may be input.
  • sync bytes may be deleted by deleting the SYNC byte. In this embodiment, it is assumed that null packet deletion has not been performed.
  • the processed TS packets may be encapsulated in the payload of the link layer packet.
  • the Packet_Type field may have a value of 010 since the TS packet is input.
  • the NUMTS field may indicate the number of encapsulated TS packets.
  • the AHF field may be set to 1 since packet header deletion has been performed to indicate the presence of an additional header.
  • the HDM field may be set to 1 since header deletion has been performed.
  • the DNP may be set to 0 since null packet deletion is not performed.
  • FIG. 61 is a diagram showing an embodiment of adaptation modes in the IP header compression according to an embodiment of the present invention (the transmitting side).
  • IP header compression will be described.
  • an IP header compression / decompression scheme can be provided.
  • the IP header compression may include two parts, a header compressor / decompressor and an adaptation module.
  • the header compression scheme can be based on RoHC.
  • an adaptation function is added for broadcasting purposes.
  • the RoHC compressor reduces the size of the header for each packet.
  • the adaptation module then extracts the context information and generates signaling information from each packet stream.
  • the adaptation module parses the signaling information associated with the received packet stream and attaches the context information to the received packet stream.
  • the RoHC decompressor reconstructs the original IP packet by restoring the packet header.
  • the header compression scheme may be based on ROHC as described above.
  • the ROHC framework can operate in the U mode (uni dirctional mode) of the ROHC.
  • the ROHC UDP header compression profile identified by the profile identifier of 0x0002 may be used in the present system.
  • the adaptation function provides out-of-band transmission of configuration parameters and context information. Out-of-band transmission may be through link layer signaling. Accordingly, the adaptation function is used to reduce the decompression error and the channel change delay caused by the loss of the context information.
  • Extraction of the context information may be performed in various ways depending on the adaptation mode. In the present invention, the following three embodiments will be described. The scope of the present invention is not limited to the embodiments of the adaptation mode to be described later.
  • the adaptation mode may be called a context extraction mode.
  • Adaptation mode 1 may be a mode in which no further operation is applied to the basic ROHC packet stream. That is, in this mode the adaptation module can operate as a buffer. Therefore, in this mode, there may be no context information in link layer signaling.
  • the adaptation module may detect the IR packet from the RoHC packet flow and extract context information (static chain). After extracting the context information, each IR packet can be converted into an IR-DYN packet. The converted IR-DYN packet may be included in the RoHC packet flow and transmitted in the same order as the IR packet by replacing the original packet.
  • the adaptation module may detect IR and IR-DYN packets from the RoHC packet flow and extract context information. Static chains and dynamic chains can be extracted from IR packets, and dynamic chains can be extracted from IR-DYN packets. After extracting the context information, each IR and IR-DYN packet can be converted into a compressed packet.
  • the compressed packet format may be the same as the next packet of the IR or IR-DYN packet.
  • the converted compressed packet may be included in the RoHC packet flow and transmitted in the same order as the IR or IR-DYN packet to replace the original packet.
  • the signaling (context) information can be encapsulated based on the transmission structure.
  • context information may be encapsulated with link layer signaling.
  • the packet type value may be set to 100.
  • the link layer packet for context information may have a Packet Type field value of 100.
  • the link layer packet for the compressed IP packets may have a Packet Type field value of 001. This indicates that the signaling information and the compressed IP packet are included in the link layer packet, respectively, as described above.
  • the extracted context information may be transmitted separately from the RoHC packet flow along with the signaling data through a specific physical data path.
  • the transfer of context depends on the configuration of the physical layer path.
  • the context information may be transmitted along with other link layer signaling through the signaling data pipe.
  • the signaling PLP may mean an L1 signaling path.
  • the signaling PLP is not distinguished from the general PLP and may mean a specific general PLP through which signaling information is transmitted.
  • the receiver may need to obtain signaling information. If the receiver decodes the first PLP to obtain signaling information, context signaling may also be received. After signaling acquisition is made, a PLP may be selected to receive the packet stream. That is, the receiver may first select the initial PLP to obtain signaling information including context information. Here, the initial PLP may be the aforementioned signaling PLP. Thereafter, the receiver can select a PLP to obtain a packet stream. Through this, context information may be obtained prior to receiving the packet stream.
  • the adaptation module may detect the IR-DYN packet from the received packet flow.
  • the adaptation module parses the static chain from the context information in the signaling data. This is similar to receiving an IR packet.
  • the IR-DYN packet can be recovered to an IR packet.
  • the recovered RoHC packet flow can be sent to the RoHC decompressor. Decompression can then begin.
  • LMT link mapping table
  • link layer signaling operates under the IP level.
  • link layer signaling may be obtained before IP level signaling such as SLT and SLS. Therefore, link layer signaling may be obtained before session establishment.
  • link layer signaling there may be two types of signaling, depending on the input path, internal link layer signaling and external link layer signaling.
  • Internal link layer signaling is generated at the link layer at the transmitter side.
  • the link layer also takes signaling from external modules or protocols. This kind of signaling information is considered external link layer signaling. If some signaling needs to be obtained prior to IP level signaling, external signaling is sent in the format of a link layer packet.
  • Link layer signaling may be encapsulated in a link layer packet as described above.
  • the link layer packet may carry link layer signaling in any format including binary and XML.
  • the same signaling information may be sent in a different format for link layer signaling.
  • Internal link layer signaling may include signaling information for link mapping.
  • LMT provides a list of higher layer sessions delivered to the PLP. The LMT also provides additional information for processing link layer packets carrying upper layer sessions at the link layer.
  • signaling_type may be an 8-bit unsigned integer field that indicates the type of signaling carried by the corresponding table.
  • the value of the signaling_type field for the LMT may be set to 0x01.
  • the PLP_ID may be an 8-bit field indicating a PLP corresponding to the table.
  • num_session may be an 8-bit unsigned integer field that provides the number of higher layer sessions delivered to the PLP identified by the PLP_ID field. If the value of the signaling_type field is 0x01, this field may indicate the number of UDP / IP sessions in the PLP.
  • src_IP_add may be a 32-bit unsigned integer field that contains the source IP address of the higher layer session delivered to the PLP identified by the PLP_ID field.
  • dst_IP_add may be a 32-bit unsigned integer field containing the destination IP address of the higher layer session carried to the PLP identified by the PLP_ID field.
  • src_UDP_port may be a 16-bit unsigned integer field that indicates the source UDP port number of the upper layer session delivered to the PLP identified by the PLP_ID field.
  • the dst_UDP_port may be a 16-bit unsigned integer field that indicates the destination UDP port number of the upper layer session delivered to the PLP identified by the PLP_ID field.
  • SID_flag may be a 1-bit Boolean field indicating whether a link layer packet carrying an upper layer session identified by the four fields Src_IP_add, Dst_IP_add, Src_UDP_Port, and Dst_UDP_Port has an SID field in its optional header. If the value of this field is set to 0, a link layer packet carrying a higher layer session may not have an SID field in its optional header. If the value of this field is set to 1, the link layer packet carrying the upper layer session may have an SID field in its optional header, and the value of the SID field may be the same as the next SID field in the table.
  • the compressed_flag may be a 1-bit Boolean field indicating whether header compression is applied to a link layer packet carrying an upper layer session identified by the four fields Src_IP_add, Dst_IP_add, Src_UDP_Port, and Dst_UDP_Port. If the value of this field is set to 0, the link layer packet carrying the upper layer session may have a value of 0x00 in the Packet_Type field in the base header. If the value of this field is set to 1, a link layer packet carrying an upper layer session may have a value of 0x01 of a Packet_Type field in its base header and a Context_ID field may exist.
  • the SID may be an 8-bit unsigned integer field indicating a sub stream identifier for a link layer packet carrying a higher layer session identified by the four fields Src_IP_add, Dst_IP_add, Src_UDP_Port, and Dst_UDP_Port. This field may exist when the value of SID_flag is equal to one.
  • context_id may be an 8-bit field that provides a reference to the context id (CID) provided in the ROHC-U description table. This field may exist when the value of compressed_flag is equal to 1.
  • ROHC-U adaptation module may generate information related to header compression.
  • signaling_type may be an 8-bit field indicating the type of signaling carried by the corresponding table.
  • the value of the signaling_type field for the ROHC-U description table may be set to "0x02".
  • the PLP_ID may be an 8-bit field indicating a PLP corresponding to the table.
  • context_id may be an 8-bit field indicating the CID of the compressed IP stream.
  • an 8-bit CID can be used for large CIDs.
  • the context_profile may be an 8-bit field indicating the range of protocols used to compress the stream. This field may be omitted.
  • the adaptation_mode may be a 2-bit field indicating the mode of the adaptation module in the corresponding PLP.
  • the adaptation mode has been described above.
  • context_config may be a 2-bit field indicating a combination of context information. If the context information does not exist in the table, this field may be set to '0x0'. If a static_chain () or dynamic_chain () byte is included in the table, this field may be set to '0x01' or '0x02'. If both the static_chain () and dynamic_chain () bytes are included in the table, this field may be set to '0x03'.
  • context_length may be an 8-bit field indicating the length of the static chain byte sequence. This field may be omitted.
  • static_chain_byte may be a field for transmitting static information used to initialize the RoHC-U decompressor. The size and structure of this field depends on the context profile.
  • dynamic_chain_byte may be a field for transmitting dynamic information used to initialize the RoHC-U decompressor.
  • the size and structure of this field depends on the context profile.
  • static_chain_byte may be defined as subheader information of an IR packet.
  • dynamic_chain_byte may be defined as subheader information of an IR packet and an IR-DYN packet.
  • 63 is a diagram illustrating a link layer structure on the transmitter side according to an embodiment of the present invention.
  • the link layer on the transmitter side may include a link layer signaling portion, an overhead reduction portion, and / or an encapsulation portion that largely process signaling information.
  • the link layer on the transmitter side may include a scheduler for controlling and scheduling the entire operation of the link layer and / or input and output portions of the link layer.
  • signaling information and / or system parameter tsib15010 of an upper layer may be delivered to a link layer.
  • an IP stream including IP packets from the IP layer tsib15110 may be delivered to the link layer.
  • the scheduler tsib15020 may determine and control operations of various modules included in the link layer.
  • the delivered signaling information and / or system parameter tsib15010 may be filtered or utilized by the scheduler tsib15020.
  • information required by the receiver may be delivered to the link layer signaling portion.
  • information necessary for the operation of the link layer among the signaling information may be transferred to the overhead reduction control tsib15120 or the encapsulation control tsib15180.
  • the link layer signaling part may collect information to be transmitted as signaling in the physical layer and convert / configure the information into a form suitable for transmission.
  • the link layer signaling portion may include a signaling manager tsib15030, a signaling formatter tsib15040, and / or a buffer tsib15050 for the channel.
  • the signaling manager tsib15030 may receive the signaling information received from the scheduler tsib15020 and / or the signaling and / or context information received from the overhead reduction part.
  • the signaling manager tsib15030 may determine a path to which each signaling information should be transmitted with respect to the received data.
  • Each signaling information may be delivered in a path determined by the signaling manager tsib15030.
  • signaling information to be transmitted through a separate channel such as FIC or EAS may be delivered to the signaling formatter tsib15040, and other signaling information may be delivered to the encapsulation buffer tsib15070.
  • the signaling formatter tsib15040 may serve to format related signaling information in a form suitable for each divided channel so that signaling information may be transmitted through separate channels. As described above, there may be a separate channel physically and logically separated in the physical layer. These divided channels may be used to transmit FIC signaling information or EAS related information. The FIC or EAS related information may be classified by the signaling manager tsib15030 and input to the signaling formatter tsib15040. The signaling formatter tsib15040 may format each information according to its own separate channel. In addition to the FIC and the EAS, when the physical layer is designed to transmit specific signaling information through a separate channel, a signaling formatter for the specific signaling information may be added. In this way, the link layer can be made compatible with various physical layers.
  • the buffers tsib15050 for the channel may serve to transmit signaling information received from the signaling formatter tsib15040 to the designated separate channel tsib15060.
  • the number and content of separate channels may vary according to embodiments.
  • the signaling manager tsib15030 may transmit signaling information not transmitted through a specific channel to the encapsulation buffer tsib15070.
  • the encapsulation buffer tsib15070 may serve as a buffer for receiving signaling information not transmitted through a specific channel.
  • Encapsulation for signaling information tsib15080 may perform encapsulation on signaling information not transmitted through a specific channel.
  • the transmission buffer tsib15090 may serve as a buffer for transferring the encapsulated signaling information to the DP tsib15100 for signaling information.
  • the DP for signaling information tsib15100 may refer to the above-described PLS region.
  • the overhead reduction portion can eliminate the overhead of packets delivered to the link layer, thereby enabling efficient transmission.
  • the overhead reduction part may be configured by the number of IP streams input to the link layer.
  • the overhead reduction buffer tsib15130 may serve to receive an IP packet transferred from an upper layer.
  • the received IP packet may be input to the overhead reduction portion through the overhead reduction buffer tsib15130.
  • the overhead reduction control tsib15120 may determine whether to perform overhead reduction on the packet stream input to the overhead reduction buffer tsib15130.
  • the overhead reduction control tsib15120 may determine whether to perform overhead reduction for each packet stream.
  • packets When overhead reduction is performed on the packet stream, packets may be delivered to the RoHC compressor tsib15140 to perform overhead reduction. If overhead reduction is not performed on the packet stream, packets may be delivered to the encapsulation portion so that encapsulation may proceed without overhead reduction.
  • Whether to perform overhead reduction of packets may be determined by signaling information tsib15010 transmitted to the link layer. The signaling information may be transferred to the overhead reduction control tsib15180 by the scheduler tsib15020.
  • the RoHC compressor tsib15140 may perform overhead reduction on the packet stream.
  • the RoHC compressor tsib15140 may perform an operation of compressing headers of packets.
  • Various methods can be used for overhead reduction. As described above, overhead reduction may be performed by the methods proposed by the present invention.
  • the present embodiment assumes an IP stream and is expressed as a RoHC compressor, the name may be changed according to the embodiment, and the operation is not limited to the compression of the IP stream, and the overhead reduction of all kinds of packets is RoHC compressor. (tsib15140).
  • the packet stream configuration block tsib15150 may separate information to be transmitted to the signaling region and information to be transmitted to the packet stream, from among the IP packets compressed with the header.
  • Information to be transmitted in the packet stream may mean information to be transmitted to the DP area.
  • Information to be transmitted to the signaling area may be delivered to the signaling and / or context control tsib15160.
  • Information to be transmitted in the packet stream may be transmitted to the encapsulation portion.
  • the signaling and / or context control tsib15160 may collect signaling and / or context information and transfer it to the signaling manager. This is to transmit signaling and / or context information to the signaling area.
  • the encapsulation portion may perform an encapsulation operation in a form suitable for delivering packets to the physical layer.
  • the encapsulation portion may be configured by the number of IP streams.
  • the encapsulation buffer tsib15170 may serve to receive a packet stream for encapsulation.
  • the overhead reduced packets may be received, and when the overhead reduction is not performed, the received IP packet may be received as it is.
  • the encapsulation control tsib15180 may determine whether to encapsulate the input packet stream. When encapsulation is performed, the packet stream may be delivered to segmentation / concatenation tsib15190. If encapsulation is not performed, the packet stream may be delivered to the transmission buffer tsib15230. Whether to perform encapsulation of packets may be determined by signaling information tsib15010 delivered to the link layer. The signaling information may be delivered to the encapsulation control tsib15180 by the scheduler tsib15020.
  • the above-described segmentation or concatenation operation may be performed on the packets. That is, when the input IP packet is longer than the link layer packet which is the output of the link layer, a plurality of link layer packet payloads may be generated by dividing one IP packet into several segments. In addition, when the input IP packet is shorter than the link layer packet that is the output of the link layer, a plurality of IP packets may be concatenated to form one link layer packet payload.
  • the packet configuration table tsib15200 may have configuration information of segmented and / or concatenated link layer packets.
  • the information in the packet configuration table tsib15200 may have the same information between the transmitter and the receiver.
  • Information in the packet configuration table tsib15200 may be referenced by the transmitter and the receiver.
  • the index value of the information in the packet configuration table tsib15200 may be included in the header of the link layer packet.

Abstract

본 발명은 방송 신호를 전송하는 방법을 제안한다. 본 발명에 따른 방송 신호를 전송하는 방법은, 지상파 방송망과 인터넷 망을 사용하는 차세대 하이브리드 방송을 지원하는 환경에서 차세대 방송 서비스를 지원할 수 있는 시스템을 제안한다. 또한, 차세대 하이브리드 방송을 지원하는 환경에서, 지상파 방송망과 인터넷 망을 모두 아우를 수 있는 효율적인 시그널링 방안을 제안한다.

Description

방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
본 발명은 방송 신호 송신 장치, 방송 신호 수신 장치, 및 방송 신호 송수신 방법에 관한 것이다.
아날로그 방송 신호 송신이 종료됨에 따라, 디지털 방송 신호를 송수신하기 위한 다양한 기술이 개발되고 있다. 디지털 방송 신호는 아날로그 방송 신호에 비해 더 많은 양의 비디오/오디오 데이터를 포함할 수 있고, 비디오/오디오 데이터뿐만 아니라 다양한 종류의 부가 데이터를 더 포함할 수 있다.
즉, 디지털 방송 시스템은 HD(High Definition) 이미지, 멀티채널(multi channel, 다채널) 오디오, 및 다양한 부가 서비스를 제공할 수 있다. 그러나, 디지털 방송을 위해서는, 많은 양의 데이터 전송에 대한 데이터 전송 효율, 송수신 네트워크의 견고성(robustness), 및 모바일 수신 장치를 고려한 네트워크 유연성(flexibility)이 향상되어야 한다.
본 발명의 목적에 따라, 여기에 포함되고 대략적으로 기재된 바와 같이, 본 발명은 지상파 방송망과 인터넷 망을 사용하는 차세대 하이브리드 방송을 지원하는 환경에서 차세대 방송 서비스를 효과적으로 지원할 수 있는 시스템 및 관련된 시그널링 방안을 제안한다.
본 발명은 서비스 특성에 따라 데이터를 처리하여 각 서비스 또는 서비스 컴포넌트에 대한 QoS (Quality of Service)를 제어함으로써 다양한 방송 서비스를 제공할 수 있다.
본 발명은 동일한 RF (radio frequency) 신호 대역폭을 통해 다양한 방송 서비스를 전송함으로써 전송 유연성(flexibility)을 달성할 수 있다.
본 발명에 따르면, 모바일 수신 장치를 사용하거나 실내 환경에 있더라도, 에러 없이 디지털 방송 신호를 수신할 수 있는 방송 신호 송신 및 수신 방법 및 장치를 제공할 수 있다.
본 발명은 지상파 방송망과 인터넷 망을 사용하는 차세대 하이브리드 방송을 지원하는 환경에서 차세대 방송 서비스를 효과적으로 지원할 수 있다.
본 발명에 대해 더욱 이해하기 위해 포함되며 본 출원에 포함되고 그 일부를 구성하는 첨부된 도면은 본 발명의 원리를 설명하는 상세한 설명과 함께 본 발명의 실시예를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치의 구조를 나타낸다.
도 2는 본 발명의 일 실시예에 따른 인풋 포맷팅(Input formatting, 입력 포맷) 블록을 나타낸다.
도 3은 본 발명의 다른 일 실시예에 따른 인풋 포맷팅(Input formatting, 입력 포맷) 블록을 나타낸다.
도 4는 본 발명의 일 실시예에 따른 BICM (bit interleaved coding & modulation) 블록을 나타낸다.
도 5는 본 발명의 다른 일 실시예에 따른 BICM 블록을 나타낸다.
도 6은 본 발명의 일 실시예에 따른 프레임 빌딩(Frame Building, 프레임 생성) 블록을 나타낸다.
도 7은 본 발명의 일 실시예에 따른 OFDM (orthogonal frequency division multiplexing) 제너레이션(generation, 생성) 블록을 나타낸다.
도 8은 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치의 구조를 나타낸다.
도 9는 본 발명의 일 실시예에 따른 프레임 구조를 나타낸다.
도 10은 본 발명의 일 실시예에 따른 프레임의 시그널링 계층 구조를 나타낸다.
도 11은 본 발명의 일 실시예에 따른 프리앰블 시그널링 데이터를 나타낸다.
도 12는 본 발명의 일 실시예에 따른 PLS1 데이터를 나타낸다.
도 13은 본 발명의 일 실시예에 따른 PLS2 데이터를 나타낸다.
도 14는 본 발명의 다른 일 실시예에 따른 PLS2 데이터를 나타낸다.
도 15는 본 발명의 일 실시예에 따른 프레임의 로지컬(logical, 논리) 구조를 나타낸다.
도 16은 본 발명의 일 실시예에 따른 PLS (physical layer signalling) 매핑을 나타낸다.
도 17은 본 발명의 일 실시예에 따른 EAC (emergency alert channel) 매핑을 나타낸다.
도 18은 본 발명의 일 실시예에 따른 FIC (fast information channel) 매핑을 나타낸다.
도 19는 본 발명의 일 실시예에 따른 FEC (forward error correction) 구조를 나타낸다.
도 20은 본 발명의 일 실시예에 따른 타임 인터리빙을 나타낸다.
도 21은 본 발명의 일 실시예에 따른 트위스트된 행-열 블록 인터리버의 기본 동작을 나타낸다.
도 22는 본 발명의 다른 일 실시예에 따른 트위스트된 행-열 블록 인터리버의 동작을 나타낸다.
도 23은 본 발명의 일 실시예에 따른 트위스트된 행-열 블록 인터리버의 대각선 방향 읽기 패턴을 나타낸다.
도 24는 본 발명의 일 실시예에 따른 각 인터리빙 어레이(array)로부터 인터리빙된 XFECBLOCK을 나타낸다.
도 25 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디 인터리빙을 위한 시그널링을 도시한 도면이다.
도 26 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디 인터리빙을 위한 시그널링에 있어서, FSS 를 위한 FI 스킴들을 도시한 도면이다.
도 27 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디 인터리빙을 위한 시그널링에 있어서, FES 를 위한 리셋 모드의 동작을 도시한 도면이다.
도 28 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 주파수 인터리버의 입력과 출력을 수학식으로 표시한 도면이다.
도 29 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, FI 스킴 #1 및 FI 스킴 #2 에 따른 주파수 인터리빙의 논리적 동작 매커니즘의 수학식을 나타낸다.
도 30 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 짝수인 경우의 실시예를 도시한 도면이다.
도 31 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 짝수인 경우의 실시예를 도시한 도면이다.
도 32 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 홀수인 경우의 실시예를 도시한 도면이다.
도 33 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 홀수인 경우의 실시예를 도시한 도면이다.
도 34 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 주파수 디인터리버의 동작을 도시한 도면이다.
도 35는 본 발명의 다른 실시예에 따른 variable data-rate 시스템을 나타낸 개념도이다.
도 36은 본 발명의 블록 인터리빙의 라이팅(writing) 및 리딩 (reading) 오퍼레이션의 일 실시예를 나타낸다. 이에 대한 구체적인 내용은 전술하였다.
도 37은 본 발명의 일 실시예에 따른 블록 인터리빙을 나타낸 수학식이다.
도 38는 본 발명의 일 실시예에 따른 버츄얼 (virtual) FEC 블록들을 나타낸 도면이다.
도 39은 본 발명의 일 실시예에 따른 버츄얼 (virtual) FEC 블록들이 삽입된 이후 리딩 (reading) 동작을 나타낸 수학식이다.
도 40는 본 발명의 일 실시예에 따른 타임 인터리빙의 프로세스를 나타낸 순서도이다.
도 41은 본 발명의 일 실시예에 따른 시프트 밸류 및 맥시멈 TI 블록의 크기를 결정하는 과정을 나타낸 수학식이다.
도 42은 본 발명의 일 실시예에 따른 라이팅 (writing) 오퍼레이션을 나타낸다.
도 43은 본 발명의 일 실시예에 따른 리딩 (reading) 오퍼레이션을 나타낸다.
도 44은 본 발명의 일 실시예에 따른 리딩 (reading) 오퍼레이션에서 스킵 오퍼레이션이 수행된 결과를 나타낸다.
도 45는 본 발명의 일 실시예에 따른 타임 디인터리빙의 라이팅 (writing) 과정을 나타낸다.
도 46는 본 발명의 다른 실시예에 따른 타임 디인터리빙의 라이팅 (writing) 과정을 나타낸다.
도 47은 본 발명의 다른 실시예에 따른 타임 디인터리빙의 리딩 (reading) 오퍼레이션을 나타내는 수학식이다.
도 48은 본 발명의 일 실시예에 따른 타임 디인터리빙의 프로세스를 나타낸 순서도이다.
도 49 은 본 발명의 일 실시예에 따른 수신기 프로토콜 스택(receiver protocol stack) 을 도시한 도면이다.
도 50 는 본 발명의 일 실시예에 따른 SLT 와 SLS (service layer signaling) 의 관계를 도시한 도면이다.
도 51 은 본 발명의 일 실시예에 따른 SLT 를 도시한 도면이다.
도 52 는 본 발명의 일 실시예에 따른 SLS 부트스트래핑과 서비스 디스커버리 과정을 도시한 도면이다.
도 53 는 본 발명의 일 실시예에 따른 ROUTE/DASH 를 위한 USBD 프래그먼트를 도시한 도면이다.
도 54 은 본 발명의 일 실시예에 따른 ROUTE/DASH 를 위한 S-TSID 프래그먼트를 도시한 도면이다.
도 55 은 본 발명의 일 실시예에 따른 MMT 를 위한 USBD/USD 프래그먼트를 도시한 도면이다.
도 56 은 본 발명의 일 실시예에 따른 링크 레이어 프로토콜 아키텍쳐를 도시한 도면이다.
도 57 는 본 발명의 일 실시예에 따른 링크 레이어 패킷의 베이스 헤더 구조를 도시한 도면이다.
도 58 은 본 발명의 일 실시예에 따른 링크 레이어 패킷의 추가 헤더 구조를 도시한 도면이다.
도 59 은 본 발명의 다른 실시예에 따른 링크 레이어 패킷의 추가 헤더 구조를 도시한 도면이다.
도 60 은 본 발명의 일 실시예에 따른, MPEG-2 TS 패킷을 위한 링크 레이어 패킷의 헤더 구조와, 그 인캡슐레이션 과정을 도시한 도면이다.
도 61 는 본 발명의 일 실시예에 따른 IP 헤더 압축에 있어서, 어댑테이션 모드들의 실시예를 도시한 도면이다(송신측).
도 62 은 본 발명의 일 실시예에 따른 LMT(Link Mapping Table) 및 ROHC-U 디스크립션 테이블을 도시한 도면이다.
도 63 은 본 발명의 일 실시예에 따른 송신기 측의 링크 레이어 구조를 도시한 도면이다.
도 64 는 본 발명의 일 실시예에 따른 수신기 측의 링크 레이어 구조를 도시한 도면이다.
도 65 은 본 발명의 일 실시예에 따른, 링크 레이어를 통한 시그널링 전송 구조를 도시한 도면이다(송/수신측).
도 66은 본 발명의 실시예에 따른 차세대 방송 시스템을 위한 프로토콜 스택을 나타내는 도면이다.
도 67은 본 발명의 일 실시예에 따른, 차세대 방송 시스템의 수신기를 나타낸 도면이다.
도 68은 본 발명의 일 실시예에 따른, 방송망의 전송 스트림과 인터넷망 (이종망) 의 전송 스트림 사이의 동기화를 위한 타임라인 컴포넌트(Timeline component)를 나타낸 도면이다.
도 69은 본 발명의 일 실시예에 따른 방송 전송 프레임을 보여준다.
도 70는 본 발명의 또 다른 실시예에 따른 방송 전송 프레임을 보여준다.
도 71은 본 발명의 일 실시예에 따른 방송 서비스를 전송하는 전송 패킷의 구조를 보여준다.
도 72는 본 발명의 일 실시예에 따른 방송 서비스를 전송하는 전송 패킷이 포함하는 network_protocol 필드가 가질 수 있는 값을 보여준다.
도 73은 본 발명의 일 실시예에 따른 방송 서비스 시그널링 테이블과 방송 서비스 전송 경로 시그널링 정보가 방송 서비스와 방송 서비스 전송 경로를 시그널링하는 것을 보여준다.
도 74은 본 발명의 일 실시예에 따른 방송 서비스 시그널링 테이블을 보여준다.
도 75는 본 발명의 일 실시예에 따른 방송 서비스 시그널링 테이블이 포함하는 service_category 필드가 가질 수 있는 값을 보여준다.
도 76은 본 발명의 또 다른 실시예에 따른 방송 서비스 시그널링 테이블을 보여준다.
도 77은 본 발명의 일 실시예에 따른 스트림 식별자 디스크립터를 보여준다.
도 78는 본 발명의 일 실시예에 따른 방송 전송 장치가 방송 방송 패킷을 전송하는 동작을 보여준다.
도 79은 본 발명의 일 실시예에 따른 방송 수신 장치가 방송 패킷을 수신하는 동작을 보여준다.
도 80은 본 발명의 실시 예에 따른 패킷 구성을 보여준다.
도 81은 본 발명의 실시 예에 따른 RTP(Real-time Transport Protocol) 패킷의 구조를 보여준다.
도 82는 본 발명의 일 실시 예에 따른 ISO base media file format(이하 ISO BMFF)를 기반으로 하는 미디어 파일 포맷을 나타낸다.
도 83은 본 발명의 일 실시 예에 따른 패킷 페이로드의 페이로드 헤더의 구성을 나타낸다.
도 84 내지 도 85는 하나의 패킷에 하나의 미디어 데이터가 패킷타이킹된 전송 패킷 의 페이로드 구성을 나타낸다.
도 86 내지 도 87은 하나의 패킷에 복수의 서로 다른 미디어 데이터가 패킷타이징된 전송 패킷의 구성을 나타낸다.
도 88는 하나의 미디어 데이터가 복수의 전송 패킷에 나뉘어 패킹타이징된 전송 패킷(이하 프래그멘티드 패킷(Fragmented packet))의 페이로드 구성을 나타낸다.
도 89는 프래그멘티드 패킷 의 페이로드의 구성의 또 다른 실시 예를 나타낸다.
도 90는 본 발명의 일 실시 예에서 방송 전송 장치가 ISO BMFF 기반 미디어 파일을 프레그멘테이션하여 복수개의 패킷들로 나누는 것을 나타낸다.
도 91는 도 90의 방송 전송 장치가 패킷타이징한 제1 프래그멘테이션 유닛 데이터의 구체적인 실시 예를 나타낸다.
도 92 내지 도 94은 프래그멘테이션 유닛 데이터 중 시작데이터를 제외한 나머지 데이터를 포함하는 프래그멘테이션 유닛의 일 실시 예를 나타낸다.
도 95는 본 발명의 일 실시예에 따른 메타데이터의 타임라인 시그널링 테이블을 보여준다.
도 96은 전송 패킷의 페이로드 데이터에 하나의 메타데이터가 패킷타이징된 페이로드 데이터의 구성을 나타낸다.
도 97은 전송 패킷의 페이로드 데이터가 타임라인에 대한 메타데이터를 포함하는 경우의 일 실시 예를 나타낸다.
도 98는 하나의 전송 패킷에 다수의 메타데이터가 패킷타이징된 경우를 나타낸다.
도 99은 하나의 전송 패킷이 여러 개의 타임라인 정보를 포함하는 경우를 나타낸다.
도 100는 하나의 메타데이터를 복수개의 전송 패킷에 나누어 패킷타이징한 패킷 페이로드를 나타낸다.
도 101는 메타데이터 프래그먼트 헤더의 또 다른 실시 예를 나타낸다.
도 102은 본 발명의 일 실시예에 따른 방송 수신 장치가 방송 패킷을 수신하는 동작을 보여준다.
도 103은 방송망으로는 RTP 프로토콜을 이용하여 비디오 스트림을 전송하고 인터넷망을 통해서는 파일 포맷 기반의 미디어 데이터를 이용하여 비디오 스트림을 전송하는 경우를 나타낸다.
도 104은 본 발명의 일 실시 예에 따른 전송 패킷의 구성을 나타낸다.
도 105는 본 발명의 일 실시 예에 따른 패킷 헤더의 구성을 나타낸다.
도 106 내지 도 107은 시간 정보를 포함하는 확장된 헤더의 구성을 나타낸다.
도 108 내지 도 111은 본 발명의 또 다른 일 실시 예에 따른 확장된 헤더의 구성을 나타낸다.
도 112은 본 발명의 일 실시 예에 따른, 다른 타이밍 정보와의 매핑을 지원하기 위한 확장된 헤더의 구조를 나타낸다.
도 113은 본 발명의 일 실시 예에 따른 방송 전송 장치의 동작 방법을 나타낸다.
도 114는 본 발명의 일 실시 예에 따른 방송 수신 장치의 동작 방법을 나타낸다.
도 115은 전송 패킷의 구성에 대한 정보를 포함하는 패킷 헤더의 구조를 나타낸다.
도 116은 도 115에서 설명한 전송 패킷의 구성을 나타내는 도면이다.
도 117는 본 발명의 일 실시 예에 따른 방송 전송 장치의 동작 방법을 나타낸다.
도 118은 본 발명의 일 실시 예에 따른 방송 수신 장치의 동작 방법을 나타낸다.
도 119는 본 발명의 일 실시예에 따른 하이브리드 방송 수신 장치를 나타낸 도면이다.
도 120는 본 발명의 일 실시예에 따른 하이브리드 방송 수신기의 블록도를 나타낸 도면이다.
도 121은 본 발명의 일 실시예에 따른 차세대 하이브리드 방송 시스템의 프로토콜 스택을 나타낸다.
도 122은 본 발명의 일 실시예에 따른 차세대 방송 전송 시스템의 physical layer 에 전달되는 전송 프레임의 구조를 나타낸다.
도 123 은 본 발명의 일 실시예에 따른 제 1 패킷 구조를 도시한 도면이다.
도 124 은 본 발명의 다른 실시예에 따른 제 1 패킷 구조를 도시한 도면이다.
도 125 는 본 발명의 또 다른 실시예에 따른 제 1 패킷 구조를 도시한 도면이다.
도 126 은 본 발명의 또 다른 실시예에 따른 제 1 패킷의 페이로드 구조들을 도시한 도면이다.
도 127 는 본 발명의 일 실시예에 따른 제 2 패킷의 헤더 구조 및 페이로드 헤더 구조를 도시한 도면이다.
도 128 는 본 발명의 다른 실시예에 따른 제 2 패킷의 헤더 구조들을 도시한 도면이다.
도 129 은 본 발명의 또 다른 실시예에 따른 제 2 패킷의 확장헤더(Header Extension) 구조들을 도시한 도면이다.
도 130 은 본 발명의 일 실시예에 따른, 제 1 패킷 또는 제 2 패킷이 전송되는 과정을 도시한 도면이다.
도 131 은 본 발명의 일 실시예에 따른 방송 신호를 전송하는 방법을 도시한 도면이다.
도 132 는 본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치를 도시한 도면이다.
도 133는 PLP 개수에 따라 적용하는 인터리빙 타입을 표로 도시한 도면이다.
도 134은 상술한 하이브리드 타임 인터리버 구조의 제 1 실시예를 포함하는 블록도이다.
도 135은 상술한 하이브리드 타임 인터리버 구조의 제 2 실시예를 포함하는 블록도이다.
도 136는 하이브리드 타임 디인터리버의 구조의 제 1 실시예를 포함하는 블록도이다.
도 137은 하이브리드 타임 디인터리버의 구조의 제 2 실시예를 포함하는 블록도이다.
본 발명의 바람직한 실시예에 대해 구체적으로 설명하며, 그 예는 첨부된 도면에 나타낸다. 첨부된 도면을 참조한 아래의 상세한 설명은 본 발명의 실시예에 따라 구현될 수 있는 실시예만을 나타내기보다는 본 발명의 바람직한 실시예를 설명하기 위한 것이다. 다음의 상세한 설명은 본 발명에 대한 철저한 이해를 제공하기 위해 세부 사항을 포함한다. 그러나 본 발명이 이러한 세부 사항 없이 실행될 수 있다는 것은 당업자에게 자명하다.
본 발명에서 사용되는 대부분의 용어는 해당 분야에서 널리 사용되는 일반적인 것들에서 선택되지만, 일부 용어는 출원인에 의해 임의로 선택되며 그 의미는 필요에 따라 다음 설명에서 자세히 서술한다. 따라서 본 발명은 용어의 단순한 명칭이나 의미가 아닌 용어의 의도된 의미에 근거하여 이해되어야 한다.
본 발명은 차세대 방송 서비스에 대한 방송 신호 송신 및 수신 장치 및 방법을 제공한다. 본 발명의 일 실시예에 따른 차세대 방송 서비스는 지상파 방송 서비스, 모바일 방송 서비스, UHDTV 서비스 등을 포함한다. 본 발명은 일 실시예에 따라 비-MIMO (non-Multiple Input Multiple Output) 또는 MIMO 방식을 통해 차세대 방송 서비스에 대한 방송 신호를 처리할 수 있다. 본 발명의 일 실시예에 따른 비-MIMO 방식은 MISO (Multiple Input Single Output) 방식, SISO (Single Input Single Output) 방식 등을 포함할 수 있다.
이하에서는 설명의 편의를 위해 MISO 또는 MIMO 방식은 두 개의 안테나를 사용하지만, 본 발명은 두 개 이상의 안테나를 사용하는 시스템에 적용될 수 있다. 본 발명은 특정 용도에 요구되는 성능을 달성하면서 수신기 복잡도를 최소화하기 위해 최적화된 세 개의 피지컬 프로파일(PHY profile) (베이스(base), 핸드헬드(handheld), 어드벤스(advanced) 프로파일)을 정의할 수 있다. 피지컬 프로파일은 해당하는 수신기가 구현해야 하는 모든 구조의 서브셋이다.
세 개의 피지컬 프로파일은 대부분의 기능 블록을 공유하지만, 특정 블록 및/또는 파라미터에서는 약간 다르다. 추후에 추가로 피지컬 프로파일이 정의될 수 있다. 시스템 발전을 위해, 퓨처 프로파일은 FEF (future extension frame)을 통해 단일 RF (radio frequency) 채널에 존재하는 프로파일과 멀티플렉싱 될 수도 있다. 각 피지컬 프로파일에 대한 자세한 내용은 후술한다.
1. 베이스 프로파일
베이스 프로파일은 주로 루프 톱(roof-top) 안테나와 연결되는 고정된 수신 장치의 주된 용도를 나타낸다. 베이스 프로파일은 어떤 장소로 이동될 수 있지만 비교적 정지된 수신 범주에 속하는 휴대용 장치도 포함할 수 있다. 베이스 프로파일의 용도는 약간의 개선된 실행에 의해 핸드헬드 장치 또는 차량용으로 확장될 수 있지만, 이러한 사용 용도는 베이스 프로파일 수신기 동작에서는 기대되지 않는다.
수신의 타겟 신호 대 잡음비 범위는 대략 10 내지 20 dB인데, 이는 기존 방송 시스템(예를 들면, ATSC A/53)의 15 dB 신호 대 잡음비 수신 능력을 포함한다. 수신기 복잡도 및 소비 전력은 핸드헬드 프로파일을 사용할 배터리로 구동되는 핸드헬드 장치에서만큼 중요하지 않다. 베이스 프로파일에 대한 중요 시스템 파라미터가 아래 표 1에 기재되어 있다.
Figure PCTKR2015014172-appb-T000001
2. 핸드헬드 프로파일
핸드헬드 프로파일은 배터리 전원으로 구동되는 핸드헬드 및 차량용 장치에서의 사용을 위해 설계된다. 해당 장치는 보행자 또는 차량 속도로 이동할 수 있다. 수신기 복잡도뿐만 아니라 소비 전력은 핸드헬드 프로파일의 장치의 구현을 위해 매우 중요하다. 핸드헬드 프로파일의 타겟 신호 대 잡음비 범위는 대략 0 내지 10 dB이지만, 더 낮은 실내 수신을 위해 의도된 경우 0 dB 아래에 달하도록 설정될 수 있다.
저 신호 대 잡음비 능력뿐만 아니라, 수신기 이동성에 의해 나타난 도플러 효과에 대한 복원력은 핸드헬드 프로파일의 가장 중요한 성능 속성이다. 핸드헬드 프로파일에 대한 중요 시스템 파라미터가 아래 표 2에 기재되어 있다.
Figure PCTKR2015014172-appb-T000002
3. 어드벤스 프로파일
어드벤스 프로파일은 더 큰 실행 복잡도에 대한 대가로 더 높은 채널 능력을 제공한다. 해당 프로파일은 MIMO 송신 및 수신을 사용할 것을 요구하며, UHDTV 서비스는 타겟 용도이고, 이를 위해 해당 프로파일이 특별히 설계된다. 향상된 능력은 주어진 대역폭에서 서비스 수의 증가, 예를 들면, 다수의 SDTV 또는 HDTV 서비스를 허용하는 데도 사용될 수 있다.
어드벤스 프로파일의 타겟 신호 대 잡음비 범위는 대략 20 내지 30 dB이다. MIMO 전송은 초기에는 기존의 타원 분극 전송 장비를 사용하고, 추후에 전출력 교차 분극 전송으로 확장될 수 있다. 어드벤스 프로파일에 대한 중요 시스템 파라미터가 아래 표 3에 기재되어 있다.
Figure PCTKR2015014172-appb-T000003
이 경우, 베이스 프로파일은 지상파 방송 서비스 및 모바일 방송 서비스 모두에 대한 프로파일로 사용될 수 있다. 즉, 베이스 프로파일은 모바일 프로파일을 포함하는 프로파일의 개념을 정의하기 위해 사용될 수 있다. 또한, 어드벤스 프로파일은 MIMO을 갖는 베이스 프로파일에 대한 어드벤스 프로파일 및 MIMO을 갖는 핸드헬드 프로파일에 대한 어드벤스 프로파일로 구분될 수 있다. 그리고 해당 세 프로파일은 설계자의 의도에 따라 변경될 수 있다.
다음의 용어 및 정의는 본 발명에 적용될 수 있다. 다음의 용어 및 정의는 설계에 따라 변경될 수 있다.
보조 스트림: 퓨처 익스텐션(future extension, 추후 확장) 또는 방송사나 네트워크 운영자에 의해 요구됨에 따라 사용될 수 있는 아직 정의되지 않은 변조 및 코딩의 데이터를 전달하는 셀의 시퀀스
베이스 데이터 파이프(base data pipe): 서비스 시그널링 데이터를 전달하는 데이터 파이프
베이스밴드 프레임 (또는 BBFRAME): 하나의 FEC 인코딩 과정 (BCH 및 LDPC 인코딩)에 대한 입력을 형성하는 Kbch 비트의 집합
셀(cell): OFDM 전송의 하나의 캐리어에 의해 전달되는 변조값
코딩 블록(coded block): PLS1 데이터의 LDPC 인코딩된 블록 또는 PLS2 데이터의 LDPC 인코딩된 블록들 중 하나
데이터 파이프(data pipe): 하나 또는 다수의 서비스 또는 서비스 컴포넌트를 전달할 수 있는 서비스 데이터 또는 관련된 메타데이터를 전달하는 물리 계층(physical layer)에서의 로지컬 채널
데이터 파이프 유닛(DPU, data pipe unit): 데이터 셀을 프레임에서의 데이터 파이프에 할당할 수 있는 기본 유닛
데이터 심볼(data symbol): 프리앰블 심볼이 아닌 프레임에서의 OFDM 심볼 (프레임 시그널링 심볼 및 프레임 엣지(edge) 심볼은 데이터 심볼에 포함된다.)
DP_ID: 해당 8비트 필드는 SYSTEM_ID에 의해 식별된 시스템 내에서 데이터 파이프를 유일하게 식별한다.
더미 셀(dummy cell): PLS (physical layer signalling) 시그널링, 데이터 파이프, 또는 보조 스트림을 위해 사용되지 않은 남아 있는 용량을 채우는 데 사용되는 의사 랜덤값을 전달하는 셀
FAC (emergency alert channel, 비상 경보 채널): EAS 정보 데이터를 전달하는 프레임 중 일부
프레임(frame): 프리앰블로 시작해서 프레임 엣지 심볼로 종료되는 물리 계층(physical layer) 타임 슬롯
프레임 리피티션 유닛(frame repetition unit, 프레임 반복 단위): 슈퍼 프레임(super-frame)에서 8회 반복되는 FEF를 포함하는 동일한 또는 다른 피지컬 프로파일에 속하는 프레임의 집합
FIC (fast information channel, 고속 정보 채널): 서비스와 해당 베이스 데이터 파이프 사이에서의 매핑 정보를 전달하는 프레임에서 로지컬 채널
FECBLOCK: 데이터 파이프 데이터의 LDPC 인코딩된 비트의 집합
FFT 사이즈: 기본 주기 T의 사이클로 표현된 액티브 심볼 주기 Ts와 동일한 특정 모드에 사용되는 명목상의 FFT 사이즈
프레임 시그널링 심볼(frame signaling symbol): PLS 데이터의 일부를 전달하는, FFT 사이즈, 가드 인터벌(guard interval), 및 스캐터(scattered) 파일럿 패턴의 특정 조합에서 프레임의 시작에서 사용되는 더 높은 파일럿 밀도를 갖는 OFDM 심볼
프레임 엣지 심볼(frame edge symbol): FFT 사이즈, 가드 인터벌, 및 스캐터 파일럿 패턴의 특정 조합에서 프레임의 끝에서 사용되는 더 높은 파일럿 밀도를 갖는 OFDM 심볼
프레임 그룹(frame-group): 슈퍼 프레임에서 동일한 피지컬 프로파일 타입을 갖는 모든 프레임의 집합
퓨쳐 익스텐션 프레임(future extention frame, 추후 확장 프레임): 프리앰블로 시작하는, 추후 확장에 사용될 수 있는 슈퍼 프레임 내에서 물리 계층(physical layer) 타임 슬롯
퓨처캐스트(futurecast) UTB 시스템: 입력이 하나 이상의 MPEG2-TS 또는 IP (Internet protocol) 또는 일반 스트림이고 출력이 RF 시그널인 제안된 물리 계층(physical layer) 방송 시스템
인풋 스트림(input stream, 입력 스트림): 시스템에 의해 최종 사용자에게 전달되는 서비스의 조화(ensemble)를 위한 데이터의 스트림
노멀(normal) 데이터 심볼: 프레임 시그널링 심볼 및 프레임 엣지 심볼을 제외한 데이터 심볼
피지컬 프로파일(PHY profile): 해당하는 수신기가 구현해야 하는 모든 구조의 서브셋
PLS: PLS1 및 PLS2로 구성된 물리 계층(physical layer) 시그널링 데이터
PLS1: PLS2를 디코딩하는 데 필요한 파라미터뿐만 아니라 시스템에 관한 기본 정보를 전달하는 고정된 사이즈, 코딩, 변조를 갖는 FSS (frame signalling symbol)로 전달되는 PLS 데이터의 첫 번째 집합
NOTE: PLS1 데이터는 프레임 그룹의 듀레이션(duration) 동안 일정하다.
PLS2: 데이터 파이프 및 시스템에 관한 더욱 상세한 PLS 데이터를 전달하는 FSS로 전송되는 PLS 데이터의 두 번째 집합
PLS2 다이나믹(dynamic, 동적) 데이터: 프레임마다 다이나믹(dynamic, 동적)으로 변화하는 PLS2 데이터
PLS2 스태틱(static, 정적) 데이터: 프레임 그룹의 듀레이션 동안 스태틱(static, 정적)인 PLS2 데이터
프리앰블 시그널링 데이터(preamble signaling data): 프리앰블 심볼에 의해 전달되고 시스템의 기본 모드를 확인하는 데 사용되는 시그널링 데이터
프리앰블 심볼(preamble symbol): 기본 PLS 데이터를 전달하고 프레임의 시작에 위치하는 고정된 길이의 파일럿 심볼
NOTE: 프리앰블 심볼은 시스템 신호, 그 타이밍, 주파수 오프셋, 및 FFT 사이즈를 검출하기 위해 고속 초기 밴드 스캔에 주로 사용된다.
추후 사용(future use)을 위해 리저브드(reserved): 현재 문서에서 정의되지 않지만 추후에 정의될 수 있음
슈퍼 프레임(superframe): 8개의 프레임 반복 단위의 집합
타임 인터리빙 블록(time interleaving block, TI block): 타임 인터리버 메모리의 하나의 용도에 해당하는, 타임 인터리빙이 실행되는 셀의 집합
타임 인터리빙 그룹(time interleaving group, TI group): 정수, 다이나믹(dynamic, 동적)으로 변화하는 XFECBLOCK의 수로 이루어진, 특정 데이터 파이프에 대한 다이나믹(dynamic, 동적) 용량 할당이 실행되는 단위
NOTE: 타임 인터리빙 그룹은 하나의 프레임에 직접 매핑되거나 다수의 프레임에 매핑될 수 있다. 타임 인터리빙 그룹은 하나 이상의 타임 인터리빙 블록을 포함할 수 있다.
타입 1 데이터 파이프(Type 1 DP): 모든 데이터 파이프가 프레임에 TDM (time division multiplexing) 방식으로 매핑되는 프레임의 데이터 파이프
타입 2 데이터 파이프(Type 2 DP): 모든 데이터 파이프가 프레임에 FDM 방식으로 매핑되는 프레임의 데이터 파이프
XFECBLOCK: 하나의 LDPC FECBLOCK의 모든 비트를 전달하는 Ncells 셀들의 집합
도 1은 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치의 구조를 나타낸다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치는 인풋 포맷 블록 (Input Format block) (1000), BICM (bit interleaved coding & modulation) 블록(1010), 프레임 빌딩 블록 (Frame building block) (1020), OFDM (orthogonal frequency division multiplexing) 제너레이션 블록 (OFDM generation block)(1030), 및 시그널링 생성 블록(1040)을 포함할 수 있다. 방송 신호 송신 장치의 각 블록의 동작에 대해 설명한다.
IP 스트림/패킷 및 MPEG2-TS은 주요 입력 포맷이고, 다른 스트림 타입은 일반 스트림으로 다루어진다. 이들 데이터 입력에 추가로, 관리 정보가 입력되어 각 입력 스트림에 대한 해당 대역폭의 스케줄링 및 할당을 제어한다. 하나 또는 다수의 TS 스트림, IP 스트림 및/또는 일반 스트림 입력이 동시에 허용된다.
인풋 포맷 블록(1000)은 각각의 입력 스트림을 독립적인 코딩 및 변조가 적용되는 하나 또는 다수의 데이터 파이프로 디멀티플렉싱 할 수 있다. 데이터 파이프는 견고성(robustness) 제어를 위한 기본 단위이며, 이는 QoS (Quality of Service)에 영향을 미친다. 하나 또는 다수의 서비스 또는 서비스 컴포넌트가 하나의 데이터 파이프에 의해 전달될 수 있다. 인풋 포맷 블록(1000)의 자세한 동작은 후술한다.
데이터 파이프는 하나 또는 다수의 서비스 또는 서비스 컴포넌트를 전달할 수 있는 서비스 데이터 또는 관련 메타데이터를 전달하는 물리 계층(physical layer)에서의 로지컬 채널이다.
또한, 데이터 파이프 유닛은 하나의 프레임에서 데이터 셀을 데이터 파이프에 할당하기 위한 기본 유닛이다.
인풋 포맷 블록(1000)에서, 패리티(parity) 데이터는 에러 정정을 위해 추가되고, 인코딩된 비트 스트림은 복소수값 컨스텔레이션 심볼에 매핑된다. 해당 심볼은 해당 데이터 파이프에 사용되는 특정 인터리빙 깊이에 걸쳐 인터리빙 된다. 어드벤스 프로파일에 있어서, BICM 블록(1010)에서 MIMO 인코딩이 실행되고 추가 데이터 경로가 MIMO 전송을 위해 출력에 추가된다. BICM 블록(1010)의 자세한 동작은 후술한다.
프레임 빌딩 블록(1020)은 하나의 프레임 내에서 입력 데이터 파이프의 데이터 셀을 OFDM 실볼로 매핑할 수 있다. 매핑 후, 주파수 영역 다이버시티를 위해, 특히 주파수 선택적 페이딩 채널을 방지하기 위해 주파수 인터리빙이 이용된다. 프레임 빌딩 블록(1020)의 자세한 동작은 후술한다.
프리앰블을 각 프레임의 시작에 삽입한 후, OFDM 제너레이션 블록(1030)은 사이클릭 프리픽스(cyclic prefix)을 가드 인터벌로 갖는 기존의 OFDM 변조를 적용할 수 있다. 안테나 스페이스 다이버시티를 위해, 분산된(distributed) MISO 방식이 송신기에 걸쳐 적용된다. 또한, PAPR (peak-to-average power ratio) 방식이 시간 영역에서 실행된다. 유연한 네트워크 방식을 위해, 해당 제안은 다양한 FFT 사이즈, 가드 인터벌 길이, 해당 파일럿 패턴의 집합을 제공한다. OFDM 제너레이션 블록(1030)의 자세한 동작은 후술한다.
시그널링 생성 블록(1040)은 각 기능 블록의 동작에 사용되는 물리 계층(physical layer) 시그널링 정보를 생성할 수 있다. 해당 시그널링 정보는 또한 관심 있는 서비스가 수신기 측에서 적절히 복구되도록 전송된다. 시그널링 생성 블록(1040)의 자세한 동작은 후술한다.
도 2, 3, 4는 본 발명의 실시예에 따른 인풋 포맷 블록(1000)을 나타낸다. 각 도면에 대해 설명한다.
도 2는 본 발명의 일 실시예에 따른 인풋 포맷 블록을 나타낸다. 도 2는 입력 신호가 단일 입력 스트림(single input stream)일 때의 인풋 포맷 블록을 나타낸다.
도 2에 도시된 인풋 포맷 블록은 도 1을 참조하여 설명한 인풋 포맷 블록(1000)의 일 실시예에 해당한다.
물리 계층(physical layer)으로의 입력은 하나 또는 다수의 데이터 스트림으로 구성될 수 있다. 각각의 데이터 스트림은 하나의 데이터 파이프에 의해 전달된다. 모드 어댑테이션(mode adaptaion, 모드 적응) 모듈은 입력되는 데이터 스트림을 BBF (baseband frame)의 데이터 필드로 슬라이스한다. 해당 시스템은 세 가지 종류의 입력 데이터 스트림, 즉 MPEG2-TS, IP, GS (generic stream)을 지원한다. MPEG2-TS는 첫 번째 바이트가 동기 바이트(0x47)인 고정된 길이(188 바이트)의 패킷을 특징으로 한다. IP 스트림은 IP 패킷 헤더 내에서 시그널링 되는 가변 길이 IP 데이터그램 패킷으로 구성된다. 해당 시스템은 IP 스트림에 대해 IPv4와 IPv6을 모두 지원한다. GS는 캡슐화 패킷 헤더 내에서 시그널링되는 가변 길이 패킷 또는 일정 길이 패킷으로 구성될 수 있다.
(a)는 신호 데이터 파이프에 대한 모드 어댑테이션(mode adaptaion, 모드 적응) 블록(2000) 및 스트림 어댑테이션(stream adaptation, 스트림 적응)(2010)을 나타내고, (b)는 PLS 데이터를 생성 및 처리하기 위한 PLS 생성 블록(2020) 및 PLS 스크램블러(2030)를 나타낸다. 각 블록의 동작에 대해 설명한다.
입력 스트림 스플리터는 입력된 TS, IP, GS 스트림을 다수의 서비스 또는 서비스 컴포넌트(오디오, 비디오 등) 스트림으로 분할한다. 모드 어댑테이션(mode adaptaion, 모드 적응) 모듈(2010)은 CRC 인코더, BB (baseband) 프레임 슬라이서, 및 BB 프레임 헤더 삽입 블록으로 구성된다.
CRC 인코더는 유저 패킷 (user packet, UP)레벨에서의 에러 검출을 위한 세 종류의 CRC 인코딩, 즉 CRC-8, CRC-16, CRC-32를 제공한다. 산출된 CRC 바이트는 UP 뒤에 첨부된다. CRC-8은 TS 스트림에 사용되고, CRC-32는 IP 스트림에 사용된다. GS 스트림이 CRC 인코딩을 제공하지 않으면, 제안된 CRC 인코딩이 적용되어야 한다.
BB 프레임 슬라이서는 입력을 내부 로지컬 비트 포맷에 매핑한다. 첫 번째 수신 비트는 MSB라고 정의한다. BB 프레임 슬라이서는 가용 데이터 필드 용량과 동일한 수의 입력 비트를 할당한다. BBF 페이로드와 동일한 수의 입력 비트를 할당하기 위해, UP 스트림이 BBF의 데이터 필드에 맞게 슬라이스된다.
BB 프레임 헤더 삽입 블록은 2바이트의 고정된 길이의 BBF 헤더를 BB 프레임의 앞에 삽입할 수 있다. BBF 헤더는 STUFFI (1비트), SYNCD (13비트), 및 RFU (2비트)로 구성된다. 고정된 2바이트 BBF 헤더뿐만 아니라, BBF는 2바이트 BBF 헤더 끝에 확장 필드(1 또는 3바이트)를 가질 수 있다.
스트림 어댑테이션(stream adaptation, 스트림 적응)(2010)은 스터핑(stuffing) 삽입 블록 및 BB 스크램블러로 구성된다. 스터핑 삽입 블록은 스터핑 필드를 BB 프레임의 페이로드에 삽입할 수 있다. 스트림 어댑테이션(stream adaptation, 스트림 적응)에 대한 입력 데이터가 BB 프레임을 채우기에 충분하면, STUFFI는 0으로 설정되고, BBF는 스터핑 필드를 갖지 않는다. 그렇지 않으면, STUFFI는 1로 설정되고, 스터핑 필드는 BBF 헤더 직후에 삽입된다. 스터핑 필드는 2바이트의 스터핑 필드 헤더 및 가변 사이즈의 스터핑 데이터를 포함한다.
BB 스크램블러는 에너지 분산을 위해 완전한 BBF를 스크램블링한다. 스크램블링 시퀀스는 BBF와 동기화된다. 스크램블링 시퀀스는 피드백 시프트 레지스터에 의해 생성된다.
PLS 생성 블록(2020)은 PLS 데이터를 생성할 수 있다. PLS는 수신기에서 피지컬 레이어(physical layer) 데이터 파이프에 접속할 수 있는 수단을 제공한다. PLS 데이터는 PLS1 데이터 및 PLS2 데이터로 구성된다.
PLS1 데이터는 PLS2 데이터를 디코딩하는 데 필요한 파라미터뿐만 아니라 시스템에 관한 기본 정보를 전달하는 고정된 사이즈, 코딩, 변조를 갖는 프레임에서 FSS로 전달되는 PLS 데이터의 첫 번째 집합이다. PLS1 데이터는 PLS2 데이터의 수신 및 디코딩을 가능하게 하는 데 요구되는 파라미터를 포함하는 기본 송신 파라미터를 제공한다. 또한, PLS1 데이터는 프레임 그룹의 듀레이션 동안 일정하다.
PLS2 데이터는 데이터 파이프 및 시스템에 관한 더욱 상세한 PLS 데이터를 전달하는 FSS로 전송되는 PLS 데이터의 두 번째 집합이다. PLS2는 수신기가 원하는 데이터 파이프를 디코딩하는 데 충분한 정보를 제공하는 파라미터를 포함한다. PLS2 시그널링은 PLS2 스태틱(static, 정적) 데이터(PLS2-STAT 데이터) 및 PLS2 다이나믹(dynamic, 동적) 데이터(PLS2-DYN 데이터)의 두 종류의 파라미터로 더 구성된다. PLS2 스태틱(static, 정적) 데이터는 프레임 그룹의 듀레이션 동안 스태틱(static, 정적)인 PLS2 데이터이고, PLS2 다이나믹(dynamic, 동적) 데이터는 프레임마다 다이나믹(dynamic, 동적)으로 변화하는 PLS2 데이터이다.
PLS 데이터에 대한 자세한 내용은 후술한다.
PLS 스크램블러(2030)는 에너지 분산을 위해 생성된 PLS 데이터를 스크램블링 할 수 있다.
전술한 블록은 생략될 수도 있고 유사 또는 동일 기능을 갖는 블록에 의해 대체될 수도 있다.
도 3은 본 발명의 다른 일 실시예에 따른 인풋 포맷 블록을 나타낸다.
도 3에 도시된 인풋 포맷 블록은 도 1을 참조하여 설명한 인풋 포맷 블록(1000)의 일 실시예에 해당한다.
도 3은 입력 신호가 멀티 인풋 스트림(multi input stream, 다수의 입력 스트림)에 해당하는 경우 인풋 포맷 블록의 모드 어댑테이션(mode adaptaion, 모드 적응) 블록을 나타낸다.
멀티 인풋 스트림(multi input stream, 다수의 입력 스트림)을 처리하기 위한 인풋 포맷 블록의 모드 어댑테이션(mode adaptaion, 모드 적응) 블록은 다수 입력 스트림을 독립적으로 처리할 수 있다.
도 3을 참조하면, 멀티 인풋 스트림(multi input stream, 다수의 입력 스트림)을 각각 처리하기 위한 모드 어댑테이션(mode adaptaion, 모드 적응) 블록은 인풋 스트림 스플리터 (input stream splitter) (3000), 인풋 스트림 싱크로나이저 (input stream synchronizer) (3010), 컴펜세이팅 딜레이(compensatin delay, 보상 지연) 블록(3020), 널 패킷 딜리션 블록 (null packet deletion block) (3030), 헤더 컴프레션 블록 (header compression block) (3040), CRC 인코더 (CRC encoder) (3050), BB 프레임 슬라이서(BB frame slicer) (3060), 및 BB 헤더 삽입 블록 (BB header insertion block) (3070)을 포함할 수 있다. 모드 어댑테이션(mode adaptaion, 모드 적응) 블록의 각 블록에 대해 설명한다.
CRC 인코더(3050), BB 프레임 슬라이서(3060), 및 BB 헤더 삽입 블록(3070)의 동작은 도 2를 참조하여 설명한 CRC 인코더, BB 프레임 슬라이서, 및 BB 헤더 삽입 블록의 동작에 해당하므로, 그 설명은 생략한다.
인풋 스트림 스플리터(3000)는 입력된 TS, IP, GS 스트림을 다수의 서비스 또는 서비스 컴포넌트(오디오, 비디오 등) 스트림으로 분할한다.
인풋 스트림 싱크로나이저(3010)는 ISSY라 불릴 수 있다. ISSY는 어떠한 입력 데이터 포맷에 대해서도 CBR (constant bit rate) 및 일정한 종단간 전송(end-to-end transmission) 지연을 보장하는 적합한 수단을 제공할 수 있다. ISSY는 TS를 전달하는 다수의 데이터 파이프의 경우에 항상 이용되고, GS 스트림을 전달하는 다수의 데이터 파이프에 선택적으로 이용된다.
컴펜세이팅 딜레이(compensatin delay, 보상 지연) 블록(3020)은 수신기에서 추가로 메모리를 필요로 하지 않고 TS 패킷 재결합 메커니즘을 허용하기 위해 ISSY 정보의 삽입에 뒤따르는 분할된 TS 패킷 스트림을 지연시킬 수 있다.
널 패킷 딜리션 블록(3030)은 TS 입력 스트림 경우에만 사용된다. 일부 TS 입력 스트림 또는 분할된 TS 스트림은 VBR (variable bit-rate) 서비스를 CBR TS 스트림에 수용하기 위해 존재하는 많은 수의 널 패킷을 가질 수 있다. 이 경우, 불필요한 전송 오버헤드를 피하기 위해, 널 패킷은 확인되어 전송되지 않을 수 있다. 수신기에서, 제거된 널 패킷은 전송에 삽입된 DNP(deleted null-packet, 삭제된 널 패킷) 카운터를 참조하여 원래 존재했던 정확한 장소에 재삽입될 수 있어, CBR이 보장되고 타임 스탬프(PCR) 갱신의 필요가 없어진다.
헤더 컴프레션 블록(3040)은 TS 또는 IP 입력 스트림에 대한 전송 효율을 증가시키기 위해 패킷 헤더 압축을 제공할 수 있다. 수신기는 헤더의 특정 부분에 대한 선험적인(a priori) 정보를 가질 수 있기 때문에, 이 알려진 정보(known information)는 송신기에서 삭제될 수 있다.
TS에 대해, 수신기는 동기 바이트 구성(0x47) 및 패킷 길이(188 바이트)에 관한 선험적인 정보를 가질 수 있다. 입력된 TS가 하나의 PID만을 갖는 콘텐트를 전달하면, 즉, 하나의 서비스 컴포넌트(비디오, 오디오 등) 또는 서비스 서브 컴포넌트(SVC 베이스 레이어, SVC 인헨스먼트 레이어, MVC 베이스 뷰, 또는 MVC 의존 뷰)에 대해서만, TS 패킷 헤더 압축이 TS에 (선택적으로) 적용될 수 있다. TS 패킷 헤더 압축은 입력 스트림이 IP 스트림인 경우 선택적으로 사용된다. 상기 블록은 생략되거나 유사 또는 동일 기능을 갖는 블록으로 대체될 수 있다.
도 4는 본 발명의 일 실시예에 따른 BICM 블록을 나타낸다.
도 4에 도시된 BICM 블록은 도 1을 참조하여 설명한 BICM 블록(1010)의 일 실시예에 해당한다.
전술한 바와 같이, 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치는 지상파 방송 서비스, 모바일 방송 서비스, UHDTV 서비스 등을 제공할 수 있다.
QoS가 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치에 의해 제공되는 서비스의 특성에 의존하므로, 각각의 서비스에 해당하는 데이터는 서로 다른 방식을 통해 처리되어야 한다. 따라서, 본 발명의 일 실시예에 따른 BICM 블록은 SISO, MISO, MIMO 방식을 각각의 데이터 경로에 해당하는 데이터 파이프에 독립적으로 적용함으로써 각데이터 파이프를 독립적으로 처리할 수 있다. 결과적으로, 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치는 각각의 데이터 파이프를 통해 전송되는 각 서비스 또는 서비스 컴포넌트에 대한 QoS를 조절할 수 있다.
(a)는 베이스 프로파일 및 핸드헬드 프로파일에 의해 공유되는 BICM 블록을 나타내고, (b)는 어드벤스 프로파일의 BICM 블록을 나타낸다.
베이스 프로파일 및 핸드헬드 프로파일에 의해 공유되는 BICM 블록 및 어드벤스 프로파일의 BICM 블록은 각각의 데이터 파이프를 처리하기 위한 복수의 처리 블록을 포함할 수 있다.
베이스 프로파일 및 핸드헬드 프로파일에 대한 BICM 블록 및 어드벤스 프로파일에 대한 BICM 블록의 각각의 처리 블록에 대해 설명한다.
베이스 프로파일 및 핸드헬드 프로파일에 대한 BICM 블록의 처리 블록(5000)은 데이터 FEC 인코더(5010), 비트 인터리버(5020), 컨스텔레이션 매퍼(mapper)(5030), SSD (signal space diversity) 인코딩 블록(5040), 타임 인터리버(5050)를 포함할 수 있다.
데이터 FEC 인코더(5010)는 외부 코딩(BCH) 및 내부 코딩(LDPC)을 이용하여 FECBLOCK 절차를 생성하기 위해 입력 BBF에 FEC 인코딩을 실행한다. 외부 코딩(BCH)은 선택적인 코딩 방법이다. 데이터 FEC 인코더(5010)의 구체적인 동작에 대해서는 후술한다.
비트 인터리버(5020)는 효율적으로 실현 가능한 구조를 제공하면서 데이터 FEC 인코더(5010)의 출력을 인터리빙하여 LDPC 코드 및 변조 방식의 조합으로 최적화된 성능을 달성할 수 있다. 비트 인터리버(5020)의 구체적인 동작에 대해서는 후술한다.
컨스텔레이션 매퍼(5030)는 QPSK, QAM-16, 불균일 QAM (NUQ-64, NUQ-256, NUQ-1024) 또는 불균일 컨스텔레이션 (NUC-16, NUC-64, NUC-256, NUC-1024)을 이용해서 베이스 및 핸드헬드 프로파일에서 비트 인터리버(5020)로부터의 각각의 셀 워드를 변조하거나 어드벤스 프로파일에서 셀 워드 디멀티플렉서(5010-1)로부터의 셀 워드를 변조하여 파워가 정규화된 컨스텔레이션 포인트 el을 제공할 수 있다. 해당 컨스텔레이션 매핑은 데이터 파이프에 대해서만 적용된다. NUQ가 임의의 형태를 갖는 반면, QAM-16 및 NUQ는 정사각형 모양을 갖는 것이 관찰된다. 각각의 컨스텔레이션이 90도의 배수만큼 회전되면, 회전된 컨스텔레이션은 원래의 것과 정확히 겹쳐진다. 회전 대칭 특성으로 인해 실수 및 허수 컴포넌트의 용량 및 평균 파워가 서로 동일해진다. NUQ 및 NUC는 모두 각 코드 레이트(code rate)에 대해 특별히 정의되고, 사용되는 특정 하나는 PLS2 데이터에 보관된 파라미터 DP_MOD에 의해 시그널링 된다.
타임 인터리버(5050)는 데이터 파이프 레벨에서 동작할 수 있다. 타임 인터리빙의 파라미터는 각각의 데이터 파이프에 대해 다르게 설정될 수 있다. 타임 인터리버(5050)의 구체적인 동작에 관해서는 후술한다.
어드벤스 프로파일에 대한 BICM 블록의 처리 블록(5000-1)은 데이터 FEC 인코더, 비트 인터리버, 컨스텔레이션 매퍼, 및 타임 인터리버를 포함할 수 있다.
단, 처리 블록(5000-1)은 셀 워드 디멀티플렉서(5010-1) 및 MIMO 인코딩 블록(5020-1)을 더 포함한다는 점에서 처리 블록(5000)과 구별된다.
또한, 처리 블록(5000-1)에서의 데이터 FEC 인코더, 비트 인터리버, 컨스텔레이션 매퍼, 타임 인터리버의 동작은 전술한 데이터 FEC 인코더(5010), 비트 인터리버(5020), 컨스텔레이션 매퍼(5030), 타임 인터리버(5050)의 동작에 해당하므로, 그 설명은 생략한다.
셀 워드 디멀티플렉서(5010-1)는 어드벤스 프로파일의 데이터 파이프가 MIMO 처리를 위해 단일 셀 워드 스트림을 이중 셀 워드 스트림으로 분리하는 데 사용된다. 셀 워드 디멀티플렉서(5010-1)의 구체적인 동작에 관해서는 후술한다.
MIMO 인코딩 블록(5020-1)은 MIMO 인코딩 방식을 이용해서 셀 워드 디멀티플렉서(5010-1)의 출력을 처리할 수 있다. MIMO 인코딩 방식은 방송 신호 송신을 위해 최적화되었다. MIMO 기술은 용량 증가를 얻기 위한 유망한 방식이지만, 채널 특성에 의존한다. 특별히 방송에 대해서, 서로 다른 신호 전파 특성으로 인한 두 안테나 사이의 수신 신호 파워 차이 또는 채널의 강한 LOS 컴포넌트는 MIMO로부터 용량 이득을 얻는 것을 어렵게 한다. 제안된 MIMO 인코딩 방식은 MIMO 출력 신호 중 하나의 위상 랜덤화 및 회전 기반 프리코딩을 이용하여 이 문제를 극복한다.
MIMO 인코딩은 송신기 및 수신기 모두에서 적어도 두 개의 안테나를 필요로 하는 2x2 MIMO 시스템을 위해 의도된다. 두 개의 MIMO 인코딩 모드는 본 제안인 FR-SM (full-rate spatial multiplexing) 및 FRFD-SM (full-rate full-diversity spatial multiplexing)에서 정의된다. FR-SM 인코딩은 수신기 측에서의 비교적 작은 복잡도 증가로 용량 증가를 제공하는 반면, FRFD-SM 인코딩은 수신기 측에서의 큰 복잡도 증가로 용량 증가 및 추가적인 다이버시티 이득을 제공한다. 제안된 MIMO 인코딩 방식은 안테나 극성 배치를 제한하지 않는다.
MIMO 처리는 어드벤스 프로파일 프레임에 요구되는데, 이는 어드벤스 프로파일 프레임에서의 모든 데이터 파이프가 MIMO 인코더에 의해 처리된다는 것을 의미한다. MIMO 처리는 데이터 파이프 레벨에서 적용된다. 컨스텔레이션 매퍼 출력의 페어(pair, 쌍)인 NUQ (e1,i 및 e2,i)는 MIMO 인코더의 입력으로 공급된다. MIMO 인코더 출력 페어(pair, 쌍)(g1,i 및 g2,i)은 각각의 송신 안테나의 동일한 캐리어 k 및 OFDM 심볼 l에 의해 전송된다.
전술한 블록은 생략되거나 유사 또는 동일 기능을 갖는 블록으로 대체될 수 있다.
도 5는 본 발명의 다른 실시예에 따른 BICM 블록을 나타낸다.
도 5에 도시된 BICM 블록은 도 1을 참조하여 설명한 BICM 블록(1010)의 일 실시예에 해당한다.
도 5는 PLS, EAC, 및 FIC의 보호를 위한 BICM 블록을 나타낸다. EAC는 EAS 정보 데이터를 전달하는 프레임의 일부이고, FIC는 서비스와 해당하는 베이스 데이터 파이프 사이에서 매핑 정보를 전달하는 프레임에서의 로지컬 채널이다. EAC 및 FIC에 대한 상세한 설명은 후술한다.
도 5를 참조하면, PLS, EAC, 및 FIC의 보호를 위한 BICM 블록은 PLS FEC 인코더(6000), 비트 인터리버(6010), 및 컨스텔레이션 매퍼(6020)를 포함할 수 있다.
또한, PLS FEC 인코더(6000)는 스크램블러, BCH 인코딩/제로 삽입 블록, LDPC 인코딩 블록, 및 LDPC 패리티 펑처링(puncturing) 블록을 포함할 수 있다. BICM 블록의 각 블록에 대해 설명한다.
PLS FEC 인코더(6000)는 스크램블링된 PLS 1/2 데이터, EAC 및 FIC 섹션을 인코딩할 수 있다.
스크램블러는 BCH 인코딩 및 쇼트닝(shortening) 및 펑처링된 LDPC 인코딩 전에 PLS1 데이터 및 PLS2 데이터를 스크램블링 할 수 있다.
BCH 인코딩/제로 삽입 블록은 PLS 보호를 위한 쇼트닝된 BCH 코드를 이용하여 스크램블링된 PLS 1/2 데이터에 외부 인코딩을 수행하고, BCH 인코딩 후에 제로 비트를 삽입할 수 있다. PLS1 데이터에 대해서만, 제로 삽입의 출력 비트가 LDPC 인코딩 전에 퍼뮤테이션(permutation) 될 수 있다.
LDPC 인코딩 블록은 LDPC 코드를 이용하여 BCH 인코딩/제로 삽입 블록의 출력을 인코딩할 수 있다. 완전한 코딩 블록을 생성하기 위해, Cldpc 및 패리티 비트 Pldpc는 각각의 제로가 삽입된 PLS 정보 블록 Ildpc로부터 조직적으로 인코딩되고, 그 뒤에 첨부된다.
Figure PCTKR2015014172-appb-M000001
PLS1 및 PLS2에 대한 LDPC 코드 파라미터는 다음의 표 4와 같다.
Figure PCTKR2015014172-appb-T000004
LDPC 패리티 펑처링 블록은 PLS1 데이터 및 PLS2 데이터에 대해 펑처링을 수행할 수 있다.
쇼트닝이 PLS1 데이터 보호에 적용되면, 일부 LDPC 패리티 비트는 LDPC 인코딩 후에 펑처링된다. 또한, PLS2 데이터 보호를 위해, PLS2의 LDPC 패리티 비트가 LDPC 인코딩 후에 펑처링된다. 이들 펑처링된 비트는 전송되지 않는다.
비트 인터리버(6010)는 각각의 쇼트닝 및 펑처링된 PLS1 데이터 및 PLS2 데이터를 인터리빙할 수 있다.
컨스텔레이션 매퍼(6020)는 비트 인터리빙된 PLS1 데이터 및 PLS2 데이터를 컨스텔레이션에 매핑할 수 있다.
전술한 블록은 생략되거나 유사 또는 동일 기능을 갖는 블록으로 대체될 수 있다.
도 6은 본 발명의 일 실시예에 따른 프레임 빌딩 블록(frame building block)을 나타낸다.
도 7에 도시한 프레임 빌딩 블록은 도 1을 참조하여 설명한 프레임 빌딩 블록(1020)의 일 실시예에 해당한다.
도 6을 참조하면, 프레임 빌딩 블록은 딜레이 컴펜세이션(delay compensation, 지연보상) 블록(7000), 셀 매퍼 (cell mapper) (7010), 및 프리퀀시 인터리버 (frequency interleaver) (7020)를 포함할 수 있다. 프레임 빌딩 블록의 각 블록에 관해 설명한다.
딜레이 컴펜세이션(delay compensation, 지연보상) 블록(7000)은 데이터 파이프와 해당하는 PLS 데이터 사이의 타이밍을 조절하여 송신기 측에서 데이터 파이프와 해당하는 PLS 데이터 간의 동시성(co-time)을 보장할 수 있다. 인풋 포맷 블록 및 BICM 블록으로 인한 데이터 파이프의 지연을 다룸으로써 PLS 데이터는 데이터 파이프만큼 지연된다. BICM 블록의 지연은 주로 타임 인터리버(5050)로 인한 것이다. 인 밴드(In-band) 시그널링 데이터는 다음 타임 인터리빙 그룹의 정보를 시그널링될 데이터 파이프보다 하나의 프레임 앞서 전달되도록 할 수 있다. 딜레이 컴펜세이션(delay compensation, 지연보상) 블록은 그에 맞추어 인 밴드(In-band) 시그널링 데이터를 지연시킨다.
셀 매퍼(7010)는 PLS, EAC, FIC, 데이터 파이프, 보조 스트림, 및 더미 셀을 프레임 내에서 OFDM 심볼의 액티브(active) 캐리어에 매핑할 수 있다. 셀 매퍼(7010)의 기본 기능은 각각의 데이터 파이프, PLS 셀, 및 EAC/FIC 셀에 대한 타임 인터리빙에 의해 생성된 데이터 셀을, 존재한다면, 하나의 프레임 내에서 각각의 OFDM 심볼에 해당하는 액티브(active) OFDM 셀의 어레이에 매핑하는 것이다. (PSI(program specific information)/SI와 같은) 서비스 시그널링 데이터는 개별적으로 수집되어 데이터 파이프에 의해 보내질 수 있다. 셀 매퍼는 프레임 구조의 구성 및 스케줄러에 의해 생성된 다이나믹 인포메이션(dynamic information, 동적 정보)에 따라 동작한다. 프레임에 관한 자세한 내용은 후술한다.
주파수 인터리버(7020)는 셀 매퍼(7010)로부터 의해 수신된 데이터 셀을 랜덤하게 인터리빙하여 주파수 다이버시티를 제공할 수 있다. 또한, 주파수 인터리버(7020)는 단일 프레임에서 최대의 인터리빙 이득을 얻기 위해 다른 인터리빙 시드(seed) 순서를 이용하여 두 개의 순차적인 OFDM 심볼로 구성된 OFDM 심볼 페어(pair, 쌍)에서 동작할 수 있다.
전술한 블록은 생략되거나 유사 또는 동일 기능을 갖는 블록으로 대체될 수 있다.
도 7은 본 발명의 일 실시예에 따른 OFDM 제너레이션 블록을 나타낸다.
도 7에 도시된 OFDM 제너레이션 블록은 도 1을 참조하여 설명한 OFDM 제너레이션 블록(1030)의 일 실시예에 해당한다.
OFDM 제너레이션 블록은 프레임 빌딩 블록에 의해 생성된 셀에 의해 OFDM 캐리어를 변조하고, 파일럿을 삽입하고, 전송을 위한 시간 영역 신호를 생성한다. 또한, 해당 블록은 순차적으로 가드 인터벌을 삽입하고, PAPR 감소 처리를 적용하여 최종 RF 신호를 생성한다.
도 8을 참조하면, OFDM 제너레이션 블록은 파일럿 및 리저브드 톤 삽입 블록 (pilot and revserved tone insertion block) (8000), 2D-eSFN (single frequency network) 인코딩 블록(8010), IFFT (inverse fast Fourier transform) 블록(8020), PAPR 감소 블록(8030), 가드 인터벌 삽입 블록 (guard interval insertion block)(8040), 프리앰블 삽입 블록 (preamble insertion block)(8050), 기타 시스템 삽입 블록(8060), 및 DAC 블록(8070)을 포함할 수 있다.
기타 시스템 삽입 블록(8060)은 방송 서비스를 제공하는 둘 이상의 서로 다른 방송 송신/수신 시스템의 데이터가 동일한 RF 신호 대역에서 동시에 전송될 수 있도록 시간 영역에서 복수의 방송 송신/수신 시스템의 신호를 멀티플렉싱 할 수 있다. 이 경우, 둘 이상의 서로 다른 방송 송신/수신 시스템은 서로 다른 방송 서비스를 제공하는 시스템을 말한다. 서로 다른 방송 서비스는 지상파 방송 서비스, 모바일 방송 서비스 등을 의미할 수 있다.
도 8은 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치의 구조를 나타낸다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치는 도 1을 참조하여 설명한 차세대 방송 서비스에 대한 방송 신호 송신 장치에 대응할 수 있다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치는 동기 및 복조 모듈 (synchronization & demodulation module) (9000), 프레임 파싱 모듈 (frame parsing module) (9010), 디매핑 및 디코딩 모듈 (demapping & decoding module) (9020), 출력 프로세서 (output processor) (9030), 및 시그널링 디코딩 모듈 (signaling decoding module) (9040)을 포함할 수 있다. 방송 신호 수신 장치의 각 모듈의 동작에 대해 설명한다.
동기 및 복조 모듈(9000)은 m개의 수신 안테나를 통해 입력 신호를 수신하고, 방송 신호 수신 장치에 해당하는 시스템에 대해 신호 검출 및 동기화를 실행하고, 방송 신호 송신 장치에 의해 실행되는 절차의 역과정에 해당하는 복조를 실행할 수 있다.
프레임 파싱 모듈(9010)은 입력 신호 프레임을 파싱하고, 사용자에 의해 선택된 서비스가 전송되는 데이터를 추출할 수 있다. 방송 신호 송신 장치가 인터리빙을 실행하면, 프레임 파싱 모듈(9010)은 인터리빙의 역과정에 해당하는 디인터리빙을 실행할 수 있다. 이 경우, 추출되어야 하는 신호 및 데이터의 위치가 시그널링 디코딩 모듈(9040)로부터 출력된 데이터를 디코딩함으로써 획득되어, 방송 신호 송신 장치에 의해 생성된 스케줄링 정보가 복원될 수 있다.
디매핑 및 디코딩 모듈(9020)은 입력 신호를 비트 영역 데이터로 변환한 후, 필요에 따라 비트 영역 데이터들을 디인터리빙할 수 있다. 디매핑 및 디코딩 모듈(9020)은 전송 효율을 위해 적용된 매핑에 대한 디매핑을 실행하고, 디코딩을 통해 전송 채널에서 발생한 에러를 정정할 수 있다. 이 경우, 디매핑 및 디코딩 모듈(9020)은 시그널링 디코딩 모듈(9040)로부터 출력된 데이터를 디코딩함으로써 디매핑 및 디코딩을 위해 필요한 전송 파라미터를 획득할 수 있다.
출력 프로세서(9030)는 전송 효율을 향상시키기 위해 방송 신호 송신 장치에 의해 적용되는 다양한 압축/신호 처리 절차의 역과정을 실행할 수 있다. 이 경우, 출력 프로세서(9030)는 시그널링 디코딩 모듈(9040)로부터 출력된 데이터에서 필요한 제어 정보를 획득할 수 있다. 출력 프로세서(8300)의 출력은 방송 신호 송신 장치에 입력되는 신호에 해당하고, MPEG-TS, IP 스트림 (v4 또는 v6) 및 GS일 수 있다.
시그널링 디코딩 모듈(9040)은 동기 및 복조 모듈(9000)에 의해 복조된 신호로부터 PLS 정보를 획득할 수 있다. 전술한 바와 같이, 프레임 파싱 모듈(9010), 디매핑 및 디코딩 모듈(9200), 출력 프로세서(9300)는 시그널링 디코딩 모듈(9040)로부터 출력된 데이터를 이용하여 그 기능을 실행할 수 있다.
도 9는 본 발명의 일 실시예에 따른 프레임 구조를 나타낸다.
도 9는 프레임 타임의 구성예 및 슈퍼 프레임에서의 FRU (frame repetition unit, 프레임 반복 단위)를 나타낸다. (a)는 본 발명의 일 실시예에 따른 슈퍼 프레임을 나타내고, (b)는 본 발명의 일 실시예에 따른 FRU를 나타내고, (c)는 FRU에서의 다양한 피지컬 프로파일(PHY profile)의 프레임을 나타내고, (d)는 프레임의 구조를 나타낸다.
슈퍼 프레임은 8개의 FRU로 구성될 수 있다. FRU는 프레임의 TDM에 대한 기본 멀티플렉싱 단위이고, 슈퍼 프레임에서 8회 반복된다.
FRU에서 각 프레임은 피지컬 프로파일(베이스, 핸드헬드, 어드벤스 프로파일) 중 하나 또는 FEF에 속한다. FRU에서 프레임의 최대 허용수는 4이고, 주어진 피지컬 프로파일은 FRU에서 0회 내지 4회 중 어느 횟수만큼 나타날 수 있다(예를 들면, 베이스, 베이스, 핸드헬드, 어드벤스). 피지컬 프로파일 정의는 필요시 프리앰블에서의 PHY_PROFILE의 리저브드 값을 이용하여 확장될 수 있다.
FEF 부분은 포함된다면 FRU의 끝에 삽입된다. FEF가 FRU에 포함되는 경우, FEF의 최대수는 슈퍼 프레임에서 8이다. FEF 부분들이 서로 인접할 것이 권장되지 않는다.
하나의 프레임은 다수의 OFDM 심볼 및 프리앰블로 더 분리된다. (d)에 도시한 바와 같이, 프레임은 프리앰블, 하나 이상의 FSS, 노멀 데이터 심볼, FES를 포함한다.
프리앰블은 고속 퓨처캐스트 UTB 시스템 신호 검출을 가능하게 하고, 신호의 효율적인 송신 및 수신을 위한 기본 전송 파라미터의 집합을 제공하는 특별한 심볼이다. 프리앰블에 대한 자세한 내용은 후술한다.
FSS의 주된 목적은 PLS 데이터를 전달하는 것이다. 고속 동기화 및 채널 추정을 위해, 이에 따른 PLS 데이터의 고속 디코딩을 위해, FSS는 노멀 데이터 심볼보다 고밀도의 파일럿 패턴을 갖는다. FES는 FSS와 완전히 동일한 파일럿을 갖는데, 이는 FES에 바로 앞서는 심볼에 대해 외삽(extrapolation) 없이 FES 내에서의 주파수만의 인터폴레이션(interpolation, 보간) 및 시간적 보간(temporal interpolation)을 가능하게 한다.
도 10은 본 발명의 일 실시예에 따른 프레임의 시그널링 계층 구조(signaling hierarchy structure) 를 나타낸다.
도 10은 시그널링 계층 구조를 나타내는데, 이는 세 개의 주요 부분인 프리앰블 시그널링 데이터(11000), PLS1 데이터(11010), 및 PLS2 데이터(11020)로 분할된다. 매 프레임마다 프리앰블 신호에 의해 전달되는 프리앰블의 목적은 프레임의 기본 전송 파라미터 및 전송 타입을 나타내는 것이다. PLS1은 수신기가 관심 있는 데이터 파이프에 접속하기 위한 파라미터를 포함하는 PLS2 데이터에 접속하여 디코딩할 수 있게 한다. PLS2는 매 프레임마다 전달되고, 두 개의 주요 부분인 PLS2-STAT 데이터와 PLS2-DYN 데이터로 분할된다. PLS2 데이터의 스태틱(static, 정적) 및 다이나믹(dynamic, 동적) 부분에는 필요시 패딩이 뒤따른다.
도 11은 본 발명의 일 실시예에 따른 프리앰블 시그널링 데이터를 나타낸다.
프리앰블 시그널링 데이터는 수신기가 프레임 구조 내에서 PLS 데이터에 접속하고 데이터 파이프를 추적할 수 있게 하기 위해 필요한 21비트의 정보를 전달한다. 프리앰블 시그널링 데이터에 대한 자세한 내용은 다음과 같다.
PHY_PROFILE: 해당 3비트 필드는 현 프레임의 피지컬 프로파일 타입을 나타낸다. 서로 다른 피지컬 프로파일 타입의 매핑은 아래 표 5에 주어진다.
Figure PCTKR2015014172-appb-T000005
FFT_SIZE: 해당 2비트 필드는 아래 표 6에서 설명한 바와 같이 프레임 그룹 내에서 현 프레임의 FFT 사이즈를 나타낸다.
Figure PCTKR2015014172-appb-T000006
GI_FRACTION: 해당 3비트 필드는 아래 표 7에서 설명한 바와 같이 현 슈퍼 프레임에서의 가드 인터벌 일부(fraction) 값을 나타낸다.
Figure PCTKR2015014172-appb-T000007
EAC_FLAG: 해당 1비트 필드는 EAC가 현 프레임에 제공되는지 여부를 나타낸다. 해당 필드가 1로 설정되면, EAS가 현 프레임에 제공된다. 해당 필드가 0으로 설정되면, EAS가 현 프레임에서 전달되지 않는다. 해당 필드는 슈퍼 프레임 내에서 다이나믹(dynamic, 동적)으로 전환될 수 있다.
PILOT_MODE: 해당 1비트 필드는 현 프레임 그룹에서 현 프레임에 대해 파일럿 모드가 모바일 모드인지 또는 고정 모드인지 여부를 나타낸다. 해당 필드가 0으로 설정되면, 모바일 파일럿 모드가 사용된다. 해당 필드가 1로 설정되면, 고정 파일럿 모드가 사용된다.
PAPR_FLAG: 해당 1비트 필드는 현 프레임 그룹에서 현 프레임에 대해 PAPR 감소가 사용되는지 여부를 나타낸다. 해당 필드가 1로 설정되면, 톤 예약(tone reservation)이 PAPR 감소를 위해 사용된다. 해당 필드가 0으로 설정되면, PAPR 감소가 사용되지 않는다.
FRU_CONFIGURE: 해당 3비트 필드는 현 슈퍼 프레임에서 존재하는 FRU의 피지컬 프로파일 타입 구성을 나타낸다. 현 슈퍼 프레임에서 모든 프리앰블에서의 해당 필드에서, 현 슈퍼 프레임에서 전달되는 모든 프로파일 타입이 식별된다. 해당 3비트 필드는 아래 표 8에 나타낸 바와 같이 각각의 프로파일에 대해 다르게 정의된다.
Figure PCTKR2015014172-appb-T000008
RESERVED: 해당 7비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
도 12는 본 발명의 일 실시예에 따른 PLS1 데이터를 나타낸다.
PLS1 데이터는 PLS2의 수신 및 디코딩을 가능하게 하기 위해 필요한 파라미터를 포함한 기본 전송 파라미터를 제공한다. 전술한 바와 같이, PLS1 데이터는 하나의 프레임 그룹의 전체 듀레이션 동안 변화하지 않는다. PLS1 데이터의 시그널링 필드의 구체적인 정의는 다음과 같다.
PREAMBLE_DATA: 해당 20비트 필드는 EAC_FLAG를 제외한 프리앰블 시그널링 데이터의 카피이다.
NUM_FRAME_FRU: 해당 2비트 필드는 FRU당 프레임 수를 나타낸다.
PAYLOAD_TYPE: 해당 3비트 필드는 프레임 그룹에서 전달되는 페이로드 데이터의 포맷을 나타낸다. PAYLOAD_TYPE은 표 9에 나타낸 바와 같이 시그널링 된다.
Figure PCTKR2015014172-appb-T000009
NUM_FSS: 해당 2비트 필드는 현 프레임에서 FSS의 수를 나타낸다.
SYSTEM_VERSION: 해당 8비트 필드는 전송되는 신호 포맷의 버전을 나타낸다. SYSTEM_VERSION은 주 버전 및 부 버전의 두 개의 4비트 필드로 분리된다.
주 버전: SYSTEM_VERSION 필드의 MSB인 4비트는 주 버전 정보를 나타낸다. 주 버전 필드에서의 변화는 호환이 불가능한 변화를 나타낸다. 디폴트 값은 0000이다. 해당 표준에서 서술된 버전에 대해, 값이 0000으로 설정된다.
부 버전: SYSTEM_VERSION 필드의 LSB인 4비트는 부 버전 정보를 나타낸다. 부 버전 필드에서의 변화는 호환이 가능하다.
CELL_ID: 이는 ATSC 네트워크에서 지리적 셀을 유일하게 식별하는 16비트 필드이다. ATSC 셀 커버리지는 퓨처캐스트 UTB 시스템당 사용되는 주파수 수에 따라 하나 이상의 주파수로 구성될 수 있다. CELL_ID의 값이 알려지지 않거나 특정되지 않으면, 해당 필드는 0으로 설정된다.
NETWORK_ID: 이는 현 ATSC 네트워크를 유일하게 식별하는 16비트 필드이다.
SYSTEM_ID: 해당 16비트 필드는 ATSC 네트워크 내에서 퓨처캐스트 UTB 시스템을 유일하게 식별한다. 퓨처캐스트 UTB 시스템은 입력이 하나 이상의 입력 스트림(TS, IP, GS)이고 출력이 RF 신호인 지상파 방송 시스템이다. 퓨처캐스트 UTB 시스템은 존재한다면 FEF 및 하나 이상의 피지컬 프로파일을 전달한다. 동일한 퓨처캐스트 UTB 시스템은 서로 다른 입력 스트림을 전달하고 서로 다른 지리적 영역에서 서로 다른 RF를 사용할 수 있어, 로컬 서비스 삽입을 허용한다. 프레임 구조 및 스케줄링은 하나의 장소에서 제어되고, 퓨처캐스트 UTB 시스템 내에서 모든 전송에 대해 동일하다. 하나 이상의 퓨처캐스트 UTB 시스템은 모두 동일한 피지컬 구조 및 구성을 갖는다는 동일한 SYSTEM_ID 의미를 가질 수 있다.
다음의 루프(loop)는 각 프레임 타입의 길이 및 FRU 구성을 나타내는 FRU_PHY_PROFILE, FRU_FRAME_LENGTH, FRU_GI_FRACTION, RESERVED로 구성된다. 루프(loop) 사이즈는 FRU 내에서 4개의 피지컬 프로파일(FEF 포함)이 시그널링되도록 고정된다. NUM_FRAME_FRU가 4보다 작으면, 사용되지 않는 필드는 제로로 채워진다.
FRU_PHY_PROFILE: 해당 3비트 필드는 관련된 FRU의 (i+1)번째 프레임(i는 루프(loop) 인덱스)의 피지컬 프로파일 타입을 나타낸다. 해당 필드는 표 8에 나타낸 것과 동일한 시그널링 포맷을 사용한다.
FRU_FRAME_LENGTH: 해당 2비트 필드는 관련된 FRU의 (i+1)번째 프레임의 길이를 나타낸다. FRU_GI_FRACTION와 함께 FRU_FRAME_LENGTH를 사용하면, 프레임 듀레이션의 정확한 값이 얻어질 수 있다.
FRU_GI_FRACTION: 해당 3비트 필드는 관련된 FRU의 (i+1)번째 프레임의 가드 인터벌 일부 값을 나타낸다. FRU_GI_FRACTION은 표 7에 따라 시그널링 된다.
RESERVED: 해당 4비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
다음의 필드는 PLS2 데이터를 디코딩하기 위한 파라미터를 제공한다.
PLS2_FEC_TYPE: 해당 2비트 필드는 PLS2 보호에 의해 사용되는 FEC 타입을 나타낸다. FEC 타입은 표 10에 따라 시그널링 된다. LDPC 코드에 대한 자세한 내용은 후술한다.
Figure PCTKR2015014172-appb-T000010
PLS2_MOD: 해당 3비트 필드는 PLS2에 의해 사용되는 변조 타입을 나타낸다. 변조 타입은 표 11에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000011
PLS2_SIZE_CELL: 해당 15비트 필드는 현 프레임 그룹에서 전달되는 PLS2에 대한 모든 코딩 블록의 사이즈(QAM 셀의 수로 특정됨)인 Ctotal _partial_block를 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
PLS2_STAT_SIZE_BIT: 해당 14비트 필드는 현 프레임 그룹에 대한 PLS2-STAT의 사이즈를 비트수로 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
PLS2_DYN_SIZE_BIT: 해당 14비트 필드는 현 프레임 그룹에 대한 PLS2-DYN의 사이즈를 비트수로 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
PLS2_REP_FLAG: 해당 1비트 플래그는 PLS2 반복 모드가 현 프레임 그룹에서 사용되는지 여부를 나타낸다. 해당 필드의 값이 1로 설정되면, PLS2 반복 모드는 활성화된다. 해당 필드의 값이 0으로 설정되면, PLS2 반복 모드는 비활성화된다.
PLS2_REP_SIZE_CELL: 해당 15비트 필드는 PLS2 반복이 사용되는 경우 현 프레임 그룹의 매 프레임마다 전달되는 PLS2에 대한 부분 코딩 블록의 사이즈(QAM 셀의 수로 특정됨)인 Ctotal_partial_block를 나타낸다. 반복이 사용되지 않는 경우, 해당 필드의 값은 0과 동일하다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
PLS2_NEXT_FEC_TYPE: 해당 2비트 필드는 다음 프레임 그룹의 매 프레임에서 전달되는 PLS2에 사용되는 FEC 타입을 나타낸다. FEC 타입은 표 10에 따라 시그널링 된다.
PLS2_NEXT_MOD: 해당 3비트 필드는 다음 프레임 그룹의 매 프레임에서 전달되는 PLS2에 사용되는 변조 타입을 나타낸다. 변조 타입은 표 11에 따라 시그널링 된다.
PLS2_NEXT_REP_FLAG: 해당 1비트 플래그는 PLS2 반복 모드가 다음 프레임 그룹에서 사용되는지 여부를 나타낸다. 해당 필드의 값이 1로 설정되면, PLS2 반복 모드는 활성화된다. 해당 필드의 값이 0으로 설정되면, PLS2 반복 모드는 비활성화된다.
PLS2_NEXT_REP_SIZE_CELL: 해당 15비트 필드는 PLS2 반복이 사용되는 경우 다음 프레임 그룹의 매 프레임마다 전달되는 PLS2에 대한 전체 코딩 블록의 사이즈(QAM 셀의 수로 특정됨)인 Ctotal_full_block를 나타낸다. 다음 프레임 그룹에서 반복이 사용되지 않는 경우, 해당 필드의 값은 0과 동일하다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
PLS2_NEXT_REP_STAT_SIZE_BIT: 해당 14비트 필드는 다음 프레임 그룹에 대한 PLS2-STAT의 사이즈를 비트수로 나타낸다. 해당 값은 현 프레임 그룹에서 일정하다.
PLS2_NEXT_REP_DYN_SIZE_BIT: 해당 14비트 필드는 다음 프레임 그룹에 대한 PLS2-DYN의 사이즈를 비트수로 나타낸다. 해당 값은 현 프레임 그룹에서 일정하다.
PLS2_AP_MODE: 해당 2비트 필드는 현 프레임 그룹에서 PLS2에 대해 추가 패리티가 제공되는지 여부를 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다. 아래의 표 12는 해당 필드의 값을 제공한다. 해당 필드의 값이 00으로 설정되면, 현 프레임 그룹에서 추가 패리티가 PLS2에 대해 사용되지 않는다.
Figure PCTKR2015014172-appb-T000012
PLS2_AP_SIZE_CELL: 해당 15비트 필드는 PLS2의 추가 패리티 비트의 사이즈(QAM 셀의 수로 특정됨)를 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
PLS2_NEXT_AP_MODE: 해당 2비트 필드는 다음 프레임 그룹의 매 프레임마다 PLS2 시그널링에 대해 추가 패리티가 제공되는지 여부를 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다. 표 12는 해당 필드의 값을 정의한다.
PLS2_NEXT_AP_SIZE_CELL: 해당 15비트 필드는 다음 프레임 그룹의 매 프레임마다 PLS2의 추가 패리티 비트의 사이즈(QAM 셀의 수로 특정됨)를 나타낸다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
RESERVED: 해당 32비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
CRC_32: 전체 PLS1 시그널링에 적용되는 32비트 에러 검출 코드
도 13은 본 발명의 일 실시예에 따른 PLS2 데이터를 나타낸다.
도 13은 PLS2 데이터의 PLS2-STAT 데이터를 나타낸다. PLS2-STAT 데이터는 프레임 그룹 내에서 동일한 반면, PLS2-DYN 데이터는 현 프레임에 대해 특정한 정보를 제공한다.
PLS2-STAT 데이터의 필드에 대해 다음에 구체적으로 설명한다.
FIC_FLAG: 해당 1비트 필드는 FIC가 현 프레임 그룹에서 사용되는지 여부를 나타낸다. 해당 필드의 값이 1로 설정되면, FIC는 현 프레임에서 제공된다. 해당 필드의 값이 0으로 설정되면, FIC는 현 프레임에서 전달되지 않는다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
AUX_FLAG: 해당 1비트 필드는 보조 스트림이 현 프레임 그룹에서 사용되는지 여부를 나타낸다. 해당 필드의 값이 1로 설정되면, 보조 스트림은 현 프레임에서 제공된다. 해당 필드의 값이 0으로 설정되면, 보조 프레임은 현 프레임에서 전달되지 않는다. 해당 값은 현 프레임 그룹의 전체 듀레이션 동안 일정하다.
NUM_DP: 해당 6비트 필드는 현 프레임 내에서 전달되는 데이터 파이프의 수를 나타낸다. 해당 필드의 값은 1에서 64 사이이고, 데이터 파이프의 수는 NUM_DP+1이다.
DP_ID: 해당 6비트 필드는 피지컬 프로파일 내에서 유일하게 식별한다.
DP_TYPE: 해당 3비트 필드는 데이터 파이프의 타입을 나타낸다. 이는 아래의 표 13에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000013
DP_GROUP_ID: 해당 8비트 필드는 현 데이터 파이프가 관련되어 있는 데이터 파이프 그룹을 식별한다. 이는 수신기가 동일한 DP_GROUP_ID를 갖게 되는 특정 서비스와 관련되어 있는 서비스 컴포넌트의 데이터 파이프에 접속하는 데 사용될 수 있다.
BASE_DP_ID: 해당 6비트 필드는 관리 계층에서 사용되는 (PSI/SI와 같은) 서비스 시그널링 데이터를 전달하는 데이터 파이프를 나타낸다. BASE_DP_ID에 의해 나타내는 데이터 파이프는 서비스 데이터와 함께 서비스 시그널링 데이터를 전달하는 노멀 데이터 파이프이거나, 서비스 시그널링 데이터만을 전달하는 전용 데이터 파이프일 수 있다.
DP_FEC_TYPE: 해당 2비트 필드는 관련된 데이터 파이프에 의해 사용되는 FEC 타입을 나타낸다. FEC 타입은 아래의 표 14에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000014
DP_COD: 해당 4비트 필드는 관련된 데이터 파이프에 의해 사용되는 코드 레이트(code rate)을 나타낸다. 코드 레이트(code rate)은 아래의 표 15에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000015
DP_MOD: 해당 4비트 필드는 관련된 데이터 파이프에 의해 사용되는 변조를 나타낸다. 변조는 아래의 표 16에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000016
DP_SSD_FLAG: 해당 1비트 필드는 SSD 모드가 관련된 데이터 파이프에서 사용되는지 여부를 나타낸다. 해당 필드의 값이 1로 설정되면, SSD는 사용된다. 해당 필드의 값이 0으로 설정되면, SSD는 사용되지 않는다.
다음의 필드는 PHY_PROFILE가 어드벤스 프로파일을 나타내는 010과 동일할 때에만 나타난다.
DP_MIMO: 해당 3비트 필드는 어떤 타입의 MIMO 인코딩 처리가 관련된 데이터 파이프에 적용되는지 나타낸다. MIMO 인코딩 처리의 타입은 아래의 표 17에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000017
DP_TI_TYPE: 해당 1비트 필드는 타임 인터리빙의 타입을 나타낸다. 0의 값은 하나의 타임 인터리빙 그룹이 하나의 프레임에 해당하고 하나 이상의 타임 인터리빙 블록을 포함하는 것을 나타낸다. 1의 값은 하나의 타임 인터리빙 그룹이 하나보다 많은 프레임으로 전달되고 하나의 타임 인터리빙 블록만을 포함하는 것을 나타낸다.
DP_TI_LENGTH: 해당 2비트 필드(허용된 값은 1, 2, 4, 8뿐이다)의 사용은 다음과 같은 DP_TI_TYPE 필드 내에서 설정되는 값에 의해 결정된다.
DP_TI_TYPE의 값이 1로 설정되면, 해당 필드는 각각의 타임 인터리빙 그룹이 매핑되는 프레임의 수인 PI를 나타내고, 타임 인터리빙 그룹당 하나의 타임 인터리빙 블록이 존재한다 (NTI=1). 해당 2비트 필드로 허용되는 PI의 값은 아래의 표 18에 정의된다.
DP_TI_TYPE의 값이 0으로 설정되면, 해당 필드는 타임 인터리빙 그룹당 타임 인터리빙 블록의 수 NTI를 나타내고, 프레임당 하나의 타임 인터리빙 그룹이 존재한다 (PI=1). 해당 2비트 필드로 허용되는 PI의 값은 아래의 표 18에 정의된다.
Figure PCTKR2015014172-appb-T000018
DP_FRAME_INTERVAL: 해당 2비트 필드는 관련된 데이터 파이프에 대한 프레임 그룹 내에서 프레임 간격(IJUMP)을 나타내고, 허용된 값은 1, 2, 4, 8 (해당하는 2비트 필드는 각각 00, 01, 10, 11)이다. 프레임 그룹의 모든 프레임에 나타나지 않는 데이터 파이프에 대해, 해당 필드의 값은 순차적인 프레임 사이의 간격과 동일하다. 예를 들면, 데이터 파이프가 1, 5, 9, 13 등의 프레임에 나타나면, 해당 필드의 값은 4로 설정된다. 모든 프레임에 나타나는 데이터 파이프에 대해, 해당 필드의 값은 1로 설정된다.
DP_TI_BYPASS: 해당 1비트 필드는 타임 인터리버(5050)의 가용성을 결정한다. 데이터 파이프에 대해 타임 인터리빙이 사용되지 않으면, 해당 필드 값은 1로 설정된다. 반면, 타임 인터리빙이 사용되면, 해당 필드 값은 0으로 설정된다.
DP_FIRST_FRAME_IDX: 해당 5비트 필드는 현 데이터 파이프가 발생하는 슈퍼 프레임의 첫 번째 프레임의 인덱스를 나타낸다. DP_FIRST_FRAME_IDX의 값은 0에서 31 사이다.
DP_NUM_BLOCK_MAX: 해당 10비트 필드는 해당 데이터 파이프에 대한 DP_NUM_BLOCKS의 최대값을 나타낸다. 해당 필드의 값은 DP_NUM_BLOCKS와 동일한 범위를 갖는다.
DP_PAYLOAD_TYPE: 해당 2비트 필드는 주어진 데이터 파이프에 의해 전달되는 페이로드 데이터의 타입을 나타낸다. DP_PAYLOAD_TYPE은 아래의 표 19에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000019
DP_INBAND_MODE: 해당 2비트 필드는 현 데이터 파이프가 인 밴드(In-band) 시그널링 정보를 전달하는지 여부를 나타낸다. 인 밴드(In-band) 시그널링 타입은 아래의 표 20에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000020
DP_PROTOCOL_TYPE: 해당 2비트 필드는 주어진 데이터 파이프에 의해 전달되는 페이로드의 프로토콜 타입을 나타낸다. 페이로드의 프로토콜 타입은 입력 페이로드 타입이 선택되면 아래의 표 21에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000021
DP_CRC_MODE: 해당 2비트 필드는 CRC 인코딩이 인풋 포맷 블록에서 사용되는지 여부를 나타낸다. CRC 모드는 아래의 표 22에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000022
DNP_MODE: 해당 2비트 필드는 DP_PAYLOAD_TYPE이 TS ('00')로 설정되는 경우에 관련된 데이터 파이프에 의해 사용되는 널 패킷 삭제 모드를 나타낸다. DNP_MODE는 아래의 표 23에 따라 시그널링 된다. DP_PAYLOAD_TYPE이 TS ('00')가 아니면, DNP_MODE는 00의 값으로 설정된다.
Figure PCTKR2015014172-appb-T000023
ISSY_MODE: 해당 2비트 필드는 DP_PAYLOAD_TYPE이 TS ('00')로 설정되는 경우에 관련된 데이터 파이프에 의해 사용되는 ISSY 모드를 나타낸다. ISSY_MODE는 아래의 표 24에 따라 시그널링 된다. DP_PAYLOAD_TYPE이 TS ('00')가 아니면, ISSY_MODE는 00의 값으로 설정된다.
Figure PCTKR2015014172-appb-T000024
HC_MODE_TS: 해당 2비트 필드는 DP_PAYLOAD_TYPE이 TS ('00')로 설정되는 경우에 관련된 데이터 파이프에 의해 사용되는 TS 헤더 압축 모드를 나타낸다. HC_MODE_TS는 아래의 표 25에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000025
HC_MODE_IP: 해당 2비트 필드는 DP_PAYLOAD_TYPE이 IP ('01')로 설정되는 경우에 IP 헤더 압축 모드를 나타낸다. HC_MODE_IP는 아래의 표 26에 따라 시그널링 된다.
Figure PCTKR2015014172-appb-T000026
PID: 해당 13비트 필드는 DP_PAYLOAD_TYPE이 TS ('00')로 설정되고 HC_MODE_TS가 01 또는 10으로 설정되는 경우에 TS 헤더 압축을 위한 PID 수를 나타낸다.
RESERVED: 해당 8비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
다음 필드는 FIC_FLAG가 1과 동일할 때만 나타난다.
FIC_VERSION: 해당 8비트 필드는 FIC의 버전 넘버를 나타낸다.
FIC_LENGTH_BYTE: 해당 13비트 필드는 FIC의 길이를 바이트 단위로 나타낸다.
RESERVED: 해당 8비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
다음 필드는 AUX_FLAG가 1과 동일할 때만 나타난다.
NUM_AUX: 해당 4비트 필드는 보조 스트림의 수를 나타낸다. 제로는 보조 스트림이 사용되지 않는 것을 나타낸다.
AUX_CONFIG_RFU: 해당 8비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
AUX_STREAM_TYPE: 해당 4비트는 현 보조 스트림의 타입을 나타내기 위한 추후 사용을 위해 리저브드(reserved)된다.
AUX_PRIVATE_CONFIG: 해당 28비트 필드는 보조 스트림을 시그널링 하기 위한 추후 사용을 위해 리저브드(reserved)된다.
도 14는 본 발명의 다른 일 실시예에 따른 PLS2 데이터를 나타낸다.
도 14는 PLS2 데이터의 PLS2-DYN을 나타낸다. PLS2-DYN 데이터의 값은 하나의 프레임 그룹의 듀레이션 동안 변화할 수 있는 반면, 필드의 사이즈는 일정하다.
PLS2-DYN 데이터의 필드의 구체적인 내용은 다음과 같다.
FRAME_INDEX: 해당 5비트 필드는 슈퍼 프레임 내에서 현 프레임의 프레임 인덱스를 나타낸다. 슈퍼 프레임의 첫 번째 프레임의 인덱스는 0으로 설정된다.
PLS_CHANGE_COUNTER: 해당 4비트 필드는 구성이 변화하기 전의 슈퍼 프레임의 수를 나타낸다. 구성이 변화하는 다음 슈퍼 프레임은 해당 필드 내에서 시그널링 되는 값에 의해 나타낸다. 해당 필드의 값이 0000으로 설정되면, 이는 어떠한 예정된 변화도 예측되지 않는 것을 의미한다. 예를 들면, 1의 값은 다음 슈퍼 프레임에 변화가 있다는 것을 나타낸다.
FIC_CHANGE_COUNTER: 해당 4비트 필드는 구성(즉, FIC의 콘텐츠)이 변화하기 전의 슈퍼 프레임의 수를 나타낸다. 구성이 변화하는 다음 슈퍼 프레임은 해당 필드 내에서 시그널링 되는 값에 의해 나타낸다. 해당 필드의 값이 0000으로 설정되면, 이는 어떠한 예정된 변화도 예측되지 않는 것을 의미한다. 예를 들면, 0001의 값은 다음 슈퍼 프레임에 변화가 있다는 것을 나타낸다.
RESERVED: 해당 16비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
다음 필드는 현 프레임에서 전달되는 데이터 파이프와 관련된 파라미터를 설명하는 NUM_DP에서의 루프(loop)에 나타난다.
DP_ID: 해당 6비트 필드는 피지컬 프로파일 내에서 데이터 파이프를 유일하게 나타낸다.
DP_START: 해당 15비트 (또는 13비트) 필드는 DPU 어드레싱(addressing) 기법을 사용하여 데이터 파이프의 첫 번째의 시작 위치를 나타낸다. DP_START 필드는 아래의 표 27에 나타낸 바와 같이 피지컬 프로파일 및 FFT 사이즈에 따라 다른 길이를 갖는다.
Figure PCTKR2015014172-appb-T000027
DP_NUM_BLOCK: 해당 10비트 필드는 현 데이터 파이프에 대한 현 타임 인터리빙 그룹에서 FEC 블록의 수를 나타낸다. DP_NUM_BLOCK의 값은 0에서 1023 사이에 있다.
RESERVED: 해당 8비트 필드는 추후 사용을 위해 리저브드(reserved)된다.
다음의 필드는 EAC와 관련된 FIC 파라미터를 나타낸다.
EAC_FLAG: 해당 1비트 필드는 현 프레임에서 EAC의 존재를 나타낸다. 해당 비트는 프리앰블에서 EAC_FLAG와 같은 값이다.
EAS_WAKE_UP_VERSION_NUM: 해당 8비트 필드는 자동 활성화 지시의 버전 넘버를 나타낸다.
EAC_FLAG 필드가 1과 동일하면, 다음의 12비트가 EAC_LENGTH_BYTE 필드에 할당된다. EAC_FLAG 필드가 0과 동일하면, 다음의 12비트가 EAC_COUNTER에 할당된다.
EAC_LENGTH_BYTE: 해당 12비트 필드는 EAC의 길이를 바이트로 나타낸다.
EAC_COUNTER: 해당 12비트 필드는 EAC가 도달하는 프레임 전의 프레임의 수를 나타낸다.
다음 필드는 AUX_FLAG 필드가 1과 동일한 경우에만 나타난다.
AUX_PRIVATE_DYN: 해당 48비트 필드는 보조 스트림을 시그널링 하기 위한 추후 사용을 위해 리저브드(reserved)된다. 해당 필드의 의미는 설정 가능한 PLS2-STAT에서 AUX_STREAM_TYPE의 값에 의존한다.
CRC_32: 전체 PLS2에 적용되는 32비트 에러 검출 코드.
도 15는 본 발명의 일 실시예에 따른 프레임의 로지컬(logical) 구조를 나타낸다.
전술한 바와 같이, PLS, EAC, FIC, 데이터 파이프, 보조 스트림, 더미 셀은 프레임에서 OFDM 심볼의 액티브(active) 캐리어에 매핑된다. PLS1 및 PLS2는 처음에 하나 이상의 FSS에 매핑된다. 그 후, EAC가 존재한다면 EAC 셀은 바로 뒤따르는 PLS 필드에 매핑된다. 다음에 FIC가 존재한다면 FIC 셀이 매핑된다. 데이터 파이프는 PLS 다음에 매핑되거나, EAC 또는 FIC가 존재하는 경우, EAC 또는 FIC 이후에 매핑된다. 타입 1 데이터 파이프가 처음에 매핑되고, 타입 2 데이터 파이프가 다음에 매핑된다. 데이터 파이프의 타입의 구체적인 내용은 후술한다. 일부 경우, 데이터 파이프는 EAS에 대한 일부 특수 데이터 또는 서비스 시그널링 데이터를 전달할 수 있다. 보조 스트림 또는 스트림은 존재한다면 데이터 파이프를 다음에 매핑되고 여기에는 차례로 더미 셀이 뒤따른다. 전술한 순서, 즉, PLS, EAC, FIC, 데이터 파이프, 보조 스트림, 및 더미 셀의 순서로 모두 함께 매핑하면 프레임에서 셀 용량을 정확히 채운다.
도 16은 본 발명의 일 실시예에 따른 PLS 매핑을 나타낸다.
PLS 셀은 FSS의 액티브(active) 캐리어에 매핑된다. PLS가 차지하는 셀의 수에 따라, 하나 이상의 심볼이 FSS로 지정되고, FSS의 수 NFSS는 PLS1에서의 NUM_FSS에 의해 시그널링된다. FSS는 PLS 셀을 전달하는 특수한 심볼이다. 경고성 및 지연 시간(latency)은 PLS에서 중대한 사안이므로, FSS는 높은 파일럿 밀도를 가지고 있어 고속 동기화 및 FSS 내에서의 주파수만의 인터폴레이션(interpoloation, 보간)을 가능하게 한다.
PLS 셀은 도 16의 예에 나타낸 바와 같이 하향식으로 FSS의 액티브(active) 캐리어에 매핑된다. PLS1 셀은 처음에 첫 FSS의 첫 셀부터 셀 인덱스의 오름차순으로 매핑된다. PLS2 셀은 PLS1의 마지막 셀 직후에 뒤따르고, 매핑은 첫 FSS의 마지막 셀 인덱스까지 아래방향으로 계속된다. 필요한 PLS 셀의 총 수가 하나의 FSS의 액티브(active) 캐리어의 수를 초과하면, 매핑은 다음 FSS로 진행되고 첫 FSS와 완전히 동일한 방식으로 계속된다.
PLS 매핑이 완료된 후, 데이터 파이프가 다음에 전달된다. EAC, FIC 또는 둘 다 현 프레임에 존재하면, EAC 및 FIC는PLS와 노멀 데이터 파이프 사이에 배치된다.
도 17은 본 발명의 일 실시예에 따른 EAC 매핑을 나타낸다.
EAC는 EAS 메시지를 전달하는 전용 채널이고 EAS에 대한 데이터 파이프에 연결된다. EAS 지원은 제공되지만, EAC 자체는 모든 프레임에 존재할 수도 있고 존재하지 않을 수도 있다. EAC가 존재하는 경우, EAC는 PLS2 셀의 직후에 매핑된다. PLS 셀을 제외하고 FIC, 데이터 파이프, 보조 스트림 또는 더미 셀 중 어느 것도 EAC 앞에 위치하지 않는다. EAC 셀의 매핑 절차는 PLS와 완전히 동일하다.
EAC 셀은 도 17의 예에 나타낸 바와 같이 PLS2의 다음 셀부터 셀 인덱스의 오름차순으로 매핑된다. EAS 메시지 크기에 따라, 도 17에 나타낸 바와 같이 EAC 셀은 적은 심볼을 차지할 수 있다.
EAC 셀은 PLS2의 마지막 셀 직후에 뒤따르고, 매핑은 마지막 FSS의 마지막 셀 인덱스까지 아래방향으로 계속된다. 필요한 EAC 셀의 총 수가 마지막 FSS의 남아 있는 액티브(active) 캐리어의 수를 초과하면, EAC 매핑은 다음 심볼로 진행되며, FSS와 완전히 동일한 방식으로 계속된다. 이 경우 EAC의 매핑이 이루어지는 다음 심볼은 노멀 데이터 심볼이고, 이는 FSS보다 더 많은 액티브(active) 캐리어를 갖는다.
EAC 매핑이 완료된 후, 존재한다면 FIC가 다음에 전달된다. FIC가 전송되지 않으면(PLS2 필드에서 시그널링으로), 데이터 파이프가 EAC의 마지막 셀 직후에 뒤따른다.
도 18은 본 발명의 일 실시예에 따른 FIC 매핑을 나타낸다.
(a)는 EAC 없이 FIC 셀의 매핑의 예를 나타내고, (b)는 EAC와 함께 FIC 셀의 매핑의 예를 나타낸다.
FIC는 고속 서비스 획득 및 채널 스캔을 가능하게 하기 위해 계층간 정보(cross-layer information)를 전달하는 전용 채널이다. 해당 정보는 주로 데이터 파이프 사이의 채널 바인딩 (channel binding) 정보 및 각 방송사의 서비스를 포함한다. 고속 스캔을 위해, 수신기는 FIC를 디코딩하고 방송사 ID, 서비스 수, BASE_DP_ID와 같은 정보를 획득할 수 있다. 고속 서비스 획득을 위해, FIC뿐만 아니라 베이스 데이터 파이프도 BASE_DP_ID를 이용해서 디코딩 될 수 있다. 베이스 데이터 파이프가 전송하는 콘텐트를 제외하고, 베이스 데이터 파이프는 노멀 데이터 파이프와 정확히 동일한 방식으로 인코딩되어 프레임에 매핑된다. 따라서, 베이스 데이터 파이프에 대한 추가 설명이 필요하지 않다. FIC 데이터가 생성되어 관리 계층에서 소비된다. FIC 데이터의 콘텐트는 관리 계층 사양에 설명된 바와 같다.
FIC 데이터는 선택적이고, FIC의 사용은 PLS2의 스태틱(static, 정적)인 부분에서 FIC_FLAG 파라미터에 의해 시그널링 된다. FIC가 사용되면, FIC_FLAG는 1로 설정되고, FIC에 대한 시그널링 필드는 PLS2의 스태틱(static, 정적)인 부분에서 정의된다. 해당 필드에서 시그널링되는 것은 FIC_VERSION이고, FIC_LENGTH_BYTE. FIC는 PLS2와 동일한 변조, 코딩, 타임 인터리빙 파라미터를 사용한다. FIC는 PLS2_MOD 및 PLS2_FEC와 같은 동일한 시그널링 파라미터를 공유한다. FIC 데이터는 존재한다면 PLS2 후에 매핑되거나, EAC가 존재하는 경우 EAC 직후에 매핑된다. 노멀 데이터 파이프, 보조 스트림, 또는 더미 셀 중 어느 것도 FIC 앞에 위치하지 않는다. FIC 셀을 매핑하는 방법은 EAC와 완전히 동일하고, 이는 다시 PLS와 동일하다.
PLS 후의 EAC가 존재하지 않는 경우, FIC 셀은 (a)의 예에 나타낸 바와 같이 PLS2의 다음 셀부터 셀 인덱스의 오름차순으로 매핑된다. FIC 데이터 사이즈에 따라, (b)에 나타낸 바와 같이, FIC 셀은 수 개의 심볼에 대해서 매핑된다.
FIC 셀은 PLS2의 마지막 셀 직후에 뒤따르고, 매핑은 마지막 FSS의 마지막 셀 인덱스까지 아래방향으로 계속된다. 필요한 FIC 셀의 총 수가 마지막 FSS의 남아 있는 액티브(active) 캐리어의 수를 초과하면, 나머지 FIC 셀의 매핑은 다음 심볼로 진행되며 이는 FSS와 완전히 동일한 방식으로 계속된다. 이 경우, FIC가 매핑되는 다음 심볼은 노멀 데이터 심볼이며, 이는 FSS보다 더 많은 액티브(active) 캐리어를 갖는다.
EAS 메시지가 현 프레임에서 전송되면, EAC는 FIC 보다 먼저 매핑되고 (b)에 나타낸 바와 같이 EAC의 다음 셀부터 FIC 셀은 셀 인덱스의 오름차순으로 매핑된다.
FIC 매핑이 완료된 후, 하나 이상의 데이터 파이프가 매핑되고, 이후 존재한다면 보조 스트림, 더미 셀이 뒤따른다.
도 19는 본 발명의 일 실시예에 따른 FEC 구조를 나타낸다.
도 19는 비트 인터리빙 전의 본 발명의 일 실시예에 따른 FEC 구조를 나타낸다. 전술한 바와 같이, 데이터 FEC 인코더는 외부 코딩(BCH) 및 내부 코딩(LDPC)을 이용하여 FECBLOCK 절차를 생성하기 위해 입력 BBF에 FEC 인코딩을 실행할 수 있다. 도시된 FEC 구조는 FECBLOCK에 해당한다. 또한, FECBLOCK 및 FEC 구조는 LDPC 코드워드의 길이에 해당하는 동일한 값을 갖는다.
도 19에 도시된 바와 같이, BCH 인코딩이 각각의 BBF(Kbch 비트)에 적용된 후, LDPC 인코딩이 BCH - 인코딩된 BBF(Kldpc 비트 = Nbch 비트)에 적용된다.
Nldpc의 값은 64800 비트 (롱 FECBLOCK) 또는 16200 비트 (쇼트 FECBLOCK)이다.
아래의 표 28 및 표 29는 롱 FECBLOCK 및 쇼트 FECBLOCK 각각에 대한 FEC 인코딩 파라미터를 나타낸다.
Figure PCTKR2015014172-appb-T000028
Figure PCTKR2015014172-appb-T000029
BCH 인코딩 및 LDPC 인코딩의 구체적인 동작은 다음과 같다.
12-에러 정정 BCH 코드가 BBF의 외부 인코딩에 사용된다. 쇼트 FECBLOCK 및 롱 FECBLOCK에 대한 BBF 생성 다항식은 모든 다항식을 곱함으로써 얻어진다.
LDPC 코드는 외부 BCH 인코딩의 출력을 인코딩하는 데 사용된다. 완성된 Bldpc (FECBLOCK)를 생성하기 위해, Pldpc (패리티 비트)가 각각의 Ildpc (BCH - 인코딩된 BBF)로부터 조직적으로 인코딩되고, Ildpc에 첨부된다. 완성된 Bldpc (FECBLOCK)는 다음의 수학식으로 표현된다.
Figure PCTKR2015014172-appb-M000002
롱 FECBLOCK 및 쇼트 FECBLOCK에 대한 파라미터는 위의 표 28 및 29에 각각 주어진다.
롱 FECBLOCK에 대해 Nldpc - Kldpc 패리티 비트를 계산하는 구체적인 절차는 다음과 같다.
1) 패리티 비트 초기화
Figure PCTKR2015014172-appb-M000003
2) 패리티 체크 매트릭스의 어드레스의 첫 번째 행에서 특정된 패리티 비트 어드레스에서 첫 번째 정보 비트 i0 누산(accumulate). 패리티 체크 매트릭스의 어드레스의 상세한 내용은 후술한다. 예를 들면, 비율 13/15에 대해,
Figure PCTKR2015014172-appb-M000004
3) 다음 359개의 정보 비트 is, s=1, 2, …, 359에 대해, 다음의 수학식을 이용하여 패리티 비트 어드레스에서 is 누산(accumulate).
Figure PCTKR2015014172-appb-M000005
여기서, x는 첫 번째 비트 i0에 해당하는 패리티 비트 누산기의 어드레스를 나타내고, Qldpc는 패리티 체크 매트릭스의 어드레서에서 특정된 코드 레이트(code rate) 의존 상수이다. 상기 예인, 비율 13/15에 대한, 따라서 정보 비트 i1에 대한 Qldpc = 24에 계속해서, 다음 동작이 실행된다.
Figure PCTKR2015014172-appb-M000006
4) 361번째 정보 비트 i360에 대해, 패리티 비트 누산기의 어드레스는 패리티 체크 매트릭스의 어드레스의 두 번째 행에 주어진다. 마찬가지 방식으로, 다음 359개의 정보 비트 is, s= 361, 362, …, 719에 대한 패리티 비트 누산기의 어드레스는 수학식 6을 이용하여 얻어진다. 여기서, x는 정보 비트 i360에 해당하는 패리티 비트 누산기의 어드레스, 즉 패리티 체크 매트릭스의 두 번째 행의 엔트리를 나타낸다.
5) 마찬가지 방식으로, 360개의 새로운 정보 비트의 모든 그룹에 대해, 패리티 체크 매트릭스의 어드레스로부터의 새로운 행은 패리티 비트 누산기의 어드레스를 구하는 데 사용된다.
모든 정보 비트가 이용된 후, 최종 패리티 비트가 다음과 같이 얻어진다.
6) i=1로 시작해서 다음 동작을 순차적으로 실행
Figure PCTKR2015014172-appb-M000007
여기서 pi, i=0,1,...Nldpc - Kldpc - 1의 최종 콘텐트는 패리티 비트 pi와 동일하다.
Figure PCTKR2015014172-appb-T000030
표 30을 표 31로 대체하고, 롱 FECBLOCK에 대한 패리티 체크 매트릭스의 어드레스를 쇼트 FECBLOCK에 대한 패리티 체크 매트릭스의 어드레스로 대체하는 것을 제외하고, 쇼트 FECBLOCK에 대한 해당 LDPC 인코딩 절차는 롱 FECBLOCK에 대한 t LDPC 인코딩 절차에 따른다.
Figure PCTKR2015014172-appb-T000031
도 20은 본 발명의 일 실시예에 따른 타임 인터리빙을 나타낸다.
(a) 내지 (c)는 타임 인터리빙 모드의 예를 나타낸다.
타임 인터리버는 데이터 파이프 레벨에서 동작한다. 타임 인터리빙의 파라미터는 각각의 데이터 파이프에 대해 다르게 설정될 수 있다.
PLS2-STAT 데이터의 일부에 나타나는 다음의 파라미터는 타임 인터리빙을 구성한다.
DP_TI_TYPE (허용된 값: 0 또는 1): 타임 인터리빙 모드를 나타낸다. 0은 타임 인터리빙 그룹당 다수의 타임 인터리빙 블록(하나 이상의 타임 인터리빙 블록)을 갖는 모드를 나타낸다. 이 경우, 하나의 타임 인터리빙 그룹은 하나의 프레임에 (프레임간 인터리빙 없이) 직접 매핑된다. 1은 타임 인터리빙 그룹당 하나의 타임 인터리빙 블록만을 갖는 모드를 나타낸다. 이 경우, 타임 인터리빙 블록은 하나 이상의 프레임에 걸쳐 확산된다(프레임간 인터리빙).
DP_TI_LENGTH: DP_TI_TYPE = '0'이면, 해당 파라미터는 타임 인터리빙 그룹당 타임 인터리빙 블록의 수 NTI이다. DP_TI_TYPE = '1'인 경우, 해당 파라미터는 하나의 타임 인터리빙 그룹으로부터 확산되는 프레임의 수 PI이다.
DP_NUM_BLOCK_MAX (허용된 값: 0 내지 1023): 타임 인터리빙 그룹당 XFECBLOCK의 최대 수를 나타낸다.
DP_FRAME_INTERVAL (허용된 값: 1, 2, 4, 8): 주어진 피지컬 프로파일의 동일한 데이터 파이프를 전달하는 두 개의 순차적인 프레임 사이의 프레임의 수 IJUMP를 나타낸다.
DP_TI_BYPASS (허용된 값: 0 또는 1): 타임 인터리빙이 데이터 프레임에 이용되지 않으면, 해당 파라미터는 1로 설정된다. 타임 인터리빙이 이용되면, 0으로 설정된다.
추가로, PLS2-DYN 데이터로부터의 파라미터 DP_NUM_BLOCK은 데이터 그룹의 하나의 타임 인터리빙 그룹에 의해 전달되는 XFECBLOCK의 수를 나타낸다.
타임 인터리빙이 데이터 프레임에 이용되지 않으면, 다음의 타임 인터리빙 그룹, 타임 인터리빙 동작, 타임 인터리빙 모드는 고려되지 않는다. 그러나 스케줄러부터의 다이나믹(dynamic, 동적) 구성 정보를 위한 딜레이 컴펜세이션(delay compensation, 지연보상) 블록은 여전히 필요하다. 각각의 데이터 파이프에서, SSD/MIMO 인코딩으로부터 수신한 XFECBLOCK은 타임 인터리빙 그룹으로 그루핑된다. 즉, 각각의 타임 인터리빙 그룹은 정수 개의 XFECBLOCK의 집합이고, 다이나믹(dynamic, 동적)으로 변화하는 수의 XFECBLOCK을 포함할 것이다. 인덱스 n의 타임 인터리빙 그룹에 있는 XFECBLOCK의 수는 NxBLOCK_Group(n)로 나타내고, PLS2-DYN 데이터에서 DP_NUM_BLOCK으로 시그널링된다. 이때, NxBLOCK_Group(n)은 최소값 0에서 가장 큰 값이 1023인 최대값 NxBLOCK_Group_MAX (DP_NUM_BLOCK_MAX에 해당)까지 변화할 수 있다.
각각의 타임 인터리빙 그룹은 하나의 프레임에 직접 매핑되거나 PI개의 프레임에 걸쳐 확산된다. 또한 각각의 타임 인터리빙 그룹은 하나 이상(NTI개)의 타임 인터리빙 블록으로 분리된다. 여기서 각각의 타임 인터리빙 블록은 타임 인터리버 메모리의 하나의 사용에 해당한다. 타임 인터리빙 그룹 내의 타임 인터리빙 블록은 약간의 다른 수의 XFECBLOCK을 포함할 수 있다. 타임 인터리빙 그룹이 다수의 타임 인터리빙 블록으로 분리되면, 타임 인터리빙 그룹은 하나의 프레임에만 직접 매핑된다. 아래의 표 32에 나타낸 바와 같이, 타임 인터리빙에는 세 가지 옵션이 있다(타임 인터리빙을 생략하는 추가 옵션 제외).
Figure PCTKR2015014172-appb-T000032
일반적으로, 타임 인터리버는 프레임 생성 과정 이전에 데이터 파이프 데이터에 대한 버퍼로도 작용할 것이다. 이는 각각의 데이터 파이프에 대해 2개의 메모리 뱅크로 달성된다. 첫 번째 타임 인터리빙 블록은 첫 번째 뱅크에 기입된다. 첫 번째 뱅크에서 판독되는 동안 두 번째 타임 인터리빙 블록이 두 번째 뱅크에 기입된다.
타임 인터리빙은 트위스트된 행-열 블록 인터리버이다. n번째 타임 인터리빙 그룹의 s번째 타임 인터리빙 블록에 대해, 열의 수 Nc 가 NxBLOCK_TI(n,s) 와 동일한 반면, 타임 인터리빙 메모리의 행의 수 Nr 는 셀의 수 Ncells 와 동일하다 (즉, Nr = Ncells).
도 21은 본 발명의 일 실시예에 따른 트위스트된 행-열 블록 인터리버의 기본 동작을 나타낸다.
도 21(a)는 타임 인터리버에서 기입 동작을 나타내고, 도 21(b)는 타임 인터리버에서 판독 동작을 나타낸다. (a)에 나타낸 바와 같이, 첫 번째 XFECBLOCK은 타임 인터리빙 메모리의 첫 번째 열에 열 방향으로 기입되고, 두 번째 XFECBLOCK은 다음 열에 기입되고, 이러한 동작이 이어진다. 그리고 인터리빙 어레이에서, 셀이 대각선 방향으로 판독된다. (b)에 나타낸 바와 같이 첫 번째 행으로부터 (가장 왼쪽 열을 시작으로 행을 따라 오른쪽으로) 마지막 행까지 대각선 방향 판독이 진행되는 동안,
Figure PCTKR2015014172-appb-I000001
개의 셀이 판독된다. 구체적으로,
Figure PCTKR2015014172-appb-I000002
이 순차적으로 판독될 타임 인터리빙 메모리 셀 위치라고 가정하면, 이러한 인터리빙 어레이에서의 판독 동작은 아래 식에서와 같이 행 인덱스
Figure PCTKR2015014172-appb-I000003
, 열 인덱스
Figure PCTKR2015014172-appb-I000004
, 관련된 트위스트 파라미터
Figure PCTKR2015014172-appb-I000005
를 산출함으로써 실행된다.
Figure PCTKR2015014172-appb-M000008
여기서,
Figure PCTKR2015014172-appb-I000006
Figure PCTKR2015014172-appb-I000007
에 상관없이 대각선 방향 판독 과정에 대한 공통 시프트 값이고, 시프트 값은 아래 식에서와 같이 PLS2-STAT에서 주어진
Figure PCTKR2015014172-appb-I000008
에 의해 결정된다.
Figure PCTKR2015014172-appb-M000009
결과적으로, 판독될 셀 위치는 좌표
Figure PCTKR2015014172-appb-I000009
에 의해 산출된다.
도 22는 본 발명의 다른 일 실시예에 따른 트위스트된 행-열 블록 인터리버의 동작을 나타낸다.
더 구체적으로, 도 22는
Figure PCTKR2015014172-appb-I000010
,
Figure PCTKR2015014172-appb-I000011
,
Figure PCTKR2015014172-appb-I000012
일 때 가상 XFECBLOCK을 포함하는 각각의 타임 인터리빙 그룹에 대한 타임 인터리빙 메모리에서 인터리빙 어레이를 나타낸다.
변수
Figure PCTKR2015014172-appb-I000013
Figure PCTKR2015014172-appb-I000014
보다 작거나 같을 것이다. 따라서,
Figure PCTKR2015014172-appb-I000015
에 상관없이 수신기 측에서 단일 메모리 디인터리빙을 달성하기 위해, 트위스트된 행-열 블록 인터리버용 인터리빙 어레이는 가상 XFECBLOCK을 타임 인터리빙 메모리에 삽입함으로써
Figure PCTKR2015014172-appb-I000016
의 크기로 설정되고, 판독 과정은 다음 식과 같이 이루어진다.
Figure PCTKR2015014172-appb-M000010
타임 인터리빙 그룹의 수는 3으로 설정된다. 타임 인터리버의 옵션은 DP_TI_TYPE='0', DP_FRAME_INTERVAL='1', DP_TI_LENGTH='1', 즉 NTI=1, IJUMP=1, PI=1에 의해 PLS2-STAT 데이터에서 시그널링된다. 각각 Ncells = 30인 XFECBLOCK의 타임 인터리빙 그룹당 수는 각각의 NxBLOCK_TI(0,0) = 3, NxBLOCK_TI(1,0) = 6, NxBLOCK_TI(2,0) = 5에 의해 PLS2-DYN 데이터에서 시그널링된다. XFECBLOCK의 최대 수는 NxBLOCK_Group_MAX에 의해 PLS2-STAT 데이터에서 시그널링 되고, 이는
Figure PCTKR2015014172-appb-I000017
로 이어진다.
도 23은 본 발명의 일 실시예에 따른 트위스트된 행-열 블록 인터리버의 대각선 방향 판독 패턴을 나타낸다.
더 구체적으로, 도 23은 파라미터
Figure PCTKR2015014172-appb-I000018
및 Sshift=(7-1)/2=3을 갖는 각각의 인터리빙 어레이로부터의 대각선 방향 판독 패턴을 나타낸다. 이때 위에 유사 코드로 나타낸 판독 과정에서,
Figure PCTKR2015014172-appb-I000019
이면, Vi의 값이 생략되고, Vi의 다음 계산값이 사용된다.
도 24는 본 발명의 일 실시예에 따른 각각의 인터리빙 어레이로부터의 인터리빙된 XFECBLOCK을 나타낸다.
도 24는 파라미터
Figure PCTKR2015014172-appb-I000020
및 Sshift=3을 갖는 각각의 인터리빙 어레이로부터 인터리빙된 XFECBLOCK을 나타낸다.
도 25 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디 인터리빙을 위한 시그널링을 도시한 도면이다.
전술한 바와 같이, 본 발명에 따른 주파수 인터리버는 OFDM 심볼마다 다른 인터리빙 시퀀스를 사용하여 인터리빙을 수행하나, 주파수 디인터리버는 수신한 OFDM 심볼에 대하여 싱글 메모리 디인터리빙을 수행할 수 있다.
본 발명에서는, 한 프레임 내의 OFDM 심볼 수가 짝수인지 홀수인지에 무관하게 주파수 디인터리버가 싱글 메모리 디인터리빙을 수행할 수 있는 방법을 제안한다. 이를 위하여, OFDM 심볼 수가 짝수개인지 홀수개인지에 따라 전술한 주파수 인터리버의 구조가 다르게 운영될 수 있다. 또한, 이와 관련된 시그널링 정보가 전술한 프리앰블 및/또는 PLS(Physical Layer Signaling) 에 추가로 정의될 수 있다. 이를 통하여 OFDM 심볼의 개수가 짝수인 경우에 한정되지 않고, 언제든지 싱글 메모리 디인터리빙이 가능해질 수 있다.
여기서, PLS 는 매 프레임의 FSS(Frame Starting Symbol, FSS) 에 포함되어 전송될 수 있다. 또는 실시예에 따라, PLS 는 첫번째 OFDM 심볼에 포함되어 전송될 수 있다. 또는 PLS 존재여부에 따라, PLS 에 해당하는 시그널링은 프리앰블에 모두 포함되어 전송될 수 있다. 또는 프리앰블 및/또는 PLS 에 해당하는 시그널링 정보들은 부트 스트랩 정보에 포함되어 전송될 수도 있다. 부트 스트랩 정보는 프리앰블의 앞에 위치하는 정보 파트일 수 있다.
송신부의 주파수 인터리버에서 활용된 처리동작 등에 관한 정보로서, FI_mode 필드와 N_sym 필드가 있을 수 있다.
FI_mode 필드는 프리앰블에 위치할 수 있는 1 비트 필드일 수 있다. FI_mode 필드는 매 프레임의 FSS(Frame Starting Symbol) 또는 첫번째 OFDM 심볼에 사용된 인터리빙 스킴을 나타낼 수 있다.
FI_mode 필드가 지시하는 인터리빙 스킴에는 FI 스킴 #1 와 FI 스킴 #2 가 있을 수 있다.
FI 스킴 #1 은 송신측에서 주파수 인터리버가 FSS 에 대하여, 랜덤 쓰기(random writing) 동작 수행 후 선형 읽기(linear reading) 동작을 수행한 경우를 의미할 수 있다. 이 경우는 FI_mode 필드 값이 0 인 경우에 해당될 수 있다. PRBS 등을 이용한 임의의 랜덤 시퀀스 제너레이터에 의해 발생되는 값을 이용해, 메모리에 랜덤쓰기, 선형 읽기 동작을 수행할 수 있다. 여기서 선형 읽기란 순차적으로 읽어들이는 동작을 의미할 수 있다.
FI 스킴 #2 는 송신측에서 주파수 인터리버가 FSS 에 대하여, 선형 쓰기(linear writing) 동작 수행 후 랜덤 읽기(random reading) 동작을 수행한 경우를 의미할 수 있다. 이 경우는 FI_mode 필드 값이 1 인 경우에 해당될 수 있다. 마찬가지로, PRBS 등을 이용한 임의의 랜덤 시퀀스 제너레이터에 의해 발생되는 값을 이용해, 메모리에 선형쓰기, 랜덤읽기 동작을 수행할 수 있다. 여기서 선형 쓰기란 순차적으로 쓰는 동작을 수행하는 것을 의미할 수 있다.
또한, FI_mode 필드는 매 프레임의 FES(Frame Edge Symbol) 또는 마지막 OFDM 심볼에 사용된 인터리빙 스킴을 나타낼 수 있다. FES 에 적용되는 인터리빙 스킴은 PLS 에 의해 전송되는 N_sym 필드의 값에 따라 다르게 지시될 수 있다. 즉, OFDM 심볼 수가 홀수인지 짝수인지에 따라 FI_mode 필드가 지시하는 인터리빙 스킴이 달라질 수 있다. 두 필드들간의 관계는 미리 송수신측에 테이블로서 정의되어 있을 수 있다.
FI_mode 필드는 실시예에 따라 프리앰블 외에 프레임의 다른 부분에 정의되어 전송될 수 있다.
N_sym 필드는 PLS 파트에 위치할 수 있는 필드일 수 있다. N_sym 필드의 비트수는 실시예에 따라 가변적일 수 있다. N_sym 필드는 한 프레임에 포함된 OFDM 심볼의 개수를 지시할 수 있다. 이에 따라, 수신측에서는 OFDM 심볼의 개수가 짝수개인지 홀수개인지 파악할 수 있다.
전술한 한 프레임 내의 OFDM 심볼 수에 무관한 주파수 인터리버에 대응되는 주파수 디인터리버의 동작은 다음과 같다. 이 주파수 디인터리버는 제안된 시그널링 필드들을 활용하여 OFDM 심볼 수가 짝수인지 홀수인지 여부에 무관하게 싱글 메모리 디인터리빙을 수행할 수 있다.
주파수 디인터리버는 먼저, 프리앰블의 FI_mode 필드의 정보를 이용하여 FSS 에 대하여 주파수 디인터리빙을 수행할 수 있다. FSS 에 활용된 주파수 인터리빙 스킴이 FI_mode 에 의해 지시되기 때문이다.
주파수 디인터리버는 FI_mode 필드의 시그널링 정보와 PLS 의 N_sym 필드의 시그널링 정보를 이용하여, FES 에 대하여 주파수 디인터리빙을 수행할 수 있다. 이 때, 미리 정의된 테이블을 이용하여 두 필드간의 관계가 파악될 수 있다. 기 정의된 테이블에 대하여는 후술한다.
이 외의 심볼들의 전반적인 디인터리빙 과정은, 송신측의 인터리빙 과정의 역순으로 수행될 수 있다. 즉, 입력되는 연속된 한쌍의 OFDM 심볼에 대해서, 주파수 디인터리버는 하나의 인터리빙 시퀀스를 활용하여 디인터리빙을 수행할 수 있다. 여기서, 하나의 인터리빙 시퀀스는 해당 주파수 인터리버가 읽기&쓰기에 사용했던 인터리빙 시퀀스일 수 있다. 주파수 디인터리버는 그 인터리빙 시퀀스를 이용하여 역순으로 읽기&쓰기 과정을 수행할 수 있다.
허나, 본 발명에 따른 주파수 디인터리버는 더블 메모리를 사용하는 핑퐁(ping pong) 구조를 사용하지 않을 수 있다. 주파수 디인터리버는 연속된 입력 OFDM 심볼들에 대하여, 싱글 메모리를 활용해 디인터리빙을 수행할 수 있다. 이로써 주파수 디인터리버의 메모리 사용 효율성이 증대될 수 있다.
도 26 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디 인터리빙을 위한 시그널링에 있어서, FSS 를 위한 FI 스킴들을 도시한 도면이다.
전술한 FI_mode 필드와 N_sym 필드를 이용하여 주파수 인터리빙 과정에서 적용되는 인터리빙 스킴을 결정할 수 있다.
FSS 의 경우에 있어서, N_sym 필드가 지시하는 OFDM 심볼의 수가 짝수인 경우, FI_mode 필드 값에 무관하게 FI 스킴 #1 이 FSS 에 수행될 수 있다.
N_sym 필드가 지시하는 OFDM 심볼의 수가 홀수인 경우, FI_mode 필드가 0 의 값을 가지면, FI 스킴 #1 이 FSS 에 적용되고, 1 의 값을 가지면, FI 스킴 #2 가 FSS 에 적용될 수 있다. 즉, OFDM 심볼의 수가 홀수인 경우, 주파수 인터리빙에 있어 FI 스킴 #1 과 #2 가 번갈아가면서 FSS 에 적용될 수 있다.
도 27 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디 인터리빙을 위한 시그널링에 있어서, FES 를 위한 리셋 모드의 동작을 도시한 도면이다.
FES 에 대한 주파수 인터리빙에 있어서, 전술한 심볼 오프셋 생성기는 리셋 모드(Reset mode) 라는 새로운 개념을 도입할 수 있다. 리셋 모드는, 심볼 오프셋 생성기에 의해 발생되는 심볼 오프셋 값이 '0' 인 모드를 의미할 수 있다.
FES 에 대한 주파수 인터리빙에 있어서, 전술한 FI_mode 필드와 N_sym 필드를 이용하여 리셋 모드의 사용여부를 결정할 수 있다.
N_sym 필드가 지시하는 OFDM 심볼의 수가 짝수인 경우, FI_mode 필드의 값에 무관하게 심볼 오프셋 생성기의 리셋 모드는 동작하지 않을 수 있다(off).
N_sym 필드가 지시하는 OFDM 심볼의 수가 홀수인 경우, FI_mode 필드의 값이 0 일 경우 심볼 오프셋 생성기가 리셋 모드에 따라 동작할 수 있다(on). 또한, FI_mode 필드의 값이 1 일 경우 심볼 오프셋 생성기의 리셋 모드는 동작하지 않을 수 있다(off). 즉, OFDM 심볼의 수가 홀수인 경우, 주파수 인터리빙에 있어 리셋모드가 번갈아가며 온/오프 될 수 있다.
도 28 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 주파수 인터리버의 입력과 출력을 수학식으로 표시한 도면이다.
전술한 바와 같이, 각각의 메모리 뱅크-A 및 메모리 뱅크-B 의 OFDM 심볼 페어들은 전술한 인터리빙 과정에 의해 처리될 수 있다. 전술한 바와 같이, 인터리빙에는 하나의 메인 인터리빙 시드가 순환 천이(cyclic-shifting)되어 생성된 다양한 다른 인터리빙 시드가 활용될 수 있다. 여기서, 인터리빙 시드는 인터리빙 시퀀스라고 칭해질 수도 있다. 또한, 인터리빙 시드는 인터리빙 주소값(interleaving address value) 내지는 주소값(address value), 인터리빙 주소(interleaving address) 라고 칭해질 수 있다. 여기서, 인터리빙 주소값이라는 용어는 복수개의 주소값들의 집합의 의미로 복수의 대상을 지시하는데 사용될 수도 있고, 인터리빙 시드의 의미로 단수의 대상을 지시하는데 사용될 수도 있다. 즉 실시예에 따라, 인터리빙 주소값이라 함은 H(p) 의 각각의 주소값을 의미하거나, H(p) 자체를 의미할 수도 있다.
하나의 OFDM 심볼 내에서 인터리빙될 주파수 인터리빙의 입력은 Om,l 으로 표기될 수 있다(t50010). 여기서, 각각의 데이터 셀들은 xm,l,0, .... xm,l,Ndata-1 로 표기될 수 있다. p 는 셀 인덱스, l 은 OFDM 심볼 인덱스, m 은 프레임의 인덱스를 의미할 수 있다. 즉, xm,l,p 는 m 번째 프레임, l 번째 OFDM 심볼의 p 번째 데이터 셀을 의미할 수 있다. Ndata 는 데이터 셀들의 개수를 의미할 수 있다. Nsym 은 심볼(프레임 시그널링 심볼, 노말 데이터 심볼, 프레임 엣지 심볼)들의 개수를 의미할 수 있다.
전술한 동작에 의해 인터리빙을 거친 후의 데이터 셀들은 Pm,l 로 표기될 수 있다(t50020). 각각의 인터리빙된 데이터 셀들은 vm,l,0, .... vm,l,Ndata-1 로 표기될 수 있다. p, l, m 은 전술한것과 같은 인덱스 값을 가질 수 있다.
도 29 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, FI 스킴 #1 및 FI 스킴 #2 에 따른 주파수 인터리빙의 논리적 동작 매커니즘의 수학식을 나타낸다.
먼저, FI 스킴 #1 에 따른 주파수 인터리빙을 설명한다. 전술한 바와 같이, 각 메모리 뱅크의 인터리빙 시퀀스(인터리빙 주소)를 이용하여 주파수 인터리빙이 수행될 수 있다.
짝수번째 심볼(j mod 2 = 0)에 대한 인터리빙 동작은 도시된 수학식(t51010)과 같이 수학적으로 기술될 수 있다. 입력 데이터 x 에 대하여, 인터리빙 시퀀스(인터리빙 주소)를 이용하여 주파수 인터리빙이 수행되어 출력 v 를 얻을 수 있다. 여기서, p 번째 입력 데이터 x 는, H(p) 번째 출력 데이터 v 와 같아지도록 순서가 섞일 수 있다.
즉, 짝수번째 심볼(첫번째 심볼)에 대해서는, 인터리빙 시퀀스를 이용하여 랜덤 쓰기 과정이 먼저 수행된 후, 다시 이를 순차적으로 읽는 선형 읽기 과정이 수행될 수 있다. 여기서, 인터리빙 시퀀스(인터리빙 주소)는 PRBS 등을 이용한 임의의 랜덤 시퀀스 제너레이터에 의해 발생되는 값일 수 있다.
홀수번째 심볼(j mod 2 = 1)에 대한 인터리빙 동작은 도시된 수학식(t51020)과 같이 수학적으로 기술될 수 있다. 입력 데이터 x 에 대하여, 인터리빙 시퀀스(인터리빙 주소)를 이용하여 주파수 인터리빙이 수행되어 출력 v 를 얻을 수 있다. 여기서, H(p) 번째 입력 데이터 x 는, p 번째 출력 데이터 v 와 같아지도록 순서가 섞일 수 있다. 즉, 짝수번째 심볼에 대한 인터리빙 처리와 비교했을 때, 인터리빙 시퀀스(인터리빙 주소)가 반대로(역으로, inverse) 적용될 수 있다.
즉, 홀수번째 심볼(두번째 심볼)에 대해서는, 순서대로 메모리에 데이터를 쓰는 선형쓰기 동작이 먼저 수행된 후, 다시 이를 인터리빙 시퀀스를 이용하여 랜덤하게 읽는 랜덤 읽기 과정이 수행될 수 있다. 마찬가지로, 인터리빙 시퀀스(인터리빙 주소)는 PRBS 등을 이용한 임의의 랜덤 시퀀스 제너레이터에 의해 발생되는 값일 수 있다.
먼저, FI 스킴 #2 에 따른 주파수 인터리빙을 설명한다.
FI 스킴 #2 에 따른 주파수 인터리빙의 경우, 짝/홀수번째 심볼에 대한 동작이 FI 스킴 #1 과 반대로 수행될 수 있다.
즉, 짝수번째 심볼에 대해서는 도시된 수학식(t51020)에 따라, 선형쓰기 동작 후, 랜덤 읽기 동작이 수행될 수 있다. 또한, 홀수번째 심볼에 대해서는 도시된 수학식(t51010)에 따라, 랜덤쓰기 동작 후, 선형 읽기 동작이 수행될 수 있다. 자세한 사항은, FI 스킴 #1 에서 설명한 것과 같다.
심볼 인덱스 l 은 0, 1, ... , Nsym-1, 셀 인덱스 p 는 0, 1, ... , Ndata - 1 로 표현될 수 있다. 실시예에 따라 짝수번째 심볼과 홀수번째 심볼에 대한 주파수 인터리빙 방식이 서로 뒤바뀔 수 있다. 또한, 실시예에 따라, FI 스킴 #1 과 FI 스킴 #2 에 따른 주파수 인터리빙 방식이 서로 뒤바뀔 수 있다.
도 30 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 짝수인 경우의 실시예를 도시한 도면이다.
본 실시예에서, N_sym 필드는 한 프레임 내에 OFDM 개수가 짝수개임을 지시할 수 있다. 본 실시예에서, 하나의 프레임은 하나의 프리앰블과 8 개의 OFDM 심볼을 가지고 있음을 가정한다. 실시예에 따라 프리앰블 앞에 부트 스트랩 정보가 더 포함될 수 있다. 부트 스트랩 정보는 도시되지 않았다.
본 실시예에서, 한 프레임은 각각 하나의 FSS 와 FES 를 포함할 수 있다. 여기서, FSS 와 FES 의 길이는 같다고 가정한다. 또한, N_sym 필드의 정보는 PLS 파트에 포함되어 전송되므로, 주파수 디인터리버가 FSS 디코딩 후에 이를 확인할 수 있다. 또한, 본 실시예에서, FES 에 대한 동작이 수행되기 이전에 N_sym 필드에 대한 디코딩이 완료된다고 가정한다.
각각의 프레임의 FSS 에서, 심볼 오프셋 생성기의 값은 0 으로 리셋될 수 있다. 따라서, 각 첫번째, 두번째 심볼들은 같은 인터리빙 시퀀스에 의해 처리될 수 있다. 또한, 각 프레임의 시작마다 다시 #0 시퀀스가 동작에 사용될 수 있다. 그 이후 차례대로 #1, #2 시퀀스가 주파수 인터리버/디인터리버의 동작에 사용될 수 있다.
도 31 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 짝수인 경우의 실시예를 도시한 도면이다.
첫번째 프레임에서, 프리앰블의 FI_mode 필드로부터, FSS 가 어떠한 방식으로 인터리빙되었는지에 대한 정보를 얻을 수 있다. 본 실시예는 OFDM 심볼이 짝수개인 경우이므로 FI 스킴 #1 만 사용될 수 있다.
이 후, FSS 가 디코딩되어, N_sym 정보가 획득될 수 있다. N_sym 정보로부터 본 프레임의 심볼 개수가 짝수개임을 알 수 있다. 이 후, 주파수 디인터리버가 FES 를 디코딩하게 될 때, 획득된 FI_mode 정보와 N_sym 정보를 이용하여 디코딩이 수행될 수 있다. 심볼의 개수가 짝수개인 경우이므로, 심볼 오프셋 생성기는 전술한 리셋모드에 따라 동작하지 않는다. 즉, 리셋 모드는 오프(off)된 상태일 수 있다.
이 후 다른 프레임에 대해서도, 짝수개의 OFDM 심볼들이 포함되어 있으므로 주파수 디인터리버가 같은 방식으로 동작할 수 있다. 즉, FSS 에서 사용될 FI 스킴은 FI 스킴 #1 이며, FES 에서 사용될 리셋 모드는 오프(off) 된 상태일 수 있다.
도 32 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 홀수인 경우의 실시예를 도시한 도면이다.
본 실시예에서, N_sym 필드는 한 프레임 내에 OFDM 개수가 홀수개임을 지시할 수 있다. 본 실시예에서, 하나의 프레임은 하나의 프리앰블과 7 개의 OFDM 심볼을 가지고 있음을 가정한다. 실시예에 따라 프리앰블 앞에 부트 스트랩 정보가 더 포함될 수 있다. 부트 스트랩 정보는 도시되지 않았다.
본 실시예에서, 심볼의 개수가 짝수인 경우와 마찬가지로, 한 프레임은 각각 하나의 FSS 와 FES 를 포함할 수 있다. 여기서, FSS 와 FES 의 길이는 같다고 가정한다. 또한, N_sym 필드의 정보는 PLS 파트에 포함되어 전송되므로, 주파수 디인터리버가 FSS 디코딩 후에 이를 확인할 수 있다. 또한, 본 실시예에서, FES 에 대한 동작이 수행되기 이전에 N_sym 필드에 대한 디코딩이 완료된다고 가정한다.
각각의 프레임의 FSS 에서, 심볼 오프셋 생성기의 값은 0 으로 리셋될 수 있다. 또한 임의의 프레임의 FES 에서, FI_mode 필드와 N_sym 필드의 값에 따라 심볼 오프셋 생성기가 리셋모드에 따라 동작할 수 있다. 따라서, 임의의 프레임의 FES에서, 심볼 오프셋 생성기의 값이 0 으로 리셋되거나, 리셋되지 않을 수 있다. 이러한 리셋 과정은 매 프레임마다 교대로 수행될 수 있다.
도시된 첫번째 프레임의 마지막 심볼, FES 에서 심볼 오프셋 생성기의 리셋이 발생될 수 있다. 따라서, 인터리빙 시퀀스는 #0 시퀀스로 리셋될 수 있다. 따라서, 주파수 인터리버/디인터리버는 해당 FES 를 #0 시퀀스에 따라 처리할 수 있다(t54010).
다음 프레임의 FSS 에서는 심볼 오프셋 생성기가 다시 리셋되어 #0 시퀀스가 사용될 수 있다(t54010). 두번째 프레임(프레임 #1) 의 FES 에서는 리셋이 발생되지 않고, 다시 세번째 프레임(프레임 #2) 의 FES 에서는 리셋이 발생될 수 있다.
도 33 는 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 심볼의 개수가 홀수인 경우의 실시예를 도시한 도면이다.
첫번째 프레임에서, 프리앰블의 FI_mode 필드로부터, FSS 가 어떠한 방식으로 인터리빙되었는지에 대한 정보를 얻을 수 있다. OFDM 심볼이 홀수개인 경우이므로 FI 스킴 #1 과 FI 스킴 #2 가 사용될 수 있다. 본 실시예의 첫번째 프레임에서는 FI 스킴 #1 이 사용되었다.
이 후, FSS 가 디코딩되어, N_sym 정보가 획득될 수 있다. N_sym 정보로부터 본 프레임의 심볼 개수가 홀수개임을 알 수 있다. 이 후, 주파수 디인터리버가 FES 를 디코딩하게 될 때, 획득된 FI_mode 정보와 N_sym 정보를 이용하여 디코딩이 수행될 수 있다. 심볼의 개수가 홀수개이고, FI 스킴#1 가 사용된 경우이므로, FI_mode 필드 값은 0임을 알 수 있다. FI_mode 가 0 이므로 심볼 오프셋 생성기는 전술한 리셋모드에 따라 동작할 수 있다. 즉, 리셋 모드는 온(on) 상태일 수 있다.
리셋모드에 따라 동작되어, 심볼 오프셋 생성기는 0 으로 리셋될 수 있다. 두번째 프레임에서 FI_mode 필드 값이 1 이므로, FI 스킴 #2 에 의해 FSS 가 처리되었음을 알 수 있다. 역시, N_sym 필드를 통해, 심볼의 개수가 홀수개임을 알 수 있다. 두번째 프레임의 경우에는 FI_mode 필드 값이 1 이고, 심볼 개수가 홀수개이므로 심볼 오프셋 생성기는 리셋모드에 따라 동작하지 않을 수 있다.
이러한 방식으로, FSS 에서 사용될 FI 스킴은 FI 스킴 #1 과 #2 가 번갈아가며 세팅될 수 있다. 또한, FES 에서 사용될 리셋 모드는 온(on) 과 오프(off) 가 번갈아가며 세팅될 수 있다. 실시예에 따라 매 프레임마다 세팅이 바뀌지 않을 수도 있다.
도 34 은 본 발명의 일 실시예에 따른 프레임 내의 심볼 수에 영향받지 않는 싱글 메모리 디인터리빙을 위한 시그널링에 있어서, 주파수 디인터리버의 동작을 도시한 도면이다.
주파수 디인터리버는 앞서 정의된 FI_mode 필드 및/또는 N_sym 필드의 정보를 이용하여 주파수 디인터리빙을 수행할 수 있다. 전술한 바와 같이 주파수 디인터리버는 싱글 메모리를 이용하여 동작할 수 있다. 기본적으로 주파수 디인터리빙은 송신단에서 수행한 주파수 인터리빙 과정의 역과정을 수행하여 원래의 데이터가 순서가 복원되도록 하는 과정일 수 있다.
전술한 것과 같이, FSS 에 대한 주파수 디인터리빙은 프리앰블의 FI_mode 필드 및 N_sym 필드를 이용하여 얻은 FI 스킴에 관한 정보를 기반으로 동작될 수 있다. FES 에 대한 주파수 디인터리빙은 FI_mode 필드와 N_sym 필드를 통해 리셋 모드의 동작 여부를 파악한뒤 그에 기반하여 동작될 수 있다.
즉, 입력되는 한쌍의 OFDM 심볼에 대하여, 주파수 디인터리버는 주파수 인터리버의 읽기/쓰기 동작의 역과정을 수행할 수 있다. 이 과정에서 하나의 인터리빙 시퀀스가 사용될 수 있다.
단, 전술한 바와 같이 주파수 인터리버는 더블 메모리를 사용하는 핑퐁 구조를 따르지만, 주파수 디인터리버는 싱글 메모리로 디인터리빙을 수행할 수 있다. 이 싱글 메모리 주파수 디인터리빙은 FI_mode 필드 및 N_sym 필드의 정보들을 이용하여 수행될 수 있다. 이 정보들을 통해, OFDM 심볼 개수에 영향을 받지 않고, 홀수개의 OFDM 심볼을 가진 프레임에 대해서도 싱글 메모리 주파수 디인터리빙이 가능할 수 있다.
본 발명에 따른 주파수 인터리버는 OFDM 심볼의 모든 데이터 셀들을 대상으로 주파수 인터리빙을 수행할 수 있다. 주파수 인터리버는 데이터 셀들을, 각 심볼의 가능한(available) 데이터 캐리어에 매핑시키는 동작을 수행할 수 있다.
본 발명에 따른 주파수 인터리버는 FFT 사이즈에 따라 다른 인터리빙 모드로 동작할 수 있다. 예를 들어, FFT 사이즈가 32K 인 경우, 주파수 인터리버는 전술한 FI 스킴 #1 과 같이 짝수번째 심볼에 대해서는 랜덤쓰기/선형읽기 동작을 수행하고, 홀수번째 심볼에 대해서는 선형쓰기/랜덤읽기 동작을 수행할 수 있다. 또한, FFT 사이즈가 16K 또는 8K 인 경우, 주파수 인터리버는 짝수/홀수에 무관하게 모든 심볼들에 대하여 선형읽기/랜덤쓰기 동작을 수행할 수 있다.
인터리빙 모드 전환을 결정하는 FFT 사이즈는 실시예에 따라 변경될 수 있다. 즉, 32K 및 16K 일 경우 FI 스킴 #1 과 같이 동작하고, 8K 일 경우 짝수/홀수에 무관한 동작을 수행할 수도 있다. 또한, 모든 FFT 사이즈에 대해 FI 스킴 #1 과 같이 동작할 수도 있고, 모든 FFT 사이즈에 대해 짝수/홀수에 무관한 동작을 수행할 수도 있다. 또한 실시예에 따라, 특정 FFT 사이즈에 대해서는 FI 스킴 #2 와 같이 동작할 수도 있다.
이러한 주파수 인터리빙은 전술한 인터리빙 시퀀스(인터리빙 주소)를 이용하여 수행될 수 있다. 인터리빙 시퀀스는 전술한대로 오프셋 값을 이용하여 다양하게 생성될 수 있다. 또한, 주소값 체크(address check) 가 수행되어 다양한 인터리빙 시퀀스가 생성될 수 있다.
도 35는 본 발명의 다른 실시예에 따른 variable data-rate 시스템을 나타낸 개념도이다.
구체적으로, 이 도면에 도시된 하나의 전송 슈퍼 프레임은 NTI_NUM개의 TI 그룹들로 구성되며, 각 TI 그룹은 N BLOCK_TI 개의 FEC 블록들을 포함할 수 있다. 이 경우, 각 TI 그룹에 포함된 FEC 블록의 개수는 서로 다를 수 있다. 본 발명의 일 실시예에 따른 TI 그룹은 타임 인터리빙을 수행하기 위한 블록으로 정의될 수 있으며, 상술한 TI 블록 또는 IF와 동일한 의미로 사용될 수 있다.
본 발명에서는 TI 그룹 내에 포함된 FEC 블록들의 개수가 서로 다른 경우, 하나의 트위스티드 로-컬럼 블록 인터리빙 룰(twisted row-column block interleaving rule)을 이용하여 TI 그룹들에 대한 인터리빙을 수행하는 것을 일 실시예로 할 수 있다. 이를 통해 수신기는 단일 메모리를 사용하여 디인터리빙을 수행할 수 있다. 이하에서는 매 TI 그룹마다 FEC 블록 개수가 변할 수 있는 베리어블 비트-레이트 (variable bit-rate, VBR) 전송을 고려한 입력 FEC block의 메모리 배열 방법 및 타임 인터리버의 리딩 (reading) 동작을 설명한다.
도 36은 본 발명의 블록 인터리빙의 라이팅(writing) 및 리딩 (reading) 오퍼레이션의 일 실시예를 나타낸다. 이에 대한 구체적인 내용은 전술하였다.
도 37은 본 발명의 일 실시예에 따른 블록 인터리빙을 나타낸 수학식이다.
도면에 도시된 수학식은 각 TI 그룹 단위로 적용되는 블록 인터리빙을 나타낸다. 수학식에 도시된 바와 같이, 시프트 밸류는 TI 그룹에 포함된 FEC 블록들의 개수가 홀수인 경우 및 짝수인 경우 각각 계산될 수 있다. 즉, 본 발명의 일 실시예에 따른 블록 인터리빙은 FEC 블록들의 개수를 홀수로 만든 후 시프트 밸류를 계산할 수 있다.
본 발명의 일 실싱예에 따른 타임 인터리버는 수퍼 프레임 내에서 가장 큰 FEC 블록 개수를 갖는 TI group을 기준으로 인터리빙과 관련된 파라미터들을 결정할 수 있다. 이를 통해 수신기는 단일 메모리 사용하여 디인터리빙을 수행할 수 있다. 이때, 결정된 FEC 블록을 가장 많이 포함하고 있는 TI 그룹의 FEC 블록 개수보다 적은 FEC 블록을 갖는 TI 그룹에 대해서는 부족한 FEC 블록의 개수에 해당하는 버츄얼 (virtual) FEC 블록들을 추가할 수 있다.
본 발명의 일 실시예에 따른 버츄얼 (virtual) FEC 블록들은 실제 FEC 블록들 앞에 삽입될 수 있다. 이후, 본 발명의 일 실시예에 따른 타임 인터리버는 버츄얼 (virtual) FEC 블록들을 고려하여 하나의 트위스티드 로-컬럼 블록 인터리빙 룰(twisted row-column block interleaving rule)을 이용하여 TI 그룹들에 대한 인터리빙을 수행할 수 있다. 또한 본 발명의 일 실시예에 따른 타임 인터리버는 리딩(reading) 동작에서 버츄얼 (virtual) FEC 블록들에 해당되는 메모리-인덱스 (memory-index)가 발생하는 경우 상술한 스킵 오퍼레이션을 수행할 수 있다. 이후 라이팅 (writing) 동작 시, 입력된 TI 그룹의 FEC 블록들의 개수와 리딩 (reading)시 출력 TI 그룹의 FEC 블록들의 개수를 일치 시킨다. 결과적으로, 본 발명의 일 실시예에 따른 타임 인터리빙에 따르면, 수신기에서 효율적인 싱글-메모리 디인터리빙(single-memory deinterleaving)을 수행하기 위하여 버츄얼 (virtual) FEC 블록을 삽입하더라도 스킵 오퍼레이션을 통해 실제 전송되는 데이터-레이트의 손실은 발생하지 않을 수 있다.
도 38는 본 발명의 일 실시예에 따른 버츄얼 (virtual) FEC 블록들을 나타낸 도면이다.
도면의 좌측은 맥시멈 FEC 블록들의 개수와 TI 그룹에 포함된 실제 FEC 블록들의 개수 및 맥시멈 FEC 블록들의 개수와 실제 FEC 블록들의 개수간의 차이를 나타낸 파라미터 및 버츄얼 (virtual) FEC 블록들의 개수를 도출하기 위한 수학식을 나타낸다.
도면의 우측은 TI 그룹 내에 버츄얼 (virtual) FEC 블록들이 삽입된 실시예를 나타낸다. 이 경우 상술한 바와 같이 버츄얼 (virtual) FEC 블록들은 실제 FEC 블록의 앞에 삽입될 수 있디.
도 39은 본 발명의 일 실시예에 따른 버츄얼 (virtual) FEC 블록들이 삽입된 이후 리딩 (reading) 동작을 나타낸 수학식이다.
도면에 표시된 스킵 오퍼레이션은 리딩(reading) 동작에서 버츄얼 (virtual) FEC 블록들을 스킵하는 역할을 수행할 수 있다.
도 40는 본 발명의 일 실시예에 따른 타임 인터리빙의 프로세스를 나타낸 순서도이다.
본 발명의 일 실시예에 따른 타임 인터리버는 이니셜 밸류(initial value)를 셋업할 수 있다(S67000).
이후 본 발명의 일 실시예에 따른 타임 인터리버는 버츄얼 (virtual) FEC 블록들을 고려하여 실제 FEC 블록들을 라이팅 (writing)할 수 있다(S67100).
이후, 본 발명의 일 실시예에 따른 타임 인터리버는 템포럴 TI 어드레스(temporal TI address)를 생성할 수 있다(S67200).
이후, 본 발명의 일 실시예에 따른 타임 인터리버는 생성된 TI 리딩 어드레스 (reading address)의 가용성 (availiability)를 평가할 수 있다(S67300). 이후, 본 발명의 일 실시예에 따른 타임 인터리버는 최종 TI 리딩 어드레스 (reading address)를 생성할 수 있다(S67400).
이후, 본 발명의 일 실시예에 따른 타임 인터리버는 실제 FEC 블록들을 리딩(reading)할 수 있다(S67500).
도 41은 본 발명의 일 실시예에 따른 시프트 밸류 및 맥시멈 TI 블록의 크기를 결정하는 과정을 나타낸 수학식이다.
본 도면은 TI 그룹이 2개이고, TI 그룹내의 셀의 개수는 30이고, 첫번째 TI 그룹에 포함된 FEC 블록의 개수가 5이고 두번째 TI 블록에 포함된 FEC 블록의 개수가 6인 경우의 실시예를 나타낸다. 맥시멈 FEC 블록의 개수는 6이 되나, 짝수이므로, 시프트 밸류를 구하기 위한 조정된 맥시멈 FEC 블록의 개수는 7이 될 수 있으며, 시프트 밸류는 4로 계산될 수 있다.
도 42 내지 도 44은 이전도면에서 전술한 실시예의 TI 과정을 나타낸 도면이다.
도 42은 본 발명의 일 실시예에 따른 라이팅 (writing) 오퍼레이션을 나타낸다.
이 도면은 이전도면에서 설명한 두 개의 TI 그룹에 대한 라이팅 (writing) 오퍼레이션을 나타낸다.
도면의 왼쪽에 도시된 블록은 TI 메모리 어드레스 어레이(memory address array)를 나타내며, 도면의 오른쪽에 도시된 블록은 연속한 두 개의 TI 그룹들에 대해 각각 버츄얼(virtual) FEC 블록들이 각각 2개 및 1개가 삽입된 경우의 라이팅 (writing) 오퍼레이션을 나타낸다. 상술한 바와 같이 조정된 맥시멈 FEC 블록의 개수는 7이므로, 첫번째 TI 그룹에는 두 개의 버츄얼(virtual) FEC 블록들이 삽입되며, 두번째 TI 그룹에는 한 개의 버츄얼(virtual) FEC 블록이 삽입된다.
도 43은 본 발명의 일 실시예에 따른 리딩 (reading) 오퍼레이션을 나타낸다.
도면의 왼쪽에 도시된 블록은 TI 메모리 어드레스 어레이(memory address array)를 나타내며, 도면의 오른쪽에 도시된 블록은 연속한 두 개의 TI 그룹들에 대해 각각 버츄얼(virtual) FEC 블록들이 각각 2개 및 1개가 삽입된 경우의 리딩 (reading) 오퍼레이션을 나타낸다. 이 경우, 버츄얼(virtual) FEC 블록들에도 실제 FEC 블록과 동일하게 리딩 (reading) 오퍼레이션이 수행될 수 있다.
도 44은 본 발명의 일 실시예에 따른 리딩 (reading) 오퍼레이션에서 스킵 오퍼레이션이 수행된 결과를 나타낸다.
도면에 도시된 바와 같이 두 개의 TI 그룹내에는 버츄얼(virtual) FEC 블록들이 스킵될 수 있다.
도 45 내지 46는 전술한 TI의 역과정인 타임 디인터리빙을 나타낸다.
구체적으로 도 47은 첫번째 TI 그룹에 대한 타임 디인터리빙을 나타내며 도 48는 두번째 TI 그룹에 대한 타임 디인터리빙을 나타낸다.
도 45는 본 발명의 일 실시예에 따른 타임 디인터리빙의 라이팅 (writing) 과정을 나타낸다.
도면의 왼쪽에 도시된 블록은 TI 메모리 어드레스 어레이(memory address array)를 나타내며, 도면의 가운데 도시된 블록은 타임 디인터리버에 입력된 첫번째 TI 그룹을 나타내며, 도면의 오른쪽에 도시된 블록은 연속한 첫번째 TI 그룹에 대해 스킵된 버츄얼(virtual) FEC 블록들을 고려하여 수행된 라이팅 (writing) 과정을 나타낸다.
도면에 도시된 바와 같이, TI 과정에서 스킵된 2 개의 버츄얼 (virtual) FEC 블록들은 정확한 리딩 (reading) 오퍼레이션을 위해 라이팅 (writing) 과정에서 복원될 수 있다. 이 경우, 스킵된 2 개의 버츄얼 (virtual) FEC 블록들의 위치 및 양은 임의의 알고리즘을 통해 추정될 수 있다.
도 46는 본 발명의 다른 실시예에 따른 타임 디인터리빙의 라이팅 (writing) 과정을 나타낸다.
도면의 왼쪽에 도시된 블록은 TI 메모리 어드레스 어레이(memory address array)를 나타내며, 도면의 가운데 도시된 블록은 타임 디인터리버에 입력된 두번째 TI 그룹을 나타내며, 도면의 오른쪽에 도시된 블록은 연속한 두번째 TI 그룹에 대해 스킵된 버츄얼(virtual) FEC 블록들을 고려하여 수행된 라이팅 (writing) 과정을 나타낸다.
도면에 도시된 바와 같이, TI 과정에서 스킵된 1 개의 버츄얼 (virtual) FEC 블록들은 정확한 리딩 (reading) 오퍼레이션을 위해 라이팅 (writing) 과정에서 복원될 수 있다. 이 경우, 스킵된 1 개의 버츄얼 (virtual) FEC 블록들의 위치 및 양은 임의의 알고리즘을 통해 추정될 수 있다.
도 47은 본 발명의 다른 실시예에 따른 타임 디인터리빙의 리딩 (reading) 오퍼레이션을 나타내는 수학식이다.
수신기에서 사용되는 TDI 시프트 밸류는 송신기에서 사용된 시프트 밸류에 의해 결정될 수 있으며, 스킵 오퍼레이션 (skip operation)은 송신부와 유사하게 리딩 (reading) 오퍼레이션에서 버츄얼 (virtual) FEC 블록들을 스킵하는 역할을 수행할 수 있다.
도 48은 본 발명의 일 실시예에 따른 타임 디인터리빙의 프로세스를 나타낸 순서도이다.
본 발명의 일 실시예에 따른 타임 디인터리버는 이니셜 밸류(initial value)를 셋업할 수 있다(S75000).
이후 본 발명의 일 실시예에 따른 타임 인터리버는 버츄얼 (virtual) FEC 블록들을 고려하여 실제 FEC 블록들을 라이팅 (writing)할 수 있다(S75100).
이후, 본 발명의 일 실시예에 따른 타임 인터리버는 템포럴 TDI 어드레스(temporal TDI address)를 생성할 수 있다(S75200).
이후, 본 발명의 일 실시예에 따른 타임 인터리버는 생성된 TDI 리딩 어드레스 (reading address)의 가용성 (availiability)를 평가할 수 있다(S75300). 이후, 본 발명의 일 실시예에 따른 타임 인터리버는 최종 TDI 리딩 어드레스 (reading address)를 생성할 수 있다(S75400).
이후, 본 발명의 일 실시예에 따른 타임 인터리버는 실제 FEC 블록들을 리딩(reading)할 수 있다(S75500).
도 49 은 본 발명의 일 실시예에 따른 수신기 프로토콜 스택(receiver protocol stack) 을 도시한 도면이다.
방송망을 통한 서비스 딜리버리(broadcast service delivery)에 있어 두가지 방법이 있을 수 있다.
첫번째 방법은 MMT (MPEG Media Transport) 에 근거하여, MPU (Media Processing Units) 들을 MMTP (MMT protocol) 을 이용하여 전송하는 것일 수 있다. 두번째 방법은 MPEG DASH 에 근거하여, DASH 세그먼트들을 ROUTE (Real time Object delivery over Unidirectional Transport) 를 이용하여 전송하는 것일 수 있다.
NRT 미디어, EPG 데이터, 및 다른 파일을 포함하는 비시간 컨텐츠는 ROUTE로 전달된다. 시그널은 MMTP 및/또는 ROUTE를 통해 전달될 수 있는 반면, 부트스트랩 시그널링 정보는 SLT (service list table)에 의해 제공된다.
하이브리드 서비스 딜리버리(hybrid service delivery)에 있어서는, HTTP/TCP/IP 상의 MPEG DASH가 브로드밴드 측에서 이용된다. ISO BMFF (base media file format)의 미디어 파일은 딜리버리, 브로드캐스트 및 브로드밴드 딜리버리에 대한 디미어 인캡슐레이션 및 동기화 포맷으로 사용된다. 여기서 하이브리드 서비스 딜리버리란 하나 또는 그 이상의 프로그램 엘레멘트가 브로드밴드 패쓰(path) 를 통하여 전달되는 경우를 말할 수 있다.
서비스는 세 가지 기능 레이어를 이용하여 전달된다. 이들은 피지컬 레이어, 딜리버리 레이어, 서비스 매니지먼트 레이어이다. 피지컬 레이어는 시그널, 서비스 공지, IP 패킷 스트림이 브로드캐스트 피지컬 레이어 및/또는 브로드밴드 피지컬 레이어에서 전송되는 매커니즘을 제공한다. 딜리버리 레이어는 오브젝트 및 오브젝트 플로우 트랜스포트 기능을 제공한다. 이는 브로드캐스트 피지컬 레이어의 UDP/IP 멀티캐스트에서 동작하는 MMTP 또는 ROUTE 프로토콜에 의해 가능하고, 브로드밴드 피지컬 레이어의 TCP/IP 유니캐스트에서 HTTP 프로토콜에 의해 가능하다. 서비스 매니지먼트 레이어는 하위인 딜리버리 및 피지컬 레이어에 의해 실행되는 리니어 TV 또는 HTML5 응용 서비스와 같은 모든 서비스를 가능하게 한다.
본 도면에서 방송(broadcast) 쪽 프로토콜 스택 부분은, SLT 와 MMTP 를 통해 전송되는 부분, ROUTE 를 통해 전송되는 부분으로 나뉘어질 수 있다.
SLT 는 UDP, IP 레이어를 거쳐 인캡슐레이션될 수 있다. 여기서 SLT 에 대해서는 후술한다. MMTP 는 MMT 에서 정의되는 MPU 포맷으로 포맷된 데이터들과 MMTP 에 따른 시그널링 정보들을 전송할 수 있다. 이 데이터들은 UDP, IP 레이어를 거쳐 인캡슐레이션될 수 있다. ROUTE 는 DASH 세그먼트 형태로 포맷된 데이터들과 시그널링 정보들, 그리고 NRT 등의 논 타임드(non timed) 데이터들을 전송할 수 있다. 이 데이터들 역시 UDP, IP 레이어를 거쳐 인캡슐레이션될 수 있다. 실시예에 따라 UDP, IP 레이어에 따른 프로세싱은 일부 또는 전부 생략될 수도 있다. 여기서 도시된 시그널링 정보들(signaling)은 서비스에 관한 시그널링 정보일 수 있다.
SLT 와 MMTP 를 통해 전송되는 부분, ROUTE 를 통해 전송되는 부분은 UDP, IP 레이어에서 처리된 후 링크 레이어(Data Link Layer)에서 다시 인캡슐레이션될 수 있다. 링크 레이어에 대해서는 후술한다. 링크 레이어에서 처리된 방송 데이터는 피지컬 레이어에서 인코딩/인터리빙 등의 과정을 거쳐 방송 신호로서 멀티캐스트될 수 있다.
본 도면에서 브로드밴드(broadband) 쪽 프로토콜 스택 부분은, 전술한 바와 같이 HTTP 를 통하여 전송될 수 있다. DASH 세그먼트 형태로 포맷된 데이터들과 시그널링 정보들, NRT 등의 정보가 HTTP 를 통하여 전송될 수 있다. 여기서 도시된 시그널링 정보들(signaling)은 서비스에 관한 시그널링 정보일 수 있다. 이 데이터들은 TCP, IP 레이어를 거쳐 프로세싱된 후, 링크 레이어에서 인캡슐레이션될 수 있다. 실시예에 따라 TCP, IP, 링크 레이어의 일부 또는 전부는 생략될 수 있다. 이 후 처리된 브로드밴드 데이터는 피지컬 레이어에서 전송을 위한 처리를 거쳐 브로드밴드로 유니캐스트될 수 있다.
서비스는 전체적으로 사용자에게 보여주는 미디어 컴포넌트의 컬렉션일 수 있고, 컴포넌트는 여러 미디어 타입의 것일 수 있고, 서비스는 연속적이거나 간헐적일 수 있고, 서비스는 실시간이거나 비실시간일 수 있고, 실시간 서비스는 TV 프로그램의 시퀀스로 구성될 수 있다.
도 50 는 본 발명의 일 실시예에 따른 SLT 와 SLS (service layer signaling) 의 관계를 도시한 도면이다.
서비스 시그널링은 서비스 디스커버리 및 디스크립션 정보를 제공하고, 두 기능 컴포넌트를 포함한다. 이들은 SLT를 통한 부트스트랩 시그널링과 SLS이다. 이들은 사용자 서비스를 발견하고 획득하는 데 필요한 정보를 나타낸다. SLT는 수신기가 기본 서비스 리스트를 작성하고 각 서비스에 대한 SLS의 발견을 부트스트랩 할 수 있게 해준다.
SLT는 기본 서비스 정보의 매우 빠른 획득을 가능하게 한다. SLS는 수신기가 서비스와 그 컨텐츠 컴포넌트를 발견하고 이에 접속할 수 있게 해준다. SLT 와 SLS 의 구체적 내용에 대해서는 후술한다.
전술한 바와 같이 SLT 는 UDP/IP 를 통해 전송될 수 있다. 이 때, 실시예에 따라 이 전송에 있어 가장 강건한(robust) 방법을 통해 SLT 에 해당하는 데이터가 전달될 수 있다.
SLT 는 ROUTE 프로토콜에 의해 전달되는 SLS 에 접근하기 위한 액세스 정보를 가질 수 있다. 즉 SLT 는 ROUTE 프로토콜에 따른 SLS 에 부트스트래핑할 수 있다. 이 SLS 는 전술한 프로토콜 스택에서 ROUTE 윗 레이어에 위치하는 시그널링 정보로서, ROUTE/UDP/IP 를 통해 전달될 수 있다. 이 SLS 는 ROUTE 세션에 포함되는 LCT 세션들 중 하나를 통하여 전달될 수 있다. 이 SLS 를 이용하여 원하는 서비스에 해당하는 서비스 컴포넌트에 접근할 수 있다.
또한 SLT 는 MMTP 에 의해 전달되는 MMT 시그널링 컴포넌트에 접근하기 위한 액세스 정보를 가질 수 있다. 즉, SLT 는 MMTP 에 따른 SLS 에 부트스트래핑할 수 있다. 이 SLS 는 MMT 에서 정의하는 MMTP 시그널링 메시지(Signaling Message)에 의해 전달될 수 있다. 이 SLS 를 이용하여 원하는 서비스에 해당하는 스트리밍 서비스 컴포넌트(MPU) 에 접근할 수 있다. 전술한 바와 같이, 본 발명에서는 NRT 서비스 컴포넌트는 ROUTE 프로토콜을 통해 전달되는데, MMTP 에 따른 SLS 는 이에 접근하기 위한 정보도 포함할 수 있다. 브로드밴드 딜리버리에서, SLS는 HTTP(S)/TCP/IP로 전달된다.
도 51 은 본 발명의 일 실시예에 따른 SLT 를 도시한 도면이다.
먼저, 서비스 매니지먼트, 딜리버리, 피지컬 레이어의 각 논리적 엔티티간의 관계에 대해서 설명한다.
서비스는 두 기본 타입 중 하나로 시그널링될 수 있다. 첫 번째 타입은 앱 기반 인헨스먼트를 가질 수 있는 리니어 오디오/비디오 또는 오디오만의 서비스이다. 두 번째 타입은 프레젠테이션 및 구성이 서비스의 획득에 의해 실행되는 다운로드 어플리케이션에 의해 제어되는 서비스이다. 후자는 앱 기반 서비스라 불릴 수도 있다.
서비스의 컨텐츠 컴포넌트를 전달하는 MMTP 세션 및/또는 ROUTE/LCT 세션의 존재와 관련된 규칙은 다음과 같을 수 있다.
앱 기반 인헨스먼트가 없는 리니어 서비스의 브로드캐스트 딜리버리를 위해, 서비스의 컨텐츠 컴포넌트는 (1) 하나 이상의 ROUTE/LCT 세션 또는 (2) 하나 이상의 MMTP 세션 중 하나 (둘 다는 아님)에 의해 전달될 수 있다.
앱 기반 인헨스먼트가 있는 리니어 서비스의 브로드캐스트 딜리버리를 위해, 서비스의 컨텐츠 컴포넌트는 (1) 하나 이상의 ROUTE/LCT 세션 및 (2) 0개 이상의 MMTP 세션에 의해 전달될 수 있다.
특정 실시예에서, 동일한 서비스에서 스트리밍 미디어 컴포넌트에 대한 MMTP 및 ROUTE의 양자의 사용이 허용되지 않을 수 있다.
앱 기반 서비스의 브로드캐스트 딜리버리를 위해, 서비스의 컨텐츠 컴포넌트는 하나 이상의 ROUTE/LCT 세션에 의해 전달될 수 있다.
각각의 ROUTE 세션은 서비스를 구성하는 컨텐츠 컴포넌트를 전체적으로 또는 부분적으로 전달하는 하나 이상의 LCT 세션을 포함한다. 스트리밍 서비스 딜리버리에서, LCT 세션은 오디오, 비디오, 또는 클로즈드 캡션 스트림과 같은 사용자 서비스의 개별 컴포넌트를 전달할 수 있다. 스트리밍 미디어는 DASH 세그먼트로 포맷된다.
각각의 MMTP 세션은 MMT 시그널링 메시지 또는 전체 또는 일부 컨텐츠 컴포넌트를 전달하는 하나 이상의 MMTP 패킷 플로우를 포함한다. MMTP 패킷 플로우는 MMT 시그널링 메시지 또는 MPU로 포맷된 컴포넌트를 전달할 수 있다.
NRT 사용자 서비스 또는 시스템 메타데이터의 딜리버리를 위해, LCT 세션은 파일 기반의 컨텐츠 아이템을 전달한다. 이들 컨텐츠 파일은 NRT 서비스의 연속적 (타임드) 또는 이산적 (논 타임드) 미디어 컴포넌트, 또는 서비스 시그널링이나 ESG 프레그먼트와 같은 메타데이터로 구성될 수 있다. 서비스 시그널링이나 ESG 프레그먼트와 같은 시스템 메타데이터의 딜리버리 또한 MMTP의 시그널링 메시지 모드를 통해 이루어질 수 있다.
브로드캐스트 스트림은 특정 대역 내에 집중된 캐리어 주파수 측면에서 정의된 RF 채널의 개념이다. 그것은 [지리적 영역, 주파수] 쌍에 의해 식별된다. PLP (physical layer pipe)는 RF 채널의 일부에 해당된다. 각 PLP는 특정 모듈레이션 및 코딩 파라미터를 갖는다. 그것은 속해 있는 브로드캐스트 스트림 내에서 유일한 PLPID (PLP identifier)에 의해 식별된다. 여기서, PLP는 DP (data pipe)라 불릴 수도 있다.
각 서비스는 두 형태의 서비스 식별자에 의해 식별된다. 하나는 SLT에서 사용되고 브로드캐스트 영역 내에서만 유일한 컴팩트 형태이고, 다른 하나는 SLS 및 ESG에서 사용되는 전 세계적으로 유일한 형태이다. ROUTE 세션은 소스 IP 어드레스, 데스티네이션 IP 어드레스, 데스티네이션 포트 넘버에 의해 식별된다. LCT 세션 (그것이 전달하는 서비스 컴포넌트와 관련됨)은 페어런트 ROUTE 세션의 범위 내에서 유일한 TSI (transport session identifier)에 의해 식별된다. LCT 세션에 공통적인 성질 및 개별 LCT 세션에 유일한 특정한 성질은 서비스 레이어 시그널링의 일부인 S-TSID (service-based transport session instance description)라 불리는 ROUTE 시그널링 구조에서 주어진다. 각 LCT 세션은 하나의 PLP를 통해 전달된다. 실시예에 따라 하나의 LCT 세션이 복수개의 PLP 를 통해 전달될 수도 있다. ROUTE 세션의 서로 다른 LCT 세션은 서로 다른 PLP에 포함되거나 그렇지 않을 수 있다. 여기서, ROUTE 세션은 복수개의 PLP 들을 통해 전달될 수도 있다. S-TSID에 서술된 성질은 각 LCT 세션에 대한 TSI 값 및 PLPID, 딜리버리 오브젝트/파일에 대한 디스크립터, 어플리케이션 레이어 FEC 파라미터를 포함한다.
MMTP 세션은 데스티네이션 IP 어드레스 및 데스티네이션 포트 넘버에 의해 식별된다. MMTP 패킷 플로우 (그것이 전달하는 서비스 컴포넌트와 관련됨)는 페어런트 MMTP 세션의 범위 내에서 유일한 packet_id에 의해 식별된다. 각 MMTP 패킷 플로우에 공통인 성질 및 MMTP 패킷 플로우의 특정 성질이 SLT에 주어진다. 각 MMTP 세션에 대한 성질은 MMTP 세션 내에서 전달될 수 있는 MMT 시그널링 메시지에 의해 주어진다. MMTP 세션의 서로 다른 MMTP 패킷 플로우는 서로 다른 PLP에 포함되거나 그렇지 않을 수 있다. 여기서, MMTP 세션은 복수개의 PLP 들을 통해 전달될 수도 있다. MMT 시그널링 메시지에 서술된 성질은 각 MMTP 패킷 플로우에 대해 packet_id 값 및 PLPID를 포함한다. 여기서 MMT 시그널링 메시지는 MMT 에서 정의된 형태이거나, 후술할 실시예들에 따라 변형이 이루어진 형태일 수 있다.
이하, LLS (Low Level Signaling) 에 대해서 설명한다.
이 기능에 전용인 잘 알려진 어드레스/포트를 갖는 IP 패킷의 페이로드에 전달되는 시그널링 정보는 LLS이라 불린다. 이 IP 어드레스 및 포트넘버는 실시예에 따라 다르게 설정될 수 있다. 일 실시예에서, LLS는 어드레스가 224.0.23.60이고 데스티네이션 포트가 4937/udp인 IP 패킷에 전달될 수 있다. LLS 는 전술한 프로토콜 스택상에서 "SLT" 로 표현된 부분에 위치할 수 있다. 단, 실시예에 따라 LLS 는 UDP/IP 레이어의 프로세싱을 거치지 않고, 신호 프레임 상의 별도의 물리 채널(dedicated channel) 을 통해 전송될 수도 있다.
LLS 데이터를 전달하는 UDP/IP 패킷들은 LLS 테이블이라는 형태로 포맷될 수 있다. LLS 데이터를 운반하는 매 UDP/IP 패킷의 첫번째 바이트는 LLS 테이블의 시작일 수 있다. 모든 LLS 테이블의 최대 길이는 피지컬 레이어로부터 전달될 수 있는 가장 큰 IP 패킷에 의해 65,507 바이트로 제한된다.
LLS 테이블은 LLS 테이블의 타입을 식별하는 LLS 테이블 ID 필드와, LLS 테이블의 버전을 식별하는 LLS 테이블 버전 필드를 포함할 수 있다. LLS 테이블 ID 필드가 나타내는 값에 따라서, LLS 테이블은 전술한 SLT 를 포함하거나 RRT (Rating Region Table) 을 포함할 수 있다. RRT 는 컨텐트 권고 레이팅(Content Advisory Rating) 에 관한 정보를 가질 수 있다.
이하, SLT (Service List Table) 에 대해서 설명한다. LLS는 수신기에 의한 서비스 획득의 부트스트래핑과 빠른 채널 스캔을 지원하는 시그널링 정보일 수 있고, SLT는 기본 서비스 리스팅을 구축하고 SLS의 부트스트랩 디스커버리를 제공하기 위해 사용되는 시그널링 정보의 테이블일 수 있다.
SLT의 기능은 MPEG-2 시스템에서의 PAT (program association table) 및 ATSC 시스템에서 발견되는 FIC (fast information channel)와 유사하다. 처음으로 브로드캐스트 이미션을 겪는 수신기에게 이것은 시작되는 지점이다. SLT는 수신기가 채널 이름, 채널 넘버 등으로 그것이 수신할 수 있는 모든 서비스의 리스트를 구축할 수 있게 하는 빠른 채널 스캔을 지원한다. 또한 SLT는 수신기가 각 서비스에 대해 SLS를 발견할 수 있게 하는 부트스트랩 정보를 제공한다. ROUTE/DASH로 전달되는 서비스에 대해, 부트스트랩 정보는 SLS를 전달하는 LCT 세션의 데스티네이션 IP 어드레스 및 데스티네이션 포트를 포함한다. MMT/MPU로 전달되는 서비스에 대해, 부트스트랩 정보는 SLS를 전달하는 MMTP 세션의 데스티네이션 IP 어드레스 및 데스티네이션 포트를 포함한다.
SLT는 브로드캐스트 스트림에서 각 서비스에 관한 다음의 정보를 포함함으로써 서비스 획득 및 빠른 채널 스캔을 지원한다. 첫째로, SLT는 시청자에게 유의미하고 위/아래 선택 또는 채널 넘버를 통한 초기 서비스 선택을 지원할 수 있는 서비스 리스트의 프레젠테이션을 허용하는 데 필요한 정보를 포함할 수 있다. 둘째로, SLT는 각 리스팅된 서비스에 대해 SLS의 위치를 찾아내는 데 필요한 정보를 포함할 수 있다. 즉, SLT 는 SLS 를 전달하는 위치(location)에 대한 엑세스 정보를 포함할 수 있다.
도시된 본 발명의 일 실시예에 따른 SLT 는, SLT 루트 엘레먼트(root element) 를 가지는 XML 도큐먼트 형태로 표현되었다. 실시예에 따라, SLT 는 바이너리 포맷 또는 XML 도큐먼트의 형태로 표현될 수 있다.
도시된 SLT 의 SLT 루트 엘레멘트는 @bsid, @sltSectionVersion, @sltSectionNumber, @totalSltSectionNumbers, @language, @capabilities, InetSigLoc 및/또는 Service 를 포함할 수 있다. 실시예에 따라 SLT 루트 엘레멘트는 @providerId를 더 포함할 수도 있다. 실시예에 따라 SLT 루트 엘레멘트는 @language 를 포함하지 않을 수 있다.
Service 엘레멘트는 @serviceId, @SLTserviceSeqNumber, @protected, @majorChannelNo, @minorChannelNo, @serviceCategory, @shortServiceName, @hidden, @slsProtocolType, BroadcastSignaling, @slsPlpId, @slsDestinationIpAddress, @slsDestinationUdpPort, @slsSourceIpAddress, @slsMajorProtocolVersion, @SlsMinorProtocolVersion, @serviceLanguage, @broadbandAccessRequired, @capabilities 및/또는 InetSigLoc 를 포함할 수 있다.
실시예에 따라 SLT 의 성질 또는 엘레멘트는 추가/변경/삭제될 수 있다. SLT 에 포함되는 각 엘레멘트들 역시 추가적으로 별도의 성질 또는 엘레멘트를 가질 수 있으며, 본 실시예에 따른 성질 또는 엘레멘트 중 일부가 생략될 수도 있다. 여기서 @ 표기된 필드는 성질(attribute)에 해당하고, @ 표기되지 않은 필드는 엘레멘트(element)에 해당할 수 있다.
@bsid는 전체 브로드캐스트 스트림의 식별자이다. BSID의 값은 지역적 레벨에서 유일할 수 있다.
@providerId는 이 브로드캐스트 스트림의 일부 또는 전체를 사용하는 방송사의 인덱스이다. 이것은 선택적인 성질이다. 그것이 존재하지 않는다는 것은 이 브로드캐스트 스트림이 하나의 방송사에 의해 사용되고 있다는 것을 의미한다. @providerId 는 도면에 도시되지 않았다.
@sltSectionVersion은 SLT 섹션의 버전 넘버일 수 있다. sltSectionVersion는 slt 내에서 전달되는 정보에 변화가 생기면 1씩 증분될 수 있다. 그것이 최대값에 도달하면, 0으로 시프트된다.
@sltSectionNumber는 SLT의 해당 섹션의 넘버로 1부터 카운트될 수 있다. 즉 해당 SLT 섹션의 섹션넘버에 해당할 수 있다. 이 필드가 사용되지 않는 경우, 디폴트 값 1 로 설정될 수 있다.
@totalSltSectionNumbers는 해당 섹션이 일부인 SLT의 섹션(즉, 최대 sltSectionNumber를 갖는 섹션)의 총 넘버일 수 있다. sltSectionNumber와 totalSltSectionNumbers는 함께 분할로 보내지는 경우 SLT의 일부의 "N의 M 부분"을 나타낸다고 볼 수 있다. 즉 SLT 를 전송함에 있어서 분할(fragmentation)을 통한 전송이 지원될 수 있다. 이 필드가 사용되지 않는 경우, 디폴트 값 1 로 설정될 수 있다. 필드가 사용되지 않는 경우는 SLT 가 분할되어 전송되지 않는 경우일 수 있다.
@language는 해당 slt의 경우에 포함되는 서비스의 주 언어를 나타낼 수 있다. 실시예에 따라 이 필드 값은 ISO 에서 정의되는 3-캐릭터 언어 코드(three character language code) 의 형태일 수 있다. 본 필드는 생략될 수 있다.
@capabilities는 해당 slt의 경우에서 모든 서비스에 대한 내용을 디코딩하고 유의미하게 나타내기 위해 요구되는 캐피빌리티를 나타낼 수 있다.
InetSigLoc는 어디에서 브로드밴드를 통해 외부 서버로부터 모든 요구되는 타입의 데이터를 획득할 수 있는지 수신기에게 알리는 URL을 제공할 수 있다. 이 엘레멘트는 @urlType 를 하위필드로 더 포함할 수도 있다. 이 @urlType 필드의 값에 따라, InetSigLoc 이 제공하는 URL 의 타입이 지시될 수 있다. 실시예에 따라 @urlType 필드 값이 0 인 경우, InetSigLoc 은 시그널링 서버의 URL 을 제공할 수 있다. @urlType 필드 값이 1 인 경우, InetSigLoc 은 ESG 서버의 URL 을 제공할 수 있다. @urlType 필드가 그 외의 값을 가지는 경우는 향후 사용을 위해 남겨둘 수 있다(reserved for future use).
Service 필드는 각 서비스들에 대한 정보를 가지는 엘레멘트로, 서비스 엔트리에 해당할 수 있다. SLT 가 지시하는 서비스의 개수(N)만큼 Service 엘레멘트 필드가 존재할 수 있다. 이하 Service 필드의 하위 성질/엘레멘트에 대해 설명한다.
@serviceId는 해당 브로드캐스트 영역의 범위 내에서 해당 서비스를 유일하게 식별하는 정수 넘버일 수 있다. 실시예에 따라 @serviceId 의 스코프(scope)는 변경될 수 있다. @SLTserviceSeqNumber는 상기 serviceId 성질과 같은 서비스 ID를 갖는 SLT 서비스 정보의 시퀀스 넘버를 나타내는 정수 넘버일 수 있다. SLTserviceSeqNumber 값은 각 서비스에 대해 0부터 시작할 수 있고, 해당 Service 엘레먼트에서 어떠한 성질이 변화할 때마다 1씩 증분될 수 있다. ServiceID의 특정 값을 갖는 이전 서비스 엘레먼트에 비해 아무 성질 값이 변화하지 않으면, SLTserviceSeqNumber는 증분되지 않을 것이다. SLTserviceSeqNumber 필드는 최대값에 도달한 후 0으로 시프트된다.
@protected 는 플래그 정보로서, 해당 서비스의 유의미한 재생을 위한 하나 또는 그 이상의 컴포넌트가 보호된(protected) 상태인지를 지시할 수 있다. "1"(참)로 설정되면, 유의미한 프레젠테이션에 필요한 하나 이상의 컴포넌트가 보호된다. "0"(거짓)으로 설정되면, 해당 프레그는 서비스의 유의미한 프레젠테이션에 필요한 컴포넌트가 아무것도 보호되지 않는다는 것을 나타낸다. 디폴트 값은 거짓이다.
@majorChannelNo는 서비스의 "주" 채널 넘버를 나타내는 정수값이다. 본 필드의 일 실시예는 1 에서 999 까지의 범위를 가질 수 있다.
@minorChannelNo는 서비스의 "부" 채널 넘버를 나타내는 정수값이다. 본 필드의 일 실시예는 1 에서 999 까지의 범위를 가질 수 있다.
@serviceCategory는 해당 서비스의 카테고리를 나타낼 수 있다. 본 필드가 지시하는 의미는 실시예에 따라 변경될 수 있다. 일 실시예에 따르면 본 필드 값이 1, 2, 3 인 경우, 각각 해당 서비스는 리니어 A/V 서비스(Linear A/V service), 리니어 오디오 서비스(Linear audio only service), 앱 베이스드 서비스(app-based service) 에 해당할 수 있다. 본 필드 값이 0 인 경우 정의되지 않은 카테고리의 서비스일 수 있고, 본 필드 값이 다른 0, 1, 2, 3 외의 다른 값을 가지는 경우는 향후 사용을 위해 남겨둘 수 있다(reserved for future use). @shortServiceName는 서비스의 쇼트 스트링 네임일 수 있다.
@hidden는 존재하고 "참"으로 설정되는 경우 부울 값일 수 있고, 이는 서비스가 테스트나 독점 사용을 위한 것이고 보통의 TV 수신기로는 선택되지 않는다는 것을 나타낸다. 존재하지 않는 경우 디폴트 값은 "거짓"이다.
@slsProtocolType은 해당 서비스에 의해 사용되는 SLS의 프로토콜의 타입을 나타내는 성질일 수 있다. 본 필드가 지시하는 의미는 실시예에 따라 변경될 수 있다. 일 실시예에 따르면 본 필드 값이 1, 2, 인 경우, 각각 해당 서비스가 사용하는 SLS 의 프로토콜은 ROUTE, MMTP 일 수 있다. 본 필드 값이 0 또는 그 외의 값을 가지는 경우는 향후 사용을 위해 남겨둘 수 있다(reserved for future use). 본 필드는 @slsProtocol 로 불릴 수도 있다.
BroadcastSignaling 및 그 하위 성질/엘레멘트들은 방송 시그널링과 관련된 정보를 제공할 수 있다. BroadcastSignaling 엘레먼트가 존재하지 않는 경우, 페어런트 서비스 엘레먼트의 차일드 엘레먼트인 InetSigLoc가 존재할 수 있고, 그 성질인 urlType은 URL_type 0x00 (URL to signaling server)을 포함한다. 이 경우, 성질인 url은 service_id가 페어런트 서비스 엘레먼트에 대한 serviced 속성에 해당하는 쿼리 파라미터 svc=<service_id>를 지원한다.
또는 BroadcastSignaling 엘레먼트가 존재하지 않는 경우, 엘레먼트 InetSigLoc는 slt 루트 엘레먼트의 차일드 엘레먼트로 존재할 수 있고, InetSigLoc 엘레먼트의 속성 urlType은 URL_type 0x00 (URL to signaling server)를 포함한다. 이 경우, URL_type 0x00에 대한 성질 url은 service_id가 페어런트 서비스 엘레먼트의 serviceId 성질에 해당하는 쿼리 파라미터 svc=<service_id>를 지원한다.
@slsPlpId는 해당 서비스에 대해 SLS를 전달하는 PLP의 PLP ID를 나타내는 정수를 표현하는 스트링일 수 있다.
@slsDestinationIpAddress는 해당 서비스에 대해 SLS 데이터를 전달하는 패킷의 dotted-IPv4 데스티네이션 어드레스를 포함하는 스트링일 수 있다.
@slsDestinationUdpPort는 해당 서비스에 대해 SLS 데이터를 전달하는 패킷의 포트 넘버를 포함하는 스트링일 수 있다. 전술한 바와 같이 데스티네이션 IP/UDP 정보에 의하여 SLS 부트스트래핑이 수행될 수 있다.
@slsSourceIpAddress는 해당 서비스에 대해 SLS 데이터를 전달하는 패킷의 dotted-IPv4 소스 어드레스를 포함하는 스트링일 수 있다.
@slsMajorProtocolVersion는 해당 서비스에 대해 SLS를 전달하기 위해 사용되는 프로토콜의 주 버전 넘버일 수 있다. 디폴트 값은 1이다.
@SlsMinorProtocolVersion는 해당 서비스에 대해 SLS를 전달하기 위해 사용되는 프로토콜의 부 버전 넘버일 수 있다. 디폴트 값은 0이다.
@serviceLanguage는 서비스의 주 언어를 나타내는 3문자 언어 코드일 수 있다. 본 필드의 값의 형식은 실시예에 따라 변경될 수 있다.
@broadbandccessRequired는 수신기가 서비스의 유의미한 프리젠테이션을 하기 위해 브로드밴드 액세스가 필요하다는 것을 나타내는 부울 값일 수 있다. 본 필드 값이 True 인 경우, 리시버는 유의미한 서비스 재생을 위하여 브로드밴드에 액세스해야 하며, 이는 서비스의 하이브리드 딜리버리 경우에 해당할 수 있다.
@capabilities는 상기 serviceId 성질과 동일한 서비스 ID로 서비스에 대한 내용을 디코딩하고 유의미하게 나타내기 위해 요구되는 캐피빌리티를 나타낼 수 있다.
InetSigLoc는 사용 가능한 경우 브로드밴드를 통해 시그널링이나 공지 정보에 접속하기 위한 URL을 제공할 수 있다. 그 데이터 타입은 URL이 어디에 액세스하는지를 나타내는 @urlType 성질을 추가하는 모든 URL 데이터 타입의 확장일 수 있다. 본 필드의 @urlType 필드가 의미하는 바는, 전술한 InetSigLoc 의 @urlType 필드가 의미하는 바와 동일할 수 있다. 성질 URL_type 0x00의 InetSigLoc 엘레먼트가 SLT의 엘레먼트로 존재하는 경우, 그것은 시그널링 메타데이터에 대해 HTTP 요청을 하기 위해 사용될 수 있다. 이 HTTP POST 메시지 바디에는 서비스 텀이 포함될 수 있다. InetSigLoc 엘레먼트가 섹션 레벨에서 나타나는 경우, 서비스 텀은 요청된 시그널링 메타데이터 오브젝트가 적용되는 서비스를 나타내기 위해 사용된다. 서비스 텀이 존재하지 않으면, 해당 섹션의 모든 서비스에 대한 시그널링 메타데이터 오브젝트가 요청된다. InetSigLoc이 서비스 레벨에서 나타나는 경우, 원하는 서비스를 지정하기 위해 필요한 서비스 텀이 없다. 성질 URL_type 0x01의 InetSigLoc 엘레먼트가 제공되면, 그것은 브로드밴드를 통해 ESG 데이터를 검색하는 데 사용될 수 있다. 해당 엘레먼트가 서비스 엘레먼트의 차일드 엘레먼트로 나타나면, URL은 해당 서비스에 대해 데이터를 검색하는 데 사용될 수 있다. 해당 엘레먼트가 SLT 엘레먼트의 차일드 엘레먼트로 나타나면, URL은 해당 섹션에서 모든 서비스에 대한 ESG 데이터를 검색하는 데 사용될 수 있다.
SLT 의 다른 실시예에서, SLT 의 @sltSectionVersion, @sltSectionNumber, @totalSltSectionNumbers 및/또는 @language 필드는 생략될 수 있다.
또한, 전술한 InetSigLoc 필드는 @sltInetSigUri 및/또는 @sltInetEsgUri 필드로 대체될 수 있다. 두 필드는 각각 시그널링 서버의 URI, ESG 서버의 URI 정보를 포함할 수 있다. SLT 의 하위 엘레멘트인 InetSigLoc 필드와 Service 의 하위 엘레멘트인 InetSigLoc 필드 모두 상기와 같은 방법으로 대체될 수 있다.
제시된 디폴트 값들은 실시예에 따라 변경될 수 있다. 도시된 사용(use) 열은 각 필드에 관한 것으로, 1 은 해당 필드가 필수적인 필드, 0..1 은 해당 필드가 옵셔널 필드임을 의미할 수 있다.
도 52 는 본 발명의 일 실시예에 따른 SLS 부트스트래핑과 서비스 디스커버리 과정을 도시한 도면이다.
이하, 서비스 레이어 시그널링(SLS, Service Layer Signaling) 에 대해서 설명한다.
SLS는 서비스 및 그 컨텐츠 컴포넌트를 발견하고 획득하기 위한 정보를 제공하는 시그널링일 수 있다.
ROUTE/DASH에 대해, 각 서비스에 대한 SLS는 컴포넌트들의 리스트, 어디에서 그것들을 획득할 수 있는지, 서비스의 유의미한 프레젠테이션을 위해 요구되는 수신기 성능과 같은 서비스의 특성을 서술한다. ROUTE/DASH 시스템에서, SLS는 USBD (user service bundle description), S-TSID, DASH MPD (media presentation description)를 포함한다. 여기서 USBD 또는 USD (User Service Description) 는 SLS XML 프래그먼트 중 하나로서 서비스의 구체적 기술적 정보들을 기술하는 시그널링 허브로서 역할할 수 있다. 이 USBD/USD 는 3GPP MBMS 에서 정의된 것 보다 더 확장되어 있을 수 있다. USBD/USD 의 구체적 내용들에 대해서는 후술한다.
서비스 시그널링은 서비스 자체의 기본 성질, 특히 서비스를 획득하기 위해 필요한 성질에 초점을 둔다. 시청자를 위한 서비스 및 프로그래밍의 특징은 서비스 공지 또는 ESG 데이터로 나타난다.
각 서비스에 대해 별개의 서비스 시그널링을 가지면 수신기는 브로드캐스트 스트림 내에서 전달되는 전체 SLS을 파싱할 필요 없이 원하는 서비스에 대한 적절한 SLS를 획득하면 된다.
서비스 시그널링의 선택적 브로드밴드 딜리버리에 대해, SLT는 전술한 바와 같이 서비스 시그널링 파일이 획득될 수 있는 HTTP URL을 포함할 수 있다.
LLS는 SLS 획득을 부트스트랩 하는데 사용되고, 그 후 SLS는 ROUTE 세션 또는 MMTP 세션에서 전달되는 서비스 컴포넌트를 획득하는 데 사용된다. 서술된 도면은 다음의 시그널링 시퀀스를 도시한다. 수신기는 전술한 SLT를 획득하기 시작한다. ROUTE 세션에서 전달되는 service_id에 의해 식별되는 각 서비스는 PLPID(#1), 소스 IP 어드레스 (sIP1), 데스티네이션 IP 어드레스 (dIP1), 및 데스티네이션 포트 넘버 (dPort1)와 같은 SLS 부트스트래핑 정보를 제공한다. MMTP 세션에서 전달되는 service_id에 의해 식별되는 각 서비스는 PLPID(#2), 데스티네이션 IP 어드레스 (dIP2), 및 데스티네이션 포트 넘버 (dPort2)와 같은 SLS 부트스트래핑 정보를 제공한다.
ROUTE를 이용한 스트리밍 서비스 딜리버리에 대해, 수신기는 PLP 및 IP/UDP/LCT 세션으로 전달되는 SLS 분할을 획득할 수 있다. 반면, MMTP를 이용한 스트리밍 서비스 딜리버리에 대해, 수신기는 PLP 및 MMTP 세션으로 전달되는 SLS 분할을 획득할 수 있다. ROUTE를 이용한 서비스 딜리버리에 대해, 이들 SLS 분할은 USBD/USD 분할, S-TSID 분할, MPD 분할을 포함한다. 그것들은 하나의 서비스와 관련이 있다. USBD/USD 분할은 서비스 레이어 특성을 서술하고, S-TSID 분할에 대한 URI 레퍼런스 및 MPD 분할에 대한 URI 레퍼런스를 제공한다. 즉, USBD/USD 는 S-TSID 와 MPD 를 각각 레퍼런싱할 수 있다. MMTP를 이용한 서비스 딜리버리에 대해, USBD는 MMT 시그널링의 MMT 메시지를 참조하는데, 그것의 MP 테이블은 서비스에 속하는 에셋(asset)을 위한 위치 정보 및 패키지 ID의 식별을 제공한다. 여기서, Asset 이란, 멀티미디어 데이터 엔티티로서, 하나의 유니크 ID 로 연합되고 하나의 멀티미디어 프리젠테이션을 생성하는데 사용되는 데이터 엔티티를 의미할 수 있다. Asset 은 하나의 서비스를 구성하는 서비스 컴포넌트에 해당할 수 있다. MPT 메시지는 MMT 의 MP 테이블을 가지는 메시지이고, 여기서 MP 테이블은 MMT Asset 과 컨텐트에 대한 정보를 가지는 MMT 패키지 테이블(MMT Package Table)일 수 있다. 구체적인 내용은 MMT 에서 정의된 바와 같을 수 있다. 여기서 미디어 프리젠테이션이란 미디어 컨텐츠의 바운드/언바운드된 프리젠테이션을 성립시키는 데이터의 콜렉션일 수 있다.
S-TSID 분할은 하나의 서비스와 관련된 컴포넌트 획득 정보와 해당 서비스의 컴포넌트에 해당하는 TSI 및 MPD에서 발견되는 DASH 표현들 사이의 매핑을 제공한다. S-TSID는 TSI 및 관련된 DASH 표현 식별자의 형태의 컴포넌트 획득 정보, 및 DASH 표현과 관련된 DASH 분할을 전달하는 PLPID를 제공할 수 있다. PLPID 및 TSI 값에 의해, 수신기는 서비스로부터 오디오/비디오 컴포넌트를 수집하고, DASH 미디어 분할의 버퍼링을 시작한 후, 적절한 디코딩 과정을 적용한다.
MMTP 세션에서 전달되는 USBD 리스팅 서비스 컴포넌트에 대해, 서술된 도면의 "Service #2"에 도시한 바와 같이, 수신기는 SLS를 완료하기 위해 매칭되는 MMT_package_id를 갖는 MPT 메시지를 획득한다. MPT 메시지는 각 컴포넌트에 대한 획득 정보 및 서비스를 포함하는 서비스 컴포넌트의 완전한 리스트를 제공한다. 컴포넌트 획득 정보는 MMTP 세션 정보, 해당 세션을 전달하는 PLPID, 해당 세션 내의 packet_id를 포함한다.
실시예에 따라, 예를 들어 ROUTE 의 경우, 두 개 이상의 S-TSID 프래그먼트가 사용될 수 있다. 각각의 프래그먼트는 각 서비스의 컨텐츠를 전달하는 LCT 세션들에 대한 액세스 정보를 제공할 수 있다.
ROUTE 의 경우 S-TSID, USBD/USD, MPD 또는 이 들을 전달하는 LCT 세션을 서비스 시그널링 채널이라 부를 수도 있다. MMTP 의 경우, USBD/UD, MMT 시그널링 메시지들 또는 이들을 전달하는 패킷 플로우를 서비스 시그널링 채널이라 부를 수도 있다.
도시된 실시예와는 달리, 하나의 ROUTE 또는 MMTP 세션은 복수개의 PLP 를 통해 전달될 수 있다. 즉, 하나의 서비스는 하나 이상의 PLP 를 통해 전달될 수도 있다. 전술한 바와 같이 하나의 LCT 세션은 하나의 PLP 를 통해 전달될 수 있다. 도시된 것과 달리 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 서로 다른 ROUTE 세션들을 통해 전달될 수도 있다. 또한, 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 서로 다른 MMTP 세션들을 통해 전달될 수도 있다. 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 ROUTE 세션과 MMTP 세션에 나뉘어 전달될 수도 있다. 도시되지 않았으나, 하나의 서비스를 구성하는 컴포넌트가 브로드밴드를 통해 전달(하이브리드 딜리버리)되는 경우도 있을 수 있다.
도 53 는 본 발명의 일 실시예에 따른 ROUTE/DASH 를 위한 USBD 프래그먼트를 도시한 도면이다.
이하, ROUTE 에 근거한 딜리버리에 있어서, 서비스 레이어 시그널링에 대해서 설명한다.
SLS는 서비스 및 그 컨텐츠 컴포넌트의 발견 및 접근을 가능하게 하기 위해 수신기에게 구체적인 기술적인 정보를 제공한다. 그것은 전용 LCT 세션으로 전달되는 XML 코딩된 메타데이터 분할을 집합을 포함할 수 있다. 해당 LCT 세션은 전술한 바와 같이 SLT에 포함된 부트스트랩 정보를 이용하여 획득할 수 있다. SLS는 서비스 레벨 당 정의되고, 그것은 컨텐츠 컴포넌트의 리스트, 어떻게 그것들을 획득하는지, 서비스의 유의미한 프레젠테이션을 하기 위해 요구되는 수신기 성능과 같은 서비스의 액세스 정보 및 특징을 서술한다. ROUTE/DASH 시스템에서, 리니어 서비스 딜리버리를 위해, SLS는 USBD, S-TSID 및 DASH MPD와 같은 메타데이터 분할로 구성된다. SLS 분할은 TSI = 0인 전용 LCT 전송 세션에서 전달될 수 있다. 실시예에 따라 SLS 프래그먼트가 전달되는 특정 LCT 세션(dedicated LCT session) 의 TSI 는 다른 값을 가질 수 있다. 실시예에 따라 SLS 프래그먼트가 전달되는 LCT 세션이 SLT 또는 다른 방법에 의해 시그널링될 수도 있다.
ROUTE/DASH SLS는 USBD 및 S-TSID 메타데이터 분할을 포함할 수 있다. 이들 서비스 시그널링 분할은 리니어 및 어플리케이션에 기초한 서비스에 적용될 수 있다. USBD 분할은 서비스 식별, 장치 성능 정보, 서비스 및 구성 미디어 컴포넌트에 액세스하는 데 요구되는 다른 SLS 분할에 대한 참조, 수신기가 서비스 컴포넌트의 전송 모드 (브로드캐스트 및/또는 브로드밴드)를 결정할 수 있게 하는 메타데이터를 포함한다. USBD에 의해 참조되는 S-TSID 분할은 서비스의 미디어 컨텐츠 컴포넌트가 전달되는 하나 이상의 ROUTE/LCT 세션에 대한 전송 세션 디스크립션 및 해당 LCT 세션에서 전달되는 딜리버리 오브젝트의 디스크립션을 제공한다. USBD 및 S-TSID는 후술한다.
ROUTE 에 근거한 딜리버리 중 Streaming Content Signaling 에 있어서, SLS 의 스트리밍 컨텐츠 시그널링 컴포넌트는 MPD 프래그먼트에 해당한다. MPD는 주로 스트리밍 컨텐츠로서의 DASH 분할의 딜리버리를 위한 리니어 서비스와 관련된다. MPD는 분할 URL 형태의 리니어/스트리밍 서비스의 개별 미디어 컴포넌트에 대한 소스 식별자, 및 미디어 프레젠테이션 내의 식별된 리소스의 컨텍스트를 제공한다. MPD 에 대한 구체적인 내용은 후술한다.
ROUTE 에 근거한 딜리버리 중 앱 기반 인헨스먼트 시그널링에 있어서, 앱 기반 인헨스먼트 시그널링은 어플리케이션 로직 파일, 국부적으로 캐싱된 미디어 파일, 네트워크 컨텐츠 아이템, 또는 공지 스트림과 같은 앱 기반 인헨스먼트 컴포넌트의 딜리버리에 속한다. 어플리케이션은 또한 가능한 경우 브로드밴드 커넥션 상에서 국부적으로 캐싱된 데이터를 검색할 수 있다.
이하, 본 도면에 도시된 USBD/USD 의 구체적인 내용에 대해 설명한다.
탑 레벨 또는 엔트리 포인트 SLS 분할은 USBD 분할이다. 도시된 USBD 프래그먼트는 본 발명의 일 실시예이며, 도시되지 않은 기본적인 USBD 프래그먼트의 필드들이 실시예에 따라 더 추가될 수도 있다. 전술한 바와 같이 도시된 USBD 프래그먼트는 확장된 형태로서 기본 구조에서 더 추가된 필드들을 가질 수 있다.
도시된 USBD 는 bundleDescription 루트 엘레멘트를 가질 수 있다. bundleDescription 루트 엘레멘트는 userServiceDescription 엘레멘트를 가질 수 있다. userServiceDescription 엘레멘트는 하나의 서비스에 대한 인스턴스일 수 있다.
userServiceDescription 엘레멘트는 @serviceId, @atsc:serviceId, @atsc:serviceStatus, @atsc:fullMPDUri, @atsc:sTSIDUri, name, serviceLanguage, atsc:capabilityCode 및/또는 deliveryMethod 를 포함할 수 있다.
@serviceId는 BSID의 범위 내에서 유일한 서비스를 식별하는 전 세계적으로 유일한 URI일 수 있다. 해당 파라미터는 ESG 데이터 (Service@globalServiceID)와 관련시키는 데 사용될 수 있다.
@atsc:serviced는 LLS (SLT)에서 해당하는 서비스 엔트리에 대한 레퍼런스이다. 해당 성질의 값은 해당 엔트리에 할당된 serviceId의 값과 동일하다.
@atsc:serviceStatus는 해당 서비스의 상태는 특정할 수 있다. 그 값은 해당 서비스가 활성화되어 있는지 비활성화되어 있는지를 나타낸다. "1" (참)로 설정되면, 서비스가 활성화되어 있다는 것을 나타낸다. 이 필드가 사용되지 않는 경우, 디폴트 값 1 로 설정될 수 있다.
@atsc:fullMPDUri는 브로드캐스트 상에서 선택적으로, 또한 브로드밴드 상에서 전달되는 서비스의 컨텐츠 컴포넌트에 대한 디스크립션을 포함하는 MPD 분할을 레퍼런싱할 수 있다.
@atsc:sTSIDUri는 해당 서비스의 컨텐츠를 전달하는 전송 세션에 액세스 관련 파라미터를 제공하는 S-TSID 분할을 레퍼런싱할 수 있다.
name은 lang 성질에 의해 주어지는 서비스의 네임을 나타낼 수 있다. name 엘레먼트는 서비스 네임의 언어를 나타내는 lang 성질을 포함할 수 있다. 언어는 XML 데이터타입에 따라 특정될 수 있다.
serviceLanguage는 서비스의 이용 가능한 언어를 나타낼 수 있다. 언어는 XML 데이터타입에 따라 특정될 수 있다.
atsc:capabilityCode는 수신기가 해당 서비스의 컨텐츠의 유의미한 프레젠테이션을 생성할 수 있도록 요구되는 캐패빌리티를 특정할 수 있다. 실시예에 따라 본 필드는 기 정의된 캐패빌리티 그룹을 특정할 수도 있다. 여기서 캐패빌리티 그룹은 유의미한 프리젠테이션을 위한 캐패빌리티 성질들 값의 그룹일 수 있다. 본 필드는 실시예에 따라 생략될 수 있다.
deliveryMethod는 액세스의 브로드캐스트 및 (선택적으로) 브로드밴드 모드 상에서 서비스의 컨텐츠에 속하는 정보에 관련된 트랜스포트의 컨테이너일 수 있다. 해당 서비스에 포함되는 데이터에 있어서, 그 데이터를 N 개라 하면, 그 각각의 데이터들에 대한 딜리버리 방법들이, 이 엘레멘트에 의해 기술될 수 있다. deliveryMethod 엘레멘트는 r12:broadcastAppService 엘레멘트와 r12:unicastAppService 엘레멘트를 포함할 수 있다. 각각의 하위 엘레멘트들은 basePattern 엘레멘트를 하위 엘레멘트로 가질 수 있다.
r12:broadcastAppService는 소속된 미디어 프레젠테이션의 모든 기간에 걸쳐 서비스에 속하는 해당 미디어 컴포넌트를 포함하는 다중화된 또는 비다중화된 형태의 브로드캐스트 상에서 전달되는 DASH 레프레젠테이션일 수 있다. 즉, 각각의 본 필드들은, 방송망을 통해 전달되는 DASH 레프레젠테이션(representation) 들을 의미할 수 있다.
r12:unicastAppService는 소속된 미디어 프레젠테이션의 모든 기간에 걸쳐 서비스에 속하는 구성 미디어 컨텐츠 컴포넌트를 포함하는 다중화된 또는 비다중화된 형태의 브로드밴드 상에서 전달되는 DASH 레프레젠테이션일 수 있다. 즉, 각각의 본 필드들은, 브로드밴드를 통해 전달되는 DASH 레프레젠테이션(representation) 들을 의미할 수 있다.
basePattern은 포함된 기간에 페어런트 레프레젠테이션의 미디어 분할을 요구하기 위해 DASH 클라이언트에 의해 사용되는 분할 URL의 모든 부분에 대해 매칭되도록 수신기에 의해 사용되는 문자 패턴일 수 있다. 매치는 해당 요구된 미디어 분할이 브로드캐스트 트랜스포트 상에서 전달되는 것을 암시한다. 각각의 r12:broadcastAppService 엘레멘트와 r12:unicastAppService 엘레멘트로 표현되는 DASH 레프레젠테이션을 전달받을 수 있는 URL 주소에 있어서, 그 URL 의 일부분 등은 특정한 패턴을 가질 수 있는데, 그 패턴이 본 필드에 의해 기술될 수 있다. 이 정보를 통하여 일정부분 데이터에 대한 구분이 가능할 수 있다. 제시된 디폴트 값들은 실시예에 따라 변경될 수 있다. 도시된 사용(use) 열은 각 필드에 관한 것으로, M 은 필수 필드, O 는 옵셔널 필드, OD 는 디폴트 값을 가지는 옵셔널 필드, CM 은 조건부 필수 필드를 의미할 수 있다. 0...1 내지 0...N 은 해당 필드들의 가능 개수를 의미할 수 있다.
도 54 은 본 발명의 일 실시예에 따른 ROUTE/DASH 를 위한 S-TSID 프래그먼트를 도시한 도면이다.
이하, 본 도면에 도시된 S-TSID 의 구체적인 내용에 대해 설명한다.
S-TSID는 서비스의 컨텐츠 컴포넌트를 전달하는 전송 세션에 대한 전체적인 세션 디스크립트 정보를 제공하는 SLS XML 분할일 수 있다. S-TSID는 서비스의 미디어 컨텐츠 컴포넌트가 전달되는 구성 LCT 세션 및 0개 이상의 ROUTE 세션에 대한 전체적인 전송 세션 디스크립트 정보를 포함하는 SLS 메타데이터 분할이다. S-TSID는 또한 LCT 세션에서 전달되는 컨텐츠 컴포넌트 및 페이로드 포맷에 대한 추가 정보뿐만 아니라 서비스의 LCT 세션에서 전달되는 딜리버리 오브젝트 또는 오브젝트 플로우에 대한 파일 메타데이터를 포함한다.
S-TSID 분할의 각 경우는 userServiceDescription 엘레먼트의 @atsc:sTSIDUri 성질에 의해 USBD 분할에서 레퍼런싱된다. 도시된 본 발명의 일 실시예에 따른 S-TSID 는 XML 도큐먼트 형태로 표현되었다. 실시예에 따라, S-TSID 는 바이너리 포맷 또는 XML 도큐먼트의 형태로 표현될 수 있다.
도시된 S-TSID 는 도시된 S-TSID 는 S-TSID 루트 엘레멘트를 가질 수 있다. S-TSID 루트 엘레멘트는 @serviceId 및/또는 RS 를 포함할 수 있다.
@serviceID는 USD에서 서비스 엘레멘트에 해당하는 레퍼런스일 수 있다. 해당 성질의 값은 service_id의 해당 값을 갖는 서비스를 레퍼런싱할 수 있다.
RS 엘레멘트는 해당 서비스 데이터들을 전달하는 ROUTE 세션에 대한 정보를 가질 수 있다. 복수개의 ROUTE 세션을 통해 서비스 데이터 내지 서비스 컴포넌트들이 전달될 수 있으므로, 본 엘레멘트는 1 내지 N 개의 개수를 가질 수 있다.
RS 엘레멘트는 @bsid, @sIpAddr, @dIpAddr, @dport, @PLPID 및/또는 LS 를 포함할 수 있다.
@bsid는 broadcastAppService의 컨텐츠 컴포넌트가 전달되는 브로드캐스트 스트림의 식별자일 수 있다. 해당 성질이 존재하지 않으면, 디폴트 브로드캐스트 스트림의 PLP가 해당 서비스에 대한 SLS 분할을 전달하는 것일 수 있다. 그 값은 SLT에서 broadcast_stream_id와 동일할 수 있다.
@sIpAddr은 소스 IP 어드레스를 나타낼 수 있다. 여기서 소스 IP 어드레스는, 해당 서비스에 포함되는 서비스 컴포넌트를 전달하는 ROUTE 세션의 소스 IP 어드레스일 수 있다. 전술한 바와 같이 하나의 서비스의 서비스 컴포넌트들은 복수개의 ROUTE 세션을 통해 전달될 수도 있다. 그 때문에, 해당 S-TSID 가 전달되는 ROUTE 세션이 아닌 다른 ROUTE 세션으로 그 서비스 컴포넌트가 전송될 수도 있다. 따라서, ROUTE 세션의 소스 IP 어드레스를 지시하기 위하여 본 필드가 사용될 수 있다. 본 필드의 디폴트 값은 현재 ROUTE 세션의 소스 IP 어드레스일 수 있다. 다른 ROUTE 세션을 통해 전달되는 서비스 컴포넌트가 있어 그 ROUTE 세션을 지시해야 되는 경우에는 본 필드 값은 그 ROUTE 세션의 소스 IP 어드레스 값일 수 있다. 이 경우 본 필드는 M, 즉 필수 필드일 수 있다.
@dIpAddr은 데스티네이션 IP 어드레스를 나타낼 수 있다. 여기서 데스티네이션 IP 어드레스는, 해당 서비스에 포함되는 서비스 컴포넌트를 전달하는 ROUTE 세션의 데스티네이션 IP 어드레스일 수 있다. @sIpAddr 에서 설명한 것과 같은 경우를 위해, 본 필드는 서비스 컴포넌트를 전달하는 ROUTE 세션의 데스티네이션 IP 어드레스를 지시할 수 있다. 본 필드의 디폴트 값은 현재 ROUTE 세션의 데스티네이션 IP 어드레스일 수 있다. 다른 ROUTE 세션을 통해 전달되는 서비스 컴포넌트가 있어 그 ROUTE 세션을 지시해야 되는 경우에는 본 필드 값은 그 ROUTE 세션의 데스티네이션 IP 어드레스 값일 수 있다. 이 경우 본 필드는 M, 즉 필수 필드일 수 있다.
@dport는 데스티네이션 포트를 나타낼 수 있다. 여기서 데스티네이션 포트는, 해당 서비스에 포함되는 서비스 컴포넌트를 전달하는 ROUTE 세션의 데스티네이션 포트일 수 있다. @sIpAddr 에서 설명한 것과 같은 경우를 위해, 본 필드는 서비스 컴포넌트를 전달하는 ROUTE 세션의 데스티네이션 포트를 지시할 수 있다. 본 필드의 디폴트 값은 현재 ROUTE 세션의 데스티네이션 포트 넘버일 수 있다. 다른 ROUTE 세션을 통해 전달되는 서비스 컴포넌트가 있어 그 ROUTE 세션을 지시해야 되는 경우에는 본 필드 값은 그 ROUTE 세션의 데스티네이션 포트 넘버 값일 수 있다. 이 경우 본 필드는 M, 즉 필수 필드일 수 있다.
@PLPID 는 RS 로 표현되는 ROUTE 세션을 위한 PLP 의 ID 일 수 있다. 디폴트 값은 현재 S-TSID 가 포함된 LCT 세션의 PLP 의 ID 일 수 있다. 실시예에 따라 본 필드는 해당 ROUTE 세션에서 S-TSID 가 전달되는 LCT 세션을 위한 PLP 의 ID 값을 가질 수도 있고, 해당 ROUTE 세션을위한 모든 PLP 들의 ID 값들을 가질 수도 있다.
LS 엘레멘트는 해당 서비스 데이터들을 전달하는 LCT 세션에 대한 정보를 가질 수 있다. 복수개의 LCT 세션을 통해 서비스 데이터 내지 서비스 컴포넌트들이 전달될 수 있으므로, 본 엘레멘트는 1 내지 N 개의 개수를 가질 수 있다.
LS 엘레멘트는 @tsi, @PLPID, @bw, @startTime, @endTime, SrcFlow 및/또는 RprFlow 를 포함할 수 있다.
@tsi 는 해당 서비스의 서비스 컴포넌트가 전달되는 LCT 세션의 TSI 값을 지시할 수 있다.
@PLPID 는 해당 LCT 세션을 위한 PLP 의 ID 정보를 가질 수 있다. 이 값은 기본 ROUTE 세션 값을 덮어쓸 수도 있다.
@bw 는 최대 밴드위스 값을 지시할 수 있다. @startTime 은 해당 LCT 세션의 스타트 타임(Start time)을 지시할 수 있다. @endTime 은 해당 LCT 세션의 엔드 타임(End time)을 지시할 수 있다. SrcFlow 엘레멘트는 ROUTE 의 소스 플로우에 대해 기술할 수 있다. RprFlow 엘레멘트는 ROUTE 의 리페어 플로우에 대해 기술할 수 있다.
제시된 디폴트 값들은 실시예에 따라 변경될 수 있다. 도시된 사용(use) 열은 각 필드에 관한 것으로, M 은 필수 필드, O 는 옵셔널 필드, OD 는 디폴트 값을 가지는 옵셔널 필드, CM 은 조건부 필수 필드를 의미할 수 있다. 0...1 내지 0...N 은 해당 필드들의 가능 개수를 의미할 수 있다.
이하, ROUTE/DASH 를 위한 MPD (Media Presentation Description) 에 대해 설명한다.
MPD는 방송사에 의해 정해진 주어진 듀레이션의 리니어 서비스에 해당하는 DASH 미디어 프레젠테이션의 공식화된 디스크립션을 포함하는 SLS 메타데이터 분할이다 (예를 들면, 어떤 기간 동안의 하나의 TV 프로그램 또는 연속적인 리니어 TV 프로그램의 집합). MPD의 컨텐츠는 미디어 프레젠테이션 내에서 식별된 리소스에 대한 컨텍스트 및 분할에 대한 소스 식별자를 제공한다. MPD 분할의 데이터 구조 및 시맨틱스는 MPEG DASH에 의해 정의된 MPD에 따를 수 있다.
MPD에서 전달되는 하나 이상의 DASH 레프레젠테이션은 브로드캐스트 상에서 전달될 수 있다. MPD는 하이브리드 서비스의 경우와 같은 브로드밴드 상에서 전달되는 추가 레프레젠테이션을 서술하거나, 브로드캐스트 신호 악화 (예를 들면, 터널 속 주행)로 인한 브로드캐스트에서 브로드캐스트로의 핸드오프에서 서비스 연속성을 지원할 수 있다.
도 55 은 본 발명의 일 실시예에 따른 MMT 를 위한 USBD/USD 프래그먼트를 도시한 도면이다.
리니어 서비스를 위한 MMT SLS는 USBD 분할 및 MP 테이블을 포함한다. MP 테이블은 전술한 바와 같다. USBD 분할은 서비스 식별, 장치 성능 정보, 서비스 및 구성 미디어 컴포넌트에 액세스하는 데 요구되는 다른 SLS 분할에 대한 참조, 수신기가 서비스 컴포넌트의 전송 모드 (브로드캐스트 및/또는 브로드밴드)를 결정할 수 있게 하는 메타데이터를 포함한다. USBD에 의해 참조되는 MPU 컴포넌트에 대한 MP 테이블은 서비스의 미디어 컨텐츠 컴포넌트가 전달되는 MMTP 세션에 대한 전송 세션 디스크립션 및 MMTP 세션에서 전달되는 에셋의 디스크립션을 제공한다.
MPU 컴포넌트에 대한 SLS의 스트리밍 컨텐츠 시그널링 컴포넌트는 MMT에서 정의된 MP 테이블에 해당한다. MP 테이블은 각 에셋이 단일 서비스 컴포넌트에 해당하는 MMT 에셋의 리스트 및 해당 컴포넌트에 대한 위치 정보의 디스크립션을 제공한다.
USBD 분할은 ROUTE 프로토콜 및 브로드밴드에 의해 각각 전달되는 서비스 컴포넌트에 대해 전술한 바와 같은 S-TSID 및 MPD에 대한 참조도 포함할 수 있다. 실시예에 따라, MMT 를 통한 딜리버리에 있어 ROUTE 프로토콜을 통해 전달되는 서비스 컴포넌트란 NRT 등의 데이터이므로, 이 경우에 있어 MPD 는 필요치 않을 수 있다. 또한, MMT 를 통한 딜리버리에 있어 브로드밴드를 통해 전달되는 서비스 컴포넌트는 어떤 LCT 세션을 통해 전달되는지에 대한 정보가 필요치 않으므로 S-TSID 는 필요치 않을 수 있다. 여기서, MMT 패키지는 MMT 를 이용하여 전달되는, 미디어 데이터의 논리적 콜렉션일 수 있다. 여기서, MMTP 패킷은 MMT 를 이용하여 전달되는 미디어 데이터의 포맷된 유닛을 의미할 수 있다. MPU (Media Processing Unit) 은 독립적으로 디코딩 가능한 타임드/논-타임드 데이터의 제네릭 컨테이너를 의미할 수 있다. 여기서, MPU에서의 데이터는 미디어 코덱 애그노스틱이다.
이하, 본 도면에 도시된 USBD/USD 의 구체적인 내용에 대해 설명한다.
도시된 USBD 프래그먼트는 본 발명의 일 실시예이며, 도시되지 않은 기본적인 USBD 프래그먼트의 필드들이 실시예에 따라 더 추가될 수도 있다. 전술한 바와 같이 도시된 USBD 프래그먼트는 확장된 형태로서 기본 구조에서 더 추가된 필드들을 가질 수 있다.
도시된 본 발명의 일 실시예에 따른 USBD 는 XML 도큐먼트 형태로 표현되었다. 실시예에 따라, USBD 는 바이너리 포맷 또는 XML 도큐먼트의 형태로 표현될 수 있다.
도시된 USBD 는 bundleDescription 루트 엘레멘트를 가질 수 있다. bundleDescription 루트 엘레멘트는 userServiceDescription 엘레멘트를 가질 수 있다. userServiceDescription 엘레멘트는 하나의 서비스에 대한 인스턴스일 수 있다.
userServiceDescription 엘레멘트는 @serviceId, @atsc:serviceId, name, serviceLanguage, atsc:capabilityCode, atsc:Channel, atsc:mpuComponent, atsc:routeComponent, atsc:broadband Component 및/또는 atsc:ComponentInfo 를 포함할 수 있다.
여기서, @serviceId, @atsc:serviceId, name, serviceLanguage, atsc:capabilityCode 는 전술한 것과 같을 수 있다. name 필드 밑의 lang 필드 역시 전술한 것과 같을 수 있다. atsc:capabilityCode 는 실시예에 따라 생략될 수 있다.
userServiceDescription 엘레멘트는, 실시예에 따라 atsc:contentAdvisoryRating 엘레멘트를 더 포함할 수 있다. 이 엘레멘트는 옵셔널 엘레멘트일 수 있다. atsc:contentAdvisoryRating는 컨텐츠 자문 순위를 특정할 수 있다. 본 필드는 도면에 도시되지 않았다.
atsc:Channel 은 서비스의 채널에 대한 정보를 가질 수 있다. atsc:Channel 엘레멘트는 @atsc:majorChannelNo, @atsc:minorChannelNo, @atsc:serviceLang, @atsc:serviceGenre, @atsc:serviceIcon 및/또는 atsc:ServiceDescription 를 포함할 수 있다. @atsc:majorChannelNo, @atsc:minorChannelNo, @atsc:serviceLang 는 실시예에 따라 생략될 수 있다.
@atsc:majorChannelNo는 서비스의 주 채널 넘버를 나타내는 성질이다.
@atsc:minorChannelNo는 서비스의 부 채널 넘버를 나타내는 성질이다.
@atsc:serviceLang는 서비스에서 사용되는 주요 언어를 나타내는 성질이다.
@atsc:serviceGenre는 서비스의 주요 장르를 나타내는 성질이다.
@atsc:serviceIcon는 해당 서비스를 표현하는 데 사용되는 아이콘에 대한 URL을 나타내는 성질이다.
atsc:ServiceDescription은 서비스 디스크립션을 포함하며 이는 다중 언어일 수 있다. atsc:ServiceDescription은 @atsc:serviceDescrText 및/또는 @atsc:serviceDescrLang를 포함할 수 있다.
@atsc:serviceDescrText는 서비스의 디스크립션을 나타내는 성질이다.
@atsc:serviceDescrLang는 상기 serviceDescrText 성질의 언어를 나타내는 성질이다.
atsc:mpuComponent 는 MPU 형태로 전달되는 서비스의 컨텐츠 컴포넌트에 대한 정보를 가질 수 있다. atsc:mpuComponent 는 @atsc:mmtPackageId 및/또는 @atsc:nextMmtPackageId 를 포함할 수 있다.
@atsc:mmtPackageId는 MPU로 전달되는 서비스의 컨텐츠 컴포넌트에 대한 MMT 패키지를 레퍼런싱할 수 있다.
@atsc:nextMmtPackageId는 MPU로 전달되는 서비스의 컨텐츠 컴포넌트에 맞추어 @atsc:mmtPackageId에 의해 참조된 후에 사용되는 MMT 패키지를 레퍼런싱할 수 있다.
atsc:routeComponent 는 ROUTE 를 통해 전달되는 서비스의 컨텐츠 컴포넌트에 대한 정보를 가질 수 있다. atsc:routeComponent 는 @atsc:sTSIDUri, @sTSIDPlpId, @sTSIDDestinationIpAddress, @sTSIDDestinationUdpPort, @sTSIDSourceIpAddress, @sTSIDMajorProtocolVersion 및/또는 @sTSIDMinorProtocolVersion 를 포함할 수 있다.
@atsc:sTSIDUri는 해당 서비스의 컨텐츠를 전달하는 전송 세션에 액세스 관련 파라미터를 제공하는 S-TSID 분할을 레퍼런싱할 수 있다. 이 필드는 전술한 ROUTE 를 위한 USBD 에서의 S-TSID 를 레퍼런싱하기 위한 URI 와 같을 수 있다. 전술한 바와 같이 MMTP 에 의한 서비스 딜리버리에 있어서도, NRT 등을 통해 전달되는 서비스 컴포넌트들은 ROUTE 에 의해 전달될 수 있다. 이를 위한 S-TSID 를 레퍼런싱하기 위하여 본 필드가 사용될 수 있다.
@sTSIDPlpId는 해당 서비스에 대한 S-TSID를 전달하는 PLP의 PLP ID를 나타내는 정수를 표현하는 스트링일 수 있다. (디폴트: 현재 PLP)
@sTSIDDestinationIpAddress는 해당 서비스에 대한 S-TSID를 전달하는 패킷의 dotted-IPv4 데스티네이션 어드레스를 포함하는 스트링일 수 있다. (디폴트: 현재 MMTP 세션의 소스 IP 어드레스)
@sTSIDDestinationUdpPort는 해당 서비스에 대한 S-TSID를 전달하는 패킷의 포트 넘버를 포함하는 스트링일 수 있다.
@sTSIDSourceIpAddress는 해당 서비스에 대한 S-TSID를 전달하는 패킷의 dotted-IPv4 소스 어드레스를 포함하는 스트링일 수 있다.
@sTSIDMajorProtocolVersion은 해당 서비스에 대한 S-TSID를 전달하기 위해 사용되는 프로토콜의 주 버전 넘버를 나타낼 수 있다. 디폴트 값은 1이다.
@sTSIDMinorProtocolVersion은 해당 서비스에 대한 S-TSID를 전달하기 위해 사용되는 프로토콜의 부 버전 넘버를 나타낼 수 있다. 디폴트 값은 0이다.
atsc:broadbandComponent 는 브로드밴드를 통해 전달되는 서비스의 컨텐츠 컴포넌트에 대한 정보를 가질 수 있다. 즉, 하이브리드 딜리버리를 상정한 필드일 수 있다. atsc:broadbandComponent 는 @atsc:fullfMPDUri 를 더 포함할 수 있다.
@atsc:fullfMPDUri는 브로드밴드로 전달되는 서비스의 컨텐츠 컴포넌트에 대한 디스크립션을 포함하는 MPD 분할에 대한 레퍼런스일 수 있다.
atsc:ComponentInfo 는 서비스의 어베일러블한(available) 컴포넌트에 대한 정보를 가질 수 있다. 각각의 컴포넌트에 대한, 타입, 롤, 이름 등의 정보를 가질 수 있다. 각 컴포넌트(N개) 개수만큼 본 필드가 존재할 수 있다. atsc:ComponentInfo 는 @atsc:componentType, @atsc:componentRole, @atsc:componentProtectedFlag, @atsc:componentId 및/또는 @atsc:componentName 을 포함할 수 있다.
@atsc:componentType은 해당 컴포넌트의 타입을 나타내는 성질이다. 0의 값은 오디오 컴포넌트를 나타낸다. 1의 값은 비디오 컴포넌트를 나타낸다. 2의 값은 클로즈드 캡션 컴포넌트를 나타낸다. 3의 값은 어플리케이션 컴포넌트를 나타낸다. 4 내지 7의 값은 남겨둔다. 본 필드 값의 의미는 실시예에 따라 다르게 설정될 수도 있다.
@atsc:componentRole은 해당 컴포넌트의 역할 및 종류를 나타내는 성질이다.
오디오에 대해 (상기 componentType 성질이 0과 동일할 때), componentRole 성질의 값은 다음과 같다. 0 = Complete main, 1 = 음악 및 효과 (Music and Effects), 2 = 대화 (Dialog), 3 = 해설 (Commentary), 4 = 시각 장애 (Visually Impaired), 5 = 청각 장애 (Hearing Impaired), 6 = 보이스오버 (Voice-Over), 7-254= reserved, 255 = 알 수 없음 (unknown).
오디오에 대해 (상기 componentType 성질이 1과 동일할 때), componentRole 성질의 값은 다음과 같다. 0 = Primary video, 1= 대체 카메라 뷰 (Alternative camera view), 2 = 다른 대체 비디오 컴포넌트 (Other alternative video component), 3 = 수화 삽입 (Sign language inset), 4 = Follow subject video, 5 = 3D 비디오 좌측 뷰 (3D video left view), 6 = 3D 비디오 우측 뷰 (3D video right view), 7 = 3D 비디오 깊이 정보 (3D video depth information), 8 = Part of video array <x,y> of <n,m>, 9 = Follow-Subject metadata, 10-254 = reserved, 255 = 알 수 없음 (unknown).
클로즈드 캡션 컴포넌트에 대해, (상기 componentType 성질이 2와 동일할 때), componentRole 성질의 값은 다음과 같다. 0 = Normal, 1 = Easy reader, 2-254 = reserved, 255 = 알 수 없음 (unknown).
상기 componentType 성질의 값이 3과 7 사이이면, componentRole 255와 동일할 수 있다. 본 필드 값의 의미는 실시예에 따라 다르게 설정될 수도 있다.
@atsc:componentProtectedFlag는 해당 컴포넌트가 보호되는지 (예를 들면, 암호화되는지)를 나타내는 성질이다. 해당 플레그가 1의 값으로 설정되면, 해당 컴포넌트는 보호된다 (예를 들면, 암호화된다). 해당 플레그가 0의 값으로 설정되면, 해당 컴포넌트는 보호되지 않는다 (예를 들면, 암호화되지 않는다). 존재하지 않는 경우, componentProtectedFlag 성질의 값은 0과 같은 것으로 추론된다. 본 필드 값의 의미는 실시예에 따라 다르게 설정될 수도 있다.
@atsc:componentId는 해당 컴포넌트의 식별자를 나타내는 성질이다. 해당 성질의 값은 해당 컴포넌트에 해당하는 MP 테이블에서 asset_id와 동일할 수 있다.
@atsc:componentName은 해당 컴포넌트의 사람이 판독 가능한 이름을 나타내는 성질이다.
제시된 디폴트 값들은 실시예에 따라 변경될 수 있다. 도시된 사용(use) 열은 각 필드에 관한 것으로, M 은 필수 필드, O 는 옵셔널 필드, OD 는 디폴트 값을 가지는 옵셔널 필드, CM 은 조건부 필수 필드를 의미할 수 있다. 0...1 내지 0...N 은 해당 필드들의 가능 개수를 의미할 수 있다.
이하, MMT 를 위한 MPD (Media Presentation Description) 에 대해 설명한다.
MPD는 방송사에 의해 정해진 주어진 듀레이션의 리니어 서비스에 해당하는 SLS 메타데이터 분할이다 (예를 들면, 하나의 TV 프로그램, 또는 어떤 기간 동안의 연속적인 리니어 TV 프로그램의 집합). MPD의 컨텐츠는 분할에 대한 리소스 식별자 및 미디어 프레젠테이션 내에서 식별된 리소스에 대한 컨텍스트를 제공한다. MPD의 데이터 구조 및 시맨틱스는 MPEG DASH에 의해 정의된 MPD에 따를 수 있다.
본 발명의 실시예에 있어서, MMTP 세션에 의해 전달되는 MPD는 하이브리드 서비스의 경우와 같은 브로드밴드 상에서 전달되는 레프레젠테이션을 서술하거나, 브로드캐스트 신호 악화 (예를 들면, 산 아래나 터널 속 주행)로 인한 브로드캐스트에서 브로드캐스트로의 핸드오프에서 서비스 연속성을 지원할 수 있다.
이하, MMT 를 위한 MMT 시그널링 메시지에 대해서 설명한다.
MMTP 세션이 스트리밍 서비스를 전달하기 위해서 사용되면, MMT에 의해 정의된 MMT 시그널링 메시지는 MMT에 의해 정의된 시그널링 메시지 모드에 따라 MMTP 패킷에 의해 전달된다. 에셋을 전달하는 MMTP 패킷과 동일한 packet_id 값으로 설정될 수 있는, 에셋에 특정한 MMT 시그널링 메시지를 전달하는 MMTP 패킷을 제외하고 SLS를 전달하는 MMTP 패킷의 packet_id 필드의 값은 "00"으로 설정된다. 각 서비스에 대한 적절한 패킷을 레퍼런싱하는 식별자는 전술한 바와 같이 USBD 분할에 의해 시그널링된다. 매칭하는 MMT_package_id를 갖는 MPT 메시지는 SLT에서 시그널링되는 MMTP 세션 상에서 전달될 수 있다. 각 MMTP 세션은 그 세션에 특정한 MMT 시그널링 메시지 또는 MMTP 세션에 의해 전달되는 각 에셋을 전달한다.
즉, SLT 에서 특정 서비스에 대한 SLS 를 가지는 패킷의 IP 데스티네이션 어드레스/포트 넘버 등을 특정하여 MMTP 세션의 USBD 에 접근할 수 있다. 전술한 바와 같이 SLS 를 운반하는 MMTP 패킷의 패킷 ID 는 00 등 특정값으로 지정될 수 있다. USBD 의 전술한 패키지 ID 정보를 이용하여, 매칭되는 패키지 ID 를 가지는 MPT 메시지에 접근할 수 있다. MPT 메시지는 후술하는 바와 같이 각 서비스 컴포넌트/에셋에 접근하는데 사용될 수 있다.
다음의 MMTP 메시지는 SLT에서 시그널링되는 MMTP 세션에 의해 전달될 수 있다.
MPT 메시지: 이 메시지는 모든 에셋의 리스트 및 MMT에 의해 정의된 바와 같은 그것들의 위치 정보를 포함하는 MP 테이블을 전달한다. 에셋이 MP 테이블을 전달하는 현 PLP와 다른 PLP에 의해 전달되면, 해당 에셋을 전달하는 PLP의 식별자는 PLP 식별자 디스크립터를 사용한 MP 테이블에서 제공될 수 있다. PLP 식별자 디스크립터에 대해서는 후술한다.
MMT ATSC3 (MA3) message mmt_atsc3_message(): 이 메시지는 전술한 바와 같이 SLS를 포함하는 서비스에 특정한 시스템 메타데이터를 전달한다. mmt_atsc3_message()에 대해서는 후술한다.
다음의 MMTP 메시지는 필요한 경우 SLT에서 시그널링된 MMTP 세션에 의해 전달될 수 있다.
MPI 메시지: 이 메시지는 프레젠테이션 정보의 모든 다큐먼트 또는 일부 다큐먼트를 포함하는 MPI 테이블을 전달한다. MPI 테이블과 관련된 MP 테이블은 이 메시지에 의해 전달될 수 있다.
CRI (clock relation information) 메시지: 이 메시지는 NTP 타임스탬프와 MPEG-2 STC 사이의 매핑을 위한 클록 관련 정보를 포함하는 CRI 테이블을 전달한다. 실시예에 따라 CRI 메시지는 해당 MMTP 세션을 통해 전달되지 않을 수 있다.
다음의 MMTP 메시지는 스트리밍 컨텐츠를 전달하는 각 MMTP 세션에 의해 전달될 수 있다.
가상적인 수신기 버퍼 모델 메시지: 이 메시지는 버퍼를 관리하기 위해 수신기에 의해 요구되는 정보를 전달한다.
가상적인 수신기 버퍼 모델 제거 메시지: 이 메시지는 MMT 디캡슐레이션 버퍼를 관리하기 위해 수신기에 의해 요구되는 정보를 전달한다.
이하, MMT 시그널링 메시지 중 하나인 mmt_atsc3_message() 에 대해서 설명한다. MMT 시그널링 메시지인 mmt_atsc3_message()는 전술한 본 발명에 따라 서비스에 특정한 정보를 전달하기 위해 정의된다. 본 시그널링 메시지는 MMT 시그널링 메시지의 기본적인 필드인 메시지 ID, 버전 및/또는 길이(length) 필드를 포함할 수 있다. 본 시그널링 메시지의 페이로드에는 서비스 ID 정보와, 컨텐트 타입, 컨텐트 버전, 컨텐트 컴프레션 정보 및/또는 URI 정보가 포함될 수 있다. 컨텐트 타입 정보는 본 시그널링 메시지의 페이로드에 포함되는 데이터의 타입을 지시할 수 있다. 컨텐트 버전 정보는 페이로드에 포함되는 데이터의 버전을, 컨텐트 컴프레션 정보는 해당 데이터에 적용된 컴프레션 타입을 지시할 수 있다. URI 정보는 본 메시지에 의해 전달되는 컨텐츠와 관련된 URI 정보를 가질 수 있다.
이하, PLP 식별자 디스크립터에 대해서 설명한다.
PLP 식별자 디스크립터는 전술한 MP 테이블의 디스크립터 중 하나로 사용될 수 있는 디스크립터이다. PLP 식별자 디스크립터는 에셋을 전달하는 PLP에 관한 정보를 제공한다. 에셋이 MP 테이블을 전달하는 현재 PLP와 다른 PLP에 의해 전달되면, PLP 식별자 디스크립터는 그 에셋을 전달하는 PLP를 식별하기 위해 관련된 MP 테이블에서 에셋 디스크립터로 사용될 수 있다. PLP 식별자 디스크립터는 PLP ID 정보 외에 BSID 정보를 더 포함할 수도 있다. BSID 는 이 디스크립터에 의해 기술되는 Asset 을 위한 MMTP 패킷을 전달하는 브로드캐스트 스트림의 ID 일 수 있다.
도 56 은 본 발명의 일 실시예에 따른 링크 레이어 프로토콜 아키텍쳐를 도시한 도면이다.
이하, 링크 레이어(Link Layer) 에 대해서 설명한다.
링크 레이어는 피지컬 레이어와 네트워크 레이어 사이의 레이어이며, 송신 측에서는 네트워크 레이어에서 피지컬 레이어로 데이터를 전송하고, 수신 측에서는 피지컬 레이어에서 네트워크 레이어로 데이터를 전송한다. 링크 레이어의 목적은 피지컬 레이어에 의한 처리를 위해 모든 입력 패킷 타입을 하나의 포맷으로 요약하는 것, 아직 정의되지 않은 입력 타입에 대한 유연성 및 추후 확장 가능성을 보장하는 것이다. 또한, 링크 레이어 내에서 처리하면, 예를 들면, 입력 패킷의 헤더에 있는 불필요한 정보를 압축하는 데 옵션을 제공함으로써, 입력 데이터가 효율적으로 전송될 수 있도록 보장된다. 인캡슐레이션, 콤프레션 등의 동작은 링크 레이어 프로토콜이라 불리고, 해당 프로토콜을 이용하여 생성된 패킷은 링크 레이어 패킷이라 불린다. 링크 레이어는 패킷 인캡슐레이션(packet encapsulation), 오버헤드 리덕션(Overhead Reduction) 및/또는 시그널링 전송(Signaling Transmission) 등의 기능을 수행할 수 있다.
이하, 패킷 인캡슐레이션에 대해서 설명한다. 링크 레이어 프로토콜은 IP 패킷 및 MPEG-2 TS와 같은 것을 포함하는 모든 타입의 패킷의 인캡슐레이션을 가능하게 한다. 링크 레이어 프로토콜을 이용하여, 피지컬 레이어는 네트워크 레이어 프로토콜 타입과 독립적으로 하나의 패킷 포맷만 처리하면 된다 (여기서 네트워크 레이어 패킷의 일종으로 MPEG-2 TS 패킷을 고려). 각 네트워크 레이어 패킷 또는 입력 패킷은 제네릭 링크 레이어 패킷의 페이로드로 변형된다. 추가적으로, 입력 패킷 사이즈가 특별히 작거나 큰 경우 피지컬 레이어 리소스를 효율적으로 이용하기 위해 연쇄 및 분할이 실행될 수 있다.
전술한 바와 같이 패킷 인캡슐레이션 과정에서 분할(segmentation) 이 활용될 수 있다. 네트워크 레이어 패킷이 지나치게 커서 피지컬 레이어에서 쉽게 처리하지 못하는 경우, 네트워크 레이어 패킷은 두 개 이상의 분할로 나누어진다. 링크 레이어 패킷 헤더는 송신 측에서 분할을 실행하고 수신 측에서 재결합을 실행하기 위해 프로토콜 필드를 포함한다. 네트워크 레이어 패킷이 분할되는 경우, 각 분할은 네트워크 레이어 패킷에서의 원래 위치와 같은 순서로 링크 레이어 패킷으로 인캡슐레이션 될 수 있다. 또한 네트워크 레이어 패킷의 분할을 포함하는 각 링크 레이어 패킷은 결과적으로 피지컬 레이어로 전송될 수 있다.
전술한 바와 같이 패킷 인캡슐레이션 과정에서 연쇄(concatenation) 또한 활용될 수 있다. 링크 레이어 패킷의 페이로드가 여러 네트워크 레이어 패킷을 포함할 정도로 네트워크 레이어 패킷이 충분히 작은 경우, 링크 레이어 패킷 헤더는 연쇄를 실행하기 위해 프로토콜 필드를 포함한다. 연쇄는 다수의 작은 크기의 네트워크 레이어 패킷을 하나의 페이로드로 결합한 것이다. 네트워크 레이어 패킷들이 연쇄되면, 각 네트워크 레이어 패킷은 원래의 입력 순서와 같은 순서로 링크 레이어 패킷의 페이로드로 연쇄될 수 있다. 또한, 링크 레이어 패킷의 페이로드를 구성하는 각 패킷은 패킷의 분할이 아닌 전체 패킷일 수 있다.
이하, 오버헤드 리덕션에 대해서 설명한다. 링크 레이어 프로토콜의 사용으로 인해 피지컬 레이어 상에서 데이터의 전송에 대한 오버헤드가 크게 감소할 수 있다. 본 발명에 따른 링크 레이어 프로토콜은 IP 오버헤드 리덕션 및/또는 MPEG-2 TS 오버헤드 리덕션을 제공할 수 있다. IP 오버헤드 리덕션에 있어서, IP 패킷은 고정된 헤더 포맷을 가지고 있으나, 통신 환경에서 필요한 일부 정보는 브로드캐스트 환경에서 불필요할 수 있다. 링크 레이어 프로토콜은 IP 패킷의 헤더를 압축함으로써 브로드캐스트 오버헤드를 줄이는 메커니즘을 제공한다. MPEG-2 TS 오버헤드 리덕션에 있어서, 링크 레이어 프로토콜은 싱크 바이트 제거, 널 패킷 삭제 및/또는 공통 헤더 제거 (압축)을 제공한다. 우선, 싱크 바이트 제거는 TS 패킷당 하나의 바이트의 오버헤드 리덕션을 제공하고, 다음으로, 널 패킷 삭제 메커니즘은 수신기에서 재삽입될 수 있는 방식으로 188 바이트의 널 TS 패킷을 제거한다. 마지막으로, 공통 헤더 제거 메커니즘이 제공된다.
시그널링 전송에 대해서, 링크 레이어 프로토콜은 시그널링 패킷을 위한 특정 포맷이, 링크 레이어 시그널링을 전송하기 위하여 제공될 수 있다. 이에 관해서는 후술한다.
도시된 본 발명의 일 실시예에 따른 링크 레이어 프로토콜 아키텍쳐에서, 링크 레이어 프로토콜은 입력 패킷으로 IPv4, MPEG-2 TS 등과 같은 입력 네트워크 레이어 패킷을 취한다. 향후 확장은 다른 패킷 타입과 링크 레이어에서 입력될 수 있는 프로토콜을 나타낸다. 링크 레이어 프로토콜은 피지컬 레이어에서 특정 채널에 대한 매핑에 관한 정보를 포함하는 모든 링크 레이어 시그널링에 대한 시그널링 및 포맷을 특정한다. 도면은 ALP가 어떻게 다양한 헤더 컴프레션 및 삭제 알고리즘을 통해 전송 효율을 향상시키기 위해 메커니즘을 포함하는지 나타낸다. 또한 링크 레이어 프로토콜은 기본적으로 입력 패킷들을 인캡슐레이션할 수 있다.
도 57 는 본 발명의 일 실시예에 따른 링크 레이어 패킷의 베이스 헤더 구조를 도시한 도면이다. 이하, 헤더의 구조에 대해서 설명한다.
링크 레이어 패킷은 데이터 페이로드가 뒤따르는 헤더를 포함할 수 있다. 링크 레이어 패킷의 패킷은 베이스 헤더를 포함할 수 있고, 베이스 헤더의 컨트롤 필드에 따라 추가 헤더를 포함할 수 있다. 옵셔널 헤더의 존재는 추가 헤더의 플레그 필드로부터 지시된다. 실시예에 따라, 추가 헤더, 옵셔널 헤더의 존재를 나타내는 필드는 베이스 헤더에 위치할 수도 있다.
이하, 베이스 헤더의 구조에 대해서 설명한다. 링크 레이어 패킷 인캡슐레이션에 대한 베이스 헤더는 계층 구조를 갖는다. 베이스 헤더는 2바이트의 길이를 가질 수 있고, 링크 레이어 패킷 헤더의 최소 길이이다.
도시된 본 발명의 일 실시예에 따른 베이스 헤더는, Packet_Type 필드, PC 필드 및/또는 길이(length) 필드를 포함할 수 있다. 실시예에 따라 베이스 헤더는 HM 필드 또는 S/C 필드를 더 포함할 수 있다.
Packet_Type 필드는 링크 레이어 패킷으로의 인캡슐레이션 전의 입력 데이터의 패킷 타입 또는 원래의 프로토콜을 나타내는 3비트 필드이다. IPv4 패킷, 압축된 IP 패킷(compressed IP packet), 링크 레이어 시그널링 패킷, 및 그 밖의 타입의 패킷들이 이러한 베이스 헤더 구조를 가지며 인캡슐레이션 될 수 있다. 단, 실시예에 따라 MPEG-2 TS 패킷은 이와 다른 특별한 구조를 가지며 인캡슐레이션 될 수 있다. Packet_Type의 값이 "000"이면, ALP 패킷의 원래의 데이터 타입인 "001" "100" 또는 "111"은 IPv4 패킷, 압축 IP 패킷, 링크 레이어 시그널링 또는 익스텐션 패킷 중 하나이다. MPEG-2 TS 패킷이 캡슐화되면, Packet_Type의 값은 "010"이 될 수 있다. 다른 Packet_Type 필드의 값들은 향후 사용을 위해 남겨둘 수 있다(reserved for future use).
Payload_Configuration (PC) 필드는 페이로드의 구성을 나타내는 1비트 필드일 수 있다. 0의 값은 링크 레이어 패킷이 하나의 전체 입력 패킷을 전달하고 다음 필드가 Header_Mode라는 것을 나타낼 수 있다. 1의 값은 링크 레이어 패킷이 하나 이상의 입력 패킷 (연쇄)이나 큰 입력 패킷 (분할)의 일부를 전달하며 다음 필드가 Segmentation_Concatenation이라는 것을 나타낼 수 있다.
Header_Mode (HM) 필드는 0으로 설정되는 경우 추가 헤더가 없다는 것을 나타내고 링크 레이어 패킷의 페이로드의 길이가 2048 바이트보다 작다는 것을 나타내는 1비트 필드일 수 있다. 이 수치는 실시예에 따라 변경될 수 있다. 1의 값은 아래에 정의된 하나의 패킷을 위한 추가 헤더가 길이 필드 다음에 존재한다는 것을 나타낼 수 있다. 이 경우, 페이로드의 길이는 2047 바이트보다 크고/크거나 옵션 피쳐가 사용될 수 있다 (서브 스트림 식별, 헤더 확장 등). 이 수치는 실시예에 따라 변경될 수 있다. 본 필드는 링크 레이어 패킷의 Payload_Configuration 필드가 0의 값을 가질 때만 존재할 수 있다.
Segmentation_Concatenation (S/C) 필드는 0으로 설정된 경우 페이로드가 입력 패킷의 세그먼트를 전달하고 아래에 정의되는 분할을 위한 추가 헤더가 길이 필드 다음에 존재한다는 것을 나타내는 1비트 필드일 수 있다. 1의 값은 페이로드가 하나보다 많은 완전한 입력 패킷을 전달하고 아래에 정의된 연쇄를 위한 추가 헤더가 길이 필드 다음에 존재한다는 것을 나타낼 수 있다. 본 필드는 ALP 패킷의 Payload_Configuration 필드의 값이 1일 때만 존재할 수 있다.
길이 필드는 링크 레이어 패킷에 의해 전달되는 페이로드의 바이트 단위의 길이의 11 LSBs (least significant bits)를 나타내는 11비트 필드일 수 있다. 다음의 추가 헤더에 Length_MSB 필드가 있으면, 길이 필드는 Length_MSB 필드에 연쇄되고 페이로드의 실제 총 길이를 제공하기 위해 LSB가 된다. 길이필드의 비트수는 11 비트외에 다른 비트로 변경될 수도 있다.
따라서 다음의 패킷 구조의 타입이 가능하다. 즉, 추가 헤더가 없는 하나의 패킷, 추가 헤더가 있는 하나의 패킷, 분할된 패킷, 연쇄된 패킷이 가능하다. 실시예에 따라 각 추가 헤더와 옵셔널 헤더, 후술할 시그널링 정보를 위한 추가헤더와 타입 익스텐션을 위한 추가헤더에 의한 조합으로, 더 많은 패킷 컨피규레이션이 가능할 수 있다.
도 58 은 본 발명의 일 실시예에 따른 링크 레이어 패킷의 추가 헤더 구조를 도시한 도면이다.
추가 헤더(additional header) 는 다양한 타입이 있을 수 있다. 이하 싱글 패킷을 위한 추가 헤더에 대해서 설명한다.
하나의 패킷에 대한 해당 추가 헤더는 Header_Mode (HM) ="1"인 경우 존재할 수 있다. 링크 레이어 패킷의 페이로드의 길이가 2047 바이트보다 크거나 옵션 필드가 사용되는 경우 Header_Mode (HM)는 1로 설정될 수 있다. 하나의 패킷의 추가 헤더(tsib10010)는 도면에 나타낸다.
Length_MSB 필드는 현재 링크 레이어 패킷에서 바이트 단위의 총 페이로드 길이의 MSBs (most significant bits)를 나타낼 수 있는 5비트 필드일 수 있고, 총 페이로드 길이를 얻기 위해 11 LSB를 포함하는 길이 필드에 연쇄된다. 따라서 시그널링될 수 있는 페이로드의 최대 길이는 65535 바이트이다. 길이필드의 비트수는 11 비트외에 다른 비트로 변경될 수도 있다. 또한 Length_MSB 필드 역시 비트수가 변경될 수 있으며 이에 따라 최대 표현가능한 페이로드 길이 역시 변경될 수 있다. 실시예에 따라 각 길이필드들은 페이로드가 아닌 전체 링크 레이어 패킷의 길이를 지시할 수도 있다.
Sub-stream Identifier Flag (SIF) 필드는 HEF (Header Extension Flag) 필드 후에 SID (sub-stream ID)가 존재하는지 나타낼 수 있는 1비트 필드가 될 수 있다. 링크 레이어 패킷에 SID가 없으면, SIF 필드는 0으로 설정될 수 있다. 링크 레이어 패킷에서 HEF 필드 후에 SID가 존재하면, SIF는 1로 설정될 수 있다. SID에 대한 자세한 내용은 후술한다.
HEF 필드는 1로 설정되는 경우 추후 확장을 위해 추가 헤더가 존재한다는 것을 나타낼 수 있는 1비트 필드가 될 수 있다. 0의 값은 이 확장 필더가 존재하지 않는다는 것을 나타낼 수 있다.
이하, 분할(segmentation) 이 활용되는 경우에 있어서 추가 헤더에 대해서 설명한다.
Segmentation_Concatenation (S/C) ="0"인 경우 추가 헤더(tsib10020)가 존재할 수 있다. Segment_Sequence_Number는 링크 레이어 패킷에 의해 전달되는 해당 분할의 순서를 나타낼 수 있는 5비트의 무부호 정수가 될 수 있다. 입력 패킷의 첫 번째 분할을 전달하는 링크 레이어 패킷에 대해, 해당 필드의 값은 0x0으로 설정될 수 있다. 해당 필드는 분할될 입력 패킷에 속하는 각 추가 세그먼트마다 1씩 증분될 수 있다.
LSI (Last_Segment_Indicator)는 1로 설정되는 경우 해당 페이로드에 있는 분할이 입력 패킷의 마지막 것임을 나타낼 수 있는 1비트 필드일 수 있다. 0의 값은 그것이 마지막 분할이 아님을 나타낼 수 있다.
SIF (Sub-stream Identifier Flag)는 SID가 HEF 필드 후에 존재하는지 나타낼 수 있는 1비트 필드가 될 수 있다. 링크 레이어 패킷에 SID가 존재하지 않으면, SIF 필드는 0으로 설정될 수 있다. 링크 레이어 패킷에서 HEF 필드 후에 SID가 존재하면, SIF는 1로 설정될 수 있다.
HEF 필드는 1로 설정되는 경우 링크 레이어 헤더의 추후 확장을 위해 추가 헤더 후에 옵셔널 헤더 확장이 존재한다는 것을 나타낼 수 있는 1비트 필드일 수 있다. 0의 값은 옵셔널 헤더 확장이 존재하지 않는다는 것을 나타낼 수 있다.
실시예에 따라 각 분할된 세그먼트가 동일한 입력 패킷으로부터 생성되었음을 지시하는 패킷 ID 필드가 추가될 수도 있다. 이 필드는 분할된 세그먼트가 순서대로 전송된다면 필요치 않아 생략될 수 있다.
이하, 연쇄(concatenation) 이 활용되는 경우에 있어서 추가 헤더에 대해서 설명한다.
Segmentation_Concatenation (S/C) ="1"인 경우 추가 헤더(tsib10030)가 존재할 수 있다.
Length_MSB는 해당 링크 레이어 패킷에서 바이트 단위의 페이로드 길이의 MSB 비트를 나타낼 수 있는 4비트 필드일 수 있다. 해당 페이로드의 최대 길이는 연쇄를 위해 32767 바이트가 된다. 전술한 바와 마찬가지로 자세한 수치는 변경될 수 있다.
Count 필드는 링크 레이어 패킷에 포함된 패킷의 수를 나타낼 수 있는 필드일 수 있다. 링크 레이어 패킷에 포함된 패킷의 수에 해당하는 2는 해당 필드에 설정될 수 있다. 따라서, 링크 레이어 패킷에서 연쇄된 패킷의 최대값은 9이다. Count 필드가 그 개수를 지시하는 방법은 실시예마다 다를 수 있다. 즉, 1 부터 8 까지의 개수가 지시될 수도 있다.
HEF 필드는 1로 설정되는 경우 링크 레이어 헤더의 향후 확장을 위한 추가 헤더 후에 옵셔널 헤더 확장이 존재한다는 것을 나타낼 수 있는 1비트 필드일 수 있다. 0의 값은 확장 헤더가 존재하지 않는다는 것을 나타낼 수 있다.
Component_Length는 각 패킷의 바이트 단위 길이를 나타낼 수 있는 12비트 필드일 수 있다. Component_Length 필드는 마지막 컴포넌트 패킷을 제외하고 페이로드에 존재하는 패킷과 같은 순서로 포함된다. 길이 필드의 수는 (Count+1)에 의해 나타낼 수 있다. 실시예에 따라 Count 필드의 값과 같은 수의 길이 필드가 존재할 수도 있다. 링크 레이어 헤더가 홀수의 Component_Length로 구성되는 경우, 네 개의 스터핑 비트가 마지막 Component_Length 필드에 뒤따를 수 있다. 이들 비트는 0으로 설정될 수 있다. 실시예에 따라 마지막 연쇄된 인풋패킷의 길이를 나타내는 Component_Length 필드는 존재하지 않을 수 있다. 이 경우, 마지막 연쇄된 인풋패킷의 길이는 전체 페이로드 길이에서 각 Component_length 필드가 나타내는 값의 합을 뺀 길이로 지시될 수 있다.
이하, 옵셔널 헤더에 대해서 설명한다.
전술한 바와 같이 옵셔널 헤더는 추가 헤더 뒤편에 추가될 수 있다. 옵셔널 헤더 필드는 SID 및/또는 헤더 확장을 포함할 수 있다. SID는 링크 레이어 레벨에서 특정 패킷 스트림을 필터링하는 데 사용된다. SID의 일례는 다수의 서비스를 전달하는 링크 레이어 스트림에서 서비스 식별자의 역할이다. 적용 가능한 경우, 서비스와 서비스에 해당하는 SID 값 사이의 매핑 정보는 SLT에서 제공될 수 있다. 헤더 확장은 향후 사용을 위한 확장 필드를 포함한다. 수신기는 자신이 이해하지 못하는 모든 헤더 확장을 무시할 수 있다.
SID는 링크 레이어 패킷에 대한 서브 스트림 식별자를 나타낼 수 있는 8비트 필드일 수 있다. 옵셔널 헤더 확장이 있으면, SID는 추가 헤더와 옵셔널 헤더 확장 사이에 존재한다.
Header_Extension ()는 아래에 정의된 필드를 포함할 수 있다.
Extension_Type은 Header_Extension ()의 타입을 나타낼 수 있는 8비트 필드일 수 있다.
Extension_Length는 Header_Extension ()의 다음 바이트부터 마지막 바이트까지 카운팅되는 Header Extension ()의 바이트 길이를 나타낼 수 있는 8비트 필드일 수 있다.
Extension_Byte는 Header_Extension ()의 값을 나타내는 바이트일 수 있다.
도 59 은 본 발명의 다른 실시예에 따른 링크 레이어 패킷의 추가 헤더 구조를 도시한 도면이다.
이하, 시그널링 정보를 위한 추가 헤더에 대해서 설명한다.
링크 레이어 시그널링이 어떻게 링크 레이어 패킷에 포함되는지는 다음과 같다. 시그널링 패킷은 베이스 헤더의 Packet_Type 필드가 100과 같을 때 식별된다.
도면(tsib11010)은 시그널링 정보를 위한 추가 헤더를 포함하는 링크 레이어 패킷의 구조를 나타낸다. 링크 레이어 헤더뿐만 아니라, 링크 레이어 패킷은 시그널링 정보를 위한 추가 헤더와 실제 시그널링 데이터 자체의 두 추가 부분으로 구성될 수 있다. 링크 레이어 시그널링 패킷의 총 길이는 링크 레이어 패킷 헤더에 나타낸다.
시그널링 정보를 위한 추가 헤더는 다음의 필드들을 포함할 수 있다. 실시예에 따라 일부 필드는 생략될 수 있다.
Signaling_Type은 시그널링의 타입을 나타낼 수 있는 8비트 필드일 수 있다.
Signaling_Type_Extension은 시그널링의 속성을 나타낼 수 있는 16비트 필드일 수 있다. 해당 필드의 자세한 내용은 시그널링 사양에서 정의될 수 있다.
Signaling_Version은 시그널링의 버전을 나타낼 수 있는 8비트 필드일 수 있다.
Signaling_Format은 시그널링 데이터의 데이터 포맷을 나타낼 수 있는 2비트 필드일 수 있다. 여기서 시그널링 포맷이란 바이너리, XML 등의 데이터 포맷을 의미할 수 있다.
Signaling_Encoding은 인코딩/컴프레션 포맷을 특정할 수 있는 2비트 필드일 수 있다. 본 필드는 컴프레션이 수행되지 않았는지, 어떤 특정한 컴프레션이 수행되었는지를 지시할 수 있다.
이하, 패킷 타입 확장을 위한 추가 헤더에 대해서 설명한다.
추후에 링크 레이어에 의해 전달되는 패킷 타입 및 추가 프로토콜의 무제한에 가까운 수를 허용하는 메커니즘을 제공하기 위해, 추가 헤더가 정의된다. 전술한 바와 같이 베이스 헤더에서 Packet_type이 111인 경우 패킷 타입 확장이 사용될 수 있다. 도면(tsib11020)은 타입 확장을 위한 추가 헤더를 포함하는 링크 레이어 패킷의 구조를 나타낸다.
타입 확장을 위한 추가 헤더는 다음의 필드들을 포함할 수 있다. 실시예에 따라 일부 필드는 생략될 수 있다.
extended_type은 페이로드로서 링크 레이어 패킷으로 인캡슐레이션되는 입력의 프로토콜이나 패킷 타입을 나타낼 수 있는 16비트 필드일 수 있다. 해당 필드는 Packet_Type 필드에 의해 이미 정의된 모든 프로토콜이나 패킷 타입에 대해 사용될 수 없다.
도 60 은 본 발명의 일 실시예에 따른, MPEG-2 TS 패킷을 위한 링크 레이어 패킷의 헤더 구조와, 그 인캡슐레이션 과정을 도시한 도면이다.
이하, 입력 패킷으로 MPEG-2 TS 패킷이 입력되었을 때, 링크 레이어 패킷 포맷에 대해서 설명한다.
이 경우, 베이스 헤더의 Packet_Type 필드는 010과 동일하다. 각 링크 레이어 패킷 내에서 다수의 TS 패킷이 인캡슐레이션 될 수 있다. TS 패킷의 수는 NUMTS 필드를 통해 시그널링 될 수 있다. 이 경우, 전술한 바와 같이, 특별한 링크 레이어 패킷 헤더 포맷이 사용될 수 있다.
링크 레이어는 전송 효율을 향상시키기 위해 MPEG-2 TS를 위한 오버헤드 리덕션 메커니즘을 제공한다. 각 TS 패킷의 싱크 바이트(0x47)는 삭제될 수 있다. 널 패킷 및 유사한 TS 헤더를 삭제하는 옵션 또한 제공된다.
불필요한 전송 오버헤드를 피하기 위해, TS 널 패킷(PID = 0x1FFF)이 제거될 수 있다. 삭제된 널 패킷은 DNP 필드를 이용하여 수신기 측에서 복구될 수 있다. DNP 필드는 삭제된 널 패킷의 카운트를 나타낸다. DNP 필드를 이용한 널 패킷 삭제 메커니즘은 아래에서 설명한다.
전송 효율을 더욱 향상시키기 위해, MPEG-2 TS 패킷의 유사한 헤더가 제거될 수 있다. 두 개 이상의 순차적인 TS 패킷이 순차적으로 CC (continuity counter) 필드를 증가시키고 다른 헤더 필드도 동일하면, 헤더가 첫 번째 패킷에서 한 번 전송되고 다른 헤더는 삭제된다. HDM 필드는 헤더가 삭제되었는지 여부를 나타낼 수 있다. 공통 TS 헤더 삭제의 상세한 과정은 아래에 설명한다.
세 가지 오버헤드 리덕션 메커니즘이 모두 실행되는 경우, 오버헤드 리덕션은 싱크 제거, 널 패킷 삭제, 공통 헤더 삭제의 순으로 실행될 수 있다. 실시예에 따라 각 메커니즘이 수행되는 순서는 바뀔 수 있다. 또한, 실시예에 따라 일부 메커니즘은 생략될 수 있다.
MPEG-2 TS 패킷 인캡슐레이션을 사용하는 경우 링크 레이어 패킷 헤더의 전체적인 구조가 도면(tsib12010)에 도시된다.
이하, 도시된 각 필드에 대해서 설명한다. Packet_Type은 전술한 바와 같이 입력 패킷의 프로토콜 타입을 나타낼 수 있는 3비트 필드일 수 있다. MPEG-2 TS 패킷 인캡슐레이션을 위해, 해당 필드는 항상 010으로 설정될 수 있다.
NUMTS (Number of TS packets)는 해당 링크 레이어 패킷의 페이로드에서 TS 패킷의 수를 나타낼 수 있는 4비트 필드일 수 있다. 최대 16개의 TS 패킷이 하나의 링크 레이어 패킷에서 지원될 수 있다. NUMTS = 0의 값은 16개의 TS 패킷이 링크 레이어 패킷의 페이로드에 의해 전달된다는 것을 나타낼 수 있다. NUMTS의 다른 모든 값에 대해, 같은 수의 TS 패킷이 인식된다. 예를 들면, NUMTS = 0001은 하나의 TS 패킷이 전달되는 것을 의미한다.
AHF (additional header flag)는 추가 헤더가 존재하는지 여부를 나타낼 수 있는 필드일 수 있다. 0의 값은 추가 헤더가 존재하지 않는다는 것을 나타낸다. 1의 값은 1바이트 길이의 추가 헤더가 베이스 헤더 다음에 존재한다는 것을 나타낸다. 널 TS 패킷이 삭제되거나 TS 헤더 컴프레션이 적용되면, 해당 필드는 1로 설정될 수 있다. TS 패킷 인캡슐레이션을 위한 추가 헤더는 다음의 두 개의 필드로 구성되고 해당 링크 레이어 패킷에서의 AHF의 값이 1로 설정되는 경우에만 존재한다.
HDM (header deletion mode)은 TS 헤더 삭제가 해당 링크 레이어 패킷에 적용될 수 있는지 여부를 나타내는 1비트 필드일 수 있다. 1의 값은 TS 헤더 삭제가 적용될 수 있다는 것을 나타낸다. 0의 값은 TS 헤더 삭제 방법이 해당 링크 레이어 패킷에 적용되는 않는다는 것을 나타낸다.
DNP (deleted null packets)는 해당 링크 레이어 패킷 전에 삭제된 널 TS 패킷의 수를 나타내는 7비트 필드일 수 있다. 최대 128개의 널 TS 패킷이 삭제될 수 있다. HDM = 0인 경우, DNP = 0의 값은 128개의 널 패킷이 삭제된다는 것을 나타낼 수 있다. HDM = 1인 경우, DNP = 0의 값은 널 패킷이 삭제되지 않는다는 것을 나타낼 수 있다. DNP의 다른 모든 값에 대해, 같은 수의 널 패킷이 인식된다. 예를 들면, DNP = 5는 5개의 널 패킷이 삭제된다는 것을 의미한다.
전술한 각 필드의 비트 수들은 변경될 수 있으며, 변경된 비트 수에 따라 그 해당 필드가 지시하는 값의 최소/최대값은 변경될 수 있다. 이는 설계자의 의도에 따라 변경될 수 있다.
이하 싱크 바이트 삭제(SYNC byte removal) 에 대해서 설명한다.
TS 패킷을 링크 레이어 패킷의 페이로드로 캡슐화하는 경우, 각 TS 패킷의 시작부터 싱크 바이트(0x47)가 삭제될 수 있다. 따라서 링크 레이어 패킷의 페이로드로 캡슐화된 MPEG2-TS 패킷의 길이는 (원래의 188 바이트 대신) 항상 187 바이트이다.
이하, 널 패킷 삭제(Null Packet Deletion) 에 대해서 설명한다.
전송 스트림 규칙은 송신기의 멀티플렉서의 출력 및 수신기의 디멀티플렉서의 입력에서의 비트 레이트가 시간에 대해 일정하며 종단간 지연 또한 일정할 것을 요구한다. 일부 전송 스트림 입력 신호에 대해, 널 패킷은 일정한 비트레이스 스트림에 가변적인 비트레이트 서비스를 수용하기 위해 존재할 수 있다. 이 경우, 불필요한 전송 오버헤드를 피하기 위해, TS 널 패킷 (즉, PID = 0x1FFF인 TS 패킷)이 제거될 수 있다. 이 처리는 제거된 널 패킷이 수신기에서 원래의 정확한 자리에 다시 삽입될 수 있는 방식으로 실행되므로, 일정한 비트레이트를 보장하고 PCR 타임 스탬프 업데이트를 할 필요가 없어진다.
링크 레이어 패킷의 생성 전에, DNP라 불리는 카운터는 우선 0으로 리셋된 후에 현재 링크 레이어 패킷의 페이로드에 인캡슐레이션 될 첫 번째 널 TS 패킷이 아닌 패킷에 앞서는 각 삭제된 널 패킷에 대해 증분될 수 있다. 그 후 연속된 유용한 TS 패킷의 그룹이 현재의 링크 레이어 페킷의 페이로드에 인캡슐레이션되고, 그 헤더에서의 각 필드의 값이 결정될 수 있다. 생성된 링크 레이어 패킷이 피지컬 레이어에 주입된 후, DNP는 0으로 리셋된다. DNP가 최고 허용치에 도달하는 경우, 다음 패킷 또한 널 패킷이면, 해당 널 패킷은 유용한 패킷으로 유지되며 다음 링크 레이어 패킷의 페이로드에 인캡슐레이션된다. 각 링크 레이어 패킷은 그것의 페이로드에 적어도 하나의 유용한 TS 패킷을 포함할 수 있다.
이하, TS 패킷 헤더 삭제(TS Packet Header Deletion) 에 대해서 설명한다. TS 패킷 헤더 삭제는 TS 패킷 헤더 압축으로 불릴 수도 있다.
두 개 이상의 순차적인 TS 패킷이 순차적으로 CC 필드를 증가시키고 다른 헤더 필드도 동일하면, 헤더가 첫 번째 패킷에서 한 번 전송되고 다른 헤더는 삭제된다. 중복된 MPEG-2 TS 패킷이 두 개 이상의 순차적인 TS 패킷에 포함되면, 헤더 삭제는 송신기 측에서 적용될 수 없다. HDM 필드는 헤더가 삭제되는지 여부를 나타낼 수 있다. TS 헤더가 삭제되는 경우, HDM은 1로 설정될 수 있다. 수신기 측에서, 첫 번째 패킷 헤더를 이용하여, 삭제된 패킷 헤더가 복구되고, CC가 첫 번째 헤더부터 순서대로 증가됨으로써 복구된다.
도시된 실시예(tsib12020)는, TS 패킷의 인풋 스트림이 링크 레이어 패킷으로 인캡슐레이션되는 과정의 일 실시예이다. 먼저 SYNC 바이트(0x47)을 가지는 TS 패킷들로 이뤄진 TS 스트림이 입력될 수 있다. 먼저 SYNC 바이트 삭제과정을 통해 싱크 바이트들이 삭제될 수 있다. 이 실시예에서 널 패킷 삭제는 수행되지 않은 것으로 가정한다.
여기서, 도시된 8개의 TS 패킷의 패킷 헤더에서, CC 즉 Countinuity Counter 필드 값을 제외한 다른 값들이 모두 같다고 가정한다. 이 경우, TS 패킷 삭제/압축이 수행될 수 있다. CC = 1 인 첫번째 TS 패킷의 헤더만 남기고, 나머지 7개의 TS 패킷 헤더를 삭제한다. 처리된 TS 패킷들은 링크 레이어 패킷의 페이로드에 인캡슐레이션 될 수 있다.
완성된 링크 레이어 패킷을 보면, Packet_Type 필드는 TS 패킷이 입력된 경우이므로 010 의 값을 가질 수 있다. NUMTS 필드는 인캡슐레이션된 TS 패킷의 개수를 지시할 수 있다. AHF 필드는 패킷 헤더 삭제가 수행되었으므로 1 로 설정되어 추가 헤더의 존재를 알릴 수 있다. HDM 필드는 헤더 삭제가 수행되었으므로 1 로 설정될 수 있다. DNP 는 널 패킷 삭제가 수행되지 않았으므로 0 으로 설정될 수 있다.
도 61 는 본 발명의 일 실시예에 따른 IP 헤더 압축에 있어서, 어댑테이션 모드들의 실시예를 도시한 도면이다(송신측).
이하, IP 헤더 압축(IP Header Compression) 에 대해서 설명한다.
링크 레이어에서, IP 헤더 컴프레션/디컴프레션 스킴이 제공될 수 있다. IP 헤더 컴프레션은 헤더 컴프레서/디컴프레서 및 어댑테이션 모듈의 두 부분을 포함할 수 있다. 헤더 컴프레션 스킴은 RoHC에 기초할 수 있다. 또한, 방송 용도로 어댑테이션 기능이 추가된다.
송신기 측에서, RoHC 컴프레서는 각 패킷에 대해 헤더의 크기를 감소시킨다. 그 후, 어댑테이션 모듈은 컨텍스트 정보를 추출하고 각 패킷 스트림으로부터 시그널링 정보를 생성한다. 수신기 측에서, 어댑테이션 모듈은 수신된 패킷 스트림과 관련된 시그널링 정보를 파싱하고 컨텍스트 정보를 수신된 패킷 스트림에 첨부한다. RoHC 디컴프레서는 패킷 헤더를 복구함으로써 원래의 IP 패킷을 재구성한다.
헤더 컴프레션 스킴은 전술한 바와 같이 ROHC 를 기반으로 할 수 있다. 특히, 본 시스템에서는 ROHC 의 U 모드(uni dirctional mode) 에서 ROHC 프레임워크가 동작할 수 있다. 또한, 본 시스템에서 0x0002 의 프로파일 식별자로 식별되는 ROHC UDP 헤더 컴프레션 프로파일이 사용될 수 있다.
이하, 어댑테이션(Adaptation) 에 대해서 설명한다.
단방향 링크를 통한 전송의 경우, 수신기가 컨텍스트의 정보를 갖고 있지 않으면, 디컴프레서는 완전한 컨텍스트를 수신할 때까지 수신된 패킷 헤더를 복구할 수 없다. 이는 채널 변경 지연 및 턴 온 딜레이 (turn-on delay)를 초래할 수 있다. 이러한 이유로, 컴프레서와 디컴프레서 사이의 컨피규레이션 파라미터와 컨텍스트 정보는 항상 패킷 플로우와 함께 전송될 수 있다.
어댑테이션 기능은 컨피규레이션 파라미터와 컨텍스트 정보의 대역 외 전송을 제공한다. 대역 외 전송은 링크 레이어 시그널링을 통해 이루어질 수 있다. 따라서, 어댑테이션 기능은 컨텍스트 정보의 손실로 인한 디컴프레션 에러 및 채널 변경 지연을 줄이기 위해 이용된다.
이하, 컨텍스트 정보(Context Information) 의 추출에 대해서 설명한다.
컨텍스트 정보의 추출은 어댑테이션 모드에 따라 다양한 방법으로 실시될 수 있다. 본 발명에서는 이하 3가지 실시예에 대해서 설명한다. 본 발명의 범위는 후술할 어댑테이션 모드의 실시예들에 한정되지 아니한다. 여기서 어댑테이션 모드는 컨텍스트 추출 모드라고 불릴 수도 있다.
어댑테이션 모드 1 (도시되지 않음) 은 기본적인 ROHC 패킷 스트림에 대해서 어떠한 추가적인 동작이 가해지지 않는 모드일 수 있다. 즉, 이 모드에서 어댑테이션 모듈은 버퍼로서 동작할 수 있다. 따라서, 이 모드에서는 링크 레이어 시그널링에 컨텍스트 정보가 있지 않을 수 있다.
어댑테이션 모드 2 (tsib13010)에서, 어댑테이션 모듈은 RoHC 패킷 플로우로부터 IR 패킷을 검출하고 컨텍스트 정보 (스태틱 체인)를 추출할 수 있다. 컨텍스트 정보를 추출한 후에, 각 IR 패킷은 IR-DYN 패킷으로 전환될 수 있다. 전환된 IR-DYN 패킷은 원래의 패킷을 대체하여 IR 패킷과 같은 순서로 RoHC 패킷 플로우 내에 포함되어 전송될 수 있다.
어댑테이션 모드 3 (tsib13020)에서, 어댑테이션 모듈은 RoHC 패킷 플로우로부터 IR 및 IR-DYN 패킷을 검출하고 컨텍스트 정보를 추출할 수 있다. 스태틱 체인 및 다이네믹 체인은 IR 패킷으로부터 추출될 수 있고, 다이네믹 체인은 IR-DYN 패킷으로부터 추출될 수 있다. 컨텍스트 정보를 추출한 후에, 각각의 IR 및 IR-DYN 패킷은 압축된 패킷으로 전환될 수 있다. 압축된 패킷 포맷은 IR 또는 IR-DYN 패킷의 다음 패킷과 동일할 수 있다. 전환된 압축 패킷은 원래의 패킷을 대체하여 IR 또는 IR-DYN 패킷과 같은 순서로 RoHC 패킷 플로우 내에 포함되어 전송될 수 있다.
시그널링 (컨텍스트) 정보는 전송 구조에 근거하여 인캡슐레이션 될 수 있다. 예를 들면, 컨텍스트 정보는 링크 레이어 시그널링로 인캡슐레이션 될 수 있다. 이 경우, 패킷 타입 값은 100으로 설정될 수 있다.
전술한 어댑테이션 모드 2, 3 에 대하여, 컨텍스트 정보에 대한 링크 레이어 패킷은 100 의 Packet Type 필드 값을 가질 수 있다. 또한 압축된 IP 패킷들에 대한 링크 레이어 패킷은 001 의 Packet Type 필드 값을 가질 수 있다. 이는 각각 시그널링 정보, 압축된 IP 패킷이 링크 레이어 패킷에 포함되어 있음을 지시하는 것으로, 전술한 바와 같다.
이하, 추출된 컨텍스트 정보를 전송하는 방법에 대해서 설명한다.
추출된 컨텍스트 정보는 특정 피지컬 데이터 경로를 통해 시그널링 데이터와 함께 RoHC 패킷 플로우와 별도로 전송될 수 있다. 컨텍스트의 전송은 피지컬 레이어 경로의 구성에 의존한다. 컨텍스트 정보는 시그널링 데이터 파이프를 통해 다른 링크 레이어 시그널링과 함께 전송될 수 있다.
즉, 컨텍스트 정보를 가지는 링크 레이어 패킷은 다른 링크 레이어 시그널링 정보를 가지는 링크 레이어 패킷들과 함께 시그널링 PLP 로 전송될 수 있다(Packet_Type = 100). 컨텍스트 정보가 추출된 압축 IP 패킷들은 일반적인 PLP 로 전송될 수 있다(Packet_Type = 001). 여기서 실시예에 따라, 시그널링 PLP 는 L1 시그널링 패쓰(path)를 의미할 수 있다. 또한 실시예에 따라 시그널링 PLP 는 일반적인 PLP 와 구분되지 않고, 시그널링 정보가 전송되는 특정한 일반 PLP 를 의미할 수도 있다.
수신측에서는, 패킷 스트림을 수신하기에 앞서, 수신기가 시그널링 정보를 얻어야 할 수 있다. 수신기가 시그널링 정보를 획득하기 위해 첫 PLP를 디코딩하면, 컨텍스트 시그널링도 수신될 수 있다. 시그널링 획득이 이루어진 후, 패킷 스트림을 수신하기 위한 PLP가 선택될 수 있다. 즉, 수신기는 먼저 이니셜 PLP 를 선택해 컨텍스트 정보를 비롯한 시그널링 정보를 얻을 수 있다. 여기서 이니셜 PLP 는 전술한 시그널링 PLP 일 수 있다. 이 후, 수신기는 패킷 스트림을 얻기 위한 PLP 를 선택할 수 있다. 이를 통하여 컨텍스트 정보는 패킷 스트림의 수신에 앞서 획득될 수 있다.
패킷 스트림을 얻기 위한 PLP 가 선택된 후, 어댑테이션 모듈은 수신된 패킷 플로우로부터 IR-DYN 패킷을 검출할 수 있다. 그 후, 어댑테이션 모듈은 시그널링 데이터에서 컨텍스트 정보로부터 스태틱 체인을 파싱한다. 이는 IR 패킷을 수신하는 것과 유사하다. 동일한 컨텍스트 식별자에 대해, IR-DYN 패킷은 IR 패킷으로 복구될 수 있다. 복구된 RoHC 패킷 플로우는 RoHC 디컴프레서로 보내질 수 있다. 이후 디컴프레션이 시작될 수 있다.
도 62 은 본 발명의 일 실시예에 따른 LMT(Link Mapping Table) 및 ROHC-U 디스크립션 테이블을 도시한 도면이다.
이하, 링크 레이어 시그널링에 대해서 설명한다.
주로, 링크 레이어 시그널링은 IP 레벨 하에서 동작한다. 수신기 측에서, 링크 레이어 시그널링은 SLT 및 SLS와 같은 IP 레벨 시그널링보다 먼저 획득될 수 있다. 따라서 링크 레이어 시그널링은 세션 설정 이전에 획득될 수 있다.
링크 레이어 시그널링에 대해, 입력 경로에 따라 인터널 링크 레이어 시그널링 및 익스터널 링크 레이어 시그널링의 두 종류의 시그널링이 존재할 수 있다. 인터널 링크 레이어 시그널링은 송신기 측에서 링크 레이어에서 생성된다. 또한 링크 레이어는 외부 모듈 또는 프로토콜로부터 시그널링을 취한다. 이러한 종류의 시그널링 정보는 익스터널 링크 레이어 시그널링이라고 간주된다. 일부 시그널링이 IP 레벨 시그널링에 앞서 획득될 필요가 있으면, 외부 시그널링은 링크 레이어 패킷의 포맷으로 전송된다.
링크 레이어 시그널링은 전술한 바와 같이 링크 레이어 패킷으로 인캡슐레이션 될 수 있다. 링크 레이어 패킷은 바이너리 및 XML을 포함한 모든 포맷의 링크 레이어 시그널링을 전달할 수 있다. 동일한 시그널링 정보가 링크 레이어 시그널링에 대해 다른 포맷으로 전송될 수 있다.
인터널 링크 레이어 시그널링에는, 링크 매핑을 위한 시그널링 정보가 포함될 수 있다. LMT는 PLP에 전달되는 상위 레이어 세션의 리스트를 제공한다. LMT는 또한 링크 레이어에서 상위 레이어 세션을 전달하는 링크 레이어 패킷을 처리하기 위한 추가 정보를 제공한다.
본 발명에 따른 LMT 의 일 실시예(tsib14010)가 도시되었다.
signaling_type은 해당 테이블에 의해 전달되는 시그널링의 타입을 나타내는 8비트의 무부호 정수 필드일 수 있다. LMT에 대한 signaling_type 필드의 값은 0x01로 설정될 수 있다.
PLP_ID는 해당 테이블에 해당하는 PLP를 나타내는 8비트 필드일 수 있다.
num_session은 상기 PLP_ID 필드에 의해 식별되는 PLP에 전달되는 상위 레이어 세션의 개수를 제공하는 8비트의 무부호 정수 필드일 수 있다. signaling_type 필드의 값이 0x01이면, 해당 필드는 PLP에서 UDP/IP 세션의 개수를 나타낼 수 있다.
src_IP_add는 PLP_ID 필드에 의해 식별되는 PLP에 전달되는 상위 레이어 세션의 소스 IP 어드레스를 포함하는 32비트의 무부호 정수 필드일 수 있다.
dst_IP_add는 PLP_ID 필드에 의해 식별되는 PLP에 전달되는 상위 레이어 세션의 데스티네이션 IP 어드레스를 포함하는 32비트의 무부호 정수 필드일 수 있다.
src_UDP_port는 PLP_ID 필드에 의해 식별되는 PLP에 전달되는 상위 레이어 세션의 소스 UDP 포트 넘버를 나타내는 16비트의 무부호 정수 필드일 수 있다.
dst_UDP_port는 PLP_ID 필드에 의해 식별되는 PLP에 전달되는 상위 레이어 세션의 데스티네이션 UDP 포트 넘버를 나타내는 16비트의 무부호 정수 필드일 수 있다.
SID_flag는 상기 4개의 필드 Src_IP_add, Dst_IP_add, Src_UDP_Port, Dst_UDP_Port에 의해 식별되는 상위 레이어 세션을 전달하는 링크 레이어 패킷이 그 옵셔널 헤더에 SID 필드를 갖는지 여부를 나타내는 1비트의 부울 필드일 수 있다. 해당 필드의 값이 0으로 설정되면, 상위 레이어 세션을 전달하는 링크 레이어 패킷이 그 옵셔널 헤더에 SID 필드를 갖지 않을 수 있다. 해당 필드의 값이 1로 설정되면, 상위 레이어 세션을 전달하는 링크 레이어 패킷이 그 옵셔널 헤더에 SID 필드를 가질 수 있고, SID 필드의 값이 해당 테이블에서 다음 SID 필드와 동일할 수 있다.
compressed_flag는 헤더 컴프레션이 상기 4개의 필드 Src_IP_add, Dst_IP_add, Src_UDP_Port, Dst_UDP_Port에 의해 식별되는 상위 레이어 세션을 전달하는 링크 레이어 패킷에 적용되는지 여부를 나타내는 1비트 부울 필드일 수 있다. 해당 필드의 값이 0으로 설정되면, 상위 레이어 세션을 전달하는 링크 레이어 패킷은 그 베이스 헤더에 Packet_Type 필드의 0x00의 값을 가질 수 있다. 해당 필드의 값이 1로 설정되면, 상위 레이어 세션을 전달하는 링크 레이어 패킷은 그 베이스 헤더에 Packet_Type 필드의 0x01의 값을 가질 수 있고 Context_ID 필드가 존재할 수 있다.
SID는 상기 4개의 필드 Src_IP_add, Dst_IP_add, Src_UDP_Port, Dst_UDP_Port에 의해 식별되는 상위 레이어 세션을 전달하는 링크 레이어 패킷에 대한 서브 스트림 식별자를 나타내는 8비트의 무부호 정수 필드일 수 있다. 해당 필드는 SID_flag의 값이 1과 같을 때 존재할 수 있다.
context_id는 ROHC-U 디스크립션 테이블에 제공된 CID(context id)에 대한 레퍼런스를 제공하는 8비트 필드일 수 있다. 해당 필드는 compressed_flag의 값이 1과 같을 때 존재할 수 있다.
본 발명에 따른 ROHC-U 디스크립션 테이블의 일 실시예(tsib14020)가 도시되었다. 전술한 바와 같이 ROHC-U 어댑테이션 모듈은 헤더 컴프레션에 관련된 정보들을 생성할 수 있다.
signaling_type은 해당 테이블에 의해 전달되는 시그널링의 타입을 나타내는 8비트 필드일 수 있다. ROHC-U 디스크립션 테이블에 대한 signaling_type 필드의 값은 "0x02"로 설정될 수 있다.
PLP_ID는 해당 테이블에 해당하는 PLP를 나타내는 8비트 필드일 수 있다.
context_id는 압축된 IP 스트림의 CID를 나타내는 8비트 필드일 수 있다. 해당 시스템에서, 8비트의 CID는 큰 CID를 위해 사용될 수 있다.
context_profile은 스트림을 압축하기 위해 사용되는 프로토콜의 범위를 나타내는 8비트 필드일 수 있다. 해당 필드는 생략될 수 있다.
adaptation_mode는 해당 PLP에서 어댑테이션 모듈의 모드를 나타내는 2비트 필드일 수 있다. 어댑테이션 모드에 대해서는 전술하였다.
context_config는 컨텍스트 정보의 조합을 나타내는 2비트 필드일 수 있다. 해당 테이블에 컨텍스트 정보가 존재하지 않으면, 해당 필드는 '0x0'으로 설정될 수 있다. 해당 테이블에 static_chain() 또는 dynamic_chain() 바이트가 포함되면, 해당 필드는 '0x01' 또는 '0x02'로 설정될 수 있다. 해당 테이블에 static_chain() 및 dynamic_chain() 바이트가 모두 포함되면, 해당 필드는 '0x03'으로 설정될 수 있다.
context_length는 스태틱 체인 바이트 시퀀스의 길이를 나타내는 8비트 필드일 수 있다. 해당 필드는 생략될 수 있다.
static_chain_byte ()는 RoHC-U 디컴프레서를 초기화하기 위해 사용되는 스태틱 정보를 전달하는 필드일 수 있다. 해당 필드의 크기 및 구조는 컨텍스트 프로파일에 의존한다.
dynamic_chain_byte ()는 RoHC-U 디컴프레서를 초기화하기 위해 사용되는 다이네믹 정보를 전달하는 필드일 수 있다. 해당 필드의 크기 및 구조는 컨텍스트 프로파일에 의존한다.
static_chain_byte는 IR 패킷의 서브 헤더 정보로 정의될 수 있다. dynamic_chain_byte는 IR 패킷 및 IR-DYN 패킷의 서브 헤더 정보로 정의될 수 있다.
도 63 은 본 발명의 일 실시예에 따른 송신기 측의 링크 레이어 구조를 도시한 도면이다.
본 실시예는 IP 패킷을 처리하는 것을 가정한 실시예이다. 송신기 측의 링크 레이어는 기능적인 관점에서 볼 때, 크게 시그널링 정보를 처리하는 링크 레이어 시그널링 부분, 오버헤드 리덕션 부분, 및/또는 인캡슐레이션 부분을 포함할 수 있다. 또한, 송신기 측의 링크 레이어는 링크 레이어 전체 동작에 대한 제어 및 스케쥴링을 위한 스케쥴러 및/또는 링크 레이어의 입,출력 부분 등을 포함할 수 있다.
먼저, 상위 레이어의 시그널링 정보 및/또는 시스템 파라미터(tsib15010)가 링크 레이어에 전달될 수 있다. 또한, IP 레이어(tsib15110)로부터 IP 패킷들을 포함하는 IP 스트림이 링크 레이어에 전달될 수 있다.
스케쥴러(tsib15020)는 전술한 바와 같이 링크 레이어에 포함된 여러 모듈들의 동작을 결정하고 제어하는 역할을 할 수 있다. 전달된 시그널링 정보 및/또는 시스템 파라미터(tsib15010) 는 스케쥴러(tsib15020)에 의해 필터링되거나 활용될 수 있다. 전달된 시그널링 정보 및/또는 시스템 파라미터(tsib15010) 중, 수신기에서 필요한 정보는 링크 레이어 시그널링 부분으로 전달될 수 있다. 또한 시그널링 정보 중 링크 레이어의 동작에 필요한 정보는 오버헤드 리덕션 컨트롤(tsib15120) 또는 인캡슐레이션 컨트롤(tsib15180)으로 전달될 수도 있다.
링크 레이어 시그널링 부분은, 피지컬 레이어에서 시그널링으로서 전송될 정보를 수집하고, 이를 전송에 적합한 형태로 변환/구성하는 역할을 수행할 수 있다. 링크 레이어 시그너널링 부분은 시그널링 매니저(tsib15030), 시그널링 포매터(tsib15040), 및/또는 채널을 위한 버퍼(tsib15050)을 포함할 수 있다.
시그널링 매니저(tsib15030)는 스케쥴러(tsib15020)으로부터 전달받은 시그널링 정보 및/또는 오버헤드 리덕션 부분으로부터 전달받은 시그널링 및/또는 컨텍스트(context) 정보를 입력받을 수 있다. 시그널링 매니저(tsib15030)는 전달받은 데이터들에 대하여, 각 시그널링 정보가 전송되어야할 경로를 결정할 수 있다. 각 시그널링 정보는 시그널링 매니저(tsib15030)에 의해 결정된 경로로 전달될 수 있다. 전술한 바와 같이 FIC, EAS 등의 구분된 채널로 전송될 시그널링 정보들은 시그널링 포매터(tsib15040)으로 전달될 수 있고, 그 밖의 시그널링 정보들은 인캡슐레이션 버퍼(tsib15070)으로 전달될 수 있다.
시그널링 포매터(tsib15040)는 별도로 구분된 채널을 통해 시그널링 정보가 전송될 수 있도록, 관련된 시그널링 정보를 각 구분된 채널에 맞는 형태로 포맷하는 역할을 할 수 있다. 전술한 바와 같이 피지컬 레이어에는 물리적/논리적으로 구분된 별도의 채널이 있을 수 있다. 이 구분된 채널들은 FIC 시그널링 정보나, EAS 관련 정보를 전송하는데 사용될 수 있다. FIC 또는 EAS 관련 정보는 시그널링 매니저(tsib15030)에 의해 분류되어 시그널링 포매터(tsib15040)로 입력될 수 있다. 시그널링 포매터(tsib15040)은 각 정보들을, 각자의 별도 채널에 맞게 포맷팅할 수 있다. FIC, EAS 이외에도, 피지컬 레이어가 특정 시그널링 정보를 별도의 구분된 채널을 통해 전송하는 것으로 설계된 경우에는, 그 특정 시그널링 정보를 위한 시그널링 포매터가 추가될 수 있다. 이러한 방식을 통하여, 링크 레이어가 다양한 피지컬 레이어에 대하여 호환가능해질 수 있다.
채널을 위한 버퍼(tsib15050)들은 시그널링 포매터(tsib15040)으로부터 전달받은 시그널링 정보들을, 지정된 별도의 채널(tsib15060)로 전달하는 역할을 할 수 있다. 별도의 채널들의 개수, 내용은 실시예에 따라 달라질 수 있다.
전술한 바와 같이, 시그널링 매니저(tsib15030)은 특정 채널로 전달되지 않는 시그널링 정보를 인캡슐레이션 버퍼(tsib15070)으로 전달할 수 있다. 인캡슐레이션 버퍼(tsib15070)는 특정 채널로 전달되지 않는 시그널링 정보를 전달받는 버퍼 역할을 할 수 있다.
시그널링 정보를 위한 인캡슐레이션(tsib15080)은 특정 채널로 전달되지 않는 시그널링 정보에 대하여 인캡슐레이션을 수행할 수 있다. 트랜스미션 버퍼(tsib15090)은 인캡슐레이션 된 시그널링 정보를, 시그널링 정보를 위한 DP(tsib15100) 로 전달하는 버퍼 역할을 할 수 있다. 여기서, 시그널링 정보를 위한 DP(tsib15100)은 전술한 PLS 영역을 의미할 수 있다.
오버헤드 리덕션 부분은 링크 레이어에 전달되는 패킷들의 오버헤드를 제거하여, 효율적인 전송이 가능하게 할 수 있다. 오버헤드 리덕션 부분은 링크 레이어에 입력되는 IP 스트림의 수만큼 구성될 수 있다.
오버헤드 리덕션 버퍼(tsib15130)는 상위 레이어로부터 전달된 IP 패킷을 입력받는 역할을 할 수 있다. 전달받은 IP 패킷은 오버헤드 리덕션 버퍼(tsib15130)를 통해 오버헤드 리덕션 부분으로 입력될 수 있다.
오버헤드 리덕션 컨트롤(tsib15120)은 오버헤드 리덕션 버퍼(tsib15130)로 입력되는 패킷 스트림에 대하여 오버헤드 리덕션을 수행할지 여부를 결정할 수 있다. 오버헤드 리덕션 컨트롤(tsib15120)은 패킷 스트림별로 오버헤드 리덕션 수행여부를 결정할 수 있다. 패킷 스트림에 오버헤드 리덕션이 수행되는 경우 RoHC 컴프레셔(tsib15140)으로 패킷들이 전달되어 오버헤드 리덕션이 수행될 수 있다. 패킷 스트림에 오버헤드 리덕션이 수행되지 않는 경우, 인캡슐레이션 부분으로 패킷들이 전달되어 오버헤드 리덕션 없이 인캡슐레이션이 진행될 수 있다. 패킷들의 오버헤드 리덕션 수행여부는 링크 레이어로 전달된 시그널링 정보들(tsib15010)에 의해 결정될 수 있다. 이 시그널링 정보들은 스케쥴러(tsib15020)에 의해 오버헤드 리덕션 컨트롤(tsib15180)으로 전달될 수 있다.
RoHC 컴프레셔(tsib15140) 은 패킷 스트림에 대하여 오버헤드 리덕션을 수행할 수 있다. RoHC 컴프레셔(tsib15140) 은 패킷들의 헤더를 압축하는 동작을 수행할 수 있다. 오버헤드 리덕션에는 다양한 방법들이 사용될 수 있다. 전술한, 본 발명이 제안한 방법들에 의하여 오버헤드 리덕션이 수행될 수 있다. 본 실시예는 IP 스트림을 가정했는 바, RoHC 컴프레셔라고 표현되었으나, 실시예에 따라 명칭은 변경될 수 있으며, 동작도 IP 스트림의 압축에 국한되지 아니하고, 모든 종류의 패킷들의 오버헤드 리덕션이 RoHC 컴프레셔(tsib15140)에 의해 수행될 수 있다.
패킷 스트림 컨피규레이션 블럭(tsib15150)은 헤더가 압축된 IP 패킷들 중에서, 시그널링 영역으로 전송될 정보와 패킷 스트림으로 전송될 정보를 분리할 수 있다. 패킷 스트림으로 전송될 정보란 DP 영역으로 전송될 정보를 의미할 수 있다. 시그널링 영역으로 전송될 정보는 시그널링 및/또는 컨텍스트 컨트롤(tsib15160)으로 전달될 수 있다. 패킷 스트림으로 전송될 정보는 인캡슐레이션 부분으로 전송될 수 있다.
시그널링 및/또는 컨텍스트 컨트롤(tsib15160)은 시그널링 및/또는 컨텍스트(context) 정보를 수집하고 이를 시그널링 매니저로 전달할 수 있다. 시그널링 및/또는 컨텍스트 정보를 시그널링 영역으로 전송하기 위함이다.
인캡슐레이션 부분은, 패킷들을 피지컬 레이어로 전달하기 적합한 형태로 인캡슐레이팅하는 동작을 수행할 수 있다. 인캡슐레이션 부분은 IP 스트림의 수만큼 구성될 수 있다.
인캡슐레이션 버퍼(tsib15170) 은 인캡슐레이션을 위해 패킷 스트림을 입력받는 역할을 할 수 있다. 오버헤드 리덕션이 수행된 경우 오버헤드 리덕션된 패킷들을, 오버헤드 리덕션이 수행되지 않은 경우 입력받은 IP 패킷 그대로를 입력받을 수 있다.
인캡슐레이션 컨트롤(tsib15180) 은 입력된 패킷 스트림에 대하여 인캡슐레이션을 수행할지 여부를 결정할 수 있다. 인캡슐레이션이 수행되는 경우 패킷 스트림은 세그멘테이션/컨케테네이션(tsib15190)으로 전달될 수 있다. 인캡슐레이션이 수행되지 않는 경우 패킷 스트림은 트랜스미션 버퍼(tsib15230)으로 전달될 수 있다. 패킷들의 인캡슐레이션의 수행여부는 링크 레이어로 전달된 시그널링 정보들(tsib15010)에 의해 결정될 수 있다. 이 시그널링 정보들은 스케쥴러(tsib15020)에 의해 인캡슐레이션 컨트롤(tsib15180)으로 전달될 수 있다.
세그멘테이션/컨케테네이션(tsib15190)에서는, 패킷들에 대하여 전술한 세그멘테이션 또는 컨케테네이션 작업이 수행될 수 있다. 즉, 입력된 IP 패킷이 링크 레이어의 출력인 링크 레이어 패킷보다 길 경우, 하나의 IP 패킷을 분할하여 여러 개의 세그멘트로 나누어 복수개의 링크 레이어 패킷 페이로드를 만들 수 있다. 또한, 입력된 IP 패킷이 링크 레이어의 출력인 링크 레이어 패킷보다 짧을 경우, 여러 개의 IP 패킷을 이어붙여 하나의 링크 레이어 패킷 페이로드를 만들 수 있다.
패킷 컨피규레이션 테이블(tsib15200)은, 세그멘테이션 및/또는 컨케테네이션된 링크 레이어 패킷의 구성 정보를 가질 수 있다. 패킷 컨피규레이션 테이블(tsib15200)의 정보는 송신기와 수신기가 같은 정보를 가질 수 있다. 패킷 컨피규레이션 테이블(tsib15200)의 정보가 송신기와 수신기에서 참조될 수 있다. 패킷 컨피규레이션 테이블(tsib15200)의 정보의 인덱스 값이 해당 링크 레이어 패킷의 헤더에 포함될 수 있다.
링크 레이어 헤더 정보 블락(tsib15210)은 인캡슐레이션 과정에서 발생하는 헤더 정보를 수집할 수 있다. 또한, 링크 레이어 헤더 정보 블락(tsib15210)은 패킷 컨피규레이션 테이블(tsib15200)이 가지는 정보를 수집할 수 있다. 링크 레이어 헤더 정보 블락(tsib15210)은 링크 레이어 패킷의 헤더 구조에 따라 헤더 정보를 구성할 수 있다.
헤더 어태치먼트(tsib15220)은 세그멘테이션 및/또는 컨케테네이션된 링크 레이어 패킷의 페이로드에 헤더를 추가할 수 있다. 트랜스미션 버퍼(tsib15230)은 링크 레이어 패킷을 피지컬 레이어의 DP(tsib15240) 로 전달하기 위한 버퍼 역할을 할 수 있다.
각 블락 내지 모듈 및 부분(part)들은 링크 레이어에서 하나의 모듈/프로토콜로서 구성될 수도 있고, 복수개의 모듈/프로토콜로 구성될 수도 있다.
도 64 는 본 발명의 일 실시예에 따른 수신기 측의 링크 레이어 구조를 도시한 도면이다.
본 실시예는 IP 패킷을 처리하는 것을 가정한 실시예이다. 수신기 측의 링크 레이어는 기능적인 관점에서 볼 때, 크게 시그널링 정보를 처리하는 링크 레이어 시그널링 부분, 오버헤드 프로세싱 부분, 및/또는 디캡슐레이션 부분을 포함할 수 있다. 또한, 수신기 측의 링크 레이어는 링크 레이어 전체 동작에 대한 제어 및 스케쥴링을 위한 스케쥴러 및/또는 링크 레이어의 입,출력 부분 등을 포함할 수 있다.
먼저, 피지컬 레이어를 통해 전송받은 각 정보들이 링크 레이어에 전달될 수 있다. 링크 레이어는 각 정보들을 처리하여, 송신측에서 처리하기 전의 원래 상태로 되돌린 뒤, 상위 레이어에 전달할 수 있다. 이 실시예에서 상위 레이어는 IP 레이어일 수 있다.
피지컬 레이어에서 구분된 특정 채널(tsib16030)들을 통해 전달된 정보들이 링크 레이어 시그널링 부분으로 전달될 수 있다. 링크 레이어 시그널링 부분은 피지컬 레이어로부터 수신된 시그널링 정보를 판별하고, 링크 레이어의 각 부분들로 판별된 시그널링 정보들을 전달하는 역할을 수행할 수 있다.
채널을 위한 버퍼(tsib16040)은 특정 채널들을 통해 전송된 시그널링 정보들을 전달받는 버퍼 역할을 할 수 있다. 전술한 바와 같이 피지컬 레이어에 물리적/논리적으로 구분된 별도의 채널이 존재할 경우, 그 채널들을 통해 전송된 시그널링 정보들을 전달받을 수 있다. 별도의 채널들로부터 받은 정보들이 분할된 상태일 경우, 완전한 형태의 정보가 될 때까지 분할된 정보들을 저장해 놓을 수 있다.
시그널링 디코더/파서(tsib16050)는 특정 채널을 통해 수신된 시그널링 정보의 포맷을 확인하고, 링크 레이어에서 활용될 정보들을 추출해 낼 수 있다. 특정 채널을 통한 시그널링 정보가 인코딩되어 있는 경우에는 디코딩을 수행할 수 있다. 또한, 실시예에 따라 해당 시그널링 정보의 무결성 등을 확인할 수 있다.
시그널링 매니저(tsib16060)은 여러 경로를 통해 수신된 시그널링 정보들을 통합할 수 있다. 후술할 시그널링을 위한 DP(tsib16070)을 통해 수신된 시그널링 정보들 역시 시그널링 매니저(tsib16060)에서 통합될 수 있다. 시그널링 매니저(tsib16060)은 링크 레이어 내의 각 부분에 필요한 시그널링 정보를 전달할 수 있다. 예를 들어 오버헤드 프로세싱 부분에, 패킷의 리커버리를 위한 컨텍스트 정보등을 전달할 수 있다. 또한, 스케쥴러(tsib16020)에 제어를 위한 시그널링 정보들을 전달해 줄 수 있다.
시그널링을 위한 DP(tsib16070)를 통해, 별도의 특별 채널로 수신되지 않은 일반적인 시그널링 정보들이 수신될 수 있다. 여기서, 시그널링을 위한 DP 란 PLS 또는 L1 등을 의미할 수 있다. 여기서 DP 는 PLP (Physical Layer Pipe) 라고 불릴 수도 있다. 리셉션 버퍼(tsib16080)은 시그널링을 위한 DP 로부터 수신된 시그널링 정보를 전달받는 버퍼 역할을 할 수 있다. 시그널링 정보의 디캡슐레이션(tsib16090)에서는 수신된 시그널링 정보가 디캡슐레이션될 수 있다. 디캡슐레이션 된 시그널링 정보는 디캡슐레이션 버퍼(tsib16100)을 거쳐 시그널링 매니저(tsib16060)으로 전달될 수 있다. 전술한 바와 같이, 시그널링 매니저(tsib16060)는 시그널링 정보를 취합하여 링크 레이어 내의 필요한 부분에 전달할 수 있다.
스케쥴러(tsib16020)은 링크 레이어에 포함된 여러 모듈들의 동작을 결정하고 제어하는 역할을 할 수 있다. 스케쥴러(tsib16020)은 리시버 정보(tsib16010) 및/또는 시그널링 매니저(tsib16060)으로부터 전달받은 정보를 이용하여, 링크 레이어의 각 부분을 제어할 수 있다. 또한, 스케쥴러(tsib16020)는 각 부분의 동작 모드등을 결정할 수 있다. 여기서, 리시버 정보(tsib16010) 는 수신기가 기 저장하고 있던 정보를 의미할 수 있다. 스케쥴러(tsib16020)는 채널 전환 등과 같이 사용자가 변경하는 정보 역시 이용하여 제어에 활용할 수 있다.
디캡슐레이션 부분은 피지컬 레이어의 DP(tsib16110)로부터 수신된 패킷을 필터링하고, 해당 패킷의 타입에 따라 패킷들을 분리해내는 역할을 수행할 수 있다. 디캡슐레이션 부분은 피지컬 레이어에서 동시에 디코딩할 수 있는 DP 의 수 만큼 구성될 수 있다.
디캡슐레이션 버퍼(tsib16110)은 디캡슐레이션을 위해 피지컬 레이어로부터 패킷 스트림을 입력받는 버퍼 역할을 할 수 있다. 디캡슐레이션 컨트롤(tsib16130)은 입력된 패킷 스트림에 대하여 디캡슐레이션을 수행할 것인지 여부를 결정할 수 있다. 디캡슐레이션이 수행될 경우 패킷 스트림은 링크 레이어 헤더 파서(tsib16140)으로 전달될 수 있다. 디캡슐레이션이 수행되지 않을 경우 패킷 스트림은 아웃풋 버퍼(tsib16220)로 전달될 수 있다. 디캡슐레이션의 수행여부를 결정하는 데에는 스케쥴러(tsib16020)으로부터 전달받은 시그널링 정보가 활용될 수 있다.
링크 레이어 헤더 파서(tsib16140)은 전달받은 링크 레이어 패킷의 헤더를 확인할 수 있다. 헤더를 확인함으로써, 링크 레이어 패킷의 페이로드에 포함되어 있는 IP 패킷의 구성을 확인할 수 있다. 예를 들어 IP 패킷은 세그멘테이션 되어 있거나, 컨케테네이션 되어 있을 수 있다.
패킷 컨피규레이션 테이블(tsib16150)은 세그멘테이션 및/또는 컨케테네이션으로 구성되는 링크 레이어 패킷의 페이로드 정보를 포함할 수 있다. 패킷 컨피규레이션 테이블(tsib16150)의 정보는 송신기와 수신기가 같은 정보를 가질 수 있다. 패킷 컨피규레이션 테이블(tsib16150)의 정보가 송신기와 수신기에서 참조될 수 있다. 링크 레이어 패킷에 포함된 인덱스 정보를 바탕으로 재결합(reassembly)에 필요한 값이 찾아질 수 있다.
재결합 블록(reassembly) (tsib16160)은 세그멘테이션 및/또는 컨케테네이션으로 구성된 링크 레이어 패킷의 페이로드를 원래의 IP 스트림의 패킷들로 구성할 수 있다. 세그멘트들을 하나로 모아 하나의 IP 패킷으로 재구성하거나, 컨케테네이션된 패킷들을 분리하여 복수개의 IP 패킷 스트림으로 재구성할 수 있다. 재결합된 IP 패킷들은 오버헤드 프로세싱 부분으로 전달될 수 있다.
오버헤드 프로세싱 부분은, 송신기에서 수행된 오버헤드 리덕션의 역과정으로, 오버헤드 리덕션된 패킷들을 원래의 패킷으로 돌리는 동작을 수행할 수 있다. 이 동작을 오버헤드 프로세싱이라 부를 수 있다. 오버헤드 프로세싱 부분은 피지컬 레이어에서 동시에 디코딩할 수 있는 DP 의 수 만큼 구성될 수 있다.
패킷 리커버리 버퍼(tsib16170)는 오버헤드 프로세싱을 수행하기 위해 디캡슐레이션된 RoHC 패킷 내지 IP 패킷을 입력받는 버퍼 역할을 할 수 있다.
오버헤드 컨트롤(tsib16180)은 디캡슐레이션된 패킷들에 대해 패킷 리커버리 및/또는 디컴프레션을 수행할 것인지 여부를 결정할 수 있다. 패킷 리커버리 및/또는 디컴프레션이 수행되는 경우 패킷 스트림 리커버리(tsib16190)으로 패킷이 전달될 수 있다. 패킷 리커버리 및/또는 디컴프레션이 수행되지 않는 경우, 패킷들은 아웃풋 버퍼(tsib16220)으로 전달될 수 있다. 패킷 리커버리 및/또는 디컴프레션의 수행 여부는 스케쥴러(tsib16020)에 의해 전달된 시그널링 정보에 근거해 결정될 수 있다.
패킷 스트림 리커버리(tsib16190)은 송신기에서 분리된 패킷 스트림과, 패킷 스트림의 컨텍스트 정보를 통합하는 동작을 수행할 수 있다. 이는 RoHC 디컴프레셔(tsib16210)에서 처리 가능하도록, 패킷 스트림을 복구하는 과정일 수 있다. 이 과정에서 시그널링 및/또는 컨텍스트 컨트롤(tsib16200)로부터 시그널링 정보 및/또는 컨텍스트 정보를 전달받을 수 있다. 시그널링 및/또는 컨텍스트 컨트롤(tsib16200)은 송신기로부터 전달된 시그널링 정보를 판별하고, 해당 컨텍스트 ID 에 맞는 스트림으로 매핑될 수 있도록 패킷 스트림 리버커리(tsib16190)에 시그널링 정보를 전달할 수 있다.
RoHC 디컴프레셔(tsib16210)은 패킷 스트림의 패킷들의 헤더를 복구할 수 있다. 패킷 스트림의 패킷들은 헤더가 복구되어 원래의 IP 패킷들의 형태로 복구될 수 있다. 즉, RoHC 디컴프레셔(tsib16210)은 오버헤드 프로세싱을 수행할 수 있다.
아웃풋 버퍼(tsib16220)은 IP 레이어(tsib16230)로 출력 스트림을 전달하기에 앞서, 버퍼 역할을 할 수 있다.
본 발명이 제안하는 송신기와 수신기의 링크 레이어는, 전술한 바와 같은 블록 내지 모듈들을 포함 가능하다. 이를 통해, 링크 레이어가 상위 레이어와 하위 레이어에 관계없이 독립적으로 동작할 수 있고, 오버헤드 리덕션을 효율적으로 수행할 수 있으며, 상하위 레이어 등에 따라 지원 가능한 기능의 확정/추가/제거가 용이해질 수 있다.
도 65 은 본 발명의 일 실시예에 따른, 링크 레이어를 통한 시그널링 전송 구조를 도시한 도면이다(송/수신측).
본 발명에서는 하나의 주파수 밴드 내에 복수개의 서비스 프로바이더(방송사)가 서비스를 제공할 수 있다. 또한 서비스 프로바이더는 복수개의 서비스들을 전송할 수 있는데, 하나의 서비스는 하나 이상의 컴포넌트를 포함할 수 있다. 사용자는 서비스 단위로 컨텐츠를 수신하는 것을 고려할 수 있다.
본 발명은 IP 하이브리드 방송을 지원하기 위하여, 복수개 세션 기반의 전송 프로토콜이 사용되는 것을 가정한다. 각 프로토콜의 전송 구조에 따라 그 시그널링 패쓰(path)로 전달되는 시그널링 정보가 결정될 수 있다. 각 프로토콜은 실시예에 따라 다양한 명칭이 부여될 수 있다.
도시된 송신측 데이터 구조(tsib17010) 에서, 서비스 프로바이더들(Broadcasters)은 복수개의 서비스(Service #1, #2, …) 를 제공할 수 있다. 일반적으로 서비스에 대한 시그널링은 일반적인 전송 세션을 통해 전송될 수 있으나(Signaling C), 실시예에 따라 특정 세션(dedicated session) 을 통해 전송될 수도 있다(Signaling B).
서비스 데이터 및 서비스 시그널링 정보들은 전송 프로토콜에 따라 인캡슐레이션 될 수 있다. 실시예에 따라 IP/UDP 가 사용될 수 있다. 실시예에 따라 IP/UDP 레이어에서의 시그널링(Signaling A) 가 추가될 수도 있다. 이 시그널링은 생략될 수 있다.
IP/UDP 로 처리된 데이터들은 링크 레이어로 입력될 수 있다. 링크 레이어에서는 전술한 바와 같이, 오버헤드 리덕션 및/또는 인캡슐레이션 과정을 수행할 수 있다. 여기서 링크 레이어 시그널링이 추가될 수 있다. 링크 레이어 시그널링에는 시스템 파라미터 등이 포함될 수 있다. 링크 레이어 시그널링에 대해서는 전술하였다.
이러한 처리를 거친 서비스 데이터 및 시그널링 정보들은, 피지컬 레이어에서 PLP 들을 통해 처리될 수 있다. 여기서 PLP 는 DP 로 불릴 수도 있다. 도시된 실시예에서는 Base DP/PLP 가 사용되는 경우를 상정하고 있으나, 실시예에 따라 Base DP/PLP 가 없이 일반적인 DP/PLP 만으로 전송이 수행될 수도 있다.
도시된 실시예에서는 FIC, EAC 등의 특정 채널(dedicated channel) 이 사용되고 있다. FIC를 통해 전달되는 시그널링을 FIT (Fast Information Table), EAC를 통해 전달되는 시그널링을 EAT (Emergency Alert Table)로 부를 수 있다. FIT 는 전술한 SLT 와 같을 수 있다. 이러한 특정 채널들은 실시예에 따라 사용되지 않을 수 있다. 특정 채널(Dedicated channel)이 구성되어 있지 않은 경우, FIT 와 EAT는 일반적인 링크 레이어 시그널링 전송 방법을 통해 전송되거나, 다른 서비스 데이터들처럼 IP/UDP 를 거쳐 PLP 로 전송될 수 있다.
실시예에 따라 시스템 파라미터에는 송신기 관련 파라미터, 서비스 프로바이더 관련 파라미터 등이 있을 수 있다. 링크 레이어 시그널링에는 IP 헤더 압축 관련 컨텍스트 정보 및/또는 해당 컨텍스트가 적용되는 데이터에 대한 식별정보가 포함될 수 있다. 상위 레이어의 시그널링에는 IP 주소, UDP 넘버, 서비스/컴포넌트 정보, 긴급 알림(Emergency alert) 관련 정보, 서비스 시그널링에 대한 IP/UDP 주소, 세션 ID 등등이 포함될 수 있다. 자세한 실시예에 대해서는 전술하였다.
도시된 수신측 데이터 구조(tsib17020) 에서, 수신기는 모든 PLP 를 디코딩할 필요 없이, 시그널링 정보를 활용하여 해당 서비스에 대한 PLP 만을 디코딩할 수 있다.
먼저, 사용자가 수신하고자 하는 서비스를 선택 하거나 변경 하면, 수신기는 해당 주파수로 튜닝 하고 해당 채널과 관련하여 DB 등에 저장하고 있는 수신기 정보를 읽어 들일 수 있다. 수신기의 DB 등에 저장되어 있는 정보는 최초 채널 스캔시 SLT 를 읽어 들여 구성 될 수 있다.
SLT 를 수신하고 해당 채널의 정보를 수신한 이후 기존에 저장되어 있던 DB를 업데이트하고, 사용자가 선택한 서비스의 전송 경로 및 컴포넌트 정보를 획득하거나 이러한 정보를 획득하는데 필요한 시그널링이 전송되는 경로에 대한 정보를 획득한다. SLT 의 버전 정보 등을 이용하여 해당 정보의 변경이 없다고 판단 되는 경우에는 디코딩 또는 파싱절차를 생략할 수 있다.
수신기는 해당 방송 스트림에서, PLP 의 피지컬 시그널링을 파싱하여 해당 PLP 내에 SLT 정보가 있는지 파악할 수 있다(도시되지 않음). 이는 피지컬 시그널링의 특정 필드를 통해 지시될 수 있다. SLT 정보에 접근하여 특정 서비스의 서비스 레이어 시그널링이 전송되는 위치에 접근할 수 있다. 이 서비스 레이어 시그널링은 IP/UDP 로 인캡슐레이션되어 전송 세션을 통해 전달될 수 있다. 이 서비스 레이어 시그널링을 이용하여 해당 서비스를 구성하는 컴포넌트에 대한 정보를 획득할 수 있다. 자세한 SLT-SLS 구조는 전술한 바와 같다.
즉, SLT 를 이용하여 현재 채널에 전송되고 있는 여러 패킷 스트림 및 PLP 중, 해당 서비스의 수신에 필요한 상위 레이어 시그널링 정보(서비스 시그널링 정보)를 수신하기 위한 전송 경로 정보가 획득될 수 있다. 이 전송 경로 정보에는 IP 주소, UDP 포트 넘버, 세션 ID, PLP ID 등등이 포함될 수 있다. 여기서 실시예에 따라 IP/UDP 주소는 IANA 또는 시스템에서 미리 지정되어 있는 값을 사용할 수도 있다. 이러한 정보들은 DB 및 공유 메모리 접근 등의 방법으로 획득될 수도 있다.
링크 레이어 시그널링과 서비스 데이터가 동일한 PLP 를 통해 전송되거나 하나의 PLP 만이 운용되고 있는 경우, PLP 를 통해 전달되는 서비스 데이터는 링크 레이어 시그널링이 디코딩되는 동안 임시적으로 버퍼 등의 장치에 저장될 수 있다.
수신하고자 하는 서비스에 대한 서비스 시그널링 정보를 이용하여 해당 서비스가 실제로 전송되는 경로 정보를 획득할 수 있다. 또한 수신할 PLP 에 대한 오버헤드 리덕션 등의 정보를 이용하여, 수신되는 패킷 스트림에 대해 디캡슐레이션 및 헤더 리커버리가 수행될 수 있다.
도시된 실시예(tsib17020) 에서는, FIC, EAC 가 사용되었고, Base DP/PLP 개념이 상정되었다. 전술한 바와 같이 FIC, EAC, Base DP/PLP 개념은 활용되지 않을 수 있다.
도 66은 본 발명의 실시예에 따른 차세대 방송 시스템을 위한 프로토콜 스택을 나타내는 도면이다.
본 발명에 따른 방송 시스템은 IP(Internet Protocol) 중심 방송 네트워크 및 브로드밴드가 결합된 하이브리드 방송 시스템에 대응할 수 있다.
본 발명에 따른 방송 시스템은 종래의 MPEG-2 기반 방송 시스템과의 호환성을 유지하도록 설계될 수 있다.
본 발명에 따른 방송 시스템은 IP 중심 방송 네트워크, 브로드밴드 네트워크 및/또는 모바일 통신 네트워크(또는 셀룰러 네트워크)의 결합에 기초한 하이브리드 방송 시스템에 대응할 수 있다.
도면을 참조하면, 물리층은 ATSC 시스템 및/또는 DVB 시스템 등의 방송 시스템에서 채택된 물리 프로토콜을 이용할 수 있다. 예를 들어, 본 발명에 따른 물리층에서, 송신기/수신기는 지상파 방송 신호를 송수신하고 방송 데이터를 포함하는 전송 프레임을 적절한 형태로 변환할 수 있다.
캡슐화층에서, IP 데이터그램이 물리층으로부터 획득된 정보로부터 획득되거나 획득된 IP 데이터그램이 특정 프레임(예를 들어, RS 프레임, GSE-lite, GSE 또는 신호 프레임)으로 변환된다. 프레임은 IP 데이터그램의 세트를 포함할 수 있다. 예를 들어, 캡슐화층에서, 송신기가 전송 프레임 내의 물리층으로부터 처리된 데이터를 포함하거나 수신기가 물리층으로부터 획득된 전송 프레임으로부터 MPEG-2 TS 및 IP 데이터그램을 추출한다.
FIC(fast information channel)는 서비스 및/또는 콘텐츠를 액세스하는데 필요한 정보(예를 들어, 서비스 ID 및 프레임 간의 맵핑 정보)를 포함한다. FIC는 FAC(fast access channel)이라 할 수 있다.
본 발명에 따른 방송 시스템은 인터넷 프로토콜(IP), 사용자 데이터그램 프로토콜(UDP), 송신 제어 프로토콜(TCP), ALC/LCT(Asynchronous Layered Coding/Layered Coding Transport), RCP/RTCP(Rate Control Protocol/RTP Control Protocol), HTTP(Hypertext Transfer Protocol) 및 FLUTE(File Delivery over Unidirectional Transport) 등의 프로토콜을 이용할 수 있다. 이들 프로토콜 간의 스택은 도면에 도시된 구조를 참조할 수 있다.
본 발명에 따른 방송 시스템에서, 데이터는 ISO 기반 미디어 파일 포맷(ISOBMFF)의 형태로 전송될 수 있다. ESG(Electrical Service Guide), NRT(Non Real Time), A/V(Audio/Video) 및/또는 일반 데이터가 ISOBMFF의 형태로 전송될 수 있다.
방송 네트워크를 통한 데이터의 전송은 선형 콘텐츠의 전송 및/또는 비선형 콘텐츠의 전송을 포함할 수 있다.
RTP/RTCP 기반 A/V 및 데이터(자막, 긴급 경보 메시지 등)의 전송은 선형 콘텐츠의 전송에 대응할 수 있다.
RTP 페이로드는 NAL(Network Abstraction Layer)를 포함하는 RTP/AV 스트림의 형태 및/또는 ISO 기반 미디어 파일 포맷으로 캡슐화된 형태로 전송될 수 있다. RTP 페이로드의 전송은 선형 콘텐츠의 전송에 대응할 수 있다. ISO 기반 미디어 파일 포맷으로 캡슐화된 형태의 전송은 A/V에 대한 MPEG DASH 미디어 세그먼트 등을 포함할 수 있다.
FLUTE 기반 ESG의 전송, 넌-타임드(non-timed) 데이터의 전송, NRT 콘텐츠의 전송은 비선형 콘텐츠의 전송에 대응할 수 있다. 이들은 MIME 타입 파일 형태 및/또는 ISO 기반 미디어 파일 포맷으로 캡슐화된 형태로 전송될 수 있다. ISO 기반 미디어 파일 포맷으로 캡슐화된 형태의 전송은 A/V에 대한 MPEG DASH 미디어 세그먼트 등을 포함할 수 있다.
브로드밴드 네트워크를 통한 전송은 콘텐츠의 전송 및 시그널링 데이터의 전송으로 분할될 수 있다.
콘텐츠의 전송은 선형 콘텐츠(A/V 및 데이터(자막, 긴급 경보 메시지 등), 비선형 콘텐츠(ESG, 넌-타임드 데이터 등)의 전송 및 MPEG DASH 기반 미디어 세그먼트(A/V 및 데이터)의 전송을 포함한다.
시그널링 데이터의 전송은 방송 네트워크를 통해 전송된 시그널링 테이블을 포함하는(MPEG DASH의 MPD를 포함하는)전송일 수 있다.
본 발명에 따른 방송 시스템에서, 방송 네트워크를 통해 전송되는 선형/비선형 콘텐츠 간의 동기화 또는 방송 네트워크를 통해 전송되는 콘텐츠 및 브로드밴드를 통해 전송된 콘텐츠 간의 동기화가 지원될 수 있다. 예를 들어, 하나의 UD 콘텐츠가 개별적으로 및 동시에 방송 네트워크 및 브로드밴드를 통해 전송되는 경우에, 수신기는 전송 프로토콜에 따라 타임라인을 조절하고 방송 네트워크를 통한 콘텐츠 및 브로드밴드를 통한 콘텐츠를 동기화하여 하나의 UD 콘텐츠로서 콘텐츠를 재구성할 수 있다.
본 발명에 따른 방송 시스템의 애플리케이션층은 쌍방향성(interactivity), 개인화(personalization), 제2 스크린 및 자동 콘텐츠 인식(ACR; automatic content recognition) 등의 기술적 특성을 실현할 수 있다. 이들 특성은 ATSC 2.0로부터 ATSC 3.0까지의 확장에서 중요하다. 예를 들어, HTML5는 쌍방향성의 특성에 사용될 수 있다.
본 발명에 따른 방송 시스템의 프리젠테이션층에서, HTML 및/또는 HTML5는 컴포넌트 또는 인터랙티브 애플리케이션 간의 공간 및 시간적 관계를 식별하는데 사용될 수 있다.
본 발명에서, 시그널링은 콘텐츠 및/또는 서비스의 효과적인 획득을 지원하기 위하여 필요한 시그널링 정보를 포함한다. 시그널링 데이터는 바이너리 또는 XML gudxofh 표현될 수 있다. 시그널링 데이터는 지상파 방송 네트워크 또는 브로드밴드를 통해 송신될 수 있다.
실시간 방송 A/V 콘텐츠 및/또는 데이터가 ISO 베이스 미디어 파일 포맷 등으로 표현될 수 있다. 이 경우, A/V 콘텐츠 및/또는 데이터는 실시간으로 지상파 방송 네트워크를 통해 송신될 수 있고 비실시간으로 IP/UDP/FLUTE에 기초하여 송신될 수 있다. 대안으로, 방송 A/V 콘텐츠 및/또는 데이터는 실시간으로 인터넷을 통해 DASH(Dynamic Adaptive Streaming over HTTP)를 이용하여 스트리밍 모드로 콘텐츠를 수신하거나 요청함으로써 수신될 수 있다. 본 발명의 실시예에 따른 방송 시스템에서, 수신된 방송 A/V 콘텐츠 및/또는 데이터는 결합되어 인터랙티브 서비스 및 제2 스크린 서비스 등의 다양한 향상된 서비스를 시청자에게 제공할 수 있다.
송신기의 물리층(Broadcast PHY 및 Broadband PHY)은 도 1에 도시된 구조를 실시예로 할 수 있다. 또한, 수신기의 물리층은 도 9에 도시된 구조를 실시예로 할 수 있다.
시그널링 데이터 및 IP/UDP 데이터그램은 물리층에 전달되는 전송 프레임(또는 프레임)의 특정 데이터 파이프(이하 DP)를 통하여 전송될 수 있다. 예를 들어, 입력 포맷 블록(1000)은 시그널링 데이터 및 IP/UDP 데이터그램을 수신하고, 각각의 시그널링 데이터 및 IP/UDP 데이터그램을 적어도 하나의 DP 로 역다중화 할 수 있다. 출력 프로세서(9300)는 입력 포맷 블록(1000)과 상반된 동작을 수행할 수 있다.
도 67은 본 발명의 일 실시예에 따른, 차세대 방송 시스템의 수신기를 나타낸 도면이다.
본 발명의 일 실시예에 따른 수신기는, 수신부 (미도시), 채널 동기화기 (Channel Synchronizer; J32010), 채널 등화기 (Channel Equalizer; J32020), 채널 디코더 (Channel Decoder; J32030), 시그널링 디코더 (Signaling Decoder; J32040), 베이스밴드 동작 컨트롤러 (Baseband Operation Controller; J32050), 서비스 맵 데이터베이스 (Service Map DB; J32060), 전송 패킷 인터페이스 (Transport Packet Interface; J32070), 브로드밴드 패킷 인터페이스 (Broadband Packet Interface; J32080), 커먼 프로토콜 스택 처리기 (Common Protocol Stack; J32090), 서비스 시그널링 채널 프로세싱 버퍼 및 파서 (Service Signaling Channel Processing Buffer & Parser; J32100), A/V 프로세서 (A/V Processor; J32110), 서비스 가이드 프로세서 (Service Guide Processor; J32120), 어플리케이션 프로세서 (Application Processor; J32130) 및/또는 서비스 가이드 데이터베이스 (Service Guide DB; J32140)를 포함할 수 있다.
수신부 (미도시)는 방송 신호를 수신한다.
채널 동기화기 (Channel Synchronizer; J32010)는 베이스밴드 (Baseband)에서 수신한 신호의 디코딩이 가능하도록 심볼 (symbol) 주파수와 타이밍 (timing)을 동기화한다. 여기서 베이스밴드는 방송 신호가 송/수신되는 영역을 가리킨다.
채널 등화기 (Channel Equalizer; J32020)는 수신된 신호에 대하여 채널 등화를 수행한다. 채널 등화기 (Channel Equalizer; J32020)는 수신된 신호가 다중 경로 (multipath), 도플러 효과 (Doppler effect) 등으로 인해 왜곡되었을 때 이를 보상하는 역할을 수행한다.
채널 디코더 (Channel Decoder; J32030)는 수신된 신호를 의미를 가지는 전송 프레임 (transport frame)으로 복구한다. 채널 디코더 (Channel Decoder; J32030)는 수신한 신호에 포함된 데이터 또는 전송 프레임에 대하여 순방향 오류 정정 (forward error correction; FEC)를 수행한다.
시그널링 디코더 (Signaling Decoder; J32040)는 수신된 신호에 포함된 시그널링 데이터를 추출하고 디코딩한다. 여기서, 시그널링 데이터는 후술할 시그널링 데이터 및/또는 서비스 정보 (Service Information; SI)를 포함한다.
베이스밴드 동작 컨트롤러 (Baseband Operation Controller; J32050)는 베이스밴드 (Baseband) 에서의 신호의 처리를 제어한다.
서비스 맵 데이터베이스 (Service Map DB; J32060)는 시그널링 데이터 및/또는 서비스 정보를 저장한다. 서비스 맵 데이터베이스 (Service Map DB; J32060)는 방송 신호에 포함되어 전송된 시그널링 데이터 및/또는 브로드밴드 패킷에 포함되어 전송된 시그널링 데이터를 저장할 수 있다.
전송 패킷 인터페이스 (Transport Packet Interface; J32070)는 전송 프레임 또는 방송 신호로부터, 전송 패킷을 추출한다. 전송 패킷 인터페이스 (Transport Packet Interface; J32070)는 전송 패킷 (transport packet)으로부터 시그널링 데이터 또는 IP 데이터그램 (IP datagram)을 추출한다.
브로드밴드 패킷 인터페이스 (Broadband Packet Interface; J32080)는 인터넷 망을 통하여 방송관련 패킷을 수신한다. 브로드밴드 패킷 인터페이스 (Broadband Packet Interface; J32080)는 인터넷 망을 통해 획득된 패킷 (Packet)을 추출하고, 해당 패킷으로부터 시그널링 데이터 또는 A/V 데이터를 조합 또는 추출한다.
커먼 프로토콜 스택 처리기 (Common Protocol Stack; J32090)는 수신한 패킷을 프로토콜 스택에 포함된 프로토콜에 따라 처리한다. 예를 들면, 커먼 프로토콜 스택 처리기 (Common Protocol Stack; J32090)는 전술한 프로토콜 스택에 따라, 수신한 패킷을 처리할 수 있다.
서비스 시그널링 채널 프로세싱 버퍼 및 파서 (Service Signaling Channel Processing Buffer & Parser; J32100)는 수신된 패킷에 포함된 시그널링 데이터를 추출한다. 서비스 시그널링 채널 프로세싱 버퍼 및 파서 (Service Signaling Channel Processing Buffer & Parser; J32100)는 IP 데이터 그램 등으로부터 서비스 및/또는 컨텐츠의 스캔 및/또는 획득과 관련된 시그널링 정보 추출하고, 이를 파싱한다. 수신된 패킷 내에서 시그널링 데이터는 일정한 위치 또는 채널에 존재할 수 있다. 이러한 위치 또는 채널을 서비스 시그널링 채널이라고 명명할 수 있다. 예를 들면, 서비스 시그널링 채널은 특정 IP주소, UDP Port 넘버, 전송 세션 식별자 등를 가질 수 있다. 수신기는 이러한 특정 IP주소, UDP Port 넘버, 전송 세션 등으로 전송되는 데이터를 시그널링 데이터로 인식할 수 있다.
A/V 프로세서 (A/V Processor; J32110)는 수신된 오디오 및 비디오 데이터에 대한 디코딩 및 프리젠테이션 (presentation) 처리를 수행한다.
서비스 가이드 프로세서 (Service Guide Processor; J32120)는 수신 신호로부터 어나운스먼트 (announcement) 정보를 추출하고, 서비스 가이드 데이터베이스 (Service Guide DB; J32140)를 관리하며, 서비스 가이드(service guide)를 제공한다.
어플리케이션 프로세서 (Application Processor; J32130)는 수신한 패킷에 포함된 어플리케이션 (application) 데이터 및/또는 어플리케이션 관련 정보를 추출하고, 이를 처리한다.
서비스 가이드 데이터베이스 (Service Guide DB; J32140)는 서비스 가이드 데이터를 저장한다.
도 68는 본 발명의 실시예에 따른 방송 수신기를 나타내는 도면이다.
본 발명의 실시예에 따른 방송 수신기는 서비스/콘텐츠 획득 컨트롤러(J2010), 인터넷 인터페이스(J2020), 브로드캐스트 인터페이스(J2030), 시그널링 디코더(J2040), 서비스 맵 데이터베이스(J2050), 디코더(J2060), 타겟팅 프로세서(J2070), 프로세서(J2080), 관리부(J2090), 및/또는 재분배 모듈(J2100)을 포함한다. 도면에는, 방송 수신기 밖 및/또는 내에 위치하는 외부 관리 장치(J2110)가 도시된다.
서비스/콘텐츠 획득 컨트롤러(J2010)는 브로드캐스트/브로드밴드 채널을 통해 그와 관련된 서비스 및/또는 콘텐츠 및 시그널링 데이터를 수신한다. 대안으로, 서비스/콘텐츠 획득 컨트롤러(J2010)는 서비스 및/또는 콘텐츠 및 그와 관련된 시그널링 데이터를 수신하기 위한 제어를 수행할 수 있다.
인터넷 인터페이스(J2020)는 인터넷 액세스 제어 모듈을 포함할 수 있다. 인터넷 액세스 제어 모듈은 브로드밴드 채널을 통해 서비스, 콘텐츠 및/또는 시그널링 데이터를 수신한다. 대안으로, 인터넷 액세스 제어 모듈은 서비스, 콘텐츠 및/또는 시그널링 데이터를 획득하기 위한 수신기의 동작을 제어할 수 있다.
브로드캐스트 인터페이스(J2030)는 물리층 모듈 및/또는 물리층 I/F 모듈을 포함할 수 있다. 물리층 모듈은 브로드캐스트 채널을 통해 브로드캐스트 관련 신호를 수신한다. 물리층 모듈은 브로드캐스트 채널을 통해 수신된 브로드캐스트 관련 신호를 처리(복조, 디코딩, 등)한다. 물리층 I/F 모듈은 물리층 모듈로부터 획득한 정보로부터 IP 데이터그램을 획득하거나 획득된 IP 데이터그램을 이용하여 특정 프레임(예를 들어, 브로드캐스트 프레임, RS 프레임 또는 GSE)으로의 변환을 수행한다.
시그널링 디코더(J2040)는 브로드캐스트 채널 등을 통해 획득된 시그널링 데이터 또는 시그널링 정보(이하, "시그널링 데이터"라 함)를 디코딩한다.
서비스 맵 데이터베이스(J2050)는 수신기의 다른 장치(예를 들어, 시그널링 파서)에 의해 처리된 시그널링 데이터 또는 디코딩된 시그널링 데이터를 저장한다.
디코더(J2060)는 수신기에 의해 수신된 브로드캐스트 신호 또는 데이터를 디코딩한다. 디코더(J2060)는 스케줄링된 스트리밍 디코더, 파일 디코더, 파일 데이터베이스(DB), 주문형 스트리밍 디코더, 컴포넌트 동기화기, 경보 시그널링 파서, 타겟팅 시그널링 파서, 서비스 시그널링 파서 및/또는 애플리케이션 시그널링 파서를 포함할 수 있다.
스케줄링된 스트리밍 디코더는 IP 데이터그램 등으로부터 실시간 오디오/비디오(A/V)에 대한 오디오/비디오 데이터를 추출하고 추출된 오디오/비디오 데이터를 디코딩한다.
파일 디코더는 IP 데이터그램으로부터 NRT 데이터 및 애플리케이션 등의 파일 타입 데이터를 추출하고 추출된 파일 타입 데이터를 디코딩한다.
파일 DB는 파일 디코더에 의해 추출된 데이터를 저장한다.
주문형 스트리밍 디코더는 IP 데이터그램으로부터 주문형 스트리밍에 대한 오디오/비디오 데이터 등을 추출하고 추출된 오디오/비디오 데이터를 디코딩한다.
컴포넌트 동기화기는 스케줄링된 스트리밍 디코더, 파일 디코더 및/또는 주문형 스트리밍 디코더에 의해 디코딩된 데이터에 기초하여 콘텐츠를 구성하는 엘리먼트 간 또는 서비스를 구성하는 엘리먼트 간 동기화를 수행하여 콘텐츠 또는 서비스를 구성한다.
경보 시그널링 파서는 IP 데이터그램 등으로부터의 경보와 관련된 시그널링 정보를 추출하고 추출된 시그널링 정보를 파싱한다.
타겟팅 시그널링 파서는 IP 데이터그램으로부터 서비스/콘텐츠 개인화 또는 타겟팅과 관련된 시그널링 정보를 추출하고 추출된 시그널링 정보를 파싱한다. 타겟팅(targeting)은 특정 시청자의 조건을 만족하는 콘텐츠 또는 서비스를 제공하는 액션이다. 즉, 타겟팅은 특정 시청자의 조건을 만족하는 콘텐츠 또는 서비스를 식별하고 식별된 콘텐츠 또는 서비스를 시청자에게 제공하는 액션이다.
서비스 시그널링 파서는 IP 데이터그램 등으로부터 서비스/콘텐츠 및/또는 서비스 스캔과 관련된 시그널링 정보를 추출하고 추출된 시그널링 정보를 파싱한다. 서비스/콘텐츠와 관련된 시그널링 정보는 방송 시스템 정보 및/또는 방송 시그널링 정보를 포함한다.
애플리케이션 시그널링 파서는 IP 데이터그램 등으로부터의 애플리케이션의 획득과 관련된 시그널링 정보를 추출하고 추출된 시그널링 정보를 파싱한다. 애플리케이션의 획득과 관련된 시그널링 정보는 트리거, TDO 파라미터 테이블(TPT) 및/또는 TDO 파라미터 엘리먼트를 포함할 수 있다.
타겟팅 프로세서(J2070)는 타겟팅 시그널링 파서에 의해 파싱된 서비스/콘텐츠 타겟팅과 관련된 정보를 처리한다.
프로세서(J2080)는 수신된 데이터를 디스플레이하는 일련의 프로세스를 수행한다.
프로세서(J2080)는 경보 프로세서, 애플리케이션 프로세서 및/또는 A/V 프로세서를 포함할 수 잇다.
경보 프로세서는 경보와 관련된 시그널링 정보를 통해 경보 데이터를 획득하도록 수신기를 제어하고 경보 데이터를 디스플레이하는 프로세스를 수행한다.
애플리케이션 프로세서는 애플리케이션과 관련된 정보를 처리하고 그 애플리케이션과 관련된 디스플레이 파라미터 및 다운로드된 애플리케이션의 상태를 처리한다.
A/V 프로세서는 디코딩된 오디오 데이터, 비디오 데이터 및/또는 애플리케이션 데이터에 기초하여 오디오/비디오 렌더링에 관련된 동작을 수행한다.
관리부(J2090)는 장치 매니저 및/또는 데이터 공유 및 통신 유닛을 포함한다.
장치 매니저는, 접속 및 데이터 교환을 포함하여, 인터로크(interlocked)될 수 있는 외부 장치의 추가/삭제/갱신 등의 외부 장치에 대한 관리를 수행한다.
데이터 공유 및 통신 유닛은 수신기 및 외부 장치(예를 들어, 동반자 장치) 간의 데이터 전송 및 교환과 관련된 정보를 처리하고 그와 관련된 동작을 수행한다. 전송가능 및 교환가능한 데이터는 시그널링 데이터, PDI 테이블, PDI 사용자 데이터, PDI Q&A, 및/또는 A/V 데이터일 수 있다.
재분배 모듈(J2100)은 수신기가 직접 브로드캐스트 신호를 수신할 수 없는 경우 서비스/콘텐츠 및/또는 서비스/콘텐츠 데이터와 관련된 정보의 획득을 수행한다.
외부 관리 장치(J2110)는 브로드캐스트 서비스/콘텐츠를 제공하는 방송 수신기 밖에 위치하는 브로드캐스트 서비스/콘텐츠 서버 등의 모듈이다. 외부 관리 장치로서 기능하는 모듈은 방송 수신기에 제공될 수 있다.
구체적인 방송 서비스를 전송하는 전송 프레임과 전송 패킷에 대해서는 도 69 내지 도 72를 통하여 설명하도록 한다.
도 69은 본 발명의 일 실시예에 따른 방송 전송 프레임을 보여준다.
도 69의 실시예에서 방송 전송 프레임은 P1 파트, L1 파트, 공통 PLP(Common PLP) 파트, 인터리브드 PLP(Scheduled & Interleaved PLP's) 파트 및 보조 데이터(Auxiliary data) 파트를 포함한다.
도 69의 실시예에서 방송 전송 장치는 방송 전송 프레임(transport frame)의 P1 파트를 통하여 전송 시그널 탐지(transport signal detection)를 위한 정보를 전송한다. 또한 방송 전송 장치는 P1 파트를 통하여 방송 신호 튜닝을 위한 튜닝 정보를 전송할 수 있다.
도 69의 실시예에서 방송 전송 장치는 L1 파트를 통하여 방송 전송 프레임의 구성 및 각각 PLP의 특성을 전송한다. 이때 방송 수신 장치(100)는 P1에 기초하여 L1 파트를 디코딩하여 방송 전송 프레임의 구성 및 각각 PLP의 특성을 획득할 수 있다.
도 69의 실시예에서 방송 전송 장치는 Common PLP 파트를 통하여 PLP간에 공통으로 적용되는 정보를 전송할 수 있다. 구체적인 실시예에 따라서 방송 전송 프레임은 Common PLP 파트를 포함하지 않을 수 있다.
도 69의 실시예에서 방송 전송 장치는 방송 서비스에 포함된 복수의 컴포넌트를 인터리브드(interleaved) PLP 파트를 통하여 전송한다. 이때, 인터리브드 PLP 파트는 복수의 PLP를 포함한다.
도 69의 실시예에서 방송 전송 장치는 각각의 방송 서비스를 구성하는 컴포넌트가 각각 어느 PLP로 전송되는지를 L1 파트 또는 Common PLP 파트를 통하여 시그널링할 수 있다. 다만, 방송 수신 장치(100)가 방송 서비스 스캔 등을 위하여 구체적인 방송 서비스 정보를 획득하기 위해서는 인터리브드 PLP 파트의 복수의 PLP 들을 모두 디코딩하여야 한다.
도 69의 실시예와 달리 방송 전송 장치는 방송 전송 프레임을 통하여 전송되는 방송 서비스와 방송 서비스에 포함된 컴포넌트에 대한 정보를 포함하는 별도의 파트를 포함하는 방송 전송 프레임을 전송할 수 있다. 이때, 방송 수신 장치(100)는 별도의 파트를 통하여 신속히 방송 서비스와 방송 서비스에 포함된 컴포넌트들에 대한 정보를 획득할 수 있다. 이에 대해서는 도 79를 통해 설명하도록 한다.
도 70는 본 발명의 또 다른 실시예에 따른 방송 전송 프레임을 보여준다.
도 70의 실시예에서 방송 전송 프레임은 P1 파트, L1 파트, 고속 정보 채널(Fast Information Channe, FIC) 파트, 인터리브드 PLP(Scheduled & Interleaved PLP's) 파트 및 보조 데이터(Auxiliary data) 파트를 포함한다.
FIC 파트를 제외한 다른 파트는 전술한 실시예와 동일하다.
방송 전송 장치는 FIC 파트를 통하여 고속 정보(fast information)를 전송한다. 고속 정보는 전송 프레임을 통해 전송되는 방송 스트림의 구성 정보 (configuration information), 간략한 방송 서비스 정보 및 해당 서비스/컴포넌트 와 연관된 서비스 시그널링을 포함할 수 있다. 방송 수신 장치(100) FIC 파트에 기초하여 방송 서비스를 스캔할 수 있다. 구체적으로 방송 수신 장치(100)는 FIC 파트로부터 방송 서비스에 대한 정보를 추출할 수 있다.
도 71은 본 발명의 일 실시예에 따른 방송 서비스를 전송하는 전송 패킷의 구조를 보여준다.
도 71의 실시예에서 방송 서비스를 전송하는 전송 패킷은 Network Protocol 필드, Error Indicator 필드, Stuffing Indicator 필드, Pointer field 필드, Stuffing bytes 필드 및 페이로드(payload) 데이터를 포함한다.
Network Protocol 필드는 네트워크 프로토콜이 어떤 타입인지 나타낸다. 구체적인 실시예에서 Network Protocol 필드의 값은 IPv4 프로토콜인지 또는 프레임드 패킷 타입인지 나타낼 수 있다. 구체적으로 도 70의 실시예와 같이 Network Protocol 필드의 값이 00인 경우 IPv4 프로토콜을 나타낼 수 있다. 또한 구체적으로 도 70의 실시예와 같이 Network Protocol 필드의 값이 111인 경우 frame_packet_type 프로토콜을 나타낼 수 있다. 이때, framed_packet_type은 ATSC A/153에 의하여 정의된 프로토콜일 수 있다. 구체적으로 framed_packet_type은 길이에 대한 정보를 나타내는 필드를 포함하지 않는 네트워크 패킷 프로토콜을 나타낼 수 있다. 구체적인 실시예에서 Network Protocol 필드는 3 비트 필드일 수 있다.
Error Indicator 필드는 해당 전송 패킷에 에러가 검출되었는지를 표시한다. 구체적으로 Error Indicator 필드의 값이 0이면 해당 패킷에서 에러가 검출되지 않음을 나타내고, Error Indicator 필드의 값이 1이면 해당 패킷에서 에러가 검출되었음을 나타낼 수 있다. 구체적인 실시예에서 Error Indicator 필드는 1 비트 필드일 수 있다.
Stuffing Indicator 필드는 해당 전송 패킷에 스터핑 바이트(stuffing bytes)가 포함되어있는지를 표시한다. 이때, 스터핑 바이트는 고정된 패킷의 길이를 유지하기 위해 페이로드에 포함되는 데이터를 나타낸다. 구체적인 실시예에서 Stuffing Indicator 필드의 값이 1이면 전송 패킷이 스터핑 바이트를 포함하고, Stuffing Indicator 필드의 값이 0이면 전송 패킷 스터핑 바이트를 포함하지 않음을 나타낼 수 있다. 구체적인 실시예에서 Stuffing Indicator 필드는 1 비트 필드일 수 있다.
Pointer field 필드는 해당 전송 패킷의 페이로드 부분에서 새로운 네트워크 패킷의 시작 지점을 표시한다. 구체적인 실시예에서 Pointer field의 값이 0x7FF인 경우, 새로운 네트워크 패킷의 시작 지점이 없음을 나타낼 수 있다. 또한 구체적인 실시예에서 Pointer field의 값이 0x7FF이 아닌 경우, 전송 패킷 헤더의 마지막 부분부터 새로운 네트워크 패킷의 시작 지점까지의 오프셋(offset) 값을 나타낼 수 있다. 구체적인 실시예에서 Pointer field 필드는 11 비트 필드일 수 있다.
Stuffing_Bytes 필드는 고정된 패킷 길이를 유지하기 위하여 헤더와 페이로드 데이터 사이를 채워주는 스터핑 바이트를 나타낸다.
이러한 방송 서비스를 수신하기 위한 방송 수신 장치의 구성에 대해서는 후술한다.
도 73은 본 발명의 일 실시예에 따른 방송 서비스 시그널링 테이블과 방송 서비스 전송 경로 시그널링 정보가 방송 서비스와 방송 서비스 전송 경로를 시그널링하는 것을 보여준다.
방송 서비스 시그널링 테이블은 방송 서비스 정보를 시그널링할 수 있다. 구체적으로 방송 서비스가 포함하는 미디어 컴포넌트를 시그널링할 수 있다. 또한 방송 서비스 시그널링 테이블은 방송 서비스와 방송 서비스가 포함하는 미디어 컴포넌트의 전송 경로를 시그널링할 수 있다. 이를 위해 방송 서비스 시그널링 테이블은 방송 서비스 전송 경로 시그널링 정보를 포함할 수 있다. 전술한 실시예에서 방송 서비스 시그널링 테이블은 복수의 방송 서비스에 대한 정보를 포함한다. 이때, 방송 서비스 시그널링 테이블은 복수의 방송 서비스 각각에 포함된 복수의 미디어 컴포넌트를 시그널링하는 미디어 컴포넌트 시그널링 정보를 포함한다. 특히, 방송 서비스 시그널링 테이블은 복수의 미디어 컴포넌트의 전송 경로를 시그널링하는 방송 서비스 전송 경로 시그널링 정보를 포함한다. 예컨대 방송 서비스 시그널링 테이블을 통해 방송 수신 장치(100)는 서비스(Service 0)에 포함되는 비디오(Video 0)는 물리적 계층 파이프(PLP 0)를 통해 전송됨을 알 수 있다. 또한 방송 서비스 시그널링 테이블을 통해 방송 수신 장치(100)는 서비스(Service N)에 포함되는 오디오(Audio 1)가 인터넷 망을 통해 전송됨을 알 수 있다. 이때 물리적 계층 파이프(Physical Layer Pipe, PLP)는 물리적 계층(physical layer)상에서 식별 가능한 일련의 논리적 데이터 전달 경로이다. PLP는 데이터 파이프(data pipe) 등 다른 용어로 지칭될 수 있다.
도 74은 본 발명의 일 실시예에 따른 방송 서비스 시그널링 테이블을 보여준다.
방송 서비스 시그널링 테이블은 방송 서비스를 식별하는 정보, 방송 서비스 의 현재 상태를 나타내는 정보, 방송 서비스의 네임, 방송 서비스의 채널 넘버, 방송 서비스에 대한 보호 알고리즘 적용 여부를 나타내는 정보, 방송 서비스의 카테고리 정보 및 방송 서비스가 포함하는 미디어 컴포넌트를 시그널링하는 미디어 컴포넌트 시그널링 정보 중 적어도 어느 하나를 포함할 수 있다. 방송 서비스가 포함하는 미디어 컴포넌트를 시그널링하는 미디어 컴포넌트 시그널링 정보는 각각의 미디어 컴포넌트가 해당 방송 서비스에 필수적인지를 나타내는 정보를 포함할 수 있다. 또한 방송 서비스가 포함하는 미디어 컴포넌트를 시그널링하는 미디어 컴포넌트 시그널링 정보는 각각의 컴포넌트와 관련된 정보를 포함할 수 있다.
구체적으로 도 74의 실시예와 같이 방송 서비스 시그널링 테이블은 table_id 필드, section_syntax_indicator 필드, private_indicator 필드, section_length 필드, table_id_extension 필드, version_number 필드, current_next_indicator 필드, section_number 필드, last_section_numberr 필드, num_services 필드, service_id 필드, service_status 필드, SP_indicator 필드, short_service_name_length 필드, short_service_name 필드, channel_number 필드, service_category 필드, num_components 필드, essential_component_indicator 필드, num_component_level_descriptor 필드, component_level_descriptor 필드, num_service_level_descriptors 필드, 및 service_level_descriptor 필드 중 적어도 어느 하나를 포함할 수 있다.
table_id 필드는 방송 서비스 시그널링 정보 테이블의 식별자를 나타낸다. 이때 table_id 필드의 값은 ATSC A/65에서 정의된 reserved id값중 하나일 수 있다. 구체적인 실시예에서 table_id 필드는 8 비트 필드일 수 있다.
section_syntax_indicator 필드는 방송 서비스 시그널링 정보 테이블의MPEG-2 TS 표준의 long 형식의 private section table인지 아닌지를 나타낸다. 구체적인 실시예에서 section_syntax_indicator 필드는 1 비트 필드일 수 있다.
private_indicator 필드는 현재 테이블이 private section에 해당하는지를 나타낸다. 구체적인 실시예에서 private_indicator 필드는 1 비트 필드일 수 있다.
section_length 필드는 section_length 필드 이후에 포함된 section의 길이를 나타낸다. 구체적인 실시예에서 section_length 필드는 12 비트 필드일 수 있다.
table_id_extension 필드는 table_id 필드와 결합하여 방송 서비스 시그널링 정보 테이블을 식별하는 값을 나타낸다. 특히, table_id 필드는 서비스 시그널링 정보 테이블의 프로토콜 버전을 나타내는 SMT_protocol_version 필드를 포함할 수 있다. 구체적인 실시예에서 SMT_protocol_version 필드는 8 비트 필드일 수 있다.
version_number 필드는 서비스 시그널링 테이블의 버전을 나타낸다. 방송 수신 장치(100)는 vserion_number 필드의 값에 기초하여 서비스 시그널링 정보 테이블의 정보 이용여부를 결정할 수 있다. 구체적으로 version_number 필드의 값이 이전에 수신한 서비스 시그널링 테이블의 버전과 동일한 경우 서비스 시그널링 테이브블의 정보를 이용하지 않을 수 있다. 구체적인 실시예에서 version_number 필드는 5 비트 필드일 수 있다.
current_next_indicator 필드는 방송 서비스 시그널링 테이블의 정보가 현재 사용가능한지 나타낸다. 구체적으로 current_next_indicator 필드의 값이 1인 경우 방송 서비스 시그널링 테이블의 정보가 사용 가능함을 나타낼 수 있다. 또한 current_next_indicator 필드의 값이 1인 경우 방송 서비스 시그널링 테이블의 정보를 다음에 사용할 수 있음을 나타낼 수 있다. 구체적인 실시예에서 current_next_indicator 필드 1 비트 필드일 수 있다.
section_number 필드는 현재 섹션의 번호를 나타낸다. 구체적인 실시예에서 section_number 필드는 8 비트일 수 있다.
last_section_number 필드는 마지막 섹션의 번호를 나타낸다. 방송 서비스 시그널링 테이블의 크기가 큰 경우 복수의 섹션으로 나뉘어 전송될 수 있다. 이때 방송 수신 장치(100)는 section_number 필드와 last_section_number 필드에 기초하여 방송 서비스 시그널링 테이블에 필요한 모든 섹션의 수신 여부를 판단한다. 구체적인 실시예에서 last_section_number 필드는 8 비트 필드일 수 있다.
service_id 필드는 방송 서비스를 식별하는 식별자를 나타낸다. 구체적인 실시예에서 service_id 필드는 16 비트 필드일 수 있다.
service_status 필드는 방송 서비스의 현재 상태를 나타낸다. 구체적으로 방송 서비스가 현재 이용 가능한지 나타낼 수 있다. 구체적인 실시예에서 service_status 필드의 값이 1인 경우 방송 서비스가 현재 이용 가능함을 나타낼 수 있다. 구체적인 실시예에서 방송 수신 장치(100) service_status 필드의 값에 기초하여 해당 방송 서비스를 방송 서비스 리스트 및 방송 서비스 가이드에 표시할지를 결정할 수 있다. 예컨대 방송 수신 장치(100)는 해당 방송 서비스가 사용 불가능한 경우 해당 방송 서비스를 방송 서비스 리스트와 방송 서비스 가이드에 표시하지 않을 수 있다. 또 다른 구체적인 실시예에서 방송 수신 장치(100)는 service_status 필드의 값에 기초하여 해당 방송 서비스에 대한 접근을 제한할 수 있다. 예컨대, 해당 방송 서비스가 사용 불가능한 경우 방송 수신 장치(100)는 해당 방송 서비스에 대한 채널 업/다운 키를 통한 접근을 제한할 수 있다. 구체적인 실시예에서 service_status 필드는 2 비트 필드일 수 있다.
SP_indicator 필드는 해당 방송 서비스 내의 하나 이상의 컴포넌트가 서비스 프로텍션(protection)이 적용되었는지 나타낼 수 있다. 예컨대 SP_indicator의 값이 1인 경우, 해당 방송 서비스 내의 하나 이상의 컴포넌트에 서비스 프로텍션이 적용되었음을 나타낼 수 있다. 구체적인 실시예에서 SP_indicator 필드는 1 비트 필드일 수 있다.
short_service_name_length 필드는 short_service_nmae 필드의 크기를 나타낸다.
short_service_name 필드는 방송 서비스의 이름을 나타낸다. 구체적으로 short_service_nema 필드는 방송 서비스의 이름 요약하여 표시할 수 있다.
channel_number 필드는 해당 방송 서비스의 가상 채널 넘버를 표시한다.
service_category 필드는 방송 서비스의 카테고리를 나타낸다. 구체적으로 service_category 필드는 TV 서비스, 라디오 서비스, 방송 서비스 가이드, RI 서비스 및 긴급 경고(Emergency Alerting) 중 어느 하나를 나타낼 수 있다. 예컨대 도 75의 실시예에서와 같이 service_category 필드의 값이 0x01인 경우 TV 서비스를 나타내고, service_category 필드의 값이 0x02인 경우 라디오 서비스를 나타내고, service_category 필드의 값이 0x03인 경우 RI 서비스를 나타내고, service_category 필드의 값이 0x08인 경우 서비스 가이드를 나타내고, service_category 필드의 값이 0x09인 경우 긴급 경보를 나타낼 수 있다. 구체적인 실시예에서 service_category 필드는 6 비트 필드일 수 있다.
num_components 필드는 해당 방송 서비스가 포함하는 미디어 컴포넌트의 개수를 나타낸다. 구체적인 실시예에서 num_component 필드는 5 비트 필드일 수 있다.
essential_component_indicator 필드는 해당 미디어 컴포넌트가 해당 방송 서비스 재생(presentation)을 위해 필요한 필수 미디어 컴포넌트인지 나타낸다. 구체적인 실시예에서 essential_component_indicator 필드는 1 비트 필드일 수 있다.
num_component_level_descriptor 필드는 component_level_descrptor 필드의 개수를 나타낸다. 구체적인 실시예에서 num_component_level_descriptor 필드는 4 비트 필드일 수 있다.
component_level_descriptor 필드는 해당 컴포넌트에 대한 부가적인 속성을포함한다.
num_service_level_descriptors 필드는 service_level_descriptor 필드의 개수를 나타낸다. 구체적인 실시예에서 num_service_level_descriptors 필드는 4 비트 필드일 수 있다.
service_level_descriptor 필드는 해 당 서비스에 대한 부가적인 속성을 포함한다.
서비스 시그널링 테이블은 앙상블에 대한 정보를 더 포함할 수 있다. 앙상블은 하나 이상의 서비스가 동일한 전진 오류 수정(Forward Error Correction, FEC)이 적용되어 전송이 되는 경우 하나 이상의 서비스의 집합을 나타낸다. 도 78은 본 발명의 또 다른 실시예에 따른 방송 서비스 시그널링 테이블을 보여준다.
구체적으로 도 78의 실시예와 같이 방송 서비스 시그널링 테이블은 num_ensemble_level_descriptors 필드와 ensemble_level_descriptor 필드를 더 포함할 수 있다.
num_ensemble_level_descriptors 필드는 ensemble_level_descriptor 필드의 개수를 나타낸다. 구체적인 실시예에서 num_ensemble_level_descriptors 필드는 4 비트 필드일 수 있다.
ensemble_level_descriptor 필드는 해당 앙상블에 대한 부가적인 속성을 포함한다.
또한 서비스 시그널링 테이블은 미디어 컴포넌트를 식별하기 위하여 미디어 컴포넌트를 식별하는 스트림 식별자 정보를 더 포함할 수 있다. 이에 대해서는 도 77도 77을 통하여 구체적으로 설명하도록 한다.
도 77도 77은 본 발명의 일 다른 실시예에 따른 스트림 식별자 디스크립터를 보여준다.
스트림 식별자 정보는 descriptor_tag 필드, descriptor_length 필드 및 component_tag 필드 중 적어도 어느 하나를 포함할 수 있다.
descriptor_tag 필드는 해당 descriptor가 스트림 식별자 정보를 포함하는 descirptor임을 나타낸다. 구체적인 실시예에서 descriptor_tag 필드는 8 비트 필드일 수 있다.
descriptor_length 필드는 해당 필드 이후의 스트림 식별자 정보의 길이를 나타낸다. 구체적인 실시예에서 descriptor_length 필드는 8 비트 필드일 수 있다.
component_tag 필드는 미디어 컴포넌트를 식별하는 미디어 컴포넌트 식별자를 나타낸다. 이때 미디어 컴포넌트 식별자는 해당 시그널링 정보 테이블 상에서 다른 미디어 컴포넌트의 미디어 컴포넌트 식별자와 다른 유일(unique)한 값을 가질 수 있다. 해당 구체적인 실시예에서 component_tag 필드는 8 비트 필드일 수 있다.
방송 서비스 시그널링 테이블을 전송하고 수신하는 동작에 대해서는 도 78 내지 도 84을 통하여 설명하도록 한다.
앞서 방송 서비스 테이블을 비트스트림 형식으로 설명하였으나 구체적인 실시예에 따라서 방송 서비스 테이블은 XML 형식일 수 있다.
도 78는 본 발명의 일 실시예에 따른 방송 전송 장치가 방송 서비스 시그널링 테이블을 전송하는 동작을 보여준다.
본 발명의 일 실시예에 따른 방송 전송 장치는 방송 신호를 전송하는 전송부 및 방송 전송 장치의 동작을 제어하는 제어부를 포함할 수 있다. 전송부는 전송부가 수행하는 복수의 기능 각각을 수행하는 하나 또는 복수의 프로세서. 하나 또는 복수의 회로 및 하나 또는 복수의 하드웨어 모듈을 포함할 수 있다. 구체적으로 전송부는 여러가지 반도체 부품이 하나로 집적되는 시스템 온 칩(System On Chip, SOC)일 수 있다. 이때, SOC는 그래픽, 오디오, 비디오, 모뎀 등 각종 멀티미디어용 부품과 프로세서와 D램 등 반도체가 하나로 통합된 반도체일 수 있다. 제어부는 제어부가 수행하는 복수의 기능 각각을 수행하는 하나 또는 복수의 프로세서. 하나 또는 복수의 회로 및 하나 또는 복수의 하드웨어 모듈을 포함할 수 있다. 구체적으로 제어부는 여러가지 반도체 부품이 하나로 집적되는 시스템 온 칩(System On Chip, SOC)일 수 있다. 이때, SOC는 그래픽, 오디오, 비디오, 모뎀 등 각종 멀티미디어용 부품과 프로세서와 D램 등 반도체가 하나로 통합된 반도체일 수 있다.
방송 전송 장치는 제어부를 통하여 전송 패킷에 담아 전송할 데이터를 획득한다(S101). 방송 전송 장치가 전송할 데이터는 실시간 컨텐트 또는 실시간 컨텐트와 연관된 메타데이터일 수 있다. 구체적으로 실시간 컨텐트는 지상파 방송망 등을 통해서 전송되는 방송 A/V 컨텐트 또는 방송 A/V 컨텐트에 연관된 향상된 데이터(enhancement data)일 수 있다.
방송 전송 장치는 제어부를 통하여 획득한 데이터가 데이터 전송을 위해 사용할 전송 패킷이 담을 수 있는 크기를 초과하는지 여부를 판단한다(S103). 구체적으로 방송 전송 장치가 사용할 전송 패킷이 고정된 패킷 길이를 사용하는 프로토콜을 기반으로 할 수 있다. 이 때, 전송하고자 하는 데이터가 패킷이 커버할 수 있는 크기를 넘어서는 경우 원활한 데이터의 전송이 어려울 수 있다. 또한, 전송하고자 하는 데이터가 패킷에 비하여 매우 작은 경우 하나의 패킷에 작은 크기의 데이터 하나만을 전송하는 것을 비 효율적인 패킷 활용이 될 수 있다. 따라서, 상술한 비 효율성을 극복하기 위하여 방송 전송 장치는 제어부를 통해 전송 패킷과 데이터의 크기를 비교한다.
만약, 방송 전송 장치가 전송할 데이터를 전송 패킷이 담을 수 없는 크기로 판단한 경우, 방송 전송 장치는 제어부를 통해 전송할 데이터를 세그멘테이션(Segmentation) 한다(S107). 세그멘테이션된 데이터는 복수의 전송 패킷들에 나뉘어 전송될 수 있다. 그리고, 복수의 전송 패킷들은 세그멘테이션된 데이터를 식별하기 위한 정보를 추가적으로 포함할 수 있다. 또 다른 실시 예에서 세그멘테이션된 데이터를 식별하기 위한 정보는 전송 패킷이 아닌 별도의 데이터그램을 통해서 전송될 수도 있다.
방송 전송 장치는 제어부를 통해서 세그멘테이션된 데이터 또는 전송 패킷보다 작은 크기를 갖는 데이터를 패킷타이징(packetizing)한다(S109). 구체적으로 방송 전송 장치는 데이터를 전송 가능한 형태로 가공한다. 가공된 방송 패킷은 패킷 헤더(Packet header)와 패킷 페이로드(Packet payload)를 포함할 수 있다. 또한, 패킷 페이로드는 데이터와 페이로드의 헤더를 포함할 수 있다. 여기에서 페이로드 헤더는 패킷 헤더와 별로도, 패킷 페이로드에 포함된 페이로드 데이터를 시그널링 하기 위한 필드이다. 또한, 세그멘테이션된 데이터를 포함하는 패킷 페이로드는 페이로드의 헤더와 함께 세그멘테이션된 데이터 헤더를 포함할 수 있다. 여기에서 세그멘테이션된 데이터 헤더는 페이로드 헤더와 별도로,패킷 페이로드에 포함된 페이로드 데이터를 시그널링 하기 위한 필드이다.
일 실시 예에서 방송 전송 장치는 하나의 데이터를 하나의 패킷에 패킷타이징할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 복수의 데이터를 하나의 패킷에 패킷타이징 할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 하나의 데이터를 복수의 패킷에 조각화 하여 패킷타이징 할 수 있다.
상술한 바와 같이 데이터의 크기 또는 패킷의 길이에 따라서 패킷타이징된 전송 패킷이 달라질 수 있다. 그러므로 방송 전송 장치는 서로 다른 전송 패킷을 구별가능한 형태로 전송할 필요가 있다. 일 실시 예에서 방송 전송 장치는 제어부를 통해 전송 패킷의 페이로드 헤더에 패킷의 형태를 나타내는 정보를 포함시켜 데이터를 패킷타이징 할 수 있다. 또 다른 일 실시 예에서 방송 전송 장치의 제어부는 페이로드 헤더에 포함된 정보만으로 전송할 데이터를 구별하기 어려울 경우에, 전송 패킷의 종류를 식별할 수 있는 정보를 추가적으로 포함시켜 데이터를 패킷타이징 할 수 있다.
방송 전송 장치는 전송부를 통해서 패킷타이징된 방송 패킷을 전송한다(S111). 일 실시 예에서 방송 패킷의 전송은 지상파 방송망을 통해 이루어 질 수 있다. 또 다른 실시 예에서 방송 패킷의 전송은 인터넷망을 통해 이루어 질 수 도 있다.
도 79은 본 발명의 일 실시 예에 따른 방송 수신 장치가 패킷타이징된 방송 패킷을 수신하는 동작을 나타낸다.
방송 수신 장치(100)는 방송 수신부(110)를 통하여 패킷타이징된 전송 패킷를 수신한다(S201).
방송 수신 장치(100)는 제어부(150)를 통하여 수신된 전송 패킷으로부터 페이로드 헤더를 추출한다(S203). 제어부(150)는 전송 패킷의 페이로드로부터 데이터를 포함하는 페이로드 데이터와 페이로드 데이터를 시그널링하는 페이로드 헤더를 획득할 수 있다. 구체적으로 방송 수신 장치(100)의 제어부(150)는 패킷 페이로드에 포함된 방송 컨텐트 및 방송 컨텐트와 연관된 향상된 컨텐트 중 적어도 하나를 제공하기 위한 부가적인 정보를 수신한 전송 패킷으로부터 추출할 수 있다.
일 실시 예에서 방송 수신 장치(100)의 제어부(150)는 페이로드 헤더로부터 페이로드 에러 판단 정보, 페이로드 우선 순위 정보 및 페이로드 타입 정보 중 적어도 하나를 추출할 수 있다. 구체적으로 페이로드 에러 판단 정보는 방송 패킷에 포함된 페이로드에 에러가 존재하는지 또는 해당 페이로드가 정해진 신택스(syntax)를 위반하는 내용을 포함하고 있는지 여부를 나타낸다.
또한, 우선 순위 정보는 페이로드에 포함된 데이터의 우선순위를 나타낸다. 구체적으로 우선 순위 정보는 페이로드에 포함된 데이터의 속성 정보를 나타낸다. 예를 들면 파일 포맷 미디어 데이터의 시그널링 정보를 포함하고 있는 페이로드의 경우, 해당 패킷의 우선 순위 정보는 가장 높은 우선 순위로 설정되어 있다.
또한, 페이로드 타입 정보는 페이로드 데이터를 포함하는 패킷페이로드의 타입을 나타낸다. 예를 들면, 방송 전송 장치가 하나의 패킷 페이로드에 하나의 데이터를 패킷타이징했는지 또는 복수의 패킷 페이로드에 하나의 데이터를 나누어 패킷타이징 했는지 여부를 나타낼 수 있다.
방송 수신 장치(100)는 제어부(150)를 통해 추출된 페이로드 헤더에 포함된 정보로부터 페이로드에 포함된 데이터가 미디어 데이터인지 여부를 판단한다(S205). 구체적으로 방송 수신 장치(100)의 제어부(150)는 패킷 헤더 정보에 기초하여 해당 패킷에 포함된 페이로드의 유형을 판단할 수 있다. 일 실시 예에서 페이로드의 유형은 방송 컨텐트 및 방송 컨텐트와 연관된 향상된 컨텐트 중 적어도 하나를 포함하는 미디어 데이터가 될 수 있다. 또 다른 실시 예에서 페이로드의 유형은 미디어 데이터를 제공하는데 필요한 부가정보를 포함하는 메타 데이터가 될 수 있다.
방송 수신 장치(100)의 제어부(150)는 페이로드에 포함된 데이터가 미디어 데이터라고 판단한 경우, 전체 미디어 데이터가 수신한 하나의 전송 패킷에 포함되어 있는지 여부를 판단한다(S207). 구체적인 실시 예에서 전송 패킷의 길이와 전체 미디어 데이터의 크기에 따라 하나의 전송 패킷에 전체 미디어 데이터를 방송 전송 장치가 패킷타이징 할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 전체 미디어 데이터를 나누어 각각 서로 다른 전송 패킷에 패킷타이징 할 수 있다. 따라서 방송 수신 장치(100)의 제어부(150)는 컨텐트 출력을 위한 완전한 미디어 데이터를 추출하기 위해 방송 패킷의 유형을 페이로드 헤더를 통해 판단할 수 있다.
한편, 본 발명의 일 실시 예에서 방송 수신 장치(100)의 제어부(150)가 페이로드에 포함된 데이터가 미디어 데이터가 아니라고 판단한 경우는 이하 도 104에서 상세히 설명한다.
하나의 전송 패킷에 전체 미디어 데이터가 포함되어 있다고 판단한 경우, 제어부(150)는 하나의 패킷 페이로드로부터 미디어 데이터를 추출한다(S209). 일 실시 예에서 방송 수신 장치(100)의 제어부(150)는 하나의 전송 패킷으로부터 하나의 미디어 데이터만을 추출할 수 있다. 또 다른 실시 예에서 방송 수신 장치(100)의 제어부(150)는 하나의 전송 패킷으로부터 복수의 미디어 데이터를 추출할 수 있다. 한편, 하나의 전송 패킷에 전체 미디어 데이터가 포함되어 있지 않다고 판단한 경우, 제어부(150)는 페이로드 헤더 및 세그멘테이션 데이터 헤더에 기초하여 복수의 패킷 페이로드로부터 미디어 데이터를 추출한다(S211). 구체적으로 제어부(150)는 페이로드 헤더 및 세그멘테이션 데이터 헤더로부터 나뉘어 패킷타이징된 미디어 데이터의 정보를 획득할 수 있다. 따라서, 제어부(150)는 획득한 정보에 따라 나뉘어진 미디어 데이터를 식별할 수 있다. 다시 말해서, 제어부(150)는 획득한 정보에 따라 나뉘어진 미디어 데이터의 순서를 획득할 수 있다. 제어부(150)는 해당 순서에 기초하여 서로 다른 전송 패킷으로부터 획득한 미디어 데이터를 조합(concatenate)할 수 있다.
방송 수신 장치(100)는 제어부(150)를 통해 컨텐트를 제공한다(S213). 일 실시 예에서 제어부(150)는 추출한 미디어 데이터에 기초하여 컨텐트를 제공할 수 있다. 또 다른 실시 예에서 제어부(150)는 조합된 미디어 데이터에 기초하여 컨텐트를 제공할 수 있다.
A/V 컨텐트를 출력할 수 있다. 또 다른 실시 예에서 방송 수신 장치(100)는 A/V 컨텐트와 연관된 향상된 데이터(enhancement data)를 출력할 수도 있다.
도 80은 본 발명의 실시 예에 따른 패킷 구성을 보여준다.
패킷 기반 데이터 전송 프로토콜 상에서 각 패킷은 일반적으로 패킷 헤더와 패킷 페이로드로 구성된다. 패킷 헤더는 패킷이 포함하고 있는 패킷 페이로드의 정보를 포함할 수 있다. 패킷 페이로드는 방송망 또는 인터넷망으로 전송하고자 하는 미디어 데이터를 포함할 수 있다. 패킷 페이로드가 포함하는 미디어 데이터는 오디오, 비디오, 향상된 서비스 및 부가정보 중 적어도 어느 하나일 수 있다.
도 81은 본 발명의 실시 예에 따른 실시간 컨텐츠 전송을 위한 RTP(Real-time Transport Protocol) 패킷의 구조를 보여준다.
RTP 패킷은 RTP Header 및 RTP Payload를 포함할 수 있다. 다시 RTP header는 Timestamp, Synchronization source identifier 및 Contributing source identifier 중 적어도 하나를 포함할 수 있다.
RTP Header는 V(version) 필드, P(padding) 필드, X(extension) 필드, CC 필드, M(Marker bit) 필드, Payload Type 필드, Sequence Number 필드 및 Timestamp 필드 중 적어도 하나의 필드를 포함할 수 있다.
V(version) 필드는 해당 RTP의 버전 정보를 나타낸다. 구체적인 실시 예에서 V(version) 필드는 2비트일 수 있다.
P(padding) 필드는 페이로드 내에 padding 비트들의 존재 여부를 나타낸다. 구체적인 실시 예에서 P(padding) 필드는 1비트일 수 있다.
X(extension) 필드는 RTP Header내에 extension 필드의 존재여부를 나타낸다. 구체적인 실시 예에서 X(extension) 필드는 1비트일 수 있다.
CC 필드는 Contributing source의 수를 나타낸다. 구체적인 실시 예에서 CC 필드는 4비트일 수 있다.
M(Marker bit) 필드는 Payload type에 따라 서로 다른 의미를 나타낼 수 있다. 예를 들면 transport object가 파일인 경우 파일의 끝을 나타낼 수 있다. 또 다른 예를 들면 transport object가 비디오 또는 오디오 데이터인 경우 연관된 access unit들의 처음 또는 마지막 오브젝트임을 나타낼 수 있다. 구체적인 실시 예에서 M(Marker bit) 필드는 1비트일 수 있다.
Payload Type 필드는 RTP Payload의 타입을 나타낸다. 구체적인 실시 예에서 Payload Type 필드는 7비트일 수 있다.
Sequence Number 필드는 RTP 패킷의 시퀀스 넘버를 나타낸다. 구체적인 실시 예에서 Sequence Number 필드는 16비트일 수 있다.
Timestamp 필드는 RTP 패킷과 연관된 시간 정보를 나타낼 수 있다. Timestamp 필드는 Payload Type 필드의 값에 따라 다르게 해석될 수 있다. 구체적인 실시 예에서 Timestamp 필드는 32비트일 수 있다.
RTP payload는 RTP Header의 payload type에 따라 오디오/비디오 access unit이 포함될 수 있다. 예를 들면, H.264의 경우 NAL(network abstract layer) unit 등이 포함될 수 있다.
도 82는 본 발명의 일 실시 예에 따른 ISO base media file format(이하 ISO BMFF)를 기반으로 하는 미디어 파일 포맷을 나타낸다.
도 82에 도시된 바와 같이 미디어 파일 포맷은 일반적으로 하나의 ftyp와 하나 또는 그 이상의 moov, moof 및 mdat를 포함할 수 있다.
ftyp은 미디어 파일의 타입 및 적합성을 나타낸다. ftyp은 미디어 파일에서 가능한 한 앞에 위치한다.
moov는 모든 미디어 데이터를 위한 컨테이너이다. 구체적으로 프리젠테이션의 싱글 트랙(track)을 위한 컨테이터 박스이다. 프리젠테이션은 하나 또는 그 이상의 트랙으로 구성될 수 있다. 각각의 트랙은 프리젠테이션 내에서 다른 트랙과 독립적이다. 일 실시 예에서 트랙은 미디어 데이터를 담을 수 있으며, 또 다른 실시 예에서 트랙은 패킷타이징된 스트리밍 프로토콜을 위한 정보를 담을 수 있다.
mdat은 미디어 데이터의 컨테이너이고, moof는 mdat에 관한 정보를 담고 있다.
도 83은 본 발명의 일 실시 예에 따른 패킷 페이로드의 페이로드 헤더의 구성을 나타낸다.
현재 실시간 전송 프로토콜은 대부분 미디어 파일의 액세스 유닛(access unit)등을 기반으로 전송하고 있다. 구체적으로 액세스 유닛이란 미디어 파일 또는 데이터를 전송하는 최소 단위를 의미한다. 따라서, 미디어 파일 포맷 기반 데이터를 실시간으로 전송하는 방안에 대한 고려가 미흡한 점이 있다.
본 발명의 일 실시 예에 따른 방송 전송 장치는 하나의 전송 패킷에 포함된 페이로드를 통해 하나의 파일 포맷 기반 미디어 데이터를 전송할 수 있다. 이 경우의 전송 패킷은 싱글 유닛 패킷(Single unit packet)이라고 할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 하나의 전송 패킷에 포함된 페이로드를 통해 복수의 파일 포맷 기반 미디어 데이터를 전송할 수 있다. 이 경우의 전송 패킷은 어그리게이션 패킷(Aggregation packet)이라고 할 수 있다. 또 다른 일 실시 예에 따른 방송 전송 장치는 하나의 파일 포맷 기반 미디어 데이터를 여러 전송 패킷에 나누어 전송할 수 있다. 이 경우의 전송 패킷은 프래그멘티드 패킷(Fragmented packet)이라고 할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 하나의 전송 패킷의 페이로드를 통해 미디어 스트림에 대한 하나 또는 복수의 메타데이터를 전송할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 하나의 메타데이터를 복수의 전송 패킷의 페이로드를 통해 전송할 수 있다.
또한 본 발명의 일 실시 예에 따른 방송 전송 장치는 다양한 프로토콜을 통해 미디어 데이터를 전송할 수 있다. 상술한 프로토콜은 실시간 전송 프로토콜(real-time transport protocol (RTP)), 비 동기 계층화 코딩(asynchronous layered coding(ALC)) 및 계층화 코딩 전송(layered coding transport (LCT)) 적어도 어느 하나일 수 있다.
구체적으로 방송 전송 장치는 전송 패킷의 헤더에 페이로드 타입에 대한 정보를 나타내는 필드를 삽입하여 해당 필드를 통해 페이로드 내에 파일 포맷 기반 미디어 데이터가 포함되어 있음을 나타낼 수 있다. 예를 들면, RTP의 경우 헤더의 payload type 필드가 페이로드의 데이터 타입을 나타내며, 해당 필드에 특정 값을 파일 포맷 기반 미디어 데이터를 위한 payload type 값으로 할당할 수 있다. 그리고 이 경우, RTP 패킷 헤더의 M 필드는 하나의 미디어 파일의 끝을 포함하는 데이터가 패킷의 페이로드에 포함되었을 때, 1로 셋팅될 수 있다.
상술한 과제를 해결하기 위해 본 발명의 일 실시 예에 따른 페이로드 헤더는 페이로드가 포함하는 데이터상에 에러 또는 신택스 오류가 있는지 여부를 나타내는 정보, 데이터의 우선 순위를 나타내는 정보 및 데이터의 타입을 나타내는 정보 중 적어도 하나를 포함할 수 있다. 이 경우, 페이로드 헤더에 포함된 페이로드가 포함하는 데이터상에 에러 또는 신택스 오류를 나타내는 정보를 F 필드라고 할 수 있다. 일 실시 예에서 페이로드 헤더에 포함된 페이로드가 포함하는 데이터상에 에러 또는 신택스 오류를 나타내는 정보는 forbidden_zero_bit로서, 페이로드가 포함하는 데이터상에 에러가 발생하거나 신택스 위반이 발생하는 경우 1로 셋팅될 수 있다. 구체적으로 페이로드 헤더에 포함된 페이로드가 포함하는 데이터상에 에러 또는 신택스 오류를 나타내는 정보는 1비트일 수 있다.
또한, 이 경우 페이로드 헤더에 포함된 데이터의 우선 순위를 나타내는 정보 Priority 필드라고 할 수 있다. 일 실시 예에서 데이터의 우선 순위를 나타내는 정보는 페이로드 데이터의 우선순위를 나타내는 필드이다. 그리고, 데이터의 우선 순위를 나타내는 정보는 페이로드 데이터가 미디어 파일 포맷 상에서 중요한 메타데이터를 포함하는지 여부를 나타낼 수 있다.
ISO BMFF를 예로 들면, ftyp 또는 moov 등을 포함하는 페이로드 데이터의 경우 데이터의 우선 순위를 나타내는 정보는 가장 높은 순위로 셋팅될 수 있다. 일 실시 예에서 데이터의 우선 순위를 나타내는 정보는 방송 전송 장치의 제어부를 통해, 가장 높은 우선 순위(highest), 가장 높은 우선 순위에 비해 상대적으로 낮은 순위(medium), 가장 낮은 우선 순위(low)를 나타낼 수 있다. 이 경우, 데이터의 우선 순위를 나타내는 정보는 가장 높은 우선 순위에서 0x00, 가장 높은 우선 순위에 비해 상대적으로 낮은 순위에서 0x01, 그리고 가장 낮은 우선 순위에서 0x02로 설정될 수 있다. 상술한 설정 값은 일 예시일 뿐이며 다른 임의의 값으로 설정 될 수 도 있다.
또한 이 경우 데이터의 타입을 나타내는 정보를 type 필드라고 할 수 있다. 구체적으로 데이터의 타입을 나타내는 정보를 통해 방송 수신 장치(100)의 제어부(150)는 전송 패킷이 하나의 패킷으로 하나의 데이터를 전송하는 패킷인지, 하나의 패킷으로 복수의 서로 다른 데이터들을 전송하는 패킷인지 또는 하나의 데이터를 복수개로 나눈 데이터를 전송하는 패킷인지를 식별할 수 있다.
또한, 방송 수신 장치(100)의 제어부(150)는 데이터의 타입을 나타내는 정보를 통해 전송 패킷이 컨텐트의 시간 정보를 포함하는 메타데이터를 전송 하는 패킷인지, 전송 패킷이 컨텐트의 설명 정보를 포함하는 메타데이터를 전송하는 패킷인지를 식별할 수 있다.
일 실시 예에서 방송 전송 장치는 하나의 패킷으로 하나의 데이터를 전송하는 패킷의 경우, 데이터의 타입을 나타내는 정보를 0x00으로 설정할 수 있다. 또한, 방송 전송 장치는 하나의 패킷으로 복수의 서로 다른 데이터들을 전송하는 패킷의 경우, 데이터의 타입을 나타내는 정보를 0x01로 설정할 수 있다. 또한, 방송 전송 장치는 하나의 데이터를 나눈 데이터를 전송하는 패킷의 경우, 데이터의 타입을 나타내는 정보를 0x02로 설정할 수 있다.
또한 방송 전송 장치는 미디어 데이터가 아닌, 컨텐트의 재생(presentation) 또는 디코딩(decoding) 시간 정보를 포함하는 메타데이터를 패킷타이징 하여 전송 할 수 있다. 이 경우, 방송 전송 장치는 데이터의 타입을 나타내는 정보를 0x03으로 설정할 수 있다. 한편, 상술한 시간 정보를 타임라인(timeline) 데이터라고 할 수 있다.
또한, 방송 전송 장치는 컨텐트의 설명 정보를 포함하는 메타데이터를 패킷타이징 하여 전송할 수 있다. 이 경우, 방송 전송 장치는 데이터의 타입을 나타내는 정보를 0x04로 설정할 수 있다. 한편, 상술한 정보를 라벨링(labeling) 데이터라고 할 수 있다.
그러나, 상술한 설정 값들은 일 실시 예일뿐이므로 본 발명이 상술한 값에 의해 한정되는 것은 아니다. 구체적인 실시 예에서 type 필드는 5비트일 수 있다.
도 84 내지 도 85는 하나의 패킷에 하나의 미디어 데이터가 패킷타이징된 전송 패킷 의 페이로드 구성을 나타낸다.
도 84에 도시된 바와 같이, 하나의 패킷에 하나의 미디어 데이터가 포함된 패킷을 싱글 유닛 패킷(Single unit packet)이라고 할 수 있다. 싱글 유닛 패킷의 페이로드는 페이로드 헤더와 페이로드 데이터를 포함할 수 있다. 페이로드 데이터는 하나의 파일 포맷 기반 미디어 데이터을 포함하는 프래그멘티드(fragmented) 데이터를 포함할 수 있다. 일 실시 예에서 전송 프로토콜이 고정 길이의 전송 패킷을 사용하는 경우, 페이로드 데이터는 프래그멘티드 데이터 외에 패딩(padding) 비트들을 추가적으로 포함할 수 있다. 여기에서 패딩 비트는 전송 패킷에서 데이터를 채우고 남은 공간을 채우기 위한 비트를 말한다.
도 85는 도 84에 도시된 전송 패킷 구체적인 예를 나타낸다. 도 85에 도시된 바와 같이, 페이로드 헤더는 페이로드가 포함하는 데이터상에 에러 또는 신택스 오류가 있는지 여부를 나타내는 정보, 데이터의 우선 순위를 나타내는 정보 및 데이터의 타입을 나타내는 정보 중 적어도 하나를 포함할 수 있다.
도 85에 도시된 일 예에서, 페이로드가 포함하는 데이터상에 에러 또는 신택스 오류가 있는지 여부를 나타내는 정보는 에러 및 신택스 위반이 없다는 내용을 나타내는 값을 포함할 수 있다. 구체적인 실시 예에서 해당 값은 0일 수 있다.
데이터의 우선 순위를 나타내는 정보는 페이로드 데이터 내 미디어 파일이 ftyp 등의 중요한 데이터를 포함하므로 가장 높은 우선 순위를 가질 수 있다. 상술한 바와 같이 ftyp의 경우 미디어 파일을 시그널링하기 위한 정보를 포함하는 바 가장 높은 우선 순위를 가질 수 있다. 구체적인 실시 예에서 가장 높은 우선 순위를 나타내는 값은 0x00일 수 있다.
데이터의 타입을 나타내는 정보 는 하나의 패킷 페이로드 내에 하나의 미디어 파일이 모두 포함되어 있으므로 싱글 유닛 패킷을 나타낼 수 있다. 구체적인 실시 예에서 데이터의 타입을 나타내는 정보는 0x00값을 가질 수 있다. 추가적으로 미디어 파일의 길이와 전송 프로토콜에 따라 패딩 비트가 선택적으로 페이로드 데이터에 삽입될 수 있다.
도 86 내지 도 87은 하나의 패킷에 복수의 서로 다른 미디어 데이터가 패킷타이징된 전송 패킷의 구성을 나타낸다. 상술한 패킷은 어그리게이션 패킷(Aggregation packet)이라고 할 수 있다. 도 86에 도시된 바와 같이, 하나의 전송 패킷의 패이로드가 복수의 서로 다른 파일 포맷 기반 미디어 데이터을 포함하는 경우, 페이로드 데이터는 복수의 어그리게이션 유닛(Aggregation unit)을 포함할 수 있다. 각각의 어그리게이션 유닛은 다른 파일 포맷 기반 미디어 데이터를 포함할 수 있다. 추가적으로 전송 프로토콜이 고정 길이의 패킷을 사용하는 경우 페이로드 데이터는 패딩(padding) 비트들을 포함할 수 있다.
일 실시 예에서 하나의 어그리게이션 유닛은 어그리게이션 유닛의 길이를 나타내는 정보 및 어그리게이션 데이터 중 적어도 하나를 포함할 수 있다. 이 경우 어그리게이션 유닛의 길이를 나타내는 정보를 Aggregation unit length 필드라고 할 수 있다. 구체적인 실시 예에서 어그리게이션 유닛은 16비트일 수 있다. 또한, 어그리게이션 유닛 데이터는 하나의 파일이 포함하는 데이터를 나타낸다.
도 87은 어그리게이션 유닛의 구성을 나타내는 또 다른 실시 예로, 하나의 어그리게이션 유닛은 도 86의 실시 예에서 추가적으로 어그리게이션 유닛 내에 포함된 파일의 타입을 나타내는 정보를 더 포함할 수 있다.
어그리게이션의 타입을 나타내는 정보는 Aggregation unit type 필드라고 할 수 있다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 어그리게이션 타입을 0x00으로 설정할 수 있다.
또 다른 실시 예에서 어그리게이션 타입은 MPEG-DASH()에서의 셀프-이니셜라이징 세그먼트(Self-initailizing Segment) 형태의 파일을 해당 어그리게이션 유닛이 포함하고 있음을 나타낼 수 있다. 여기에서 셀프-이니셜라이징 세그먼트는 별도의 이니셜라이징 세그먼트 없이 이니셜라이징 세그먼트와 미디어 세그먼트를 통합한 것 이다. 구체적으로 미디어 세그먼트와 미디어 세그먼트의 미디어 형태를 포함할 수 있다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 어그리게이션 타입을 0x01로 설정할 수 있다.
또 다른 실시 예에서 어그리게이션 타입은 MPEG-DASH에서의 이니셜라이징 세그먼트(Initialization Segment) 형태의 파일을 해당 어그리게이션 유닛이 포함하고 있음을 나타낼 수 있다. 여기에서 이니셜라이징 세그먼트는 ISO BMFF를 따르는 포맷이다. 구체적으로 이니셜라이징 세그먼트는 ftyp, moov를 포함해야한다. 그리고 moof를 포함하지 않아야 한다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 어그리게이션 타입을 0x02로 설정할 수 있다.
도 88 내지 도 94은 하나의 미디어 데이터가 복수의 전송 패킷에 나뉘어 패킹타이징된 전송 패킷(이하 프래그멘티드 패킷(Fragmented packet))의 페이로드 구성을 나타낸다. 도 88는 프래그멘티드 패킷의 페이로드의 구성의 일 실시 예를 나타낸다. 도 88에 도시된 바와 같이, 프래그멘티드 패킷의 페이로드는 프래그멘테이션 유닛(Fragmentation unit)을 포함할 수 있다 추가적으로 프래그멘티드 패킷의 페이로드는 전송 프로토콜이 고정 길이의 패킷을 사용하는 경우 패딩(Padding) 비트들이 포함될 수 있다.
일 실시 예에서, 프래그멘테이션 유닛(FU)은 프래그멘테이션 유닛 헤더(Fragmentation unit header) 및 프래그멘테이션 유닛 데이터(Fragmentation unit data) 중 적어도 어느 하나를 포함할 수 있다. 프래그멘테이션 유닛 데이터는 하나의 파일 포맷 기반 미디어 데이터의 일부분을 포함할 수 있다. 프래그멘테이션 유닛 헤더는 프래그멘테이션 유닛 데이터의 정보를 포함할 수 있다.
구체적으로, 프래그멘테이션 유닛 헤더는 프래그멘테이션 유닛 데이터가 전체 파일 미디어 데이터 중 시작 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보, 프래그멘테이션 유닛 데이터가 전체 파일 미디어 데이터 중 끝 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보 및 프래그멘테이션 유닛의 타입을 나타내는 정보 중 적어도 어느 하나를 포함할 수 있다.
일 실시 예에서 전체 파일 미디어 데이터 중 시작 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보를 Start bit 필드라고 할 수 있다. 구체적으로 시작 부분의 데이터는 전체 미디어 데이터의 첫 비트를 포함하는 전체 데이터의 일부일 수 있다.
예를 들면, 해당 페이로드의 프래그멘테이션 유닛 데이터 가 시작 부분의 데이터를 포함하고 있는 경우, 방송 전송 장치는 전체 파일 미디어 데이터 중 시작 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보를 1로 설정될 수 있다. 구체적으로 전체 파일 미디어 데이터 중 시작 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보는 1비트일 수 있다.
일 실시 예에서 전체 파일 미디어 데이터 중 끝 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보를 End bit 필드라고 할 수 있다. 구체적으로, 끝 부분의 데이터는 전체 미디어 데이터의 마지막 비트를 포함하는 전체 데이터의 일부일 수 있다.
예를 들면, 해당 페이로드의 프래그멘테이션 유닛 데이터 가 끝 부분의 데이터를 포함하고 있는 경우, 방송 전송 장치는 전체 파일 미디어 데이터 중 끝 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보를 1로 설정될 수 있다. 구체적으로 전체 파일 미디어 데이터 중 끝 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보는 1비트일 수 있다.
일 실시 예에서 프래그멘테이션 유닛의 타입을 나타내는 정보는 프래그멘테이션 유닛 타입 필드라고 할 수 있다.
일 실시 예에서 프래그멘테이션 유닛 타입은 해당 패킷이 파일 포맷 기반의 기본적인 파일을 프래그멘테이션 유닛이 포함하고 있음을 나타낼 수 있다. 구체적으로, 파일 포맷 기반의 기본적인 파일은 ISO BMFF를 기반으로 하는 파일 포맷을 갖는 미디어 파일일 수 있다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 프래그멘테이션 유닛 타입을 0x00으로 설정할 수 있다.
또 다른 실시 예에서 프래그멘테이션 유닛 타입은 MPEG-DASH()에서의 셀프-이니셜라이징 세그먼트 형태의 파일을 해당 프래그멘테이션 유닛이 포함하고 있음을 나타낼 수 있다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 프래그멘테이션 유닛 타입을 0x01로 설정할 수 있다.
또 다른 실시 예에서 프래그멘테이션 유닛 타입은 MPEG-DASH에서의 이니셜라이징 세그먼트 형태의 파일을 해당 프래그멘테이션 유닛이 포함하고 있음을 나타낼 수 있다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 프래그멘테이션 유닛 을 0x02로 설정할 수 있다.
또 다른 실시 예에서 프래그멘테이션 유닛 타입은 MPEG-DASH에서의 미디어 세그먼트(media segment)형태의 파일을 해당 프래그멘테이션 유닛(Fragmentation unit)이 포함하고 있음을 나타낼 수 있다. 구체적인 실시 예에서 이 경우, 방송 전송 장치는 프래그멘테이션 유닛 을 0x03로 설정할 수 있다.
구체적으로 프래그멘테이션 유닛 타입을 나타내는 정보는 6비트일 수 있다.
도 89는 프래그멘티드 패킷 의 페이로드의 구성의 또 다른 실시 예를 나타낸다. 도 89의 실시 예는 전송 패킷의 헤더에 전송 패킷의 순서와 관련된 정보가 존재하지 않는 경우에 적용될 수 있다.
도 89에 도시된 바와 같이 프래그멘테이션 유닛(FU) 에 포함된 프래그멘테이션 유닛 헤더는 프래그멘테이션 유닛 데이터가 전체 파일 미디어 데이터 중 시작 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보, 프래그멘테이션 유닛 데이터가 전체 파일 미디어 데이터 중 끝 부분의 데이터를 포함하고 있는지 여부를 나타내는 정보 및 프래그멘테이션 유닛의 타입을 나타내는 정보 및 프래그멘테이션 유닛의 전체 데이터에서의 순서를 나타내는 정보 중 적어도 하나를 포함할 수 있다. 상술한 정보 중 프래그멘테이션 유닛의 순서를 나타내는 정보를 제외한 나머지 정보는 도 88에서 설명한 내용과 같다.
프래그멘테이션 유닛의 순서를 나타내는 정보는 Fragmentation number 필드라고 할 수도 있다. 구체적으로 방송 전송 장치는 파일 포맷 기반의 미디어 데이터가 복수의 프래그멘티드 패킷에 나뉘어진 경우, 프래그멘테이션 유닛의 순서를 나타내는 정보에 값을 설정하여 해당 패킷의 순서를 할당한다. 구체적으로 Fragmentation number 필드는 8비트일 수 있다.
도 90는 본 발명의 일 실시 예에서 방송 전송 장치가 ISO BMFF 기반 미디어 파일을 프레그멘테이션하여 복수개의 패킷들로 나누는 것을 나타낸다. 앞서 도시된 바와 같이, ISO BMFF 기반 미디어 파일은 ftyp, moov 와 복수의 moof 및 mdat을 포함할 수 있다.
방송 전송 장치는 ISO BMFF 기반 미디어 파일을 복수개로 나누어 각각 서로 다른 프래그멘테이션 유닛 데이터 에 포함시킬 수 있다. 또한, 방송 전송 장치는 ISO BMFF 기반 미디어 파일을 나누면서 페이로드 헤더에 관련 정보를 포함시킬 수 있다.
도 91는 도 90의 방송 전송 장치가 패킷타이징한 제1 프래그멘테이션 유닛 데이터의 구체적인 실시 예를 나타낸다.
도 91에 도시된 바와 같이, 본 발명의 일 실시 예에서 방송 전송 장치는 페이로드 헤더의 F 필드를 해당 패킷에 에러 또는 신택스의 오류가 없는 것으로 판단하여 0으로 설정한다.
또한, 방송 전송 장치는 Priority 필드를 가장 높은 우선순위를 나타내는 값으로 설정할 수 있다. 구체적으로 해당 값은 0x00일 수 있다.
또한, 방송 전송 장치는 Type 필드를 해당 패킷이 하나의 파일 포맷 기반 미디어 파일을 여러 페이로드에 나누어 전송하는 패킷을 나타내는 값으로 설정할 수 있다. 구체적으로 해당 값은 0x02일 수 있다.
페이로드 데이터는 프래그멘테이션 유닛을 포함할 수 있으며, 다시 프래그멘테이션 유닛은 Start bit 필드, End bit 필드, 프래그멘테이션 유닛 타입 필드 및 프래그멘테이션 유닛 데이터 필드를 포함할 수 있다.
방송 전송 장치는 Start bit 필드를 해당 패킷이 미디어 파일의 시작 데이터를 포함하는 내용을 나타내는 값으로 설정할 수 있다. 구체적으로, 제1 프래그멘테이션 유닛이 미디어 데이터의 시작 데이터를 포함하고 있는바, 방송 전송 장치를 해당 내용을 나타내는 값을 start bit 필드에 설정할 수 있다.
한편, 방송 전송 장치는 도 91에에서 예시로 들고 있는 제1 프래그멘테이션 유닛의 End bit 필드를 미디어 파일의 끝 데이터를 포함하고 있지 않다는 내용을 나타내는 값으로 설정할 수 있다. 구체적인 실시 예에서 방송 전송 장치는 해당 패킷이 미디어 파일의 끝 데이터를 포함하고 있지 않다는 내용을 나타내기 위해 End bit 필드를 0으로 설정할 수 있다.
한편, 방송 전송 장치는 도 91에서 예시로 들고 있는 제1 프래그멘테이션 유닛이 파일 포맷 기반 기본적인 형태의 파일을 포함하고 있다는 내용을 프래그멘테이션 유닛 타입 필드에 값을 설정할 수 있다. 구체적으로 파일 포맷 기반의 기본적인 형태란, ISO BMFF를 따르는 파일 포맷 데이터일 수 있다. 구체적인 실시 예에서 방송 전송 장치는 프래그멘테이션 유닛 타입 필드를 0x00으로 설정하여 해당 내용을 나타낼 수 있다.
도 92 내지 도 94은 도 90의 프래그멘테이션 유닛 데이터 중 시작데이터를 제외한 나머지 데이터를 포함하는 프래그멘테이션 유닛의 일 실시 예를 나타낸다.
도 92에 도시된 바와 같이, 본 발명의 일 실시 예에서 방송 전송 장치는 페이로드 헤더의 F 필드를 해당 패킷에 에러 또는 syntax의 오류가 없는 것을 나타내는 값으로 설정한다. 구체적인 실시 예에서 방송 전송 장치는 F 필드를 0으로 설정할 수 있다. 또한, 방송 전송 장치는 도 92에 도시된 페이로드 데이터가 상대적으로 낮은 우선 순위를 가지는 것을 나타내는 값으로 Priority 필드를 설정한다.
구체적인 실시 예에서 제2 프래그멘테이션 유닛부터는 전체 미디어 데이터를시그널링하는 데이터를 포함하지 않을 수 있다. 따라서, 제1 프래그멘테이션 유닛보다 우선 순위가 상대적으로 낮은바, Priority 필드가 상대적으로 낮은 우선 순위를 갖는 값으로 설정될 수 있다. 예를 들면 해당 값은 0x01일 수 있다.
또한, 방송 전송 장치는 Type 필드를 해당 패킷이 하나의 파일 포맷 기반 미디어 파일을 여러 페이로드에 나누어 전송하는 패킷을 나타내는 Fragmented packet으로 0x02로 설정한다. 도 93은 페이로드 데이터가 시작 데이터를 포함하는 프래그멘테이션 유닛 데이터 및 끝 데이터를 포함하는 프래그멘테이션 유닛 데이터를 포함하지 않는 경우의 페이로드 구성을 나타낸다.
본 발명의 일 실시 예에서, 방송 전송 장치는 도 93의 프래크멘테이션 유닛 데이터가 시작 데이터 및 끝 데이터를 포함하고 있지 않는 바, start bit 필드 및 end bit 필드를 해당 정보를 나타내는 값으로 설정할 수 있다. 구체적인 실시 예에서 방송 전송 장치는 start bit 및 end bit 필드들을 모두 0으로 설정할 수 있다.
또한, 방송 전송 장치는 프래그멘테이션 유닛 타입 필드를 파일 포맷 기반 기본적인 형태의 파일을 포함하고 있다는 내용을 프래그멘테이션 유닛 타입 필드의 특정 값으로 설정할 수 있다. 구체적으로 파일 포맷 기반의 기본적인 형태란, ISO BMFF를 따르는 파일 포맷 데이터일 수 있다. 구체적인 실시 예에서 방송 전송 장치는 프래그멘테이션 유닛 타입 필드를 0x00으로 설정하여 해당 내용을 나타낼 수 있다. 패킷에 나누어진 각각의 파일 포맷 기반 미디어 데이터는 전체 파일에서 고유의 순서를 가질 수 있다. 방송 수신 장치(100)는 제어부(150)를 통해 나뉘어진 프래그멘테이션 유닛 데이터가 전체 데이터 중에서 시작 부분을 포함함을 Start bit 필드에 기초하여 식별할 수 있다. 또한, 프래그멘테이션 유닛 데이터가 전체 데이터 중에서 끝 부분을 포함함을 End bit 필드에 기초하여 식별할 수 있다. 그러나, Start bit 필드 및 End bit 필드만으로 식별할 수 없는 경우가 있을 수 있다.
프래그멘테이션 유닛 데이터가 전체 데이터 중 시작 데이터 또는 끝 데이터를 포함하고 있지 않은 경우, 방송 수신 장치(100)는 일 실시 예에서 페이로드에 포함된 프래그멘테이션 유닛 데이터의 순서를 나타내는 정보를 통해 해당 패킷을 식별할 수 있다. 구체적으로 프래그멘테이션 유닛 데이터의 순서를 나타내는 정보는 프래그멘테이션 넘버 필드일 수 있다. 또한, 방송 전송 장치는 해당 프래그멘테이션 유닛 데이터의 순서를 상술한 프래그멘테이션 필드에 설정할 수 있다.
그러나, 또 다른 실시 예에서 전송 패킷은 프래그멘테이션 유닛 데이터의 순서 정보를 포함하지 않을 수도 있다. 이 경우, 일 실시 예에서 방송 전송 장치는 패킷 헤더에 프래그멘테이션 유닛 데이터의 순서를 식별하기 위한 정보를 삽입할 수 있다. 패킷 헤더에 포함된 프래그멘테이션 유닛 데이터의 순서를 식별하기 위한 정보는 시퀀스 넘버(Sequence number) 필드라고 할 수 있다. 또 다른 실시 예에서 방송 전송 장치는 IP 데이터그램의 오프셋(offset) 정보에 프래그멘테이션 유닛 데이터의 순서를 식별하기 위한 정보를 삽입할 수도 있다.
도 94은 나뉘어진 전제 미디어 데이터 중 끝 데이터를 포함하는 프래그멘테이션 유닛을 포함하는 페이로드의 구성을 나타낸다. 구체적으로, 도 94은 페이로드 데이터가 시작 데이터를 포함하는 프래그멘테이션 유닛 데이터를 포함하지는 않으나, 끝 데이터를 포함하는 프래그멘테이션 유닛 데이터를 포함하는 경우의 페이로드 구성을 나타낸다.
본 발명의 일 실시 예에서, 방송 전송 장치는 전술한 프래크멘테이션 유닛 데이터가 끝 데이터를 포함하고 있는 바, start bit 필드 및 end bit 필드를 해당 정보를 나타내는 값으로 설정할 수 있다. 구체적인 실시 예에서 방송 전송 장치는 start bit를 0으로 설정할 수 있다. 그리고, 방송 전송 장치는 end bit 필드를 1로 설정할 수 있다.
또한, 방송 전송 장치는 프래그멘테이션 유닛 타입 필드를 해당 패킷이 포함하는 미디어 데이터가 ISO BMFF 기반의 ftyp으로 시작하는 기본적인 형태의 파일을 포함하는 내용을 나타내도록 설정할 수 있다. 구체적인 실시 예에서 방송 전송 장치는 프래그멘테이션 유닛 타입 필드를 0x00으로 설정할 수 있다.
방송 전송 장치가 전송 패킷을 통해 전송할 수 있는 데이터는 상술한 미디어데이터와 함께 메타데이터(metadata)가 있을 수 있다. 메타데이터는 미디어 데이터를 제공하기 위해 필요한 부가정보를 나타낸다. 이하 도 95내지 도 102에서는 메타데이터를 전송 패킷에 패킷타이징하여 전송 및 수신 하는 방송 전송 장치, 방송 전송 장치의 동작 방법, 방송 수신 장치 및 방송 수신 장치 동작 방법을 제안한다.
또한, 이하에서는 메타데이터의 일 예로 타임라인(timeline) 정보를 중심으로 설명한다. 타임라인 정보란 미디어 컨텐트를 위한 일련의 시간 정보이다. 구체적으로 타임라인 정보는 재생(presentation) 또는 디코딩하기 위한 일련의 시간 정보일 수 있다.
또한 타임라인 정보는 기본 타임라인(Base timeline) 정보를 포함할 수 있다. 기본 타임라인이란 복수의 서로 다른 전송망을 통해 전송되는 미디어 데이터를 동기화하기 위해 필요한 기준 타임라인을 의미한다. 구체적으로 제1 전송망을 통해 전송되는 미디어 데이터의 타임라인에 제2 전송망을 통해 전송되는 미디어 데이터의 타임라인을 매핑하는 경우, 제1 전송망을 통해 전송되는 미디어 데이터의 타임라인이 기본 타임라인이 된다.
한편, 방송 전송 장치는 메타데이터를 XML의 포맷으로 표현할 수 있다. 또한, 방송 전송 장치는 메타데이터를 시그널링 테이블에 포함가능한 디스크립터 형태로 표현할 수도 있다.
도 95는 본 발명의 일 실시예에 따른 메타데이터의 타임라인 시그널링 테이블을 보여준다.
본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인과 관련된 메타데이터임을 나타내는 정보 혹은 해당 메타데이터가 타임라인 컴포넌트 액세스 유닛(timeline component access unit) 구조를 포함하고 있음을 나타내는 정보를 포함할 수 있다. 상술한 정보를 identifier 필드라고 할 수 있다. 구체적인 실시 예에서 identifier 필드는 8비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 컴포넌트 액세스 유닛의 타임라인 정보의 길이를 나타내는 정보를 포함할 수 있다. 상술한 정보를 AU_length 필드라고 할 수 있다. 구체적인 실시 예에서 AU_length 필드는 32비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 컴포넌트 액세스 유닛과 연관된 서비스 및 컨텐트 컴포넌트에 대한 위치 정보를 포함하고 있는지 여부를 나타내는 정보를 포함할 수 있다. 상술한 정보를 location_flag 필드라고 할 수 있다. 구체적인 실시 예에서 location_flag 필드는 1비트일 수 있다.
또한 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 컴포넌트 액세스 유닛이 포함하는 타임스탬프(timestamp)의 버전 정보를 포함할 수 있다. 타임스탬프란 연속적인 타임라인에서 해당 액세스 유닛이 출력되어야 하는 시간 정보를 나타낸다. 상술한 정보를 timestamp_version 필드라고 할 수 있다. 구체적인 실시 예에서 timestamp_version 필드는 1비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 컴포넌트 액세스 유닛의 타임스탬프 타입 정보를 포함할 수 있다. 상술한 정보를 timestamp_type 필드라고 할 수 있다.
일 실시 예에서 타임스탬프 타입 정보는 타임라인 컴포넌트 액세스 유닛과 연관된 서비스 또는 컨텐트 컴포넌트의 디코딩 시점을 나타내는 값이 설정될 수 있다. 구체적으로 컨텐트 컴포넌트의 디코딩 시점은 디코딩 타임스탬프(decoding timestamp)라고 할 수 있다. 구체적인 일 실시 예에서, 방송 전송 장치는 타임스탬프 타입 정보를 해당 정보가 디코딩 시점을 나타내는 경우 0x00으로 설정할 수 있다.
또 다른 실시 예에서 타임스탬프 타입 정보는 타임라인 컴포넌트 액세스 유닛과 연관된 서비스 또는 컨텐트 컴포넌트의 재생시점을 나타내는 값이 설정될 수 있다. 구체적으로 컨텐트 컴포넌트의 재생 시점은 프리젠테이션 타임스탬프(Presentation timestamp)라고 할 수 있다. 구체적인 일 실시 예에서, 방송 전송 장치는 타입스탬프 타입 정보를 해당 정보가 프리젠테이션 시점을 나타내는 경우 0x01로 설정할 수 있다.
한편, 구체적인 실시 예에서 timestamp_type 필드는 1비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 컴포넌트 액세스 유닛의 타임스탬프 포맷 정보를 포함할 수 있다. 상술한 정보를 timestamp_format 필드라고 할 수 있다.
일 실시 예에서 타임스탬프 포맷 정보는 타임라인 컴포넌트 액세스 유닛이 포함하는 타임스탬프가 미디어 타임(Media time)의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 장치는 timestamp_format 필드를 0x00으로 설정하여 해당 액세스 유닛의 타임스탬프 포맷이 미디어 타임 포맷임을 나타낼 수 있다.
또 다른 실시 예에서 타임스탬프 포맷 정보는 타임라인 컴포넌트 액세스 유닛에 포함된 타임스탬프가 네트워크 타임 프로토콜(Network time protocol(NPT))의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 장치는 timestamp_format 필드를 0x01으로 설정하여 해당 액세스 유닛의 타임 스탬프 포맷이 NPT 포맷임을 나타낼 수 있다.
또 다른 실시 예에서 타임스탬프 포맷 정보는 타임라인 컴포넌트 액세스 유닛이 포함하는 타임스탬프가 프리시젼 타임 프로토콜(precision time protocol(PTP))의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 장치는 timestamp_format 필드를 0x02으로 설정하여 해당 액세스 유닛의 타임 스탬프 포맷이 PTP 포맷임을 나타낼 수 있다.
또 다른 실시 예에서 타임스탬프 포맷 정보는 타임라인 컴포넌트 액세스 유닛이 포함하는 타임스탬프가 타임코드(timecode)의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 정치는 timestamp_format 필드를 0x03으로 설정하여 해당 액세스 유닛의 타임 스탬프 포맷이 타임코드 포맷임을 나타낼 수 있다. 한편, 구체적인 실시 예에서 timestamp_format 필드는 4비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 컴포넌트 액세스 유닛이 포함하는 정보와 연관된 서비스 또는 컨텐트의 컴포넌트에 대한 위치 정보를 포함할 수 있다. 상술한 정보를 location 필드라고 할 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 상술한 위치정보의 길이를 나타내는 정보를 포함할 수 있다. 위치정보 길이를 나타내는 정보를 location_length 필드라고 할 수 있다. 구체적인 실시 예에서 location_length 필드는 8비트일 수 있다.
또한 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 매칭의 기준이 될 수 있는 기본 타임라인의 타임스탬프 포맷 버전 정보를 포함할 수 있다. 상술한 정보를 origin_timestamp_version 필드라고 할 수 있다.
일 실시 예에서 origin_timestamp_version 필드가 0으로 설정되면, 타임스탬프 포맷이 32비트 포맷을 가진다는 것을 나타낼 수 있다. 또 다른 일 실시 예에서 origin_timestamp_version 필드가 1로 설정되면, 타임스탬프 포맷이 64비트 포맷을 가진다는 것을 나타낼 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 기본 타임라인의 타임스탬프 타입 정보를 포함할 수 있다. 상술한 정보를 origine_timestamp_type 필드라고 할 수 있다.
일 실시 예에서 origine_timestamp_type 필드는 기본 타임라인과 연관된 서비스 또는 컨텐트 컴포넌트의 디코딩 시점을 나타내는 값이 설정될 수 있다. 구체적으로 컨텐트 컴포넌트의 디코딩 시점은 디코딩 타임스탬프(decoding timestamp)라고 할 수 있다. 구체적인 일 실시 예에서, 방송 전송 장치는 해당 정보가 디코딩 시점을 나타내는 경우, origine_timestamp_type 필드를 0x00으로 설정할 수 있다.
또 다른 실시 예에서 origine_timestamp_type 필드는 기본타임라인과 연관된 서비스 또는 컨텐트 컴포넌트의 재생시점을 나타내는 값이 설정될 수 있다. 구체적으로 컨텐트 컴포넌트의 재생 시점은 프리젠테이션 타임스탬프(Presentation timestamp)라고 할 수 있다. 구체적인 일 실시 예에서, 방송 전송 장치는 해당 정보가 프리젠테이션 시점을 나타내는 경우, origine_timestamp_type 필드를 0x01로 설정할 수 있다.
본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 기본 타임라인에 대한 타임스탬프 포맷을 나타내는 정보를 포함할 수 있다. 상술한 정보를 origin_timestamp_format 필드라고 할 수 있다.
일 실시 예에서 origin_timestamp_format 필드는 기본 타임라인의 타임스탬프가 미디어 타임(Media time)의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 장치는 origin_timestamp_format 필드를 0x00으로 설정하여 해당 기본 타임라인의 타임스탬프 포맷이 미디어 타임 포맷임을 나타낼 수 있다.
또 다른 실시 예에서 origin_timestamp_format 필드는 기본 타임라인의 타임스탬프가 네트워크 타임 프로토콜(Network time protocol(NPT))의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 장치는 origin_timestamp_format 필드를 0x01으로 설정하여 해당 기본 타임라인의 타임 스탬프 포맷이 NPT 포맷임을 나타낼 수 있다.
또 다른 실시 예에서 origin_timestamp_format 필드는 기본 타임라인의 타임스탬프가 프리시젼 타임 프로토콜(precision time protocol(PTP))의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 장치는 timestamp_format 필드를 0x02으로 설정하여 해당 기본 타임라인의 타임스탬프 포맷이 PTP 포맷임을 나타낼 수 있다.
또 다른 실시 예에서 origin_timestamp_format 필드는 기본 타임라인의 타임스탬프가 타임코드(timecode)의 포맷임을 나타낼 수 있다. 구체적인 실시 예에서 방송 전송 정치는 origin_timestamp_format 필드를 0x03으로 설정하여 해당 기본 타임라인의 타임 스탬프 포맷이 타임코드 포맷임을 나타낼 수 있다.
또한 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 매핑의 기준이 될 수 있는 기본 타임라인과 연관된 서비스 및 컨텐트 컴포넌트의 위치 정보를 포함하고 있는지 여부를 나타내는 정보를 포함할 수 있다. 상술한 정보를 origin_location_flag 필드라고 할 수 있다. 일 실시 예에서 origin_location_flag 필드가 0이외의 값으로 설정되는 경우 timeline AU는 origin_location_length 필드 및 origin_location 필드 중 적어도 어느 하나를 포함할 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 기본 타임라인과 연관된 서비스 또는 컨텐트에 대한 위치 정보를 포함할 수 있다. 상술한 정보는 origin_location 필드라고 할 수 있다. 구체적인 일 실시 예에서 origin_location 필드에 포한된 정보는 IP 주소, 포트 넘버 또는 URI 형태일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 기본 타임라인과 연관된 서비스 또는 컨텐트에 대한 위치 정보의 길이 정보를 포함할 수 있다. 상술한 정보를 origin_location_length 필드라고 할 수 있다. 구체적인 실시 예에서 origin_location_length 필드는 8비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 타임라인 매핑의 기준이 되는 기본 타임라인이 미디어 타임의 형태인 경우, 사용 가능한 타임 스케일(time scale)의 정보를 포함할 수 있다. 상술한 정보를 origin_timescale 필드라고 할 수 있다. 예를 들면, MPEG-2 TS의 경우 타임스케일은 9000Hz를 나타낼 수 있다. 구체적인 실시 예에서 origin_timescale 필드는 32비트일 수 있다.
또한, 본 발명의 일 실시 예에서 타임라인 시그널링 테이블은 기본 타임라인 상의 미디어 타임 정보를 포함할 수 있다. 상술한 정보를 origin_media_time 필드라고 할 수 있다. 한편, origin_media_time 필드는 origin_timestamp_type에 따라 의미하는 바가 달라질 수 있다. 예를 들어 origin_timestamp_type이 PTS를 의미하는 경우, origin_media_time 필드는 재생 시점을 나타낼 수 있다. 또 다른 예를 들어 origin_timestamp_type이 DTS를 의미하는 경우, origin_media_time 필드는 디코딩 시점을 나타낼 수 있다. 구체적인 실시 예에서 origin_media_time 필드는 origin_timestamp_version 필드가 0으로 설정된 경우 32비트일 수 있으며, origin_timestamp_version 필드가 1로 설정된 경우 64비트일 수 있다.
또한 본 발명의 일 실시 예에서, 타임라인 시그널링 테이블은 기본 타임라인의 타임스탬프 정보를 포함할 수 있다. 상술한 정보를 origin_timestamp 필드라고 할 수 있다. 기본 타임라인 타임스탬프 정보는 origin_timestamp_format 필드 값에 따라 서로 다른 포맷의 타임 스탬프를 나타낼 수 있다. 또한 origin_timestamp_type 필드 값에 따라 기본 타임라인 타임스탬프 정보 가 서로 다른 의미를 나타낼 수 있다. 예를 들면 origin_timestamp_type 필드가 PTS를 시그널링하는 경우 기본 타임라인 타임스탬프 정보는 재생 시간을 나타낼 수 있다.
예를 들면, origin_timestamp_type 필드가 DTS를 나타내며, origin_timestamp_format 필드가 0x01인 경우, 해당 origin_timestamp 필드는 NTP로 표현된 디코딩 시점을 나타낼 수 있다. 구체적인 실시 예에서 origin_timestamp 필드는 origin_timestamp_version 필드가 0인 경우 32비트일 수 있으며, origin_timestamp_version 필드가 1인 경우 64비트일 수 있다.
일 실시 예에서 origin_timestamp_format 필드가 reserved를 나타내는 경우 timeline AU는 private_data_length 필드 및 private_data_bytes() 필드 중 적어도 어느 하나를 포함할 수 있다.
private_data_length 필드는 private_data_bytes() 필드의 바이트 단위의 길이를 나타낼 수 있다. 구체적인 실시 예에서 private_data_length 필드는 16비트일 수 있다.
private_data_bytes() 필드는 private_data_length 필드가 나타내는 길이만큼 privately를 정의하거나, 추후 확장 내용을 포함할 수 있다.
도 96은 전송 패킷의 페이로드 데이터에 하나의 메타데이터가 패킷타이징된 페이로드 데이터의 구성을 나타낸다. 일 실시 예에서 페이로드 데이터는 메타데이터를 포함할 수 있으며, 메타데이터는 미디어 스트림 관련 타임라인 데이터를 포함할 수 있다. 또한 일 실시 예에서 방송 전송 장치가 전송 프로토콜로 고정 길이의 패킷을 사용하는 경우 페이로드 데이터는 패딩 비트를 추가적으로 포함할 수 있다.
도 97은 전송 패킷의 페이로드 데이터가 타임라인에 대한 메타데이터를 포함하는 경우의 일 실시 예를 나타낸다.
도 97에 도시된 바와 같이 일 실시 예에서 페이로드 헤더는 F 필드, Priority 필드 및 Type 필드 중 적어도 하나를 포함할 수 있다.
일 실시 예에서, 방송 전송 장치는 F 필드를 페이로드 내에 에러가 존재하지 않으며, syntax 위반도 없음을 나타내는 값으로 설정할 수 있다. 구체적으로 방송 전송 장치는 F 필드를 0으로 설정할 수 있다. 또한 방송 전송 장치는 Priority 필드를 페이로드 데이터가 미디어 파일 구성의 중요한 데이터를 모두 포함하는 바 가장 높은 우선순위를 나타내는 값으로 설정할 수 있다. 구체적으로 방송 전송 장치는 Priority 필드를 0x00으로 설정될 수 있다. 또한 방송 전송 장치는 Type 필드를 페이로드 내에 타임라인 정보의 메타데이터를 포함하는 정보를 나타내는 값으로 설정할 수 있다. 구체적으로 방송 전송 장치는 Type 필드를 0x03으로 설정할 수 있다. 또한 메타데이터는 전술한 신택스를 포함할 수 있다.
도 98는 하나의 전송 패킷에 다수의 메타데이터가 패킷타이징된 경우를 나타낸다.
도 98에 도시된 바와 같이 하나의 전송 패킷이 다수의 메타데이터를 포함하는 경우를 어그리게이션 패킷(Aggregation packet)이라고 할 수 있다. 일 실시 예에서 페이로드 데이터는 복수의 어그리게이션 유닛 을 포함할 수 있다.
일 실시 예에서 어그리게이션 유닛은 메타데이터의 길이를 나타내는 정보를 포함할 수 있다. 또 다른 실시 예에서 어그리게이션 유닛은 메타에디어 헤더 필드가 별도로 존재하는 경우, 메타데이터 헤더 필드 및 메타데이터 필드 길이의 합을 나타내는 정보를 포함할 수 있다. 상술한 정보들은 metadata length 필드라고 할 수 있다.
도 99은 하나의 전송 패킷이 여러 개의 타임라인 정보를 포함하는 경우를 나타낸다. 구체적으로 하나의 미디어 스트림에 관련하여 각각 기준이 다른 복수 개의 타임라인 정보를 하나의 전송 패킷이 포함하고 있는 경우를 나타낸다. 일 실시 예에서 전송 패킷는 페이로드 헤더를 포함할 수 있으며, 페이로드 헤더의 내용은 도 98의 내용과 같다.
또한, 일 실시 예에서 페이로드 데이터는 두 개의 어그리게이션 유닛을 포함할 수 있다. 그러나 페이로드 데이터가 포함하는 어그리게이션 유닛의 개수는 2개 이상이 될 수도 있다.
일 실시 예에서 각각의 어그리게이션 유닛은 앞서 도시된 바와 동일하게 metadata length 필드, metadata header 필드 및 타임라인 정보를 포함하는 메타데이터 필드 중 적어도 어느 하나를 포함할 수 있다.
그러나, 도 99에 도시된 제1 어그리게이션 유닛은 제1 타임라인을 포함하는 메타데이터 필드를 포함할 수 있으며, 제2 어그리게이션 유닛은 제2 타임라인을 포함하는 메타데이터 필드를 포함할 수 있다. 구체적인 실시 예에서 각각의 타임라인은 서로 다른 기준에 기반한 데이터를 가질 수 있다. 예를 들면 제1 타임라인 은 미디어 타임에 기반한 데이터를 가지고, 제2 타임라인은 NTP에 기반한 데이터를 가질 수 있다.
도 100는 하나의 메타데이터를 복수개의 전송 패킷에 나누어 패킷타이징한 패킷 페이로드를 나타낸다.
일 실시 예에서 하나의 메타데이터의 길이가 전송 패킷의 길이보다 큰 경우가 있을 수 있으며, 이 경우 방송 전송 장치는 해당 메타데이터를 여러 개의 전송 패킷에 나누어 전송할 수 있다. 도 102에 도시된 바와 같이 전송 패킷은 페이로드 헤더, 메타데이터 프래그먼트 헤더 및 메타데이터 프래그먼트 중 적어도 하나를 포함할 수 있다. 추가적으로 전송 프로토콜이 고정 길이의 패킷을 사용하는 경우 전송 패킷은 패딩 비트를 포함할 수도 있다.
도 100에서 도시된 바와 같이, 일 실시 예에서 메타데이터 프래그먼트 헤더는 해당 전송 패킷의 해당 전송 패킷의 페이로드 데이터에 포함된 메타데이터 프래그먼트가 전체 메타데이터의 시작 부분을 포함하고 있는지 여부를 나타내는 정보를 포함할 수 있다. 구체적으로 시작 부분의 데이터는 전체 미디어 데이터의 첫 비트를 포함하는 전체 데이터의 일부일 수 있다. 상술한 정보는 start bit 필드라고 할 수 있다. 구체적인 실시 예에서 start bit 필드는 1비트일 수 있다. 일 실시 예에서 방송 전송 장치는 해당 전송 패킷이 포함하고 있는 메타데이터 프래그먼트가 전체 메타데이터의 시작 부분을 포함하고 있는 경우에 start bit를 1로 설정할 수 있다.
또 다른 일 실시 예에서 메타데이터 프래그먼트 헤더는 해당 전송 패킷의 해당 전송 패킷의 페이로드 데이터에 포함된 메타데이터 프래그먼트가 전체 메타데이터의 끝 부분을 포함하고 있는지 여부를 나타내는 정보를 포함할 수 있다. 구체적으로 끝 부분의 데이터는 전체 미디어 데이터의 마지막 비트를 포함하는 전체 데이터의 일부일 수 있다. 상술한 정보는 end bit 필드라고 할 수 있다. 구체적인 실시 예에서 end bit 필드는 1비트일 수 있다. 일 실시 예에서 방송 전송 장치는 해당 전송 패킷이 포함하고 있는 메타데이터 프래그먼트가 전체 메타데이터의 끝 부분을 포함하고 있는 경우에 end bit를 1로 설정할 수 있다.
또 다른 실시 예에서 메타데이터 헤더는 메타데이터 타입을 나타내는 정보를 포함할 수 있다. 상술한 정보는 metadata type 필드라고 할 수 있다. 구체적인 실시 예에서 메타데이터 타입이 해당 메타데이터 프래그먼트가 타임라인 정보를 포함하고 있음을 나타낼 수 있다. 이 경우 방송 전송 장치는 metadata type 필드를 0x00으로 설정할 수 있다. 또 다른 실시 예에서 메타데이터 타입이 해당 메타데이터 프래그먼트가 라벨링 관련 메타데이터를 포함하고 있음을 나타낼 수 있다. 이 경우 방송 전송 장치는 metadata type 필드를 0x01로 설정할 수 있다. 또한 구체적인 실시 예에서 metadata type 필드는 5비트일 수 있다.
도 101는 메타데이터 프래그먼트 헤더의 또 다른 실시 예를 나타낸다. 여기에서 도 100와 동일한 부분의 설명은 생략한다.
본 발명의 일 실시 예에서 메타데이터 프래그먼트 헤더는 해당 패킷 페이로드에 포함된 메타데이터 프래그먼트의 순서를 나타내는 정보를 포함할 수 있다. 상술한 정보는 Fragmentation number 필드라고 할 수 있다. 방송 수신 장치(100)는 패킷 페이로드에 포함된 메타데이터 프래그먼트 순서 정보에 기초하여 해당 패킷이 몇번째의 메타데이터를 포함하고 있는지 판단할 수 있다.
도 102은 본 발명의 일 실시 예에 따른 방송 수신 장치가 방송 패킷을 수신하는 동작을 보여준다.
방송 수신 장치(100)의 제어부(150)는 전술한 단계 S205에서 페이로드에 포함된 데이터가 미디어 데이터가 아니라고 판단한 경우, 하나의 전송 패킷에 전체 메타데이터가 포함되어 있는지 여부를 판단한다(S301). 구체적으로, 제어부(150)는 페이로드 헤더 정보로부터 페이로드에 포함된 데이터가 미디어 데이터가 아닌 메타데이터임을 판단할 수 있다. 그리고 제어부(150)는 해당 메타데이터 전체가 하나의 전송 패킷에 모두 포함되어 전송된 것인지 여부를 판단한다. 상술한 바와 같이 하나의 전송 패킷에 하나 또는 복수의 서로 다른 메타데이터가 포함될 수 있다. 또는 하나의 메타데이터가 나뉘어 복수의 서로 다른 전송 패킷에 포함될 수 있다.
본 발명의 일 실시 예에서, 방송 수신 장치(100)의 제어부(150)가 하나의 전송 패킷에 전체 메타데이터가 포함되어 있다고 판단한 경우, 제어부(150)는 하나의 패킷 페이로드로부터 메타데이터를 추출한다(S303). 구체적으로 제어부(150)는 페이로드 헤더를 추출하고, 추출된 페이로드 헤더에 기초하여 메타데이터를 추출한다. 일 실시 예에서 제어부(150)는 하나의 패킷 페이로드에서 하나의 메타데이터를 추출할 수 있다. 또 다른 실시 예에서 제어부(150)는 하나의 패킷 페이로드에서 복수의 메타데이터를 추출할 수 도 있다. 본 발명의 또 다른 실시 예에서, 방송 수신 장치(100)의 제어부(150)가 하나의 메타데이터가 복수의 전송 패킷에 나뉘어 포함되어 있다고 판단할 수 있다. 이 경우, 제어부(150)는 복수의 패킷 페이로드로부터 메타데이터를 추출한다(S305). 구체적인 실시 예에서 하나의 메타데이터가 복수의 전송 패킷에 나뉘어 패킷타이징될 수 있다. 방송 수신 장치(100)의 제어부(150)는 패킷 페이로드로부터 메타데이터 시그널링 데이터를 획득한다. 그리고 제어부(150)는 획득한 시그널링 데이터에 기초하여 복수의 패킷 페이로드로부터 메타데이터를 추출할 수 있다.
방송 수신 장치(100)의 제어부(150)는 추출한 메타데이터에 기초하여 컨텐트를 제공한다(S307). 구체적인 실시 예에서 제어부(150)는 메타데이터로부터 컨텐트의 재생 또는 디코딩 시간 정보를 획득할 수 있다. 또 다른 실시 예에서 제어부(150)는 메타데이터로부터 컨텐트를 설명하는 정보를 획득할 수도 있다.
도 103은 방송망으로는 RTP 프로토콜을 이용하여 비디오 스트림을 전송하고 인터넷망을 통해서는 파일 포맷 기반의 미디어 데이터를 이용하여 비디오 스트림을 전송하는 경우를 나타낸다. 이 경우 방송 수신 장치(100)는 타임라인 관련 메타데이터를 포함하는 RTP 패킷 혹은 IP/UDP 패킷을 수신한 후 RTP 프로토콜 기반 비디오 스트림과 DASH 기반 비디오 스트림 간의 타임라인을 매칭시켜 연관된 스트림간의 복호화 및 재생을 가능하게 할 수 있다.
상술한 바와 같이 종래의 방송 전송 장치는 전송 패킷에 포함된 데이터(또는 오브젝트)의 재생과 관련된 시간 정보를 페이로드에 실어 전송하였다. 또는 방송 전송 장치는 시간 정보를 전송하기 위한 별도의 시그널링을 전송하였다. 종래와 같은 방법의 경우, 별도의 전송 패킷 또는 패킷 페이로드에 시간 정보를 실어 패킷 헤더의 용량 또는 전송 패킷의 용량이 상대적으로 작아지는 장점이 있었다. 그러나, 종래 방법의 경우, 전송하고자 하는 데이터와 별도의 패킷으로 시간 정보를 전송하여 정확하고 빠른 동기화면에서는 효율이 떨어질 수 있었다.
반면에, 본 발명의 일 실시예는 실시간 컨텐트를 지원하기 위한 전송 패킷의 패킷 헤더에 해당 패킷의 디코딩 또는 재생과 관련된 시간 정보를 포함시킨다. 따라서, 해당 패킷의 시간 정보가 해당 패킷의 헤더에 포함되어 있는 바, 종래 방법에 비하여 상대적으로 정확하고 빠른 동기화가 가능하다. 특히, 본 발명의 일 실시예에서는 상술한 디코딩 또는 재생과 관련된 시간 정보를 패킷 헤더내 확장된 헤더(Extended Header)에 설정하여 전송 패킷을 패킷타이징하는 내용을 제안한다. 여기에서 확장된 헤더는 필수적이지 않거나, 크기 변환이 가능한 선택적인 헤더 필드를 포함하는 패킷 헤더의 일부일 수 있다. 또한, 전송 패킷은 오브젝트를 기초로 하여 생성될 수 있으며, 따라서, 오브젝트는 전송 패킷을 통해 전송하고자하는 대상이 될 수 있다. 오브젝트는 세션에 포함되어 전송될 수 있다.
도 104은 본 발명의 일 실시 예에 따른 전송 패킷의 구성을 나타낸다. 앞서 도시된 전송 패킷은 신뢰성 있는 데이터 전송을 지원하는 전송 프로토콜을 이용할 수 있다. 구체적인 실시 예에서 신뢰성 있는 데이터 전송 프로토콜은 비 동기 계층화 코딩(Asynchronous Layered Coding(ALC))일 수 있다. 또 다른 실시 예에서 신뢰성 있는 데이터 전송 프로토콜은 계층화 코딩 전송(Layered Coding Transport(LCT))일 수 있다.
본 발명의 일 실시 예에 따른 패킷 헤더는 패킷의 버전 정보를 포함할 수 있다. 구체적으로 해당 전송 프로토콜을 이용하는 전송 패킷의 버전 정보를 포함할 수 있다. 구체적인 실시 예에서 상술한 정보는 V 필드일 수 있다. 또한, V 필드는 4비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 혼잡 제어(Congestion control)를 위한 정보의 길이와 연관된 정보를 포함할 수 있다. 구체적으로 혼잡 제어를 위한 정보의 길이와 혼잡 제어를 위한 정보의 길이의 기본 단위에 곱해지는 연관된 배수 정보를 포함할 수 있다.
구체적인 실시 예에서 상술한 정보는 C 필드일 수 있다. 일 실시 예에서 C 필드는 0x00으로 설정될 수 있으며, 이 경우, 혼잡 제어를 위한 정보의 길이가 32비트임을 나타낸다. 또 다른 실시 예에서 C 필드는 0x01로 설정될 수 있으며, 이 경우, 혼잡 제어를 위한 정보의 길이가 64비트일 수 있다. 또 다른 실시 예에서 C 필드는 0x02로 설정될 수 있으며, 이 경우, 혼잡 제어를 위한 정보의 길이가 96비트일 수 있다. 또 다른 실시 예에서 C 필드는 0x03으로 설정될 수 있으며, 이 경우, 혼잡 제어를 위한 정보의 길이가 128비트일 수 있다. C 필드는 2비트일 수 있다.
또한, 본 발명의 일 실시 예에서 따른 패킷 헤더는 프로토콜에 특화된 정보를 포함할 수 있다. 구체적인 실시 예에서 상술한 정보는 PSI 필드일 수 있다. 또한 PSI 필드는 2비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 전송 세션의 식별 정보를 나타내는 필드의 길이와 연관된 정보를 포함할 수 있다. 구체적으로 전송 세션의 식별 정보를 나타내는 필드의 배수 정보를 포함할 수 있다. 상술한 정보는 S 필드라고 할 수 있다. S 필드는 1비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 전송 오브젝트의 식별 정보를 나타내는 필드의 길이와 연관된 정보를 포함할 수 있다. 구체적으로 전송 오브젝트의 식별 정보를 나타내는 필드의 기본 길이에 곱해지는 배수 정보를 포함할 수 있다. 상술한 정보는 O 필드라고 할 수 있다. O 필드는 2비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 전송 세션의 식별 정보를 나타내는 필드의 길이와 연관된 추가적인 정보를 포함할 수 있다. 그리고, 패킷 헤더는 전송 오브젝트의 식별 정보를 나타내는 필드의 길이와 연관된 추가적인 정보를 포함할 수 있다. 추가적인 정보는 하프-워드(half-word)의 추가 여부 정보일 수 있다. 전송 패킷의 식별 정보를 나타내는 필드 및 전송 오브젝트의 식별 정보를 나타내는 필드는 존재하여야 하는바, S 필드와 H 필드 또는 O 필드와 H 필드는 동시에 0(Zero)를 나타낼 수 없다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 세션이 종료되거나, 종료가 임박했음을 나타내는 정보를 포함할 수 있다. 상술한 정보는 A 필드라고 할 수 있다. 구체적인 실시 예에서 A 필드가 세션의 종료 또는 종료 임박을 나타내는 경우 1로 설정될 수 있다. 따라서, 통상적인 경우, A 필드는 0으로 설정될 수 있다. 방송 전송 장치가 A 필드를 1로 설정하는 경우, 세션을 통해 마지막 패킷이 전송되고 있음을 나타낼 수 있다. A 필드가 1로 설정된 경우, 방송 전송 장치는 해당 패킷을 따르는 모든 패킷의 전송이 종료될 때까지 A 필드를 1로 유지하여야 한다. 또한, 방송 수신 장치는 A 필드가 1로 설정된 경우, 방송 전송 장치가 세션을 통한 패킷 전송을 곧 중단할 것이라는 것을 인식할 수 있다. 다시 말해서, 방송 수신 장치는 A 필드가 1로 설정된 경우 세션을 통한 더 이상의 패킷 전송이 없는 것으로 인식할 수 있다. 일 실시 예에서, A 필드는 1비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 오브젝트의 전송이 종료되거나, 종료가 임박했음을 나타내는 정보를 포함할 수 있다. 상술한 정보를 B 필드라고 할 수 있다. 구체적인 실시 예에서 방송 전송 장치는 오브젝트의 전송 종료가 임박한 경우 B 필드를 1로 설정할 수 있다. 따라서, 통상적인 경우 B 필드는 0으로 설정될 수 있다. 전송 오브젝트를 식별하는 정보가 전송 패킷에 존재하지 않는 경우, B 필드는 1로 설정될 수 있다. 그리고, 아웃-오브-밴드(out-of-band) 정보에 의해 식별된 세션 내의 오브젝트 전송 종료가 임박했음을 나타낼 수 있다. 또한, B 필드는 오브젝트를 위한 마지막 패킷이 전송되는 경우 1로 설정될 수 있다. 또한, B 필드는 오브젝트를 위한 마지막 수 초의 패킷이 전송되는 경우 1로 설정될 수 있다. 방송 전송 장치는 특정 오브젝트를 위한 패킷의 B 필드가 1로 설정된 경우, 해당 패킷을 뒤따르는 패킷의 전송이 종료될 때까지 B 필드를 1로 설정해야 한다. 방송 수신 장치(100)는 B 필드가 1로 설정되면, 방송 전송 장치가 오브젝트를 위한 패킷의 전송을 중단할 것이라는 것을 인식할 수 있다. 다시 말해서 방송 수신 장치(100)는 1로 설정된 B 필드로부터, 세션을 통한 더 이상의 오브젝트 전송이 없는 것으로 인식할 수 있다. 일 실시 예에서 B 필드는 1비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 헤더의 총 길이를 나타내는 정보를 포함할 수 있다. 상술한 정보는 HDR_LEN 필드 일 수 있다. HDR_LEN 필드는 32의 배수 비트일 수 있다. 구체적인 실시 예에서 HDR_LEN 필드가 5로 설정된 경우, 패킷 헤더의 총 길이는 32의 5배수인 160비트일 수 있다. 또한, HDR_LEN 필드는 8비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는, 해당 패킷에 포함된 페이로드의 인코딩 또는 디코딩과 관련된 정보를 포함할 수 있다. 상술한 정보는 Codepoint 필드라고 할 수 있다. 일 실시 예에서 Codepoint 필드는 8비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 혼잡 제어를 위한 정보를 포함할 수 있다. 상술한 정보는 Congestion Control Information(이하 CCI) 필드라고 할 수 있다. 구체인 실시 예에서, CCI 필드는 Current time slot index(CTSI) 필드, channel number 필드 및 packet sequence number 필드 중 적어도 어느 하나를 포함할 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 전송 세션의 식별을 위한 정보를 포함할 수 있다. 상술한 정보는 전송 세션 식별자(Transport Session Identifier(이하, TSI))일 수 있다. 또한, TSI 정보를 포함하는 패킷 헤더 내 필드를 TSI 필드라고 할 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 전송 세션을 통해 전송되는 오브젝트의 식별을 위한 정보를 포함할 수 있다. 상술한 정보는 전송 오브젝트 식별자(Transport Object Identifier(이하, TOI))일 수 있다. 또한, TOI 정보를 포함하는 패킷 해더 내 필드를 TOI 필드라고 할 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 추가적인 정보를 전송하기 위한 정보를 포함할 수 있다. 상술한 정보는 Header Extension 필드라고 할 수 있다. 일 실시 예에서 추가적인 정보는 전송 오브젝트의 재생과 관련된 시간 정보일 수 있다. 또 다른 실시 예에서 추가적인 정보는 전송 오브젝트의 디코딩과 관련된 시간 정보일 수 있다.
또한, 본 발명의 일 실시 예에 따른 전송 패킷은 페이로드 식별 정보를 포함할 수 있다. 일 실시 예에서 식별 정보는 Forward Error Correction(FEC) scheme과 연관된 페이로드 식별 정보일 수 있다. 여기에서 FEC는 RFC 5109에 정의되어 있는 페이로드 포맷의 한 유형이다. FEC는 RTP 또는 SRTP에서 사용될 수 있다. 상술한 정보는 FEC Payload ID 필드라고 할 수 있다.
일 실시 예에서 FEC Payload ID 필드는 오브젝트의 소스 블락을 식별하기 위한 정보를 포함할 수 있다. 상술한 정보는 Source block number 필드 라고 할 수 있다. 예를 들면 Source block number 필드가 N으로 설정되면, 오브젝트 내 소스 블락은 0부터 N-1로 넘버링될 수 있다.
또 다른 일 실시 예에서 FEC Payload ID 필드는 특정 인코딩 심볼을 식별하기 위한 정보를 포함할 수 있다. 상술한 정보는 Encoding symbol ID 필드일 수 있다.
또한, 본 발명의 일 실시 예에서 전송 패킷은 페이로드 내 데이터를 포함할 수 있다. 상술한 데이터를 포함하고 있는 필드는 Encoding symbol(s) 필드라고 할 수 있다. 일 실시 예에서, 방송 수신 장치(100)는 Encoding symbol(s) 필드를 추출하여 오브젝트를 재구성할 수 있다. 구체적으로 패킷 페이로드를 통해 전송되는 소스 블락으로부터 Encoding symbol(s) 필드내 데이터가 생성될 수 있다.
도 105은 본 발명의 일 실시 예에 따른 패킷 헤더의 구성을 나타낸다.
실시간 컨텐트의 전송을 지원하기 위해서는 방송 수신 장치(100)가 수신한 전송 패킷에 패킷의 속성 정보 및 디코딩 또는 재생과 관련된 타이밍 정보가 포함되는 것이 효과적일 수 있다. 따라서 상술한 과제를 해결하기 위하여, 앞서 도시된 바와 같이 패킷 헤더가 구성될 수 있다.
도 105의 패킷 헤더는 도 104의 패킷 헤더와 대부분의 구성이 동일하다. 따라서, 동일한 부분의 설명은 생략한다.
본 발명의 일 실시 예에 따른 패킷 헤더는 전송을 위한 오브젝트의 타입을 나타내는 정보를 포함할 수 있다. 상술한 정보는 type 필드라고 할 수 있다. type 필드는 2비트일 수 있다.
구체적인 실시 예에서 type 필드는 전송을 위한 오브젝트의 타입이 레귤러 파일(regular file)임을 나타낼 수 있다. 여기에서 레귤러 파일은 ISO BMFF 기반의 미디어 파일일 수 있다. 구체적으로 레귤러 파일은 미디어 파일을 ISO BMFF 형식으로 인켑슐레이션한 것일 수 있다. 이 경우, type 필드는 01(2)으로 설정될 수 있다. 또 다른 실시 예에서 type 필드는 전송을 위한 오브젝트의 타입이 HTTP entity 타입임을 나타낼 수 있다. 이 경우, type 필드는 10(2)으로 설정될 수 있다. 또 다른 실시 예에서 type 필드는 전송을 위한 오브젝트의 타입이 오디오 액세스 유닛(Audio access unit) 또는 비디오 액세스 유닛(Video access unit)임을 나타낼 수 있다. 또한, type 필드는 오브젝트 타입이 네트워크 관념적 계층(network abstract layer, NAL) 유닛임을 나타낼 수도 있다. 이 경우, type 필드는 11(2)으로 설정될 수 있다.
또한 본 발명의 일 실시 예에 따른 패킷 헤더는 해당 전송 패킷이 전송 오브젝트의 첫 부분 또는 끝 부분을 포함하고 있음을 나타낼 수 있다. 전송 패킷이 전송 오브젝트의 첫 부분 또는 끝 부분을 포함함을 나타내는 정보는 마커 비트 (marker bit)일 수 있다. 구체적인 실시 예에서 마커 비트는 M 필드일 수 있다. 구체적으로 M 필드는 type 필드의 값에 따라 다르게 해석될 수 있다. 예를 들면, 전송을 위한 오브젝트의 타입이 파일인 경우, 해당 전송 패킷이 파일의 끝 부분을 포함하고 있음을 나타낼 수 있다. 여기에서 끝 부분은 파일의 마지막 비트를 포함하고 있는 부분이다. 또 다른 예를 들면, 전송을 위한 오브젝트의 타입이 AV 데이터(Audio or Video)인 경우, 해당 전송 패킷이 액세스 유닛의 처음 또는 마지막 비트를 포함하고 있음을 나타낼 수 있다.
도 106 내지 도 107은 시간 정보를 포함하는 확장된 헤더의 구성을 나타낸다. 도 106 내지 도 107에 도시된 확장된 헤더는 도 105에 도시된 헤더 확장 필드(Header Extension)포함될 수 있다.
도 106에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 확장된 헤더는 확장된 헤더의 타입 정보를 포함할 수 있다. 상술한 정보는 HET(Header Extension Type) 필드라고 할 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 확장된 헤더의 길이 정보를 포함할 수 있다. 상술한 정보는 HEL(Header Extension length)필드라고 할 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 방송 전송 장치의 현재 시간을 나타낼 수 있다. 다시 말해서, 확장된 헤더는 방송 전송 장치의 해당 패킷 전송 시간 정보를 포함할 수 있다. 예를 들면 방송 전송 장치는 서버일 수 있다. 구체적인 실시 예에서, 방송 전송 장치의 현재 시간을 나타내는 정보는 Sender Current Time(이하 SCT) 필드일 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 SCT 필드가 64비트인지 여부를 나타낼 수 있다. 구체적으로 확장된 헤더는 SCT 필드가 64비트로 구성되어 확장된 헤더에 포함되어 있는 지 여부를 나타낼 수 있다. 구체적인 실시 예에서, SCT 필드가 64비트인지 여부를 나타내는 정보는 SCT Hi 필드일 수 있다.
또한 일 실시 예에 따른 확장된 헤더는 SCT 필드가 32비트인지 여부를 나타낼 수 있다. 구체적으로 확장된 헤더는 SCT 필드가 32비트로 구성되어 확장된 헤더에 포함되어 있는지 여부를 나타낼 수 있다. 구체적인 실시 예에서, SCT 필드가 32비트인지 여부를 나타내는 정보는 SCT Low 필드일 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 전송을 위한 오브젝트의 예상되는 잔여 시간 정보를 포함할 수 있다. 상술한 정보는 Expected Residual Time(이하 ERT) 필드일 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 ERT 필드가 해당 패킷에 존재하는지 여부를 나타낼 수 있다. 해당 정보는 ERT flag 필드일 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 세션이 마지막으로 변화된 시간 정보를 포함할 수 있다. 상술한 정보는 SLC 필드일 수 있다.
또한, 일 실시 예에 따른 확장된 헤더는 SLC 필드가 해당 패킷에 존재하는지 여부를 나타낼 수 있다. 해당 정보는 SLC flag 필드일 수 있다.
또한 일 실시 예에 따른 확장된 헤더는 방송 전송 장치가 이용하는 전송 프로토콜에 따라 확장하여 사용할 수 있는 필드를 포함할 수 있다. 해당 필드는 PI-specific Use 필드일 수 있다.
도 107은 도 106의 확장된 헤더에 구성을 추가한 또 다른 실시 예에 따른 확장된 헤더를 나타낸다.
또 다른 실시 예에 따른 확장된 헤더는 패킷 페이로드에 포함된 데이터의 타이밍 정보를 포함할 수 있다. 상술한 정보는 Timestamp 필드일 수 있다. 예를 들어, Timestamp 필드는 패킷 페이로드에 포함된 데이터의 첫 바이트가 디코딩되는 시점에 대한 정보를 포함할 수 있다. 또 다른 예를 들면, Timestamp 필드는 데이터의 재생 시점에 대한 정보를 포함할 수 있다. 더하여, Timestamp 필드는 타임스케일 정보 또는 타임스케일에 기반한 타이밍 정보를 포함할 수도 있다. 여기에서 타임스케일 정보는 전송 오브젝트의 디코딩 또는 재생 시점에 대한 시간을 나타내는 단위일 수 있다. 타임스케일에 기반한 타이밍 정보인 경우, 방송 수신 장치는 Timestamp 필드의 값을 타임스케일을 곱하여 디코딩 또는 재생 시점에 대한 정보를 획득할 수 있다.
또 다른 실시 예에 따른 확장된 헤더는 Timestamp 필드의 포맷 정보를 포함할 수 있다. 상술한 정보는 TS format 필드일 수 있다. 구체적인 실시 예에서 TS format 필드는 전송 패킷에 포함된 타이밍 정보가 미디어 타임(media time)의 포맷임을 나타낼 수 있다. 미디어 타임은 임의의 미디어 타임라인에 따른 미디어 재생 시간일 수 있다. 이 경우, TS format 필드는 0x01로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 NTP(Network Time Protocol)의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x02로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 노말 재생 타임의 포맷임을 나타낼 수 있다. 노말 재생 타임의 포맷은 재생 시작 시점으로부터 상대적으로 표현되는 재생시간일 수 있으며 이는 시, 분, 초, 초이하 소수점 단위로 표현될 수 있다. 이 경우, TS format 필드는 0x03으로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 SMPTE time code의 포맷임을 나타낼 수 있다. SMPTE(Society of Motion Picture and Television Engineers) time code는 SMPTE에서 정의한 타임코드이다. 구체적으로, SMPTE 타임 코드는 SMPTE에서 비디오의 개별적인 프레임 라벨링을 위해 정의한 시간 정보 형식일 수 있다. 이 경우, TS format 필드는 0x04로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 90KHz 기반의 타이밍 정보임을 나타낼 수 있다. 이 경우, TS format 필드는 0x05로 설정될 수 있다.
또 다른 실시 예에 따른 확장된 헤더는 timestamp 필드의 구성을 나타낼 수 있다. 타이밍 정보의 구성을 나타내는 정보를 TS version 필드라고 할 수 있다. 예를 들면, TS version 필드는 timestamp 필드가 32비트임을 나타낼 수 있다. 이 경우, TS version 필드는 0으로 설정될 수 있다. 또 다른 예를 들면, TS version 필드는 timestamp 필드가 64비트임을 나타낼 수 있다. 이 경우, TS version 필드는 1로 설정될 수 있다.
도 108 내지 도 111은 본 발명의 또 다른 일 실시 예에 따른 확장된 헤더의 구성을 나타낸다. 구체적으로 도 108 내지 도 111에서 도시된 확장된 헤더 구조는 전송을 위한 오브젝트 타입 정보 및 타이밍 정보 중 적어도 하나를 포함할 수 있다. 또한, 해당 확장된 헤더 구조는 상술하였던 확장된 헤더 필드(Header extension)에 포함될 수 있다. 또한, 컨텐트를 전송하는 패킷 헤더의 일부로 사용될 수도 있다.
도 108에 도시된 바와 같이, 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조(EXT_OBJ_INFO)는 헤더 확장 부분의 타입 정보를 포함할 수 있다. 상술한 타입 정보는 HET 필드라고 할 수 있다. 또한 확장된 헤더 구조는 헤더 확장 부분의 길이 정보를 포함할 수 있다. 상술한 길이 정보는 HEL 필드라고 할 수 있다. 또한 확장된 헤더 구조는 전송 오브젝트의 타입 정보를 포함할 수 있다. 상술한 오브젝트 타입 정보는 Object type 필드라고 할 수 있다.
구체적인 실시 예에서 Object type 필드는 전송 오프젝트가 레귤러 파일의 타입임을 나타낼 수 있다. 여기에서 레귤러 파일은 ISO BMFF 기반의 미디어 파일일 수 있다. 구체적으로 레귤러 파일은 미디어 파일을 ISO BMFF 형식으로 인켑슐레이션한 것일 수 있다. 이 경우, Object type 필드는 0x01로 설정될 수 있다. 또 다른 실시 예에서 Object type 필드는 전송 오브젝트가 HTTP entity 타입임을 나타낼 수 있다. 이 경우, Object type 필드는 0x02로 설정될 수 있다. 또 다른 실시 예에서 Object type 필드는 전송 오브젝트가 오디오 데이터 타입임을 나타낼 수 있다. Object type 필드는 전송 오브젝트가 AAC를 기반으로 하는 오디오 데이터 타입임을 나타낼 수 있다. 이때, AAC를 기반으로 하는 오디오 데이터 타입은 AAC로 인코딩된 오디오 데이터일 수 있다. 이 경우, Object type 필드는 0x03으로 설정될 수 있다. 또 다른 실시 예에서 Object type 필드는 전송 오브젝트가 비디오 데이터임을 나타낼 수 있다. 구체적으로 Object type 필드는 전송 오브젝트가 H.264 타입임을 나타낼 수 있다. 이 경우, Object type 필드는 0x04로 설정될 수 있다. 또 다른 실시 예에서 Object type 필드는 전송 오브젝트가 HEVC 기반 비디오 데이터 타입임을 나타낼 수 있다. 이때, HEVC 기반 비디오 데이터 타입은 HEVC로 인코딩된 비디오 데이터일 수 있다. 이 경우, Object type 필드는 0x05로 설정될 수 있다. 또 다른 실시 예에서 Object type 필드는 전송 오브젝트가 ISO BMFF 기반의 파일 타입임을 나타낼 수 있다. 이 경우, Object type 필드는 0x06으로 설정될 수 있다. 또 다른 실시 예에서 Object type 필드는 전송 오브젝트가 메타데이터임을 나타낼 수 있다. 이 경우, Object type 필드는 0x07로 설정될 수 있다.
또한, 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조(EXT_OBJ_INFO)는 해당 전송 패킷이 전송 오브젝트의 첫 부분 또는 끝 부분을 포함하고 있음을 나타낼 수 있다. 전송 패킷이 전송 오브젝트의 첫 부분 또는 끝 부분을 포함함을 나타내는 정보는 마커 비트 (marker bit)일 수 있다. 구체적인 실시 예에서 마커 비트는 M 필드일 수 있다. M 필드는 Object type 필드에 따라 다르게 해석될 수 있다. 예를 들면, 전송을 위한 오브젝트의 타입이 파일인 경우, 해당 전송 패킷이 파일의 끝 부분을 포함하고 있음을 나타낼 수 있다. 여기에서 끝 부분은 파일의 마지막 비트를 포함하고 있는 부분이다. 또 다른 예를 들면, 전송을 위한 오브젝트의 타입이 AV 데이터(Audio or Video)인 경우, 해당 전송 패킷이 액세스 유닛의 처음 또는 마지막 비트를 포함하고 있음을 나타낼 수 있다.
또한, 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조(EXT_OBJ_INFO)는 패킷 페이로드에 포함된 데이터의 타이밍 정보를 포함할 수 있다. 상술한 정보는 Timestamp 필드일 수 있다. 예를 들어, Timestamp 필드는 패킷 페이로드에 포함된 데이터의 첫 바이트가 디코딩되는 시점에 대한 정보를 포함할 수 있다. 또 다른 예를 들면, Timestamp 필드는 데이터의 재생 시점에 대한 정보를 포함할 수 있다. 더하여, Timestamp 필드는 타임스케일 정보 또는 타임 스케일에 기반한 타이밍 정보를 포함할 수도 있다. 여기에서 타임스케일 정보는 전송 오브젝트의 디코딩 또는 재생 시점에 대한 시간을 나타내는 단위일 수 있다. 타임스케일에 기반한 타이밍 정보인 경우, 방송 수신 장치는 Timestamp 필드의 값을 타임스케일을 곱하여 디코딩 또는 재생 시점에 대한 정보를 획득할 수 있다.
도 109는 도 108의 확장된 헤더 구조에 일부 구성이 추가된 또 다른 실시 예를 나타낸다.
도 109에 도시된 바와 같이 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조는 해당 확장된 헤더 구조에 timestamp 필드가 존재하는지 여부를 나타낼 수 있다. Timestamp 필드의 존재 여부를 나타내는 정보는 TS flag 필드라고 할 수 있다. 구체적인 실시 예에서 TS flag 필드가 1로 설정된 경우, TS flag 필드는 해당 헤더 구조에 timestamp 필드가 존재함을 나타낼 수 있다.
또한, 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조는 Timestamp 필드의 포맷 정보를 포함할 수 있다. 상술한 정보는 TS format 필드일 수 있다. 구체적인 실시 예에서 TS format 필드는 전송 패킷에 포함된 타이밍 정보가 미디어 타임(media time)의 포맷임을 나타낼 수 있다. 미디어 타임은 임의의 미디어 타임라인에 따른 미디어 재생 시간일 수 있다. 이 경우, TS format 필드는 0x01로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 NTP(Network time protocol)의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x02로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 노말 재생 타임의 포맷임을 나타낼 수 있다. 노말 재생 타임의 포맷은 재생 시작 시점으로부터 상대적으로 표현되는 재생시간일 수 있으며 이는 시, 분, 초, 초이하 소수점 단위로 표현될 수 있다.이 경우, TS format 필드는 0x03으로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 SMPTE time code의 포맷임을 나타낼 수 있다. SMPTE time code는 SMPTE(Society of motion picture and television engineers)에서 정의한 타임코드이다. 이 경우, TS format 필드는 0x04로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 90KHz 기반의 타이밍 정보임을 나타낼 수 있다. 이 경우, TS format 필드는 0x05로 설정될 수 있다.
또한, 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조는 timestamp 필드의 구성을 나타낼 수 있다. 구체적으로 확장된 헤더의 구조는 timestamp 필드에 포함된 오브젝트 재생 또는 디코딩과 관련된 타이밍 정보의 구성을 나타낼 수 있다. 상술한 정보를 TS version 필드라고 할 수 있다. 예를 들면, TS version 필드는 timestamp 필드가 32비트임을 나타낼 수 있다. 이 경우, TS version 필드는 0으로 설정될 수 있다. 또 다른 예를들면, TS version 필드는 timestamp 필드가 64비트임을 나타낼 수 있다. 이 경우, TS version 필드는 1로 설정될 수 있다.
도 110는 도 108의 확장된 헤더 구조에 일부 구성이 추가된 또 다른 실시 예를 나타낸다.
도 110에 도시된 바와 같이 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조는 전송 오브젝트와 관련된 부가 정보를 포함할 수 있다. 구체적인 실시 예에서 확장된 헤더의 구조는 오브젝트의 위치 정보를 포함할 수 있다. 예를 들면, 오브젝트의 위치 정보는 ISO BMFF를 기반으로 하는 세그먼트의 URL 정보를 나타낼 수 있다. 구체적으로 오브젝트의 위치 정보는 ISO BMFF를 기반으로 하는 세그먼트를 다운로드 받을 수 있는 URL 정보를 나타낼 수 있다. 이 경우, 전송 오브젝트와 관련된 부가 정보는 Extension 필드라고 할 수 있다.
또한, 본 발명의 또 다른 실시 예에 따른 확장된 헤더의 구조는 해당 확장된 헤더 구조에 Extension 필드가 존재하는지 여부를 나타낼 수 있다. 이 경우, Extension 필드가 존재하는지 여부를 나타내는 정보는 Ext Flag 필드라고 할 수 있다.
도 111은 도 108의 새로운 헤더 확장 구조가 패킷 헤더의 일부로 사용된 일 실시 예를 나타낸다. 도 111에 도시된 바와 같이, 패킷 헤더의 일부가 전송 오브젝트의 타이밍 정보를 포함할 수 있다. 전송 오브젝트의 타이밍 정보를 포함하는 패킷 헤더의 일부는 EXT_MEDIA_TIME 필드일 수 있다.
EXT_MEDIA_TIME 필드는 패킷 페이로드에 포함된 데이터의 타이밍 정보를 포함할 수 있다. 상술한 정보는 Timestamp 필드일 수 있다. 예를 들어, Timestamp 필드는 패킷 페이로드에 포함된 데이터의 첫 바이트가 디코딩되는 시점에 대한 정보를 포함할 수 있다. 또 다른 예를 들면, Timestamp 필드는 데이터의 재생 시점에 대한 정보를 포함할 수 있다. 더하여, Timestamp 필드는 타임스케일 정보 또는 타임 스케일에 기반한 타이밍 정보를 포함할 수도 있다. 여기에서 타임스케일 정보는 전송 오브젝트의 디코딩 또는 재생 시점에 대한 시간을 나타내는 단위일 수 있다. 타임스케일에 기반한 타이밍 정보인 경우, 방송 수신 장치는 Timestamp 필드의 값을 타임스케일을 곱하여 디코딩 또는 재생 시점에 대한 정보를 획득할 수 있다.
또한, EXT_MEDIA_TIME 필드는 Timestamp 필드의 포맷 정보를 포함할 수 있다. 상술한 정보는 TS format 필드일 수 있다. 구체적인 실시 예에서 TS format 필드는 전송 패킷에 포함된 타이밍 정보가 미디어 타임(media time)의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x01로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 NTP(Network Time Protocol)의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x02로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 노말 재생 타임의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x03으로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 SMPTE time code의 포맷임을 나타낼 수 있다. SMPTE time code는 SMPTE(Society of motion picture and television engineers)에서 정의한 타임코드이다. 이 경우, TS format 필드는 0x04로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 90KHz 기반의 타이밍 정보임을 나타낼 수 있다. 이 경우, TS format 필드는 0x05로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타이밍 정보가 GPS time 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x06으로 설정될 수 있다.
또한, EXT_MEDIA_TIME 필드는 timestamp 필드의 구성을 나타낼 수 있다. 확장된 헤더의 구조는 timestamp 필드에 포함된 오브젝트 재생 또는 디코딩과 관련된 타이밍 정보의 구성을 나타낼 수 있다. 상술한 정보를 TS version 필드라고 할 수 있다. 예를 들면, TS version 필드는 timestamp 필드가 32비트임을 나타낼 수 있다. 이 경우, TS version 필드는 0으로 설정될 수 있다. 또 다른 예를 들면, TS version 필드는 timestamp 필드가 64비트임을 나타낼 수 있다. 이 경우, TS version 필드는 1로 설정될 수 있다.
또한, EXT_MEDIA_TIME 필드는 타이밍 정보와 관련된 추가적인 정보를 포함할 수 있다. 예를 들면, 매핑될 타이밍 정보와 연관된 데이터 정보가 포함될 수 있다. 타이밍 정보와 관련된 추가적인 정보는 Extension 필드라고 할 수 있다.
또한, EXT_MEDIA_TIME 필드는 Extension 필드의 구성에 대한 정보를 포함할 수 있다. 구체적으로 Extension 필드에는 다양한 정보가 포함될 수 있으며, 다양한 정보마다 플래그(flag)가 집합을 이루고 있을 수 있다. 이 경우, 플래그의 집합을 Ext Flags 필드라고 할 수 있다.
방송 수신 장치(100)가 방송 수신부를 통해 수신한 전송 오브젝트가 다른 형식 또는 다른 기준 시간을 가지는 타이밍 정보와 동기화가 필요할 수 있다. 구체적으로 방송 수신 장치(100)는 전송 오브젝트의 타이밍 정보와 다른 형식 또는 기준 시간을 가지는 동기화를 위한 기준이 되는 기본 타임라인(base timeline)에 전송 오브젝트의 타이밍 정보를 동기화해야 할 수 있다. 일 실시 예에서 동기화하는 타이밍 정보는 전송 오브젝트의 재생 타이밍일 수 있다. 또 다른 실시 예에서 동기화하는 타이밍 정보는 전송 오브젝트의 디코딩 타이밍일 수 있다. 이 경우, 방송 전송 장치는 다른 타이밍 정보와 전송 오브젝트의 타이밍 정보간의 매핑 관계에 대한 정보를 방송 수신 장치(100)에 전송해야 한다. 상술한 과제를 해결하기 위한 본 발명의 일 실시 예에서, 앞서 기재한 timeline_component_AU를 포함하는 메타데이터를 하나의 전송 오브젝트로 하여 전송할 수 있다.
상술한 과제를 해결하기 위한 또 다른 실시 예에서, 앞서 기재한 확장된 헤더는 전송 오브젝트의 타이밍 정보와 다른 별도의 매핑 정보를 포함할 수 있다. 구체적으로, 확장된 헤더(EXT_TIME_MAP)는 전송 오브젝트의 타임스탬프를 다른 timeline에 매핑하기 위한 정보를 포함할 수 있다. 예를 들면, 방송 수신 장치(100)는 제어부(150)를 통해 상술한 정보를 이용하여 패킷 페이로드의 재생 시간을 GPS 타임에 매핑할 수 있다. 이 경우, GPS 타임이 기본 타임라인일 수 있다.
도 112은 본 발명의 일 실시 예에 따른, 다른 타이밍 정보와의 매핑을 지원하기 위한 확장된 헤더의 구조를 나타낸다.
도 112에 도시된 바와 같이 확장된 헤더는 Timestamp 필드의 포맷 정보를 포함할 수 있다. 상술한 정보는 TS format 필드일 수 있다. 구체적인 실시 예에서 TS format 필드는 전송 패킷에 포함된 타임스탬프가 미디어 타임(media time)의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x01로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타임스탬프가 NTP(Network Time Protocol)의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x02로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타임스탬프가 노말 재생 타임의 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x03으로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타임스탬프가 SMPTE time code의 포맷임을 나타낼 수 있다. SMPTE time code는 SMPTE(Society of motion picture and television engineers)에서 정의한 타임코드이다. 이 경우, TS format 필드는 0x04로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타임스탬프가 90KHz 기반의 타임스탬프임을 나타낼 수 있다. 이 경우, TS format 필드는 0x05로 설정될 수 있다. 또한, TS format 필드는 전송 패킷에 포함된 타임스탬프가 GPS time 포맷임을 나타낼 수 있다. 이 경우, TS format 필드는 0x06으로 설정될 수 있다.
또한, 확장된 헤더는 timestamp 필드의 버전 또는 구성을 나타낼 수 있다. 확장된 헤더의 구조는 timestamp 필드에 포함된 오브젝트 재생 또는 디코딩과 관련된 타이밍 정보의 구성을 나타낼 수 있다. 상술한 정보를 TS version 필드라고 할 수 있다. 예를 들면, TS version 필드는 timestamp 필드가 32비트임을 나타낼 수 있다. 이 경우, TS version 필드는 0으로 설정될 수 있다. 또 다른 예를들면, TS version 필드는 timestamp 필드가 64비트임을 나타낼 수 있다. 이 경우, TS version 필드는 1로 설정될 수 있다.
또한, 확장된 헤더는 전송 오브젝트의 타임스탬프가 매핑되는 타임라인의 타이밍 정보가 존재하는지 여부를 나타낼 수 있다. 이 경우, 존재 여부를 나타내는 정보는 OTS flag 필드라고 할 수 있다. 구체적인 일 실시 예에서 OTS flag 필드가 1로 설정된 경우, 전송 오브젝트의 타임스탬프가 매핑되는 타임라인의 타이밍 정보가 존재함을 나타낼 수 있다.
또한, 확장된 헤더는 전송 오브젝트의 타임스탬프가 매핑되는 타임라인의 타임스탬프 포맷을 나타낼 수 있다. 구체적으로 전송 오브젝트의 타임스탬프는 오브젝트의 재생 시간 및 디코딩 시간 중 적어도 하나일 수 있다. 또한, 전송 오브젝트이 타임 스탬프와 매핑될 타임라인은 기본 타임라인일 수 있다. 여기에서 기본 타임라인(Base timeline)은 복수의 서로 다른 타임라인간의 동기화를 위해 필요한 기준 타임라인이다.
상술한 정보는 OTS format 필드일 수 있다. 구체적인 실시 예에서 OTS format 필드는 전송 패킷에 포함된 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 미디어 타임(media time)의 포맷임을 나타낼 수 있다. 이 경우, OTS format 필드는 0x01로 설정될 수 있다. 또한, OTS format 필드는 전송 패킷에 포함된 타이밍 정보가 NTP(Network Time Protocol)의 포맷임을 나타낼 수 있다. 이 경우, OTS format 필드는 0x02로 설정될 수 있다. 또한, OTS format 필드는 전송 패킷에 포함된 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 노말 재생 타임의 포맷임을 나타낼 수 있다. 이 경우, OTS format 필드는 0x03으로 설정될 수 있다. 또한, OTS format 필드는 전송 패킷에 포함된 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 SMPTE time code의 포맷임을 나타낼 수 있다. SMPTE time code는 SMPTE(Society of motion picture and television engineers)에서 정의한 타임코드이다. 이 경우, OTS format 필드는 0x04로 설정될 수 있다. 또한, OTS format 필드는 전송 패킷에 포함된 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 90KHz 기반의 타이밍 정보임을 나타낼 수 있다. 이 경우, OTS format 필드는 0x05로 설정될 수 있다. 또한, OTS format 필드는 전송 패킷에 포함된 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 GPS time 포맷임을 나타낼 수 있다. 이 경우, OTS format 필드는 0x06으로 설정될 수 있다.
또한, 확장된 헤더는 오브젝트의 타임스탬프와 전송 오브젝트의 타임스탬프와 매핑되는 타임라인의 타임스탬프의 버전 또는 구성을 나타낼 수 있다. 구체적으로 전송 오브젝트의 타임스탬프는 오브젝트의 재생 시간 및 디코딩 시간 중 적어도 하나일 수 있다. 또한, 전송 오브젝트이 타임 스탬프와 매핑될 타임라인은 기본 타임라인일 수 있다. 여기에서 기본 타임라인(Base timeline)은 복수의 서로 다른 타임라인간의 동기화를 위해 필요한 기준 타임라인이다.
이 경우, 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프의 구성 또는 버전을 나타내는 정보를 OTS version 필드라고 할 수 있다. 예를 들면, OTS version 필드는 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 32비트임을 나타낼 수 있다. 이 경우, OTS version 필드는 0으로 설정될 수 있다. 또 다른 예를 들면, OTS version 필드는 전송 오브젝트의 타임스탬프와 매핑되는 타임스탬프가 64비트임을 나타낼 수 있다. 이 경우, OTS version 필드는 1로 설정될 수 있다.
또한, 확장된 헤더는 위치 정보를 포함하는지 여부를 나타낼 수 있다. 이 경우, 위치 정보를 포함하는지 여부를 나타내는 정보는 Location flag 필드일 수 있다. 예를 들면, Location flag 필드가 1로 설정된 경우, 해당 확장된 헤더에 위치 정보가 포함되어 있음을 나타낼 수 있다.
또한, 확장된 헤더는 전송 오브젝트의 타임스탬프 및 전송 오브젝트의 타임스탬프와 전송 오브젝트의 타임스탬프와 매핑되는 타임라인의 타이밍 정보를 포함할 수 있다. 상술한 정보는 timestamp 필드라고 할 수 있다.
또한, 확장된 헤더는 해당 확장된 헤더의 타임스탬프와 전송 오브젝트의 타임스탬프와 매핑되는 전송 오브젝트와 연관된 타이밍 정보를 포함할 수 있다. 상술한 정보는 Origin time stamp 필드일 수 있다.
또한, 확장된 헤더는 전송 오브젝트의 타임스탬프와 매핑되는 타임라인과 연관된 데이터의 위치 정보를 포함할 수 있다. 상술한 정보는 Location 필드일 수 있다. 일 실시 예에서 특정 ISO BMFF 기반 데이터 세그먼트의 타임라인과 매핑이 필요한 경우, Location 필드는 해당 데이터 세그먼트의 URL을 포함할 수 있다.
도 113은 본 발명의 일 실시 예에 따른 방송 전송 장치의 동작 방법을 나타낸다.
방송 전송 장치는 제어부를 통해 전송을 위한 오브젝트를 획득한다(S401). 일 실시 예에서 오브젝트는 AV 컨텐트일 수 있다. 또 다른 실시 예에서 오브젝트는 AV 컨텐트와 연관되는 향상된 데이터(Enhancement data)일 수 있다.
방송 전송 장치는 제어부를 통해 오브젝트의 시간 정보 및 포맷 정보를 획득한다(S403). 일 실시 예에서 시간 정보는 전송 오브젝트의 타임스탬프일 수 있다. 또 다른 실시 예에서 시간 정보는 전송 오브젝트의 타임스탬프와 매핑될 타임라인의 타이밍 정보일 수 있다. 또 다른 실시 예에서 시간 정보는 확장된 헤더 구조의 타임스탬프일 수 있다. 또 다른 실시 예에서 시간 정보는 확장된 헤더 구조의 타임스탬프와 매핑될 전송 오브젝트의 타이밍 정보일 수 있다. 또한, 포맷 정보는 레귤러 파일, HTTP 엔티티 및 오디오 또는 비디오 액세스 유닛 중 적어도 하나일 수 있다.
구체적으로 전송 오브젝트의 타임스탬프는 오브젝트의 재생 시간 및 디코딩 시간 중 적어도 하나일 수 있다. 또한, 전송 오브젝트이 타임 스탬프와 매핑될 타임라인은 기본 타임라인일 수 있다. 여기에서 기본 타임라인(Base timeline)은 복수의 서로 다른 타임라인간의 동기화를 위해 필요한 기준 타임라인이다. 예를 들면, 기본 타임라인이 GPS time 일 수 있으며, 전송 오브젝트를 GPS time과 동기화하기 위한 정보가 상술한 확장된 헤더에 포함될 수 있다.
방송 전송 장치는 제어부를 통해 획득한 시간 정보 및 포맷 정보를 패킷 헤더에 설정하여 전송 패킷을 패킷타이징 한다(S405). 구체적으로 방송 전송 장치의 제어부는 획득한 시간 정보를 포함하는 패킷 헤더 및 데이터를 포함하는 패킷 페이로드를 전송 프로토콜에 따라 패킷타이징 한다. 또 다른 실시 예에서 방송 전송 장치는 제어부를 통해 패킷 헤더에 선택적으로 포함될 수 있는 확장된 헤더에 시간 정보 및 포맷 정보를 설정할 수 있다.
구체적으로 시간 정보는 오브젝트의 재생 시간과 관련된 정보일 수 있다. 재생 시간과 관련된 정보는 전송 오브젝트의 재생 시점(타이밍 정보) 및 디코딩 시점(타이밍 정보) 중 적어도 하나일 수 있다. 또 다른 실시 예에서 추가적인 정보는 전송 오브젝트의 타입 정보일 수 있다. 방송 전송 장치는 일반적인 패킷 헤더에 확장된 헤더의 존재 여부, 확장된 헤더의 길이 및 확장된 헤더의 타입 정보 중 적어도 하나를 설정할 수 있다.
방송 전송 장치를 전송부를 통해 패킷타이징된 전송 패킷을 전송한다(S407). 전송부는 전송 패킷을 지상파 방송망 및 인터넷망 중 적어도 하나를 통해 전송할 수 있다.
도 114는 본 발명의 일 실시 예에 따른 방송 수신 장치의 동작 방법을 나타낸다.
방송 수신 장치(100)는 방송 수신부(110)를 통해 전송 패킷을 수신한다(S411). 도 113에서 설명한 바와 같이 전송 패킷은 패킷 헤더 및 패킷 페이로드를 포함할 수 있으며, 패킷 헤더는 확장된 헤더를 선택적으로 포함할 수 있다.
방송 수신 장치(100)의 제어부(150)는 수신한 전송 패킷으로부터 패킷 헤더및 확장된 헤더를 추출한다(S412). 구체직인 일 실시 예에서 제어부(150)는 전송 패킷에 포함된 패킷 헤더를 추출할 수 있다. 또한, 패킷 헤더에 선택적으로 포함될 수 있는 확장된 헤더를 패킷 헤더로부터 추출할 수 있다.
방송 수신 장치(100)의 제어부(150)는 패킷 헤더에 기초하여 전송 오브젝트와 관련된 시간 정보 및 전송 오브젝트의 포맷 정보 중 적어도 하나를 획득한다(S413). 또 다른 일 실시 예에서 제어부(150)는 패킷 헤더에 선택적으로 포함될 수 있는 확장된 헤더로부터 상기 시간 정보 및 포맷 정보 중 적어도 하나를 획득할 수 있다. 구체적인 실시 예에서 제어부(150)는 확장된 헤더에 기초하여 전송 오브젝트의 타임스탬프를 획득할 수 있다. 또한, 제어부(150)는 전송 오브젝트의 포맷 정보를 획득할 수 있다. 전송 오브젝트의 포맷 정보는 레귤러 파일, HTTP 엔티티 및 오디오 또는 비디오 액세스 유닛 중 적어도 하나를 나타낼 수 있다. 여기에서 레귤러 파일이란 ISO BMFF 기반의 미디어 파일일 수 있다.
방송 수신 장치(100)의 제어부(150)는 패킷 헤더로부터 다른 시간 정보와매핑을 위한 정보를 획득할 수 있는지 여부를 판단한다(S414). 구체적으로 제어부(150)는 해당 전송 오브젝트를 위한 시간 정보와 매핑되는 또 다른 시간 정보가 패킷 헤더에 존재하는지 여부를 판단한다. 또 다른 실시 예에서 제어부(150)는 패킷 헤더에 선택적으로 포함될 수 있는 확장된 헤더로부터 추출된 특정 정보에 기초하여 판단할 수 있다.
일 실시 예에서 제어부(150)가 패킷 헤더로부터 다른 시간 정보와 매핑을 위한 정보를 획득할 수 있다고 판단한 경우, 제어부(150)는 패킷 헤더로부터 매핑을 위한 정보를 획득한다(S415). 여기에서 다른 시간 정보는 상술한 기본 타임라인의 타이밍 정보일 수 있다. 또한, 타이밍 정보는 전송 오브젝트의 재생 타이밍 정보 및 디코딩 타이밍 정보 중 적어도 하나를 포함할 수 있다. 구체적인 실시 예에서 제어부(150)는 패킷 헤더에 기초하여 전송 오브젝트와 매핑되는 타임라인의 타이밍 정보를 획득할 수 있다. 또 다른 실시 예에서 제어부(150)는 패킷 헤더에 기초하여 해당 패킷 헤더의 타임스탬프와 매핑되는 전송 오브젝트의 타이밍 정보를 획득할 수 있다. 또한 제어부(150)는 패킷 헤더에 기초하여 전송 오브젝트와 매핑되는 데이터의 위치 정보를 획득할 수도 있다. 또 다른 실시 예에서 제어부(150)는 패킷 헤더에 선택적으로 포함되는 확장된 헤더로부터 매핑을 위한 정보를 획득할 수도 있다.
방송 수신 장치(100)의 제어부(150)는 획득한 시간 정보에 기초하여 전송 오브젝트를 출력한다(S416). 일 실시 예에서 제어부(150)가 다른 시간 정보와 매핑 정보를 획득하지 못한 경우, 해당 전송 오브젝트의 타임스탬프에 기초하여 오브젝트를 출력한다. 또 다른 실시 예에서 제어부(150)가 다른 시간 정보와 매핑 정보를 획득한 경우, 해당 매핑 정보 및 오브젝트의 타임스탬프에 기초하여 오브젝트를 출력한다.
도 115은 전송 패킷의 구성에 대한 정보를 포함하는 패킷 헤더의 구조를 나타낸다.
본 발명의 일 실시 예에 따른 패킷 헤더는 전체 전송 오브젝트 중 처음 또는 마지막 부분의 데이터가 패킷 페이로드에 포함되어 있음을 나타낼 수 있다. 이 경우, 처음 또는 마지막 부분의 데이터가 포함되어 있음을 나타내는 정보는 마커 비트(Marker bit)일 수 있다. 또한, 마커 비트는 M 필드일 수 있다. M 필드는 1비트일 수 있다.
또한, 본 발명의 일 실시 예에 따른 패킷 헤더는 해당 전송 패킷의 구성에 대한 정보를 포함할 수 있다. 이 경우, 전송 패킷의 구성에 대한 정보는 type 필드일 수 있다. Type 필드는 2비트일 수 있다.
또 다른 경우, 전송 패킷의 구성에 대한 정보는 codepoint 필드에 포함될 수 있다. Codepoint 필드는 8비트일 수 있다.
구체적인 일 실시 예에서 Type 필드는 해당 전송 패킷이 레귤러 패킷 구조임을 나타낼 수 있다. 구체적으로 해당 패킷이 앞서 도시된 기존의 전송 패킷 구조를 그대로 사용하고 있음을 나타낼 수 있다. 이 경우 전송 패킷은 패킷 헤더, 확장된 헤더, 패킷 페이로드 식별자 및 데이터 중 적어도 어느 하나를 포함할 수 있다. 또한, 방송 전송 장치는 Type 필드를 0x00으로 설정할 수 있다.
또한, 구체적인 일 실시 예에서 Type 필드는 해당 전송 패킷이 페이로드를 포함하고 있지 않음을 나타낼 수 있다. 구체적으로 해당 전송 패킷이 패킷 헤더 및 확장된 헤더만을 포함하고 있음을 나타낼 수 있다. 이 경우, 방송 전송 장치는 Type 필드를 0x01로 설정할 수 있다.
또한, 구체적인 일 실시 예에서 Type 필드는 해당 전송 패킷이 전체 전송 오브젝트에 대한 오프셋(offset) 정보를 포함함을 나타낼 수 있다. 여기에서 오프셋 정보란 해당 전송 패킷의 인코딩 심볼 필드가 포함하고 있는 데이터의 오프셋 정보이다. 다시 말해서, 오프셋 정보는 전체 전송 오브젝트에서 해당 전송 패킷의 데이터의 오프셋 정보를 나타낸다. 이 때 일 실시 예에서, 레귤러 전송 패킷의 구조와 구성은 동일하나, 패이로드 식별자 필드가 데이터 오프셋 필드로 대체될 수 있다. 이 경우, 방송 전송 장치는 Type 필드를 0x02로 설정할 수 있다.
또한, 구체적인 일 실시 예에서 Type 필드는 해당 전송 패킷이 기존의 레귤러 전송 패킷의 구조와 다른 구성을 포함함을 나타낼 수 있다. 이 경우, 방송 전송 장치는 Type 필드를 0x03으로 설정할 수 있다. 구체적인 실시 예에서, Type 필드는 해당 전송 패킷이 페이로드 식별자 필드를 포함하고 있지 않음을 나타낼 수 있다. 이 경우, 방송 전송 장치는 Type 필드를 0x04으로 설정할 수 있다. 앞서 도 115에서 설명한 전송 패킷의 구성을 나타내는 도면이다. 도 116에 도시된 바와 같이 Type 필드는 전송 패킷의 구조를 나타낼 수 있다. 그러나, 도 116에 도시된 전송 패킷에 한정되는 것은 아니며, 반드시 도 116에 설정된 값으로 본 발명이 한정되는 것은 아니다.
도 117는 본 발명의 일 실시 예에 따른 방송 전송 장치의 동작 방법을 나타낸다.
방송 전송 장치는 제어부를 통해 전송 패킷의 구조 정보를 획득한다(S421). 일 실시 예에서 전송 패킷의 구조는 기존의 레귤러 패킷 구조일 수 있다. 또 다른 실시 예에서 전송 패킷의 구조는 패킷 헤더 및 확장된 헤더만으로 구성된 구조일 수 있다. 또 다른 실시 예에서 전송 패킷의 구조는 기존의 페이로드 식별자를 대체하는 구성을 포함하는 구조일 수 있다. 또 다른 실시 예에서 전송 패킷의 구조는 페이로드 식별자를 포함하지 않는 구조일 수 있다.
방송 전송 장치는 제어부를 통해 획득한 전송 패킷의 구조에 기초하여, 해당 구조의 정보를 나타내는 값을 패킷 헤더에 설정해 전송 패킷을 패킷타이징한다(S423). 구체적으로 제어부는 해당 구조의 정보를 Type 필드에 설정할 수 있다.
방송 전송 장치는 전송부를 통해 패킷타이징된 전송 패킷을 전송한다(S425). 일 실시 예에서 전송부는 패킷타이징된 전송 패킷을 지상파 방송망으로 전송할 수 있다. 또 다른 실시 예에서 전송부는 패킷타이징된 전송 패킷을 인터넷망으로 전송할 수도 있다.
도 118은 본 발명의 일 실시 예에 따른 방송 수신 장치의 동작 방법을 나타낸다.
방송 수신 장치(100)는 방송 수신부(110)을 통해서 전송 패킷을 수신한다(S431). 일 실시 예에서 방송 수신부(110)는 지상파 방송망을 통해 전송 패킷을 수신할 수 있다. 또 다른 실시 예에서 IP 커뮤니케이션 유닛(130)은 인터넷망을 통해 전송 패킷을 수신할 수 있다.
방송 수신 장치(100)는 제어부(150)를 통해, 수신한 전송 패킷에서 패킷 헤더를 추출한다(S433). 구체적으로 전송 패킷은 패킷 헤더 및 패킷 페이로드 중 적어도 하나를 포함할 수 있다. 따라서, 제어부(150)는 전송 패킷에서 패킷 페이로드를 시그널링하는 패킷 헤더를 추출할 수 있다.
방송 수신 장치(100)는 추출한 패킷 헤더로부터 전송 패킷의 구성 정보를 획득한다(S435). 구체적으로 패킷 헤더는 전송 패킷의 구조를 나타내는 정보를 포함할 수 있다. 따라서, 방송 수신 장치(100)는 제어부(150)를 통해 패킷 헤더로부터 전송 패킷의 구조를 나타내는 정보를 획득할 수 있다. 일 실시 예에서 전송 패킷의 구조는 기존의 레귤러 전송 패킷 구조일 수 있다. 또 다른 실시 예에서 전송 패킷의 구조는 패킷 헤더 및 확장된 헤더만을 포함하는 구조일 수 있다. 또 다른 실시 예에서 전송 패킷의 구조는 패킷 페이로드 식별자를 대체하는 오프셋 정보를 포함하는 구조일 수 있다. 또 다른 실시 예에서 전송 패킷의 구조는 패킷 페이로드 식별자를 포함하지 않는 구조일 수 있다.
도 119 는 본 발명의 일 실시예에 따른 하이브리드 방송 수신 장치를 나타낸 도면이다. 하이브리드 방송 시스템은 지상파 방송망 및 인터넷 망을 연동하여 방송 신호를 송신할 수 있다. 하이브리드 방송 수신 장치는 지상파 방송망 (브로드캐스트) 및 인터넷 망 (브로드밴드)을 통해 방송 신호를 수신할 수 있다. 하이브리드 방송 수신 장치는 피지컬 레이어 모듈, 피지컬 레이어 I/F 모듈, 서비스/컨텐트 획득 컨트롤러, 인터넷 억세스 제어 모듈, 시그널링 디코더, 서비스 시그널링 매니저, 서비스 가이드 매니저, 어플리케이션 시그널링 매니저, 경보 신호 매니저, 경보 신호 파서, 타겟팅 신호 파서, 스트리밍 미디어 엔진, 비실시간 파일 프로세서, 컴포넌트 싱크로나이저, 타겟팅 프로세서, 어플리케이션 프로세서, A/V 프로세서, 디바이스 매니저, 데이터 셰어링 및 커뮤니케이션 유닛, 재분배 모듈, 컴패니언 디바이스 및/또는 외부 모듈들을 포함할 수 있다.
피지컬 레이어 모듈 (Physical Layer Module(s))은 지상파 방송 채널을 통하여 방송 관련 신호를 수신 및 처리하고 이를 적절한 형태로 변환하여 피지컬 레이어 I/F 모듈로 전달할 수 있다.
피지컬 레이어 I/F 모듈 (Physical Layer I/F Module(s))은 Physical layer Module로 부터 획득된 정보로부터 IP 데이터 그램을 획득할 수 있다. 또한, 피지컬 레이어 I/F 모듈은 획득된 IP 데이터그램 등을 특정 프레임(예를 들어 RS Frame, GSE 등) 으로 변환할 수 있다.
서비스/컨텐트 획득 컨트롤러 (Service/Content Acquisition Controller)는 broadcast 및/또는 broadband 채널을 통한 서비스, 콘텐츠 및 이와 관련된 시그널링 데이터 획득을 위한 제어 동작을 수행할 수 있다.
인터넷 억세스 제어 모듈(Internet Access Control Module(s))은 Broadband 채널을 통하여 서비스, 콘텐츠 등을 획득하기 위한 수신기 동작을 제어할 수 있다.
시그널링 디코더 (Signaling Decoder)는 broadcast 채널 등을 통하여 획득한 시그널링 정보를 디코딩할 수 있다.
서비스 시그널링 매니저 (Service Signaling Manager)는 IP 데이터 그램 등으로부터 서비스 스캔 및 서비스/콘텐츠 등과 관련된 시그널링 정보 추출, 파싱 및 관리할 수 있다.
서비스 가이드 매니저 (Service Guide Manager)는 IP 데이터 그램 등으로 부터 announcement 정보를 추출하고 SG(Service Guide) database 관리하며, service guide를 제공할 수 있다.
어플리케이션 시그널링 매니저 (App Signaling Manager)는 IP 데이터 그램 등으로 부터 애플리케이션 획득 등과 관련된 시그널링 정보 추출, 파싱 및 관리할 수 있다.
경보 신호 파서 (Alert Signaling Parser)는 IP 데이터 그램 등으로 부터 alerting 관련된 시그널링 정보 추출 및 파싱, 관리할 수 있다.
타겟팅 신호 파서 (Targeting Signaling Parser)는 IP 데이터 그램 등으로 부터 서비스/콘텐츠 개인화 혹은 타겟팅 관련된 시그널링 정보 추출 및 파싱, 관리할 수 있다. 또한 타겟팅 신호 파서는 파싱된 시그널링 정보를 타겟팅 프로세서로 전달할 수 있다.
스트리밍 미디어 엔진 (Streaming Media Engine)은 IP 데이터그램 등으로 부터 A/V 스트리밍을 위한 오디오/비디오 데이터 추출 및 디코딩할 수 있다.
비실시간 파일 프로세서 (Non-real time File Processor)는 IP 데이터그램 등으로 부터 NRT 데이터 및 application 등 파일 형태 데이터 추출 및 디코딩, 관리할 수 있다.
컴포넌트 싱크로나이저 (Component Synchronizer)는 스트리밍 오디오/비디오 데이터 및 NRT 데이터 등의 콘텐츠 및 서비스를 동기화할 수 있다.
타겟팅 프로세서 (Targeting Processor)는 타겟팅 신호 파서로부터 수신한 타겟팅 시그널링 데이터에 기초하여 서비스/콘텐츠의 개인화 관련 연산을 처리할 수 있다.
어플리케이션 프로세서 (App Processor)는 application 관련 정보 및 다운로드 된 application 상태 및 디스플레이 파라미터 처리할 수 있다.
A/V 프로세서 (A/V Processor)는 디코딩된 audio 및 video data, application 데이터 등을 기반으로 오디오/비디오 랜더링 관련 동작을 수행할 수 있다.
디바이스 매니저 (Device Manager)는 외부 장치와의 연결 및 데이터 교환 동작을 수행할 수 있다. 또한 디바이스 매니저는 연동 가능한 외부 장치의 추가/삭제/갱신 등 외부 장치에 대한 관리 동작을 수행할 수 있다.
데이터 셰어링 및 커뮤니케이션 유닛 (Data Sharing & Comm.)은 하이브리드 방송 수신기와 외부 장치 간의 데이터 전송 및 교환에 관련된 정보를 처리할 수 있다. 여기서, 전송 및 교환 가능한 데이터는 시그널링, A/V 데이터 등이 될 수 있다.
재분배 모듈 (Redistribution Module(s))은 방송 수신기가 지상파 방송 신호를 직접 수신 하지 못하는 경우 차세대 방송 서비스 및 콘텐츠에 대한 관련 정보를 획득할 수 있다. 또한 재분배 모듈은 방송 수신기가 지상파 방송 신호를 직접 수신 하지 못하는 경우 차세대 방송 시스템에 의한 방송 서비스 및 콘텐츠 획득을 지원할 수 있다.
컴패니언 디바이스 (Companion device(s))는 본 발명의 방송 수신기에 연결되어 오디오, 비디오, 또는 시그널링 포함데이터를 공유할 수 있다. 컴패니언 디바이스는 방송 수신기와 연결된 외부 장치를 지칭할 수 있다.
외부 모듈 (External Management)는 방송 서비스/콘텐츠 제공을 위한 모듈을 지칭할 수 있으며 예를들어 차세대 방송 서비스/컨텐츠 서버가 될 수 있다. 외부 모듈은 방송 수신기와 연결된 외부 장치를 지칭할 수 있다.
도 120는 본 발명의 일 실시예에 따른 하이브리드 방송 수신기의 블록도를 나타낸 도면이다.
하이브리드 방송 수신기는 차세대 방송 시스템의 DTV 서비스에서 지상파 방송과 브로드밴드의 연동을 통한 하이브리드 방송 서비스를 수신할 수 있다. 하이브리드 방송 수신기는 지상파 방송을 통해서 전송되는 방송 오디오/비디오 (Audio/Video, A/V) 컨텐츠를 수신하고, 이와 연관된 enhancement data 혹은 방송 A/V 컨텐츠의 일부를 브로드밴드를 통하여 실시간으로 수신할 수 있다. 본 명세서에서 방송 오디오/비디오 (Audio/Video, A/V) 컨텐츠는 미디어 컨텐츠로 지칭할 수 있다.
하이브리드 방송 수신기는 물리 계층 컨트롤러 (Physical Layer Controller, D55010), 튜너 (Tuner, D55020), 물리적 프레임 파서 (Physical Frame Parser, D55030), 연결 계층 파서 (Link Layer Frame Parser, D55040), IP/UDP 데이터그램 필터 (IP/UDP Datagram Filter, D55050), ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (ATSC 3.0 DTV Control Engine, D55060), ALC/LCT+ 클라이언트 (ALC/LCT+ Client, D55070), 타이밍 제어부 (Timing Control, D55080), 시그널링 파서 (Signaling Parser, D55090), DASH 클라이언트 (Dynamic Adaptive Streaming over HTTP Client, DASH Client, D55100), HTTP 접속 클라이언트 (HTTP Access Client, D55110), ISO BMFF 파서 (ISO Base Media File Format Parser, ISO BMFF Parser, D55120) 및/또는 미디어 디코더(Media Decoder, D55130)을 포함할 수 있다.
물리 계층 컨트롤러 (D55010)는 하이브리드 방송 수신기가 수신하고자 하는 지상파 방송 채널의 라디오 주파수 (Radio Frequency, RF) 정보 등을 이용하여 튜너 (D55020), 물리적 프레임 파서(D55030) 등의 동작을 제어할 수 있다.
튜너 (D55020)는 지상파 방송 채널을 통하여 방송 관련 신호를 수신 및 처리하고 이를 적절한 형태로 변환할 수 있다. 예를 들어 튜너 (D55020)는 수신된 지상파 방송 신호를 물리적 프레임 (Physical Frame)으로 변환할 수 있다.
물리적 프레임 파서 (D55030)는 수신된 물리적 프레임을 파싱하고 이와 관련된 프로세싱을 통하여 연결 계층 프레임 (Link Layer Frame)을 획득할 수 있다.
연결 계층 파서 (D55040)는 연결 계층 프레임으로부터 연결 계층 시그널링 (Link Layer signaling) 등을 획득하거나 IP/UDP 데이터그램 혹은 MPEG-2 TS 등을 획득하기 위한 관련 연산을 수행할 수 있다. 연결 계층 파서 (D55040)는 적어도 하나 이상의 IP/UDP 데이터그램 등을 출력할 수 있다.
IP/UDP 데이터그램 필터 (D55050)는 수신된 적어도 하나 이상의 IP/UDP 데이터그램 등으로부터 특정 IP/UDP 데이터 그램을 필터링할 수 있다. 즉, IP/UDP 데이터그램 필터 (D55050)는 연결 계층 파서 (D55040)로부터 출력된 적어도 하나의 IP/UDP 데이터그램 중 ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)에 의해 선택된 IP/UDP 데이터그램을 선택적으로 필터링할 수 있다. IP/UDP 데이터그램 필터 (D55050)는 ALC/LCT+ 등의 애플리케이션 계층 전송 프로토콜 패킷을 출력할 수 있다.
ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)은 각 하이브리드 방송 수신기에 포함된 모듈 간의 인터페이스를 담당할 수 있다. 또한 ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)은 각 모듈에 필요한 파라미터 등을 각 모듈에 전달하고, 이를 통해 각 모듈의 동작을 제어할 수 있다. 본 발명에서 ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)은 미디어 프리젠테이션 디스크립션 (Media Presentation Description, MPD) 및/또는 MPD URL을 DASH 클라이언트 (D55100)에 전달할 수 있다. 또한 본 발명에서 ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)은 전송 모드(Delivery mode) 및/또는 전송 세션 식별자 (Transport Session Identifier, TSI)를 ALC/LCT+ 클라이언트 (D55070)에 전달할 수 있다. 여기서 TSI는 MPD 또는 MPD URL 관련 시그널링 등 시그널링 메시지를 포함하는 전송 패킷을 전송하는 세션, 예를 들어 애플리케이션 계층 전송 프로토콜인 ALC/LCT+ 세션 또는 FLUTE 세션의 식별자를 나타낼 수 있다. 또한 전송 세션 식별자는 MMT의 Asset id 등에 대응될 수 있다.
ALC/LCT+ 클라이언트 (D55070)는 ALC/LCT+ 등의 애플리케이션 계층 전송 프로토콜 패킷을 처리하고 복수의 패킷을 수집 및 처리하여 하나 이상의 ISO Base Media File Format (ISOBMFF) 오브젝트를 생성할 수 있다. 어플리케이션 계층 전송 프로토콜 패킷에는 ALC/LCT 패킷, ALC/LCT+ 패킷, ROUTE 패킷, 및/또는 MMTP 패킷이 포함될 수 있다.
타이밍 제어부 (D55080)는 시스템 타임 정보를 포함하는 패킷을 처리하고 이에 따라 시스템 클럭을 제어할 수 있다.
시그널링 파서 (D55090)는 DTV 방송 서비스 관련 시그널링을 획득 및 파싱하고 파싱된 시그널링에 기초하여 채널 맵 등을 생성하고 관리할 수 있다. 본 발명에서 시그널링 파서는 시그널링 정보로부터 확장된 MPD 또는 MPD 관련 정보 등을 파싱할 수 있다.
DASH 클라이언트 (D55100)는 실시간 스트리밍 (Real-time Streaming)혹은 적응적 스트리밍 (Adaptive Streaming)에 관련된 연산을 수행할 수 있다. DASH 클라이언트 (D55100)는 HTTP 접속 클라이언트 (D55110)을 통해 HTTP 서버로부터 DASH 컨텐츠를 수신할 수 있다. DASH 클라이언트 (D55100)는 수신된 DASH Segment등을 처리하여 ISO Base Media File Format 오브젝트를 출력할 수 있다. 본 발명에서 DASH 클라이언트 (D55100)는 ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)에 전체 Representation ID (Fully qualified Representation ID) 또는 세그먼트 URL을 전달할 수 있다. 여기서 전체 Representation ID는 예를 들어 MPD URL, period@id 및 representation@id를 결합한 ID를 의미할 수 있다. 또한 DASH 클라이언트 (D55100)는 ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (D55060)으로부터 MPD 또는 MPD URL을 수신할 수 있다. DASH 클라이언트 (D55100)는 수신된 MPD 또는 MPD URL을 이용하여 원하는 미디어 스트림 또는 DASH Segment를 HTTP 서버로부터 수신할 수 있다. 본 명세서에서 DASH 클라이언트 (D55100)는 프로세서로 지칭될 수 있다.
HTTP 접속 클라이언트 (D55110)는 HTTP 서버에 대해 특정 정보를 요청하고, HTTP 서버로부터 이에 대한 응답을 수신하여 처리할 수 있다. 여기서 HTTP 서버는 HTTP 접속 클라이언트로부터 수신한 요청을 처리하고 이에 대한 응답을 제공할 수 있다.
ISO BMFF 파서 (D55120)는 ISO Base Media File Format 오브젝트로부터 오디오/비디오의 데이터 추출할 수 있다.
미디어 디코더 (D55130)는 수신된 오디오 및/또는 비디오 데이터를 디코딩하고, 디코딩된 오디오/비디오 데이터를 프리젠테이션하기 위한 프로세싱을 수행할 수 있다.
본 발명의 하이브리드 방송 수신기가 지상파 방송망과 브로드밴드의 연동을 통한 하이브리드 방송 서비스를 제공하기 위해서는 MPD에 대한 확장 또는 수정이 요구된다. 전술한 지상파 방송 시스템은 확장 또는 수정된 MPD를 송신할 수 있으며 하이브리드 방송 수신기는 확장 또는 수정된 MPD를 이용하여 방송 또는 브로드밴드를 통해 컨텐츠를 수신할 수 있다. 즉, 하이브리드 방송 수신기는 확장 또는 수정된 MPD는 지상파 방송을 통해 수신하고, MPD에 기초하여 지상파 방송 또는 브로드밴드를 통해 컨텐츠를 수신할 수 있다. 아래에서는 기존 MPD와 비교하여 확장 또는 수정된 MPD에 추가적으로 포함되어야 하는 엘리먼트 및 속성(attribute)에 대해 기술한다. 아래에서, 확장 또는 수정된 MPD는 MPD로 기술될 수 있다.
MPD는 ATSC 3.0 서비스를 표현하기 위해 확장되거나 수정될 수 있다. 확장 또는 수정된 MPD는 MPD@anchorPresentationTime, Common@presentable, Common.Targeting, Common.TargetDevice 및/또는 Common@associatedTo를 추가적으로 포함할 수 있다.
MPD@anchorPresentationTime는 MPD에 포함된 세그먼트들의 프리젠테이션 타임의 앵커, 즉 기초가 되는 시간을 나타낼 수 있다. 아래에서 MPD@anchorPresentationTime는 MPD의 유효 시간(effective time)으로 사용될 수 있다. MPD@anchorPresentationTime는 MPD에 포함된 세그먼트들 중 가장 빠른 재생 시점을 나타낼 수 있다.
MPD는 공통 속성들 및 요소들(common attributes and elements)을 더 포함할 수 있다. 공통속성및 요소는 MPD 내의 AdaptionSet, Representation, SubRepresentation 등에 적용될 수 있다. Common@presentable은 MPD가 기술하고 있는 미디어가 프리젠테이션이 가능한 컴포넌트임을 나타낼 수 있다.
Common.Targeting은 MPD가 기술하고 있는 미디어의 타겟팅 특징(targeting properties) 및/또는 개별화 특징(personalization properties)를 나타낼 수 있다.
Common.TargetDevice는 MPD가 기술하고 있는 미디어의 타겟 디바이스 또는 타겟 디바이스들을 나타낼 수 있다.
Common@associatedTo는 MPD가 기술하고 있는 미디어에 관련된 adaptationSet 및/또는 representation을 나타낼 수 있다.
또한 MPD에 포함된 MPD@id, Period@id 및 AdaptationSet@id는 MPD가 기술하고 있는 미디어 컨텐츠를 특정하기 위해 요구될 수 있다. 즉, DASH 클라이언트는 MPD에 기초하여 수신하고자 하는 컨텐츠를 MPD@id, Period@id 및 AdaptationSet@id로 특정하여 ATSC 3.0 디지털 텔레비전 컨트롤 엔진에 전달할 수 있다. 또한 ATSC 3.0 디지털 텔레비전 컨트롤 엔진은 해당 컨텐츠를 수신하여 DASH 클라이언트에 전달할 수 있다.
도 121 은 본 발명의 일 실시예에 따른 차세대 하이브리드 방송 시스템의 프로토콜 스택을 나타낸다. 도시된 바와 같이, IP 기반 하이브리드 방송을 지원하는 차세대 방송 송신 시스템은 방송서비스의 오디오 혹은 비디오 데이터 등을 ISO Base Media File Format (이하 ISO BMFF) 으로 encapsulation 할 수 있다. 여기서, 인캡슐레이션은 DASH Segment 혹은 MMT의 MPU (Media processing unit) 등의 형태를 이용할 수 있다. 또한 차세대 방송 시스템은 인캡슐레이션된 데이터를 방송망과 인터넷 망에 동일하게 혹은 각 전송망의 속성에 따라 서로 다르게 전송할 수 있다. 또한 차세대 방송 시스템은 인캡슐레이션된 데이터를 브로드캐스트 또는 브로드밴드 중 적어도 하나를 이용하여 전송할 수 있다. 브로드캐스트를 이용하는 방송망의 경우 방송 시스템은 ISO Base Media File (이하 ISO BMFF) 형태로 encapsulation 된 데이터를 실시간 오브젝트 전송을 지원하는 application layer transport 프로토콜 패킷을 통해 전송할 수 있다. 예를 들어 방송 시스템은 Real-Time Object Delivery over Unidirectional Transport (이하 ROUTE) 또는 MMTP의 transport packet 등으로 encapsulation 할 수 있다. 그리고 방송 시스템은 인캡슐레이션된 데이터를 다시 IP/UDP 데이터 그램으로 생성 후 이를 방송 신호에 실어서 전송할 수 있다. 브로드밴드를 이용하는 경우 방송 시스템은 인캡슐레이션된 데이터를 DASH 등 스트리밍 기법 등을 기반으로 수신측에 전달 할 수 있다.
이와 더불어 방송 시스템은 방송 서비스의 시그널링 정보를 다음과 같은 방법으로 전송할 수 있다. 브로드캐스트를 이용하는 방송망의 경우 방송 시스템은 시그널링의 속성 등에 따라 차세대 방송 전송 시스템 및 방송망의 physical layer 를 통해 시그널링 정보를 전송할 수 있다. 여기서, 방송 시스템은 방송 신호 내에 포함된 transport frame 의 특정 data pipe (이하 DP) 등을 통해 시그널링 정보를 전송할 수 있다. 브로드캐스트를 통해 전송되는 시그널링 형태는 비트 스트림 또는 IP/UDP 데이터 그램으로 encapsulation 된 형태일 수 있다. 브로드밴드를 이용하는 경우 방송 시스템은 수신기의 요청에 대한 응답으로서 시그널링 데이터를 리턴하여 전달할 수 있다.
이와 더불어 방송 시스템은 방송 서비스의 ESG 혹은 NRT 콘텐츠 등을 다음과 같은 방법으로 전송할 수 있다. 브로드캐스트를 이용하는 방송망의 경우 방송 시스템은 application layer transport 프로토콜 패킷, 예를 들어 Real-Time Object Delivery over Unidirectional Transport (이하 ROUTE), MMTP의 transport packet 등으로 ESG 혹은 NRT 콘텐츠를 encapsulation 할 수 있다. 그리고 encapsulation 된 ESG 혹은 NRT 콘텐츠를 다시 IP/UDP 데이터 그램으로 생성한 후 이를 방송 신호에 실어서 전송할 수 있다. 브로드밴드를 이용하는 경우 방송 시스템은 수신기의 요청에 대한 응답으로서 ESG 혹은 NRT 콘텐츠 등을 리턴하여 전달할 수 있다.
도 122 은 본 발명의 일 실시예에 따른 차세대 방송 전송 시스템의 physical layer 에 전달되는 전송 프레임의 구조를 나타낸다. 차세대 방송 시스템은 브로드캐스트를 이용하여 전송 프레임을 전송할 수 있다. 도면에서, 전송 프레임의 앞부분에 위치한 P1은 transport signal detection을 위한 정보가 포함된 심볼을 의미할 수 있다. P1은 tuning information을 포함할 수 있으며 수신기는 P1 심볼에 포함된 parameter에 기초하여 P1 다음에 위치한 L1 파트를 디코딩할 수 있다. 방송 시스템은 L1 파트에 transport frame 구성 및 각 DP (data pipe)의 특성 등에 대한 정보를 포함시킬 수 있다. 즉, 수신기는 L1 파트를 디코딩하여 transport frame 구성 및 각 DP (data pipe)의 특성 등에 대한 정보를 얻을 수 있다. 또한 수신기는 Common DP를 통해 DP 간의 공유해야 하는 정보를 획득할 수 있다. 실시예에 따라 Transport frame 은 common DP를 포함하지 않을 수도 있다.
전송 프레임에서 Audio, Video, Data 등의 component는 DP1~n으로 구성된 interleaved DP 영역에 포함되어 전송된다. 여기서 각각의 서비스(채널)를 구성하는 component가 각각 어느 DP로 전송되는가는 L1 혹은 common PLP 등을 통해 시그널링 될 수 있다.
또한 차세대 방송 시스템은 전송 프레임에 포함된 서비스에 대한 정보를 신속하게 획득하기 위한 정보를 전송할 수 있다. 즉, 차세대 방송 시스템은 차세대 방송 수신기가 transport frame 에 포함된 방송 서비스 및 콘텐츠 관련 정보를 신속하게 획득하도록 할 수 있다. 이와 더불어 해당 frame 내에서 하나 이상의 방송국에서 생성해 낸 서비스/콘텐츠가 존재하는 경우 수신기로 하여금 방송국에 따른 서비스/콘텐츠를 효율적으로 인지하도록 할 수 있다. 즉, 차세대 방송 시스템은 전송 프레임 내에 포함된 서비스에 대한 서비스 리스트 정보를 전송 프레임에 포함시켜 전송할 수 있다.
방송 시스템은 수신기가 해당 주파수 내의 방송 서비스 및 콘텐츠 스캔을 신속하게 할 수 있도록 하기 위하여, 별도의 채널, 예를 들어 Fast Information Channel (FIC) 등이 존재하는 경우 이를 통해 방송서비스 관련된 정보를 전송할 수 있다. 도 122 의 중단에 도시된 바와 같이 방송 시스템은 Transport frame 에 방송 서비스 스캔 및 획득을 위한 정보를 포함시켜 전송할 수 있다. 여기서 방송 서비스에 대한 스캔 및 획득에 대한 정보를 포함하는 영역을 FIC라고 지칭할 수 있다. 수신기는 FIC 를 통하여 하나 이상의 방송국에서 생성 및 전송되는 방송 서비스에 대한 정보를 획득할 수 있으며, 이를 통해 수신기 상에서 이용 가능한 방송 서비스들에 대한 스캔을 손쉽고 빠르게 수행할 수 있다.
또한 전송 프레임에 포함된 특정 DP는 해당 transport frame 내에서 전송되는 방송 서비스 및 콘텐츠에 대한 시그널링을 신속하고 강건하게 전송할 수 있는 Base DP 로 동작할 수 있다. Physical layer의 transport frame 의 각 DP 을 통하여 전송되는 데이터들은 도 122 의 하단과 같을 수 있다. 즉, Link layer signaling 혹은 IP 데이터 그램 등은 특정 형태의 Generic packet 으로 encapsulation 된 후 DP 을 통하여 전송될 수 있다. 여기서, Generic packet은 시그널링 데이터를 포함할 수 있다. 여기서, Link(low) layer signaling 은 fast service scan/acquisition, IP header compression의 context information, emergency alert 과 관련된 시그널링 등을 포함할 수 있다.
도 123 은 본 발명의 일 실시예에 따른 제 1 패킷 구조를 도시한 도면이다.
본 발명은 두가지 이상의 데이터 유닛 타입으로 포맷된 데이터를 전송하는 과정에 있어서, 단일한 전송 프로토콜을 이용하여 해당 데이터들을 전송하기 위한 방안을 제안한다. 즉, 하나의 전송 프로토콜에서 제시하는 전송 패킷의 구조를 변형/확장하여, 다양한 포맷으로 포맷된 데이터들을 효과적으로 담을 수 있도록 하는 방안이 제시된다.
예를 들어, MPEG DASH 세그먼트 형태로 포맷된 데이터와, MMTP 의 MPU 형태로 포맷된 데이터를 모두 방송 신호로 보내야하는 시스템에 있어서, 각각의 데이터들을 ROUTE 프로토콜이나 MMT 프로토콜에 따른 전송 패킷에 담아 보내는 방안을 생각해 볼 수 있다. 또한 실시예에 따라 ROUTE 프로토콜에 따른 ROUTE 패킷의 구조를 변형/확장하여 여러 형태로 포맷된 데이터를 모두 효과적으로 전송케할 수도 있다.
도시된 제 1 패킷 구조는 ROUTE 에 따른 ALC/LCT 기반의 패킷 구조일 수 있다. 제 1 패킷은 헤더와 페이로드 부분으로 나뉠 수 있다. 헤더는 도시된 바와 같이 V, C, PSI, S, O, ..., Payload ID 필드 등이 포함될 수 있다. 실시예에 따라 일부 필드들은 생략될 수 있다. 이하 제 1 패킷이란 패킷 하나, 또는 첫번째 패킷을 의미하는 것이 아니고, 제 1 타입을 가지는 패킷으로 의미될 수 있다.
V 필드는 해당 전송 프로토콜 패킷, 즉 여기서는 제 1 패킷의 버전정보를 나타낼 수 있다. C필드는 Congestion Control Information 필드의 길이와 연관된 플래그를 나타낼 수 있다. 여기서 Congestion Control Information 필드에 대해서는 후술한다. PSI필드는 해당 전송 프로토콜에 특화된 정보(protocol-specific information) 를 나타낼 수 있다. 이 필드가 의미하는 바는 실시예에 따라 달라질 수 있다.
S필드는 TSI (transport session identifier) 필드의 길이와 연관된 플래그를 나타낼 수 있다. O필드는 TOI (transport object identifier) 필드의 길이와 연관된 플래그를 나타낼 수 있다. H필드는 TSI, TOI 필드의 길이에 해프 워드(half-word, 16 bits) 의 추가 여부를 지시할 수 있다. Res 는 향후 사용을 위해 남겨둔 부분을 의미할 수 있다(Reserved for future use).
A 필드는 해당 세션이 종료되었음을 지시하거나, 종료가 임박했음을 지시할 수 있다. A 필드는 클로즈 세션(Close Session) 플래그의 역할을 수행할 수 있다. B 필드는 전송중인 오브젝트가 종료되었음을 지시하거나, 종료가 임박했음을 지시할 수 있다. B 필드는 클로즈 오브젝트(Close Object) 플래그의 역할을 수행할 수 있다.
HDR_LEN 필드는 헤더의 길이와 관련된 정보를 가질 수 있다. Code point 필드는 해당 패킷의 페이로드를 인코딩 혹은 디코딩하는데 관련된 정보를 나타낼 수 있다. 예를 들어 Code point 필드는 해당 페이로드의 타입이 어떠한 타입인지를 나타내는 데에 사용될 수 있다.
Congestion Control Information 필드는 컨제스쳔(congestion) 컨트롤과 관련된 정보를 가질 수 있다. 여기서 컨제스쳔 컨트롤이란 특정한 정보나 세션 등에 있어 요청이 밀집되거나 과부하되었을 경우, 이를 분산시키기 위한 제어를 의미할 수 있다.
TSI(Transport Session Identifier) 필드는 전송 세션의 식별자를 나타낼 수 있다. 즉, TSI 는 각 LCT 세션의 식별자로서 사용될 수 있다. TSI 값 등으로 불릴 수 있다. TOI (Transport Object Identifier) 필드는 전송 세션을 통해 전송되는 오브젝트의 식별자를 나타낼 수 있다. 해당 LCT 세션을 통해 전달되는 오브젝트들을 식별하는 데에 TOI 값이 사용될 수 있다.
Header Extension 필드는 본 전송 패킷의 헤더가 확장되는 경우, 그 확장된 헤더 부분이 위치하는 곳일 수 있다. 다양한 실시예에 따라 확장 헤더 부분이 정의될 수 있으며, 그 확장 헤더들은 이 Header Extension 필드 부분에 위치될 수 있다. 확장 헤더는 헤더의 추가 정보들을 전송하는 데에 사용될 수 있다. Payload ID 필드는 해당 전송 패킷의 페이로드의 식별자를 지시하는데 사용되거나, 혹은 전송 오브젝트 내에서 페이로드 데이터가 가지는 오프셋 등을 나타내는데 사용될 수 있다.
도시된 괄호 내의 숫자들은 해당 필드들의 할당된 비트수를 의미하나, 이는 실시예에 따라 변경될 수 있는 부분이다.
도시된 제 1 패킷 구조를 확장/변경하는 실시예들을 설명한다.
먼저 일 실시예에서는, 제 1 패킷의 헤더 구조에서 PSI 필드가 활용될 수 있다. 이 실시예에서, 전술한 PSI 필드는 TYPE 필드로 활용될 수 있다. 여기서 사용되는 TYPE 필드는 해당 전송 패킷의 페이로드에 포함된 데이터의 타입을 나타낼 수 있다. 예를 들어, 0x00 의 값을 가지는 경우 페이로드는 시그널링 또는 메타데이터를 포함할 수 있고, 0x01 의 값을 가지는 경우 페이로드는 실시간(real time) 서비스 데이터를 포함할 수 있고, 0x02 의 값을 가지는 경우 페이로드는 비실시간 서비스 데이터를 포함할 수 있다. 0x03 의 경우, 향후 사용을 위해 남겨둘 수 있다(reserved).
다른 실시예에서는, 전술한 TYPE 필드가 PSI 필드가 아닌 Res 부분에 위치할 수도 있다. 즉, 이 실시예에서는, 향후 사용을 위해 남겨둔 부분을 TYPE 필드로 사용할 수도 있다.
또 다른 실시예에서는, 전술한 PSI 필드 부분이 전술한 TYPE 필드로 대체되고, Res 부분이 TYPE_ext 필드로 대체될 수 있다. 즉, 이 실시예는 PSI 필드와 Res 부분을 동시에 이용하여 페이로드의 타입이 지시될 수 있다. 이 경우 TYPE 필드가 그 값에 따라 지시하는 바는 전술한 바와 같을 수 있다. 여기서 TYPE_ext 필드는 TYPE 필드가 지시하는 페이로드 타입에 대하여, 그 포맷을 지시할 수 있다.
예를 들어, TYPE_ext 필드의 값이 0x00 인 경우 페이로드의 데이터는 시그널링 메타데이터 포맷을 가질 수 있다. 0x01 인 경우 페이로드의 데이터는 엔티티 모드(entity mode) 에 따른 포맷을 가질 수 있다. 0x02 인 경우 페이로드의 데이터는 파일에 따른 포맷을 가질 수 있다. 0x03 인 경우 페이로드의 데이터는 MMT 에서 정의하고 있는 MPU 에 따른 포맷을 가질 수 있다.
즉, 전술한 바와 같이 두가지 이상의 데이터 유닛 타입으로 포맷된 데이터를 전송하는 과정에 있어서, 단일한 구조의 전송 패킷을 이용해 해당 데이터들을 전송하기 위하여, 상기 TYPE_ext 필드가 사용될 수 있다. TYPE_ext 필드는 어떠한 형태의 데이터가 페이로드에 포함되어 있는지를 지시하는데에 사용될 수 있다. 예를 들어 TYPE_ext 필드 값이 0x02 인 경우 페이로드는 '파일' 포맷을 가지게 되는데 이 때의 파일이란 DASH 세그먼트를 포함할 수 있다. 또한, 0x03 인 경우 페이로드는 MPU 포맷을 가짐이 지시된다. 이를 통해 어떠한 형태의 데이터가 페이로드에 포함되어 있는지 지시될 수 있다.
도 124 은 본 발명의 다른 실시예에 따른 제 1 패킷 구조를 도시한 도면이다.
또 다른 실시예에 따른 제 1 패킷의 헤더 구조에서, PSI 필드가 CO 필드 및 RAP 필드로 활용될 수 있다.
여기서, CO 필드는, 해당 전송 패킷 구조가 ALC/LCT 패킷 구조와 호환성(compatibility) 을 지원하는지 여부를 나타내는 플래그일 수 있다. 본 필드 값이 1인 경우 ALC/LCT 패킷 구조와 호환성을 가지며, 이 경우 해당 전송 패킷은 전술한 Congestion Control Information 필드를 가질 수 있다. 즉, 해당 전송 패킷은 컨제스쳔 컨트롤 관련 정보를 가지는 Congestion Control Information 필드를 포함할 수 있다. 그러나, 본 필드 값이 0 인 경우, 해당 전송 필드의 Congestion Control Information 필드는 컨제스쳔 컨트롤 외에 다른 것과 관련된 정보를 가질 수 있다. 즉, CO 필드에 의해 지시되는 ALC/LCT 패킷 구조와의 호환성이란, Congestion Control Information 필드가 가지는 정보가 컨제스쳔 컨트롤 관련 정보인지 여부를 의미할 수 있다.
RAP 필드는, 해당 전송 패킷의 페이로드에 포함된 정보 중에, 랜덤 엑세스 포인트(Random access point) 와 관련된 정보가 있는지 여부를 나타내는 플래그일 수 있다. 1 일 경우 해당 정보가 존재하고 0 일 경우 그렇지 않을 수 있다.
CO 필드가 0 인 경우, Congestion Control Information 필드가 가지는 정보에 따라 다양한 실시예가 존재할 수 있다.
먼저 일 실시예로, CO 필드가 0 인 경우에 있어 Congestion Control Information 필드는 페이로드 ID 또는 오프셋 정보를 가질 수 있다. 페이로드 ID 는 해당 전송 패킷이 가지는 페이로드에 대한 식별자를 의미할 수 있고, 오프셋 정보는 해당 전송 패킷의 페이로드 내의 데이터가 전송 오브젝트 내에서 가지는 오프셋 값을 의미할 수 있다. Congestion Control Information 필드만으로 부족한 경우, 기존의 페이로드 ID 필드(혹은 오프셋 필드) 가 페이로드 ID/오프셋의 확장(extension) 필드로서 활용될 수 있다.
다른 실시예로, CO 필드가 0 인 경우에 있어 Congestion Control Information 필드는 타임 스탬프 정보를 가질 수 있다. 타임 스탬프 정보는 페이로드가 가지는 데이터와 연관된 타임 스탬프 정보일 수 있다. 해당 타임 스탬프는 페이로드가 가지는 데이터의 재생시각(presentation time) 등을 나타내는데 사용될 수 있다.
또 다른 실시예로, CO 필드가 0 인 경우에 있어 Congestion Control Information 필드는 MPU 시퀀스 넘버 정보를 가질 수 있다. 이 경우 해당 전송 패킷의 페이로드에는 MMT 에서 정의되고 있는 MMTP 페이로드가 포함될 수 있다. MMT 프로토콜에 따른 전송 패킷의 경우, MPU 의 시퀀스 넘버 정보가 페이로드 내의 페이로드 헤더에 존재한다. 이 경우 수신기는 전송 패킷의 헤더 뿐 아니라, 페이로드 내의 페이로드 헤더까지 파싱하여야 MPU 의 시퀀스 넘버 정보를 알게 된다. 이는 수신기 측의 오퍼레이션 로드로 작용될 수 있다. 따라서 이를 줄이기 위하여 MPU 시퀀스 넘버 정보를 전송 패킷의 헤더에서 가지도록 구조가 변형될 수 있다. 즉, 이 전송패킷 구조의 실시예는 MPU 타입의 정보를 전송하는 경우에 있어서 효율성을 높이기 위한 구조라고 볼 수 있다.
CO 필드가 0 인 경우에 있어 Congestion Control Information 필드는 전술한 것 외에도 다양한 정보를 가질 수 있다. 이를 헤더에서 표현해주기 위하여 Res 파트에 MODE 필드를 삽입할 수 있다. MODE 필드는 Congestion Control Information 필드에 포함된 정보의 타입을 지시할 수 있다. 예를 들어, 0x00 의 경우 페이로드 ID 또는 오프셋 정보, 0x01 의 경우 타임 스탬프, 0x02 의 경우 MPU 시퀀스 넘버 정보가 Congestion Control Information 필드에 포함될 수 있다. 0x03 의 경우 향후 사용을 위해 남겨둘 수 있다(reserved).
도시된 전송 패킷 구조에서, 페이로드 부분은 생략되었다. 또한 도시된 나머지 필드들은 전술한 바와 같다.
도 125 는 본 발명의 또 다른 실시예에 따른 제 1 패킷 구조를 도시한 도면이다.
또 다른 실시예에 따른 제 1 패킷의 헤더 구조에서, PSI 필드가 P 필드 및 RAP 필드로 활용될 수 있다. RAP 필드는 전술한 바와 같다.
P 필드는 해당 전송 패킷이 지원할 수 있는 프로토콜에 대한 정보를 나타낼 수 있다. 실시예에 따라 의미하는 바는 다를 수 있다. 예를 들어 0 인 경우, 해당 전송 패킷은 ALC/LCT 프로토콜을 지원하며 전송 패킷 구조가 ROUTE(ALC/LCT) 의 전송 패킷 구조와 호환성(compatibility) 을 지원함을 나타낼 수 있다. 그 값이 1인 경우 ROUTE(ALC/LCT)이 아닌 다른 전송 프로토콜(예를 들어 MMT 등)이 지원됨을 나타낼 수 있다.
이 실시예에 있어서, Res 부분은 TYPE 필드로 활용될 수 있다. TYPE 필드는 해당 전송 프로토콜 패킷의 페이로드에 포함된 데이터의 타입을 나타낼 수 있다. 즉, 전술한 바와 같이 0x00 의 값을 가지는 경우 페이로드는 시그널링 또는 메타데이터를 포함할 수 있고, 0x01 의 값을 가지는 경우 페이로드는 실시간(real time) 서비스 데이터를 포함할 수 있고, 0x02 의 값을 가지는 경우 페이로드는 비실시간 서비스 데이터를 포함할 수 있다. 0x03 의 경우, 향후 사용을 위해 남겨둘 수 있다(reserved).
도 126 은 본 발명의 또 다른 실시예에 따른 제 1 패킷의 페이로드 구조들을 도시한 도면이다.
P 필드 값이 1 인 경우, 전술한 바와 같이 ROUTE(ALC/LCT) 가 아닌 다른 전송 프로토콜이 전송패킷에 의해 지원될 수 있다. 예를 들어 MMT 가 지원되는 경우, 해당 전송 패킷의 페이로드에는 MMT 에서 정의되는 MMTP 페이로드가 포함될 수 있다. 실시예에 따라 해당 전송 패킷의 페이로드는 MPU, GFD 파일, MPU 메타데이터, MFU 등의 데이터가 그대로 포함될 수도 있다.
예를 들어, P 필드 값이 1 이고 전송 패킷이 MMT 프로토콜을 지원하는 경우에 있어, TYPE 필드에 따라 다음의 다양한 페이로드 타입이 존재할 수 있다.
일 실시예에서, 전술한 TYPE 필드 값이 페이로드에 시그널링/메타데이터를 포함하고 있음을 나타낼 수 있다. 이 경우 해당 패킷의 페이로드에는 (t123010) 과 같은 페이로드가 오거나, 시그널링/메타데이터 그 자체가 올 수 있다. 즉 시그널링 데이터를 위해 정의된 MMT 페이로드(t123010)이 페이로드에 위치될 수 있다.
다른 실시예에서, 전술한 TYPE 필드 값이 페이로드에 비실시간 데이터 또는 제네릭 파일을 포함하고 있음을 나타낼 수 있다. 이 경우 해당 패킷의 페이로드에는 (t123020) 과 같은 페이로드가 오거나, 비실시간 데이터/제네릭 파일 그 자체가 올 수 있다. 즉 비실시간 데이터/제네릭 파일을 위해 정의된 MMT 페이로드(t123020, GFD mode 페이로드)가 페이로드에 위치될 수 있다.
또 다른 실시예에서, 전술한 TYPE 필드 값이 페이로드에 실시간 데이터를 포함하고 있음을 나타낼 수 있다. 이 경우 해당 패킷의 페이로드에는 (t123030) 과 같은 페이로드가 오거나, 실시간 데이터 그 자체(MPU, movie fragment, MFU(DU) 등)가 올 수 있다. 즉 실시간 데이터를 위해 정의된 MMT 페이로드(t123030, MPU mode 페이로드)가 페이로드에 위치될 수 있다.
도 127 는 본 발명의 일 실시예에 따른 제 2 패킷의 헤더 구조 및 페이로드 헤더 구조를 도시한 도면이다.
전술한 바와 같이, 본 발명은 두가지 이상의 데이터 유닛 타입으로 포맷된 데이터를 전송하는 과정에 있어서, 단일한 전송 프로토콜을 이용하여 해당 데이터들을 전송하기 위한 방안을 제안한다. 전술한 제 1 패킷과는 다른 형태, 즉 제 2 패킷에 대해서도 그 패킷 구조를 변형/확장하여, 다양한 포맷으로 포맷된 데이터들을 효과적으로 담을 수 있도록 하는 방안이 제시될 수 있다.
여기서 제 2 패킷은 기본적으로, 제 1 패킷에 담기는 데이터와는 다른 프로토콜에 기반한 데이터를 담기 위한 전송 패킷 구조를 가질 수 있다. 이 제 2 패킷 역시 다른 프로토콜에 기반한 데이터를 담기 위해 확장/변경 될 수 있다. 예를 들어, 확장을 위하여 TOI 정보 등이 더 포함될 수 있다.
도시된 제 2 패킷 구조는 MMTP 에 따른 MMTP 패킷 구조일 수 있다. 제 2 패킷은 헤더와 페이로드 부분으로 나뉠 수 있다. 실시예에 따라 페이로드는 페이로드 헤더와 페이로드 데이터로 나뉠 수 있다. 헤더는 도시된 바와 같이(t124010) V, C, FEC, r, ..., Header Extension 필드 등이 포함될 수 있다. 실시예에 따라 일부 필드들은 생략될 수 있다. 이하 제 2 패킷이란 2번째 패킷을 의미하는 것이 아니고, 제 2 타입을 가지는 패킷으로 의미될 수 있다.
V 필드는 해당 전송 프로토콜 패킷, 즉 여기서는 제 2 패킷의 버전정보를 나타낼 수 있다. C필드는 Packet_Counter 필드의 존재 유무를 나타내는 플래그일 수 있다. FEC 필드는 해당 전송 패킷과 관련있는 FEC 스킴(scheme)을 나타낼 수 있다. 예를 들어 AL-FEC 이 적용/미적용된 경우 소스 패킷 혹은 리페어 패킷 등을 나타낼 수 있다.
X 필드는 확장 헤더(Header Extension) 이 존재하는지 여부를 나타내는 플래그일 수 있다. R 은 전송 패킷의 페이로드에 RAP(Random Access Point) 의 포함여부를 지시하는 플래그일 수 있다. TYPE 필드는 전송 패킷의 페이로드 데이터의 타입을 지시하는 필드일 수 있다. 예를 들어 본 필드는 시그널링, 제네릭 오브젝트, MPU, DASH 세그먼트, 리페어 심볼 등의 타입을 지시할 수 있다.
Packet_id 필드는 전송 패킷의 식별자를 나타낼 수 있다. 이는 전술한 제 1 패킷의 TSI 필드와 같이 전송 패킷들의 흐름에 대한 식별자, 즉 패킷 플로우에 대한 식별자 역할을 할 수 있다. 타임 스탬프 필드는 해당 전송 패킷과 관련된 타임 스탬프를 나타내거나, 해당 전송 패킷을 전송하는 시점의 서버 시간등을 나타낼 수 있다. 타임 스탬프 필드는 해당 전송 패킷에서 포함하는 데이터의 첫번재 바이트가 전송되기 시작할 때의 시간 정보 등을 나타내거나, 페이로드 데이터의 재생시각(presentation time) 등을 나타낼 수 있다.
Packet_Sequence_Number 필드는 동일한 Packet_id 필드를 가지는 전송 패킷들 간의 시퀀스 넘버를 나타낼 수 있다. Header Extension 필드는 헤더의 추가 정보를 전송하는 확장 헤더를 포함할 수 있다.
도시된 괄호 내의 숫자들은 해당 필드들의 할당된 비트수를 의미하나, 이는 실시예에 따라 변경될 수 있는 부분이다.
제 2 패킷의 페이로드는 페이로드 데이터만을 포함하거나, 또는 페이로드 헤더와 페이로드 데이터를 포함할 수 있다. 페이로드가 페이로드 헤더와 페이로드 데이터를 포함하는 경우, 도시된 것과 같은 페이로드 헤더 정보가 포함될 수 있다(t124020). 이러한 페이로드 헤더는 전술한 Header Extension 필드에 포함될 수도 있다.
Header length 필드는 페이로드 헤더의 길이를 나타낼 수 있다. SO(start Object flag) 필드는 페이로드에 포함된 전송 오브젝트의 전송이 시작되었음을 표현할 수 있다. CO(Close Object flag) 필드는 페이로드에 포함된 전송 오브젝트의 전송이 종료되었거나, 또는 종료가 임박했음을 표현할 수 있다.
Offset Scheme 필드는 페이로드의 Payload ID 혹은 오프셋을 표현하는 스킴(scheme) 을 나타낼 수 있다. Payload Format 필드는 페이로드의 포멧을 나타낼 수 있다. 예를 들어 제네릭 파일이나, 엔티티 형태, DASH 세그먼트, MPU 등이 그 포맷일 수 있다.
Code point 필드는 해당 패킷의 페이로드를 인코딩 혹은 디코딩하는 것과 관련된 정보를 나타낼 수 있다. TOI 필드는 페이로드에 포함된 전송 오브젝트의 식별자를 나타낼 수 있다. Payload ID(or offset) 필드는 페이로드의 식별자 혹은 전송 오브젝트 내에서 해당 페이로드가 포함하는 데이터의 오프셋 정보를 나타낼 수 있다.
전송 패킷의 페이로드 데이터는 DASH 세그먼트나, MPU, 제네릭 파일, 시그널링/메타데이터 등의 실질적인 데이터를 포함할 수 있다.
도시된 제 2 패킷 구조를 확장/변경하는 실시예들을 설명한다.
일 실시예에서, 제 2 패킷 구조의 Packet_id 필드는 Packet_Flow_id 필드로 대체될 수 있다. Packet_Flow_id 필드는 해당 패킷 플로우에 대한 식별자를 나타낼 수 있다. 예를 들어 하나의 컴포넌트와 관련된 복수개의 패킷들(오디오, 비디오 등) 과 관련된 패킷들에 대한 식별자를 나타낼 수 있다. 즉, 동일한 컴포넌트와 연관된 패킷들은 동일한 Packet_Flow_id 값을 가질 수 있다.
다른 실시예에서, 제 2 패킷 구조는 향후 사용을 위해 남겨두었던 r 부분에 P 필드를 포함할 수 있다. P 필드는 해당 전송 패킷에 Packet_Sequence_Number 필드가 존재하는지 여부를 나타내는 플래그일 수 있다. 본 필드의 값이 1 인 경우 packet_sequence_number 필드가 존재하고, 0 일 경우 그렇지 아니할 수 있다.
도 128 는 본 발명의 다른 실시예에 따른 제 2 패킷의 헤더 구조들을 도시한 도면이다.
또 다른 실시예(t125010)에서, 제 2 패킷 구조는 향후 사용을 위해 남겨두었던 Res 부분에 T 필드와 O 필드를 포함할 수 있다.
T 필드는 TOI 필드가 전송 패킷에 포함되는지 여부를 나타내는 플래그일 수 있다. 1 일 경우 TOI 필드가 존재하고 0 일 경우 그렇지 않다. O 필드는 Offset 필드가 전송 패킷에 포함되는지 여부를 나타내는 플래그일 수 있다. 1 일 경우 Offset 필드가 존재하고 0 일 경우 그렇지 않다.
TOI 필드는 전송 패킷의 페이로드에 포함된 전송 오브젝트(DASH 세그먼트, 시그널링, MPU, 제네릭 파일 등) 의 식별자를 나타낼 수 있다. 일반적으로 MMTP 패킷 구조상, TOI 값은 페이로드 헤더에 위치되므로 수신기가 페이로드까지 파싱하여야 그 값을 확인할 수 있었다. 그러나, TOI 값을 일반 헤더에 위치시킴으로써 그 오버헤드를 줄일 수 있다.
Offset 필드는 페이로드에 포함된 데이터가, 전송 오브젝트 내에서 가지는 오프셋 값을 포함할 수 있다.
또 다른 실시예(t125020)에서, 제 2 패킷 구조는 향후 사용을 위해 남겨두었던 Res 부분에 T 필드와 CO 필드를 포함할 수 있다. T 필드, TOI 필드는 전술한 바와 같을 수 있다.
여기서, CO (Close Object flag) 필드는, 페이로드에 포함된 전송 오브젝트의 전송이 종료, 또는 종료가 임박했음을 표현할 수 있다. 이러한 정보 역시 일반적인 MMTP 패킷 구조와 다르게, 페이로드 헤더가 아닌 일반 전송 패킷 헤더에 위치됨으로써, 수신기에서의 그 오버헤드를 줄일 수 있다.
또 다른 실시예(t125030)에서, 제 2 패킷 구조는 향후 사용을 위해 남겨두었던 Res 부분에 T 필드와 SO 필드를 포함할 수 있다. T 필드, TOI 필드는 전술한 바와 같을 수 있다.
여기서, SO(Start Object flag) 필드는, 페이로드에 포함된 전송 오브젝트의 전송이 시작되었음을 표현할 수 있다. 이러한 정보 역시 일반적인 MMTP 패킷 구조와 다르게, 페이로드 헤더가 아닌 일반 전송 패킷 헤더에 위치됨으로써, 수신기에서의 그 오버헤드를 줄일 수 있다.
도 129 은 본 발명의 또 다른 실시예에 따른 제 2 패킷의 확장헤더(Header Extension) 구조들을 도시한 도면이다.
또 다른 실시예(t126010)에서, 제 2 패킷 구조는 Header Extension 필드에 도시된 것과 같은 정보들을 가질 수 있다. 즉, TYPE 필드, Length 필드, Offset Scheme 필드등이 Header Extension 에 포함될 수 있다. 여기서 TYPE 필드는 Header Extension 에 포함된 정보의 타입을 지시할 수 있다. Length 필드는 Header Extension 의 길이를 나타낼 수 있다. Offset Scheme 필드, Offset 필드 등은 전술한 바와 같을 수 있다.
또 다른 실시예(t126020)에서, 제 2 패킷 구조는 Header Extension 필드에 도시된 것과 같은 정보들을 가질 수 있다. 즉, 전술한 TYPE 필드, Length 필드와 함께, Presentation Timestamp 필드가 포함될 수 있다. 여기서 Presentation Timestamp 필드(PTS 필드)는 페이로드에 포함된 데이터의 재생시점을 나타내는 시간 정보를 포함할 수 있다.
도 130 은 본 발명의 일 실시예에 따른, 제 1 패킷 또는 제 2 패킷이 전송되는 과정을 도시한 도면이다.
전술한 확장/변경된 구조를 가지는 전송 패킷들에 의해서 미디어 데이터(Media essence), 시그널링 정보 등이 전송될 수 있다.
먼저 시그널링 정보는 전송 프로토콜에 따라 전술한 헤더들을 붙여 전송 패킷들로 인캡슐레이션 될 수 있다. 전송 헤더(TPH) 들은 전술한 다양한 실시예들에 따를 수 있다. 또한, 미디어 데이터들은, 일 예시로 DASH 세그먼트로 포맷되는 경우, ftyp 박스, moov 박스 등을 가지는 초기화 세그먼트(initialization segment) 와, 각각의 미디어 세그먼트들로 나뉘어 질 수 있다. 미디어 세그먼트들은 styp 박스, sidx 박스, moof 박스, mdat 박스 등을 포함할 수 있다. mdat 박스에 실질적인 미디어 데이터가 포함될 수 있다.
이러한 세그먼트들은, 마찬가지로 전술한 헤더들을 붙여 전송 패킷들로 인캡슐레이션 될 수 있다. 전송 헤더(TPH) 들은 전술한 다양한 실시예들에 따를 수 있다. 이렇게 생성된 전송 패킷들은 전송 세션(ROUTE, MMTP 등)을 통하여 전송될 수 있다.
도 131 은 본 발명의 일 실시예에 따른 방송 신호를 전송하는 방법을 도시한 도면이다.
본 발명의 일 실시예에 따른 방송 신호를 전송하는 방법은 서비스 리스트 테이블을 생성하는 단계, 제 1 서비스 데이터 및 서비스 시그널링 정보를 생성하는 단계, 제 1 서비스 데이터, 서비스 리스트 테이블 및 서비스 시그널링 정보를 방송 스트림으로 프로세싱하는 단계 및/또는 방송 스트림을 전송하는 단계 를 포함할 수 있다.
송신측의 제 1 모듈은 서비스 시그널링 정보를 전달하는 전송 세션을 식별하기 위한 정보를 포함하는 서비스 리스트 테이블을 생성할 수 있다. 여기서 서비스 시그널링 정보는 전술한 SLS 에 해당할 수 있다. 전송 세션은 전술한 LCT 내지 ROUTE 세션을 의미할 수 있다. 전송 세션을 식별하기 위한 정보는 전술한 ROUTE 세션 등의 IP, UDP 정보를 의미할 수 있다. 서비스 시그널링 정보는 제 1 서비스 데이터의 접근 정보를 포함할 수 있다. 여기서 접근 정보는 전술한 부트스트랩 정보일 수 있다. 제 1 모듈은 서비스 리스트 테이블 생성을 관장하는 하드웨어 모듈일 수 있다.
전술한 제 1 모듈은 제 1 서비스 데이터 및 서비스 시그널링 정보를 생성할 수 있다. 제 1 모듈은 실질적인 서비스 데이터 및/또는 그에 대한 SLS 를 생성할 수 있다.
송신측의 제 2 모듈은 제 1 서비스 데이터, 서비스 리스트 테이블 및/또는 서비스 시그널링 정보를 방송 스트림으로 프로세싱할 수 있다. 제 2 모듈은 전술한 피지컬 레이어의 프로세싱을 담당하는 모듈일 수 있다. 전술한 바와 같이 제 2 모듈은 인코딩, 인터리빙, 프레이밍, 변조 등의 동작을 수행할 수 있다.
송신측의 제 3 모듈은 방송 스트림을 전송할 수 있다. 제 3 모듈은 실시예에 따라 제 2 모듈에 포함될 수 있다. 제 3 모듈은 안테나 등에 해당할 수 있다.
본 발명의 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 제 1 서비스 데이터 및 서비스 시그널링 정보는 전송 세션의 전송 패킷들로 인캡슐레이션되어 전달되고, 각각의 전송 패킷들은 헤더와 페이로드를 가질 수 있다. 여기서 전송 패킷은 전술한 ROUTE 패킷 내지는 LCT 패킷일 수 있다. 실시예에 따라 MMTP 패킷일 수도 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법은, 서비스 데이터를 처리하는 방법은, 제 1 서비스 데이터와 다른 프로토콜에 기반한 제 2 서비스 데이터를 생성하는 단계를 더 포함할 수 있다. 여기서 다른 프로토콜이란 MMTP 프로토콜을 의미할 수 있다. 제 1 서비스 데이터는 ROUTE 프로토콜에 따라 전달되고, 제 2 서비스 데이터는 MMTP 에 따라 전달될 수 있다. 각각의 프로토콜은 서로 바뀔 수 있다. 각 프로토콜에 따른 전송 방법은 전술하였다. 재 1 서비스 데이터는 제 1 서비스에 관한 데이터이고, 제 2 서비스 데이터는 제 2 서비스에 관한 데이터일 수 있다. 또는 제 1, 2, 서비스 데이터는 하나의 동일한 서비스에 포함되는 서비스 컴포넌트들에 해당할 수 있다. 적어도 하나의 전송 패킷은 제 2 서비스 데이터와 제 2 서비스 데이터를 전달하기 위한 확장된 헤더를 가질 수 있다. 전술한 바와 같이 전송 패킷은 확장되어, 두 개 이상의 프로토콜에 따라 전달되는 데이터를 위한 정보를 가질 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 확장된 헤더는 헤더 모드 정보를 더 포함하고, 헤더 모드 정보에 따라 확장된 헤더는 제 2 서비스 데이터의 시퀀스 넘버 정보 또는 타임 스탬프 정보를 포함할 수 있다. 여기서 헤더 모드 정보는 전술한 MODE 정보에 해당할 수 있다. 시퀀스 넘버 정보, 타임 스탬프 정보는 전술한 MPU 시퀀스 넘버 필드 내지 타임스탬프 필드에 해당할 수 있다. 일반적으로 MMT 의 전송 패킷에는 타임스탬프 관련 정보가 없을 수 있는데, ROUTE 패킷이 확장되면서 이러한 타임 스탬프 정보를 확장된 ROUTE 패킷이 제공할 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 적어도 하나의 전송 패킷의 페이로드는 페이로드 헤더와 제 2 서비스 데이터를 포함하는 페이로드 데이터를 더 포함하고, 페이로드 헤더는 제 2 서비스 데이터가 실시간 서비스 데이터인지에 따라 다른 구조를 가질 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 확장된 헤더는 페이로드 헤더의 타입을 지시하는 페이로드 타입 정보를 더 포함할 수 있다. 이 타입 정보는 전술한 TYPE 필드에 해당할 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 전송 패킷의 헤더는 페이로드에 포함되는 데이터를 식별하기 위한 전송 오브젝트 식별자를 더 포함할 수 있다. 여기서 전송 오브젝트 식별자는 전술한 필터링을 위한 TOI 필드에 해당할 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 전송 오브젝트 식별자는 프래그먼트 타입 정보, 프래그먼트 타입 확장 정보 및 프래그먼트 버전 정보를 더 포함할 수 있다. 프래그먼트 타입 정보는 전송 패킷이 전송하는 서비스 시그널링 정보의 타입을 지시하고, 프래그먼트 타입 확장 정보는 서비스 시그널링 정보의 서브 타입을 지시하고, 프래그먼트 버전 정보는 상기 서비스 시그널링 정보의 버전을 지시할 수 있다. 여기서 프래그먼트 타입 정보, 프래그먼트 타입 확장 정보 및 프래그먼트 버전 정보는 각각 전술한 TOI 필터링을 위한 정보들에 해당할 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 전송 세션은 ROUTE 세션일 수 있다. 실시예에 따라 전송 세션이 MMTP 세션이고, 제 2 서비스 데이터를 담는 전송 패킷이 ROUTE 세션일 수도 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 서비스 시그널링 정보는 전송 세션의 전용 채널을 통해 전달될 수 있다. 전술한 것과 같이 SLS 는 예를들어, ROUTE 세션의 특정 LCT 세션 (tsi = 0) 으로 전달될 수 있다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 방법을 설명한다. 이 방법은 도면에 도시되지 아니하였다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 방법은 수신측의 제 1 모듈이 방송 신호를 수신하는 단계, 제 2 모듈이 방송 신호를 피지컬 프로세싱하는 단계, 제 3 모듈이 서비스 리스트 테이블을 획득하는 단계, 제 4 모듈이 서비스 리스트 테이블을 이용하여 서비스 데이터들을 획득하는 단계 및/또는 제 5 모듈이 획득된 서비스 데이터들을 이용하여 서비스를 제공하는 단계를 포함할 수 있다. 여기서 피지컬 프로세싱 등은 송신측의 대응되는 동작의 역과정을 수행할 수 있다.
본 발명의 실시예들에 따른 방송 신호를 수신하는 방법들은, 전술한 본 발명의 실시예들에 따른 방송 신호를 전송하는 방법들에 대응될 수 있다. 방송 신호를 수신하는 방법들은, 방송 신호를 전송하는 방법에서 사용되는 모듈들(예를 들어, 송신측의 제 1, 2, 3 모듈 등)에 대응되는 하드웨어 모듈들에 의해 수행될 수 있다. 방송 신호를 수신하는 방법은, 전술한 방송 신호를 전송하는 방법의 실시예들에 대응되는 실시예들을 가질 수 있다.
전술한 단계들은 실시예에 따라 생략되거나, 유사/동일한 동작을 수행하는 다른 단계에 의해 대체될 수 있다.
도 132 는 본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치를 도시한 도면이다.
본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치는 전술한 송신측의 제 1, 2, 및/또는 3 모듈을 포함할 수 있다. 각각의 블락, 모듈들은 전술한 바와 같다.
본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치 및 그 내부 모듈/블락들은, 전술한 본 발명의 방송 신호를 전송하는 방법의 실시예들을 수행할 수 있다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 장치를 설명한다. 이 장치는 도면에 도시되지 아니하였다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 장치는 전술한 수신측의 제 1, 2, 3, 4, 및/또는 5 모듈을 포함할 수 있다. 각각의 블락, 모듈들은 전술한 바와 같다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 장치 및 그 내부 모듈/블락들은, 전술한 본 발명의 방송 신호를 수신하는 방법의 실시예들을 수행할 수 있다.
전술한 장치 내부의 블락/모듈 등은 메모리에 저장된 연속된 수행과정들을 실행하는 프로세서들일 수 있고, 실시예에 따라 장치 내/외부에 위치하는 하드웨어 엘레멘트들일 수 있다.
전술한 모듈들은 실시예에 따라 생략되거나, 유사/동일한 동작을 수행하는 다른 모듈에 의해 대체될 수 있다.
이하, PLP (Physical Layer Pipe) 모드에 따라 컨볼루션 인터리버(Convolution Interleaver, CI)와 블록 인터리버(Block Interleaver, BI)를 선택적으로 사용하거나, 모두 사용하는 타임 인터리버의 구조 및 타임 인터리빙 방법을 설명한다. 본 발명의 일 실시예에 따른 PLP는 상술한 DP와 동일한 개념으로 사용되는 피지컬 패스(physical path)로서, 호칭은 설계자의 의도에 따라 변경 가능하다.
본 발명의 일 실시예에 따른 PLP 모드는 방송 신호 송신기 또는 방송 신호 송신 장치에서 처리하는 PLP 개수에 따라 싱글 PLP(single PLP) 모드 또는 멀티플 PLP(multiple PLP)모드를 포함할 수 있다. 싱글 PLP 모드는 방송 신호 송신 장치에서 처리하는 PLP 개수가 하나인 경우를 의미한다. 싱글 PLP 모드는 싱글 PLP로 호칭할 수도 있다.
멀티플 PLP모드는 방송 신호 송신 장치에서 처리하는 PLP 개수가 하나 이상인 경우로서, 멀티플 PLP 모드는 멀티플 PLP로 호칭할 수도 있다.
본 발명에서는 PLP 모드에 따라 서로 다른 타임 인터리빙 방법을 적용하는 타임 인터리빙을 하이브리드 타임 인터리빙(Hybrid Time Interleaving)이라 호칭할 수 있다. 본 발명의 일 실시예에 따른 하이브리드 타임 인터리빙은 멀티플 PLP 모드의 경우, 각 PLP별로 (혹은 PLP 레벨에서) 적용된다.
도 133 는 PLP 개수에 따라 적용하는 인터리빙 타입을 표로 도시한 도면이다. 본 발명의 일실시예에 따른 타임 인터리버는 PLP_NUM의 값을 기반으로 인터리빙 타입(Interleaving type)이 결정될 수 있다. PLP_NUM는 PLP 모드를 나타내는 시그널링 필드(signaling field) 이다. PLP_NUM의 값이 1인 경우, PLP 모드는 싱글 PLP이다. 본 발명의 일 실시예에 따른 싱글 PLP는 컨볼루션 인터리버(Convolutional Interleaver, CI)만 적용될 수 있다.
PLP_NUM의 값이 1보다 큰 경우, PLP 모드는 멀티플 PLP이다. 본 발명의 일 실시예에 따른 멀티플 PLP는 컨볼루션 인터리버(Convolutional Interleaver, CI)와 블록 인터리버(Block Interleaver, BI)가 적용될 수 있다. 이 경우, 컨볼루션 인터리버는 인터 프레임 인터리빙(Inter frame interleaving)을 수행할 수 있으며, 블록 인터리버는 인트라 프레임 인터리빙(Intra frame interleaving)을 수행할 수 있다. 인터 프레임 인터리빙 및 인트라 프레임 인터리빙의 구체적인 내용은 전술한 내용과 동일하다.
도 134 은 상술한 하이브리드 타임 인터리버 구조의 제 1 실시예를 포함하는 블록도이다. 제 1 실시예에 따른 하이브리드 타임 인터리버는 블록 인터리버(BI)와 컨볼루션 인터리버(CI)를 포함할 수 있다. 본 발명의 타임 인터리버는 BICM 체인(BICM chain) 블록과 프레임 빌더(Frame Builder) 사이에 위치할 수 있다. 도 134 내지 도 135 에 도시된 BICM 체인 블록은 도 5에 도시된 BICM 블록의 처리 블록(5000) 중 타임 인터리버(5050)를 제외한 블록들을 포함할 수 있다. 도 134 내지 도 135 에 도시된 프레임 빌더는 도 1의 프레임 빌딩(1020)블록의 동일한 역할을 수행할 수 있다.
상술한 바와 같이 하이브리드 타임 인터리버 구조의 제 1 실시예에 따른 블록 인터리버는 PLP_NUM 값에 따라 적용 여부가 결정될 수 있다. 즉, PLP_NUM=1인 경우, 블록 인터리버는 적용되지 않고(블록인터리버 오프(off)), 컨볼루션 인터리버만 적용된다. PLP_NUM>1인 경우, 블록 인터리버와 컨볼루션 인터리버가 모두 적용(블록 인터리버 온(on))될 수 있다. PLP_NUM>1인 경우 적용되는 컨볼루션 인터리버의 구조 및 동작은 PLP_NUM=1인 경우 적용되는 컨볼루션 인터리버의 구조 및 동작과 동일하거나 유사할 수 있다.
도 135 은 상술한 하이브리드 타임 인터리버 구조의 제 2 실시예를 포함하는 블록도이다.
하이브리드 타임 인터리버 구조의 제 2 실시예에 포함되는 각 블록의 동작은 도 134 에서 설명한 내용과 동일하다. 하이브리드 타임 인터리버 구조의 제 2 실시예에 따른 블록 인터리버는 PLP_NUM 값에 따라 적용 여부가 결정될 수 있다. 제 2 실시예에 따른 하이브리드 타임 인터리버의 각 블록들은 본 발명의 실시예에 따른 동작들을 수행할 수 있다. 이 때, PLP_NUM=1인 경우와 PLP_NUM>1인 경우 적용되는 컨볼루션 인터리버의 구조 및 동작이 서로 다를 수 있다.
도 136 는 하이브리드 타임 디인터리버의 구조의 제 1 실시예를 포함하는 블록도이다.
제 1 실시예에 따른 하이브리드 타임 디인터리버는 상술한 제 1 실시예에 따른 하이브리드 타임 인터리버의 역동작에 상응하는 동작을 수행할 수 있다. 따라서, 도 136 의 제 1 실시예에 따른 하이브리드 타임 디인터리버는 컨볼루션 디인터리버(Convolutional deinterleaver, CDI)와 블록 디인터리버(Block deinterleaver, BDI)를 포함할 수 있다.
PLP_NUM>1인 경우 적용되는 컨볼루션 디인터리버의 구조 및 동작은 PLP_NUM=1인 경우 적용되는 컨볼루션 디인터리버의 구조 및 동작과 동일하거나 유사할 수 있다.
하이브리드 타임 디인터리버 구조의 제 1 실시예에 따른 블록 디인터리버는 PLP_NUM 값에 따라 적용 여부가 결정될 수 있다. 즉, PLP_NUM=1인 경우, 블록 디인터리버는 적용되지 않고(블록 디인터리버 오프(off)), 컨볼루션 디인터리버만 적용된다.
하이브리드 타임 디인터리버의 컨볼루션 디인터리버는 인터 프레임 디인터리빙(Inter frame deinterleaving)을 수행할 수 있으며, 블록 디인터리버는 인트라 프레임 디인터리빙(Intra frame deinterleaving)을 수행할 수 있다. 인터 프레임 디인터리빙 및 인트라 프레임 디인터리빙의 구체적인 내용은 전술한 내용과 동일하다.
도 136 내지 도 137 에 도시된 BICM 디코딩(BICM decoding) 블록은 도 134 내지 도 135 의 BICM 체인(BICM chain)블록의 역동작을 수행할 수 있다.
도 137 은 하이브리드 타임 디인터리버의 구조의 제 2 실시예를 포함하는 블록도이다.
제 2 실시예에 따른 하이브리드 타임 디인터리버는 상술한 제 2 실시예에 따른 하이브리드 타임 인터리버의 역동작에 상응하는 동작을 수행할 수 있다. 하이브리드 타임 디인터리버 구조의 제 2 실시예에 포함되는 각 블록의 동작은 도 136 에서 설명한 내용과 동일할 수 있다.
하이브리드 타임 디인터리버 구조의 제 2 실시예에 따른 블록 디인터리버는 PLP_NUM 값에 따라 적용 여부가 결정될 수 있다. 제 2 실시예에 따른 하이브리드 타임 디인터리버의 각 블록들은 본 발명의 실시예에 따른 동작들을 수행할 수 있다. 이 때, PLP_NUM=1인 경우와 PLP_NUM>1인 경우 적용되는 컨볼루션 디인터리버의 구조 및 동작이 서로 다를 수 있다.
모듈 또는 유닛은 메모리(또는 저장 유닛)에 저장된 연속된 수행과정들을 실행하는 프로세서들일 수 있다. 전술한 실시예에 기술된 각 단계들은 하드웨어/프로세서들에 의해 수행될 수 있다. 전술한 실시예에 기술된 각 모듈/블락/유닛들은 하드웨어/프로세서로서 동작할 수 있다. 또한, 본 발명이 제시하는 방법들은 코드로서 실행될 수 있다. 이 코드는 프로세서가 읽을 수 있는 저장매체에 쓰여질 수 있고, 따라서 장치(apparatus)가 제공하는 프로세서에 의해 읽혀질 수 있다.
설명의 편의를 위하여 각 도면을 나누어 설명하였으나, 각 도면에 서술되어 있는 실시 예들을 병합하여 새로운 실시 예를 구현하도록 설계하는 것도 가능하다. 그리고, 통상의 기술자의 필요에 따라, 이전에 설명된 실시 예들을 실행하기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록 매체를 설계하는 것도 본 발명의 권리범위에 속한다.
본 발명에 따른 장치 및 방법은 상술한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상술한 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
한편, 본 발명이 제안하는 방법을 네트워크 디바이스에 구비된, 프로세서가 읽을 수 있는 기록매체에, 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다.
그리고, 당해 명세서에서는 물건 발명과 방법 발명이 모두 설명되고 있으며, 필요에 따라 양 발명의 설명은 보충적으로 적용될 수가 있다.
본 발명의 사상이나 범위를 벗어나지 않고 본 발명에서 다양한 변경 및 변형이 가능함은 당업자에게 이해된다. 따라서, 본 발명은 첨부된 청구항 및 그 동등 범위 내에서 제공되는 본 발명의 변경 및 변형을 포함하는 것으로 의도된다.
본 명세서에서 장치 및 방법 발명이 모두 언급되고, 장치 및 방법 발명 모두의 설명은 서로 보완하여 적용될 수 있다.
다양한 실시예가 본 발명을 실시하기 위한 최선의 형태에서 설명되었다.
본 발명은 일련의 방송 신호 제공 분야에서 이용된다.
본 발명의 사상이나 범위를 벗어나지 않고 본 발명에서 다양한 변경 및 변형이 가능함은 당업자에게 자명하다. 따라서, 본 발명은 첨부된 청구항 및 그 동등 범위 내에서 제공되는 본 발명의 변경 및 변형을 포함하는 것으로 의도된다.

Claims (20)

  1. 서비스 시그널링 정보를 전달하는 전송 세션을 식별하기 위한 정보를 포함하는 서비스 리스트 테이블을 생성하는 단계, 여기서 상기 서비스 시그널링 정보는 제 1 서비스 데이터의 접근 정보를 포함하고;
    상기 제 1 서비스 데이터 및 상기 서비스 시그널링 정보를 생성하는 단계;
    상기 제 1 서비스 데이터, 상기 서비스 리스트 테이블 및 상기 서비스 시그널링 정보를 방송 스트림으로 프로세싱하는 단계; 및
    상기 방송 스트림을 전송하는 단계; 를 포함하는 서비스 데이터를 처리하는 방법.
  2. 제 1 항에 있어서,
    상기 제 1 서비스 데이터 및 상기 서비스 시그널링 정보는 상기 전송 세션의 전송 패킷들로 인캡슐레이션되어 전달되고,
    각각의 상기 전송 패킷들은 헤더와 페이로드를 가지는 서비스 데이터를 처리하는 방법.
  3. 제 2 항에 있어서, 상기 서비스 데이터를 처리하는 방법은,
    상기 제 1 서비스 데이터와 다른 프로토콜에 기반한 제 2 서비스 데이터를 생성하는 단계; 를 더 포함하고,
    적어도 하나의 상기 전송 패킷은 상기 제 2 서비스 데이터와 상기 제 2 서비스 데이터를 전달하기 위한 확장된 헤더를 가지는 서비스 데이터를 처리하는 방법.
  4. 제 3 항에 있어서,
    상기 확장된 헤더는 헤더 모드 정보를 더 포함하고,
    상기 헤더 모드 정보에 따라 상기 확장된 헤더는 제 2 서비스 데이터의 시퀀스 넘버 정보 또는 타임 스탬프 정보를 포함하는 서비스 데이터를 처리하는 방법.
  5. 제 3 항에 있어서,
    상기 적어도 하나의 전송 패킷의 페이로드는 페이로드 헤더와 상기 제 2 서비스 데이터를 포함하는 페이로드 데이터를 더 포함하고,
    상기 페이로드 헤더는 상기 제 2 서비스 데이터가 실시간 서비스 데이터인지에 따라 다른 구조를 가지는 서비스 데이터를 처리하는 방법.
  6. 제 5 항에 있어서,
    상기 확장된 헤더는 상기 페이로드 헤더의 타입을 지시하는 페이로드 타입 정보를 더 포함하는 서비스 데이터를 처리하는 방법.
  7. 제 2 항에 있어서,
    상기 전송 패킷의 헤더는 상기 페이로드에 포함되는 데이터를 식별하기 위한 전송 오브젝트 식별자를 더 포함하는 서비스 데이터를 처리하는 방법.
  8. 제 7 항에 있어서,
    상기 전송 오브젝트 식별자는 프래그먼트 타입 정보, 프래그먼트 타입 확장 정보 및 프래그먼트 버전 정보를 더 포함하고,
    상기 프래그먼트 타입 정보는 상기 전송 패킷이 전송하는 상기 서비스 시그널링 정보의 타입을 지시하고, 상기 프래그먼트 타입 확장 정보는 상기 서비스 시그널링 정보의 서브 타입을 지시하고, 상기 프래그먼트 버전 정보는 상기 서비스 시그널링 정보의 버전을 지시하는 서비스 데이터를 처리하는 방법.
  9. 제 1 항에 있어서,
    상기 전송 세션은 ROUTE (Real-Time Object Delivery over Unidirectional Transport) 세션인 것을 특징으로 하는 서비스 데이터를 처리하는 방법.
  10. 제 1 항에 있어서,
    상기 서비스 시그널링 정보는 상기 전송 세션의 전용 채널을 통해 전달되는 것을 특징으로 하는 서비스 데이터를 처리하는 방법.
  11. 서비스 시그널링 정보를 전달하는 전송 세션을 식별하기 위한 정보를 포함하는 서비스 리스트 테이블을 생성하는 제 1 모듈, 여기서 상기 서비스 시그널링 정보는 제 1 서비스 데이터의 접근 정보를 포함하고,
    상기 제 1 모듈은 상기 제 1 서비스 데이터 및 상기 서비스 시그널링 정보를 생성하고;
    상기 제 1 서비스 데이터, 상기 서비스 리스트 테이블 및 상기 서비스 시그널링 정보를 방송 스트림으로 프로세싱하는 제 2 모듈; 및
    상기 방송 스트림을 전송하는 제 3 모듈; 을 포함하는 서비스 데이터를 처리하는 장치.
  12. 제 11 항에 있어서,
    상기 제 1 서비스 데이터 및 상기 서비스 시그널링 정보는 상기 전송 세션의 전송 패킷들로 인캡슐레이션되어 전달되고,
    각각의 상기 전송 패킷들은 헤더와 페이로드를 가지는 서비스 데이터를 처리하는 장치.
  13. 제 12 항에 있어서, 상기 제 1 모듈은,
    상기 제 1 서비스 데이터와 다른 프로토콜에 기반한 제 2 서비스 데이터를 더 생성하고,
    적어도 하나의 상기 전송 패킷은 상기 제 2 서비스 데이터와 상기 제 2 서비스 데이터를 전달하기 위한 확장된 헤더를 가지는 서비스 데이터를 처리하는 장치.
  14. 제 13 항에 있어서,
    상기 확장된 헤더는 헤더 모드 정보를 더 포함하고,
    상기 헤더 모드 정보에 따라 상기 확장된 헤더는 제 2 서비스 데이터의 시퀀스 넘버 정보 또는 타임 스탬프 정보를 포함하는 서비스 데이터를 처리하는 장치.
  15. 제 13 항에 있어서,
    상기 적어도 하나의 전송 패킷의 페이로드는 페이로드 헤더와 상기 제 2 서비스 데이터를 포함하는 페이로드 데이터를 더 포함하고,
    상기 페이로드 헤더는 상기 제 2 서비스 데이터가 실시간 서비스 데이터인지에 따라 다른 구조를 가지는 서비스 데이터를 처리하는 장치.
  16. 제 15 항에 있어서,
    상기 확장된 헤더는 상기 페이로드 헤더의 타입을 지시하는 페이로드 타입 정보를 더 포함하는 서비스 데이터를 처리하는 장치.
  17. 제 12 항에 있어서,
    상기 전송 패킷의 헤더는 상기 페이로드에 포함되는 데이터를 식별하기 위한 전송 오브젝트 식별자를 더 포함하는 서비스 데이터를 처리하는 장치.
  18. 제 17 항에 있어서,
    상기 전송 오브젝트 식별자는 프래그먼트 타입 정보, 프래그먼트 타입 확장 정보 및 프래그먼트 버전 정보를 더 포함하고,
    상기 프래그먼트 타입 정보는 상기 전송 패킷이 전송하는 상기 서비스 시그널링 정보의 타입을 지시하고, 상기 프래그먼트 타입 확장 정보는 상기 서비스 시그널링 정보의 서브 타입을 지시하고, 상기 프래그먼트 버전 정보는 상기 서비스 시그널링 정보의 버전을 지시하는 서비스 데이터를 처리하는 장치.
  19. 제 11 항에 있어서,
    상기 전송 세션은 ROUTE (Real-Time Object Delivery over Unidirectional Transport) 세션인 것을 특징으로 하는 서비스 데이터를 처리하는 장치.
  20. 제 11 항에 있어서,
    상기 서비스 시그널링 정보는 상기 전송 세션의 전용 채널을 통해 전달되는 것을 특징으로 하는 서비스 데이터를 처리하는 장치.
PCT/KR2015/014172 2015-01-18 2015-12-23 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 WO2016114510A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/540,006 US20170373916A1 (en) 2015-01-18 2015-12-23 Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562104829P 2015-01-18 2015-01-18
US201562104826P 2015-01-18 2015-01-18
US62/104,829 2015-01-18
US62/104,826 2015-01-18

Publications (1)

Publication Number Publication Date
WO2016114510A1 true WO2016114510A1 (ko) 2016-07-21

Family

ID=56406020

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2015/014172 WO2016114510A1 (ko) 2015-01-18 2015-12-23 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법

Country Status (2)

Country Link
US (1) US20170373916A1 (ko)
WO (1) WO2016114510A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016144031A1 (ko) * 2015-03-11 2016-09-15 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US10367874B2 (en) * 2016-11-04 2019-07-30 Verizon Patent And Licensing Inc. MPEG-DASH delivery over multicast
US10243681B2 (en) * 2017-08-18 2019-03-26 Intel Corporation Synchronization of adaptive filter switching and channel equalization in full duplex (FDX) cable modems
WO2019048028A1 (en) * 2017-09-05 2019-03-14 Huawei Technologies Co., Ltd. OPTICAL TRANSMITTER AND TRANSMISSION METHOD
US11464066B2 (en) * 2019-04-05 2022-10-04 Qualcomm Incorporated Establishing radio bearers on millimeter wave frequencies for device-to-device communications

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120047278A1 (en) * 2007-10-22 2012-02-23 Nokia Siemens Networks Oy Method, Apparatus and Computer Program Product for Service Decomposition in IP-Broadcast Networks
WO2012036429A2 (ko) * 2010-09-14 2012-03-22 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 및 방송 신호 송/수신 장치에서 방송 신호 송수신 방법
KR20130120416A (ko) * 2012-04-25 2013-11-04 삼성전자주식회사 디지털 방송 시스템에서 시그널링 정보 송수신 장치 및 방법
KR101461967B1 (ko) * 2007-08-24 2014-11-14 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
WO2014209057A1 (ko) * 2013-06-27 2014-12-31 엘지전자 주식회사 지상파 방송망과 인터넷 프로토콜망 연동 기반의 하이브리드 방송 시스템에서 방송 서비스의 송수신 방법 및 장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6389034B1 (en) * 1998-09-04 2002-05-14 Nortel Networks Limited System for providing stream based and packet based services
US8537746B2 (en) * 2008-06-09 2013-09-17 Lg Electronics Inc. Method for mapping signaling information to announcement information and broadcast receiver
WO2010058964A2 (en) * 2008-11-18 2010-05-27 Lg Electronics Inc. Method for receiving a broadcast signal
US10129308B2 (en) * 2015-01-08 2018-11-13 Qualcomm Incorporated Session description information for over-the-air broadcast media data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101461967B1 (ko) * 2007-08-24 2014-11-14 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
US20120047278A1 (en) * 2007-10-22 2012-02-23 Nokia Siemens Networks Oy Method, Apparatus and Computer Program Product for Service Decomposition in IP-Broadcast Networks
WO2012036429A2 (ko) * 2010-09-14 2012-03-22 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 및 방송 신호 송/수신 장치에서 방송 신호 송수신 방법
KR20130120416A (ko) * 2012-04-25 2013-11-04 삼성전자주식회사 디지털 방송 시스템에서 시그널링 정보 송수신 장치 및 방법
WO2014209057A1 (ko) * 2013-06-27 2014-12-31 엘지전자 주식회사 지상파 방송망과 인터넷 프로토콜망 연동 기반의 하이브리드 방송 시스템에서 방송 서비스의 송수신 방법 및 장치

Also Published As

Publication number Publication date
US20170373916A1 (en) 2017-12-28

Similar Documents

Publication Publication Date Title
WO2016080803A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2015160137A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016060422A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016076569A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129866A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016093537A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016140486A1 (ko) 방송 신호 송수신 장치 및 방법
WO2016111526A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016076623A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016117939A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129868A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016105090A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016093576A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016144072A1 (ko) 방송 신호 송수신 장치 및 방법
WO2016076654A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016122267A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016126116A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016105100A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016080721A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016028119A1 (ko) 방송 신호 송신 방법, 방송 신호 송신 장치, 방송 신호 수신 방법 및 방송 신호 수신 장치
WO2016060416A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2015178690A1 (ko) 방송 신호 송/수신 처리 방법 및 장치
WO2016064151A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016148547A1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129869A1 (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: 15878154

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15540006

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15878154

Country of ref document: EP

Kind code of ref document: A1