Reception apparatus and reception method
The decoding device and method streamline the acquisition of reference clock information in MMT systems by directly extracting it from TLV packets, addressing the inefficiencies and jitter issues in existing technologies.
Patent Information
- Application Number
- JP2025017770
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2014-08-27
- Filing Date
- 2025-02-05
- Publication Date
- 2025-04-17
- Estimated Expiration
- 2035-07-29
AI Technical Summary
In MMT systems, acquiring reference clock information on the receiving side requires multiple processing steps, leading to increased processing time and potential jitter in the acquired clock.
A decoding device and method that simplifies the acquisition of reference clock information by identifying and extracting it from TLV packets within the transmission frame, without analyzing the IP packet header, thereby reducing processing complexity and time.
The proposed solution significantly reduces the processing time and complexity required to acquire reference clock information, leading to more accurate and efficient clock reproduction in MMT systems.
Smart Images

Figure 2025065318000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a decoding device, a demultiplexing device, a decoding method, and a demultiplexing method. [Background technology]
[0002] The MMT (MPEG Media Transport) method (see Non-Patent Document 1) is a multiplexing method for multiplexing and packetizing content such as video and audio, and transmitting it over one or more transmission paths for broadcasting or communication. When the MMT method is applied to a broadcasting system, reference clock information on the transmitting side is transmitted to the receiving side, and the receiving device generates a system clock in the receiving device based on the reference clock information. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] Information technology - High efficiency coding and media delivery in heterogeneous environment - Part1:MPEG media transport(MMT), ISO / IEC DIS 23008-1 [Non-Patent Document 2] ARIB Standard ARIB STD-B44 (Version 2.0), "Transmission method for advanced wideband digital satellite broadcasting", Chapter 3 "Guidelines for the transmission of time information" Summary of the Invention [Problem to be solved by the invention]
[0004] When the transmitting side stores the reference clock information in a multiplexing layer such as MMT, a problem arises in that a large amount of processing is required to obtain the reference clock information on the receiving side.
[0005] The present invention provides a decoding device, a demultiplexing device, a decoding method, and a demultiplexing method that can reduce the processing for acquiring reference clock information on the receiving side. [Means for solving the problem]
[0006] A receiving device according to one embodiment of the present invention includes an acquisition unit that acquires a plurality of Type Length Value (TLV) packets by decoding a frame for transmission that stores a plurality of slots each containing one or more TLV packets obtained by multiplexing content, and the TLV packet located at the head of the first slot in the frame for transmission includes an Internet Protocol (IP) packet containing first reference clock information, and the IP packet containing the first reference clock information is not header compressed and is assigned a predetermined IP address.
[0007] These comprehensive or specific aspects may be realized by a system, an apparatus, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, etc. These comprehensive or specific aspects may be realized by any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium. Effect of the Invention
[0008] The present invention can provide a decoding device, a demultiplexing device, a decoding method, or a demultiplexing method that can reduce the processing for acquiring reference clock information on the receiving side. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a diagram showing protocol stacks when transmission is performed using the MMT method and the advanced BS transmission method. [Diagram 2] FIG. 2 is a diagram showing the data structure of a TLV packet. [Diagram 3] FIG. 3 is a block diagram showing the basic configuration of a receiving device. [Figure 4]FIG. 4 is a block diagram showing the functional configuration of a receiving device when reference clock information is stored in an extension field of an MMT packet header. [Diagram 5] FIG. 5 is a diagram showing a flow of acquiring reference clock information in a receiving device when the reference clock information is stored in an extension field of an MMT packet header. [Figure 6] FIG. 6 is a block diagram showing a functional configuration of a receiving device when reference clock information is stored in control information. [Figure 7] FIG. 7 is a diagram showing a flow of acquiring reference clock information in a receiving device when the reference clock information is stored in control information. [Figure 8] FIG. 8 is a block diagram showing the configuration of a receiving device when reference clock information is stored in a TLV packet. [Figure 9] FIG. 9 is a diagram showing an example in which long format NTP is stored in a TLV packet. [Figure 10] FIG. 10 is a diagram showing a flow of acquiring reference clock information in a receiving device when the reference clock information is stored in a TLV packet. [Figure 11] FIG. 11 is a diagram showing a configuration in which reference clock information is added immediately before the header of an IP packet. [Figure 12] FIG. 12 is a diagram showing a configuration in which reference clock information is added immediately before a TLV packet. [Figure 13] FIG. 13 is a diagram showing a configuration of a transmission slot. [Figure 14] FIG. 14 is a diagram showing the configuration of a slot header of a transmission slot. [Figure 15] FIG. 15 is a diagram showing an example in which a flag is stored in an undefined area of a slot header. [Figure 16] FIG. 16 is a diagram showing a configuration of TMCC control information in the transmission system of advanced wideband digital satellite broadcasting. [Figure 17] FIG. 17 is a diagram showing stream type / relative stream information of the TMCC control information. [Figure 18]FIG. 18 is a diagram showing an example in which reference clock information is stored in an undefined field of a slot header. [Figure 19] FIG. 19 is a block diagram showing a functional configuration of a receiving device when information indicating that reference clock information is included in a slot header is stored in the TMCC control information. [Figure 20] FIG. 20 is a diagram showing a flow of acquiring reference clock information when information indicating that the slot header contains reference clock information is stored in the TMCC control information. [Figure 21] FIG. 21 is a diagram showing a flow when a bit string at a specific position is extracted from an IP packet or a compressed IP packet. [Figure 22] FIG. 22 is a diagram showing the structure of the TMCC extension information. [Diagram 23] FIG. 23 is a diagram showing an example of the data structure of an extension area in which extension types classified in this way are used. [Figure 24] FIG. 24 is a diagram showing the syntax when the extension type is used. [Diagram 25] FIG. 25 is a block diagram showing a functional configuration of a receiving device according to the second embodiment. As shown in FIG. [Figure 26] FIG. 26 is a diagram showing an operation flow of the receiving device according to the second embodiment. [Figure 27] FIG. 27 is a diagram illustrating an example in which reference clock information is stored in each of a plurality of layers. [Figure 28] FIG. 28 is a diagram illustrating an example in which a plurality of pieces of reference clock information are stored in one layer. [Figure 29] FIG. 29 is a block diagram for explaining an example in which data from different broadcasting stations is stored in separate streams. [Diagram 30] FIG. 30 is a diagram for explaining a method of transmitting difference information. [Diagram 31] FIG. 31 is a diagram for explaining a modified example of the method of transmitting difference information. [Diagram 32] FIG. 32 is a block diagram showing a functional configuration of a receiving device according to the third embodiment. [Diagram 33] FIG. 33 is a diagram showing an operation flow of the receiving device according to the third embodiment. [Diagram 34] FIG. 34 is a diagram showing another operation flow of the receiving device according to the third embodiment. [Diagram 35] FIG. 35 is a block diagram showing a functional configuration of a transmitting device. [Diagram 36] FIG. 36 is a diagram showing an operation flow of the transmitting device. [Figure 37] FIG. 37 is a block diagram of a receiving device according to the fourth embodiment. [Figure 38] FIG. 38 is a diagram showing timings of the main signal and the reference clock information according to the fourth embodiment. In FIG. [Figure 39] FIG. 39 is a diagram showing an operation flow in the decoding unit according to the fourth embodiment. [Diagram 40] FIG. 40 is a diagram showing an operation flow in the receiving device according to the fourth embodiment. [Diagram 41] FIG. 41 is a diagram showing an operation flow in an upper layer according to the fourth embodiment. [Diagram 42] FIG. 42 is a diagram showing an operation flow of the decoding device according to the fourth embodiment. [Diagram 43] FIG. 43 is a diagram showing an operation flow of the demultiplexing device according to the fourth embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] (Findings on which the present invention is based) The present invention relates to a method and apparatus for transmitting reference clock information from a transmitting side, receiving the reference clock information on a receiving side, and generating (reproducing) a reference clock in a hybrid distribution system using the MMT method currently being standardized by MPEG (Moving Picture Expert Group).
[0011] The MMT method is a multiplexing method for multiplexing and packetizing video and audio data and transmitting them over one or more transmission paths for broadcasting or communication.
[0012] When the MMT method is applied to a broadcasting system, the reference clock on the transmitting side is synchronized with the Network Time Protocol (NTP) defined in IETF RFC 5905, and time stamps such as Presentation Time Stamp (PTS) and Decode Time Stamp (DTS) are added to the media based on the reference clock. Furthermore, the reference clock information on the transmitting side is sent to the receiving side, and the receiving device generates a reference clock (hereinafter also referred to as a system clock) for the receiving device based on the reference clock information.
[0013] In broadcasting systems, it is desirable to use 64-bit long format NTP, which can indicate absolute time as reference clock information. However, in the conventional MMT method, although it is specified that 32-bit short format NTP should be stored in the MMT packet header and transmitted, it is not specified that long format NTP should be transmitted, and therefore it is not possible to obtain highly accurate reference clock information on the receiver side.
[0014] In response to this, it is possible to define long format NTP as control information such as messages, tables, or descriptors, and to transmit the control information with an MMT packet header added. In this case, the MMT packet is stored in an IP packet and transmitted over a broadcast transmission path or a communication transmission path.
[0015] When transmitting MMT packets using the advanced BS transmission method defined in the ARIB standard, the MMT packets are encapsulated into IP packets, and the IP packets are encapsulated into TLV (Type Length Value) packets, and then stored in transmission slots defined in the advanced BS transmission method.
[0016] However, if reference clock information is stored in the MMT packet layer on the transmitting side, obtaining the reference clock information on the receiving side requires multiple processes, such as extracting the TLV packet from the transmission slot, extracting the IP packet from the TLV packet, extracting the MMT packet from the IP packet, and then extracting the reference clock information from the header or payload of the MMT packet. This requires a lot of processing to obtain the reference clock information, and it takes more time to obtain it.
[0017] In addition, processing at the IP layer and above is generally performed by software, and when reference clock information is stored in an MMT packet, the reference clock information is extracted and regenerated by a software program. In this case, there is an issue that jitter occurs in the acquired reference clock information due to the processing power of the CPU, interrupts from other software programs, and priorities.
[0018] A decoding device according to one embodiment of the present invention includes a receiving unit that receives a transmission frame storing a plurality of second transmission units, each of which includes one or more first transmission units obtained by multiplexing content, and a decoding unit that decodes the transmission frame to obtain a plurality of the first transmission units and outputs the plurality of first transmission units to a demultiplexing device that obtains the content by demultiplexing the plurality of first transmission units, wherein a first transmission unit located at the beginning of a first second transmission unit in the transmission frame includes reference clock information, and the decoding unit further generates information for identifying the first transmission unit located at the beginning, and outputs the information to the demultiplexing device.
[0019] This allows the decoding device to notify the demultiplexing device of information for identifying the first transmission unit including the reference clock information, and the demultiplexing device can obtain the reference clock information without analyzing the IP packet header, etc., thereby reducing the amount of processing and increasing the speed.
[0020] For example, the decoding unit may store the information indicating that the first transmission unit includes the reference clock information as management information for the first transmission unit stored in the first transmission unit located at the beginning.
[0021] For example, the information may be information indicating the first transmission unit located at the beginning of a plurality of first transmission units in the transmission frame.
[0022] For example, each of the plurality of first transmission units may include an Internet Protocol (IP) packet in which the content is stored.
[0023] For example, the content may be stored in MPEG Media Transport (MMT) packets within the IP packets.
[0024] For example, the first transmission unit may be a variable-length transmission unit, and the second transmission unit may be a fixed-length transmission unit.
[0025] For example, the first transmission unit may be a TLV (Type Length Value) packet, the second transmission unit may be a slot in an advanced BS transmission scheme, and the frame may be a transmission slot in an advanced BS transmission scheme.
[0026] For example, the reference clock information may be NTP (Network Time Protocol).
[0027] A demultiplexing device according to one embodiment of the present invention includes an acquisition unit that acquires a plurality of first transmission units from a decoding device that acquires the first transmission units by decoding a transmission frame that stores a plurality of second transmission units, each of which includes one or more first transmission units obtained by multiplexing content, and a demultiplexing unit that acquires the content by demultiplexing the plurality of first transmission units, wherein each of the plurality of first transmission units includes management information indicating that the first transmission unit includes the reference clock information if the first transmission unit includes reference clock information, and the demultiplexing unit further identifies a first transmission unit that includes the reference clock information based on the management information, and acquires the reference clock information from the identified first transmission unit.
[0028] This allows the demultiplexing device to identify the first transmission unit including the reference clock information based on the management information included in the first transmission unit. Therefore, the demultiplexing device can obtain the reference clock information without analyzing the IP packet header, etc., thereby reducing the amount of processing and increasing the speed.
[0029] For example, each of the plurality of first transmission units may include an Internet Protocol (IP) packet in which the content is stored.
[0030] For example, the content may be stored in MPEG Media Transport (MMT) packets within IP packets.
[0031] For example, the first transmission unit may be a variable-length transmission unit, and the second transmission unit may be a fixed-length transmission unit.
[0032] For example, the first transmission unit may be a TLV (Type Length Value) packet, the second transmission unit may be a slot in an advanced BS transmission scheme, and the frame may be a transmission slot in an advanced BS transmission scheme.
[0033] For example, the reference clock information may be NTP (Network Time Protocol).
[0034] A decoding method according to one embodiment of the present invention includes a receiving step of receiving a transmission frame storing a plurality of second transmission units, each of which includes one or more first transmission units obtained by multiplexing content, and a decoding step of decoding the transmission frame to obtain a plurality of the first transmission units and outputting the plurality of first transmission units to a demultiplexing device that obtains the content by demultiplexing the plurality of first transmission units, wherein a first transmission unit located at the beginning of a first second transmission unit in the transmission frame includes reference clock information, and the decoding step further includes generating information for identifying the first transmission unit located at the beginning, and outputting the information to the demultiplexing device.
[0035] As a result, the decoding method can notify the demultiplexer of information for identifying the first transmission unit including the reference clock information, and the demultiplexer can obtain the reference clock information without analyzing the IP packet header, etc., thereby reducing the amount of processing and increasing the speed.
[0036] A demultiplexing method according to one embodiment of the present invention includes an acquisition step of acquiring a plurality of first transmission units from a decoding device that acquires the first transmission units by decoding a transmission frame that stores a plurality of second transmission units, each of which includes one or more first transmission units obtained by multiplexing content, and a demultiplexing step of acquiring the content by demultiplexing the plurality of first transmission units, wherein each of the plurality of first transmission units includes management information indicating that the first transmission unit includes the reference clock information if the first transmission unit includes reference clock information, and the demultiplexing step further includes identifying a first transmission unit that includes the reference clock information based on the management information, and acquiring the reference clock information from the identified first transmission unit.
[0037] This allows the demultiplexing method to identify the first transmission unit including the reference clock information based on the management information included in the first transmission unit. Therefore, the demultiplexing method can obtain the reference clock information without analyzing the IP packet header, etc., thereby reducing the amount of processing and increasing the speed.
[0038] These comprehensive or specific aspects may be realized by a system, an apparatus, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, etc. These comprehensive or specific aspects may be realized by any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium.
[0039] Hereinafter, the embodiment will be specifically described with reference to the drawings.
[0040] The embodiments described below are all comprehensive or specific examples. The numerical values, shapes, materials, components, component arrangement and connection forms, steps, and order of steps shown in the following embodiments are merely examples and are not intended to limit the present invention. Furthermore, among the components in the following embodiments, components that are not described in an independent claim showing a top concept are described as optional components.
[0041] (Embodiment 1) [Basic structure of the MMT method] First, the basic configuration of the MMT system will be explained. Figure 1 shows a protocol stack diagram when transmission is performed using the MMT system and the advanced BS transmission system.
[0042] In the MMT method, information such as video and audio is stored in multiple MPUs (Media Presentation Units) or multiple MFUs (Media Fragment Units), and then an MMT packet header is added to convert it into MMT packets.
[0043] On the other hand, in the MMT method, MMT packet headers are also added to control information such as MMT messages to convert them into MMT packets. The MMT packet header has a field for storing NTP in a 32-bit short format, and this field can be used for QoS control of communication lines.
[0044] The MMT packetized data is encapsulated in an IP packet with a UDP header or an IP header. In this case, if a set of packets with the same source IP address, destination IP address, source port number, destination port number, and protocol type in the IP header or UDP header is considered as an IP data flow, the headers of the multiple IP packets included in one IP data flow are redundant. For this reason, some IP packets in one IP data flow are header compressed.
[0045] Next, the TLV packet will be described in detail with reference to Figure 2, which shows the data structure of the TLV packet.
[0046] As shown in Fig. 2, the TLV packet stores an IPv4 packet, an IPv6 packet, a compressed IP packet, a NULL packet, and a transmission control signal. This information is identified using an 8-bit data type. The transmission control signal includes, for example, an AMT (Address Map Table) and an NIT (Network Information Table). In the TLV packet, a data length (in bytes) is indicated using a 16-bit field, and the data value is stored after that. The data type is preceded by 1 byte of header information (not shown in Fig. 2), so the TLV packet has a header area of 4 bytes in total.
[0047] The TLV packet is mapped to a transmission slot in the advanced BS transmission system, and the TMCC (Transmission and Multiplexing Configuration Control) control information (control signal) stores pointer / slot information indicating the beginning position of the first packet and the end position of the last packet contained in each slot.
[0048] Next, the configuration of a receiving device when transmitting MMT packets using an advanced BS transmission method will be described. Figure 3 is a block diagram showing the basic configuration of a receiving device. Note that the configuration of the receiving device in Figure 3 is simplified, and more specific configurations will be described later individually according to the manner in which reference clock information is stored.
[0049] The receiving device 20 includes a receiving unit 10, a decoding unit 11, a TLV demultiplexer (DEMUX) 12, an IP demultiplexer (DEMUX) 13, and an MMT demultiplexer (DEMUX) 14.
[0050] The receiver 10 receives the line-coded data.
[0051] The decoder 11 decodes the channel-coded data received by the receiver 10, performs error correction and the like, and extracts TMCC control information and TLV data. The TLV data extracted by the decoder 11 is demultiplexed by a TLV demultiplexer 12.
[0052] The DEMUX process of the TLV demultiplexer 12 differs depending on the data type. For example, if the data type is a compressed IP packet, the TLV demultiplexer 12 performs a process such as decompressing the compressed header and passing it to the IP layer.
[0053] The IP demultiplexer 13 performs processing such as header analysis of the IP packets or UDP packets, and extracts MMT packets for each IP data flow.
[0054] The MMT demultiplexer 14 performs filtering processing (MMT packet filtering) based on the packet ID stored in the MMT packet header.
[0055] [How to store reference clock information in MMT packets] In the MMT method described above with reference to Figs. 1 to 3, a 32-bit short format NTP can be stored in an MMT packet header and transmitted, but there is no method for transmitting a long format NTP.
[0056] A method for storing reference clock information in an MMT packet will be described below. First, a method for storing reference clock information in an MMT packet will be described.
[0057] When a descriptor, table, or message for storing reference clock information is defined and stored as control information in an MMT packet, an identifier indicating that the descriptor, table, or message indicates the reference clock information is indicated in the control information. Then, the control information is stored in the MMT packet on the transmitting side.
[0058] This allows the receiving device 20 to identify the reference clock information based on the identifier. Note that the reference clock information may be stored in the MMT packet by using an existing descriptor (for example, CRI_descriptor(), etc.).
[0059] Next, a method for storing reference clock information in an MMT packet header will be described.
[0060] For example, there is a method of storing the information using the header_extension field (hereinafter referred to as the extension field). The extension field is enabled by setting the extension_flag in the MMT packet header to '1'.
[0061] One method is to store an extended field type indicating the type of data to be stored in the extended field in the extended field, store information indicating that the data is reference clock information (e.g., 64-bit long format NTP) in the extended field, and store the reference clock information in the extended field.
[0062] In this case, if the header_extension_flag in the MMT packet header is set to '1', the receiving device 20 refers to the extension field of the MMT packet. If the extension field type indicates that the field is reference clock information, the receiving device 20 extracts the reference clock information and recovers the clock.
[0063] The reference clock information may be stored in an existing header field. Also, if there are unused fields or fields that are not required for broadcasting, the reference clock information may be stored in these fields.
[0064] Furthermore, the reference clock information may be stored using both an existing field and an extended field. For example, the existing 32-bit short format NTP field may be stored using both an extended field.
[0065] In order to maintain compatibility with the existing field, only the 32-bit portion of the 64-bit long format NTP that corresponds to the format of the short format may be stored in the existing field, and the remaining 32 bits may be stored in the extension field.
[0066] The reference clock information is, for example, the time when the first bit of the MMT packet in which the reference clock information is stored passes a predetermined position (for example, when it is output from a specific component of the transmitting device), but it may also be the time when a bit in another position passes a predetermined position.
[0067] When reference clock information is stored in an MMT packet as control information, the MMT packet including the control information is transmitted at a predetermined transmission interval.
[0068] When the reference clock information is stored in an extension field of an MMT packet, it is stored in the extension field of the header of a given MMT packet. Specifically, for example, the reference clock information is stored in the header extension field of the MMT packet at least once at intervals of 100 ms.
[0069] When the reference clock information is stored in the MMT packet, the program information stores the MMT packet ID in which the reference clock information is stored. The receiving device 20 analyzes the program information and acquires the MMT packet in which the reference clock information is stored. At this time, the packet ID of the MMT packet in which the reference clock information is stored may be specified as a fixed value in advance. This allows the receiving device 20 to acquire the reference clock information without analyzing the program information.
[0070] [Operation flow when reference clock information is stored in the MMT packet] Next, an operation flow (acquisition flow of reference clock information) when reference clock information is stored in an MMT packet will be described.
[0071] First, the flow of acquiring the reference clock information of the receiving device 20 when the reference clock information is stored in the extension field of the MMT packet header will be described. Fig. 4 is a block diagram showing the functional configuration of the receiving device 20 when the reference clock information is stored in the extension field of the MMT packet header. Fig. 5 is a diagram showing the flow of acquiring the reference clock information of the receiving device 20 when the reference clock information is stored in the extension field of the MMT packet header.
[0072] As shown in Figure 4, when reference clock information is stored in the extension field of the MMT packet header, a reference clock information extraction unit 15 (an example of an extraction unit) is provided within the MMT demultiplexer 14, and a reference clock generation unit 16 (an example of a generation unit) is provided downstream of the MMT demultiplexer 14.
[0073] In the flow of FIG. 5, the decoder 11 of the receiving device 20 decodes the line-encoded data received by the receiver 10 (S101), and extracts a TLV packet from the transmission slot (S102).
[0074] Next, the TLV demultiplexer 12 DEMUXes the extracted TLV packets and extracts the IP packets (S103). At this time, the headers of the compressed IP packets are reproduced.
[0075] Next, the IP demultiplexer 13 DEMUXes the IP packets, obtains the specified IP data flow, and extracts the MMT packets (S104).
[0076] Next, the MMT demultiplexer 14 analyzes the header of the MMT packet and determines whether an extension field is used and whether the extension field contains reference clock information (S106). If the extension field does not contain reference clock information (No in S106), the process ends.
[0077] On the other hand, if it is determined that the extension field contains reference clock information (Yes in S106), the reference clock information extraction unit 15 extracts the reference clock information from the extension field (S107). Then, the reference clock generation unit 16 generates a system clock based on the extracted reference clock information (S108). In other words, the system clock is a clock for playing back the content.
[0078] Next, a description will be given of a flow of acquiring the reference clock information of the receiving device 20 when the reference clock information is stored in the control information. Fig. 6 is a block diagram showing a functional configuration of the receiving device 20 when the reference clock information is stored in the control information. Fig. 7 is a diagram showing a flow of acquiring the reference clock information of the receiving device 20 when the reference clock information is stored in the control information.
[0079] As shown in FIG. 6, when reference clock information is stored in the control information, the reference clock information extraction unit 15 is disposed after the MMT demultiplexer 14.
[0080] In the flow of FIG. 7, the processes in steps S111 to S114 are the same as those in the flow of steps S101 to S104 described in FIG.
[0081] Following step S114, the MMT demultiplexer 14 acquires the packet ID of the packet including the reference clock information from the program information (S115), and acquires the MMT packet of the packet ID (S116). Next, the reference clock information extraction unit 15 extracts the reference clock information from the control signal included in the extracted MMT packet (S117), and the reference clock generation unit 16 generates a system clock based on the extracted reference clock information (S118).
[0082] [Method of storing reference clock information in TLV packets] As explained in Fig. 5 and Fig. 7, when reference clock information is stored in an MMT packet, in order to obtain the reference clock information on the receiving side, the receiving device 20 extracts a TLV packet from the transmission slot, and extracts an IP packet from the TLV packet. Furthermore, the receiving device 20 extracts an MMT packet from the IP packet, and further extracts the reference clock information from the header or payload of the MMT packet. In this way, when reference clock information is stored in an MMT packet, there is a problem in that many processes are required to obtain the reference clock information, and it takes a long time to obtain it.
[0083] Here, we will explain a method in which the process of assigning timestamps to media such as video and audio based on a reference clock and the process of transmitting the media are realized using the MMT method, and the transmission of reference clock information is performed using a layer, a lower protocol, or a lower multiplexing method lower than the MMT layer.
[0084] First, a method of storing reference clock information in a TLV packet and transmitting the same will be described. Fig. 8 is a block diagram showing the configuration of a receiving device 20 when reference clock information is stored in a TLV packet.
[0085] In the receiving device 20 shown in Fig. 8, the arrangement of the reference clock information extraction unit 15 and the reference clock generation unit 16 differs from that in Fig. 4 and Fig. 6. Also, in Fig. 8, a synchronization unit 17 and a decoding presentation unit 18 are illustrated.
[0086] The TLV packet is configured with an 8-bit data type, a 16-bit data length, and 8*N bits of data, as shown in Fig. 2. Also, as mentioned above, a 1-byte header not shown in Fig. 2 precedes the data type. Specifically, the data type is specified as, for example, 0x01: IPv4 packet, 0x03: header-compressed IP packet, etc.
[0087] In order to store new data in a TLV packet, a data type is defined using an undefined area of the data type. To indicate that the reference clock information is stored in the TLV packet, the data type is described to indicate that the data is reference clock information.
[0088] The data type may be defined for each type of reference clock. For example, the data types indicating short format NTP, long format NTP, and PCR (Program Clock Reference) may be defined individually. Figure 9 shows an example in which the long format NTP is stored in a TLV packet, and the long format NTP is stored in the data field.
[0089] In this case, the reference clock information extraction unit 15 analyzes the data type of the TLV packet, and if reference clock information is stored, analyzes the data length and extracts the reference clock information from the data field.
[0090] In addition, when the data length is uniquely determined by the data type, the reference clock information extraction unit 15 may obtain the reference clock information without analyzing the data length field. For example, when the data type is indicated as 64-bit long low-rate NTP, the reference clock information extraction unit 15 may extract from the 4th byte + 1st bit to the 4th byte + 64th bit. In addition, the reference clock information extraction unit 15 may extract only the desired bit from the 64-bit data.
[0091] Next, an operation flow (acquisition flow of reference clock information) of the receiving device 20 when the reference clock information is stored in the TLV packet will be described with reference to Fig. 10. Fig. 10 is a diagram showing an acquisition flow of the reference clock information of the receiving device 20 when the reference clock information is stored in the TLV packet.
[0092] In the flow of FIG. 10, first, the decoder 11 decodes the line-encoded data received by the receiver 10 (S121), and extracts the TLV packet from the transmission slot (S122).
[0093] Next, the TLV demultiplexer 12 analyzes the data type of the TLV packet (S123) and determines whether the data type is reference clock information (S124). If the data type is the reference clock (Yes in S124), the reference clock information extraction unit 15 extracts the reference clock information from the data field of the TLV packet (S125). Then, the reference clock generation unit 16 generates a system clock based on the reference clock information (S126). On the other hand, if the data type is not reference clock information (No in S124), the reference clock information acquisition flow ends.
[0094] In addition, in a flow not shown, the IP demultiplexer 13 extracts IP packets according to the data type. Then, the extracted IP packets are subjected to IP DEMUX processing and MMT DEMUX processing to extract MMT packets. Furthermore, the synchronization unit 17 outputs the video data included in the extracted MMT packets to the decoding and presenting unit 18 at a timing when the timestamp of the video data coincides with the reference clock generated in step S126, and the decoding and presenting unit 18 decodes and presents the video data.
[0095] In the transmission method described above, the type data of the TLV packet indicates that the reference clock information is stored, and the reference clock information is stored in the data field of the TLV packet. In this way, by storing and transmitting the reference clock information using a layer or a protocol lower than the MMT layer, it is possible to reduce the processing and time required to extract the reference clock information in the receiving device 20.
[0096] In addition, because reference clock information can be extracted and regenerated at lower layers across the IP layer, the extraction of reference clock information can be implemented in hardware. This reduces the effects of jitter and other factors compared to when reference clock information is extracted using software, making it possible to generate a more accurate reference clock.
[0097] Next, other methods for storing the reference clock information will be described.
[0098] In the flow of Fig. 10, if the data length is uniquely determined by the data type, the data length field does not need to be transmitted. If the data length field is not transmitted, an identifier indicating that the data is not transmitted is stored.
[0099] In addition, in the explanation of Fig. 10, the reference clock information is stored in the data field of the TLV packet, but the reference clock information may be added immediately before or after the TLV packet. Also, the reference clock information may be added immediately before or after the data stored in the TLV packet. In these cases, a data type is assigned that allows the location where the reference clock information is added to be identified.
[0100] For example, FIG. 11 is a diagram showing a configuration in which reference clock information is added immediately before the header of an IP packet. In this case, the data type indicates that it is an IP packet with reference clock information. When the data type indicates that it is an IP packet with reference clock information, the receiving device 20 (reference clock information extraction unit 15) can obtain the reference clock information by extracting bits of a predetermined length of reference clock information from the beginning of the data field of the TLV packet. At this time, the data length may specify the length of data including the length of reference clock information, or may specify the length not including the length of reference clock information. When the data length specifies the length of data including the length of reference clock information, the receiving device 20 (reference clock information extraction unit 15) obtains data of a length obtained by subtracting the length of reference clock information from the data length, immediately after the reference clock information. When the data length specifies the length of data not including the length of reference clock information, the receiving device 20 (reference clock information extraction unit 15) obtains data of a length specified in the data length, immediately after the reference clock information.
[0101] Also, Fig. 12 is a diagram showing a configuration in which reference clock information is added immediately before a TLV packet. In this case, the data type is the same as in the past, and an identifier indicating that the TLV packet is a TLV packet with reference clock information is stored in, for example, the slot header of the transmission slot or the TMCC control information. Fig. 13 is a diagram showing the configuration of a transmission slot, and Fig. 14 is a diagram showing the configuration of a slot header of a transmission slot.
[0102] As shown in Fig. 13, a transmission slot is composed of multiple slots (120 slots, Slot #1 to Slot #120, in the example of Fig. 13). The number of bits included in each slot is a fixed number of bits that is uniquely determined based on the error correction coding rate, has a slot header, and stores one or more TLV packets. Note that, as shown in Fig. 13, the TLV packet is of variable length.
[0103] As shown in FIG. 14, the first TLV indication field (16 bits) of the slot header stores the position of the first byte of the first TLV packet in the slot, indicated by the number of bytes from the beginning of the slot excluding the slot header. The remaining 160 bits of the slot header are undefined. As described above, a transmission slot is composed of 120 slots per frame, and modulation methods are assigned to slots in units of 5 slots. Also, a maximum of 16 streams can be transmitted within one frame. Note that the multiple streams included in one transmission slot, for example, have different contents (or providers providing the contents) transmitted by the streams. Also, a stream is composed of one or more slots, and one slot does not span multiple streams.
[0104] When an identifier indicating that the TLV packet is a TLV packet with reference clock information is stored in the slot header, for example, information that can identify the position of the TLV packet with reference clock information within the slot, the type of reference clock information, and the data length are stored by extending (utilizing) the undefined fields of the slot header.
[0105] It is not necessary that all information such as the information for identifying the position of the TLV packet with reference clock information, the type of reference clock information, and the data length is stored in the slot header. It is sufficient that the information for identifying and referencing the TLV packet with reference clock information is indicated.
[0106] For example, when the reference clock information is 64-bit long format NTP, the number of TLV packets with reference clock information that can be stored in one slot is one, and the TLV packet is always defined as the first TLV packet, a flag may be stored in the undefined area of the slot header. Figure 15 is a diagram showing an example in which a flag is stored in the undefined area of the slot header.
[0107] In the example of Fig. 15, a flag (indicated as "F" in the figure) indicating whether the slot contains reference clock information is stored in the undefined area of the slot header. By using such a flag, the receiving device 20 may determine that the first TLV packet is a TLV packet with reference clock information.
[0108] In addition, an identifier (information) indicating that the TLV packet is a TLV packet with reference clock information may be stored in the TMCC control information. Fig. 16 is a diagram showing the configuration of the TMCC control information in the transmission method of the advanced wideband satellite digital broadcasting.
[0109] The information for identifying and referencing the TLV packet with reference clock information may be stored in the extension information in the TMCC control information shown in Fig. 16, or may be stored in another location in the TMCC control information. For example, the stream type / relative stream information of the TMCC control information may be used as information for identifying and referencing the TLV packet with reference clock information. Fig. 17 is a diagram showing the stream type / relative stream information of the TMCC control information.
[0110] As shown in Fig. 17, in the stream type / relative stream information, the stream type for each of the 16 streams is indicated by 8 bits. That is, according to the transmission slot of one frame, a maximum of 16 streams (16 types) can be transmitted. For example, the stream type of an MPEG2-TS stream is "00000000", and the stream type of a TLV stream is "00000010". However, for other streams, currently, there is no assigned type or it is undefined.
[0111] Therefore, the stream type of the reference clocked TLV stream is defined as, for example, "00000100", and when the relative stream is a reference clocked TLV stream, "00000100" is stored in the stream type / relative stream information of the TMCC control information. Here, in a stream with a stream type of "00000100", a TLV packet including reference clock information is stored, for example, once per 5 slot unit, which is the slot allocation unit, or once per frame unit.
[0112] In such a configuration, the receiving device 20 analyzes the stream type / relative stream information of the TMCC control information, and if the stream type is "00000100", acquires a TLV packet with a reference clock from a predetermined slot.
[0113] In addition, there may be a case where a stream type including a download type TLV packet and a stream type including a stream type TLV packet such as video or audio are defined. In such a case, the receiving device 20 may determine that the stream includes reference clock information when the stream type of the received stream is a stream type TLV packet. This is because reference clock information is not usually used in reproducing a download type TLV packet.
[0114] In addition, when information for identifying and referencing a TLV packet with reference clock information is stored in the extension information of the TMCC control information, for example, information for each of 16 relative streams is stored in the extension area of the TMCC control information.
[0115] Also, an area in which reference clock information is stored may be newly defined in an undefined field of a slot header as shown in Fig. 18. Fig. 18 is a diagram showing an example in which reference clock information is stored in an undefined field of a slot header.
[0116] Also, the reference clock information may be stored in a predetermined slot, or information indicating that the reference clock information is included in the slot header may be stored. Here, the predetermined slot may be, for example, the first slot of the transmission slots (Slot #1 in the example of FIG. 13), and the first TLV packet in this slot may include the reference clock information stored in the IP packet. Also, when a transmission slot includes multiple streams, the predetermined slot may be, for example, the first slot of each stream included in the transmission slot, and the first TLV packet in this slot may include the reference clock information stored in the IP packet.
[0117] Also, the TMCC control information may store information for identifying and referencing a slot header including reference clock information. Note that the method of storing information for identifying and referencing a slot header including reference clock information in the TMCC control information is similar to the method of storing information for identifying and referencing a TLV packet with reference clock information described above, and therefore the explanation is omitted.
[0118] In this case, the receiving device 20 analyzes the TMCC control information, and if it determines that the reference clock information is present in the slot header, it extracts the reference clock information from the slot header.
[0119] Also, information indicating that the reference clock information is included may be stored in the TMCC control information. Fig. 19 is a block diagram showing a functional configuration of a receiving device 20 when information indicating that the reference clock information is included in the slot header is stored in the TMCC control information. Fig. 20 shows a flow of acquiring the reference clock information when information indicating that the reference clock information is included in the slot header is stored in the TMCC control information.
[0120] As shown in FIG. 19, in a receiving device 20 in which the TMCC control information stores information indicating that reference clock information is included in the slot header, the reference clock information extraction unit 15 acquires a reference clock signal from the transmission slot output from the decoding unit 11.
[0121] In the flow of Fig. 20, the decoder 11 decodes the transmission channel encoded data (S131), analyzes the TMCC control information (S132), and determines whether or not there is reference clock information in the slot header in the transmission slot (S133). If there is reference clock information in the slot header (Yes in S133), the reference clock information extractor 15 extracts the reference clock information from the slot header (S134), and the reference clock generator 16 generates a system reference clock (system clock) based on the reference clock information (S135). On the other hand, if there is no reference clock information in the slot header (No in S133), the reference clock information acquisition flow ends.
[0122] Such a receiving device 20 can obtain the reference clock information at the layer of the transmission slot, and therefore can obtain the reference clock information faster than when it is stored in a TLV packet.
[0123] As described above, by storing reference clock information in a TLV packet or a transmission slot, the processing required to acquire the reference clock information in the receiving device 20 can be reduced, and the time required to acquire the reference clock information can be shortened.
[0124] Furthermore, by storing the reference clock information in this manner in the physical layer, it is possible to easily obtain and regenerate the reference clock information using hardware, thereby enabling more accurate clock regeneration than the obtainment and regeneration of the reference clock information using software.
[0125] In addition, in summary, in a system in which multiple layers (protocols) including an IP layer exist, the transmission method according to the above-mentioned embodiment 1 assigns a media timestamp based on reference clock information in a layer higher than the IP layer, and transmits the reference clock information in a layer lower than the IP layer. With this configuration, it becomes easy to process the reference clock information by hardware in the receiving device 20.
[0126] Based on a similar concept, it is also possible to store reference clock information in an IP packet without storing it in an MMT packet. Even in this case, the processing for acquiring the reference clock information can be reduced compared to when the reference clock information is stored in an MMT packet.
[0127] [Reference clock information transmission period] The following provides additional information regarding the transmission period of the reference clock information.
[0128] When storing reference clock information in a TLV packet, for example, the time when the first bit of the TLV packet is sent on the sending side is stored as the reference clock information. Also, instead of the time when the first bit is sent, a predetermined time that is determined separately may be stored as the reference clock information.
[0129] The TLV packet including the reference clock information is transmitted at a predetermined interval. In other words, the TLV packet including the reference clock information is included in a transmission slot and transmitted at a predetermined transmission period. For example, the reference clock information may be stored in at least one TLV packet and transmitted at 100 ms intervals.
[0130] Also, TLV packets including reference clock information may be placed at predetermined intervals in a predetermined location of a transmission slot of the advanced BS transmission method. Also, a TLV packet including reference clock information may be stored once for every 5-slot unit, which is the slot allocation unit of a TLV packet, and reference clock information may be stored in the first TLV packet of the first slot of the 5-slot unit. That is, a TLV packet including reference clock information may be placed at the beginning of the first slot in the transmission slot (i.e., immediately after the slot header).
[0131] Also, TLV packets including reference clock information may be arranged at predetermined intervals in a predetermined location of a transmission slot of a transmission method of advanced wideband digital satellite broadcasting. For example, the reference clock information may be stored in the head TLV packet of the first slot once every 5 slots, which is the slot allocation unit. That is, the reference clock information may be included in the TLV packet located at the head of the head slot of each stream included in the transmission slot. Also, the reference clock information may be stored in the first slot in the relative stream.
[0132] Furthermore, the transmission cycle and transmission interval of the reference clock information may be changed according to the modulation method or coding rate of the line coding method.
[0133] [How to quickly obtain reference clock information for higher layers] Next, a method for shortening the time required to acquire reference clock information by simultaneously processing DEMUX from the lower layer to the upper layer in the receiving device 20 will be described.
[0134] Here, we will explain a method of storing reference clock information in a higher layer such as an MMT packet, and storing the MMT packet in which the reference clock information is stored in an IP packet. In the method described below, a protocol for storing an IP packet in which reference clock information is stored is defined, so that a lower layer such as a TLV packet can directly refer to the MMT packet, which is a higher layer, and obtain the reference clock information contained in the MMT packet without performing normal DEMUX processing.
[0135] On the transmitting side, the reference clock information is included in the control information stored in the above-mentioned MMT packet. A predetermined packet ID is assigned to the control information including the reference clock information. On the transmitting side, the MMT packet including the reference clock information is stored in a dedicated IP data flow, and is assigned a predetermined source IP address, destination IP address, source port number, destination port number, and protocol type.
[0136] In the receiving device 20 that receives the line-encoded data generated in this manner, the TLV demultiplexer 12 obtains a predetermined IP data flow, thereby enabling extraction of an IP packet including reference clock information.
[0137] When the IP packets are header-compressed, for example, an identifier indicating that the IP packets contain reference clock information is added to a context identifier indicating that the IP packets are the same IP data flow. The context identifier is stored in the compressed IP packet header. In this case, the receiving device 20 can extract the IP packets containing reference clock information by referring to the context identifier in the compressed IP packet header.
[0138] Also, the IP packets including the reference clock information may be specified as not being header-compressed or as always being header-compressed. The IP packets including the reference clock information may be specified as being given a predefined context identifier and all headers may be compressed.
[0139] Another possible method is to define, in the data type field of the TLV, an identifier indicating that the IP packet belongs to an IP data flow that includes reference clock information, or an identifier indicating that the IP packet belongs to an IP data flow that includes reference clock information, etc. Such an identifier may be defined in a field other than the data type field of the TLV.
[0140] When the reference clock information is directly referenced from a lower layer, the reference clock information is stored in a predetermined position, and the packets (MMT packets, IP packets, TLV packets, etc.) in which the reference clock information is stored are packets dedicated to reference clock information. In addition, the length of the fields before the reference clock information is made constant, for example, by making the packet header length a fixed length.
[0141] At this time, the length of the field before the reference clock information does not have to be constant. It is sufficient that the length of the field before the reference clock information can be specified in the lower layer. For example, when there are two types of information A and B for the length to the reference clock information, the receiving device 20 can specify the position of the reference clock information by signaling which of A and B is in the lower layer. Alternatively, the transmitting side may store position information of the reference clock information that can directly refer to the reference clock information of the upper layer in the lower layer, and the receiving device 20 may refer to it based on the position information from the lower layer.
[0142] A method for quickly acquiring reference clock information of the upper layer will be specifically described below.
[0143] The receiving device 20 determines the data type of the TLV, and if it determines that it contains reference clock information, it directly obtains the reference clock information contained in the MMT packet from the IP packet.
[0144] In this way, the receiving device 20 may extract the reference clock information contained in the MMT packet by extracting a bit string at a specific position from the IP packet or compressed IP packet without analyzing the IP address, port number, or context identifier. Extracting a bit string at a specific position means, for example, extracting information of a specific length from a position offset by a fixed length byte from the TLV packet header, thereby obtaining the reference clock information.
[0145] The length of the fixed-length byte offset for extracting the reference clock information is uniquely determined for each of the IP packet and the compressed IP packet. Therefore, the receiving device 20 can obtain the reference clock information by extracting information of a specific length from a position offset by a fixed-length byte immediately after determining the data type of the TLV. Note that the extraction at this time may be performed from a position offset by a fixed length from a specific field of the TLV, not from a position offset by a fixed length from the TLV packet header.
[0146] The above method is an example, and other protocols and identifiers may be defined to allow the upper layer to obtain the reference clock information from the lower layer. For example, an identifier indicating whether the IP packet contains the reference clock information may be stored in a field other than the TLV data type.
[0147] Also, for example, the reference time information contained in the MMT packet may be extracted by extracting a bit string at a specific position from the IP packet or compressed IP packet without analyzing the IP address, port number, or context identifier.
[0148] If the IP data flow containing the reference clock information cannot be determined from the identification information of the IP data flow, the MMT packet containing the reference clock information may be identified based on unique identification information (packet ID) given to the MMT packet containing the reference clock information. In this case, the reference clock information is extracted from a specific field as described above.
[0149] In addition, it is assumed that the reference clock information included in the MMT packet is not stored in a predetermined position, or the position where the reference clock information included in the MMT packet is stored cannot be identified. In such cases, the receiving device 20 identifies the MMT packet including the reference clock information using the above method, and identifies and extracts the position of the reference clock information based on the MMT packet header information.
[0150] In the above, the case where the MMT packet is stored in the IP packet has been described as an example, but the data stored in the IP packet does not have to be the MMT packet, and may be, for example, data having another data structure. That is, the reference clock information may be included in the IP packet in a data structure different from that of the MMT packet. Even in the case of data having another data structure, as in the above example, the data including the reference clock information is stored in a dedicated IP data flow, and identification information indicating that the data includes the reference clock information or identification information indicating that the IP data flow includes the reference clock information is added.
[0151] The receiving device 20 identifies that the data includes reference clock information or that the data is an IP data flow including data including reference clock information, and extracts the reference clock information if the data includes reference clock information. Also, if the reference clock information is stored in a specific position in the data, the receiving device 20 can extract the reference clock information included in the data by referring to the specific position from the packet configuration of the lower layer.
[0152] In the above example, in order to extract the reference clock information from the IP packet or the compressed IP packet, the receiving device 20 extracts the reference clock information from different fixed length offset positions based on whether the IP packet is an IP packet or a compressed IP packet. However, if it is determined that the IP packet containing the reference clock information is not header compressed or that all IP packets containing the reference clock information are header compressed, the determination of whether the IP packet is an IP packet or a compressed IP packet in the receiving device 20 can be omitted. Also, after the header of the compressed IP packet is restored, the determination of whether the packet contains the reference clock information may be performed.
[0153] Hereinafter, a receiving method for extracting a bit string at a specific position from an IP packet or a compressed IP packet will be described with reference to a flowchart. Fig. 21 shows a flow for extracting a bit string at a specific position from an IP packet or a compressed IP packet. Note that the configuration of the receiving device 20 in this case is the same as the block diagram shown in Fig. 8.
[0154] In the flow of FIG. 21, first, the decoder 11 decodes the line-encoded data received by the receiver 10 (S141), and extracts the TLV packet from the line slot (S142).
[0155] Next, the TLV demultiplexer 12 analyzes the data type of the TLV packet (S143) and determines whether the data type is IP including reference clock information (S144). If it is determined that the data type is not an IP packet including reference clock information (No in S144), the flow ends. If it is determined that the data type is an IP packet including reference clock information (Yes in S144), the IP packet and the MMT packet are analyzed and it is determined whether the IP header is compressed (S145).
[0156] If the IP header is not compressed (No in S145), the reference clock information extraction unit 15 acquires the reference clock information included in the MMT packet at a position offset by a fixed length of N bytes from the TLV header (S146).If the IP header is compressed (Yes in S145), the reference clock information extraction unit 15 acquires the reference clock information included in the MMT packet at a position offset by a fixed length of M bytes from the TLV header (S147).
[0157] For example, if it is determined in step S145 that the IP header is compressed, then in step S146, reference clock information extraction unit 15 acquires reference clock information contained in the MMT packet from a position offset by N bytes from the TLV header. On the other hand, if it is determined in step S145 that the IP header is not compressed, then in step S147, reference clock information extraction unit 15 acquires reference clock information contained in the MMT packet from a position offset by M bytes from the TLV header.
[0158] Finally, the reference clock generating unit 16 generates a system clock based on the reference clock information (S148).
[0159] Since the data structure of the IP packet header differs depending on whether the IP packet is IPv4 or IPv6, the fixed length N bytes and M bytes will be different values.
[0160] While normal MMT packets including audio, video, and control signals are demultiplexed in normal steps, MMT packets including reference clock information are demultiplexed from the lower layer to the upper layer all at once. This allows the lower layer to acquire the reference clock information even if the reference clock information is stored in the upper layer. In other words, the processing for acquiring the reference clock information is reduced, the time required to acquire the reference clock information is shortened, and hardware implementation is also facilitated.
[0161] (Embodiment 2) Currently, the Association of Radio Industries and Businesses (ARIB) is considering a method of transmitting highly urgent information as a payload as a way to utilize the extended area of TMCC control information (hereinafter referred to simply as TMCC) in the advanced BS transmission system.
[0162] However, the proposed conventional method of using the extension area of the TMCC control information is limited to a method of transmitting a data payload such as text or images by using TMCC control information over several frames, which poses a problem that the method of using the extension area of the TMCC control information is limited.
[0163] In particular, conventional control information (control signals) whose values do not change from frame to frame, such as transmission mode and slot information, or control information whose values change from frame to frame, such as reference clock information, could not be stored in the extension area of the TMCC control information simultaneously with payload data spanning several frames.
[0164] Therefore, in the second embodiment, a method is described in which the extension area of the TMCC control information is divided according to the type of information or data stored in the extension area of the TMCC control information, thereby enabling data with different reception processes to be stored in the extension area of the TMCC control information at the same time. By providing extensibility to the use of the extension area in this manner, it is possible to improve the flexibility of extension. Furthermore, the receiving device can receive and analyze the TMCC control information using different reception methods for each type of data, based on the type of data.
[0165] Furthermore, this method makes it possible to mix payload data spanning several frames with payload data of only one frame in the extension area. Even when payload data spanning several frames cannot be received, payload data of only one frame can be acquired first, making it possible to acquire and present urgent information more quickly.
[0166] [TMCC extended information configuration] The structure of the TMCC extension information will be described below. Note that the basic structure of the TMCC control information is as shown in Fig. 16, and the types of control information stored in the TMCC control information are roughly divided into the following two types.
[0167] One type is control information related to frames, whose value does not change for each frame. The minimum update interval for such control information is in frame units, and when a value is changed, the changed information is sent two frames ahead. When there is a change, notification is given by incrementing an 8-bit change instruction. Specifically, this type of control information corresponds to information other than pointer information and slot information.
[0168] The other type is control information related to frames, and the value of the control information changes for each frame. Since the value of this type of control information changes for each frame, no change instruction is issued. Specifically, this type of control information is pointer information and slot information.
[0169] As shown in (a) of Fig. 22, the TMCC extension information is composed of a 16-bit extension identification and a 3598-bit extension field, and the extension field is enabled by setting the extension identification to a value other than all 0. Fig. 22 is a diagram showing the configuration of the TMCC extension information.
[0170] Fig. 22(b) is a diagram showing an example of a conventionally proposed bit allocation method when the extension area is used as the payload. As shown in Fig. 22(b), when the extension area is used as the payload, the page number is composed of 16 bits, and the additional information payload indicates how many frames the TMCC control information being transmitted will be transmitted over.
[0171] The page number is made up of 16 bits and indicates which page the currently transmitted TMCC control information is. The additional information type is made up of 8 bits and specifies the type of additional information. Specific examples of the additional information type include text (subtitles), graphics, and audio.
[0172] In the case of such a configuration, the entire extension area is used as the payload, and it is not possible to use the extension area to store control information such as conventional TMCC control information.
[0173] [How to expand the TMCC extension area] Here, a method is described for storing data with different reception processing in the TMCC extension area by dividing the TMCC extension area according to the type of information or data stored in the TMCC extension area.
[0174] The types of information and data stored in the TMCC extension field (hereinafter referred to as extension types) are classified, for example, as follows:
[0175] Type A: This is control information related to the frame, and its value does not change for each frame. The minimum update interval is in frames. If there is a change in the value, the changed information is sent two frames ahead. Also, if there is a change, the change is notified by incrementing the change instruction by 8 bits.
[0176] Type B: This is control information related to the frame, and the value changes for each frame. This information's value changes every frame, and no change instructions are issued.
[0177] Type C: Used as a payload (the traditional extension method). However, for the change instruction, the same change instruction field as that of the non-extended TMCC may be used, or a unique change instruction field may be specified in the extended area.
[0178] Fig. 23 is a diagram showing an example of a data structure (bit arrangement) of an extension area in which the extension types classified in this way are used. Fig. 24 is a diagram showing syntax when the extension types are used.
[0179] In the example of Fig. 23, only the above three types are defined as the extension type. Also, as shown in Fig. 24(a), the data length for each of the three types of extension type is stored, followed by the extension data of the length indicated in the data length for each extension type. In the receiving device, the data of the length indicated in the data length for each extension type is extracted from the extension area and processed.
[0180] For example, the receiving device acquires Type A data only when there is an instruction to change the data, and when there is a change in the Type A data, it assumes that the control information has been changed and performs processing in accordance with the change in the control information.
[0181] In addition, the receiving device acquires Type B data every frame because the value of Type B data changes every frame. For example, when reference clock information whose value changes every frame is stored in the TMCC control information, it is stored in the Type B data area.
[0182] Type C data includes payload information of a conventional extension method, and a receiving device operates in accordance with acquisition of Type C data according to the conventional extension method.
[0183] In the above example, the details of the data configuration for each extension type must be specified separately. When specified separately, an identifier similar to the additional information type and the target service designation method in the data of Type C shown in (b) of Fig. 22 may be specified in other types. Note that the additional information type may be defined using a common table, or the extension identification and the additional information type may be merged.
[0184] Also, information whose data length may change midway may be classified as the same type as Type A data. In this case, if there is a change in the data length, a change instruction may be issued by transmitting the changed information two frames ahead. When a change instruction is issued, the receiving device refers to the data length of the extended type and checks whether the data length has changed.
[0185] The data structure is not limited to the structure shown in FIG. 23. For example, if the data length of the extension type is fixed in advance, the data length does not need to be transmitted. Specifically, if the data length of the extension type Type A is fixed in FIG. 23, the data length of the extension type Type A does not need to be placed in the data structure. Also, if the data length of the extension type Type A and the data length of the extension type Type B are fixed, the data lengths of all types do not need to be placed. Also, a flag indicating whether or not there is data of the extension type may be provided in the data structure.
[0186] In addition, the syntax when using the extension type is not limited to the syntax shown in (a) of Fig. 24. For example, in the example shown in (b) of Fig. 24, the number of extension areas is set, and the extension type and extension area length are stored for each number of extension areas. Next, the extension data of the number of extension areas is stored.
[0187] This type of configuration can also accommodate future extension types. In addition, since this type of configuration can store multiple pieces of data of the same extension type, it is not necessary to determine the details of the data configuration for each extension type in advance. In addition, even when this type of configuration is used as a payload (as Type C), it can describe multiple pieces of data with different page numbers, such as video and audio, in the same frame.
[0188] In the configuration shown in FIG. 24(b), the number of extension areas, the extension type, and the extension area length may be the same as those of Type A. In other words, these pieces of information may be defined as information that conforms to the change instruction. In this way, by storing data that conforms to the change instruction consecutively, it becomes easier to determine whether or not a change has been made.
[0189] In addition, an undefined area may be provided for the extension types in preparation for future extensions. For example, the following types are expected as extension types that will be introduced in the future.
[0190] This is a control signal that is updated every few frames, and no change instructions are issued.
[0191] For emergency signals, the change instruction is given in the same way as in Type A, but instead of using information from two frames ahead, the change instruction is processed immediately in the frame in question after it is received.
[0192] In the case of the emergency signal, the emergency flag may be transmitted using an extension type with a change instruction, and the emergency data may be transmitted using a payload. The extension type may be classified according to whether or not the change instruction is followed.
[0193] [Detailed configuration and operation flow] The functional configuration and operation flow of the receiving device as described above will be described. Fig. 25 is a block diagram showing the functional configuration of the receiving device according to the second embodiment. Fig. 26 is a diagram showing the operation flow of the receiving device according to the second embodiment. In the following description, it is assumed that there are only three extension types, Type A, Type B, and Type C, as described above.
[0194] As shown in FIG. 25, the receiving device 40 includes an extension identification unit 41, an extension type determination unit 42, a change instruction confirmation unit 43, a data update confirmation unit 44, and an update data acquisition unit 45.
[0195] First, the extension identification unit 41 analyzes the extension identification of the TMCC control information (S161). If the extension identification is other than all 0, the extension field is determined to be valid, and the receiving device 40 executes the following process for each extension field.
[0196] Next, the extension type determination unit 42 determines (determines) the extension type (S162). If the extension type is determined to be Type A (Type A in S162), the data in the area specified by the extension area length is control information whose value does not change for each frame and follows the change instruction. Therefore, the change instruction confirmation unit 43 confirms the change instruction for each frame (S163).
[0197] Next, the data update confirmation unit 44 judges whether or not data has been updated (S164). If it is judged that a change instruction has been given and that the extension data has been changed (Yes in S164), the update data acquisition unit 45 acquires the updated extension data and executes processing associated with the change (S165).
[0198] On the other hand, if the above-mentioned determination is not made in step S164 (No in S164), the update data acquisition unit 45 determines that there is no change in the extension data.
[0199] Also, if it is determined in step S162 that the extension type is Type B (Type B in S162), the update data acquisition unit 45 refers to the data specified by the extension area length, acquires the data that is updated for each frame, and executes processing associated with the change (S167).
[0200] If it is determined in step S162 that the extension type is Type C (Type C in S162), the update data acquisition unit 45 executes processing based on the conventional reception method of the payload extension method (S166).
[0201] In addition, as described above, if it is determined that the number of extension areas, extension type, and extension area length are the same type as Type A in accordance with the change instruction, the update data acquisition unit 45 checks the change instruction, and if there is a change instruction, checks whether the information has been updated.
[0202] The receiving device 40 may determine the reception process based on the extension type and determine which processing block to process the data in. For example, the receiving device 40 may determine that Type A data and Type B data are processed by hardware and Type C data is processed by software.
[0203] [Effects, etc.] As described above, in the second embodiment, the TMCC extension field in the advanced BS transmission system is divided for each extension type, and the extension data is stored in the TMCC extension field. In such a method, the receiving device 40 determines the processing method for the extension data based on the extension type.
[0204] This makes it possible to simultaneously store multiple pieces of data with different reception processing in the TMCC extension area, which means that the TMCC extension area can be used with extensibility.
[0205] Specifically, for example, it becomes possible to simultaneously store the payload and the reference clock information in the extension area.
[0206] It is also possible to mix payload data spanning several frames and payload data of only one frame in the TMCC extension area. Therefore, even if the receiving device 40 cannot receive payload data spanning several frames, it can obtain payload data of only one frame in advance. Therefore, the receiving device 40 can obtain and present urgent information more quickly.
[0207] (Embodiment 3) In the third embodiment, a method of transmitting a plurality of pieces of reference clock information each belonging to a different layer will be described.
[0208] [overview] FIG. 27 is a diagram illustrating an example in which reference clock information is stored in each of a plurality of layers.
[0209] In the example of Fig. 27, the first layer is a layer above the second layer, and the first layer stores first reference clock information, and the second layer stores second reference clock information.
[0210] A transmitting device basically performs a first layer MUX process and then a second layer MUX process, and a receiving device basically performs a second layer DEMUX process and then a first layer DEMUX process.
[0211] When storing the first reference clock information in a first layer and the second reference clock information in a second layer, the transmitting device can store, for example, the information shown below as information indicating the relationship between the first reference clock information and the second reference clock information.
[0212] As a first example, the transmitting device can include, in a transmission signal (eg, a transmission frame), information indicating that a plurality of pieces of reference clock information are stored in the transmission signal.
[0213] Specifically, the transmitting device stores, in at least one or more layers among the layers including the reference clock information, information indicating that the reference clock information is also stored in layers other than the layer.
[0214] The transmitting device may also indicate that a plurality of pieces of reference clock information are stored in a layer that does not include reference clock information. For example, the transmitting device may store information in a lower layer (second layer) indicating whether or not the upper layer (first layer) includes reference clock information. In this case, the receiving device can determine whether or not to obtain the reference clock information of the lower layer and to reproduce the reference clock, taking into account whether or not the upper layer includes reference clock information in the processing of the lower layer.
[0215] As a second example, the transmitting device can include information regarding the first reference clock information and the second reference clock information in the transmission signal.
[0216] Specifically, the transmitting device stores, in each layer, information indicating the type of reference clock information included in the layer, or stores, in each layer, information indicating the type of reference clock information included in layers other than the layer.
[0217] There are various types of reference clock information, such as 32-bit NTP, 64-bit NTP, and 24-bit SMPTE time code, and information indicating the type of reference clock information is information that can identify the format of the reference clock information (including information such as accuracy).
[0218] It should be noted that if it is already known that a certain type of reference clock information is included, such information need not be included.
[0219] As a third example, the transmitting device can include information indicating the relative relationship between the first reference clock information and the second clock information in the transmission signal.
[0220] Specifically, the transmitting device may include information indicating a relative relationship in accuracy of the reference clock information, for example, information indicating that the accuracy of the second reference clock information is higher or lower than the accuracy of the first reference clock information.
[0221] Furthermore, the information indicating such a relative relationship may be information indicating a relative relationship based on the total number of bits of the reference clock information, or information indicating a relative relationship of a dynamic range based on the number of bits of the integer part.
[0222] Alternatively, the information indicating the relative relationship may be information indicating the relative relationship of the accuracy of the resolution based on the magnitude of the number of bits in the decimal part. Also, the information indicating the relative relationship may be information indicating the relative relationship of the accuracy at the time of acquiring the reference clock information based on the difference in accuracy caused by the original reliability of the reference clock information in the transmitting device, the quality of the transmission path, and the difference in processing capacity in the transmitting process and the receiving process.
[0223] The information indicating the relative relationship may also be information indicating a difference in accuracy between the reference clock information. For example, when there is a difference in the number of decimal bits, the information may be information indicating the difference in the number of decimal bits. The information indicating the relative relationship may be information indicating whether the accuracy of each is the same, or may be stored as information indicating the relative relationship only when the accuracy is different. Note that when the relative relationship of accuracy is known in advance, such information indicating the relative relationship of accuracy may not be included.
[0224] If such information indicating the relative accuracy is transmitted, the receiving device can perform control such that, when the transmitted information indicates that the accuracy of the second reference clock information is lower than that of the first reference clock information, the receiving device does not acquire and reproduce the second reference clock information, but acquires and reproduces the first reference clock information, and performs synchronous reproduction based on the first reference clock information. Alternatively, when the transmitted information indicates that the accuracy of the second reference clock information is higher than that of the first reference clock information, the receiving device does not acquire and reproduce the first reference clock information, but acquires and reproduces the second reference clock information, and performs synchronous reproduction based on the second reference clock information.
[0225] As a fourth example, the transmitting device can include information indicating the relative time relationship between the reference clock information in the transmission signal. Specifically, the transmitting device transmits information indicating the relative time of the first reference clock information and the second reference clock information. For example, the transmitting device transmits using a CRI_descriptor in the MMT method. Note that information indicating whether the first reference clock information and the second reference clock information are generated based on the same reference clock may be included.
[0226] When each piece of reference clock information is generated based on the same reference clock, there is usually a difference in timing between acquiring the first reference clock information and the second reference clock information in the receiving device, i.e., a fixed time difference occurs in the end-to-end delay of each piece of reference clock information.
[0227] For this reason, the transmitting device calculates a time difference Δ_A between the timing of providing the first reference clock information and the timing of providing the second reference clock information, and stores the calculated time difference Δ_A in the transmission signal as a time corresponding to the timing of acquiring the first reference clock information and the second reference clock information. The receiving device acquires the time difference Δ_A from the transmission signal, and corrects the end-to-end delay difference between the first reference clock information and the second reference clock information based on the time difference Δ_A.
[0228] Furthermore, when each piece of reference clock information is generated based on a reference clock of the same format and has a fixed delay difference Δ_B, the transmitting device stores and transmits information indicating the fixed delay difference Δ_B of the reference clock information. The receiving device acquires the delay difference Δ_B and corrects the fixed delay difference of the reference clock based on the delay difference Δ_B.
[0229] Furthermore, if the reference clock on which each piece of reference clock information is based has a fixed delay Δ_B, the transmitting device transmits the information including the fixed delay Δ_B in the second layer, which is the lower layer.
[0230] In addition, when each of the reference clock information is generated based on a reference clock of the same format, the second reference clock information may be expressed as a difference from the first clock information, with the first reference clock information as a base. In this case, the second reference clock information may be used as a base.
[0231] As a fifth example, when a plurality of pieces of reference clock information are stored, the transmitting device can include information on whether to use the reference clock information stored in different layers in the transmission signal. For example, the transmitting device includes information instructing that the second reference clock information stored in the second layer is used in the first layer in the transmission signal. In this case, the receiving device can determine to generate the second reference clock information and output it to the first layer based on the information.
[0232] The information as described above is stored in at least one or more layers. For example, such information may be stored only in the first layer, or may be stored only in the second layer. Also, such information may be stored in both layers. Alternatively, in each layer, information regarding the reference clock information in the layer may be stored, and only information indicating the relative relationship may be stored in at least one or more layers.
[0233] It is preferable that the information indicating the relative relationship is stored in a lower layer (second layer). Alternatively, it may be stored in a layer lower than the second layer (not shown in FIG. 27). In the receiving device, when performing DEMUX processing of the lower layer (second layer), the receiving device can obtain information regarding the reference clock information of the higher layer (first layer), thereby enabling faster processing.
[0234] The combination of the first layer and the second layer may be any combination. For example, the combination of the first layer and the second layer may be a combination of the MMT layer and the IP layer, the MMT layer and the transmission layer, or the IP layer and the transmission layer. In addition, the combination of the first layer and the second layer may be a combination of the MMT and the TS in the case of MMT over TS.
[0235] Moreover, the above information is stored in the control signal of each layer. For example, in the MMT method, it is stored in the descriptor, table, message, and packet header information, and in the MPEG2-TS method, it is stored in the descriptor, table, section, and header information. It may also be stored in the TMCC or slot header in the transmission layer. When the transmission method is DVB, it is stored in the TPS, L1 data, L2 data, P1 data, P2 data, etc.
[0236] The first reference clock information and the second reference clock information may be the same type of reference clock information or different types of reference clock information. The first reference clock information and the second reference clock information may be reference clock information with different accuracy. The first reference clock information and the second reference clock information may be reference clock information based on the same reference clock or may be reference clock information based on different reference clocks.
[0237] The transmitting device may transmit three or more pieces of reference clock information, or may store and transmit the reference clock information in three or more layers. The reference clock information may be stored in different fields in a data structure in the same layer. There may be other layers between the first layer and the second layer.
[0238] The reference clock information may be, for example, NTP, a time code, or PTP, but may also be other reference clock information. The reference clock information may also be other information related to time (for example, a Time Offset Table (TOT) and a Time Date Table (TDT)).
[0239] Fig. 28 is a diagram showing an example in which a plurality of pieces of reference clock information are stored in one layer. In the example of Fig. 28, the first layer includes three pieces of reference clock information, namely, the first reference clock information, the second reference clock information, and the third reference clock information.
[0240] In this case as well, the transmitting device can store information about the first reference clock information and the second reference clock information, information indicating the relative relationship between them (in terms of accuracy and time), and the like.
[0241] As an example, a case where multiple pieces of reference clock information are stored in a TMCC will be described. As described in Fig. 17, the advanced BS transmission system can transmit 16 streams, and it is assumed that data from different broadcasting stations is stored in separate streams, for example. Fig. 29 is a block diagram for explaining an example in which data from different broadcasting stations is stored in separate streams.
[0242] 29, a first broadcast station 51, a second broadcast station 52, and a third broadcast station 53 transmit data generated at each broadcast station to a satellite transmitting station 54 using a wired or wireless connection such as an optical line. The satellite transmitting station 54 multiplexes the streams of each broadcast station onto the same transmission channel of the advanced BS transmission method. The satellite transmitting station 54 stores reference clock information corresponding to the streams of each broadcast station in a TMCC and transmits it to the receiving device 50.
[0243] In this case, in the example of Figure 28, the first reference clock information corresponds to the reference clock information of the first broadcast station 51, the second reference clock information corresponds to the reference clock information of the second broadcast station 52, and the third reference clock information corresponds to the reference clock information of the third broadcast station 53.
[0244] Incidentally, when each broadcasting station performs processing based on common reference clock information such as NTP, the respective reference clock information at the satellite transmitting station 54 has a time difference due to differences in end-to-end delay caused by reception processing delay and transmission delay until the information arrives at the satellite transmitting station.
[0245] Here, if the common reference clock information used by each broadcasting station is designated as NTP_base, the first reference clock information in the satellite transmitting station is expressed as NTP_base+Δ1, the second reference clock information as NTP_base+Δ2, and the third reference clock information as NTP_base+Δ3.
[0246] In this case, as shown in Fig. 30, the transmitting device may transmit common reference clock information NTP_base, and transmit difference information (Δ1, Δ2, Δ3) between each reference clock information and the common reference clock information. Fig. 30 is a diagram for explaining a method of transmitting difference information. Also, for example, of 64-bit reference clock information, the base reference clock information is expressed by the upper 16 bits, and the difference information is expressed by the remaining 48 bits, thereby reducing the amount of information (size) when transmitting the reference clock information.
[0247] The base reference clock information does not have to be NTP_base, and may be the earliest (least delayed) reference clock information among multiple reference clock information. Alternatively, the base reference clock information (reference value) may be a value smaller than the value of the earliest reference clock information.
[0248] Also, as shown in Fig. 31, the base reference clock information may be transmitted every frame, and the difference information may be transmitted in sequence every three frames, or the like, so that the base reference clock information and the difference information are transmitted at different frequencies. Fig. 31 is a diagram for explaining a modified example of the method of transmitting the difference information. The transmission method shown in Fig. 31 can reduce the amount of information (size) when transmitting the reference clock information.
[0249] The receiving device 50 regenerates the base reference clock using the base reference clock information, and after regenerating the base reference clock information, may generate each reference clock using the difference information.
[0250] [Detailed configuration and operation flow] Here, the functional configuration and operation flow of the receiving device 50 will be described. Fig. 32 is a block diagram showing the functional configuration of the receiving device 50. Fig. 33 is a diagram showing the operation flow of the receiving device 50. Note that, in the following, an example will be described in which reference clock information is stored only in either the IP layer or the transmission layer, and the receiving device 50 regenerates the reference clock based on either of the reference clock information.
[0251] The receiving device 50 includes a receiving unit 10, a decoding unit 11, a TLV demultiplexer 12, an IP demultiplexer 13, an MMT demultiplexer 14, a synchronization unit 17, and a decoding presenting unit 18. The receiving device 50 also includes a first reference clock information extracting unit 15a, a second reference clock information extracting unit 15b, a first reference clock generating unit 16a, and a second reference clock generating unit 16b.
[0252] A flag indicating whether or not there is reference clock information in the IP layer is stored in the control information of the transmission layer (such as a slot header and TMCC. Here, TMCC.) Also, the control information of the transmission layer stores reference clock information when there is no reference clock information in the IP layer.
[0253] In addition, the control information of the transmission layer stores a flag indicating whether the reference clock information acquired at the transmission layer is necessary for processing of the upper layer when there is no reference clock information at the IP layer, or a flag indicating whether the reproduced reference clock information is necessary for processing of the upper layer.
[0254] For example, if the reference clock information is a 64-bit NTP, the NTP is stored in a 64-bit field indicating the reference clock information. Also, a flag indicating whether the reference clock information is in the IP layer may be provided in the reference clock information field. If the reference clock information is stored in the IP layer, the reference clock information does not need to be stored in the transmission layer, so this field can be utilized.
[0255] For example, when there is reference clock information in the IP layer, if there is a predetermined value (e.g., ALL1) in the field of the reference clock information, the receiving device 50 determines that the value is not reference clock information but a flag indicating that there is reference clock information in the IP layer. Alternatively, the receiving device 50 may use a value based on a predetermined rule as the flag, such as determining that there is reference clock information when ALL1 is indicated only once in the field of the reference clock information, and determining that there is reference clock information in the IP layer when ALL1 is indicated consecutively a predetermined number of times or more.
[0256] The decoder 11 of the receiving device 50 analyzes the TMCC, which is control information in the transmission layer, and analyzes various flags and reference clock information (S171). Then, the decoder 11 performs a judgment based on the flags (S172). If it is judged that there is no reference clock information in the IP layer (there is reference clock information in the transmission layer) (No in S172), the second reference clock information extractor 15b acquires (extracts) the reference clock information in the transmission layer, and the second reference clock generator 16b reproduces (generates) the reference clock.
[0257] Next, the decoding unit 11 judges whether the reference clock recovered in the transmission layer is necessary for the processing of the upper layer (S174). If it is judged that the reference clock recovered in the transmission layer is necessary for the processing of the upper layer (Yes in S174), the second reference clock generating unit 16b outputs the reference clock recovered in step S174 to the upper layer (S175). If it is not judged that the reference clock recovered in the transmission layer is necessary for the processing of the upper layer (No in S174), the processing is terminated.
[0258] On the other hand, if it is determined that the IP layer has reference clock information (the transmission layer does not have reference clock information) (Yes in S172), the transmission layer does not obtain the reference clock information and regenerate the reference clock. In this case, the first reference clock information extractor 15a and the first reference clock generator 16a obtain the reference clock information and regenerate the reference clock in the IP layer (S176).
[0259] In addition, if the transmission layer does not need to recover the reference clock, and if the upper layer does not need the reference clock, the acquisition of reference clock information and the recovery of the reference clock (S173) in the transmission layer do not need to be performed.
[0260] Furthermore, when a reference clock is required in a higher layer, instead of outputting the regenerated reference clock, reference clock information may be passed to the higher layer, and the reference clock may be regenerated in the higher layer. Furthermore, new reference clock information may be generated based on the reference clock regenerated in the transmission layer, and the generated reference clock information may be output to the higher layer.
[0261] Methods for outputting a reference clock to an upper layer include outputting the regenerated reference clock as is, and outputting the acquired reference clock information or newly generated reference clock information by storing or converting it into a data structure to be output to the upper layer.
[0262] [Another example of operation flow] Next, a description will be given of another operation flow of the receiving device 50. Fig. 34 is a diagram showing another operation flow of the receiving device 50. Note that the configuration of the receiving device 50 is the same as that of Fig. 32.
[0263] In the example of Figure 34, reference clock information can be stored in both the IP layer and the transmission layer, and when multiple reference clock information is stored, relative information on the accuracy of the reference clock information is stored.
[0264] The decoder 11 analyzes the TMCC (S181) and performs a determination based on the flag (S182). If it is determined that there is no reference clock information in the IP layer (No in S182), the decoder 11 obtains the reference clock information in the transmission layer and recovers the reference clock (S185).
[0265] On the other hand, if it is determined in step S182 that the IP layer has reference clock information (Yes in S182), the decoder 11 determines which of the reference clock information in the transmission layer and the reference clock information in the IP layer has higher accuracy (S183). If it is determined that the reference clock information in the IP layer has higher accuracy than the reference clock information in the transmission layer (Yes in S183), the reference clock information is acquired in the IP layer and the reference clock is reproduced (S184). If it is determined that the reference clock information in the IP layer has lower accuracy than the reference clock information in the transmission layer (No in S183), the reference clock information is acquired in the transmission layer and the reference clock is reproduced (S185).
[0266] [Effects, etc.] As described above, multiple pieces of reference clock information may be transmitted in one or more layers. When multiple pieces of reference clock information are transmitted, the receiving device 50 may select one of the pieces of reference clock information and use it to generate a reference clock (system clock), or may use both pieces of reference clock information to generate a reference clock. In this case, the receiving device 50 may select highly accurate reference clock information, or may select reference clock information that can be obtained more quickly.
[0267] In addition, when the reference clock information is transmitted in a plurality of layers, the transmitting side may store information indicating that the reference clock information is transmitted in a plurality of layers. In addition, information indicating that the reference clock information is transmitted in a plurality of layers, or information related to the layer or protocol in which the reference clock information is transmitted, may be transmitted in a lower layer. Furthermore, information indicating the relationship between the reference clock information stored in different layers may be transmitted.
[0268] This allows the receiving device 50 to determine that the upper layer contains reference clock information during DEMUX processing of the lower layer, and to determine which reference clock information to use based on the determination. The determination of which reference clock information to use may be based on whether the receiving device 50 supports reference clock recovery for which layer, or a recommended reference clock recovery may be specified by the broadcasting station.
[0269] When reference clock information is transmitted in multiple layers, the receiving device 50 may extract reference clock information in a lower layer and at the same time extract reference clock information contained in a higher layer from the lower layer. Then, the receiving device 50 may generate a reference clock using at least one or more pieces of extracted reference clock information.
[0270] In addition, a plurality of pieces of reference clock information may be transmitted through a plurality of transmission paths. In this case, it may be possible to transmit information relating to the fact that the plurality of pieces of reference clock information are transmitted through a plurality of transmission paths, or the transmission path through which the reference clock information is transmitted.
[0271] (Other embodiments) Although the embodiment has been described above, the present invention is not limited to the above embodiment.
[0272] For example, it is assumed that in addition to the 32-bit short format NTP included in the conventional MMT packet header, more accurate reference clock information will be transmitted. In such a case, the transmitting side further transmits information for the receiving device to reproduce the 32-bit short format NTP using the highly accurate reference clock information. Such information is, for example, time information indicating the relative relationship between the clocks, and may be transmitted using CRI_descriptor() or the like.
[0273] In addition, when the receiving device can reproduce the 32-bit short format NTP, the NTP field included in the conventional MMT packet header is not necessary. Therefore, other information may be stored in the NTP field, or the header may be compressed by deleting the NTP field. When the header is compressed, information indicating that the NTP field has been deleted is transmitted. When the NTP field is deleted, the receiving device generates a reference clock using other reference clock information and reproduces the 32-bit short format NTP.
[0274] Also, when an MMT packet is transmitted using a communication transmission line, the receiving device may use 32-bit short format NTP for QoS control and may not use reference clock information. Therefore, the reference clock information may not be transmitted over the communication transmission line. Also, if the end-to-end delay of the communication transmission line is within a certain range, the reference clock information may be used for clock recovery.
[0275] In the above-mentioned first embodiment, the case where the MMT / IP / TLV method is used has been described as an example, but a method other than the MMT method may be used as the multiplexing method. For example, the present invention can be applied to the MPEG2-TS method, the RTP method, or the MPEG-DASH method.
[0276] Methods of compressing the header of an IP packet include Robust Header Compression (RoHC) and Header Compression for Broadcasting (HCfB).
[0277] As a method for storing IP packets in a broadcast, other than the TLV method, there is a Generic Stream Encapsulation (GSE) method, and an IPoverTS method using Unidirectional Light-weight Encapsulation (ULE).
[0278] The present invention can be applied to any of the above methods, and by applying the present invention, it is possible to shorten the time required to obtain reference clock information in the receiving device, reduce processing, and improve the accuracy of the clock by implementing it in hardware.
[0279] In the above embodiment, the reference clock information is NTP when the multiplexing method is MMT, but is PCR (Program Clock Reference) when the multiplexing method is MPEG2-TS, for example. Even when the multiplexing method is MMT, PTP defined in IEEE1588 may be transmitted in NTP format. Only some bits of NTP may be transmitted. In other words, the reference clock information may be information indicating the time set by the transmitting side. In addition, NTP does not necessarily mean the NTP value in an NTP server that is commonly used on the Internet.
[0280] The present invention may also be realized as a transmitting device (transmitting method) that transmits a transmission slot that stores reference clock information by the above-mentioned method. The configuration of such a transmitting device will be described below. Figure 35 is a block diagram showing the functional configuration of the transmitting device. Figure 36 shows the operation flow of the transmitting device.
[0281] 35, the transmission device 30 includes a generation unit 31 and a transmission unit 32. Specifically, the components of the transmission device 30 are realized by a microcomputer, a processor, a dedicated circuit, or the like.
[0282] The transmission device 30 is specifically a broadcast server, and is an example of the "transmission side" in the first embodiment.
[0283] The generating unit 31 generates, for example, a transmission slot storing a plurality of slots each storing one or more TLV packets each storing an IP packet (S151 in FIG. 36).
[0284] At this time, the generating unit 31 includes first reference clock information such as NTP indicating the time for playing back the content (for example, broadcast content such as video or audio) in an IP packet (hereinafter also referred to as a target IP packet) that stores a TLV packet located at the head of the head slot in the transmission slot. At this time, the target IP packet is an IP packet that is not header-compressed, and the first reference clock information is stored, for example, in the target IP packet in a data structure different from that of the MMT packet.
[0285] Furthermore, the generating unit 31 stores second reference clock information indicating the time for playing back the content in the control information (TMCC) in the transmission slot.
[0286] Specifically, the generation unit 31 includes an encoding unit that encodes broadcast content, an MMT multiplexer, an IP multiplexer, and a TLV multiplexer, etc. Note that the TLV packet is an example of a first transmission unit, the slot is an example of a second transmission unit, and the transmission slot is an example of a frame for transmission.
[0287] The transmitting unit 32 transmits the transmission slot (the line-coded data including the transmission slot) generated by the generating unit 31 via broadcasting (S152 in FIG. 36).
[0288] As described in the above embodiment, the process by which the receiving device acquires the reference clock information can be simplified according to the transmitting device 30. Therefore, the time required for the receiving device to acquire the reference clock information can be shortened.
[0289] In addition, by storing second reference clock information indicating the time for playing the content in the control information within the frame, the receiving device can select whether to use the first reference clock information or the second reference clock information.
[0290] (Embodiment 4) In this embodiment, a method for passing reference clock information to a higher layer in a receiving device and an interface therefor will be described.
[0291] 37 is a block diagram showing a configuration of a receiving device 60 according to this embodiment. The receiving device 60 includes a decoding device 61 that performs lower layer processing, and a demultiplexing device 62 that performs upper layer processing. For example, the decoding device 61 and the demultiplexing device 62 are formed as different LSIs. Note that the decoding device 61 and the demultiplexing device 62 may be formed as a single LSI.
[0292] The decoding device 61 includes a receiving unit 10 and a decoding unit 11. The receiving unit 10 receives line-coded data. The decoding unit 11 extracts a TLV packet by decoding the line-coded data received by the receiving unit 10, and outputs the TLV packet to a demultiplexing device 62.
[0293] The demultiplexer 62 includes an acquisition unit 63 and a demultiplexer 64. The acquisition unit 63 acquires the TLV packets output from the decoding device 61. The demultiplexer 64 demultiplexes the TLV packets. For example, the demultiplexer 64 includes processing units other than the receiving unit 10 and the decoding unit 11 among the processing units shown in FIG. 32. The demultiplexer 64 may include processing units other than the receiving unit 10 and the decoding unit 11 among the processing units included in the receiving device described in the other embodiments. The demultiplexer 64 does not need to include all of these processing units and may include only some of them. The demultiplexer 62 also controls the output of the decoding device 61.
[0294] As explained in Figures 32 and 33, when the lower layer contains reference clock information, the lower layer decoding device 61 does not output the recovered reference clock to the upper layer demultiplexing device 62, but passes the reference clock information to the demultiplexing device 62, and the method of recovering the reference clock in the demultiplexing device 62 is supplemented and explained in detail.
[0295] In the following, we will explain the method described in non-patent document 2 (ARIB Standard ARIB STD-B44 (Version 2.0), Chapter 3 "Guidelines for the transmission of time information" in "Transmission method for advanced wideband satellite digital broadcasting") and the transmission and reception of a reference clock based on a data structure.
[0296] Although the above standard shows how to store reference clock information in TMCC, it does not specify the specific time information to be transmitted or the operation of the receiving device, so the receiving device cannot obtain accurate time information. For example, the above standard states that "the reference clock information to be stored in TMCC is the time when this TMCC signal departs from the transmitting server," but does not provide a specific definition.
[0297] TMCC control information (TMCC control signal) is generated in the transmitting device for each transmission frame in a system separate from the main signal of the main line system, and after error correction coding and interleaving processing are performed, it is distributedly mapped into one frame's worth of the main signal (the main signal is also a signal after error correction coding and interleaving processing).
[0298] FIG. 38 is a diagram showing the timing of the main signal and the reference clock information.
[0299] When reference clock information is stored in the TMCC control information, the reference clock information (NPTn, NPTn+1, ... in Figure 38) is stored at intervals of the transmission frame time length (T F ) After the reference clock information is generated, it is sent out in units of transmission frames. At this time, processing delays occur between the generation of the reference clock information and the sending out of the transmission frames due to error correction coding, interleaving processing, and the timing of sending out the transmission frames. In FIG. 38, NTPn is stored in transmission frame M+1 and transmitted, and NTPn+1 is stored in transmission frame M+2 and transmitted. Note that the following description will be given assuming that the transmission delay is 0, and that the sending time and receiving time of the transmission frames are the same.
[0300] The receiving device receives one transmission frame's worth of data, performs error correction and deinterleaving, and then extracts the TMCC control information. As a result, the reception timing of the reference clock information is delayed by one frame or more.
[0301] Similarly, for main signals in the main line system, processing delays occur during transmission and reception due to error correction and interleaving processes.
[0302] However, because the delay times for transmission and reception are different between the main line system and the TMCC control information system, there is a problem that it is unclear what time the reference clock information acquired by the receiving device is relative to the time of the main line system. There is also a problem that there is no regulation of the timing for storing the reference clock information acquired by the receiving device in the upper layer.
[0303] Therefore, in this embodiment, the reference clock information is stored in the TMCC control information according to the following method.
[0304] The transmitting device sets the reference clock information stored in the TMCC control information to, for example, the time when the transmission frame of the main signal sends out the server (for example, the time when the first packet of the transmission frame sends out the server).
[0305] The receiving device stores the reference clock information extracted from the TMCC control information at the beginning of the next transmission frame and transmits it to a higher layer.
[0306] Due to the above operation, the relative relationship due to the difference in processing delay between the main line system and the TMCC control information system is an integer multiple of the transmission frame (N × T F ) (N is an integer).
[0307] Furthermore, in order to match the time relationship between the main line system and the reference clock information extracted from the TMCC control information, N × T F The correction is made.
[0308] If N can be uniquely determined in advance, the transmitting device may store the corrected time of N×TF in the TMCC control information, or the receiving device may correct the time. If N cannot be uniquely determined, the receiving device estimates N and corrects the time.
[0309] Furthermore, when the reference clock information is transmitted in the main signal (TLV packet) in addition to the TMCC control information, the transmitting device stores the same time as the time stored in the TLV packet in the TMCC control information. Alternatively, the transmitting device stores a time that is equal to or greater than the time stored in the TLV packet by a factor of N×T. F The time corrected according to the above is stored in the TMCC control information.
[0310] The receiver extracts the time information from the TMCC control information and multiplies it by N × T F By applying the above correction, the same time as the time stored in the main signal is calculated, and the calculated time is output to the upper layer.
[0311] As a method for extracting the reference clock information from the TMCC control information and transmitting the corrected reference clock information to a higher layer, the receiving device may replace the reference clock information in the TLV packet and output it.
[0312] In addition, since the reference time is the same in the reference clock information stored in the TMCC control information and the TLV packet, the upper layer can treat these pieces of reference clock information as the same information.
[0313] Furthermore, the receiving device 60 may use a selection switch or the like to switch between a method of outputting only one of the TMCC control information and the reference clock information stored in the TLV packet as the main signal (TLV packet) and a method of outputting both. This switching in the lower layer may be selected by the demultiplexing device 62 in the upper layer. If the decoding device 61 and the demultiplexing device 62 are physically different devices, one of the methods may be selected by a register or the like. If only one of the TMCC control information and the reference clock information stored in the TLV packet is output, it may be possible to select which one to output.
[0314] Here, when the reference clock information is transmitted in the main signal (TLV packet), the reference clock information is stored in the first TLV packet of the first slot of the TLV stream in the transmission frame. Therefore, the decoding device 61 can uniquely identify the TLV packet in which the reference clock information is stored in the transmission layer.
[0315] However, since the upper layer demultiplexer 62 cannot grasp the boundary information of the transmission frame, it can determine whether the received TLV packet contains reference clock information only after analyzing the TLV packet header and the IP packet header. Therefore, in this embodiment, the lower layer decoder 61 signals (notifies) the upper layer demultiplexer 62 that the TLV packet is the head of the TLV stream in the transmission frame or that the TLV packet contains reference clock information. This allows the upper layer demultiplexer 62 to detect that the TLV packet contains reference clock information without analyzing the IP packet header.
[0316] As a method for signaling that a TLV packet is the head of a TLV stream in a transmission frame or that a TLV packet contains reference clock information, for example, there is a method of utilizing an undefined area of the packet type of the TLV packet.
[0317] For example, when the IPv4 packet contains reference clock information, the decoding device 61 rewrites the TLV type from a TLV type indicating an IPv4 packet to a TLV type indicating that the IPv4 packet contains reference clock information, and outputs the rewritten TLV packet to the demultiplexing device 62. When the IPv6 packet contains reference clock information, the decoding device 61 rewrites the TLV type from a TLV type indicating an IPv6 packet to a TLV type indicating that the IPv6 packet contains reference clock information, and outputs the rewritten TLV packet to the demultiplexing device 62.
[0318] The receiver 60 may also have a switch or the like that can select whether or not to signal from the decoder 61 to the demultiplexer 62 that the TLV packet contains reference clock information. For example, this selection may be made by the demultiplexer 62.
[0319] The above process makes it possible to obtain highly accurate reference clock information and recover the clock.
[0320] FIG. 39 is a diagram showing an operation flow in the decoding unit 11 of the receiving device 60. As shown in FIG.
[0321] First, the decoder 11 decodes the transmission frame (S191), and then determines whether the reference clock information to be processed is the reference clock information stored in the TMCC or the reference clock information stored in the main signal (S192). When the decoder 11 processes the reference clock information stored in the main signal (main signal in S192), it outputs the TLV packet to the upper layer as is (S193). On the other hand, when the decoder 11 processes the reference clock information stored in the TMCC control information (TMCC in S192), it extracts the reference clock information from the TMCC control information, corrects the extracted reference clock information, stores the corrected reference clock information in the first TLV packet of the TLV stream in the transmission frame, and outputs the TLV packet to the demultiplexer 62 (S194).
[0322] FIG. 40 is a diagram showing an operation flow in the receiving device 60 including the decoding unit 11.
[0323] First, the demultiplexer 62 (upper layer) specifies the reference clock information to be output from the decoder 61 to the demultiplexer 62 (S201). When the reference clock information to be output to the demultiplexer 62 is the reference clock information included in the main signal (main signal in S202), the decoder 61 outputs the TLV packet as is to the demultiplexer 62 (S203). On the other hand, when the reference clock information to be output to the demultiplexer 62 is the reference clock information stored in the TMCC control information (TMCC in S202), the decoder 61 extracts the reference clock information from the TMCC control information, corrects the extracted reference clock information, stores the corrected reference clock information in the first TLV packet of the TLV stream in the transmission frame, and outputs the TLV packet to the demultiplexer 62 (S204).
[0324] FIG. 41 is a diagram showing an operation flow in the demultiplexer 62 when the decoder 61 is signaling to the TLV packet type whether the TLV packet includes reference clock information.
[0325] First, the demultiplexer 62 analyzes the packet type of the TLV packet acquired from the decoder 61 (S211), and determines whether the TLV packet includes reference clock information (S212).
[0326] If the TLV packet includes the reference clock information (Yes in S212), the demultiplexer 62 acquires the reference clock information without analyzing the IP packet header (S213). This makes it possible to shorten the processing time and reduce the amount of processing.
[0327] On the other hand, if the TLV packet does not contain the reference clock information (No in S212), the demultiplexer 62 performs normal TLVDemux and IPDemux, assuming that the TLV packet does not contain the reference clock information (S214).
[0328] When the IP data flows of a broadcast service are two, an IP data flow storing MMT packets and an IP data flow storing reference clock information, receiving device 60 identifies the reference clock information by the TLV packet type, eliminating the need to analyze the IP address. This is because, by identifying the reference clock information by the TLV packet type, there is only one IP data flow storing the reference clock information and one IP data flow storing MMT packets, and therefore, there is no need to analyze the IP address to identify the IP data flow storing the MMT packets.
[0329] As described above, the decoding device 61 and the demultiplexing device 62 according to this embodiment perform the following processes.
[0330] FIG. 42 is a diagram showing an operation flow in the decoding device 61 according to the present embodiment.
[0331] First, the receiving unit 10 receives a transmission slot (S221). Also, the transmission slot is a frame for transmission that stores a plurality of slots (second transmission units) each including one or more TLV packets (first transmission units) obtained by multiplexing content, as shown in Fig. 13. Also, as described above, the TLV packet located at the head of the head slot in the transmission slot includes reference clock information.
[0332] Next, the decoder 11 obtains a plurality of TLV packets by decoding the transmission slot. The decoder 11 further generates information for identifying the TLV packet located at the head of the first slot in the transmission slot (S222).
[0333] Specifically, the decoder 11 stores information indicating that the TLV packet includes reference clock information as management information (packet type) of the TLV packet stored in the TLV packet located at the head of the first slot in the transmission slot. Alternatively, the information for identifying the TLV packet located at the head of the first slot in the transmission slot is information indicating the TLV packet located at the head of the first slot in the transmission slot among multiple TLV packets in the transmission slot.
[0334] That is, the decoder 11 generates information for identifying the TLV packet located at the head of the first slot in the transmission slots, and notifies the demultiplexer 62 of the information. Specifically, the decoder 11 adds the information to the TLV packet, or notifies the demultiplexer 62 of the information by another signal.
[0335] Next, the decoder 11 outputs a TLV packet including the above information, or a TLV packet and the above information, to a demultiplexer (S223).
[0336] FIG. 43 is a diagram showing an operation flow in the demultiplexer 62 according to the present embodiment.
[0337] First, the acquisition unit 63 acquires a transmission slot from the decoding device 61 (S231). Here, when the TLV packet includes reference clock information, each TLV packet includes management information (packet type) indicating that the TLV packet includes reference clock information.
[0338] The demultiplexing unit 64 identifies a TLV packet including reference clock information based on the management information (S232), and acquires the reference clock information from the identified TLV packet (S233). The demultiplexing unit 64 also acquires content by demultiplexing a plurality of TLV packets (S234).
[0339] As described above, in the receiving device 60 according to the present embodiment, information for identifying a TLV packet including reference clock information is notified from the decoding device 61 to the demultiplexing device 62. This allows the demultiplexing device 62 to obtain the reference clock information without analyzing the IP packet header or the like, thereby realizing a reduction in the amount of processing and an increase in speed.
[0340] In the above embodiment, each component may be realized by a dedicated hardware or by executing a software program suitable for each component. Each component may be realized by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
[0341] Each component may be a circuit. These circuits may form a single circuit as a whole, or each may be a separate circuit. Each of these circuits may be a general-purpose circuit or a dedicated circuit.
[0342] For example, in each of the above embodiments, a process executed by a specific processing unit may be executed by another processing unit. Also, the order of multiple processes may be changed, or multiple processes may be executed in parallel.
[0343] Although the receiving device (receiving method) and the transmitting device (transmitting method) according to one or more aspects have been described based on the embodiments, the present invention is not limited to these embodiments. As long as it does not deviate from the spirit of the present invention, various modifications conceived by those skilled in the art to the present embodiments and forms constructed by combining components in different embodiments may also be included within the scope of one or more aspects. [Industrial Applicability]
[0344] The transmission method of the present invention is useful as a transmission method that can reduce the processing for acquiring reference clock information on the receiving side when the MMT method is applied to a broadcasting system. [Explanation of symbols]
[0345] 10 Receiving section 11 Decoding section 12 TLV Demultiplexer 13 IP Demultiplexer 14 MMT Demultiplexer 15 Reference clock information extraction unit 15a First reference clock information extraction unit 15b second reference clock information extraction unit 16 Reference clock generation section 16a First reference clock generating unit 16b Second reference clock generating unit 17 Synchronization section 18 Decoding presentation unit 20, 40, 50, 60 Receiver 30 Transmitting device 31 Generation part 32 Transmitter 41 Extended Identification Section 42 Extension type determination section 43 Change Instructions Confirmation Section 44 Data Update Verification Section 45 Update data acquisition section 51 The first broadcasting station 52 Second Broadcasting Station 53 Third Broadcasting Station 54 Satellite Transmitting Station 61 Decryption device 62 Demultiplexer 63 Acquisition Department 64 Demultiplexer
Claims
1. The present invention includes an acquisition unit that acquires a plurality of TLV (Type Length Value) packets by decoding a transmission frame that stores a plurality of slots including one or more TLV packets obtained by multiplexing content, The TLV packet located at the head of the first slot in the transmission frame includes an IP (Internet Protocol) packet including first reference clock information, The IP packet including the first reference clock information is not header-compressed and is assigned a predetermined IP address. Receiving device.
2. The method includes the step of acquiring a plurality of TLV (Type Length Value) packets by decoding a frame for transmission storing a plurality of slots including one or more TLV packets obtained by multiplexing the content, A TLV packet located at the head of the head slot in the transmission frame includes an IP (Internet Protocol) packet including first reference clock information, The IP packet including the first reference clock information is not header-compressed and is assigned a predetermined IP address. Receiving method.
Citation Information
Patent Citations
Transmission device and receiving device of variable-length packet, and program
JP2011103568A