WO2017033764A1 - 記録装置、および記録方法、並びにプログラム - Google Patents

記録装置、および記録方法、並びにプログラム Download PDF

Info

Publication number
WO2017033764A1
WO2017033764A1 PCT/JP2016/073711 JP2016073711W WO2017033764A1 WO 2017033764 A1 WO2017033764 A1 WO 2017033764A1 JP 2016073711 W JP2016073711 W JP 2016073711W WO 2017033764 A1 WO2017033764 A1 WO 2017033764A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
arrival time
divided
unit
buffer
Prior art date
Application number
PCT/JP2016/073711
Other languages
English (en)
French (fr)
Inventor
愼治 根岸
道人 石井
和博 石谷
岳人 渡辺
義明 大石
康行 茶木
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to JP2017536744A priority Critical patent/JP6868775B2/ja
Priority to US15/748,292 priority patent/US10750233B2/en
Publication of WO2017033764A1 publication Critical patent/WO2017033764A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/87Regeneration of colour television signals
    • H04N9/877Regeneration of colour television signals by assembling picture element blocks in an intermediate memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10805Data buffering arrangements, e.g. recording or playback buffers involving specific measures to prevent a buffer overflow
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream

Definitions

  • the present technology relates to a recording apparatus, a recording method, and a program, and more particularly, to a recording apparatus, a recording method, and a program that can avoid buffer overflow when packet data is reproduced.
  • MPEG Motion Picture Experts Group
  • TS Transport Stream
  • data such as audio and video is multiplexed in a time division manner for at least one program.
  • MPEG-2 TS packet has a fixed length of 188 bytes.
  • Patent Document 1 For this purpose, a technique of assigning and recording a packet reception time for each packet is used (see Patent Document 1).
  • reading of the packet is started at the timing of the reception time, so that the beginning of the packet can be started at the same timing as when receiving and viewing. .
  • Japanese Patent No. 497773 Japanese Patent Laid-Open No. 2011-028841
  • the present technology has been made in view of such a situation, and in particular, makes it possible to avoid buffer overflow during reproduction.
  • a recording apparatus generates a demultiplexing unit that separates each packet from a packet sequence, a packet dividing unit that divides the packet into divided packets of a predetermined size, and generates a packet arrival time for each divided packet And a packet arrival time giving unit that embeds the packet arrival time generated by the time generation unit in a header of the divided packet.
  • the packet arrival time is embedded in a header, and a recording unit that records the segmented packet on a recording medium can be further included, and the predetermined size is the segmented packet recorded on the recording medium.
  • the predetermined size is ((Rp / Rp -Rr) ⁇ (the size of the buffer)).
  • the demultiplexing unit separates each packet from the packet sequence and outputs information indicating the arrival timing of each packet.
  • the packet arrival time generating unit is based on the information indicating the arrival timing of each packet.
  • a packet arrival time for each of the packets before the divided packet is divided, and among the divided packets, the divided packet that is the head of the packet is the one before the divided packet is divided.
  • the packet arrival time of the packet is embedded in the header as it is, and among the divided packets, for the second and subsequent divided packets from the beginning of the packet, the packet before the divided packet is divided It is calculated from the packet arrival time based on the size of the sequentially divided packets and the input rate at the time of recording.
  • a packet arrival time corresponding time it is possible to allow embedded in the header as the packet arrival time.
  • the packet arrival time giving unit sets an extra header for each of the divided packets, and embeds ATS (Arrival Time Stamp) as the packet arrival time generated by the time generating unit in the extra header Can be.
  • ATS Arriv Time Stamp
  • the packet arrival time giving unit includes the packet arrival time generated by the time generating unit in the header consisting of each MMTP packet packet header of the fragmented packet. Can be embedded in the format.
  • the buffer dividing unit may further include a simulation unit that instructs the packet dividing unit to divide the packet into the divided packets.
  • the packet can be divided into the divided packets only when the packet is instructed to be divided into the divided packets.
  • the simulation unit When the buffer overflows in the simulation, the simulation unit is instructed to divide the packet into the divided packets having a maximum packet length that does not cause the buffer overflow from the simulation result, and the buffer division The unit may divide the packet into the divided packets having a maximum packet length that does not cause the buffer overflow.
  • a recording method separates each packet from a packet sequence, divides the packet into divided packets of a predetermined size, generates a packet arrival time for each divided packet, and generates the generated packet arrival
  • the recording method includes a step of embedding the time in the header of the divided packet.
  • a program generates a demultiplexing unit that separates each packet from a packet sequence, a packet dividing unit that divides the packet into divided packets of a predetermined size, and a packet arrival time for each divided packet
  • a program that causes a computer to function as a packet arrival time generation unit and a packet arrival time addition unit that embeds the packet arrival time generated by the time generation unit in a header of the divided packet.
  • each packet is separated from a packet sequence, the packet is divided into divided packets of a predetermined size, a packet arrival time for each divided packet is generated, and the generated packet arrival time is , Embedded in the header of the fragmented packet.
  • the recording device may be an independent device or a block that functions as a recording device.
  • FIG. 10 is a diagram illustrating a configuration example of a conventional recording apparatus.
  • 3 is a flowchart for explaining recording processing by the recording apparatus of FIG. 1. It is a time chart explaining the recording process by the recording device of FIG. It is a figure explaining the structural example of a general reproducing
  • 6 is a flowchart for explaining playback processing of the playback device in FIG. 4.
  • 5 is a time chart for explaining packet read timings in each of a recording process by the recording apparatus of FIG. 1 and a reproduction process by the reproducing apparatus of FIG. It is a figure explaining the structural example of 1st Embodiment of the recording device to which this technique is applied. It is a flowchart explaining the recording process by the recording device of FIG.
  • FIG. 8 is a time chart for explaining packet reading timings in each of a recording process by the recording apparatus in FIG. 7 and a reproduction process by the reproduction apparatus in FIG. 4. It is a figure explaining the structural example of 2nd Embodiment of the recording device to which this technique is applied. It is a flowchart explaining the recording process by the recording device of FIG. And FIG. 11 is a diagram illustrating a configuration example of a general-purpose personal computer.
  • the conventional recording apparatus 11 includes a demultiplexing unit 31, a packet arrival time giving unit 32, a PLL unit 33, a recording unit 34, and a recording medium 35.
  • the demultiplexing unit 31 sequentially separates a packet sequence including MPEG (Moving Picture Experts Group) -2 TS (Transport Stream) packets transmitted as a digital broadcast signal as an input packet sequence, and arrives at the packet.
  • the clock reference information for restoring the clock signal on the transmission side is supplied to the PLL unit 33 while being supplied to the time giving unit 32.
  • PCR Program Clock Reference
  • MMT MPEG Media Transport
  • NTP Network Time Protocol
  • the PLL (Phase Locked Loop) unit 33 restores the transmission side clock based on the clock reference information, generates a packet arrival time to be updated while counting up in synchronization with the restored clock, and supplies the packet arrival time to the packet arrival time giving unit 32 .
  • the packet arrival time giving unit 32 gives the packet arrival time to the demultiplexed packet to be recorded and supplies the packet arrival time to the recording unit 34.
  • the recording unit 34 records and stores the packet given the packet arrival time in the recording medium 35.
  • step S ⁇ b> 11 the demultiplexing unit 31 sequentially separates, for each packet, a packet sequence including, for example, an MPEG-2 ⁇ TS packet transmitted as a digital broadcast signal as an input packet sequence, and supplies the packet sequence to the packet arrival time adding unit 32.
  • clock reference information for restoring the clock signal on the transmission side is supplied to the PLL unit 33.
  • step S12 the PLL (Phase Locked Loop) unit 33 restores the transmission side clock based on the clock reference information, generates a packet arrival time to be updated while counting up in synchronization with the restored clock, and a packet arrival time giving unit 32.
  • the PLL Phase Locked Loop
  • step S13 the packet arrival time assigning unit 32 assigns the packet arrival time to the demultiplexed packet to be recorded in the form of being embedded in the header, and supplies the packet to the recording unit 34.
  • step S14 the recording unit 34 records and stores in the recording medium 35 the packet with the header in which the packet arrival time is embedded.
  • step S15 the demultiplexing unit 31 determines whether or not the next packet has been supplied. If the next packet has been supplied, the process returns to step S11, and the subsequent processing is repeated. . If it is determined in step S15 that no packet is supplied, the process ends.
  • the extra header 52 including the packet arrival time 53 is added to the head of each packet 51 in the packet sequence in order, and is sequentially recorded on the recording medium 35.
  • FIG. 3 shows an example of an MPEG-2 TS packet having a syntax that does not include packet arrival time information in the packet header. That is, in the case of an MPEG-2 TS packet, it is necessary to provide an additional header separately in order to embed the packet arrival time. Therefore, in the case of an MPEG-2 TS packet, an extra header (Extra_Header) is particularly provided at the head of the packet, and the packet arrival time is embedded in the extra header.
  • Extra_Header Extra_Header
  • information on the time corresponding to the arrival time of the packet is included as the syntax of each packet header (a header named MMTP packet header is provided in advance), such as an MMT (MPEG Media Transport) packet.
  • MMTP packet header is provided in advance
  • MMT MPEG Media Transport
  • the packet arrival time may be embedded in a header provided in advance.
  • the 4 includes a recording medium 71, a packet reading unit 72, an ATC counter 73, a demultiplexing unit 74, buffers 75-1 to 75-n, decoders 76-1 to 76-n, and a display unit 77. ing.
  • the buffers 75-1 to 75-n and the decoders 76-1 to 76-n are simply referred to as the buffer 75 and the decoder 76, and other configurations. Are also referred to similarly.
  • the recording medium 71 corresponds to the recording medium 35 in FIG. 1 and stores packets to which a header (extra header in the case of an MPEG-2 TS packet) in which a packet arrival time is embedded is stored.
  • the packet is read by the packet reading unit 72.
  • the packet reading unit 72 sequentially reads packets to which the header recorded in the recording medium 71 is attached, and embeds it in the header based on arrival time information supplied from an ATC (Arrival Time Clock) counter 73.
  • the packet is output to the demultiplexing unit 74 at a timing corresponding to the received packet arrival time. That is, the packets are sequentially supplied to the demultiplexing unit 74 based on the information of the ATC counter 73 and the information of the packet arrival time, so the timing between the packets is the packet of the packet sequence supplied at the time of recording. It is supplied to the demultiplexing unit 74 so as to coincide with the time interval between them.
  • the demultiplexing unit 74 demultiplexes the information in units of packets supplied from the packet reading unit 72 in units of channels and buffers the information in any of the buffers 75-1 to 75-n.
  • the decoders 76-1 to 76-n read and decode the packet sequence buffered in each of the buffers 75-1 to 75-n for each channel by a predetermined data length, and decode the decoded result, for example, with an LCD (Liquid It is displayed on a display unit 77 such as Crystal Display.
  • the reproduced data includes image data and audio data.
  • displaying the data on the display unit 77 means displaying an image and outputting sound from a speaker (not shown).
  • step S31 the ATC counter 73 sequentially starts counting the clock counter corresponding to the time, and sequentially outputs it to the packet reading unit 72.
  • step S32 the packet reading unit 72 sequentially reads packets including the header from the recording medium 71.
  • step S33 the packet reading unit 72 reads information on the packet arrival time embedded in the header of the read packet.
  • step S34 the packet reading unit 72 determines whether it is a timing corresponding to the packet arrival time based on the value of the clock counter supplied from the ATC counter 73, and at a timing corresponding to the packet arrival time. The same process is repeated until it is deemed to be present. If it is determined in step S34 that the counter value supplied from the ATC counter 73 is the timing corresponding to the packet arrival time, the process proceeds to step S35.
  • step S35 the packet reading unit 72 outputs the read packet to the demultiplexing unit 74.
  • step S36 the demultiplexing unit 74 demultiplexes the supplied packets in units of channels.
  • step S37 the demultiplexing unit 74 stores (buffers) the separated packet in the buffer 75 of the corresponding channel.
  • step S38 the packet reading unit 72 determines whether or not the next packet exists. If the next packet exists, the process returns to step S32, and the subsequent processes are repeated.
  • step S38 If it is determined in step S38 that the next packet does not exist, the process ends. At this time, counting by the ATC counter 73 is also stopped.
  • the packet sequence recorded by the recording device 11 by the reproducing device 61 is sequentially reproduced by a predetermined data length.
  • step S32 it is not always necessary to read the entire packet, and it is only necessary to read the arrival time. Therefore, when only the arrival time is read in step S32, the packet reading unit 72 reads the entire packet from the recording medium 71 and outputs the read packet to the demultiplexing unit 74 in step S35. .
  • the reading rate during playback is higher than the input rate during recording. Therefore, when the timing for reading the head of the packet 51-1 is matched with the time t11 corresponding to the packet arrival time ATS [n], as shown in the upper part of FIG. Is read and the reading is completed at time t13, the time required for reading during reproduction is usually shorter. For example, as shown in the packet 91-1 shown in the middle part of FIG. Complete in Therefore, as shown in the lower part of FIG. 6, the buffer occupation amount in the buffer 75 rises more rapidly as shown by the dotted line than in the case of recording shown by the solid line.
  • the buffer occupancy in the buffer 75 becomes extremely large at the timing from time t15 to t16, and buffer overflow occurs. May occur.
  • the MPEG-2 TS packet has a relatively small fixed length of 188 bytes, it is possible to avoid overflow by adding a small additional buffer of 188 bytes to the buffer 75 in FIG.
  • the additional buffer is a buffer that is added to the buffer 75 and has an overflow avoidance buffer size that is added to the same data buffer size as the reception device 61 when receiving and viewing.
  • the buffer 75 is physically provided individually for each data type such as video and audio, and it is necessary to provide an additional buffer corresponding to a large maximum packet size with respect to the buffer 75 for each data type. Yes (the buffer 75 needs to have a larger capacity), which may increase the cost.
  • the recording apparatus to which the present technology is applied is configured to avoid buffer overflow by dividing the packet size into a predetermined packet size for recording.
  • FIG. 7 shows a configuration example of the first embodiment of the recording apparatus to which the present technology is applied.
  • the same reference numerals and the same names are given to the components having the same functions as those in the recording apparatus 11 in FIG. 1, and the description thereof will be omitted as appropriate.
  • the same reference numerals and the same names are given to the components having the same functions as those in the recording apparatus 11 in FIG. 1, and the description thereof will be omitted as appropriate.
  • a packet arrival time giving unit 102 is provided instead of the packet arrival time giving unit 32, and a packet dividing unit 101 is newly provided. It is a point.
  • the packet dividing unit 101 divides the separated packet supplied from the demultiplexing unit 31 into a predetermined size that can avoid buffer overflow, and supplies the divided packet to the packet arrival time giving unit 32.
  • the predetermined size capable of avoiding buffer overflow can be regarded as the maximum packet length necessary for avoiding buffer overflow. Therefore, for example, the size of the additional buffer of the buffer 75 included in the playback device 61 You may make it do.
  • the predetermined size of the packet to be divided which corresponds to the size of the additional buffer of the buffer 75 provided in the playback device 61 that can avoid the buffer overflow, is the slope of the graph indicating the displacement of the buffer occupation amount in FIG. May be set to a value calculated by the following equation (1) using a rate corresponding to.
  • Rp is the maximum reading rate during reproduction (slope of the dotted line in the lower part of FIG. 6) as indicated by the dotted line in the lower part of FIG. 6, and Rr is a solid line in the lower part of FIG. As shown, the input rate at the time of recording (the slope of the solid line in the lower part of FIG. 6).
  • the packet arrival time giving unit 102 gives a header in which the packet arrival time is embedded in the divided packet, or a header in which the packet arrival time equivalent time corresponding to the packet arrival time is embedded as the packet arrival time.
  • the packet dividing unit 101 divides the packet into a predetermined length size in step S52, and the divided packet is sent to the packet arrival time. It supplies to the grant part 102.
  • step S53 the PLL unit 33 generates a packet arrival time based on the clock reference information and supplies the packet arrival time to the packet arrival time giving unit 102.
  • step S54 the packet arrival time giving unit 102 sets the packet arrival time supplied from the PLL unit 33 to the divided packet that is the head of the divided packet before the divided packet.
  • the information is embedded in the header and output to the recording unit 34.
  • the packet arrival time giving unit 102 calculates a packet arrival time equivalent time corresponding to the packet arrival time for the second and subsequent divided packets of the divided packets among the divided packets, The packet arrival time is embedded in the packet header and output to the recording unit 34.
  • the packet arrival time giving unit 102 sets the reference of the packet arrival time as ATC (Arrival Time Clock ), The packet arrival time is set as ATS (Arrival Time Stamp), and an extra header in which the packet arrival time information consisting of this ATS is embedded is added to the head of the payload of each packet and output to the recording unit 34.
  • ATC Arriv Time Clock
  • ATS Arriv Time Stamp
  • the actual arrival time before the division is given as the packet arrival time for the first packet, and for the subsequent divided packets Depending on the packet length, an extra header in which a packet arrival time equivalent time corresponding to the calculated packet arrival time is embedded is added.
  • the packet arrival time is based on UTC (Universal Time Clock), so the packet arrival time is NTP (Network Time Protocol) as shown at the top of FIG. In the format, it is received as a header (MMTP packet header) 52 in advance.
  • UTC Universal Time Clock
  • NTP Network Time Protocol
  • FIG. 9 shows an example in which the packet 51 is divided into three packets 51a to 51c as shown in the second row from the top.
  • the divided packet 51a has the same header 52a as the header 52 in which the packet arrival time is embedded.
  • the divided packet 51b is added with a header 53a calculated from the packet arrival time of the header 52 and embedded with the packet arrival time equivalent time as the packet arrival time.
  • the packet 51c is the packet of the header 52.
  • a header 53b in which the packet arrival time equivalent time calculated from the arrival time is embedded as the packet arrival time is attached.
  • the packet arrival time giving unit 102 gives a header (MMTPMMpacket header) 52 as the header 52a in which the original packet arrival time is embedded in the leading packet 51a. Further, the packet arrival time giving unit 102 adds headers (MMTP packet header) 53a and 53b including packet arrival time equivalent time NTP [n] ′ corresponding to the packet arrival time to the second and subsequent packets 51b and 51c. Assign and generate a divided packet (MMTP packet).
  • the packet arrival time giving unit 102 may receive the arrival time of the packet other than the divided head as the packet arrival time equivalent time of the first byte of the divided packet and embed it in the header.
  • the packet arrival time equivalent time may be calculated according to the packet length of the divided packet and embedded in the header.
  • the packet arrival time giving unit 102 may calculate the following equation (2) based on the input rate at the time of recording, for example. good.
  • NTP [n] ' NTP [n] + (packet [n] size) / (input rate during recording) ... (2)
  • NTP [n] ′ is the packet arrival time equivalent time of packet [n] ′
  • NTP [n] is the packet arrival time of packet [n] immediately before packet [n] ′, or the packet It is the arrival time equivalent time.
  • the packet dividing unit 101 sets the total size of the headers that can be accumulated in the buffer 75 in the buffer 75.
  • the maximum packet length is calculated by subtracting from the size.
  • the packet 51 When the packet 51 is not divided, it is read as shown by the payload 91 and the header 92 in the third stage of FIG. 9 corresponding to the packet 51, and when buffered from time t31, at time t33, the five stages of FIG.
  • the buffer occupancy increases as indicated by the dotted line in the eye. That is, when the buffer occupancy rapidly increases in this way, the possibility of buffer overflow increases.
  • the packet 51 is divided into three as packets 51a to 51c, so that the headers 52a, 53a, and 53b in the fourth row in FIG.
  • the process is divided into three periods.
  • buffering of the second packet including the payload 91b and the header 93a corresponding to the packet 51b is started at time t35, and when finished at time t36, As indicated by the dashed line in the fifth stage, the buffer occupancy is maintained in a state where the buffer does not overflow from time t36 to time t37.
  • buffering of the third packet including the payload 91c and the header 93b corresponding to the packet 51c is started at time t37, and when finished at time t38, As indicated by the one-dot chain line in the fifth row, the buffer occupancy is maintained in a state where the buffer does not overflow from time t38 to t39.
  • FIG. 10 shows a configuration example of the recording apparatus 11 that divides a packet only when a buffer overflows.
  • symbol and the same name are provided, The description shall be abbreviate
  • the recording apparatus 11 of FIG. 10 differs from the recording apparatus 11 of FIG. 7 in that a read buffer simulation unit 121 is newly provided, and a packet dividing unit 122 is provided instead of the packet dividing unit 101. Is a point.
  • the read buffer simulation unit 121 reproduces the decoding process in the buffer 75 and the decoder 76 by the simulation when sequentially processing the separated packet sequences, and determines whether or not a buffer overflow occurs. When a buffer overflow occurs, the read buffer simulation unit 121 calculates a maximum packet length that does not cause a buffer overflow, and instructs the packet dividing unit 122 to divide by the maximum packet length.
  • the packet division unit 122 outputs the supplied separated packet as it is to the packet arrival time giving unit 102 when the read buffer simulation unit 121 does not instruct the division, and when the division is instructed, the packet division unit 122 is supplied with the instruction.
  • the packet separated by the maximum packet length is divided and output to the packet arrival time giving unit 102.
  • steps S71, S76 to S79 in FIG. 11 is the same as the processing in steps S51, S53 to S56 in FIG.
  • step S72 the read buffer simulation unit 121 sequentially executes the process of the decoder 76 in units of packets according to the packet sequence, and simulates the buffer occupation amount in the buffer 75 at that time.
  • step S73 the read buffer simulation unit 121 determines whether or not a buffer overflow has occurred. If a buffer overflow has occurred, the process proceeds to step S74.
  • step S74 the read buffer simulation unit 121 reads the maximum packet length corresponding to the maximum value of the buffer occupancy when no buffer overflow occurs from the simulation result, supplies the maximum packet length to the packet division unit 122, and instructs the packet division. To do.
  • step S 75 the packet dividing unit 122 divides the packet with the maximum packet length based on the instruction from the read buffer simulation unit 121 and supplies the packet to the packet arrival time giving unit 102.
  • step S73 if no buffer overflow occurs in step S73, the processes in steps S74 and S75 are skipped.
  • the packet sequence is sequentially decoded, the buffer occupancy when the buffer 75 is actually used is simulated, and a packet that is expected to cause a buffer overflow is divided and the buffer overflow When the occurrence is not expected, the packet is not divided.
  • whether or not the packet is dynamically divided is determined depending on whether or not buffer overflow is expected, and the packet is divided only when the buffer overflow occurs. Can be reduced, and buffer overflow can be reliably avoided.
  • the packet is divided by the maximum packet length corresponding to the maximum buffer occupancy when no buffer overflow occurs.
  • the maximum packet length corresponding to the maximum buffer occupancy when no buffer overflow occurs.
  • the transmission device executes processing on the recording device side, and the reception device performs processing on the reproduction device side.
  • ⁇ Example executed by software> By the way, the series of processes described above can be executed by hardware, but can also be executed by software.
  • a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a recording medium in a general-purpose personal computer or the like.
  • FIG. 12 shows a configuration example of a general-purpose personal computer.
  • This personal computer incorporates a CPU (Central Processing Unit) 1001.
  • An input / output interface 1005 is connected to the CPU 1001 via a bus 1004.
  • a ROM (Read Only Memory) 1002 and a RAM (Random Access Memory) 1003 are connected to the bus 1004.
  • the input / output interface 1005 includes an input unit 1006 including an input device such as a keyboard and a mouse for a user to input an operation command, an output unit 1007 for outputting a processing operation screen and an image of the processing result to a display device, programs, and various types.
  • a storage unit 1008 including a hard disk drive for storing data, a LAN (Local Area Network) adapter, and the like are connected to a communication unit 1009 that executes communication processing via a network represented by the Internet.
  • magnetic disks including flexible disks
  • optical disks including CD-ROM (Compact Disc-Read Only Memory), DVD (Digital Versatile Disc)), magneto-optical disks (including MD (Mini Disc)), or semiconductors
  • a drive 1010 for reading / writing data from / to a removable medium 1011 such as a memory is connected.
  • the CPU 1001 is read from a program stored in the ROM 1002 or a removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, installed in the storage unit 1008, and loaded from the storage unit 1008 to the RAM 1003. Various processes are executed according to the program.
  • the RAM 1003 also appropriately stores data necessary for the CPU 1001 to execute various processes.
  • the CPU 1001 loads the program stored in the storage unit 1008 to the RAM 1003 via the input / output interface 1005 and the bus 1004 and executes the program, for example. Is performed.
  • the program executed by the computer (CPU 1001) can be provided by being recorded on the removable medium 1011 as a package medium, for example.
  • the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the storage unit 1008 via the input / output interface 1005 by attaching the removable medium 1011 to the drive 1010. Further, the program can be received by the communication unit 1009 via a wired or wireless transmission medium and installed in the storage unit 1008. In addition, the program can be installed in advance in the ROM 1002 or the storage unit 1008.
  • the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
  • the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Accordingly, a plurality of devices housed in separate housings and connected via a network and a single device housing a plurality of modules in one housing are all systems. .
  • the present technology can take a cloud computing configuration in which one function is shared by a plurality of devices via a network and is jointly processed.
  • each step described in the above flowchart can be executed by one device or can be shared by a plurality of devices.
  • the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.
  • this technique can also take the following structures. ⁇ 1> a demultiplexing unit that separates each packet from the packet sequence; A packet division unit for dividing the packet into divided packets of a predetermined size; A packet arrival time generating unit for generating a packet arrival time for each of the divided packets; And a packet arrival time adding unit that embeds the packet arrival time generated by the time generation unit in a header of the divided packet.
  • ⁇ 2> further includes a recording unit that records the divided packet on a recording medium, in which the packet arrival time is embedded in a header;
  • the predetermined size is a size corresponding to the size of an additional buffer added by a playback device that plays back the divided packet recorded on the recording medium to avoid a buffer overflow to the same data buffer size as when receiving and viewing.
  • ⁇ 3> When the maximum read rate when the segment packet is reproduced by the playback device is Rp and the maximum read rate when the segment packet is recorded is Rr, the predetermined size is (( Rp / Rp-Rr) ⁇ (the size of the buffer)).
  • the demultiplexing unit separates each packet from the packet sequence, and outputs information indicating the arrival timing of each packet
  • the packet arrival time generator is Based on the information indicating the arrival timing of each packet, generate a packet arrival time for each packet before the divided packet is divided, Among the divided packets, for the divided packet that is the head of the packet, the packet arrival time of the packet before the divided packet is divided is embedded in the header as it is, Among the divided packets, for the second and subsequent divided packets from the beginning of the packet, the size of the divided packets and the input at the time of recording are sequentially determined from the packet arrival time of the packet before the divided packets are divided.
  • the recording device according to any one of ⁇ 1> to ⁇ 3>, wherein a time corresponding to a packet arrival time calculated based on a rate is embedded in the header as the packet arrival time.
  • the packet arrival time giving unit sets an extra header for each of the divided packets, and an ATS (Arrival Time Stamp) is set as the packet arrival time generated by the time generating unit in the extra header.
  • the recording apparatus according to any one of ⁇ 1> to ⁇ 4>.
  • ⁇ 6> In the case of MMT (MPEG Media Transport), the packet arrival time giving unit adds the packet arrival time generated by the time generating unit to the header consisting of each MMTP packet header of the fragmented packet.
  • the recording apparatus according to any one of ⁇ 1> to ⁇ 5>.
  • ⁇ 7> Simulates the operation of a playback apparatus including a buffer that sequentially buffers the divided packets recorded on the recording medium as necessary, and a decoding unit that sequentially decodes the divided packet sequences buffered in the buffer. And when the buffer overflows in the simulation, further includes a simulation unit that instructs the buffer dividing unit to divide the packet into the divided packets, The buffer dividing unit divides the packet into the divided packets only when the simulation unit instructs the packet to be divided into the divided packets.
  • ⁇ 1> to ⁇ 6> Recording device.
  • the simulation unit instructs to divide the packet into the divided packets having a size that is the maximum packet length in which the buffer overflow does not occur, from the simulation result,
  • the recording apparatus according to ⁇ 7>, wherein the buffer dividing unit divides the packet into the divided packets having a size that is a maximum packet length in which the buffer overflow does not occur.
  • ⁇ 9> Separate each packet from the packet sequence, Dividing the packet into divided packets of a predetermined size; Generating a packet arrival time for each of the divided packets; A recording method including a step of embedding the generated packet arrival time in a header of the divided packet.
  • a demultiplexing unit that separates each packet from the packet sequence;
  • a packet division unit for dividing the packet into divided packets of a predetermined size;
  • a packet arrival time generating unit for generating a packet arrival time for each of the divided packets;
  • a program that causes a computer to function as a packet arrival time giving unit that embeds the packet arrival time generated by the time generation unit in a header of the divided packet.
  • 11 recording device 31 demultiplexing unit, 32 packet arrival time giving unit, 33 PLL unit, 34 recording unit, 35 recording medium, 61 playback device, 71 recording medium, 72 packet reading unit, 73 ATC counter, 74 demultiplexing unit, 75, 75-1 to 75-n buffer, 76, 76-1 to 76-n decoder, 77 display unit, 101 packet division unit, 102 packet arrival time giving unit, 121 read buffer simulation unit, 122 packet division unit

Abstract

本技術は、再生時のバッファオーバフローを回避することができるようにする記録装置、および記録方法、並びにプログラムに関する。 パケット列より各パケットを分離し、各パケットの到着タイミングを示す情報を出力し、パケットを、バッファオーバフローしないサイズの分割パケットに分割し、分割パケット毎のパケット到着時刻を、分割パケットのヘッダに埋め込むようにする。本技術は、記録装置に適用することができる。

Description

記録装置、および記録方法、並びにプログラム
 本技術は、記録装置、および記録方法、並びにプログラムに関し、特に、パケットデータを再生する際に、バッファオーバフローを回避できるようにした記録装置、および記録方法、並びにプログラムに関する。
 衛星デジタル放送や地上デジタル放送などには、パケットデータ構造として、ISO13818-1に規定されるMPEG(Moving Picture Experts Group)-2 TS(Transport Stream)が使用されている。
 MPEG-2 TSパケットデータ列には、オーディオやビデオなどのデータが少なくとも1つ以上の番組分、時分割で多重化されている。
 MPEG-2 TSのパケットは188バイト固定長である。
 受信したパケットデータ列を記録する場合、記録したパケットデータ列を読み出して再生するときでも、受信してそのままデコードして視聴するときと同様の装置で再生可能となることが望ましい。
 そのために、パケットの受信時刻をパケット毎に付与して記録する技術が用いられている(特許文献1参照)。
 このような技術により、記録したパケットデータ列を読み出す際に、受信時刻のタイミングでパケットの読み込みを開始することで、パケット先頭は受信視聴する場合と同様のタイミングで読み込み開始する事が可能となる。
特許4973773号(特開2011-028841号公報)
 ところで、一般に、再生時のデータ読み込みは、受信視聴時のデータ入力レートよりも速い速度で行われる。このため、受信視聴時と同じデータバッファサイズでは、バッファオーバフローが発生してしまう恐れがあった。
 MPEG-2 TSのパケットは188バイトと比較的小さな固定長であるため、188バイトという小さな付加バッファにより、オーバフローを回避することができる。
 しかしながら、パケットのサイズが比較的大きい、または、可変長のパケットデータ構造の場合、最大パケットサイズ分の付加バッファを備えなければ、オーバフローを回避できない。
 本技術は、このような状況に鑑みてなされたものであり、特に、再生時のバッファオーバフローを回避できるようにするものである。
 本技術の一側面の記録装置は、パケット列より各パケットを分離する多重分離部と、前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部とを含む記録装置である。
 前記パケット到着時刻がヘッダに埋め込まれている、前記分割パケットを記録媒体に記録する記録部をさらに含ませるようにすることができ、前記所定のサイズは、前記記録媒体に記録された前記分割パケットを再生する再生装置が、受信視聴時と同じデータバッファサイズにバッファオーバフローを回避するために付加した付加バッファのサイズに対応するサイズとすることができる。
 前記再生装置により前記分割パケットが再生される際の読み込み最大レートがRpであり、前記分割パケットが記録される際の読み込み最大レートがRrであるとき、前記所定のサイズは、((Rp/Rp-Rr)×(前記バッファのサイズ))とされるようにすることができる。
 前記多重分離部には、パケット列より各パケットを分離すると共に、前記各パケットの到着タイミングを示す情報を出力させ、前記パケット到着時刻発生部には、前記各パケットの到着タイミングを示す情報に基づいて、前記分割パケットが分割される前の前記パケット毎のパケット到着時刻を発生させ、前記分割パケットのうち、前記パケットの先頭となる分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻を、そのまま前記ヘッダに埋め込ませ、前記分割パケットのうち、前記パケットの先頭から2番目以降の分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻から、順次分割パケットのサイズと記録時の入力レートに基づいて算出されるパケット到着時刻相当時刻を、前記パケット到着時刻として前記ヘッダに埋め込ませるようにすることができる。
 前記パケット到着時刻付与部には、前記分割パケットのそれぞれに対して、エクストラヘッダを設定し、前記エクストラヘッダに、前記時刻発生部により発生されたパケット到着時刻としてATS(Arrival Time Stamp)を埋め込ませるようにすることができる。
 MMT(MPEG Media Transport)の場合、前記パケット到着時刻付与部には、前記分割パケットのそれぞれのMMTP packet headerからなるヘッダに、前記時刻発生部により発生されたパケット到着時刻をNTP(Network Time Protocol)形式で埋め込ませるようにすることができる。
 前記記録媒体に記録された前記分割パケットを必要に応じて順次バッファリングするバッファと、前記バッファにバッファリングされた分割パケット列を順次デコードするデコード部を備えた再生装置の動作をシミュレーションし、前記シミュレーションにおいてバッファオーバフローする場合、前記バッファ分割部に前記パケットを前記分割パケットに分割するように指示するシミュレーション部をさらに含ませるようにすることができ、前記バッファ分割部には、前記シミュレーション部より前記パケットを前記分割パケットに分割するように指示された場合にのみ、前記パケットを前記分割パケットに分割させるようにすることができる。
 前記シミュレーション部には、前記シミュレーションにおいてバッファオーバフローする場合、前記シミュレーションの結果から、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割するように指示させ、前記バッファ分割部には、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割させるようにすることができる。
 本技術の一側面の記録方法は、パケット列より各パケットを分離し、前記パケットを所定のサイズの分割パケットに分割し、前記分割パケット毎のパケット到着時刻を発生し、発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むステップを含む記録方法である。
 本技術の一側面のプログラムは、パケット列より各パケットを分離する多重分離部と、前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部としてコンピュータを機能させるプログラムである。
 本技術の一側面においては、パケット列より各パケットが分離され、前記パケットが所定のサイズの分割パケットに分割され、前記分割パケット毎のパケット到着時刻が発生され、発生された前記パケット到着時刻が、前記分割パケットのヘッダに埋め込まれる。
 本技術の一側面の記録装置は、それぞれ独立した装置であっても良いし、記録装置として機能するブロックであっても良い。
 本技術の一側面によれば、再生時のバッファオーバフローを回避することが可能となる。
従来の記録装置の構成例を説明する図である。 図1の記録装置による記録処理を説明するフローチャートである。 図1の記録装置による記録処理を説明するタイムチャートである。 一般的な再生装置の構成例を説明する図である。 図4の再生装置の再生処理を説明するフローチャートである。 図1の記録装置による記録処理、および図4の再生装置による再生処理のそれぞれにおけるパケットの読み込みタイミングを説明するタイムチャートである。 本技術を適用した記録装置の第1の実施の形態の構成例を説明する図である。 図7の記録装置による記録処理を説明するフローチャートである。 図7の記録装置による記録処理、および図4の再生装置による再生処理のそれぞれにおけるパケットの読み込みタイミングを説明するタイムチャートである。 本技術を適用した記録装置の第2の実施の形態の構成例を説明する図である。 図10の記録装置による記録処理を説明するフローチャートである。 汎用のパーソナルコンピュータの構成例を説明する図である。
 <第1の実施の形態>
 <従来の記録装置の構成例>
 本技術を適用した記録装置の説明に当たって、まず、従来の記録装置の構成について説明する。
 従来の記録装置11は、多重分離部31、パケット到着時刻付与部32、PLL部33、記録部34、および記録媒体35を備えている。
 多重分離部31は、入力パケット列として、例えば、デジタル放送信号として送出されたMPEG(Moving Picture Experts Group)-2 TS(Transport Stream)パケット等からなるパケット列をパケット毎に順次分離してパケット到着時刻付与部32に供給すると共に、送信側のクロック信号を復元するためのクロック参照情報をPLL部33に供給する。
 クロック参照情報は、MPEG-2 TSパケットの場合、PCR(Program Clock Reference)が用いられる。また、MPEG-H規格のPart1で規定されるMMT(MPEG Media Transport)を用いた標準規格であるARIB-STD-B60の場合、クロック参照情報は、NTP(Network Time Protocol)が用いられる。
 PLL(Phase Locked Loop)部33は、クロック参照情報により送信側クロックを復元し、復元したクロックに同期してカウントアップしながら更新するパケット到着時刻を生成し、パケット到着時刻付与部32に供給する。
 パケット到着時刻付与部32は、多重分離された記録対象のパケットに、パケット到着時刻を付与し、記録部34に供給する。
 記録部34は、パケット到着時刻を付与されたパケットを、記録媒体35に記録し、格納する。
 <従来の記録装置による記録処理>
 次に、図2のフローチャートを参照して、図1の従来の記録装置11による記録処理について説明する。
 ステップS11において、多重分離部31は、入力パケット列として、例えば、デジタル放送信号として送出されたMPEG-2 TSパケット等からなるパケット列をパケット毎に順次分離してパケット到着時刻付与部32に供給すると共に、送信側のクロック信号を復元するためのクロック参照情報をPLL部33に供給する。
 ステップS12において、PLL(Phase Locked Loop)部33は、クロック参照情報により送信側クロックを復元し、復元したクロックに同期してカウントアップしながら更新するパケット到着時刻を生成し、パケット到着時刻付与部32に供給する。
 ステップS13において、パケット到着時刻付与部32は、多重分離された記録対象のパケットに、パケット到着時刻をヘッダに埋め込む形で付与し、記録部34に供給する。
 ステップS14において、記録部34は、パケット到着時刻が埋め込まれているヘッダが付与されたパケットを、記録媒体35に記録し、格納する。
 ステップS15において、多重分離部31は、次のパケットが供給されてきたか否かを判定し、次のパケットが供給されてきている場合、処理は、ステップS11に戻り、それ以降の処理が繰り返される。そして、ステップS15において、パケットの供給がないと見なされた場合、処理は、終了する。
 すなわち、以上の処理により、MPEG-2 TSパケットの場合、例えば、図3の上段で示されるように、パケット到着時刻ATS[n]において、パケット51-1が供給されてくると、図3の下段で示されるように、パケット51-1の先頭に、パケット到着時刻ATS[n]53-1を含むエクストラヘッダ(Extra_Header)52-1が付与される。
 そして、それ以降においては同様に、例えば、図3の上段で示されるように、パケット到着時刻ATS[n+1]において、パケット51-2が供給されてくると、図3の下段で示されるように、パケット51-2の先頭に、パケット到着時刻ATS[n+1]53-2を含むエクストラヘッダ(Extra_Header)52-2が付与される。
 このようにして、順次パケット列の各パケット51の先頭にパケット到着時刻53を含むエクストラヘッダ52が付与されて、順次、記録媒体35に記録される。
 尚、図3においては、パケットヘッダにパケットの到着時刻情報を含んでいないシンタクスからなるMPEG-2 TSパケットの場合の例が示されている。すなわち、MPEG-2 TSパケットの場合、パケット到着時刻を埋め込むために、別途、追加のヘッダを設ける必要がある。そこで、MPEG-2 TSパケットの場合には、パケットの先頭にエクストラヘッダ(Extra_Header)が特に設けられて、そのエクストラヘッダにパケット到着時刻が埋め込まれる。
 一方、MMT(MPEG Media Transport)パケットなどのように、予め各パケットヘッダ(MMTP packet headerという名称のヘッダが予め設けられている)のシンタクスとしてパケットの到着時刻に相当する時刻の情報が含まれているような場合には、予め設けられたヘッダにパケット到着時刻を埋め込むようにしてもよい。
 <再生装置の構成例>
 次に、図4を参照して、一般的な再生装置の構成例について説明する。
 図4の再生装置61は、記録媒体71、パケット読み出し部72、ATCカウンタ73、多重分離部74、バッファ75-1乃至75-n、デコーダ76-1乃至76-n、および表示部77を備えている。尚、以降において、バッファ75-1乃至75-n、およびデコーダ76-1乃至76-nについて、それぞれ個別に区別する必要が無い場合、単に、バッファ75およびデコーダ76と称するものとし、その他の構成についても、同様に称するものとする。
 記録媒体71は、図1の記録媒体35に対応するものであり、パケット到着時刻が埋め込まれたヘッダ(MPEG-2 TSパケットの場合、エクストラヘッダ)が付与されたパケットが記憶されており、順次、パケット読み出し部72により読み出される。
 パケット読み出し部72は、記録媒体71に記録されているヘッダが付与されているパケットを順次読み出すと共に、ATC(Arrival Time Clock)カウンタ73より供給されてくる到着時刻の情報に基づいて、ヘッダに埋め込まれたパケット到着時刻に対応するタイミングで多重分離部74に出力する。すなわち、ATCカウンタ73の情報と、パケット到着時刻の情報に基づいて、パケットが順次多重分離部74に供給されるようになるので、パケット間のタイミングは、記録時に供給されてくるパケット列のパケット間の時間間隔と一致するように多重分離部74に供給されるようになる。
 多重分離部74は、パケット読み出し部72より供給されてくるパケット単位の情報をチャンネル単位で分離して、バッファ75-1乃至75-nのいずれかにバッファリングさせる。
 デコーダ76-1乃至76-nは、チャンネル単位でバッファ75-1乃至75-nのそれぞれにバッファリングされているパケット列を所定のデータ長ずつ読み出してデコードし、デコード結果を例えば、LCD(Liquid Crystal Display)などからなる表示部77に表示させる。尚、再生されるデータには、画像データ、およびオーディオデータが含まれており、ここで、データを表示部77に表示させるとは、画像を表示すると共に、図示せぬスピーカ等より音声も出力させることを表している。
 <図4の再生装置による再生処理>
 次に、図5のフローチャートを参照して、図4の再生装置によるパケットの読み込みからバッファリングまでの処理である読み込みバッファリング処理について説明する。
 ステップS31において、ATCカウンタ73が順次時刻に対応するクロックカウンタのカウントを開始し、順次、パケット読み出し部72に出力する。
 ステップS32において、パケット読み出し部72は、記録媒体71より順次ヘッダを含むパケットを読み出す。
 ステップS33において、パケット読み出し部72は、読み出したパケットのヘッダに埋め込まれているパケット到着時刻の情報を読み出す。
 ステップS34において、パケット読み出し部72は、ATCカウンタ73より供給されてくるクロックカウンタの値に基づいて、パケット到着時刻に対応するタイミングであるか否かを判定し、パケット到着時刻に対応するタイミングであるとみなされるまで、同様の処理を繰り返す。そして、ステップS34において、ATCカウンタ73より供給されるカウンタの値が、パケット到着時刻に対応するタイミングであると見なされた場合、処理は、ステップS35に進む。
 ステップS35において、パケット読み出し部72は、多重分離部74に読み出したパケットを出力する。
 ステップS36において、多重分離部74は、供給されてきたパケットをチャンネル単位で分離する。
 ステップS37において、多重分離部74は、分離したパケットを対応するチャンネルのバッファ75に格納させる(バッファリングさせる)。
 ステップS38において、パケット読み出し部72は、次のパケットが存在するか否かを判定し、次のパケットが存在する場合、処理は、ステップS32に戻り、それ以降の処理が繰り返される。
 そして、ステップS38において、次のパケットが存在しないとみなされた場合、処理は、終了する。この際、ATCカウンタ73によるカウントも停止される。
 以上の一連の処理により、再生装置61により記録装置11で記録されたパケット列が順次所定のデータ長分ずつ再生されることになる。
 尚、ステップS32においては必ずしもパケット全体を読み出す必要は無く、到着時刻が読み出せていればよい。このため、ステップS32において、到着時刻のみを読み出すようにした場合には、ステップS35において、パケット読み出し部72が、記録媒体71よりパケット全体を読み出して、多重分離部74に読み出したパケットを出力する。
 <再生時のバッファ占有量>
 ここで、図6を参照して、再生時のバッファ75におけるバッファ占有量の遷移について説明する。
 一般に、再生時のデータ読み込みは、受信視聴時のデータ入力レートよりも速い速度で行われる。このため、受信視聴時と同じバッファサイズでは、バッファオーバフローしてしまう恐れがある。
 すなわち、再生時の読み込みレートは記録時の入力レートより高い。このため、パケット51-1の先頭を読み出すタイミングをパケット到着時刻ATS[n]に対応する時刻t11に合わせると、図6の上段で示されるように、記録時と同様の速度でパケット51-1が読み出され、時刻t13に読み出しが完了するものとすると、通常、再生時の読み出しに係る時間はより短く、例えば、図6の中段で示されるパケット91-1で示されるように、時刻t12において完了する。従って、図6の下段で示されるように、バッファ75におけるバッファ占有量は実線で示される記録時の場合よりも、点線で示されるように急峻に上昇する。
 さらに、図6の上段で示されるように、パケット到着時刻ATS[n+1]に対応する時刻t14において、次のパケット51-2が読み出され、時刻t17に読み出しが完了するものとすると、通常、再生時の読み出しに係る時間はより短く、例えば、図6の中段で示されるパケット91-2で示されるように、時刻t15において完了する。従って、図6の下段で示されるように、バッファ75におけるバッファ占有量は実線で示される記録時の場合よりも、点線で示されるように急峻に上昇する。
 ここで、時刻t16において、バッファ75からデコーダ76によりデータが抜き出されてデコードがなされるものとした場合、時刻t15乃至t16におけるタイミングにおいてバッファ75でのバッファ占有量が極度に大きくなり、バッファオーバフローが発生してしまう恐れがある。
 ただし、MPEG-2 TSのパケットは188バイトと比較的小さな固定長であるため、188バイトという小さな付加バッファを、図4のバッファ75に加えることにより、オーバフローを回避することも可能である。ここで、付加バッファとは、再生装置61が受信視聴時と同じデータバッファサイズに付加したオーバフロー回避用のバッファサイズからなり、バッファ75に付加されるバッファである。
 しかしながら、パケットのサイズが比較的大きいパケットデータ構造や、可変長のパケットデータ構造の場合は、大きな最大パケットサイズ分の付加バッファを備えなければ、オーバフローを回避できない恐れがある。
 再生装置においては、バッファ75は、ビデオやオーディオなどのデータ種別毎に物理的に個別に備えており、データ種別毎のバッファ75に対して、それぞれ大きな最大パケットサイズ分の付加バッファを備える必要があり(バッファ75の容量を、さらに大きなバッファ容量とする必要があり)、コスト高となる恐れがある。
 <本技術を適用した記録装置の構成例>
 そこで、本技術を適用した記録装置においては、パケットサイズを所定のパケットサイズに分割して記録することで、バッファオーバフローを回避する構成としている。
 図7は、本技術を適用した記録装置の第1の実施の形態の構成例を示している。尚、図7の記録装置11において、図1の記録装置11における構成と同一の機能を備えた構成については、同一の符号、および同一の名称を付しており、その説明は適宜省略するものとする。
 すなわち、図7の記録装置11において、図1の記録装置11と異なる点は、パケット到着時刻付与部32に代えて、パケット到着時刻付与部102を設け、さらに、パケット分割部101を新たに設けている点である。
 パケット分割部101は、多重分離部31より供給されてくる分離されたパケットを、バッファオーバフローを回避可能な所定のサイズに分割し、分割済みパケットとしてパケット到着時刻付与部32に供給する。
 ここで、バッファオーバフローを回避可能な所定のサイズは、バッファオーバフローを回避するために必要なパケット最大長と捉えることができるので、例えば、再生装置61が備えているバッファ75の付加バッファのサイズとするようにしてもよい。
 また、バッファオーバフローを回避可能な、再生装置61が備えているバッファ75の付加バッファのサイズに相当する、分割されるパケットの所定のサイズは、図6におけるバッファ占有量の変位を示すグラフの傾きに相当するレートを用いて以下の式(1)により算出される値とするようにしてもよい。
 分割されるパケットの所定のサイズ(パケット最大長)
              =(Rp/(Rp-Rr))×(バッファ75のサイズ)
                           ・・・(1)
 ここで、Rpは、図6の下段において、点線で示されるように、再生時の読み込み最大レート(図6の下段部の点線部の傾き)であり、Rrは、図6の下段において、実線で示されるように、記録時の入力レート(図6の下段部の実線部の傾き)である。
 このように設定することで、適切なサイズのパケットに分割することで、バッファオーバフローの発生を抑制することが可能となる。
 さらに、パケット到着時刻付与部102は、分割されたパケットにパケット到着時刻を埋め込んだヘッダ、または、パケット到着時刻に相当するパケット到着時刻相当時刻を、パケット到着時刻として埋め込んだヘッダを付与する。
 <図7の記録装置による記録処理>
 次に、図8のフローチャートを参照して、図7の記録装置による記録処理について説明する。尚、図8のフローチャートにおけるステップS51,S55,S56の処理については、図2のフローチャートにおけるステップS11,S14,S15の処理と同様であるので、その説明は省略するものとする。
 すなわち、ステップS51において、パケット列が、多重分離部31によりパケット単位で分離されると、ステップS52において、パケット分割部101が、パケットを所定長のサイズに分割し、分割したパケットをパケット到着時刻付与部102に供給する。
 ステップS53において、PLL部33は、クロック参照情報に基づいて、パケット到着時刻を生成し、パケット到着時刻付与部102に供給する。
 ステップS54において、パケット到着時刻付与部102は、分割されたパケットのうち、分割前のパケットに対して先頭となる分割されたパケットに対しては、PLL部33より供給されてくるパケット到着時刻をヘッダに埋め込んで付与し、記録部34に出力する。また、パケット到着時刻付与部102は、分割されたパケットのうち、分割前のパケットの2番目以降の分割されたパケットに対しては、パケット到着時刻に対応するパケット到着時刻相当時刻を算出し、パケット到着時刻としてパケットのヘッダに埋め込んで付与し、記録部34に出力する。
 より詳細には、MPEG-2 TSパケットの場合、元々のシンタクスにパケットの到着時刻が埋め込まれたヘッダが存在しないので、パケット到着時刻付与部102は、パケット到着時刻の基準をATC(Arrival Time Clock)として、パケット到着時刻をATS(Arrival Time Stamp)として設定し、このATSからなるパケット到着時刻の情報を埋め込んだエクストラヘッダを、各パケットのペイロードの先頭に付与し、記録部34に出力する。
 このため、バッファオーバフローを回避するために分割されたパケットに対しては、先頭のパケットについては、分割前の実際に到着した時刻がパケット到着時刻として付与され、それ以降の分割されたパケットについては、パケット長に応じて、計算されるパケット到着時刻に相当するパケット到着時刻相当時刻を埋め込んだエクストラヘッダが付与される。
 一方、MMT(MPEG Media Transport)パケットである場合、パケット到着時刻の基準はUTC(Universal Time Clock)であるため、図9の最上段で示されるように、パケット到着時刻はNTP(Network Time Protocol)形式で、ヘッダ(MMTP packet header)52として予め含まれた状態で受信される。
 このような場合、パケット分割部101は、再生装置61のバッファ75のサイズに対してバッファオーバフローを回避するために必要なパケット最大長を超えるパケットが入力されるとき、入力されたパケットを分割する。図9においては、上から2段目で示されるように、パケット51がパケット51a乃至51cに3分割された場合の例が示されている。尚、分割されたパケット51aは、パケット到着時刻が埋め込まれたヘッダ52と同一のヘッダ52aが付されている。さらに、分割されたパケット51bは、ヘッダ52のパケット到着時刻から算出される、パケット到着時刻相当時刻がパケット到着時刻として埋め込まれたヘッダ53aが付され、同様に、パケット51cは、ヘッダ52のパケット到着時刻から算出される、パケット到着時刻相当時刻がパケット到着時刻として埋め込まれたヘッダ53bが付されている。
 このようにパケット51が3分割された場合、パケット到着時刻付与部102は、先頭のパケット51aには、元々のパケット到着時刻が埋め込まれたヘッダ52aとしてヘッダ(MMTP packet header)52を付与する。また、パケット到着時刻付与部102は、2番目以降のパケット51b,51cに対して、パケット到着時刻に相当するパケット到着時刻相当時刻NTP[n]'を含むヘッダ(MMTP packet header)53a,53bを付与し、分割後のパケット(MMTP packet)を生成する。
 この際、パケット到着時刻付与部102は、分割した先頭以外のパケットの到着時刻を、その分割パケットの先頭バイトのパケット到着時刻相当時刻として、PLL部33から受け取って、ヘッダに埋め込むようにしてもよいし、分割パケットのパケット長に応じてパケット到着時刻相当時刻を算出してヘッダに埋め込むようにしても良い。
 分割パケットのパケット長に応じてパケット到着時刻相当時刻を計算する場合、パケット到着時刻付与部102は、例えば、記録時の入力レートに基づいて、以下の式(2)により算出するようにしても良い。
 NTP[n]'=NTP[n]+(パケット[n]のサイズ)/(記録時の入力レート)
                           ・・・(2)
 ここで、NTP[n]'は、パケット[n]'のパケット到着時刻相当時刻であり、NTP[n]は、パケット[n]'の直前のパケット[n]のパケット到着時刻、または、パケット到着時刻相当時刻である。
 尚、図9のように分割によってヘッダが追加される場合で、かつ、そのヘッダが再生時にバッファへ入力される場合、パケット分割部101は、バッファ75に溜まり得るヘッダの合計サイズをバッファ75のサイズから減じてパケット最大長を算出する。
 パケット51が分割されない場合、パケット51に対応する図9の3段目のペイロード91およびヘッダ92で示されるように読み出され、時刻t31からバッファリングされると時刻t33において、図9の5段目の点線で示されるようにバッファ占有量が上昇する。すなわち、このようにバッファ占有量が急激に上昇するとバッファオーバフローが発生する可能性が高くなる。
 しかしながら、図9の2段目で示されるように、パケット51が、パケット51a乃至51cのように3分割されることにより、図9の4段目のヘッダ52a,53a,53bで示されるように、3つの期間に分割して処理がなされる。
 この結果、パケット51aに相当するペイロード91aおよびヘッダ92aからなる先頭のパケットの処理が、図9の5段目の一点鎖線で示されるように、時刻t31においてバッファリングが開始されると、時刻t32に以降において、バッファオーバフローする前のバッファ占有量で維持され、時刻t34において、デコードが開始されるとバッファ占有量が低下する。
 その後、図9の4段目で示されるように、時刻t35において、パケット51bに相当するペイロード91bおよびヘッダ93aからなる2番目のパケットのバッファリングが開始され、時刻t36において終了すると、図9の5段目の一点鎖線で示されるように、時刻t36乃至t37において、バッファ占有量がバッファオーバフローしない状態で維持される。
 さらに、図9の4段目で示されるように、時刻t37において、パケット51cに相当するペイロード91cおよびヘッダ93bからなる3番目のパケットのバッファリングが開始され、時刻t38において終了すると、図9の5段目の一点鎖線で示されるように、時刻t38乃至t39において、バッファ占有量がバッファオーバフローしない状態で維持される。
 つまり、このようにパケット長を分割して、パケットの送出を段階的に遅らせるようにすることで、図9の5段目における実線で示されるように、記録時におけるバッファ占有量の変化に近い状態を再現させることが可能となり、結果として、バッファオーバフローを回避することが可能となる。
 <第2の実施の形態>
 以上においては、固定されたパケット最大長でパケットを分割する例について説明してきたが、パケット毎にバッファ75とデコーダ76とにおける動作のシミュレーションを行って、バッファオーバフローする場合にのみパケットを分割するようにしてもよい。
 図10は、バッファオーバフローする場合にのみパケットを分割するようにした記録装置11の構成例を示している。尚、図7の記録装置11と同一の機能を備えた構成については、同一の符号、および同一の名称を付与しており、その説明は適宜省略するものとする。
 すなわち、図10の記録装置11において、図7の記録装置11と異なるのは、読み出しバッファシミュレーション部121を新たに設け、さらに、パケット分割部101に代えて、パケット分割部122を設けるようにした点である。
 読み出しバッファシミュレーション部121は、分離されたパケット列を順次処理するに際してバッファ75およびデコーダ76におけるデコード処理をシミュレーションにより再現し、バッファオーバフローが発生するか否かを判定する。そして、バッファオーバフローが発生する場合、読み出しバッファシミュレーション部121は、バッファオーバフローが発生しない最大パケット長を算出し、パケット分割部122に対して最大パケット長で分割するように指示する。
 パケット分割部122は、読み出しバッファシミュレーション部121より分割が指示されないときは、供給されてきた分離されたパケットをそのままパケット到着時刻付与部102に出力し、分割が指示された場合、指示と共に供給される最大パケット長で分離されたパケットを分割して、パケット到着時刻付与部102に出力する。
 <図10の記録装置による記録処理>
 次に、図11のフローチャートを参照して、図10の記録装置による記録処理について説明する。
 尚、図11におけるステップS71,S76乃至S79の処理については、図8のステップS51,S53乃至S56の処理と同様であるので、その説明は省略するものとする。
 すなわち、ステップS72において、読み出しバッファシミュレーション部121は、パケット列により順次パケット単位でデコーダ76の処理を実行し、その際のバッファ75におけるバッファ占有量をシミュレーションする。
 ステップS73において、読み出しバッファシミュレーション部121は、バッファオーバフローが発生したか否かを判定し、バッファオーバフローが発生した場合、処理は、ステップS74に進む。
 ステップS74において、読み出しバッファシミュレーション部121は、シミュレーション結果からバッファオーバフローが発生しないときのバッファ占有量の最大値に相当する最大パケット長を読み出し、パケット分割部122に供給すると共に、パケットの分割を指示する。
 ステップS75において、パケット分割部122は、読み出しバッファシミュレーション部121からの指示に基づいて、最大パケット長でパケットを分割し、パケット到着時刻付与部102に供給する。
 一方、ステップS73において、バッファオーバフローが発生しない場合、ステップS74,S75の処理はスキップされる。
 すなわち、パケット列が順次デコードされる際に、実際に、バッファ75が使用される際のバッファ占有量がシミュレーションされて、バッファオーバフローの発生が見込まれるパケットについては、パケットが分割され、バッファオーバフローの発生が見込まれない場合については、パケットが分割されない。
 結果として、バッファオーバフローが見込まれるか否かにより、動的にパケットを分割するか否かが判断されて、バッファオーバフローが発生するときにのみパケットが分割されるので、不要な分割処理に係る負荷を低減することができ、かつ、確実にバッファオーバフローを回避することが可能となる。
 また、バッファオーバフローが発生することが見込まれる場合においては、バッファオーバフローが発生しないときの最大バッファ占有量に対応する最大パケット長でパケットが分割されるので、分割処理を必要最小限にすることが可能となり、分割に係る処理負荷を低減させつつ、バッファオーバフローを効率よく確実に回避することが可能となる。
 尚、以上においては、記録装置と再生装置との例について説明してきたが、例えば、放送信号を送信するに当たって、記録装置側の処理を送信装置が実行し、再生装置側の処理を受信装置が実行するような構成からなる送信装置と受信装置との構成とするようにしてもよい。
 <ソフトウェアにより実行させる例>
 ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
 図12は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)1001を内蔵している。CPU1001にはバス1004を介して、入出力インタ-フェイス1005が接続されている。バス1004には、ROM(Read Only Memory)1002およびRAM(Random Access Memory)1003が接続されている。
 入出力インタ-フェイス1005には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部1006、処理操作画面や処理結果の画像を表示デバイスに出力する出力部1007、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部1008、LAN(Local Area Network)アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部1009が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどのリムーバブルメディア1011に対してデータを読み書きするドライブ1010が接続されている。
 CPU1001は、ROM1002に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア1011ら読み出されて記憶部1008にインストールされ、記憶部1008からRAM1003にロードされたプログラムに従って各種の処理を実行する。RAM1003にはまた、CPU1001が各種の処理を実行する上において必要なデータなども適宜記憶される。
 以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータでは、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 尚、本技術は、以下のような構成も取ることができる。
<1> パケット列より各パケットを分離する多重分離部と、
 前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
 前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
 前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部と
 を含む記録装置。
<2> 前記パケット到着時刻がヘッダに埋め込まれている、前記分割パケットを記録媒体に記録する記録部をさらに含み、
 前記所定のサイズは、前記記録媒体に記録された前記分割パケットを再生する再生装置が、受信視聴時と同じデータバッファサイズにバッファオーバフローを回避するために付加した付加バッファのサイズに対応するサイズである
 <1>に記載の記録装置。
<3> 前記再生装置により前記分割パケットが再生される際の読み込み最大レートがRpであり、前記分割パケットが記録される際の読み込み最大レートがRrであるとき、前記所定のサイズは、((Rp/Rp-Rr)×(前記バッファのサイズ))とされる
 <2>に記載の記録装置。
<4> 前記多重分離部は、パケット列より各パケットを分離すると共に、前記各パケットの到着タイミングを示す情報を出力し、
 前記パケット到着時刻発生部は、
  前記各パケットの到着タイミングを示す情報に基づいて、前記分割パケットが分割される前の前記パケット毎のパケット到着時刻を発生し、
  前記分割パケットのうち、前記パケットの先頭となる分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻を、そのまま前記ヘッダに埋め込み、
  前記分割パケットのうち、前記パケットの先頭から2番目以降の分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻から、順次分割パケットのサイズと記録時の入力レートに基づいて算出されるパケット到着時刻相当時刻を、前記パケット到着時刻として前記ヘッダに埋め込む
 <1>乃至<3>のいずれかに記載の記録装置。
<5> 前記パケット到着時刻付与部は、前記分割パケットのそれぞれに対して、エクストラヘッダを設定し、前記エクストラヘッダに、前記時刻発生部により発生されたパケット到着時刻としてATS(Arrival Time Stamp)を埋め込む
 <1>乃至<4>のいずれかに記載の記録装置。
<6> MMT(MPEG Media Transport)の場合、前記パケット到着時刻付与部は、前記分割パケットのそれぞれのMMTP packet headerからなるヘッダに、前記時刻発生部により発生されたパケット到着時刻をNTP(Network Time Protocol)形式で埋め込む
 <1>乃至<5>のいずれかに記載の記録装置。
<7> 前記記録媒体に記録された前記分割パケットを必要に応じて順次バッファリングするバッファと、前記バッファにバッファリングされた分割パケット列を順次デコードするデコード部を備えた再生装置の動作をシミュレーションし、前記シミュレーションにおいてバッファオーバフローする場合、前記バッファ分割部に前記パケットを前記分割パケットに分割するように指示するシミュレーション部をさらに含み、
 前記バッファ分割部は、前記シミュレーション部より前記パケットを前記分割パケットに分割するように指示された場合にのみ、前記パケットを前記分割パケットに分割する
 <1>乃至<6>のいずれかに記載の記録装置。
<8> 前記シミュレーション部は、前記シミュレーションにおいてバッファオーバフローする場合、前記シミュレーションの結果から、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割するように指示し、
 前記バッファ分割部は、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割する
 <7>に記載の記録装置。
<9> パケット列より各パケットを分離し、
 前記パケットを所定のサイズの分割パケットに分割し、
 前記分割パケット毎のパケット到着時刻を発生し、
 発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込む
 ステップを含む記録方法。
<10> パケット列より各パケットを分離する多重分離部と、
 前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
 前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
 前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部としてコンピュータを機能させる
 プログラム。
 11 記録装置, 31 多重分離部, 32 パケット到着時刻付与部, 33 PLL部, 34 記録部, 35 記録媒体, 61 再生装置, 71 記録媒体, 72 パケット読み出し部, 73 ATCカウンタ, 74 多重分離部, 75,75-1乃至75-n バッファ, 76,76-1乃至76-n デコーダ, 77 表示部, 101 パケット分割部, 102 パケット到着時刻付与部, 121 読み出しバッファシミュレーション部, 122 パケット分割部

Claims (10)

  1.  パケット列より各パケットを分離する多重分離部と、
     前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
     前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
     前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部と
     を含む記録装置。
  2.  前記パケット到着時刻がヘッダに埋め込まれている、前記分割パケットを記録媒体に記録する記録部をさらに含み、
     前記所定のサイズは、前記記録媒体に記録された前記分割パケットを再生する再生装置が、受信視聴時と同じデータバッファサイズにバッファオーバフローを回避するために付加した付加バッファのサイズに対応するサイズである
     請求項1に記載の記録装置。
  3.  前記再生装置により前記分割パケットが再生される際の読み込み最大レートがRpであり、前記分割パケットが記録される際の読み込み最大レートがRrであるとき、前記所定のサイズは、((Rp/Rp-Rr)×(前記バッファのサイズ))とされる
     請求項2に記載の記録装置。
  4.  前記多重分離部は、パケット列より各パケットを分離すると共に、前記各パケットの到着タイミングを示す情報を出力し、
     前記パケット到着時刻発生部は、
      前記各パケットの到着タイミングを示す情報に基づいて、前記分割パケットが分割される前の前記パケット毎のパケット到着時刻を発生し、
      前記分割パケットのうち、前記パケットの先頭となる分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻を、そのまま前記ヘッダに埋め込み、
      前記分割パケットのうち、前記パケットの先頭から2番目以降の分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻から、順次分割パケットのサイズと記録時の入力レートに基づいて算出されるパケット到着時刻相当時刻を、前記パケット到着時刻として前記ヘッダに埋め込む
     請求項1に記載の記録装置。
  5.  前記パケット到着時刻付与部は、前記分割パケットのそれぞれに対して、エクストラヘッダを設定し、前記エクストラヘッダに、前記時刻発生部により発生されたパケット到着時刻としてATS(Arrival Time Stamp)を埋め込む
     請求項1に記載の記録装置。
  6.  MMT(MPEG Media Transport)の場合、前記パケット到着時刻付与部は、前記分割パケットのそれぞれのMMTP packet headerからなるヘッダに、前記時刻発生部により発生されたパケット到着時刻をNTP(Network Time Protocol)形式で埋め込む
     請求項1に記載の記録装置。
  7.  前記記録媒体に記録された前記分割パケットを必要に応じて順次バッファリングするバッファと、前記バッファにバッファリングされた分割パケット列を順次デコードするデコード部を備えた再生装置の動作をシミュレーションし、前記シミュレーションにおいてバッファオーバフローする場合、前記バッファ分割部に前記パケットを前記分割パケットに分割するように指示するシミュレーション部をさらに含み、
     前記バッファ分割部は、前記シミュレーション部より前記パケットを前記分割パケットに分割するように指示された場合にのみ、前記パケットを前記分割パケットに分割する
     請求項1に記載の記録装置。
  8.  前記シミュレーション部は、前記シミュレーションにおいてバッファオーバフローする場合、前記シミュレーションの結果から、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割するように指示し、
     前記バッファ分割部は、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割する
     請求項7に記載の記録装置。
  9.  パケット列より各パケットを分離し、
     前記パケットを所定のサイズの分割パケットに分割し、
     前記分割パケット毎のパケット到着時刻を発生し、
     発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込む
     ステップを含む記録方法。
  10.  パケット列より各パケットを分離する多重分離部と、
     前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
     前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
     前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部としてコンピュータを機能させる
     プログラム。
PCT/JP2016/073711 2015-08-26 2016-08-12 記録装置、および記録方法、並びにプログラム WO2017033764A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017536744A JP6868775B2 (ja) 2015-08-26 2016-08-12 記録装置、および記録方法、並びにプログラム
US15/748,292 US10750233B2 (en) 2015-08-26 2016-08-12 Recording apparatus, recording method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015166459 2015-08-26
JP2015-166459 2015-08-26

Publications (1)

Publication Number Publication Date
WO2017033764A1 true WO2017033764A1 (ja) 2017-03-02

Family

ID=58101249

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/073711 WO2017033764A1 (ja) 2015-08-26 2016-08-12 記録装置、および記録方法、並びにプログラム

Country Status (3)

Country Link
US (1) US10750233B2 (ja)
JP (1) JP6868775B2 (ja)
WO (1) WO2017033764A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110400581A (zh) * 2019-07-26 2019-11-01 广州市迪声音响有限公司 播放器的定时播放音频文件的系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001285234A (ja) * 2000-04-04 2001-10-12 Sony Corp データ多重化装置およびデータ多重化方法、並びに記録媒体
JP2002141917A (ja) * 2000-08-22 2002-05-17 Matsushita Electric Ind Co Ltd 送信装置、ソースパケット生成装置、パケット形態決定方法、媒体及び情報集合体
WO2005099258A1 (ja) * 2004-04-07 2005-10-20 Matsushita Electric Industrial Co., Ltd. 高速変換可能なストリームを記録した情報記録媒体並びにその記録装置及び記録方法
JP2006025372A (ja) * 2004-07-09 2006-01-26 Sanyo Electric Co Ltd 通信方法ならびにそれを利用した無線装置および通信システム
JP2010035198A (ja) * 2009-10-05 2010-02-12 Mitsubishi Electric Corp 記録再生装置および記録再生方法
JP2015023574A (ja) * 2013-07-22 2015-02-02 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 蓄積方法、再生方法、蓄積装置、および再生装置
JP2015149680A (ja) * 2014-02-07 2015-08-20 日本放送協会 送信装置及び受信装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60039828D1 (de) * 1999-03-01 2008-09-25 Koninkl Philips Electronics Nv Verfahren zum speichern eines echtzeitdatenstromes auf einen plattenförmigen aufzeichnungsträger
US7106946B1 (en) 1999-09-28 2006-09-12 Sony Corporation Transport stream processing device, and associated methodology of generating and aligning source data packets in a physical data structure
US7373079B2 (en) * 2001-11-30 2008-05-13 Matsushita Electric Industrial Co., Ltd. Method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium
JP2005109829A (ja) * 2003-09-30 2005-04-21 Toshiba Corp トランスポートストリーム記録編集装置及び記録編集方法
US8391672B2 (en) * 2004-02-06 2013-03-05 Panasonic Corporation Recording medium, reproduction device, program, and reproduction method
US7778521B2 (en) * 2004-04-16 2010-08-17 Panasonic Corporation Recording medium, reproduction device, program
JP4591405B2 (ja) * 2006-05-10 2010-12-01 ソニー株式会社 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
KR100826911B1 (ko) * 2006-12-08 2008-05-06 한국전자통신연구원 광-동축 혼합망에서 케이블 모뎀의 하향 패킷 처리 방법 및장치
US8811411B2 (en) * 2008-12-24 2014-08-19 Entropic Communications, Inc. Packet aggregation and fragmentation at layer-2 over a managed network
EP2385644A1 (en) * 2009-01-30 2011-11-09 Panasonic Corporation Wireless transmission apparatus, wireless reception apparatus, transmission data formation method, and data reception method
KR20130078643A (ko) * 2011-12-30 2013-07-10 한국전자통신연구원 Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 mmt 제어 계층 시그널링을 이용한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001285234A (ja) * 2000-04-04 2001-10-12 Sony Corp データ多重化装置およびデータ多重化方法、並びに記録媒体
JP2002141917A (ja) * 2000-08-22 2002-05-17 Matsushita Electric Ind Co Ltd 送信装置、ソースパケット生成装置、パケット形態決定方法、媒体及び情報集合体
WO2005099258A1 (ja) * 2004-04-07 2005-10-20 Matsushita Electric Industrial Co., Ltd. 高速変換可能なストリームを記録した情報記録媒体並びにその記録装置及び記録方法
JP2006025372A (ja) * 2004-07-09 2006-01-26 Sanyo Electric Co Ltd 通信方法ならびにそれを利用した無線装置および通信システム
JP2010035198A (ja) * 2009-10-05 2010-02-12 Mitsubishi Electric Corp 記録再生装置および記録再生方法
JP2015023574A (ja) * 2013-07-22 2015-02-02 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 蓄積方法、再生方法、蓄積装置、および再生装置
JP2015149680A (ja) * 2014-02-07 2015-08-20 日本放送協会 送信装置及び受信装置

Also Published As

Publication number Publication date
US10750233B2 (en) 2020-08-18
JPWO2017033764A1 (ja) 2018-06-07
US20180220182A1 (en) 2018-08-02
JP6868775B2 (ja) 2021-05-12

Similar Documents

Publication Publication Date Title
US8233780B2 (en) Reproducing apparatus and method, and recording medium
US20070109444A1 (en) AV synchronization system
US20070211718A1 (en) Method of and apparatus for converting data stream format and method of and apparatus for recording data stream using the method and apparatus
JP3438223B2 (ja) 多重化装置および多重化方法、並びに伝送装置および伝送方法
JP4650112B2 (ja) 記録出力装置、記録出力方法及び記録装置
KR100490403B1 (ko) 오디오 스트림의 버퍼링 제어 방법 및 그 장치
US20080198921A1 (en) Method and apparatus for reproducing digital broadcasting
JP2006332943A (ja) ストリーム制御装置、ストリーム再生方法、映像記録再生システム
JP6868775B2 (ja) 記録装置、および記録方法、並びにプログラム
JP4983147B2 (ja) 多重化装置、多重化方法および多重化プログラム
WO2017082059A1 (ja) 情報処理装置、情報処理方法、およびプログラム
CA2490879C (en) Reproducing apparatus and method, and recording medium
US9420278B2 (en) Audiovisual content generation method for multistage high-speed reproduction
US8428422B2 (en) Moving picture multiplexing apparatus, audio and video recording apparatus and moving picture multiplexing method
WO2017014054A1 (ja) 送信装置、および送信方法、受信装置、および受信方法、並びにプログラム
US20090323719A1 (en) Methods and apparatus for transforming first transport stream of first format into second transport stream of second format by emulating arrival time stamp information
CA2725179C (en) Reproducing apparatus and method, and recording medium
US10178040B2 (en) Data processing device, receiving device, data processing method, and program
JP2001119668A (ja) 記録装置
JP2020145585A (ja) 同期化装置、同期化方法及びプログラム
JP2013098721A (ja) トランスポートストリーム記録装置及びトランスポートストリーム記録方法
JP2010130140A (ja) 音声再生装置、及び音声再生方法
JP2004158921A (ja) データ送信装置及びデータ受信装置
JP2006054728A (ja) データ復号装置及びデータ復号方法、並びにデータ再生装置及びデータ再生方法
JP2006211577A (ja) デジタル放送蓄積再生装置およびデジタル放送蓄積再生方法

Legal Events

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

Ref document number: 16839111

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017536744

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15748292

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16839111

Country of ref document: EP

Kind code of ref document: A1