This application is based upon and claims the benefit of priority from the Japanese Patent Application No. 2010-52371 filed on Mar. 9, 2010; the entire contents of which are incorporated herein by reference.
An embodiment described herein relates generally to a synchronization data detection apparatus, a synchronization data detection method, and a recording medium.
Conventionally, contents data to be received by a digital broadcast receiver is divided into a plurality of packets and transmitted. For example, a transport stream (hereunder, may be referred to as “TS”) that complies with the MPEG 2 (Moving Picture Expert Group 2) standard is constituted by a plurality of packets that each have a length of 188 bytes. For every 188 bytes, a synchronization byte, more specifically, a bit string of “0x47”, is included in the header portion of each packet. A digital broadcast receiver is configured to be able to identify the respective packets by detecting the synchronization bytes, and perform decryption processing of the data.
For example, in the case of an MPEG2 TS, a “0x47” (hexadecimal) byte is defined as synchronization data. Accordingly, for example, as disclosed in Japanese Patent Application Laid-Open Publication No. 11-73737, the digital broadcast receiver is configured to perform decryption processing of TS data after it is confirmed that “0x47” data has appeared in received TS data at intervals of 188 bytes a predetermined number of times or more.
However, since it is determined whether or not “0x47” data has been detected a predetermined number of times at intervals of 188 bytes, if byte data of the same bit string as “0x47” that is defined as the synchronization byte in an MPEG2 TS happens to be included in the TS data, a case may occur in which it is erroneously determined that a synchronization byte has been detected.
According to the conventional method described above, byte data is read out in sequence from the start of the TS data and it is determined whether or not the byte data matches the bit string “0x47”. When a given byte is a bit string “0x47”, it is determined whether or not there is also a bit string of “0x47” at an address located 188 bytes ahead the location of the address of the aforementioned byte with the bit string “0x47”. More specifically, unless a “0x47” byte appears a predetermined number of times at intervals of 188 bytes, a synchronization byte detection circuit determines that there are no synchronization bytes in the TS data that is the object of the detection processing.
Therefore, if a given byte is erroneously determined to be a bit string of “0x47”, even if a true synchronization byte exists between that given byte and a byte that is 188 bytes ahead the given byte, the data of the true synchronization byte will be skipped, that is, ignored, and will not be used in determining the existence of synchronization bytes.
Thereafter, although the synchronization byte detection circuit starts detection of synchronization bytes again, the TS data that has been previously used for determining the existence of synchronization bytes is not an object of the detection processing. More specifically, even if there is a packet that includes a true synchronization byte in the TS data previously used for determining the existence of synchronization bytes, the packet is discarded.
Although the contents data described above is data that has been broadcast, even in the case of contents data recorded on a storage medium or data delivered via the Internet or the like, the synchronization byte detection circuit likewise may discard a packet even if the packet includes a true synchronization byte between bytes at intervals of 188 bytes that have been previously used to determine the existence of synchronization bytes.
As described above, conventionally, even if a packet includes a true synchronization byte in TS data that has been used in a determination for detecting synchronization bytes, the packet is not used in subsequent detection processing of synchronization bytes.
According to an embodiment, a synchronization data detection apparatus can be provided that includes: a detection portion configured to sequentially read in transport stream data including predetermined synchronization data from a memory, and detect the predetermined synchronization data; a counting portion configured to count a number of times the detection portion detects the predetermined synchronization data; and a control portion configured to cause the detection portion to read in the transport stream data at predetermined intervals after initial predetermined synchronization data is detected by the detection portion, and when the detection portion does not detect the predetermined synchronization data a predetermined number of times in succession at the predetermined intervals, to cause the detection portion to read in data from next data after the initial predetermined synchronization data of the transport stream data.
An embodiment is described hereunder with reference to the drawings.
First, the configuration of a digital broadcast receiver according to the embodiment is described based on
A digital broadcast receiver 1 illustrated in
A MPEG decoder 16 is constituted by the synchronization byte detection portion 5, the system decoder 6, the host processor 7, the video decoder 9, the audio decoder 10, and the data bus 11. Note that the synchronization byte detection portion 5 as a synchronization data detection apparatus need not be included in the MPEG decoder 16, but may be provided at an input stage to the MPEG decoder 16, instead.
As shown in
The system decoder 6 selects TS packets that satisfy a filter condition that is previously set from the host processor 7, for example, TS packets that have a set packet identifier (PID), extracts necessary data (information) from the packets, and outputs (or writes) the data to a buffer in the memory 12 that is previously set from the host processor 7 via the data bus 11. The buffer is set as a buffer region inside the memory 12 such as a DRAM. The data is sorted into video data and audio data by the system decoder 6.
The video data is output to a video STD buffer inside the memory 12. The audio data is output to an audio STD buffer inside the memory 12. The video data and audio data that have been sorted by the system decoder 6 are supplied to the video decoder 9 and the audio decoder 10, respectively, through the dedicated buffers provided in the memory 12.
The video decoder 9 decodes the video data supplied (or read) from the memory 12 in conformity with a vertical synchronizing signal (hereunder, referred to as “VSYNC”) supplied from the playback synchronization control portion 8, and outputs video information obtained as a result to the BEP 13. The BEP 13 subjects the video information to various kinds of image processing such as color correction, and displays the resulting video information on the display portion 14. The display portion 14 corresponds to, for example, any one of various display devices such as an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), and a CRT (Cathode Ray Tube).
The audio decoder 10 decodes the audio data supplied (or read) from the memory 12, and performs audio output of the audio information obtained as a result to the speaker 15.
The demodulated TS is input to the synchronization byte detection portion 5 as a synchronization data detection apparatus. The synchronization byte detection portion 5 detects synchronization bytes from the TS data, and supplies the detection result to the system decoder 6 together with the TS data. According to the present embodiment, a case is described in which the synchronization byte “0x47” of TS data according to MPEG 2 is taken as an example of synchronization data.
In this connection, the synchronization byte detection portion 5 may be provided inside the system decoder 6.
First, the flow of the overall detection operation of the synchronization byte detection portion 5 according to the present embodiment is described.
As shown in
When it is detected that TS data is a predetermined synchronization byte, in this case “0x47” data, while sequentially reading out the TS data, it is determined whether or not there is “0x47” data at predetermined intervals thereafter, more specifically, at predetermined intervals of 188 bytes.
According to
According to
However, according to
According to the second synchronization byte detection processing, since the data DT2 is “0x47” data, thereafter the synchronization byte detection portion 5 determines whether the data DT3 that is 188 bytes after the data DT2 is “0x47” data. According to
However, according to the second synchronization byte detection processing also, the next data DT5 that is a further 188 bytes after the data DT4 is not “0x47” data. Hence, since the synchronization byte detection portion 5 does not detect “0x47” data at predetermined intervals for five times or more in succession, it determines that the “0x47” data detected up to this time are not synchronization bytes. Therefore, the synchronization byte detection portion 5 again executes detection processing for synchronization bytes in a similar manner from the next data after the data DT2 that has been initially detected in the second synchronization byte detection processing. As shown by an arrow A2 in
According to the third synchronization byte detection processing, since a data DT11 is “0x47” data, thereafter the synchronization byte detection portion 5 determines whether data DT12 that is 188 bytes after the data DT11 is “0x47” data. According to
Similarly thereafter, the synchronization byte detection portion 5 performs synchronization byte detection processing and detects that, in the example shown in
More specifically, in the first and second synchronization byte detection processing, the data DT1 at address RA(DT1), the data DT2 at address RA(DT2), the data DT3 at address RA(DT3), and the data DT4 at address RA(DT4) are not predetermined synchronization bytes included in each packet, and are different data thereto. These data are separate data FB whose value happens to be “0x47”.
However, in the third synchronization byte detection processing of the data, the data DT11 at address RA(DT11), the data DT12 at address RA(DT12), the data DT13 at address RA(DT13), the data DT14 at address RA(DT4), and the data DT15 at address RA(DT15) are true synchronization bytes SB.
As described above, according to the present embodiment, synchronization byte detection processing is performed in which TS data that is conventionally skipped is taken as an object of the synchronization byte detection processing, and thus synchronization byte detection can be performed in which packets are not omitted.
Further, even when successive synchronization bytes are no longer detected, detection of synchronization bytes is performed without omitting packets.
In this case, the synchronization byte detection portion 5 executes detection processing for synchronization bytes from the next data after the data DT21 that was the last“0x47” data. As shown by an arrow A11 in
As a result, the synchronization byte detection portion 5 detects that the data at an address RA(DT31) is “0x47”, and thereafter, similarly to the example described in
As described above, conventionally when true synchronization bytes are no longer detected after a true synchronization byte has been detected, detection of synchronization bytes is carried out using the TS data thereafter. However, according to the present embodiment described above, when true synchronization bytes are no longer detected after a true synchronization byte has been detected, synchronization byte detection processing is carried out from the next data after the last synchronization byte. Hence, as shown in
In this connection, in the example illustrated in
Next, the configuration of the synchronization byte detection portion 5 is described.
Restored TS data that has been subjected to demodulation processing is input to the RAM 21 from the demodulator 4.
The 0x47 detector 22 is a circuit that detects whether byte data read out from the RAM 21 is “0x47” data. When the 0x47 detector 22 detects that read-out byte data is “0x47” data, the 0x47 detector 22 outputs a detection signal DS with a value “1”. The 0x47 detector 22 constitutes a detection portion that sequentially reads in TS data in predetermined units from the RAM 21 that is a memory that stores TS data including predetermined synchronization data, and detects the predetermined synchronization data.
The initial detection portion 23 is a circuit that detects that “0x47” data has been initially detected after the start of detection of synchronization bytes. When a detection of “0x47” data is an initial detection, the initial detection portion 23 outputs an initial detection signal DS1.
The determination instruction portion 24 is a circuit that outputs instruction signals SS1 and SS2 in accordance with whether or not “0x47” data has been detected a predetermined number of times. The determination instruction portion 24 also outputs a control signal SS3 to the adder 32.
The instruction signal SS1 is “1” when a comparison result signal CS that is described later is “0” and the detection signal DS is not output. Further, the instruction signal SS1 is “0” when the comparison result signal CS is “1” and the detection signal DS is not output, i.e. when the detection signal DS is “0”. The determination instruction portion 24 outputs the instruction signal SS1 in this manner in accordance with the value of the comparison result signal CS and the detection signal DS.
The instruction signal SS2 is a latch timing signal for the latch 29.
The counter 25 is a counter that counts the number of times “0x47” data is detected. The counter 25 constitutes a number-of-detections counting portion that counts the number of times the 0x47 detector 22 detects predetermined synchronization data.
The comparator 26 is a comparison circuit for determining whether or not a count value CN of the counter 25 has exceeded a preset setting value CNS. When the count value CN exceeds the setting value CNS, the comparator 26 outputs the comparison result signal CS with a value “1”. In this case, the setting value CNS is “4”. Accordingly, the comparator 26 outputs the comparison result signal CS when the count value CN is 5 or more.
The latch 27 is a circuit that holds a read address in the RAM 21 of byte data when “0x47” data is initially detected, based on the initial detection signal DS1 from the initial detection portion 23. The latch 27 constitutes an address holding portion that holds an address in the RAM 21 of initially detected synchronization data.
The latch 28 is a circuit that holds a read address in the RAM 21 when “0x47” data is detected, based on the detection signal DS from the 0x47 detector 22. The latch 28 constitutes an address holding portion that holds an address in the RAM 21 of the latest synchronization data when the 0x47 detector 22 detects predetermined synchronization data.
The latch 29 is a circuit for holding an address RA and supplying the read address to the RAM 21 via the adder 34.
The selector 30 is a circuit that selects and outputs an address being held in either one of the latch 27 and the latch 28 based on the instruction signal SS1 from the determination instruction portion 24. When the instruction signal SS1 is “1” the selector 30 selects and outputs the value of the latch 27, and when the instruction signal SS1 is “0” the selector 30 selects and outputs the value of the latch 28.
The selector 31 is a circuit that selects and outputs either one of “1” and “188” based on the initial detection signal DS1 from the initial detection portion 23. The selector 31 is a selecting portion that selects either one of “1” and “188” as a value corresponding to a predetermined interval. The selector 31 constitutes a selecting portion that selects and outputs “1” until the initial detection portion 23 initially detects predetermined synchronization data, and selects and outputs a “value corresponding to a predetermined interval” after the initial detection portion 23 has initially detected the predetermined synchronization data.
The adder 32 is a circuit that adds “1” to an address outputted from the selector 30 and outputs the resulting value to the latch 29 in accordance with the control signal SS3.
The adder 33 is a circuit into which a predetermined initial value is input, and is also a circuit that holds data and adds “1” or “188” as the output of the selector 31 to the held data and outputs the resulting value.
The adder 34 is a circuit that adds the output of the latch 29 to the output of the adder 33 and outputs the result.
The data output control portion 35 is a circuit that, based on the comparison result signal CS of the comparator 26, outputs a read address RAa for data output to the RAM 21, acquires TS data from the RAM 21, and outputs the TS data. The outputted TS data is decoded at the system decoder 6.
Next, the operations of the synchronization byte detection portion 5 shown in
When reception of digital broadcasting begins, demodulated TS data is input to the synchronization byte detection portion 5 from the demodulator 4. Each of the latches 27, 28, and 29 and the counter 25 is initialized by input of an initialization signal CLR. As shown in
Since the TS data is sequentially stored in the RAM 21, when a predetermined amount of TS data is stored in the RAM 21, the adder 33 outputs an initial value, for example “0”. At the adder 34, a value obtained by adding “0” to the output “1” thereof is output to the RAM 21 as an address RA(1) as a read address.
At a predetermined timing, the address RA(1) is input to the RAM 21, and the RAM 21 outputs data of 1 byte that corresponds to the read address RA to the 0x47 detector 22.
As a result, TS data at the address RA(1) is read out, and the 0x47 detector 22 determines whether or not the inputted TS data is “0x47”. If the inputted TS data is not “0x47”, the 0x47 detector 22 does not output anything.
The above described operation is repeated until the 0x47 detector 22 detects “0x47” data. More specifically, the read address RA is incremented by “1” each time as the result of adding the output “1” from the selector 31 to data held in the latch 33, and supplying a value obtained by that addition to the RAM 21. The respective data at the addresses RA(2), RA(3) . . . is repeatedly read out from the RAM 21 until “0x47” data is read out.
When the inputted data is “0x47”, the 0x47 detector 22 outputs the detection signal DS with a value “1” to the initial detection portion 23, the counter 25, and the latch 28. Since the outputted detection signal DS is the first detection signal DS, the count value of the counter 25 changes to “1”. When the initial “0x47” is detected, thereafter processing starts that determines whether or not there is “0x47” data at regular intervals of 188 bytes.
The latch 28 holds the address RA at the time the RAM 21 outputs “0x47” data. According to the example shown in
Since the 0x47 detector 22 outputs the detection signal DS when the data from the RAM 21 is “0x47”, the initial detection portion 23 determines whether the detection signal DS from the 0x47 detector 22 is the first signal since starting the synchronization byte detection. When the detection signal DS from the 0x47 detector 22 is the first detection signal DS, the initial detection portion 23 outputs the initial detection signal DS1 to the determination instruction portion 24, the latch 27 and the selector 31.
Based on input of the initial detection signal DS1, the latch 27 holds address data for the “0x47” data that the RAM 21 has initially output. More specifically, when the first detection signal DS is output, the initial detection signal DS1 is supplied to the latch 27, and the latch 27 latches the address at the time when the initial “0x47” data is detected. According to the example shown in
Based on input of the comparison result signal CS, the detection signal DS, and the initial detection signal DS1, the determination instruction portion 24 outputs the instruction signal SS1 as a selection signal to the selector 30 and outputs the instruction signal SS2 as a hold signal to the latch 29. At this time, the instruction signal SS1 is “0”, and the instruction signal SS2 as a hold signal is “1”. Further, at this time, based on the control signal SS3, the adder 32 outputs the output of the latch 28 to the latch 29 without adding “1” thereto. Based on the instruction signal SS2 from the determination instruction portion 24, the latch 29 holds and outputs the output of the latch 28.
The selector 31 selects and outputs “188” based on the initial detection signal DS1 from the initial detection portion 23.
As a result, the adder 34 adds the “188” from the selector 31 to the output of the latch 29, and outputs the value obtained by that addition to the RAM 21 as the read address RA. In the example illustrated in
Next, upon detecting “0x47” data, the 0x47 detector 22 outputs the detection signal DS, and the detection signal DS is outputted to the initial detection portion 23, the counter 25, and the latch 28.
Since the detection signal DS is not the first detection signal, the initial detection portion 23 does not output the initial detection signal DS1.
Because the detection signal DS is the second detection signal DS, the count value of the counter 25 changes to “2”.
The latch 28 holds the address RA at the time when the RAM 21 outputted the “0x47” data. According to the example shown in
According to the example shown in
However, in the example shown in
Upon input of the instruction signal SS1 with the value “1”, the selector 30 selects the output of the latch 27 (that is, the first address RA(DT1) at which “0x47” is detected), and outputs the selected output to the adder 32. Based on the control signal SS3, the adder 32 adds “1” to the output from the selector 30, and outputs the resulting value to the latch 29. Based on the instruction signal SS2, the latch 29 latches and outputs the output of the adder 32.
In this case, the adder 34 adds the initial value “0” to the output of the latch 29, and supplies a value obtained by that addition to the RAM 21 as a read address. In the example shown in
As described above, the determination instruction portion 24 constitutes a control portion that, after the 0x47 detector 22 has detected the initial predetermined synchronization data, causes the 0x47 detector 22 to read in TS data at predetermined intervals, and when the 0x47 detector 22 does not detect the predetermined synchronization data a predetermined number of times in succession at the predetermined intervals, causes the 0x47 detector 22 to read in TS data from the next data after the initial predetermined synchronization data. The control portion is constituted by the circuit illustrated in
The operations thereafter are the same as the above described operations with respect to the data DT1 to DT4. Subsequently, when “0x47” data is detected, second processing is started that determines whether or not “0x47” data exists at intervals of 188 bytes.
According to the example shown in
The operations thereafter are the same as the above described operations with respect to the data DT1 to DT4. Subsequently, when “0x47” data is detected, third processing is started that determines whether or not “0x47” data exists at intervals of 188 bytes. As shown in
The data output control portion 35 can receive the comparison result signal CS with the value “1”, output a read address RAa to the RAM 21, and acquire TS data from the RAM 21.
The data output control portion 35, for example, at a timing at which the comparison result signal CS with the value “1” is received, generates and outputs a read address RAa so as to read out TS data starting from the “0x47” data that is five “0x47” data items before the data DT15, from the TS data that has been read out. The data output control portion 35 reads out TS data consecutively from the read address RAa, and outputs the TS data to the system decoder 6.
In this connection, the synchronization byte detection portion 5 continues its operations even after the comparator 26 has output the comparison result signal CS with the value “1”. The synchronization byte detection portion 5 determines whether or not “0x47” data appears at intervals of 188 bytes.
Further, after the comparator 26 has output the comparison result signal CS with the value “1”, if data at intervals of 188 bytes is no longer “0x47” data, the 0x47 detector 22 does not output the detection signal DS with the value “1”. When a detection signal DS with a value “0” is input, since the comparison result signal CS is “1”, the determination instruction portion 24 outputs the instruction signal SS1 with a value “0” to the selector 30.
Upon receiving the instruction signal SS1 with the value “0”, the selector 30 selects the output of the latch 28, and outputs the output of the latch 28 to the adder 32. According to the example shown in
As described above, the determination instruction portion 24 constitutes a control portion that, when the predetermined synchronization data is not detected at a predetermined interval after the predetermined synchronization data has been detected a predetermined number of times, instructs the synchronization data detection portion to sequentially read in transport stream data from the position of the next transport stream data after the predetermined synchronization data that was last detected, and detect the existence or non-existence of the predetermined synchronization data.
Further, the counter 25 and the latches 27 and 28 are cleared. Although the operations thereafter are the same as the above described operations, since detection of “0x47” data is carried out from the next address after the address at which “0x47” data was last detected, as shown in
Note that the synchronization byte detection portion 5 can be implemented with a software program (hereunder, referred to as “program”). When implementing the synchronization byte detection portion 5 with a program, the synchronization byte detection portion 5 is constituted by the host processor 7 and the memory 12.
When TS data is output from the demodulator 4, the host processor 7 temporarily stores the TS data in sequence in a predetermined storage region R3 of the memory 12.
When a predetermined amount or more of the TS data is stored, the processing shown in
If the TS data that is read out is not “0x47” data (“No” in S2), the CPU 7 determines whether “0x47” has not been detected up to that time (S3). If “0x47” has not been detected (“Yes” in S3), the CPU 7 increments the read address RA (S4), and the processing returns to S1.
In contrast, if the TS data that is read out is “0x47” data (“Yes” in S2), the CPU 7 determines whether or not this is the first detection of “0x47” data (S5). S5 constitutes an initial detection portion that detects whether the predetermined synchronization data is detected for the first time.
When this is the first detection of the “0x47” data (“Yes” in S5), the CPU 7 writes the address of the detected “0x47” data, that is, the read address RA, in a storage region ADF of a predetermined first address in the memory 12 (S6). The storage region ADF constitutes an address holding portion that holds an address in the memory of the initially detected synchronization data. Further, the CPU 7 writes the read address RA into a storage region ADL of a predetermined second address in the memory 12 (S7).
As illustrated in
Further, when detection of “0x47” data is not the first detection (“No” in S5), the CPU 7 writes the address of the detected “0x47” data, that is, the read address RA, in the storage region ADL of a predetermined second address in the memory 12 (S7). The storage region ADL constitutes an address holding portion that holds the address in the memory of the most recent synchronization data when the predetermined synchronization data has been detected.
The CPU 7 increments the counter value (S8). Since the counter value has been initially cleared, the counter value of the storage region CNT becomes “1” at the time of the first detection. S8 constitutes a number-of-detections counting portion that, when the predetermined synchronization data is successively detected at predetermined intervals, counts the number of detections of the predetermined synchronization data from the time when the predetermined synchronization data is first detected.
The CPU 7 determines whether or not the counter value of the storage region CNT is 4 or less (S9). If the counter value is 4 or less (“No” in S9), the CPU 7 causes the read address RA to jump to an address that is “188” bytes forward thereof (S10). More specifically, in S10, the read address RA changes to an address that is 188 bytes ahead of the current read address, and the processing returns to S1.
When the counter value is 5 or more (“Yes” in S9), the CPU 7 reads out TS data and causes the system decoder 6 to execute data output control processing (S11). The processing then moves to S10.
If the TS data that is read out is not “0x47” data (“No” in S2) and “0x47” has been detected before that time (“No” in S3), the CPU 7 determines whether or not the counter value is 4 or less (S12).
When the counter value is less than or equal to 4 that is a predetermined number of times (“Yes” in S12), the CPU 7 reads the address of the storage region ADF (that is, the address at which “0x47” data was first read out) (S13).
Further, when the counter value is greater than or equal to 5 that is a predetermined number of times (“No” in S12), the CPU 7 reads the address of the storage region ADL (that is, the address at which “0x47” data was last read out) (S14).
Next, the CPU 7 clears the data of the storage regions ADF and ADL (S15), and increments the data that is read in S13 or S14 (S4). The processing then returns to S1.
S3, S12, S13, and S4 constitute a determination instruction portion that determines whether or not predetermined synchronization data has been detected a predetermined number of times, and when the predetermined synchronization data is not detected a predetermined number of times, instructs the synchronization data detection portion to sequentially read out transport stream data from position of the next transport stream data after the predetermined synchronization data that has been initially detected, and detect the existence or non-existence of the predetermined synchronization data.
S3, S12, S14, and S4 constitute a determination instruction portion that, when predetermined synchronization data is not detected at a predetermined interval after the predetermined synchronization data has been detected a predetermined number of times, instructs the synchronization data detection portion to sequentially read out transport stream data from the position of the next transport stream data after the predetermined synchronization data that has been last detected, and detect the existence or non-existence of the predetermined synchronization data.
As described above, the processing of the synchronization byte detection portion 5 may be implemented by a program, and the same advantages can be obtained as when implementing the processing of the synchronization byte detection portion 5 with the above described hardware.
Note that although an example is described above in which the program is executed by the host processor 7, the processing may be executed by another processor.
According to the present embodiment as described above, it is possible to realize a synchronization data detection apparatus that can detect the existence or non-existence of synchronization data without omitting packets, as well as a method thereof and a program for that purpose.
Although an example of a television receiver is described above, the synchronization data detection apparatus of the above described present embodiment can also be applied to a HDD recorder and a PC and the like that process a transport stream including a plurality of packets.
In particular, a TS of image data when supplying contents data via a network is not connected consecutively in an orderly manner in packet units. If packets are omitted when performing playback or the like of this kind of data, a problem such as a delay in the start of decryption processing will arise because data necessary for playback is lacking.
More specifically, although there are few packet omissions if the contents have been created by connecting divided data in 188 byte units of TS data packets as in the case of motion picture contents, in a case where contents are to be provided using a network, for example, the Internet, there are many instances in which the contents are not edited and created in TS data packet units. In such cases also, the synchronization data detection apparatus of the above described present embodiment is effective.
The above described synchronization data detection apparatus can also be formed, for example, as a single semiconductor chip, or can be formed as a circuit of one portion of a semiconductor chip of a decoder such as an MPEG decoder.
The whole or a part of the program code of the program that executes the operations described above is a computer program product recorded or stored in a storage medium, such as a portable medium like a flexible disk or a CD-ROM, or a hard disk drive. A computer reads the program to execute all or a part of the operations. Alternatively, the whole or a part of the program code of the program can be distributed or provided through a communication network. A user can easily implement the synchronization data detection apparatus according to the present embodiment by downloading the program through the communication network and installing the program in a computer, or installing the program in a computer from a recording medium.
While a certain embodiment has been described, this embodiment has been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel devices and methods described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the devices and methods described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Number | Date | Country | Kind |
---|---|---|---|
2010-052371 | Mar 2010 | JP | national |