Preferred embodiments of this invention will be explained in the following.
First, a basic concept of the receiver of embodiment 1 is explained.
A broadcast signal is entered into a tuner 50, transformed into a transport stream by a demodulator 51 and decrypted by a descrambler 52. In the process of storing the stream, a storage controller 57 performs processing such as attaching a timestamp to the stream and records the time-stamped stream in a storage 58. During playback, a signal extracted from the storage 58 is transformed into a normal transport stream by the storage controller 57, which is then entered through a demultiplexer 53 into a video/audio decoder 54 where it is decoded, before being output to a display 55 and a speaker 56 as video and audio. CPU 59, though shown not to be wired to the respective blocks for simplicity, is actually connected to these blocks for their control.
The receiver has a receiving unit 1, a timestamp attaching unit 2, a first clock 3, a storage unit 4, a timestamp extraction unit 5, a transmitting unit 6, a second clock 7, a decoder 8, an output device 9 and an external port 14.
Here, the receiving unit 1 of
A function to attach a timestamp is represented by the arrival time determination unit 10, the PCR extraction unit 11, the PCR time information extraction unit 12 and the transmission rate ratio calculation unit 13.
Where a transport stream representing video and audio data is transmitted in broadcast waves at a rate different from a normal playback rate, for example, at a higher-than-normal rate, the embodiment 1 represents a device that, after receiving the transport stream, can store it in the storage unit and, for playback, read it out from the storage unit and play it back at the normal rate.
An example of services that can use this device may involve making available to a user a time table showing movie titles and their start times that can be downloaded at high speed and allowing the user to book a desired title so that the chosen movie can be downloaded in about ½ to ⅕ the normal time. Then the user can at any desired time play back the downloaded movie at the normal speed.
An overall operation will be explained as follows. A broadcast wave carrying, faster than normal, a transport stream comprised of video and audio data is entered into the receiving unit 1 consisting of the tuner and demodulator, which outputs a faster-than-normal transport stream.
The transport stream multiplexes the video and audio data in the form of transport stream packets. The transport stream has recorded in predetermined packets PCR (Program Clock Reference) time information which is representing a playback timing for normal rate playback.
The PCR is periodically arranged in the transport stream so that, when it is transmitted at normal playback rate, at least one PCR normally exists in an interval of 100 ms. The time information representing the playback timing is recorded as a count value of reference clock having a high-precision frequency of 27 MHz.
The transport stream that was transmitted at higher-than-normal speed is entered into the timestamp attaching unit 2 where transport stream packets making up the transport stream are each given a timestamp representing a playback timing for the normal playback, before being stored in the storage unit 4.
At this time, the first reference clock 3 is driven at 27 MHz, the reference frequency during the normal playback, which differs from the speed of the time information of PCR recorded in the transport stream that was received at high speed.
The content playback process involves reading out the time-stamped transport stream that was temporarily stored in the storage unit 4, comparing the time information of the timestamp extracted by the timestamp extraction unit 5 and a count value of the second clock 7 driven at 27 MHz, sending the transport stream from the transmitting unit 6 to the decoder 8 at the normal playback rate according to a result of the comparison, and outputting the transport stream from the output device 9 as video and audio.
Next, an operation of adding a timestamp will be explained by referring to
The transport stream output from the receiving unit 1 comprises transport stream packets, of which predetermined ones are recorded with PCR time information.
The arrival time acquisition unit 10 gives each of the transport stream packets a count value of the first clock 3 when the packet arrived.
If the packet contains PCR time information, it is detected by the PCR extraction unit 11. Then the PCR time information extraction unit 12 extracts the time information recorded in PCR which is a count value of the 27-MHz reference clock attached to the packet when the data is encoded.
Here, a first PCR packet having first PCR information and a second PCR packet having second PCR information following the first are received. The transmission rate ratio calculation unit 13 compares a difference between two PCR times which are time information during the normal playback and a difference between two arrival times of the same PCR packets received at high speed, to calculate a ratio of the actual transmission rate to the normal playback rate.
For each packet of the transport stream, the time information which the packet should have during the normal playback can be calculated by the timestamp attaching unit 2 as follows. An increment, that changes every packet, of the count value representing the packet arrival time retrieved by the arrival time acquisition unit 10 is multiplied by the speed ratio calculated by the transmission rate ratio calculation unit 13 from the immediately preceding two PCR packets to obtain a product as a new increment. This new increment is added to a timestamp value of the immediately preceding packet to determine the time information that each packet should have during the normal playback. The time information is added as a timestamp to the transport stream which is then output as the time-stamped transport stream and stored in the storage unit 4.
As described above, the transport stream that was transmitted at a speed different from the normal playback rate can be attached with a timestamp that can be used during the normal playback.
The above process as applied to one example is detailed as follows.
(1) The arrival times of two PCR packets are obtained to calculate an arrival time difference (example: 100).
(2) PCR value recorded in each PCR packet is retrieved to calculate a difference (example: 200).
(3) The PCR value difference is divided by the arrival time difference to calculate a speed ratio (example: 2.0).
(4) Increments in arrival time of subsequent transport packets are obtained (example: 10).
(5) The arrival time increment is multiplied by the speed ratio to calculate an increment in timestamp value (example: 20).
(6) The increment is added to the timestamp value of the preceding packet to calculate a timestamp value of the current packet.
(7) The calculated timestamp is attached to the packet before storing it in the storage unit.
An abscissa represents an arrival time of each packet of the transport stream including PCR packets by a count value of the first clock 3 of
From the arrival times A10 and A20 of the PCR first packet and PCR second packet and from the time information TP1 and TP2 recorded in the PCR first packet and PCR second packet, the actual transmission rate ratio M is expressed as follows. The equation shown below represents a case where the count values have no carry.
In attaching a timestamp to each of the transport stream packets from PCR second packet to PCR third packet by using this speed ratio M, a value of the timestamp for an example case of T22 can be given as follows, by using the value T21 of the immediately preceding packet.
T22=T21+(A22−A21)×M
Next, a second embodiment will be explained. As described above, the timestamp value on the ordinate in
When, for example, PCR second packet has arrived, T20 as the timestamp value is calculated. There is a possibility that the calculated timestamp T20 may deviate from the time information TP2 recorded in the PCR second packet, which is the true time information for this packet during playback. In that case, T20 may be replaced with the value of TP2 to correct the error.
Next, a check is made as to whether the packet is PCR packet or not (step 22). If not, the calculated timestamp is attached to the packet (step 26) before storing it in the storage unit (step 27).
If the current packet is PCR packet, the PCR time information recorded in the packet is extracted (step 23). A speed ratio is calculated from the immediately preceding PCR time information and the arrival time information of the current PCR packet (step 24).
Next, the PCR time information extracted at step 23 is used in place of the timestamp value calculated at step 21 as the timestamp value to be attached to the PCR packet (step 25). The timestamp based on the PCR time information is then attached to the PCR packet (step 26) before storing it (step 27).
As described above, by correcting the timestamp to the value recorded in PCR each time a PCR packet arrives, the packets can be given timestamps before being stored while minimizing errors for a long period of time.
The object of correction may also be achieved by replacing the calculated timestamp value only when the error between the calculated value of the timestamp and the PCR time information is greater than a predetermined value.
The preceding embodiment 1 has described an example case in which a transport stream that is transmitted over a broadcast wave is received as by a tuner 50. It is apparent that the similar effect can also be produced if, unlike embodiment 1, the transport stream is transmitted and received through communication lines such as the Internet at a speed different from the normal playback rate. In this case, the receiver is provided with a unit for receiving a communication line.
Further, in
These embodiments may be said to be characterized in that they comprise a tuner to receive a transport stream made up of a plurality of packets; a demodulator to demodulate the transport stream received through the tuner; a storage to store the transport stream demodulated by the demodulator; and a storage controller to control data recording in the storage; wherein, when the transport stream is received at a second transmission rate different from a first transmission rate representing the normal playback rate of the packets, the storage controller adds a timestamp, which represents a playback timing for playback at the first transmission rate, to each of the packets making up the received transport stream according to time information at which the packets were received, time information representing a playback timing and contained in predetermined packets in the transport stream and arrival time information of the predetermined packets.
The above embodiments are applicable to providing a receiver that can download a content stream at a transmission rate different from a bit rate of normal playback and which can easily play back the transport stream of the temporarily stored content at the normal bit rate according to the timestamps attached to the transport stream. The embodiments can also be applied to improving the ease of use of the content download services.
It should be further understood by those skilled in the art that although the foregoing description has been made on embodiments of the invention, the invention is not limited thereto and various changes and modifications may be made without departing from the spirit of the invention and the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
2006-238444 | Sep 2006 | JP | national |