Transmission apparatus and transmission method
By transmitting reference clock information in a dedicated IP packet, the method addresses the inefficiencies of the MMT method, enabling faster and more accurate clock acquisition with reduced processing and jitter.
Patent Information
- Application Number
- JP2025227321
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2014-08-27
- Filing Date
- 2025-12-03
- Publication Date
- 2026-02-24
Smart Images

Figure 2026031683000001_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 for 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 required to acquire reference clock information on the receiving side. [Means for solving the problem]
[0006] A receiving device according to one embodiment of the present invention comprises a generating unit that generates a frame for transmission containing a plurality of slots each containing one or more TLV (Type Length Value) packets obtained by multiplexing content, and a transmitting unit that transmits the frame for transmission, wherein the TLV packet located at the head of the first slot in the frame for transmission contains an IP (Internet Protocol) 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 as a system, an apparatus, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, etc. Furthermore, these comprehensive or specific aspects may be realized as any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium. [Effects 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 required to acquire reference clock information on the receiving side. [Brief explanation 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. [Figure 2] FIG. 2 is a diagram showing the data structure of a TLV packet. [Figure 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. [Figure 5] FIG. 5 is a diagram showing the 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 the 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 the 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 the structure of TMCC control information in the advanced wideband satellite digital broadcasting transmission system. [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 the functional configuration of a receiving device when the TMCC control information stores information indicating that the slot header contains reference clock information. [Figure 20] FIG. 20 is a diagram showing the 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 for extracting a bit string at a specific position from an IP packet or a compressed IP packet. [Figure 22] FIG. 22 is a diagram showing the structure of the TMCC extension information. [Figure 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 syntax when an extension type is used. [Figure 25] FIG. 25 is a block diagram illustrating a functional configuration of a receiving device according to the second embodiment. [Figure 26] FIG. 26 is a diagram illustrating an operation flow of the receiving device according to the second embodiment. [Figure 27] FIG. 27 is a diagram schematically illustrating an example in which reference clock information is stored in each of a plurality of layers. [Figure 28] FIG. 28 is a diagram schematically 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 illustrating an example in which data from different broadcasting stations is stored in separate streams. [Figure 30] FIG. 30 is a diagram for explaining a method of transmitting difference information. [Figure 31] FIG. 31 is a diagram for explaining a modified example of the method of transmitting difference information. [Figure 32]FIG. 32 is a block diagram illustrating a functional configuration of a receiving device according to the third embodiment. [Figure 33] FIG. 33 is a diagram illustrating an operation flow of the receiving device according to the third embodiment. [Figure 34] FIG. 34 is a diagram showing another operation flow of the receiving device according to the third embodiment. [Figure 35] FIG. 35 is a block diagram showing the functional configuration of the transmitting device. [Figure 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. [Figure 39] FIG. 39 is a diagram illustrating an operation flow in the decoding unit according to the fourth embodiment. [Figure 40] FIG. 40 is a diagram showing an operation flow in the receiving device according to the fourth embodiment. [Figure 41] FIG. 41 is a diagram showing an operation flow in an upper layer according to the fourth embodiment. [Figure 42] FIG. 42 is a diagram showing an operation flow of the decoding device according to the fourth embodiment. [Figure 43] FIG. 43 is a diagram showing an operation flow of the demultiplexing device according to the fourth embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0010] (Findings that form the basis of the present invention) 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, such as broadcasting or communications.
[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) specified in IETF RFC 5905, and timestamps such as Presentation Time Stamp (PTS) and Decode Time Stamp (DTS) are assigned 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 its own reference clock (hereinafter also referred to as system clock) 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, while the conventional MMT method specifies storing and transmitting 32-bit short-format NTP in the MMT packet header, it does not specify transmitting long-format NTP, making it impossible for receivers to obtain accurate reference clock information.
[0014] In contrast, it is possible to define long-format NTP as control information such as messages, tables, or descriptors, and transmit the control information with an MMT packet header attached. In this case, the MMT packet is stored in an IP packet and transmitted over a broadcast or communication channel.
[0015] When transmitting MMT packets using the advanced BS transmission method specified 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 specified in the advanced BS transmission method.
[0016] However, if the 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 a lot of 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, a problem arises in that jitter occurs in the acquired reference clock information due to factors such as the CPU processing power, interrupts from other software programs, and priorities.
[0018] A decoding device according to one embodiment of the present invention comprises a receiving unit that receives a transmission frame containing a plurality of second transmission units, each of which contains one or more first transmission units obtained by multiplexing content, and a decoding unit that decodes the transmission frame to obtain the plurality of 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 the first transmission unit located at the beginning of the 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, which allows the demultiplexing device to 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.
[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 IP (Internet Protocol) packet in which the content is stored.
[0023] For example, the content may be stored in MMT (MPEG Media Transport) 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 comprises 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 second transmission unit including 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 the 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 containing the reference clock information based on the management information included in the first transmission unit, and 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 IP (Internet Protocol) packet in which the content is stored.
[0030] For example, the content may be stored in MMT (MPEG Media Transport) 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 containing 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 the plurality of 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 the first transmission unit located at the beginning of the first second transmission unit in the transmission frame includes reference clock information, and the decoding step further generates information for identifying the first transmission unit located at the beginning and outputs the information to the demultiplexing device.
[0035] This allows the decoding method to notify the demultiplexer of information for identifying the first transmission unit, including the reference clock information, and the demultiplexer can acquire 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 second transmission unit including 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, if the first transmission unit includes reference clock information, management information indicating that the first transmission unit includes the 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 containing the reference clock information based on the management information included in the first transmission unit. Therefore, the demultiplexing method can acquire 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 as a system, an apparatus, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, etc. Furthermore, these comprehensive or specific aspects may be realized as any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium.
[0039] Hereinafter, the embodiments 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 placement and connection configurations, steps, and step order 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 the independent claims that represent the highest concepts 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 for transmission 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 MMT packet headers are added to convert it into MMT packets.
[0043] On the other hand, in the MMT method, control information such as MMT messages are also given an MMT packet header to convert them into MMT packets. The MMT packet header has a field for storing NTP in 32-bit short format, and this field can be used for QoS control of communication lines, etc.
[0044] The MMT packetized data is encapsulated in an IP packet with a UDP header or an IP header. In this case, if an IP data flow is a collection 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, the multiple IP packets included in one IP data flow have redundant headers. 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, a 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. Examples of transmission control signals include an AMT (Address Map Table) and an NIT (Network Information Table). In a TLV packet, a data length (in bytes) is indicated using a 16-bit field, followed by the data value. The data type is preceded by one byte of header information (not shown in Fig. 2), so a TLV packet has a total header area of four bytes.
[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 included in each slot.
[0048] Next, the configuration of a receiving device when transmitting MMT packets using an advanced BS transmission system 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 depending on 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 receiving unit 10 receives the line-coded data.
[0051] The decoder 11 decodes the channel-coded data received by the receiver 10, performs error correction, etc., 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 demultiplexing 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 processing 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 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] [Method of storing 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 in an MMT packet as control information, an identifier indicating that the descriptor, table, or message indicates the reference clock information is included in the control information. The control information is then 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 data 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 in the extended field, which indicates the data type of the data to be stored in the extended field, and store information indicating that it is reference clock information (e.g., 64-bit long format NTP) in the extended field, and then 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 it 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 used in combination with an extended field.
[0065] 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 at another position passes a predetermined position.
[0067] When reference clock information is stored as control information in an MMT packet, 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 specific MMT packet. Specifically, for example, at least one piece of reference clock information is stored in the header extension field of an MMT packet at 100 ms intervals.
[0069] When reference clock information is stored in an 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 in advance as a fixed value. 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 (reference clock information acquisition flow) when reference clock information is stored in an MMT packet will be described.
[0071] First, the flow of acquiring reference clock information by receiving device 20 when reference clock information is stored in an extension field of an MMT packet header will be described. Fig. 4 is a block diagram showing the functional configuration of receiving device 20 when reference clock information is stored in an extension field of an MMT packet header. Fig. 5 is a diagram showing the flow of acquiring reference clock information by receiving device 20 when reference clock information is stored in an extension field of an 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 channel-encoded data received by the receiver 10 (S101), and extracts the TLV packet from the transmission slot (S102).
[0074] Next, the TLV demultiplexer 12 demultiplexes the extracted TLV packets and extracts the IP packets (S103), at which time the headers of the compressed IP packets are reproduced.
[0075] Next, the IP demultiplexer 13 demultiplexes 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 content.
[0078] Next, a description will be given of the flow of acquiring reference clock information in receiving device 20 when the reference clock information is stored in the control information. Fig. 6 is a block diagram showing the functional configuration of receiving device 20 when the reference clock information is stored in the control information. Fig. 7 is a diagram showing the flow of acquiring reference clock information in 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 arranged after the MMT demultiplexer 14.
[0080] In the flow of FIG. 7, the processing of steps S111 to S114 is the same as 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 with 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] 5 and 7, when reference clock information is stored in an MMT packet, to obtain the reference clock information on the receiving side, receiving device 20 extracts the TLV packet from the transmission slot and extracts the IP packet from the TLV packet. Furthermore, receiving device 20 extracts the 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 a lot of processing is required to obtain the reference clock information, and it takes a long time to obtain it.
[0083] Therefore, 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 lower than the MMT layer, a lower protocol, or a lower multiplexing method.
[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. In addition, Fig. 8 also shows a synchronization unit 17 and a decoding and presentation unit 18.
[0086] As shown in Figure 2, the TLV packet is configured with an 8-bit data type, a 16-bit data length, and 8*N bits of data. As mentioned above, the data type is preceded by a 1-byte header not shown in Figure 2. Specifically, the data type is specified as, for example, 0x01: IPv4 packet, 0x03: header-compressed IP packet, etc.
[0087] To store new data in a TLV packet, a data type is defined using an undefined data type field. To indicate that the TLV packet stores reference clock information, 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, data types indicating short format NTP, long format NTP, and PCR (Program Clock Reference) may be defined separately. 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] If the data length is uniquely determined by the data type, the reference clock information extraction unit 15 may acquire the reference clock information without analyzing the data length field. For example, if the data type is indicated as 64-bit long low-mask NTP, the reference clock information extraction unit 15 may extract bits from byte 4+bit 1 to byte 4+bit 64. Alternatively, the reference clock information extraction unit 15 may extract only desired bits from the 64-bit data.
[0091] Next, an operation flow (reference clock information acquisition flow) of receiving device 20 when reference clock information is stored in a TLV packet will be described with reference to Fig. 10. Fig. 10 is a diagram showing the reference clock information acquisition flow of receiving device 20 when reference clock information is stored in a TLV packet.
[0092] In the flow of FIG. 10, first, the decoding unit 11 decodes the channel-encoded data received by the receiving unit 10 (S121), and extracts the TLV packet from the transmission slot (S122).
[0093] Next, 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 reference clock (Yes in S124), reference clock information extraction unit 15 extracts reference clock information from the data field of the TLV packet (S125). Then, 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 a flow not shown, IP demultiplexer 13 extracts IP packets according to the data type. Then, IP DEMUX processing and MMT DEMUX processing are performed on the extracted IP packets to extract MMT packets. Furthermore, synchronizer 17 outputs the video data included in the extracted MMT packets to decoding / presenting unit 18 at a timing when the timestamp of the video data matches the reference clock generated in step S126, and decoding / 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 lower protocol than the MMT layer, it is possible to reduce the processing and time required to extract the reference clock information in receiving device 20.
[0096] Furthermore, 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, which 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 reference clock information will be described.
[0098] In the flow of Figure 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 does not have a data length field is stored.
[0099] 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 identifies the location where the reference clock information is added.
[0100] For example, FIG. 11 shows 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 the IP packet is one with reference clock information. When the data type indicates that the IP packet is one with reference clock information, the receiving device 20 (reference clock information extraction unit 15) can acquire 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. In this case, the data length may specify the length of data including the length of reference clock information, or may specify the length excluding 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) acquires 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 excluding the length of reference clock information, the receiving device 20 (reference clock information extraction unit 15) acquires data of the length specified by 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 the conventional data type, and an identifier indicating that the TLV packet is a TLV packet with reference clock information is stored, for example, in the slot header of the transmission slot or in 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 Figure 13, a transmission slot is made up of multiple slots (120 slots, Slot #1 to Slot #120, in the example of Figure 13). The number of bits included in each slot is a fixed number 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 Figure 13, the TLV packet is of variable length.
[0103] As shown in Figure 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 mentioned above, transmission slots consist of 120 slots per frame, and modulation methods are assigned to slots in units of 5 slots. Furthermore, a maximum of 16 streams can be transmitted within one frame. Note that the multiple streams included in one transmission slot may, for example, transmit different content (or content providers) from each other. Furthermore, a stream consists of one or more slots, and one slot never spans 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, 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 for all information, such as the information that can identify the location of the TLV packet with reference clock information, the type of reference clock information, and the data length, to be stored in the slot header. It is sufficient if the information that can identify and refer to the TLV packet with reference clock information is indicated.
[0106] For example, if the reference clock information is a 64-bit long format NTP, and one TLV packet with reference clock information can be stored in one slot, 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] 15, a flag (denoted as "F" in the figure) indicating whether the slot contains reference clock information is stored in an undefined area of the slot header. Based on 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 TMCC control information in the transmission system of advanced wideband satellite digital broadcasting.
[0109] The information for identifying and referencing the TLV packet with reference clock information may be stored in the extended information in the TMCC control information shown in Figure 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. Figure 17 is a diagram showing the stream type / relative stream information of the TMCC control information.
[0110] As shown in Figure 17, in the stream type / relative stream information, the stream type for each of the 16 streams is indicated by 8 bits. In other words, a maximum of 16 streams (16 types) can be transmitted using one frame of transmission slots. For example, the stream type for an MPEG2-TS stream is "00000000", and the stream type for a TLV stream is "00000010". However, for other streams, no type is currently assigned or is undefined.
[0111] Therefore, the stream type of a TLV stream with a reference clock is defined as, for example, "00000100," and when the relative stream is a TLV stream with a reference clock, "00000100" is stored in the stream type / relative stream information of the TMCC control information. Here, in a stream whose stream type is "00000100," a TLV packet containing 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] It is possible that a stream type including a download type TLV packet and a stream type including a stream type TLV packet of video, audio, etc. 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 when reproducing a download type TLV packet.
[0114] Furthermore, 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] Furthermore, an area for storing reference clock information 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] Furthermore, the reference clock information may be stored in a predetermined slot, or information indicating that the reference clock information is included may be stored in the slot header. 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 reference clock information stored in the IP packet may be included in the first TLV packet in this slot. Furthermore, 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 reference clock information stored in the IP packet may be included in the first TLV packet in this slot.
[0117] The TMCC control information may also store information for identifying and referencing a slot header including reference clock information. Note that the method for storing information for identifying and referencing a slot header including reference clock information in the TMCC control information is similar to the method for storing information for identifying and referencing a TLV packet with reference clock information described above, and therefore a description thereof will be 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 reference clock information is included may be stored in the TMCC control information. Fig. 19 is a block diagram showing the functional configuration of receiving device 20 when information indicating that reference clock information is included in the slot header is stored in the TMCC control information. Fig. 20 shows the flow of acquiring reference clock information when information indicating that reference clock information is included in the slot header is stored in the TMCC control information.
[0120] As shown in Figure 19, in a receiving device 20 where 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 the reference clock signal from the transmission slot output from the decoding unit 11.
[0121] 20, the decoding unit 11 decodes the transmission path encoded data (S131), analyzes the TMCC control information (S132), and determines whether or not there is reference clock information in the slot header of the transmission slot (S133). If there is reference clock information in the slot header (Yes in S133), the reference clock information extraction unit 15 extracts the reference clock information from the slot header (S134), and the reference clock generation unit 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 acquire the reference clock information at the layer of the transmission slot, and therefore can acquire the reference clock information faster than when it is stored in a TLV packet.
[0123] As described above, by storing reference clock information in TLV packets or transmission slots, the processing required to obtain the reference clock information in the receiving device 20 can be reduced, and the time required to obtain the reference clock information can be shortened.
[0124] Furthermore, by storing the reference clock information in the physical layer in this way, it is possible to easily obtain and reproduce the reference clock information using hardware, which allows for more accurate clock reproduction than obtaining and reproducing the reference clock information using software.
[0125] Furthermore, in summary, in a system in which multiple layers (protocols) including an IP layer exist, the transmission method according to the first embodiment 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. This configuration makes it easy for receiving device 20 to process the reference clock information by hardware.
[0126] Based on the same concept, it is also possible to store reference clock information in IP packets without storing it in MMT packets. Even in this case, the processing required to obtain the reference clock information can be reduced compared to when the reference clock information is stored in MMT packets.
[0127] [Reference clock information transmission period] The following provides additional information about 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. Alternatively, instead of the time when the first bit is sent, another predetermined time may be stored as the reference clock information.
[0129] The TLV packet containing the reference clock information is transmitted at a predetermined interval. In other words, the TLV packet containing 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] Furthermore, TLV packets containing reference clock information may be placed at predetermined intervals in predetermined locations in transmission slots of the advanced BS transmission system. Alternatively, a TLV packet containing reference clock information may be stored once per 5-slot unit, which is the slot allocation unit for TLV packets, and the reference clock information may be stored in the first TLV packet of the first slot of the 5-slot unit. In other words, a TLV packet containing reference clock information may be placed at the beginning of the first slot in the transmission slots (i.e., immediately after the slot header).
[0131] Furthermore, TLV packets containing reference clock information may be arranged at predetermined intervals in predetermined locations in transmission slots of the advanced wideband digital satellite broadcasting transmission method. For example, the reference clock information may be stored in the first TLV packet of the first slot once every five slots, which is the slot allocation unit. In other words, the reference clock information may be included in the TLV packet located at the head of the first slot of each stream included in the transmission slot. Furthermore, the reference clock information may be stored in the first slot of 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] [Method for quickly obtaining 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] This section describes a method for storing reference clock information in an upper layer such as an MMT packet, and storing the MMT packet containing the reference clock information in an IP packet.The method described below defines a protocol for storing IP packets containing reference clock information in TLV packets, allowing a lower layer such as a TLV packet to directly reference the MMT packet, which is the upper 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. Then, on the transmitting side, the MMT packet including the reference clock information is stored in a dedicated IP data flow, and is assigned 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 transmission path coded data generated in this manner, the TLV demultiplexer 12 obtains the predetermined IP data flow, thereby extracting the IP packet containing the reference clock information.
[0137] When IP packets are header-compressed, an identifier indicating that the IP packets contain reference clock information is added to a context identifier indicating 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 IP packets containing reference clock information by referring to the context identifier in the compressed IP packet header.
[0138] Also, the IP packets containing the reference clock information may be specified as not being header-compressed or as being always header-compressed. The IP packets containing the reference clock information may be specified as being assigned a predetermined 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 also 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 location, 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 kept constant, for example, by making the packet header length a fixed length.
[0141] In this case, 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 identified in the lower layer. For example, if there are two types of information, A and B, for the length up to the reference clock information, the receiving device 20 can identify the position of the reference clock information by signaling whether it is A or B in the lower layer. Alternatively, the transmitting side may store position information of the reference clock information that can directly reference the reference clock information in the upper layer in the lower layer, and the receiving device 20 may reference it from the lower layer based on the position information.
[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 the TLV 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 number of bytes 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 IP packet and compressed IP packet. Therefore, after determining the data type of the TLV, the receiving device 20 can obtain the reference clock information by immediately extracting information of a specific length from a position offset by a fixed length byte. Note that this extraction may be performed from a position offset by a fixed length from a specific field of the TLV, rather than from a position offset by a fixed length from the TLV packet header.
[0146] The above method is merely an example, and other protocols or identifiers may be defined to allow the reference clock information of the upper layer to be acquired from the lower layer. For example, an identifier indicating whether the reference clock information is included in the IP packet may be stored in a field other than the TLV data type.
[0147] Furthermore, 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 it is not possible to determine the IP data flow containing the reference clock information from the IP data flow identification information, the MMT packet containing the reference clock information may be identified based on the unique identification information (packet ID) assigned 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] It is also possible that the reference clock information included in the MMT packet is not stored in a predetermined location, or that the location where the reference clock information included in the MMT packet is stored cannot be identified. In such cases, receiving device 20 identifies the MMT packet that includes the reference clock information using the above method, and identifies and extracts the location of the reference clock information based on the MMT packet header information.
[0150] Although the above description has been given taking an example in which MMT packets are stored in IP packets, the data stored in the IP packets does not have to be MMT packets and may be, for example, data having another data structure. That is, the reference clock information may be included in the IP packets in a data structure different from that of the MMT packets. 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 is assigned identification information indicating that the data includes reference clock information or that the IP data flow includes reference clock information.
[0151] The receiving device 20 identifies the data as including reference clock information or as an IP data flow including data including reference clock information, and extracts the reference clock information if it contains reference clock information. Furthermore, if the reference clock information is stored at a specific position in the data, the receiving device 20 can extract the reference clock information contained in the data by referencing the specific position from the packet configuration of the lower layer.
[0152] In the above example, to extract reference clock information from IP packets or compressed IP packets, receiving device 20 extracts the reference clock information from different fixed-length offset positions depending on whether the IP packet is an IP packet or a compressed IP packet. However, if it is determined that IP packets containing reference clock information are not header-compressed, or that all IP packets containing reference clock information are header-compressed, the determination of whether the IP packet is an IP packet or a compressed IP packet in receiving device 20 can be omitted. Alternatively, the determination of whether the compressed IP packet contains reference clock information may be made after the header of the compressed IP packet is restored.
[0153] A receiving method for extracting a bit string at a specific position from an IP packet or a compressed IP packet will be described below with reference to a flowchart. Figure 21 shows the flow for extracting a bit string at a specific position from an IP packet or a compressed IP packet. The configuration of receiving device 20 in this case is the same as the block diagram shown in Figure 8.
[0154] In the flow of FIG. 21, first, the decoding unit 11 decodes the line-encoded data received by the receiving unit 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 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 contained 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 contained 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 the reference clock information extraction unit 15 acquires the 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 the reference clock information extraction unit 15 acquires the 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] Note that the fixed length N bytes and M bytes will be different values depending on whether the IP packet is IPv4 or IPv6, since the data structure of the IP packet header differs.
[0160] While normal MMT packets containing audio, video, and control signals are demultiplexed in the normal steps, MMT packets containing reference clock information are demultiplexed all at once from the lower layer to the upper layer. This allows the lower layer to acquire the reference clock information even if it is stored in the upper layer. In other words, this reduces the processing required to acquire the reference clock information, shortens the time required to acquire the reference clock information, and facilitates hardware implementation.
[0161] (Embodiment 2) Currently, ARIB (Association of Radio Industries and Businesses) 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 simply referred to 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 transmitting data payloads such as text and images using TMCC control information spanning several frames, which poses a problem of limiting the ways in which the extension area of the TMCC control information can be used.
[0163] In particular, control information (control signals) whose values do not change from frame to frame, such as conventional 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 at the same time as payload data spanning several frames.
[0164] Therefore, in the second embodiment, a method will be described in which the extension field of the TMCC control information is divided according to the type of information or data stored in the extension field of the TMCC control information, thereby enabling data with different reception processes to be simultaneously stored in the extension field of the TMCC control information. By providing extensibility to the use of the extension field in this way, the flexibility of extension can be improved. 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 allows payload data spanning several frames and payload data of only one frame to be mixed in the extension area.Even if payload data spanning several frames cannot be received, payload data of only one frame can be obtained first, which makes it possible to obtain and present urgent information more quickly.
[0166] [TMCC extended information configuration] The structure of the TMCC extended information will be described below. The basic structure of the TMCC control information is shown in Fig. 16, and the types of control information stored in the TMCC control information are broadly divided into the following two types.
[0167] One type is control information related to frames, whose values do not change for each frame. The minimum update interval for such control information is in units of frames, and when a value is changed, the changed information is sent two frames in advance. When a change occurs, notification is made 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 of control information is control information related to frames, whose values change for each frame. Since 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 span.
[0171] The page number is made up of 16 bits and indicates which page of the TMCC control information currently being transmitted is. The additional information type is made up of 8 bits and specifies the type of additional information. Specific examples of additional information types include text (subtitles), graphics, and audio.
[0172] In such a configuration, the entire extension area is used as the payload, and control information such as conventional TMCC control information cannot be stored in the extension area.
[0173] [How to expand the TMCC extension area] Here, a method will be described for dividing the TMCC extension area according to the type of information or data stored in the TMCC extension area, thereby enabling data with different reception processing to be stored in the TMCC extension area.
[0174] The types of information and data stored in the TMCC extension area (hereinafter referred to as extension types) are classified, for example, as follows:
[0175] Type A: This is control information related to the frame, and the 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 in advance. If there is a change, the change is notified by incrementing the 8-bit change instruction.
[0176] Type B: This is control information about the frame, and the value changes for each frame. This information changes value every frame, and no change instructions are issued.
[0177] Type C: Used as a payload (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 change instruction field may be specified independently in the extended area.
[0178] Fig. 23 is a diagram showing an example of the 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 the syntax when the extension types are used.
[0179] In the example of Fig. 23, only the above three types are defined as extension types. Also, as shown in Fig. 24(a), the data length for each of the three types of extension types is stored, followed by extension data of the length indicated in the data length for each extension type. In the receiving device, 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 a change instruction is given, and when there is a change in 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] Furthermore, 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 the conventional extension method, and the receiving device operates in accordance with the acquisition of Type C data in the conventional extension method.
[0183] In the above example, the details of the data structure for each extension type must be specified separately. If specified separately, identifiers similar to the additional information type and target service specification method in the Type C data shown in (b) of Figure 22 may be specified for other types. Note that the additional information type may be defined using a common table, or the extension identification and additional information type may be merged.
[0184] Furthermore, 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] Furthermore, 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 for the number of extension areas is stored.
[0187] This type of structure can accommodate future extension types. Furthermore, since this type of structure can store multiple pieces of data of the same extension type, it is not necessary to determine the details of the data structure for each extension type in advance. Furthermore, even when this type of structure 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 Figure 24 (b), the number of extension areas, extension type, and extension area length may be the same types as Type A. In other words, these pieces of information may be defined as information that complies with the change instruction. In this way, by storing data that complies with the change instruction consecutively, it becomes easier to determine whether or not a change has been made.
[0189] In preparation for future extensions, an undefined area may be provided for the extension types. 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] In the case of emergency signals, the change instruction is issued in the same way as Type A, but instead of receiving information 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 accompanied by 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 explained. 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 explanation, 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 from frame to 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 determines whether or not the data has been updated (S164). If it is determined that a change instruction has been issued 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 determination in step S164 is not as described above (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 performs 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 payload extension method reception method (S166).
[0201] Furthermore, 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 according to 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 that 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 into extension types, and the extension data is stored in the TMCC extension field. In this 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 processes 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 with payload data spanning only one frame in the TMCC extension area. Therefore, even if the receiving device 40 cannot receive payload data spanning several frames, it can first obtain payload data spanning only one frame. This allows the receiving device 40 to obtain and present highly urgent information more quickly.
[0207] (Embodiment 3) In the third embodiment, a method for 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 schematically 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 the first layer and the second reference clock information in the 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 (for example, a transmission frame), information indicating that multiple pieces of reference clock information are stored in the transmission signal.
[0213] Specifically, the transmitting device stores, in at least one layer among the layers that contain reference clock information, information indicating that reference clock information is also stored in layers other than the layer in question.
[0214] Furthermore, the transmitting device may indicate that multiple 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 reference clock information is included in an upper layer (first layer). In this case, the receiving device can determine whether to acquire reference clock information for the lower layer and recover the reference clock, taking into account whether reference clock information is included in the upper layer when processing the lower layer.
[0215] As a second example, the transmitting device can include information about the first reference clock information and the second reference clock information in the transmitted signal.
[0216] Specifically, the transmitting device stores, in each layer, information indicating the type of reference clock information included in that layer, or stores, in each layer, information indicating the type of reference clock information included in layers other than the layer in question.
[0217] There are various types of reference clock information, such as 32-bit NTP, 64-bit NTP, and 24-bit SMPTE time code, and the 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] If it is known in advance that a predetermined 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 the relative accuracy of the reference clock information, for example, information indicating whether 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 the 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.Furthermore, 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, or the difference in processing power in the transmitting process and the receiving process.
[0223] Furthermore, the information indicating the relative relationship may be information indicating a difference in accuracy between the reference clock information. For example, if 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 is the same, or may be stored as information indicating the relative relationship only when the accuracy is different. Note that if the relative relationship in accuracy is known in advance, such information indicating the relative relationship in accuracy may not be included.
[0224] If such information indicating the relative accuracy is transmitted, the receiving device can perform control such that, if 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 recover the second reference clock information, but acquires and recovers the first reference clock information, and performs synchronous recovery based on the first reference clock information. Alternatively, if 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 recover the first reference clock information, but acquires and recovers the second reference clock information, and performs synchronous recovery 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 between 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 also be included.
[0226] When each piece of reference clock information is generated based on the same reference clock, there is usually a difference in the timing at which the first and second reference clock information is acquired in the receiving device, which means that 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, if 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 fixed delay Δ_B in the second layer, which is the lower layer.
[0230] Furthermore, when each piece of 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 being used as a base. In this case, the second reference clock information may be used as a base.
[0231] As a fifth example, when multiple pieces of reference clock information are stored, the transmitting device can include in the transmission signal information indicating whether to use reference clock information stored in different layers. For example, the transmitting device can include in the transmission signal information instructing that second reference clock information stored in the second layer be used in the first layer. In this case, the receiving device can determine to generate second reference clock information and output it to the first layer based on the information.
[0232] The information described above is stored in at least one or more layers. For example, such information may be stored only in the first layer, or only in the second layer. Also, such information may be stored in both layers. Alternatively, information regarding the reference clock information in each layer may be stored in each layer, and only information indicating the relative relationship may be stored in at least one or more layers.
[0233] It is desirable that the information indicating the relative relationship be 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 on the lower layer (second layer), the receiving device can obtain information on the reference clock information of the higher layer (first layer), thereby enabling faster processing.
[0234] The first layer and the second layer may be combined in any combination. For example, the first layer and the second layer may be combined with an MMT layer and an IP layer, an MMT layer and a transmission layer, or an IP layer and a transmission layer. In the case of MMT over TS, the first layer and the second layer may be combined with an MMT and a TS.
[0235] The above information is stored in the control signals of each layer. For example, in the MMT system, it is stored in descriptors, tables, messages, and packet header information, and in the MPEG2-TS system, it is stored in descriptors, tables, sections, and header information. It may also be stored in TMCC and slot headers in the transmission layer. When the transmission system is DVB, it is stored in 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 precision. 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 reference clock information in three or more layers. Furthermore, the reference clock information may be stored in different fields in a data structure within the same layer. Another layer may exist between the first layer and the second layer.
[0238] The reference clock information may be, for example, NTP, time code, or PTP, but may also be other reference clock information. The reference clock information may also be other time-related information (for example, a time offset table (TOT) and a time date table (TDT)).
[0239] Fig. 28 is a diagram illustrating an example in which multiple 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: first reference clock information, second reference clock information, and 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 precision 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 will be stored separately in streams. Fig. 29 is a block diagram for explaining an example in which data from different broadcasting stations is stored separately in 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 fiber line. The satellite transmitting station 54 multiplexes the streams of each broadcast station onto the same transmission channel of the advanced BS transmission system. 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 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 NTP_base, the first reference clock information at the satellite transmitting station is expressed as NTP_base+Δ1, the second reference clock information is expressed as NTP_base+Δ2, and the third reference clock information is expressed 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 may also transmit difference information (Δ1, Δ2, Δ3) between each piece of 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, by expressing the base reference clock information by the most significant 16 bits of 64-bit reference clock information and expressing the difference information by the remaining 48 bits, the amount of information (size) when transmitting the reference clock information can be reduced.
[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 pieces of reference clock information. Alternatively, the base reference clock information (reference value) may be any value smaller than the value of the earliest reference clock information.
[0248] Furthermore, as shown in Fig. 31, the base reference clock information and the difference information may be transmitted at different frequencies, such as transmitting the base reference clock information every frame and transmitting the difference information every three frames in sequence. Fig. 31 is a diagram for explaining a modified example of a method for transmitting difference information. The transmission method shown in Fig. 31 makes it possible to 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, below, an example will be described in which reference clock information is stored in only one of the IP layer and 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 and presenting unit 18. The receiving device 50 also includes a first reference clock information extraction unit 15a, a second reference clock information extraction unit 15b, a first reference clock generation unit 16a, and a second reference clock generation unit 16b.
[0252] The control information of the transmission layer (such as a slot header and TMCC, here TMCC) stores a flag indicating whether the IP layer has reference clock information. Also, the control information of the transmission layer stores reference clock information when the IP layer does not have reference clock information.
[0253] In addition, the control information of the transmission layer stores a flag indicating whether the reference clock information acquired in the transmission layer is necessary for processing in the upper layer when there is no reference clock information in the IP layer, or a flag indicating whether the reproduced reference clock information is necessary for processing in 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, and this field can be utilized.
[0255] For example, if there is reference clock information in the IP layer and there is a predetermined value (e.g., ALL1) in the reference clock information field, 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 reference clock information field, or determining that there is reference clock information in the IP layer when ALL1 is indicated a predetermined number of times or more consecutively.
[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 makes a determination based on the flags (S172). If it is determined that there is no reference clock information in the IP layer (the reference clock information is 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 determines whether the reference clock recovered in the transmission layer is necessary for the processing of the upper layer (S174). If it is determined 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 determined that the reference clock recovered in the transmission layer is necessary for the processing of the upper layer (No in S174), the processing ends.
[0258] On the other hand, if it is determined that the reference clock information exists in the IP layer (the reference clock information does not exist in the transmission layer) (Yes in S172), the first reference clock information extractor 15a and the first reference clock generator 16a do not acquire 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 recovered reference clock, reference clock information may be passed to the higher layer, and the reference clock may be recovered in the higher layer. Furthermore, new reference clock information may be generated based on the reference clock recovered 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 recovered reference clock as is, or storing or converting the acquired reference clock information or newly generated reference clock information into a data structure to be output to the upper layer and outputting it.
[0262] [Another example of the 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. 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 if multiple pieces of reference clock information are stored, relative information on the accuracy of the reference clock information is stored.
[0264] The decoding unit 11 analyzes the TMCC (S181) and makes 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 decoding unit 11 acquires the reference clock information and recovers the reference clock in the transmission layer (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 decoding unit 11 determines which of the reference clock information of the transmission layer and the reference clock information of the IP layer has higher accuracy (S183). If it is determined that the reference clock information of the IP layer has higher accuracy than the reference clock information of the transmission layer (Yes in S183), the reference clock information is acquired in the IP layer and the reference clock is recovered (S184). If it is determined that the reference clock information of the IP layer has lower accuracy than the reference clock information of the transmission layer (No in S183), the reference clock information is acquired in the transmission layer and the reference clock is recovered (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 reference clock information with high accuracy, or may select reference clock information that can be obtained more quickly.
[0267] Furthermore, when reference clock information is transmitted on multiple layers, the transmitting side may store information indicating that reference clock information is transmitted on multiple layers. Furthermore, information indicating that reference clock information is transmitted on multiple layers, or information related to the layer or protocol on which the reference clock information is transmitted, may be transmitted in a lower layer. Furthermore, information indicating the relationship between reference clock information stored in different layers may be transmitted.
[0268] This allows the receiving device 50 to determine that the higher layer contains reference clock information during the DEMUX process 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 simultaneously extract reference clock information contained in a higher layer from the lower layer, and may generate a reference clock using at least one or more pieces of extracted reference clock information.
[0270] It should be noted that multiple pieces of reference clock information may be transmitted through multiple transmission paths. In this case, it may be possible to transmit information relating to the fact that multiple pieces of reference clock information are transmitted through multiple transmission paths, or information relating to the transmission paths through which the reference clock information is transmitted.
[0271] (Other embodiments) Although the embodiments have been described above, the present invention is not limited to the above-described embodiments.
[0272] For example, it is conceivable 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 will also transmit information that allows the receiving device to regenerate the 32-bit short format NTP using the highly accurate reference clock information. Such information may be, for example, time information indicating the relative relationship between the clocks, and may be transmitted using CRI_descriptor() or the like.
[0273] If the receiving device can reproduce the 32-bit short format NTP, the NTP field included in the conventional MMT packet header is unnecessary. Therefore, other information may be stored in the NTP field, or header compression may be performed by deleting the NTP field. If header compression is performed, information indicating that the NTP field has been deleted is transmitted. If the NTP field has been deleted, the receiving device generates a reference clock using other reference clock information and reproduces the 32-bit short format NTP.
[0274] Furthermore, when MMT packets are transmitted over a communication transmission path, the receiving device may use 32-bit short format NTP for QoS control and may not use reference clock information. Therefore, reference clock information may not be transmitted over the communication transmission path. Furthermore, if the end-to-end delay of the communication transmission path is within a certain range, the reference clock information may be used for clock recovery.
[0275] Although the first embodiment has been described using the MMT / IP / TLV method as an example, a method other than the MMT method may be used as the multiplexing method. For example, the present invention can also 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] In addition to the TLV method, other methods for storing IP packets in broadcasting include the Generic Stream Encapsulation (GSE) method and the IPoverTS method using Unidirectional Lightweight 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 through hardware implementation.
[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 by 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. Note that NTP does not necessarily mean the NTP value of 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 using the method described above. 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. The components of the transmission device 30 are specifically realized by a microcomputer, a processor, a dedicated circuit, or the like.
[0282] The transmitting device 30 is specifically a broadcast server, and is an example of the "transmitting 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 generation unit 31 includes first reference clock information such as NTP indicating the time for playing back 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 has not been header-compressed, and the first reference clock information is stored in the target IP packet in a data structure different from that of the MMT packet, for example.
[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 is composed of an encoding unit that encodes broadcast content, an MMT multiplexer, an IP multiplexer, a TLV multiplexer, etc. Note that a TLV packet is an example of a first transmission unit, a slot is an example of a second transmission unit, and a transmission slot is an example of a transmission frame.
[0287] The transmitting unit 32 transmits the transmission slot (the channel 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 transmitting device 30 can simplify the process by which the receiving device acquires the reference clock information, thereby reducing the time it takes for the receiving device to acquire the reference clock information.
[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] (Fourth embodiment) In this embodiment, a method for passing reference clock information to an upper layer in a receiving device and an interface therefor will be described.
[0291] 37 is a block diagram showing the 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 also 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 the line-coded data. The decoding unit 11 extracts TLV packets by decoding the line-coded data received by the receiving unit 10, and outputs the TLV packets to a demultiplexing device 62.
[0293] The demultiplexing device 62 includes an acquiring unit 63 and a demultiplexing unit 64. The acquiring unit 63 acquires the TLV packets output from the decoding device 61. The demultiplexing unit 64 demultiplexes the TLV packets. For example, the demultiplexing unit 64 includes processing units other than the receiving unit 10 and the decoding unit 11 among the processing units shown in FIG. 32 . Note that the demultiplexing unit 64 may also include processing units other than the receiving unit 10 and the decoding unit 11 among the processing units included in the receiving devices described in other embodiments. Furthermore, the demultiplexing unit 64 does not need to include all of these processing units, and may include only some of them. Furthermore, the demultiplexing device 62 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 explained in detail below.
[0295] Below, 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 Broadband Satellite Digital Broadcasting") and the transmission and reception of a reference clock based on a data structure.
[0296] Although the above standard specifies a method for storing reference clock information in TMCC, it does not specify the specific time information to be transmitted or the operation of the receiving device, making it impossible for the receiving device to 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 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 from the generation of the reference clock information to the sending out of the transmission frames due to error correction coding, interleaving processing, transmission frame sending timing, etc. In Figure 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 in this explanation, it is assumed 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, which causes a delay of one frame or more in the reception timing of the reference clock information.
[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 specification for the timing at which the reference clock information acquired by the receiving device is stored 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 the upper 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 N×TF corrected time 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 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 stored in the TLV packet in the TMCC control information. Alternatively, the transmitting device stores a time that is 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 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 of extracting the reference clock information from the TMCC control information and transmitting the corrected reference clock information to the upper layer, the receiving device may replace the reference clock information in the TLV packet and output it.
[0312] Furthermore, 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 to be 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 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 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] One method of 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 is to utilize an undefined area of the packet type of the TLV packet.
[0317] For example, if 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 packet is an IPv4 packet containing reference clock information, and outputs the rewritten TLV packet to the demultiplexing device 62. On the other hand, if 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 packet is an IPv6 packet containing 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 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 processing makes it possible to obtain highly accurate reference clock information and recover the clock.
[0320] FIG. 39 is a diagram showing the operation flow in the decoding unit 11 of the receiving device 60.
[0321] First, the decoding unit 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 decoding unit 11 processes the reference clock information stored in the main signal (main signal at S192), it outputs the TLV packet as is to the upper layer (S193). On the other hand, when the decoding unit 11 processes the reference clock information stored in the TMCC control information (TMCC at 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). If 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, if 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 the operation flow in the demultiplexer 62 when the decoder 61 signals 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 contains reference clock information (Yes in S212), the demultiplexer 62 acquires the reference clock information without analyzing the IP packet header (S213), thereby reducing the processing time and the amount of processing.
[0327] On the other hand, if the TLV packet does not contain reference clock information (No in S212), the demultiplexer 62 determines that the TLV packet does not contain reference clock information and performs normal TLVDemux and IPDemux (S214).
[0328] If the IP data flows of a broadcast service consist of two IP data flows, one storing MMT packets and the other storing reference clock information, receiving device 60 can identify the reference clock information by the TLV packet type, thereby 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 demultiplexing device 62 according to this embodiment perform the following processing.
[0330] FIG. 42 is a diagram showing an operation flow in the decoding device 61 according to this embodiment.
[0331] First, the receiving unit 10 receives a transmission slot (S221). A 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. As described above, the TLV packet located at the head of the first slot in the transmission slot includes reference clock information.
[0332] Next, the decoder 11 obtains a plurality of TLV packets by decoding the transmission slots. The decoder 11 also generates information for identifying the TLV packet located at the head of the first slot in the transmission slots (S222).
[0333] Specifically, the decoding unit 11 stores information indicating that the TLV packet contains 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 beginning 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 the TLV packet including the above information, or the TLV packet and the above information, to the demultiplexer (S223).
[0336] FIG. 43 is a diagram showing an operation flow in the demultiplexer 62 according to this embodiment.
[0337] First, the acquisition unit 63 acquires a transmission slot from the decoding device 61 (S231). Here, if 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 multiple TLV packets (S234).
[0339] As described above, in the receiving device 60 according to this 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-described embodiments, each component may be configured with dedicated hardware, or may be realized by executing a software program suitable for each component. Each component may also be realized by a program execution unit such as a CPU or processor reading and executing a software program recorded on a recording medium such as a hard disk or 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, the order of multiple processes may be changed, or multiple processes may be executed in parallel.
[0343] While the receiving device (receiving method) and 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 they do not deviate from the spirit of the present invention, various modifications conceivable by those skilled in the art to the present embodiments, or configurations constructed by combining components of 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 required to acquire reference clock information on the receiving side when the MMT system is applied to a broadcasting system. [Explanation of symbols]
[0345] 10 Receiving unit 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 unit 16a First reference clock generating unit 16b Second reference clock generation unit 17 Synchronization section 18 Decoding presentation unit 20, 40, 50, 60 receiving device 30 Transmitting device 31 Generation part 32 Transmitter 41 Extended Identification Unit 42 Extended type determination section 43 Change Instruction Confirmation Section 44 Data update confirmation section 45 Update data acquisition section 51 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. a generating unit that generates a transmission frame containing a plurality of slots each including one or more TLV (Type Length Value) packets obtained by multiplexing content; a transmitting unit that transmits the transmission frame, 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. Transmitting device.
2. a generating step of generating a frame for transmission storing a plurality of slots each including one or more TLV (Type Length Value) packets obtained by multiplexing the content; a transmitting step of transmitting the frame for transmission, 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. Sending method.