The invention relates to a process and a device for time-managing the utilization of data detected in a data flow and constituting a data set.
The device comprises a circuit (MP) for calculating a minimum duration of utilization of the detected data, which is proportional to the amount (L) of data contained in the data set.
The invention applies more particularly to the case in which the detected data are digital data representing subtitles detected in a flow of data conveyed according to the MPEG 2 System transport standard. The utilization of the data then corresponds to the displaying of the subtitles.
|
11. A method for time-managing the utilization of data detected in a data flow and constituting at least one data set, the process comprising a step of storing the detected data, a step of processing the stored data, a step of storing the data emanating from the processing step and a step of utilizing the stored data emanating from the processing step, the utilization of the processed data having to be triggered at a given theoretical instant (TR), wherein said method it comprises a step of calculating a minimum duration (d) of utilization of the data, which is proportional to the amount of data (L) contained in the data set, and a function of the difference between the theoretical instant at which the utilization of the data begins and the theoretical instant at which the utilization of the data is to be triggered.
1. A device for time-managing the utilization of data detected in a data flow and constituting at least one data set, the device comprising a circuit for processing the data detected, a memory making it possible to store the data detected, the data currently being processed, the processed data Intended to be utilized and the processed data undergoing utilization, the utilization of the processed data having to be triggered at a given theoretical instant wherein said device comprises a circuit (MP) for calculating a minimum duration (d) of utilization of the data, which is proportional to the amount (L) of data contained in the data set and a function of the difference between the theoretical instant at which the utilization of the data begins and the theoretical instant at which the utilization of the data is to be triggered.
2. The device as claimed in
3. The device as claimed in
Xp(t+Δt)=Kp×EM(t+Δt) where Kp is a positive real number and EM(t+Δt) a data item representing the size of the area of the memory empty of data at the instant t+Δt, Δt representing the duration separating the detection of two successive data sets.
4. The device as claimed In
Xp,i(t+Δt)=Xp(t+Δt)+KI×1(t+Δt), where Ki is a positive real number, and
I(t+Δt)=I(t)−R with I(t+Δt) such that −I1<I(t+Δt)<I2 and
R=TA−TR, TA being the instant at which the utilization of the data begins and TR the theoretical instant at which the utilization of the data is to be triggered.
5. The device as claimed in
Xp,i,d(t+Δt)=Xp,i(t+Δt)−Kd×(EM(t+Δt)−EM(t))/Δt), where Kd is a positive real number.
6. The device as claimed in
7. The device as claimed in
8. A decoder operating as claimed in the MPEG 2 video standard, wherein said decoder comprises the device as claimed in
9. The device of
10. The device of
12. The method as claimed in
13. The method as claimed in
Xp(t+Δt)=Kp×EM(t+Δt), where Kp is a positive real number and EM(t+Δt) a data item representing the size of the data storage area empty of data at the instant t+Δt, Δt being a duration representing the detection of two successive subtitles.
14. The method as claimed In
Xp,i(t+Δt)=Xp(t+Δt)+Ki×I(t+Δt), where Ki is a positive real number, and
I(t+Δt)=I(t)−R with I(t+Δt) such that −I1<I(t+Δt)<I2, and
R=TA−TR, TA being the instant at which the utilization of the data begins
and TR the theoretical instant at which the utilization of the data is to be triggered.
15. The method as claimed in
Xp,I,d(t+Δt)=Xp,i(t+Δt)−Kd×(EM(t+Δt)−EM(t))/Δt), where Kd is a positive real number.
16. The method as claimed in
17. The method as claimed in
18. The method as claimed In
|
This application claims the benefit under 35 U.S.C. § 365 of International Application PCT/FR99/01736, filed Jul. 16, 1999, which claims the benefit of French Application No. 98/09173, filed Jul. 17, 1998.
1. Field of the Invention
The invention relates to a process for time-managing the utilization of data detected in a data flow as well as to the device implementing the process.
2. Discussion of Background
The invention finds a particularly advantageous application for time-managing the displaying of subtitles obtained from digital data detected in a data flow conveyed in particular but not exclusively according to the MPEG 2 System transport standard.
In most cases, a data flow conveyed according to the MPEG 2 System transport standard comprises a temporal reference signal commonly denoted PCR (the abbreviation PCR standing for “Program Clock Reference”). The reference signal PCR makes it possible to establish a timescale for the data contained in the flow. Moreover, the data flow also contains synchronization signals commonly denoted PTS (the abbreviation PTS standing for “Presentation Time Stamp”). A synchronization signal PTS is a signal making it possible to implement an action on some of the data conveyed by the flow. For the data corresponding to a subtitle, it may, for example, involve the action of displaying the subtitle in synchronism with the appearance of an image. The display PTS signal associated with a subtitle is conveyed in the header of the subtitle. Its value gives the instant at which the subtitle is to be displayed.
The subtitles generally consist of coded data. It is therefore necessary to decode them before displaying them. The expression coded data should be understood, for example, to mean compressed data which need to be decompressed before display.
In the case where, for example, the instant at which a subtitle is to be displayed is very close to the instant at which this subtitle is detected in the flow, the displaying of a subtitle may have drawbacks. The expression “very close in time” should be understood to mean that the duration which separates the instant at which the subtitle is detected is of the same order of magnitude or less than the duration required for the decoding of the data which represent the subtitle. Under these conditions, the duration of display of the subtitle may be very short and, in the extreme case, the subtitle may be lost.
Moreover, in other cases, the data flow conveyed according to the MPEG 2 System standard does not contain any subtitles display PTS signal. These cases correspond, for example, to simultaneous subtitling where it is desired that the subtitles be displayed as soon as possible after having been detected and decoded. In these cases, when a short subtitle follows a long subtitle, the duration of display of the long subtitle may be less than the duration of display of the short subtitle. Thus, the possible duration of display ΔST1 is then equal to:
ΔST1=ΔT+DST2−DST1, where:
For respectively long and short subtitles ST1 and ST2, the durations DST2 and DST1 are respectively short and long. It follows that the duration of display of the long subtitle ST1 is all the shorter as the subtitle ST2 is a short subtitle and the subtitle ST1 is a long subtitle.
The invention does not have these drawbacks.
Thus, the invention relates to a device for time-managing the utilization of data detected in a data flow and constituting at least one data set, the device comprising a circuit for processing the data detected, a memory for storing the data detected, the data currently being processed, the processed data intended to be utilized and the processed data undergoing utilization, the utilization of the processed data having to be triggered at a given theoretical instant. The device comprises a circuit for calculating a minimum duration d of utilization of the data, which is proportional to the amount of data contained in the data set.
The invention also relates to a process for time-managing the utilization of data detected in a data flow and constituting at least one data set, the process comprising a step of storing the detected data, a step of processing the stored data, a step of storing the data emanating from the processing step and a step of utilizing the stored data emanating from the processing step, the utilization of the processed data having to be triggered at a given theoretical instant. The process comprises a step of calculating a minimum duration d of utilization of the data, which is proportional to the amount of data contained in the data set.
The invention finds a particularly advantageous application in the case where the set of data detected in the data flow represents a subtitle consisting of coded data, which subtitle is to be displayed on screen after decoding the data. The decoding of the data then constitutes the processing of the data and the displaying of the data constitutes the utilization of the data.
Thus, the invention also relates to a device such as that mentioned above according to the invention, characterized in that the detected data set represents a subtitle consisting of coded data detected in a flow of data conveyed according to the MPEG 2 System transport standard, not exclusively, and in that the processing circuit is a circuit for decoding the coded data, the utilization of the data being the displaying of the data on screen.
The invention further relates to a decoder operating according to a compression standard of the MPEG 2 video type, characterized in that it comprises a device such as that mentioned above according to the invention.
Likewise, the invention relates to a process such as that mentioned above, characterized in that the set of data detected in the data flow represents a subtitle consisting of coded data detected in a data flow conveyed according to the MPEG 2 System transport standard, in that the processing of the data is the decoding of the coded data and in that the utilization of the data is the displaying of the data on screen.
The object of the invention is to guarantee a minimum duration d of utilization of a data set, which is proportional to the amount of data which this set contains.
Once calculated, the minimum duration d is applied to a circuit for controlling the duration of utilization so that the duration of utilization of the data may not be less than d.
Within the framework of the particular application of the invention to the displaying of subtitles, the minimum duration of display of the subtitle can be given by the data item D(ST) such that:
The length L can be the cue relating to the length of the subtitle contained in the data flow. The length L can also be equal to the number of full lines of the decoded subtitle expressed in the form of a real number. Other data relating to the subtitle can also be used to calculate the data item D(ST). This may, for example, be a parameter m dependent on the complexity of the language in which the subtitle is to be displayed. In this case, a set of languages contained in a table (not described) are associated with weighting coefficients making it possible to vary the parameter m as a function of the language. The data item D(ST) is then written:
D(ST)=KST×L×m.
Thus, the invention finds a particularly interesting application in respect of the broadcasting of one and the same program over a territory where various languages are used.
According to an improvement of the invention, the minimum duration of utilization of the data is made compatible with constraints of synchronization, durations of processing of the data before utilization and random-access memory available for storing the data.
The attached FIGURE represents a device allowing the implementation of the improvement of the invention. By way of nonlimiting example, this improvement is described within the framework of the particular application of the displaying of subtitles.
The device comprises two memory areas Z1 and Z2, a counter CNT and a microprocessor MP.
The memory areas Z1 and Z2 are RAM-type random-access memory areas. The memory area Z1 is divided into several memory spaces BR1, BR2 . . . , BRm which will hereinafter be referred to as reception buffers. Likewise, the memory area Z2 is divided into several memory spaces BV1, BV2, . . . Bvn which will hereinafter be referred to as display buffers. As is known to the person skilled in the art, a display buffer is a memory space capable of allowing the displaying on screen of the data which it contains.
The data which represent the subtitles constitute a signal ST transmitted to the memory area Z1. According to the invention, the data which represent a subtitle are stored in a first reception buffer BR1. If the processing of the data performed in the memory area Z2 has not terminated, then the data which represent the next subtitle are stored in another reception buffer BR2. The subtitles stored in the memory area Z1 are transmitted to the memory area Z2 one after another so that a subtitle transmitted into the area Z2 is always the oldest one stored in the area Z1.
According to the preferred embodiment of the invention, each buffer of the area Z2 is either in a state of decoding the data which it contains, or empty of any data, or in a state awaiting display, or in a state of display. The expression buffer in a “state awaiting display” should be understood to mean that the data contained in the buffer are intended to be read for display. The expression buffer in a “state of display” should be understood to mean that the data contained in the buffer are being read so as to be displayed on screen.
According to another embodiment of the invention, the decoding of the data is not performed in a display buffer of the area Z2 but in a reception buffer of the area Z1. It is then possible for the operation for decoding the data to be performed as and when they are received.
Preferably, the memory area Z2 is divided into 5 display buffers each of which is able to be either in a state of decoding, or empty of data, or in a state awaiting display, or in a state of display. According to the preferred embodiment of the invention, one display buffer is permanently in a state of decoding and another in a state of display. It follows that the other 3 buffers are either empty of data, or in a state awaiting display. Generally, if n is the number of buffers which the area Z2 contains, then n-2 buffers are either empty of data, or awaiting display.
Each time a buffer switches to the awaiting display state, a cue I is transmitted from the memory area Z2 to the microprocessor MP. In return, the microprocessor MP transmits a data item D to the counter CNT which makes it possible to increment the latter by one unit. The counter then transmits a data item E to the memory area Z2 which makes it possible to tag the buffer which has just switched to the awaiting display state. At the moment of display, the buffer in the display state is then identified as being that whose tag signals that it is the oldest.
Generally, the duration d of display calculated by the microprocessor MP at an instant t may be written:
d=D(ST)×X(t), where
Advantageously, the minimum duration of display of a subtitle can thus be increased when the size of the memory area empty of data increases and decreased when the size of the memory area empty of data decreases.
According to a particular embodiment of the improvement of the invention, the data item X(t) is calculated so as to tend to a data item X0 which may not be exceeded. It is then advantageously possible to avoid an accumulation of the delay in displaying the subtitles.
According to the preferred embodiment of the invention, the data item X(t) is calculated according to an algorithm implementing calculations of the PID type (standing for Proportional/Integral/Differential).
The equation which governs the proportional regime is given by the formula:
Xp(t+Δt)=Kp×EM(t+Δt), where
The data item EM(t+Δt) can be equal either to the number N of display or reception buffers which are completely empty of data at the instant t+Δt, or to the number N of display or reception buffers which are completely empty of data at the instant t+Δt, plus, at this same instant, the memory space empty of data of the display or reception buffer in the decoding state.
The equation which governs the integral regime is given by the formula:
Xi(t+Δt)=Ki×I(t+Δt), where
The values I1 and I2 are chosen so as to limit the influence of the integral term Xi(t+Δt). TA is the instant at which the displaying of the subtitle actually begins and TR the theoretical instant at which the subtitle is to be displayed. The quantity R thus represents the algebraically calculated delay between the instant at which the displaying of the subtitle actually begins and the theoretical instant at which the subtitle is to be displayed.
In the case where within the flow there is a PTS signal relating to the displaying of a subtitle, the instant TR is the value of the PTS. In the case where there is no PTS signal in the flow, the instant TR is a time reference whose value is such that, for example, the quantity TA−TF is equal to y % of the duration of decoding of the subtitle, TF being the instant at which the subtitle is detected in the flow. By way of nonlimiting example, y can be equal to 120.
The minimum duration d of display of a subtitle grows by the quantity R if R is negative and diminishes by the quantity R if R is positive. The integral term Xi(t+Δt) thus allows advantageous management of the successive delays r.
The equation which governs the differential regime is given by the formula:
Xd(t+Δt)=−Kd×(EM(t+Δt)−EM(t))/Δt
The contribution of the differential term to the function X(t) advantageously makes it possible to take account of the rate at which the size of the memory area empty of data is changing.
According to the preferred embodiment mentioned above, the duration of display d of a subtitle is calculated according to an algorithm implementing several PID type calculations. It follows that at the instant t+Δt the duration d is proportional to the quantity Xp,i,d(t+Δt) such that:
Xp,i,d(t+Δt)=Xp(t+Δt)+Xi(t+Δt)+Xd(t+Δt) with Xmin<Xp,i,d(t+Δt)<Xo, where Xmin is, for example, a duration such that the duration d is substantially equal to 350 ms, below which duration a human eye is no longer aware of the showing of a subtitle on the screen.
The invention also relates to other algorithms for calculating the duration d. These may, among others, be a proportional-type calculation algorithm (only the proportional term such as calculated above is then involved in the expression for X(t+Δt)), or alternatively a proportional/integral-type calculation algorithm (only the proportional and integral terms such as calculated above are then involved in the expression for X(t+Δt)). Generally, as mentioned previously, the algorithm for calculating the minimum duration d of display of a subtitle is an increasing function of a random access data memory area. The calculation algorithm according to the invention can be an algorithm implementing fuzzy logic.
Once calculated, the minimum duration of display of a subtitle d is applied to a circuit (not represented in the figure) which controls the displaying of the subtitles data Dst emanating from the display buffer in the display state. The duration of display of the subtitle is then guaranteed to not be less than d.
Of course, the invention is not limited to the embodiment described.
Patent | Priority | Assignee | Title |
7911536, | Sep 23 2004 | Intel Corporation | Screen filled display of digital video content |
8284311, | Sep 23 2004 | Intel Corporation | Screen filled display of digital video content |
Patent | Priority | Assignee | Title |
5574798, | Aug 03 1994 | International Business Machines Corporation | Visual presentation system which determines length of time to present each slide or transparency |
5576843, | Oct 29 1993 | WARNER BROS HOME ENTERTAINMENT INC | System and method for controlling play of multiple dialog audio tracks of a software carrier |
5684542, | Dec 21 1993 | Sony Corporation | Video subtitle processing system |
5847770, | Sep 25 1995 | Sony Corporation | Apparatus and method for encoding and decoding a subtitle signal |
5987214, | Jun 30 1995 | Sony Corporation | Apparatus and method for decoding an information page having header information and page data |
EP765082, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jul 16 1999 | Thomson Licensing | (assignment on the face of the patent) | / | |||
Dec 21 2000 | MACE, PHILIPPE | Thomson Multimedia | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 011531 | /0548 | |
Oct 28 2005 | THOMSON LICENSING S A | Thomson Licensing | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016955 | /0811 | |
May 05 2010 | THOMSON LICENSING S A | Thomson Licensing | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 042303 | /0268 | |
Jan 04 2016 | Thomson Licensing | THOMSON LICENSING DTV | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 043302 | /0965 | |
Jul 23 2018 | THOMSON LICENSING DTV | INTERDIGITAL MADISON PATENT HOLDINGS | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 046763 | /0001 |
Date | Maintenance Fee Events |
May 12 2009 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Mar 01 2013 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
May 10 2017 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Dec 20 2008 | 4 years fee payment window open |
Jun 20 2009 | 6 months grace period start (w surcharge) |
Dec 20 2009 | patent expiry (for year 4) |
Dec 20 2011 | 2 years to revive unintentionally abandoned end. (for year 4) |
Dec 20 2012 | 8 years fee payment window open |
Jun 20 2013 | 6 months grace period start (w surcharge) |
Dec 20 2013 | patent expiry (for year 8) |
Dec 20 2015 | 2 years to revive unintentionally abandoned end. (for year 8) |
Dec 20 2016 | 12 years fee payment window open |
Jun 20 2017 | 6 months grace period start (w surcharge) |
Dec 20 2017 | patent expiry (for year 12) |
Dec 20 2019 | 2 years to revive unintentionally abandoned end. (for year 12) |