CN100459682C - Closed caption tagging system - Google Patents

Closed caption tagging system Download PDF

Info

Publication number
CN100459682C
CN100459682C CNB2005100094809A CN200510009480A CN100459682C CN 100459682 C CN100459682 C CN 100459682C CN B2005100094809 A CNB2005100094809 A CN B2005100094809A CN 200510009480 A CN200510009480 A CN 200510009480A CN 100459682 C CN100459682 C CN 100459682C
Authority
CN
China
Prior art keywords
program
label
data
spectators
viewer
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
CNB2005100094809A
Other languages
Chinese (zh)
Other versions
CN1674660A (en
Inventor
J·M·巴顿
K·史密斯
D·尚柏林
H·路克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tivo Solutions Inc
Original Assignee
Tivo Inc
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 Tivo Inc filed Critical Tivo Inc
Priority claimed from US09/665,921 external-priority patent/US7889964B1/en
Publication of CN1674660A publication Critical patent/CN1674660A/en
Application granted granted Critical
Publication of CN100459682C publication Critical patent/CN100459682C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

A closed caption tagging system provides a mechanism for inserting tags into an audio or video television broadcast stream prior to or at the time of transmission. The tags contain command and control information that the receiver translates and acts upon. The receiver receives the broadcast stream and detects and processes the tags within the broadcast stream which is stored on a storage device that resides on the receiver. Program material from the broadcast stream is played back to the viewer from the storage device. The receiver performs the appropriate actions in response to the tags. Tags indicate the start and end points of a program segment. The receiver skips over a program segment during playback in response to the viewer pressing a button on a remote input device or it automatically skips over program segments depending on the viewer's preferences. Program segments such as commercials are automatically replaced by the receiver with new program segments that are selected based on various criteria. Menus, icons, and Web pages are displayed to the viewer based on information included in a tag. The viewer interacts with the menu, icon, or Web page through an input device with the receiver performing the associated actions. If a menu or actions requires that the viewer exits from the playback of the program material, then the receiver saves the exit point and returns the viewer back to the same exit point when the viewer has completed the interaction session. Menus and icons are used to generate leads, generate sales, and schedule the recording of programs. A one-touch recording option is provided. An icon is displayed to the viewer telling the viewer that an advertised program is available for recording at a future time. The viewer presses a single button on an input device causing the receiver to schedule the program for recording.

Description

Apparatus and method via the advertisement television program record scheduling time-histories of television broadcast stream
The application is to be September 20, application number in 2000 the dividing an application for the patent application of " system of closed caption tagging " that be 00815914.9 (international application no is PCT/US 00/25847), title the applying date.
Technical field
The present invention relates to the multimedia video data flow.More specifically, the present invention relates to the multimedia video television broadcast stream and add label.
Background technology
Video cassette recorder (VCR) has changed whole world televiewer's life.VCR can provide is rich in the flexible TV programme of time change, to cooperate its life style.
Spectators can utilize VCR and TV programme is stored on the tape.VCR makes spectators play, reverse, advance fast and to suspend at the programme content of storage.These functions can allow spectators comply with the program of its hobby in suspend playing at any time; Fast and then skip over and do not want the interior perhaps commercial advertisement of viewing and admiring; And play the data segment like again.Yet VCR can't record a video and the broadcast information content simultaneously.
Recently, digital VTR (DVR) has entered the commercial market.DVR can allow spectators that TV programme is stored in rigid disk.Thus, spectators can break away from the restriction of tape.Spectators can make the program of Live Audio suspend, reverse and advance fast.Yet the function of DVR not only terminates in program recording.
Make the program can be with digital store in local terminal, the person provides more than ever before selection to can be the Promgramming.Now, advertisement (commercial advertisement) can be replaced by dynamical fashion, and is accustomed to and the specific spectators of special locking according to viewing and admiring.Commercial advertisement can be in local terminal be stored in spectators' DVR, and can present at any time.
DVR can allow spectators carry out interactive program broadcasting.Generally speaking, the advance notice meeting that is about to broadcast program is broadcasted in the process of normal broadcast program.What spectators must remember this program immediately broadcasts date, time and channel, so that record or view and admire this program.DVR can allow spectators' time-histories of this program of scheduled recordings immediately.
Unique shortcoming is: present DVR can't carry out interaction at this level and spectators.At present can't with commercial advertisement and then the situation of specific program or other advertisement inform DVR.In addition, the removable situation of commercial advertisement can't be informed DVR at present.
Allow the program supplier transmit the closed caption designation system of frame exclusive data when being highly profitable if can provide a kind of via broadcast medium.If can provide a kind of receiver that allows carry out interaction, and also ought be highly profitable according to the closed caption designation system that programme content carries out self-configuration with dynamical fashion and spectators.
Summary of the invention
The present invention provides a kind of closed caption designation system.The present invention allows the content provider transmit frame exclusive data and the order that is incorporated into audio-visual television broadcast stream via broadcast medium.In addition, the present invention allows receiver carry out interaction with dynamical fashion and spectators, and carries out self-configuration according to video-audio data stream content.
Preferred embodiment of the present invention provides a kind of mechanism that label is inserted the audio or video television broadcast stream.Label is before broadcasting or was inserted in the broadcast data stream at that time.These labels include receiver decipher and instruction that is applied to it and control information.
Aforementioned receiver receives broadcast data stream, and the label in this broadcast data stream is detected and handles.Broadcast data stream is the storage device that is stored on the receiver.The program material that comes from broadcast data stream is to broadcast for spectators from storage device.
In the stage of handling label, receive these labels of opportunity response and carry out suitable action.These labels can be the content provider or system operator provides a large amount of elasticity utilization spaces, use the infinite operating function of construction.
Label can be pointed out the starting point and the terminal point of program fragment.After spectators pressed the button on remote input units, receiver can respond, and skipped over a certain program fragment in the process of broadcasting.Receiver also can skip over program fragment automatically according to spectators' hobby.
Receiver replaces such as program fragments such as commercial advertisements with new program fragment automatically.New program fragment is selected according to different standards, for example: according to the place, in one day certain period, program material, spectators view and admire custom, spectators preference for program, or spectators' personal data are selected.New program fragment is local terminal or a far-end of depositing in receiver.
Menu, icon and webpage are to present to audience according to the information that contains label.Interaction between spectators and menu, icon or the webpage is to pass through input unit.The receiver execution is imported related action with menu, icon or webpage and spectators.If certain menu or action request spectators withdraw from broadcasting of program material, then receiver can keep exit point, and after spectators finish interactive process, makes spectators get back to identical exit point once again.
Menu and icon are used to produce product introduction, distribution, and the time-histories of scheduled recordings program.Provide single touch-control to record option at this.Spectators can see certain icon, and it informs that a certain advertising programme can record in following certain time.Spectators press the single button on the input unit, can make the time-histories of this program of receiver scheduled recordings.Receiver also can be according to the information in a certain label, with the performance recording in broadcast data stream at present in storage device.
Label can be used for setting up the index of program material.So can allow spectators jump to the interior particular index of program.
Consider following example explanation and conjunction with figs. in light of actual conditions, when understanding other aspect of the present invention and advantage about principle of the present invention.
Description of drawings
Fig. 1 is the high-level block diagram that generally shows of preferred embodiment of the present invention;
The schematic block diagram of Fig. 2 preferred embodiment of multiple input and output module for the present invention utilizes;
Fig. 3 is the synoptic diagram of Motion Pictures Expert Group of the present invention (MPEG) data flow and video and audio component;
Fig. 4 is the interior resolver that is comprised of media switch of the present invention and the schematic block diagram of four direct memory access (DMA) (DMA) input engine;
Fig. 5 is the schematic block diagram of the part of packetizing elementary stream of the present invention (PES) buffer;
The synoptic diagram of the PES buffer structure that Fig. 6 sets up for the parsing part of exporting annular buffer according to media switch;
Fig. 7 by media switch of the present invention and the schematic block diagram of the connection various parts that are;
Fig. 8 is the high-level block diagram that generally shows of programmed logic of the present invention;
Fig. 9 is the classification level block diagram of programmed logic of the present invention;
Figure 10 is the schematic block diagram of the preferred embodiment of montage fast cache spare of the present invention;
Figure 11 is the schematic block diagram of the preferred embodiment of analog broadcasting of the present invention operating room vision mixer;
Figure 12 is the schematic block diagram of closed caption resolver of the present invention;
Figure 13 utilizes high-level generally the show block diagram of VCR as the preferred embodiment of comprehensive part of the present invention for the present invention;
Figure 14 inserts label the schematic block diagram of the preferred embodiment in the video data stream for the present invention;
Figure 15 is the schematic block diagram that foundation is inserted label the preferred embodiment in the video data stream with the server for the present invention;
Figure 16 is that diagram the present invention inserts the used user interface of video data stream with label;
Figure 17 is the screen that illustrates tool prompting icon according to the present invention, and wherein this image is shown in the lower left corner of screen;
Figure 18 is the schematic block diagram of the transfer path of video data stream of the present invention;
Figure 19 indicates the starting point and the terminal point of program fragment of certain video data stream and the schematic block diagram of playing new program fragment according to the present invention;
Figure 20 is for decipher is inserted into the schematic block diagram of the preferred embodiment of the label in certain video data stream according to the present invention;
Figure 21 is diagram one screen, and this screen shows performance recording option of the present invention;
Figure 22 is diagram spectators' remote control of the present invention;
Figure 23 is the schematic block diagram of a series of screens, and these screens produce product introduction and distribution.
Embodiment
The invention process is in the closed caption designation system.The system of institute's construction allows that the content provider transmits the frame exclusive data that is incorporated into audio-visual television broadcast stream via broadcast medium according to the present invention, and order.The present invention's tolerable receiver in addition carries out interaction with dynamical fashion and spectators, and carries out self establishment according to video-audio data stream content.
Preferred embodiment of the present invention provides a kind of sign and decipher system, and this system can allow the content provider indicate the video-audio data stream that is transmitted via the television broadcasting medium with specific picture.Receiver decipher and acting on is embedded in the label that is received in the data flow.Label data can allow receiver carry out interaction with the action icon with spectators by menu with dynamical fashion.Label also provides the dynamic-configuration of receiver.
Please refer to the 1st figure.Preferred embodiment of the present invention possesses input part 101, media switch 102, and efferent 103.Input part 101 can receive the TV input traffic of various ways-for example National Television System Committee's (NTSC) standard or phase-aoternation line system (PAL) broadcasting, and digital data stream-for example digital satellite system (DSS), digital broadcast service (DBS) or high television standard committee (ATSC) standard.DBS, DSS and ATSC are based on standards such as activity diagram video compression standard 2 (MPEG2) and MPEG2 transmission.The MPEG2 transmission standard is that a kind of digital data stream with the television source transmitter gives formative standard seek so that television receiver can be untied input traffic the program in the multiplex signal.Input part 101 produces mpeg data stream.The MPEG2 transmission is multiplexed in supports a plurality of programs in the same broadcasting channel, and has the supply and the exclusive data of video and audio frequency in this channel.Input part 101 can be adjusted to specific program with channel, therefrom extracts specific mpeg program, and this program is provided to the other parts of system.Utilize separately independently that video and audio coder are encoded into similar mpeg format with anolog TV signals, make the other parts of system not know to obtain the process of this signal.Can utilize the multiple standards method information to be modulated to the vertical blanking interval (VBI) of anolog TV signals; For example: north American broadcast teletext standard (NABTS) can be used for information is modulated to the 10th to the 20th scanning linear of NTSC signal, and (U.S.) Federal Communications Committee (FCC) is standard the 21st capable usefulness as closed caption (CC) and extension data service (EDS) then.This type of signal is decoded by input part, and is sent to other parts, is promptly transmitted via MPEG2 exclusive data channel as it.
Media switch 102 is runnings of being responsible between coordination microprocessor CPU (CPU) 106, hard disc or storage device 105 and the memory 104.Input traffic is converted into mpeg data stream, and is sent to media switch 102.Media switch 102 is temporary in mpeg data stream in the memory.If the user watches the TV of real-time broadcast, then media switch 102 can be carried out two work: data flow is sent to efferent 103, and this data flow is written into rigid disk or storage device 105 simultaneously.
Efferent 103 receives the mpeg data stream of input, and produces anolog TV signals according to NTSC, PAL or other required television standard.Efferent 103 includes mpeg decoder, shows (0SD) generator, simulate television coding device at screen, and the audio logic circuit.The OSD generator can allow the formula logic that the image that is superimposed on the final anolog TV signals is provided.In addition, the information that input part can utilize the multiple standards form that the formula logic is provided is modulated on the VBI of output signal, and these forms comprise NABTS, CC or EDS.
Please refer to the 2nd figure.The present invention can expand easily and hold a plurality of input parts (tuner) 201,202,203,204, and each input part can be adjusted to dissimilar inputs.Simultaneously, also can add a plurality of output modules (decoder) 206,207,208,209.The picture-in-picture of special-effect-for example-also can utilize a plurality of decoders to give real work.When the user when viewing and admiring certain TV programme, media switch 205 can be recorded another program.This expression: when certain data flow just is being stored in disk, can from disk, extract another data flow.
Please refer to the 3rd figure.In the mpeg data stream 301 that send have the video 302,305,306 that interweaves, and data segment such as audio frequency 303,304,307.These data segments must be separated and again in conjunction with and form other video 308 and audio frequency 309 data flow or cache information.Above-mentioned is necessary process, because utilize other decoder to convert the mpeg data section to original audio or video component.This kind other transport process must the generation time sequence information, so that decoder synchronization correctly and obtain accurately signal and play.
Media switch makes the formula logic can make correct time serial message related with each data segment, and it may directly be embedded in this information in the data flow.The time serial message of each data segment is called time mark.After system start-up, these time marks promptly begin by zero, and increase in dull mode.So can allow the present invention in any specific video data segment, seek any specific point.For example, if system five seconds need be read in fast cache already in send in the continuous video data stream, then this system only need start to advance and reads and seek the reasonable time mark.
On the file of already storage, can carry out a minute search is used being directed in the data flow.Each data flow is stored as a string fixed-size data segment when improving minute speed of search, and this is because the uniform cause of time mark.If the user wants in the middle of program, then system can continue carry out minute searching at the data segment of already storage, up to system seek suitably till, the result that promptly expect with the minimum information acquisition this moment.If signal is to be stored as mpeg data stream, then must be from starting point with linear mode resolution data stream, with seek the position of being desired.
Please refer to the 4th figure.Media switch includes four input direct memory access (DMA) (DMA) engines 402,403,404,405, and each DMA engine has attached buffering area 410,411,412,413.Conceptive, each DMA engine has boundary line 407, the next pointer 408 of a pointer 406, pointer, and the boundary line 409 of next pointer.Each DMA is under the jurisdiction of the information of particular type; For example, video information 402, audio-frequency information 403 and parsing incident 405.Buffering area the 410,411,412, the 413rd is annular, and collects customizing messages.The DMA engine is increased to attached buffering area one by one with pointer 406, till reaching boundary line 407, is written into next pointer 408 and boundary line 409 subsequently again.The value of pointer 406 and next pointer 408 and pairing boundary line thereof are set at identical, then can set up a buffer circle.Next pointer 408 can be set to different address and vector mode DMA is provided.
Input traffic can pass through resolver 401.Resolver 401 is sought the MPEG incident via resolution data stream, the starting point of its index video, audio frequency or dedicated segments.For example, when resolver 401 seek during certain Video Events, it can direct into video DMA engine 402 with data flow.Resolver 401 gets up metadata cache, and by video DMA engine 402 it is imported screen buffer 410 with dma mode.At the same time, resolver 401 directs into incident DMA engine 405 with certain incident, and DMA engine 405 then produces an incident in event buffer 413.When resolver 401 ran into an audio event, it can heavily lead audio frequency DMA engine 403 with byte data stream, and the incident that produces is in event buffer 413.Similarly, when resolver ran into an exclusive data incident, it can heavily lead exclusive data DMA engine 404 with byte data stream, and the incident of guiding is in event buffer 413.When incident was stored at event buffer, media switch can be informed the formula logic via interrupt mechanism.
Please refer to the 4th figure and the 5th figure.Resolver 401 is inserted event buffer 413 with incident.Each incident 501 in the event buffer has hurdles such as side-play amount 502, event type 503 and time mark 504.When incident is stored after buffering area, resolver 401 can provide the type and the side-play amount of each incident.For example, when audio event occurring, the event type hurdle can be set to audio event, and side-play amount can be pointed out the position in the audio buffer 411.The formula logic can be learnt the starting point place of audio buffer 411, and adds side-play amount to find out the incident in the data flow.Address side-play amount 502 can be informed the position that the next incident of formula logic occurs, but can not inform the position that terminal point occurs.Previous incident can be stored in the middle of the fast cache device, so that the length of the terminal point of current event and data segment can find.
Please refer to the 5th figure and the 6th figure.When the formula logic was interrupted by media switch 601, the formula logic can read the incident of being accumulated in the event buffer 602.The formula logic can wait incident to produce a succession of logical data section 603 corresponding to resolved mpeg data section 615 thus.The formula logic can convert side-play amount 502 to the actual address 610 of each data segment, and utilizes previous fast cache incident to come recording events length 609.If data flow is produced by the coding of analog signal, then it will not comprise Pgmtime mark (PTS) value.Pts value is used the result who obtains at last suitably is provided for the decoder utilization.Therefore, the formula logic uses the time mark 504 that produces to calculate the simulation pts value of each data segment, and this value is deposited in the logical data section time mark 607.Aspect the DVB-T broadcast data stream, pts value is incorporated in the data flow.The formula logic can extract this information, and it is deposited in the logical data section time mark 607.
The formula logic can continue to collect logical data section 603, till it arrives the fixed capacity of buffering area.When reaching the capacity boundary line, the formula logic can produce new buffering area-be called grouping elementary stream (PES) 605 buffering areas, comprises the logical data section 603 of arranging in regular turn and attached control information in this buffering area.Each logical data section is directly to point to the screen buffer 613 that the media switch 601 of buffer circle 604-is for example inserted.New buffering area can be sent to other logic element subsequently, and it can be in some way-and for example decode or it is write medium, and further handle the data flow in the buffering area.Therefore, processor can not copy to the another location from a certain position in the memory with mpeg data.Because required memory band width and processor frequency range all reduces, therefore can more be accorded with the design of economic benefit.
The peculiar property that mpeg data stream converts the PES buffering area to is to be: follow the data of logical data section not need to come across as mentioned above in the middle of the buffering area itself.When the PES buffering area was written into medium, these logical data sections can write in its medium that occurs according to logical order.No matter the component of data flow is to be positioned at video, audio frequency or exclusive data buffer circle, and said process can cause the component of data flow to be collected in single flow data linear buffer district on the medium.Buffering area can read back from medium with single transmission, and the logical data segment information can be updated and physical location in the corresponding buffering area 606.The formula logic of higher-order can't be learnt above-mentioned transfer process, because its processing logic data segment only; Therefore, flow data can be handled easily, and fully need be via carrying out duplicating of data between the position of CPU in dynamic random access memory (DRAM).
One of unique technique feature of media switch is to be that it has the ability of handling high-speed data in mode effectively and cheaply.Media switch can be carried out following function on platform cheaply: recording of video and voice data, send video and voice data, video and voice data are delivered to disk, and take out video and voice data from disk.Usually, media switch system with asynchronous with the CPU of microprocessor and independently mode operate, and use the ability of its DMA and get involved under the minimum situation at CPU and to move lot of data.
Please refer to the 7th figure, the input of media switch 701 is connected in mpeg encoder 703.Also comprise in addition and be exclusively used in the mpeg audio data 704 that offer media switch 701 and the circuit of VBI data 702.If handle the digital type TV signal, then mpeg encoder 703 is replaced by MPEG2 transmission splitter, and mpeg audio encoder 704 and VBI decoder 702 then quilt slightly remove.This splitter is to carry out multiplexed by video input medium switch port at audio frequency, video and the exclusive data channel stream extracted.
Resolver 705 is used to resolve the input traffic that comes from mpeg encoder 703, audio coder 704 and VBI decoder 702, or under the situation of digital type television broadcast stream, comes from the input traffic that transmits splitter.Resolver 705 meeting detections are positioned at the starting point of all critical events, frame and sequence header in the middle of video or the audio data stream, all these information are all formula logic institute must the person of learning, so that play data stream correctly, and the execution specific function, for example: advance fast, refund, play, time-out, fast/slow broadcast, index and fast/slow reverse play.
When resolver 705 was recognized video, audio data section or given exclusive data, it placed FIFO buffer 706 with label 707.When these labels were removed, DMA 709 can be controlled.The DMA address of label 707 and section is put into event queue 708.No matter picture format information is video I-frame, video B-frame, video P-frame, video packets elementary stream, audio packet elementary stream, sequence header, still the grouping of audio frame or exclusive data is all left in the middle of the event queue 708 together with depositing in side-play amount in the relevant buffer circle, and wherein every information is to leave this buffer circle in.After the formula logic was sent to DRAM 714, the formula logic of running can be checked the incident in the buffer circle in the middle of CPU 713.
Media switch 701 has the data/address bus 711 that is connected in CPU 713 and DRAM 714.Address bus 712 also uses between media switch 701, CPU 713 and DRAM 714 jointly.Hard disc or storage device 710 are connected in a port of media switch 701.Media switch 701 outputs to mpeg video decoder 715 and audio decoder 717 separately with data flow.The signal of audio decoder 717 comprises audio prompt, and it is produced by system, and in response to the instruction of user on remote control or other internal event.Carry out numerical digit by mpeg decoder decoded audio frequency of exporting and the audio signal of separating and mix 718.Final resulting signal comprises vision signal, audio signal and is shielding demonstration, and can be sent to TV 716.
Media switch 701 obtains 8 bit data and it is delivered to disk, extracts another data flow from disk simultaneously, and it is delivered to mpeg decoder 715.All DMA engines described above all can operate at one time.Media switch 701 can utilize field programmable gate array (Field Programmable Gate Array, FPGA), application-specific integrated circuit (ASIC) (ASIC) or discrete logic circuitry press hardware and realize.
The formula logic only need be searched the annular event buffer among the DRAM 714, with original position and the type of telling each frame, and does not need to resolve the possible original position that lot of data stream is sought each frame.This kind processing mode can be saved a large amount of CPU disposal abilities, and can make the real-time requirement of CPU 713 maintain minimum state.The neither at any time need of CPU713 have very high speed.Media switch 701 provide as far as possible the time to CPU 713 to finish the work.Resolver mechanism 705 and event queue 708 make CPU 713 avoid audio data, video data and buffering area in mode cheaply, and the real-time of data flow.This kind mode is also allowed the low-down bus of use clock rate in the CPU environment, and the more cheap memory of mix proportion alternate manner operates.
It is that the function of formation is arranged in DMA transmission that CPU 713 has, and can set up next DMA transmission when it is idle.So can allow CPU 713 have servo dma controller 709 of a large amount of time.Owing to allow the bigger stand-by period, CPU 713 can respond DMA and interrupt in bigger time window.Though be from MPEG2 transmission extract or from the anolog TV signals coding and mpeg data stream, it normally utilizes and a kind ofly is called variable-digit speed (Variable Bit Rate, VBR) Bian Ma technology is encoded.This kind technology can the data volume that the representative image sequence is required be changed into the amount of movement between these images.This technology can be reduced the frequency range of signal in large quantities, and the sequence of fast moving (as basketball match) then can be encoded by bigger frequency range.For example, Hughes's live telecast satellite system is encoded with the speed of per second 1 to 10 megabit at required frequency range, and interframe changes.If do not use this structure, then for any computer system, be difficult to catch up with so fast data rate of variation in fact.
With reference to the 8th figure, the formula logic in the middle of the CPU has three notional parts: source 801, conversion 802 and place 803.Source 801 produces the data buffer zone.Change 802 deal with data buffering areas, place 803 is the consumption data buffering area then.Conversion is responsible in the distribution of the data buffer zone of its operation and is arranged formation.Buffering area is given data source with the state assignment as " blank ", and feedbacks with " being full of ".Then buffering area enters formation and offers the place with the state of " being full of ", and the veteran general can be returned with the buffering area of " blank " state.
Source 801 receives the data that come from encoder (for example digital type satellite receiver).The buffering area of these data is obtained from down conversion in this source, and these data are sealed up for safekeeping to buffering area, then in above-mentioned mode buffering area is advanced in the transmission channel.Source object 801 is not also known other situation about native system.Place 803 can consume buffering areas, and obtains buffering area from up conversion, and data are sent to decoder, then again the buffer release district to reuse.
Use two kinds of conversions 802 at this: space and time conversion.The example of space conversion promptly as buffered data by the time image convolution or the compression/de-compression of being carried out.Time conversion is to be used for when the buffered data that enters system and to leave when not having denotable the relation between the buffered data of system.This kind conversion is that buffered data is write the file 804 that is arranged in medium.Buffered data can be removed after a while, and is transmitted along transmission channel, and suitably ordering in the middle of data flow.
With reference to the 9th figure, it shows the C++ class hierarchical structure that the formula logic is derived.The TiVo medium core (Tmk) 904,908 and the 913 switch over operation system cores.This core provides such as operating functions such as memory distribution, synchronization and threadings.TmkCore 904,908 and 913 be will be taken from the medium core memory as object, its can offer the operator be used for the new object of construction or the deletion object.Each object (source 901, conversion 902 and place 903) has been defined as multithreading, and mode that can parallel processing operates.
TmkPipeline class 905,909 and 914 is responsible for the flow of control by system.Transmission channel is pointed to next transmission channel by source 901 to place 903 in flow.For example, if will suspend transmission channel, the incident that then is called " time-out " can be sent to first object in the transmission channel.This incident can be along transmission channel and one the tunnel is transferred to next object.This process is to carry out at the data by transmission channel in asynchronous mode.Therefore, in such as similar application such as telephonic communications, the flow control of mpeg data stream is unsynchronized, and separates from data flow itself.This mode tolerable uses simple logical design, has enough abilities simultaneously and supports previous described technical characterictic, comprising suspending, reverse, advancing fast and other function.Moreover this kind structure can be carried out quick and efficient switching between source data stream, as long as this is because of the data that abandon buffered and utilize single incident that decoder is reset, the data that after this come from new data stream will be passed through transmission channel.For example, when input part is caught channel when switching, maybe when switching between the live broadcast signal that comes from input part and the data flow of having stored, promptly need to use above-mentioned functions.
Source object 901 is TmkSource 906, and converting objects 902 then is TmkXfrm 910.More than be the classification of intermediate strata, the criterion behavior in the middle of its definition transmission channel.Conceptive, it is along with the transmission channel exchange buffering.Source object 901 is to take out (as media switch) from the solid data source with data, and leaves it in PES buffering area.In order to obtain this buffering area, source object 901 can require a buffering area (allocEmptyBuf) by the downlink data flow object in transmission channel.Source object 901 can be closed, till having enough memories.This means that the transmission channel oneself adjusts; It has automatic flow control.When source object 901 had been full of buffering area, it can be returned buffering area to conversion 902 by the pushFullBuf function.
Place 903 also can be subjected to flow control.NextFullBuf can be called out in the place, with inform the conversion 902 its be ready for for the buffering area that next is full of.This effect can be sealed place 903, till a buffering area has been ready for.After a buffering area is finished in place 903 (that is it has run out of the data in the buffering area), it can call out releaseEmptyBuf.ReleaseEmptyBuf returns buffering area to conversion 902.For example, then change 902 and buffering area can be returned to source object 901, so that fill up again.The method is except the advantage with automatic flow control, and it also limits buffering area specific store tolerance by allowing pressure translation buffer fixed configurations.This is for to reach cost-benefit key character in limited DRAM environment.
MediaSwitch class 909 is called the allocEmptyBuf method of Tmk montage fast cache 912 objects, and receives the PES buffering area from it.Then in media switch hardware, leave buffer circle, and produce the PES buffering area.MediaSwitch class 909 filling buffering areas, and it is pushed back Tmk montage fast cache 912 objects.
Tmk montage fast cache 912 can keep a fast cache file 918 in medium.Tmk montage fast cache 912 also can be retained in two pointers this and get soon in the middle of the memory block: advance pointer 919, it can show the place that next buffering area of coming from source 901 is inserted into; Present pointer 920, it points to the buffering area in using at present.
Pointer buffering area pointed is to handle via sail type decoder class 916 at present.Sail type decoder class 916 can be linked up with decoder 921 in the middle of hardware.Decoder 921 can produce the TV signal through decoding, and this signal can be encoded into the TV signal of analog NTSC, PAL or other analog format in succession.After sail type decoder class 916 is finished buffering area, it will call releaseEmpthBuf.
All kinds of structures can make native system be easy to test and debug.Each stratum all can test individually, carries out by rights to guarantee it, and all kinds of can little by little combination the and reach required function, can keep the ability of each object of Validity Test simultaneously.
Controlling object 917 is used to receive the instruction that comes from the user, and incident is sent to transmission channel, with the practice condition of control transmission passage.For example, if the user has a remote controller and viewing and admiring TV programme, after then the user presses time-out, controlling object 917 can send an incident to the place 903 to inform its time-out.Place 903 will stop the buffering area will to look for novelty.Pointer 920 can rest on its position at present.When place 903 received another incident of informing its broadcast, place 903 will begin to extract once again buffering area.Native system is in perfect synchronization, stops part from frame and begins this taking-up.
Remote controller may also comprise quick forward key.After quick forward key was pressed, controlling object 917 can be sent to an incident conversion 902, moves forward for two seconds to inform it.Conversion 902 finds that the time span in two seconds need move forward three buffering areas.Then it sends a resetting event to down going channel, is compelled to output so that any data in formation maybe may appear at the state of hardware decoder.This is a committed step because the structural requirement of mpeg data stream must be kept the state of a plurality of frames, and this state will owing to reorientate pointer become invalid.Then it moves forward three buffering areas with present pointer 920.Place 903 when calling nextFullBuf next time, and it will obtain new present buffering area.Identical method can be applicable to refunds function fast, and it is present pointer 920 moved backward and to reach to change 902.
System clock reference is positioned in the middle of the decoder.System clock reference can be accelerated under playing fast, and is decelerated in the next meeting of slow play.The place then requires whole buffering area quickening according to clock rate merely or slows down.
With reference to the 10th figure, derived from other two pairs as if leave transmission channel in of TmkXfrm class, so that the access of disk.One of them is called Tmk montage reader 1003, and another is called Tmk montage write device 1001.Buffering area enters Tmk montage write device 1001, and is advanced the file that is arranged in medium 1004.The buffering area of a file of medium 1005 is taken from 1003 requirements of Tmk montage reader.Tmk montage reader 1003 only provides allocEmptyBuf and pushFullBuf method, and Tmk montage write device 1001 only provides nextFullBuff and releaseEmptyBuf method.Therefore, " propelling " of 1003 execution of Tmk montage reader and input or Tmk montage fast cache 1002 end identical functions, Tmk montage write device 1001 then " pulling out " of execution and output or Tmk montage fast cache 1002 is held identical functions.
With reference to the 11st figure, it shows a preferred embodiment of reaching multi-functional.Source 1101 has a tv signal input.This source sends data to push-on switch 1102, and it is the conversion derived from TmkXfrm.Push-on switch 1102 has a plurality of outputs, and can be switched by controlling object 1114.This transmission channel that means a part can stop, and another transmission channel then can start arbitrarily according to the user.The user can be switched in the middle of different storage devices.Push-on switch 1102 may be output to Tmk montage write device 1106, and it proceeds to storage device 1107 or writes to fast cache conversion 1103.
One key character of this device is that it can be under the control of formula logic, and feed signals records part in selecting easily.According to pushing information such as remote controller such as the present moment, specific time span or via the beholder, Tmk montage write device 1106 can be switched writing down the signal of a part, and closing sometime after a while.This switches can cause usually sends one " switching " incident to push-on switch 1102 objects.
The method that another kind is used to start the selectivity record is by information is modulated to VBI, or is stored in MPEG exclusive data channel.The data that decoded from VBI or exclusive data channel can be sent to the formula logic.The formula logic can be checked these data, should begin to judge the record whether these data indicate the TV signal of being modulated.Similarly, this information also can indicate record and should when stop, or another data item can transfer to and indicates the signal when record should stop.Initial and stop indicating device and can be modulated to clearly in this signal, perhaps leave the coding that out of Memory in this signal also can be used for carrying out this information in standard mode.
With reference to the 12nd figure, it shows an example illustrates how the formula logic scans the word that is contained in the middle of the closed caption (CC), determining the time initial and that stop, and utilizes specific word or phrase to start record.Data flow comprising NTSC or PAL field 1201.The CC byte is to extract from each odd field 1202, and adds in the middle of the buffer circle 1203, handles by word resolver 1204 being used for.Word resolver 1204 is collected words, and till running into word boundary, this border is generally blank word, fullstop or other describes character.Recall above-mentioned situation, mpeg audio and video-data fragment are collected into a succession of fixed-size PES buffering area.One special data section can be added into each PES buffering area, to keep the word that extracts from CC field 1205.Therefore, the information of CC will keep synchronously with audio frequency and video, and can correctly present to the beholder when data flow is play.The data flow of so also allowing storage when the formula logic is idle for CC information provides processing, but its spread loads, reduce cost and promote efficient.In the case, state table logical one 206 can directly be delivered in the word that leaves the special data section in.
In the middle of data flow write down, each word can be locked in the middle of the table 1206, and this table indicates the identification maneuver of carrying out at this word.This action may only terminate in the state that changes identifier state machine 1207, maybe may cause state machine 1207 to send an action request, as " opening entry ", " stopping record ", " watching phrase ", or other similar requirement.Really, the word of institute's identification or phrase may cause transmission channel to be switched; For example, if use undesired language in the middle of the program, then can cover different vocal print roads.
It should be noted that parse state table 1206 and identifier state machine 1207 can be put at any time and be modified or change.For example, different table and state machines can offer each inputting channel.In another case, can be according to time on date or other incident and is switched in these unit.
With reference to the 11st figure, add and pull out switch 1104, it is to export place 1105 to.NextFullBuf and releaseEmptyBuf can be called in place 1105, come from the buffering area of pulling out switch 1104 to obtain or to return.Pulling out switch 1104 can have the input of any number, and wherein an input can be montage action 1113.Remote controller can switch between input source.Controlling object 1114 is sent to an incident and pulls out switch 1104, switches to inform it, makes it switch to the selected arbitrary input source of this controlling object from present input source.
Provide the montage action to be used for arranging some different storage signals, and may add the selected control of beholder via remote controller in measurable and controllable mode.Therefore, it is that mode with the derivative of TmkXfrm object presents, and receives " switching " incident that is used to switch to next storage signal.
So can allow formula logic OR user set up habitual video output sequence.The video-data fragment of any number can be arranged and be made up, promptly as reversed return type logic OR user uses broadcasting chamber vision mixer. Tmk montage reader 1108,1109 and 1110 can be distributed and be hung over to pull out in the middle of the switch 1104.Pull out switch 1104 and between Tmk montage reader 1108,110g and 1110, switch, with composite video and audio clips.Since the cause of the construction mode of transmission channel, the flow control automation.Push and Pull switch are promptly as the video switch of broadcasting chamber.
Class and the resulting object of deriving described herein can be made up by any way, is used for storing, fetch, switch and watching television broadcast stream to set up some different and useful configurations.For example, if can use multiple efferent and input part, then can watch an input and store another input, can produce the form of the image in the image simultaneously by second output, so that the previous data flow of storing of preview.The application that a kind of unique and novel software of these configuration representatives is changed, it can utilize single cost-effective device to reach costliness and the resulting effect of complicated hardware solution.
With reference to the 13rd figure, it shows high-level system diagram, and shows that backing up equipment with VCR implements.Output module 1303 is sent to VCR1307 with TV signal.So can allow the user directly with television program record on video tape.The present invention can allow the user be lined up from the program that disk is recorded to video tape, and can carry out scheduling at the time that program is delivered to VCR1307.Front page (EPG data) can be sent into VCR1307 before a program transmits.Long program can be adjusted by quickening playback rate or omission frame, makes it be fit to less video tape.
The output of VCR1307 also can be guided and is fed back into module 1301.Under this kind configuration mode, VCR is the standby system as media switch 1302.The Promgramming that the storage of all surpluses or priority are lower will be sent to VCR1307, for taking after a while.
Import the remainder that module 1301 can be decoded and is passed to the system information that is coded in VBI.Output module 1303 can be encoded onto in the output VBI data that remainder provided of system.The formula logic can be arranged and different types of identifying information is enrolled in the middle of the output signal, and this output signal will utilize VCR1307 to be recorded on the tape.This tape playback returned by can be allowed the formula logic to read this identifying information, make be recorded in this with on TV signal can correctly be handled.For example, when a specific program can be together with about being recorded and coming information such as source network to record on the tape.When this programme replay to input during module, this information can be used for the storage of control signal and presents to beholder etc.
Allly have the knack of this operator and can learn easily, this kind mechanism can be applicable to various data item is introduced in the middle of the formula logic, and these data item can't be regarded as TV signal.For example, software upgrading or other data can add native system.The formula logic that receives these data from television broadcast stream can be strengthened the control of this data processing method, requires certain authentication procedure and the decrypts information to embedding such as the key of grasping in advance according to certain.This kind method also can operate in conventional broadcast singal, thereby introducing offers non-TV control information and data the effective ways of formula logic.
In addition, allly have the knack of this operator and can learn easily, though more than be to be illustrated at VCR especially, any multimedia recording apparatus (as digital video disc-random access memory (DVD-RAM) register) can replace VCR easily.
Although the present invention is illustrated with reference to preferred embodiment at this, allly to have the knack of this skill person and can learn easily, other application can be substituted in this presenter and still without departing from the spirit or scope of the invention.For example, the present invention can be applicable to detect the criminal offence in gambling place.Input part of the present invention is connected to the photography surveillance in gambling house.The video data of record can carry out fast cache, and outputs to outside VCR simultaneously.When externally VCR just had been written into real-time input video, the user switched to arbitrary image feed, inspected the particular segment of the image that (for example reverse, broadcast, slow play, play etc. fast) write down.
The architecture of video data stream label
Please referring again to the 12nd figure.Label is the abstract incident that comes across television broadcast stream 1201.These labels may be embedded in the VBI of analog signal, or are embedded in the multiplexed exclusive data channel of MPEG2.As mentioned above, label can be embedded in closed caption (CC) field, and extracts buffer circle 1203 or memory allocation structure.Word resolver 1204 can identify unique label in the process that scans the CC data.These labels are to utilize the standard CC control code to be modified.Also can recessively produce label simultaneously; For example: produce according to current time and the program watched.
The invention provides a kind of TiVo of being called video tab and write (TVTAG) system, it is used for before broadcasting label (TiVo label) being inserted video data stream.With reference to the 14th, 16 and 17 figure, the TVTAG system comprises video output source 1401, inserts the compatible apparatus 1402, prison of closed caption information and output captions video as device 1405 at VBI, and software program, the latter is used to control VBI and inserts device, makes its captions label data object that will have the closed caption information form include video data stream 1406 in.Video data through tape label can be transmitted or be stored in suitable medium immediately, for follow-up transmission.
Do under the situation in most basic reality, TVTAG software 1406 is responsible for control VBI and is inserted device 1402.TVTAG software 1406 is reached an agreement on by standardization computer interface and device control code, and to join be that VBI inserts device 1402.When the operating personnel that watch video-frequency monitor 1405 judge when arriving the label insertion point of being wanted, it can push button and produce TiVo label data object, this object can be sent to VBI and insert device 1402 simultaneously, and is included into video data stream and for transmitting 1404 or store 1403.
TVTAG software possesses the additional functionality of control of video input source 1401 and video output storage device 1403.Operating personnel select specific video 1602, and video input stream is suspended, and can be overlapped on the monitor to help image-element 1702, and utilize this image-element of the slide-mouse of indicator device-for example-locate.The location of image-element 1702 also can be finished by operator interface 1601.Operating personnel utilize X position 1605 and Y position 1604 to come the input picture position.
Image-element and locating information are included into TiVo label object (following will the explanation) subsequently, and record timing code or frame of video.When operating personnel please oneself, can play again and record.Subsequently, send the most accurate label by inserting device.
Please refer to the 15th figure.In another preferred embodiment of TVTAG system, software program adopts the webpage of standard the Internet network association instrument, and shows this webpage 1505 for operating personnel.Webpage can impel script performed on the far-end server 1504 to produce the TiVo label object.Server 1504 control VBI insert device 1502, video source 1501 and record device 1503.The operating personnel 1505 that are positioned at far-end can obtain the low frequency range or the high frequency range version of video data stream from server 1504, with the reference as the insertion label.In case after necessary label data object had all produced and transmitted, it can be handled by the gross by server 1504 after a while.
In another preferred embodiment of the present invention, its nonlinear video editor system synthesis with software and extensively utilization becomes " insertion " object together, uses and allow that TiVo label data object can be inserted in the process that produces video.In this embodiment, nonlinear editing system is as source and controller system memory, and the function of placing image also is provided simultaneously, and it allows the TiVo label data object of placing the accurate frame of tool.
Please refer to the 18th figure.Label is incorporated in the video data stream before video source 1801 or on it.Subsequently, video data stream via satellite 1802, cable or other transmission method 1803 on land transmitted.Receiver 1804 receiving video datas stream, identify label, and respond these labels and carry out suitable action.Spectators view and admire the video data stream that finally obtains via monitor or television machine 1805.
The invention provides a kind of support and take the architecture of moving according to the label of video data stream.The elasticity utilization example that the TiVo label is provided comprises:
Wish to know the TV guide of when viewing and admiring radio network, so that allow spectators can select to record the program that will be about to broadcast future.The TiVo label that is additional to TV guide can be pointed out date, time and the channel that program is broadcast.Details about the active TV guide can be described in more detail below.
A kind of common problem can occur in the situation that baseball prolongs additional match.No matter when, surpass when entering the time of advertisement when the baseball game time, VCR and digital VTR (DVR) can cut off recording process.In video data, transmit the TiV0 label, must proceed to point out recording process.When end of match, also transmit the TiVo label, stop to record with apprizing system.
Boxing match is through regular meeting's end-stop, thus can cause VCR and DVR in remaining retention time, record under replacement content.Transmit the TiV0 label, finish to point out program, and apprizing system stops to make video recording.
Please refer to the 19th figure.Advertisement tags, and in order to broadcasting the advertisement that is stored in local terminal or far-end, uses the replacement whole nation or zone advertisement in addition.In video data stream 1901, be overlapped in label on the program fragment 1902 (commercial advertisement or other data segment) and be with the technology such as above-mentioned TVTAG system and tag.The TiVo label can be informed starting point and the terminal point of the present invention 1905 about old program fragment 1902.Can add independent label 1903 and inform the duration of the present invention 1905, or label is additional to the starting point 1903 and the terminal point 1904 of old program fragment, with starting point and the terminal point of pointing out data segment 1902 about old program fragment 1902.When detecting label, the present invention 1905 can search new program fragment 1906, and directly broadcasts new data segment and replace old program fragment 1902, and when sign-off, it will be returned to original program 1901.Spectators will can not experience above-mentioned transfer process.
Three kinds of selections are arranged this moment:
1) the original program of system's 1905 sustainable fast caches; So, if spectators 1907 make program 1901 reversings and play this program once more, then it will see overlapping data segment;
2) old program fragment 1902 also can be replaced in fast cache; Therefore, spectators will can not see overlapping data segment; Perhaps
3) but the original data segment 1902 of system's fast cache, and when playing decipher label again.Yet, if no intelligent label pre-fetch function, have only when spectators have and back up extremely fully and when making system can learn first label in the overlapped data section, this function is just brought into play effect.
The length of old program fragment is added starting point 1903 and terminal point 1904 labels, can address the above problem.Another processing mode is a tag match, makes system by starting point label 1903 identification terminal point labels 1904.Advance fast or reverse and when passing through one of them label when system 1905 carries out, system 1905 can learn that it must seek another label.Label 1903 and 1904 pairings contain the identifier of a uniqueness.The label of pairing can be searched subsequently forward or backward by system 1905, and replaces old program.When system's execution label is looked ahead, the restriction of its time or frame length is arranged.This restriction is included in the middle of label or the standardization.It is to be the flexible processing mode of tool that the boundary line is contained in the label.
For example, the program fragment that will play be according to the place, in one day certain period, programme content or selected No. the 09/422nd, 121, the U.S. patent application case that the applicant had (be described in the application) according to preferred engine.Utilize preferred engine, the suitable program 1906 that comes from locality or server stores can be selected according to spectators' personal data.What personal data contained spectators views and admires custom, program hobby and other personal information.The program fragment 1906 of storage also has the program object of describing its characteristics, these to as if be used to search the hobby guiding that meets most.
Apparently, must there be a kind of circulative metabolism in the commercial advertisement, to avoid having broadcast advertisement.Be inclined to for the present program of viewing and admiring produces with respect to the skew of program data, the hobby guiding can further be offset, and can utilize this skew tendency, makes the program 1906 generation skew couplings on commercial advertisement catalogue and the disk.For example, if certain spectators viewing and admiring soap opera, and these spectators' hobby tendency is sports cast, and then the present invention will select the beer advertisement, but not the diaper advertisement.
Label also can be used for formation condition and selects.Label has the mode that himself weighs hobby.In the case, hobby is weighed and can be inclined to mutually relatively with hobby, if comparative result shows height correlation, then the present invention can not change commercial advertisement.If the comparative result lower correlation then can trigger the utilization said method
It should be noted that in all cases, system 1905 all has the sufficient time to select.The transmission channel structure is understood 1/2 second video data of fast cache usually, so that provide many times to change data flow between input and output.If need the longer time, then can be transmission channel increases more buffer memory.When the programming in the disk was intact, system can form the time delay of equal length by the data flow before reading.
It should be noted simultaneously, also can utilize said method to detect commercial advertisement, this method is described in U.S. patent application case the 09/187th, No. 967, its name is called " analog video subscripts and coded system (Analog VideoTagging and Encoding System) ", and the preceding application case of taking off is also had by this case applicant.When before use is described in, taking off the label in the application case, also can use replacement mode with the said method same type.
Please refer to the 19th figure and the 22nd figure.Label can be carried out commercial advertisement " fast moving/skip (zapping) " function.Label can be used for indicating the starting point 1903 and the terminal point 1904 of certain commercial advertisement, so it can be skipped over or obtain in advance.The saltus step key 2205 that spectators only need press on the remote controller 2201 gets final product.The terminal point label can be searched by system, and and then follows the frame of this label and play again.The commercial advertisement number that skips over depends on the video data stream quantity of buffer memory.
According to the fancy setting that spectators subscribe, system 1905 can skip over the advertisement of now broadcasting program voluntarily, or skips over the commercial advertisement of prerecording and being stored in the program in the memory 1906.If will skip over the commercial advertisement of now broadcasting in the program,, in the passage a large amount of buffer memorys must be arranged then according to said method.Allow that system skips over the commercial advertisement that is recorded in the program, can allow spectators view and admire the program of broadcasting continuously, and can not be subjected to the interference of any commercial advertisement.
The label that is additional in the program can be used as index.For example, spectators can jump to each index in the program via pressing the saltus step key 2205 on the remote controller 2201.
Label also can be used for systemic-function.As mentioned above, system can be stored in local terminal with programme content and use for himself.System 1905 must obtain program material in some way.Be transferred to specific channel in the off-line time and can reach this purpose.System 1905 is its label that begins to record of search informing in the middle of data flow 1901.Recorded content comprises some by label 1903,1904 program fragments that defined, and perhaps likes tendency in it can identify.The label apprizing system 1905 that is arranged in the terminal point of data flow stops recording process.Program fragment 1906 is stored in local terminal, and according to the usefulness of said method for follow-up index.
The present invention possesses following key points in design:
The design provides and clearly separates mechanism and strategy.
With inner viewpoint, label can be regarded as causing the abstract incident of tactful module.It is abstract that the label information that the source channels object is responsible for receiving is mapped to these inside.
Abstract tag storage is another data segment in the PesBuf data flow as it.So can handle any size tab of tool precise time information.Simultaneously also can allow label exist and become the some of program recording, therefore viewing and admiring whenever program all can take suitable action.
The renewable information of label about current program and following program.This type of information is to keep for recorded program.
When label can give record during by system.In addition, also can be with this information uploading.There is no need to keep all information of following certain label.
Label can be produced according to individual other time-histories.For example, utilize radio network work station record to produce label according to time and the radio network of viewing and admiring.The label that produces according to the time can be retained in the information flow of recording.
With time is the label of foundation
Please refer to the 20th figure, the label that with time is foundation is to be that the tag recognizer 2012 of foundation is handled by the time.This object 2012 is listened to channel change event, and when switching to known radio network, and this object can receive this radio network " time interocclusal record ".If there is record sometime, then object 2012 can be set up the label time-histories according to the current time.When the time of each label occurred, object 2012 was sent to source 2001 with a certain incident, was inserted into to point out label.2001 of source objects insert the current just next available position in the PesBuf of construction with label.Next " available " position can be determined according to frame boundaries or other condition.
The effect of source object
Source object 2001 is responsible for label is inserted its handled PesBuf data flow.There is the source object that is respectively applied for analog input sum digit television source in this hypothesis.
Label can some different modes come across analog data flow:
-in the EDS field.
-recessive CC the field of using.
-be modulated to VBI, perhaps utilize the ATVEF specification.
-be the mode of foundation with time.
In digital television broadcasting data stream, or be after the MPEG by analog-converted:
In-the band, use TiVo to subscript technology.
-MPEG2 exclusive data channel.
-MPEG2 data flow feature (as frame boundaries etc.).
-the time is the label of foundation.
Source object 2001 and not responsible parsing label and take any action.On the contrary, source object 2001 should only be responsible for picking out the potential label in the data flow, and it is added in the PesBuf data flow.
The identification of label and action
Conceptive, all labels can be divided into two big classes: when receiving, must take the label of action (for example program recording), and when showing-that is when viewing and admiring program-must take the label of certain action.
Receive the processing of label
When receiving, must take the processing mode of the label that moves as follows: the new reception label mechanism time class 2003 of setting up Tmk push-on switch class 2002.When input traffic passed through this class 2003 between source object 2001 and program fast cache conversion 2013, inferior class 2003 can pick out and receive label and take suitable action.
It is once processed usually to receive label, then promptly loses efficacy.
The processing of display label
Must take the processing mode of label of certain action as follows during demonstration: the new display label mechanism time class 2007 of setting up TmkPullSwitch class 2008.When output stream passed through this class 2007 between conversion 2013 of program fast cache and place object 2011, inferior class 2007 can pick out display label and take suitable action.
The processing of tag program
Have only when TagReceptionPolicy object 2009 comes across current channel, just receive the processing of label.Have only when the TagPresentationPolicy of source channel object exists, just carried out the processing of display label.
The TagPolicy object factory will identification be which label, and allow and carry out which action.
When inputting channel changed, receiving label object can be apprised of, and this object can extract the TagReceptionPolicy object 2009 (if this object exists) of this channel simultaneously, and observes the program that already is defined.
When output channel changed, the display label object can be apprised of, and this object can be got the TagPresentationPolicy object 2010 (if this object exists) of this channel simultaneously, and observes defined program.
The label record
The reception of label can be recorded in the database.This action has only when existing TagReceptionPolicy object 2009 and this label to be set to record attribute and just occurs.For example, record attribute is perhaps set, but still is not allowed to carry out to receive and move.So can reach the passive type record of the action in the input traffic.
The change that passage is handled
Importantly support Data Update about current presentation content.Following strategy is proposed:
-whenever input source changes or new presentation content when beginning, can make the duplicate of projection object, and this duplicate is all doed for supplement in other running in the passage.
-renewal label belongs to the reception label; Under the situation that strategy allows, upgrade projection object through duplicating.
-if will record current presentation content, then show the duplicate of object and together deposit with it, make the program of storing possess and its together stored adequate information.
-video tape recorder must be learnt the situation that the projection object has changed, so that it can not cut off the video recording of for example baseball game too early.
Label decipher and tag state machine
The utilization of label is very flexible, in case because the TagPolicy object has been used to discern after the effective label, the abstract label of label interpreter 2005 meeting decipher standardization, TiVo tag state machine 2006 then can the executable operations label.Label through decipher can start predefined action group.Each group action all stylizes in the system of being set in advance.
The state machine label belongs to the operability label, and it can not carry executable code, but carries out the formula step.So can allow the label originating terminal make up this type of label and the special action of working out of execution in the TiVo system.The state machine label can reach the result that can reach as the decipher label, but it has the flexibility of the performed action group of dynamic change.
Abstract decipher label
The abstract tag set that can use is to be defined in the middle of the tabulation that is called label/action lists.This kind tabulation is stored in the database object usually; Wherein there are some defined abstract labels.These actions can be divided into three major types:
The action that-spectators can watch (can comprise interaction).
-about the metamessage of data flow (for example channel, time, broadcast length etc.).
-TiVo controls label.
Causing dish to carry the label that database changes or recessiveness is recorded must be through checking.This work is finished by the control label.
The label that spectators can watch
-menu
The indication of this kind label will provide selection to spectators.Why the incidental data of this kind label can point out option, and such as other related datas such as Show Styles.Menu possesses the function that overtime is stopped using.
The purpose of menu label is to provide selection for spectators.If spectators are absent from the scene or lose interest in, then menu should disappear immediately.The operating principle of menu can suspend the program of broadcasting at present according to circumstances.The display mode of menu not-be decided to be tabulation.
-have ready conditions and release another program
This kind label is represented: when certain conditional is true time, should broadcast another program.This condition is analyzed by tactful module.Condition can Chang Weizhen.
-another program of pop-up of having ready conditions
This kind label can be returned to a program.After program finished, piling up of another program can automatic pop-up.If channel has changed or spectators enter TiVo central authorities menu district, then all other the equal pop-up of program.
Appearing other program suddenly is a kind of method of arbitrary sequence being inserted the program of being viewed and admired.In the superiors' evaluation condition data not.On the contrary, tactful module must be checked these data so that select.For example, the method can be used for forming " intussusception " advertisement.
-display indicator has ready conditions
This kind label can make designator be revealed on the screen.Designator can be named, and can inquire about the set of indicators in the running at any time.This kind label or label strategy can point out to guide the overtime numerical value of designator.
-clear indicator the bar of having ready conditions
This kind label can be removed the designator in the running.If channel has changed or spectators enter TiVo central authorities menu district, then all designators all can be eliminated.
Designator is another kind of in the method for not interrupting providing for spectators under the situation that program broadcasts selection.Designator also can be used for representing the condition of the data flow that perhaps can be interested in.For example, " initiatively TV guide (ActivePromo) " but mat provides the program object identification code to be set up as the part of label data, make this program can obtain selecting.When designator manifested, if spectators press certain specific button, then program can be scheduled recording time.
The metamessage label
-current the information of broadcasting
This kind label generally is used to hold the information about the current program of broadcasting.Each label links a certain information, for example time started, concluding time, duration etc. usually.This kind label can be used for recording of " prolongation " certain incident.
-following the information of broadcasting
This kind labels class is like above-mentioned label, but it comprises the information about broadcasting future.There are two kinds of correlation circumstances at this:
Above-mentioned information is about a certain item information of broadcasting in the database Already in.This database object can be upgraded in good time.
Above-mentioned information is the non-existent information of broadcasting.Can set up the new object of broadcasting this moment, and started by this label.
TiVo controls label
-authorize a change
This kind label can utilize of that month close encryption of security key usually.The useful life of this authentication is set by operating principle, and it perhaps is one or two hours.Therefore, if allow to change the TiVo system mode of local terminal, then above-mentioned label must continue to broadcast again.
The purpose of this kind label is to destroy for premeditated (or unexpected) of stopping to utilize the inherent non-safety label mechanism such as extension data service (EDS).If radio network provides EDS information, should determine at first that then the label that radio network provides is correct, and the situation of tag transmits system unlikely takes place to destroy.Secondly, should with this radio network cooperation, using provides a kind of Verification System that only passes authenticating tag at this radio network.The label of unauthenticated never can insert the PES data flow by source object.
-have ready conditions and record current program
This kind label can make the program of being viewed and admired at present put thus and be stored in the disk.When finishing, program stops to record.
-having ready conditions stops to record current program
This kind label can stop to record the program of being viewed and admired at present.
-have ready conditions and record following program
Provide at this and to broadcast object identification code (perhaps directly broadcast in the label and transmit) in future.Program can be lower than under clearly the selecting of spectators at the background order of priority and is scheduled the time-histories of recording.
Following program is recorded in-the cancellation of having ready conditions
Provide at this and to broadcast the object identification code.If by previous label is the time-histories of this object scheduled recordings, then this is recorded and can be cancelled.
These labels and the following label of broadcasting can be by inserting through the Safe Format of encrypting.If these labels are through suitably checking, then source object only can insert the PES data flow with these labels.
One of them purposes of these labels is to start TiVo catalogue-for example loop set, advertisement, neutral gear etc. automatically.Download after a while can make this catalogue quilt " installation " and become upstate.
-the storage file of having ready conditions
This kind label is the data that are used to transmit in the data flow, and it is stored in the disk.For example, the broadcasting webpage promptly can pass through this kind mechanism.
-the storage object of having ready conditions
This kind label is the object that is used to transmit in the data flow, and it is stored in the disk.The storing process of object can be followed the normalized objects update rule.
Below make example for the reality of utilizing closed caption (CC) the projection label partly that is inserted in data flow.Because before certain signal was transmitted arrival user's receiving system and decoding, this signal can be retained, select the CC part of data flow.The remainder of VBI signal does not then guarantee so.When being encoded into MPEG-2, many satellite systems can removal closed caption all parts in addition.
Very strict frequency range restriction is arranged on the CC data flow.The data rate of CC data flow is two 7 bit bytes of each frame of video.In addition, for fear of conflicting with control code, data must be from 0x20, thereby in fact its transmission rate is limited in about 6.5 byte (for for simplicity, deleting the byte of cutting 6).Moreover above-mentioned frequency range approximates 360 bps.If channel and actual CC data sharing then will further reduce above-mentioned transmission rate.In addition, need to transmit extra control code, attempt the TiVo label as the CC text display with the TV of avoiding possessing the CC function.
Basic label design
This paragraph will illustrate how to arrange label in closed caption data stream.Suppose recapitulative understanding is arranged at this for the specification of closed caption; Yet this point is not a decisive factor.
Label can't be seen
Be placed in TiVo label in the middle of the data flow and should do not influence demonstration on the TV of tool closed caption function.This purpose can be reached by following method: at first transmit one " captions are written into again " instruction (transmitting twice in order to avoid slip up), be right after the character of a string descriptor label, be " wiping non-display-memory " instruction (transmission twice) after these characters in order to avoid slip up thereafter.The effect of said process is with the memory beyond the text loading picture, then removes this memory again.The TV that generally possesses the closed caption function will can not show this text (according to the EIA-701 standard).
As long as the closed caption decoder is not to be in " rolling " or " scrolling " pattern, then said method must prove effective.In this kind pattern, " captions are written into again " instruction will cause text deleted.For overcoming this problem, even the TiVo label is sent to second closed caption channel, the TiVo label still can be received and give identification.According to aforesaid way,, still can transmit label by closed caption channel 2 even if closed caption channel 1 is set to the rolling type text.
The coding of label
The text that transmits with the TiVo label comprises " Tt " letter, secondly is the single character of representing this tag length, and then is label substance, then then is the cyclic redundancy check (CRC) code (CRC) of label substance." Tt " letter possesses sufficient uniqueness, and unlikely run into identical letter in general CC data.In addition, general CC data from the Position Control sign indicating number, should be shown in which position screen on to point out text through regular meeting.Do not show owing to can not use, so do not need this kind position data at screen.So, and then run into after " captions are written into again " control code " and Tt " possibility of letter is extremely low, can guarantee fully that almost this kind is combined as TiVo label (yet this real make need not be dependent on above-mentioned situation like this really).
The single character of representing tag length is tag length to be increased 0x20 also get as calculated.For example, if its length is 3 characters, then used length character is 0x23 (' # ').Thus, the above-mentioned real length that may extend into is 95 (having only 96 characters because word is concentrated), and maximum length then is defined as 63.If need longer label, then can be the decipher that the length character increases other 32 probable values.
The probable value of label itself is to be defined in following tag types one joint.
Above-mentioned CRC be a kind of 16 CRC-CCITT (international telegram phone consultative committee) standard code (that is, multinomial=x^16+x^12+x^5+1).The CRC sign indicating number is to be placed in data flow with three independent characters.First character is that 0x20 is added that six highest significant positions of CRC also get as calculated.Character late is that 0x20 is added that second bit the most remarkable of CRC also gets as calculated.Last character then adds 0x20 that last four of CRC also get as calculated.
Tag types
This paragraph will describe the example of TiVo label in detail.It should be noted that each sequence label is begun by at least one byte, and this byte is represented the type of label.
The iPreview label
Please refer to the 17th figure.An iPreview label comprises four information.First information is 32 program identification code of trailer.Second information comprises the lasting on-the-air hour of trailer.The 3rd item number is according to being iPreview prompting 1702 positions that are placed on the screen 1701, and last information is then pointed out employed size for iPreview.
The screen position of iPreview prompting is the ratio of wide, the high-res of screen.The Building X mark uses 9 and distinguishes width, thereby the coordinate that obtains at last is as follows: X=(x_resolution/511*xval).If xval is 10, then on the screen of 720x486, (use the CCIR656 resolution), the Building X is designated as 14.The Building Y mark uses 8 to distinguish height, thereby the coordinate that obtains at last is as follows: Y=(y_resolution/255*yval).The position in X, the mark indication debugging figure upper left corner, Building Y.
(that is x=511 y=255), represents that then the producer will determine the work of its position to leave system for and finish if X, Y value are set as the probable value of maximum.System can be placed in debugging figure predefined position.Use maximum to represent that the reason of predeterminated position is: " reality " position will not be set at these numerical value, because whole modulation figure will be exceeded outside the picture.
The size hurdle is a 4-digit number, and it represents the size of all prompting images.The corresponding predefined image size of 16 possible numerical value on this hurdle, set-top box (video signal adapter) should be provided in advance.
Overtime is restricted to one 10 numeral, and the number of the frame in the trailer is stayed in its representative.This useful life that will limit label is 34 seconds.If the duration of certain trailer is longer, then must repeat this label.It should be noted, the restriction of above-mentioned overtime be " artificial restriction " in 10, make a mistake avoiding.When the overtime of certain producer using form mistake in label limited, above-mentioned processing mode can avoid it to have influence on follow-up commercial advertisement.
Version is the numbering that is used to compile and edit version, uses identification trailer itself.Use complete closed caption character set at this, seal this number (thereby be restricted to 6 with it), so can form 96 probable values to replace with the position, but not the individual probable value of 64 (2^6).Therefore, the start context scope should be within 0-95.Do not use reserved character at present as yet.This kind character must exist, and aims at the border of 2 bytes so that control code can correctly stop.
First character of Ipreview label is " i " always.
All fields are to be encapsulated in same bit boundary, then are further divided into six place values, and these place values can be converted into character (by increasing 0x20) and transmit.The order on above-mentioned hurdle is as follows:
32: program identification code (ID)
9: the Building X mark
8: the Building Y mark
4: the image size
10: the overtime restriction
1 character: version
1 character: keep the hurdle
Field always has 66, and it needs 11 characters to transmit, and adds that 1 character is used for the version hurdle, and 1 character is used to keep the hurdle.Theing contents are as follows really of each character:
1) 0x20+ identification code (ID) [31:26]
2)0x20+ID[25:20]
3)0x20+ID[19:14]
4)0x20+ID[13:8]
5)0x20+ID[7:2]
6)0x20+ID[1:0]X[8:5]
7)0x20+X[4:0]Y[7]
8)0x20+Y[6:1]
9) 0x20+Y[0] size (size) [3:0]
10) 0x20+Y[0] size[3:0] overtime (timeout) [9]
11)0x20+timeout[8:3]
12)0x20+timeout[2:0]
13) 0x20+ version (version)
14) keep
Comprise first character " i " interior, the length of iPreview label is 14 character+3 CRC character.Add label shelves head (3 characters), it makes total length become 20 characters, and can transmit on 10 frames.Add that in addition 4 are used to transmit the frame that twice " captions are written into again " reaches " wiping not display-memory ", this means that the iPreview label will take 14 frames (0.47 second) when broadcasting.
A complete iPreview label comprises:
" captions are written into again ", " captions are written into again ", Tt1 (0x20+17=0x31=0110001=" 1 ") i<13 character iPreview labels 〉, 3 character CRC wipe not display-memory, wipe not display-memory
Odd even debugging character
At present, parity bit is as parity check.Yet because CRC has been contained in wherein, parity bit does not need to possess the function of error checking.Further develop this design, can utilize dexterousr mode to use parity bit.Because the closed caption receiver will certainly be ignored any character with wrong parity bit, this a kind of preferred mode of the limited CC channel of frequency range of utilizing can be reached by deliberately using wrong parity.So can exempt again captions and be written into and delete not display-memory, simultaneously easier in existing C C data " interspersing " TiVo label.
The iPreview audience interaction
Please refer to the 17th figure, the 20th figure, the 21st figure and the 22nd figure.The iPreview label can impel label interpreter 2005 that iPreview prompting 1702 is shown in screen 1701.IPreview prompting 1702 is to inform spectators, and the TV guide in the running can be used, and spectators can inform the TiVo system, make it record the program that will be about to broadcast future.Spectators respond iPreview prompting 1702 by the selection button of pushing on the remote controller 2,201 2204.
Label interpreter 2005 can be waited for user's input.According to the predefined hobby of spectators, press and select button 2204 can make the time-histories of label interpreter 2005 automatic scheduled recordings programs, thereby become a kind of singly-bound recording function, also be spectators and present and record option screen 2101.At this moment, spectators can highlight the option of recording on the menu 2102, and press options button 2204 and program is scheduled and record time-histories.
Label itself is by 2005 deciphers of label interpreter.Label interpreter 2005 can be waited for any input of spectators by remote controller 2201.In case spectators press after the options button 2204, label interpreter 2005 can inform that TiVo system scheduled recordings is described in the time-histories of the program of 32 program identification code in the iPreyiew label.
Please refer to the 20th figure, the 22nd figure and the 23rd figure.IPreview also has other purposes.Every purposes all is subjected to the domination of programme content and display screens image.Obviously, system can't the decipher programme content, but the combination of image and program identification code can inform which kind of action label interpreter 2005 should take.Below for producing two examples renting and sell.
The process that generation is rented can occur in the automotive advertising of for example broadcasting.When the iPreview image came across on the screen, spectators promptly learnt and can enter interactive menu via pressing options button 2204.
Menu screen 2302 is to show that by label interpreter 2005 it provides selection for spectators, to obtain more information 2303 or to view and admire automobile film 2304.Spectators can press live TV button 2202 at any time and leave.If spectators select to obtain more information 2303 by up and down arrow keys 2203 and options button 2204, then the desired information of spectators can be sent to manufacturer 2305 by label interpreter 2005, and produces product introduction by this.Spectators press options button 2204 can get back to program.
When for example broadcasting product advertising such as music album, can produce sale.IPreview image 2301 can appear on the screen.Spectators can press options button 2204, impel label interpreter 2005 display menu screens 2307.
Menu screen 2307 is selected to buy product 2308 or leave 2309 for spectators provide.If spectators select "Yes" 2308 to buy this product, then label interpreter 2005 can send order form to manufacturer together with spectators' purchase information 2310.If this advertisement is the music album advertisement, then spectators also can select to view and admire the music film of music making people made.
No matter when when system made spectators return program, spectators can get back to the place of leaving originally.So will give spectators a kind of sensation of broadcasting continuously.
Heavily lead (redirect) notion and can expand to the aspect, internet easily.The iPreview icon can be to manifest as aforesaid way.When spectators pressed options button 2204 on remote controller 2201, webpage can present for spectators thereupon.Spectators can carry out interaction with this webpage subsequently, and after this interaction was finished, native system can make spectators turn back to and before leave the place of viewing and admiring program.
Utilize above-mentioned hobby engine, the information that presents for spectators in forming product introduction or sales process can be fit to niche audience easily.Spectators' menu, option and the screen that custom, program hobby and personal information can be used to select to offer spectators of viewing and admiring shows.Each menu, option and screen show all relevant program object, and these objects can compare mutually with spectators' hobby tendency.
For example, if certain spectators is the male sex, and advertisement provided by Chevrolet company, then when these spectators press options button, can manifest a lorry photo.If these spectators are the women, then can manifest the photo that movable folding paulin automobile is arranged.
It should be noted: following described tag state machine 2006 can carry out fully with above-mentioned example in the performed same steps as of label interpreter 2005.
TiVo tag state machine
Please referring again to the 20th figure.Preferred embodiment of the present invention provides a kind of tag state machine (TSM) 2006.This kind tag state machine is a kind of mechanism that is used to handle abstract label, and it can produce the action that spectators can watch by the TiVo receiver.
Setting up initiatively, TV guide is one of them simple example.As mentioned above, initiatively TV guide is for being about to broadcast the advance notice of program, and spectators can select to allow the TiVo system record when broadcasting in that this program is actual immediately.
In above-mentioned simple example, there are some potential complexity: must produce certain designator, with this chance of prompting spectators; Designator must present exactly and disappear; Must be provided at the correct identification code of the program of this discussion; The program that initiatively TV guide occurs can be viewed and admired in the time that is different from its original on-the-air hour.
Aspect the developing and managing of TiVo label, also there is challenge.Importantly to reduce change as far as possible at existing broadcast mode and technology.This outgoing mechanism should be simple as far as possible, makes it be incorporated into broadcast data stream easily, and obtain strong and reliable operating characteristic.
The operation principles of label
As mentioned above, thought that the available bandwidth that transmits label can be restricted.For example, VBI has the limited free space of falling over each other to use.Even in digital television signal, the outer data volume of the band that it transmitted is also few, because most of user of this signal mainly is the selection that focuses on television program layout.
Therefore, label becomes the only simple object of several bytes of size.Comparatively Fu Za action is to set up by transmitting a plurality of labels continuously.
The implicit label of the characteristic of broadcast transmitted will be lost because of problems such as signal problem, sunspots.TSM utilizes certain mechanism to handle the label of loss, and guarantees can not adopt any not action as expecting because of the label of losing.
Generally speaking, the label action that can watch of spectators is only relevant with its channel of watching; In this hypothesis: after channel changes, promptly throw aside tag state.
Entity tag can translate to abstract label by the source object 1901 that receives these entity tags.Because the not subsidiary executable code of label, so label is not " positive representation person "; Operation TSM can obtain the modifications and changes that spectators can watch, but the basic running of TiVo receiving system can't be subjected to the influence of sequence label.If label can comprise executable code-for example the be applicable to Java byte stream of ATVEF, then the TiVo quality of viewing and admiring experience can be adversely affected because of the software of writing relatively poor or malice.
All label actions are managed by the matching strategy object that is matched with current channel.Any action is object startup or inactive thus all; If policy object does not exist, then all label actions all can be blocked.
Substantially abstract label
All abstract labels all have a common foundation structure.Following part can appear in all abstract labels:
-tag types (1 byte)
Do not admit of type 0.Type 255 indication " extension " labels will be in case may need to surpass 254 label values future.
-sequence label (1 byte)
This kind do not had a hurdle of sign and increased progressively along with each label in the sequence.For the label that does not belong to sequence, this hurdle must be set at 0.1 sequence label is represented the beginning of new sequence; Conceptive, sequence can be length arbitrarily, but it must be made up of the orderly fragment that is less than 255 labels.
Each tag types all has a built-in sequence length (can be 0); Introducing sequence number is to lose for the label of the omission of the label in the data streams or other form.Generally speaking, when a sequence made a mistake, state machine can be thrown aside and be reseted to whole sequence label.
Label should in the entity scope, test and.As if checking and not being inconsistent, then source object can be thrown aside label.So can cause sequence errors and reset state machine.
-label time mark (8 byte)
This is the lock in time in the television broadcast stream, and label is promptly at this moment by identification.This time can be synchronous with all other displaying contents that the TiVo receiver is produced.This part will can not be transmitted, but be produced by receiver itself.
-label data length (2 byte)
This is the length of any data in parallel with label.These data are to give decipher according to tag types.Entity scope interpreter should be at data execution error checking at least to a certain degree.
Tag state machine (TSM)
TSM is the some that label manifests mechanism, and this mechanism and replay video are online.
Conceptive, TSM is that the abstract of managing integers piled up, and wherein the accuracy of integer is at least 32, or its size is enough deposited an object identification code.This object identification code is an abstract, and it can be indicated or not indicate, and real object on the TiVo receiver-otherwise this object may must be mapped as correct object.The size of piling up is to be limited in 255 data item, to prevent the destruction of denial of service.
TSM also manages one group of parameter.Parameter called after 2 byte integer.Parameter title 0 is retained.Sequence label can be operated " user " parameter; This type of parameter between 1 and 2^15-1 between." system " parameter is handled by TSM, and comprises the numerical value about present TiVo receiver, for example: the object identification code of current program, TSM revised edition and other Useful Information.The title of these parameters is between 2^5 and 2^16-1.The number of user variable is limited in the TSM; And the TSM parameter is indicated this boundary line.
Label data is the TSM command sequence.When label is identified and is allowed, promptly begin to carry out these instructions.TSM instructs byte-oriented, and specific instruction can comprise extra byte and supports its function.
Can divide into some types for the TSM instruction of utilization:
The data move
Push_byte-follow instruction and byte is pushed into is piled up.
Push_short-follow instruction and short number is pushed into is piled up.
Push_word-follow instruction and word is pushed into is piled up.
The parameter access instruction
Push_var-follow instruction and the following parameter that pushes away with 16 names.
Pop_var-follow instruction and pop-up are with the parameter of 16 names.
Copy_var-follow instruction and from piling up the parameter that copies to 16 names.
The stack operation instruction
Swap-make goes up the two-layer value of piling up most and exchanges.
Value is piled up by pop-pop-up the superiors.
Arithmetic instruction
Add_byte-follow instruction and will the number of having byte be added to and pile up top layer.
Add_short-follow instruction and will the number of having short number be added to and pile up top layer.
Add_word-follow instruction and will the number of having word be added to and pile up top layer.
The data item of and-top layer and following one deck are piled up is added together, and this piles up pop-up and time push away new value.
The data item that or-with top layer and down-layer piles up get " or ", this piles up pop-up and pushes away new value down.
Conditional order
(only being used to the comparison of the number of nothing parameter)
Brif_zero-, then follow instruction and 16 side-play amounts of the number of being branched off into if piling up top layer is zero.
Brif_nz-, then follow instruction and 16 side-play amounts of the number of being branched off into if it is non-vanishing to pile up top layer.
Brif_gt-, then follow instruction and 16 side-play amounts of the number of being branched off into if piling up top layer piles up data item greater than the next one.
Brif_ge-, then follow instruction and the number of being branched off into 16 bit side-play amounts if piling up top layer piles up data item more than or equal to the next one.
Brif_le-, then follow instruction and 16 side-play amounts of the number of being branched off into if piling up top layer is less than or equal to the next one and piles up data item.
Brif_lt-, then follow instruction and 16 side-play amounts of the number of being branched off into if piling up top layer piles up data item less than the next one.
Brif_set-if to pile up data item be when linking together with the AND operator when piling up top layer and the next one, presence bit is gathered, and then follows and instructs and 16 side-play amounts of the number of being branched off into.
Action command
Exec-carry out the label action at naming in the object identification code of piling up top layer
Fin-termination label and do not take any action
System variables
The value of 32768 (TAG)-current labels
.
.
.
Greenwich Mean Time:
32769 (YEAR)-current year (by 0 beginning).
32770 (MONTH)-current month (1-12).
32771 (DAY)-as per medio (1-31).
32772 (WDAY)-when the date (1-7 is since Sunday) in week.
32773 (HOUR)-same day hour (0-23).
32774 (MIN)-hour in minute (0-59).
32775 (SEC)-minute in second (0-59).
The state of TiVo receiver:
32800 (SWREL)-software versions (being denoted as x.x.x) with byte
The object identification code of 32801 (NTWRK)-current tuning networks
The object identification code of 32802 (PRGRM)-current tuned program
The current state of 32803 (PSTATE)-output channels:
0-normal play
1-suspend
2-slow motion
10-reversing speed 1
11-reversing speed 2
...
20-fast paces 1
21-fast paces 2
The label executing state:
32900 (IND)-demonstration or the designator number of eliminating.
Channel status in 32901 (PDURING)-execution label process.
Another program object identification code of piling up is play in 32902 (ALTP)-propelling.
Program recording object identification code during 32903 (SELOBJ)-selection designator.
The word string object number of 33000 (MENU1)-menu projects 1.
The word string object number of 33001 (MENU2)-menu projects 2.
...
The word string object number of 33009 (MENU10)-menu projects 10.
The image object numbering of 33100 (PICT1)-menu projects 1.
The image object numbering of 33101 (PICT2)-menu projects 2.
...
The image object numbering of 3310g (PICT10)-menu project 10.
Program recording object identification code during 33200 (MSELOBJ1)-selection menu project.
Program recording object identification code during 33201 (MSELOBJ2)-selection menu project.
...
Program recording object identification code during 33209 (MSELOBJ10)-selection menu project.
Label
-following another program that pushes away
Another program of-pop-up (program finishes pop-up automatically afterwards)
-rising designator
-reduction designator
-menu
The label implementation strategy
Implementation strategy is determined by TSM.Some suggestions are as follows:
-menu
Menu is arranged according to standardization TiVo menu benchmark.Generally speaking, menu can come across on the on-the-spot video.Select certain option can cause usually and record dialogue.When the operation menu, preferably can suspend data channel.
-designator
Please refer to the 17th figure and the 22nd figure.Designator is to arrange with the form of little image to be shown in the bottom.Normally viewing and admiring under the state, the up and down arrow keys 2203 on the remote controller 2201 does not operate.For designator, last directionkeys 2203 can make designator turn to the left side, and following directionkeys then makes it turn to the right.Little square frame can appear around the chosen designator.Press options button 2204 and can start this action.According to pre-conditioned, new designator can be selected; When certain designator was deleted, if the designator of before having chosen is arranged, then this designator can highlight.
-alternative program
Alternative program should be revealed as the part of video data stream, and possesses complete advancing fast/reverse control.Jumping to live show button 2202, at first alternative program to be piled up pop-up be that sky piles up.
The personage who has the knack of this skill is when learning easily: though be that example is illustrated with closed caption data stream especially at this, also can use other transmission method, for example: EDS field, VBI, MPEG2 exclusive data channel etc.
Though with preferred embodiment the present invention is described at this, all personages who has the knack of this skill work as can learn easily that other application can be used for replacing the execution mode in this proposition, and still without departing from the spirit or scope of the invention.So the present invention is only defined by claim.

Claims (8)

1. the method via the advertisement television program record scheduling time-histories of television broadcast stream is characterized in that, comprises:
Receive described television broadcast stream;
For the program of broadcasting future is broadcast promotional advertisement in the described television broadcast stream;
Show icon, can be to inform the described program of spectators for recording, described icon is to show according to the label that inserts in the described television broadcast stream;
Receiving the singly-bound of described spectators on a remote input units pushes;
The time-histories of recording of described program is ranked.
2. the method for claim 1 is characterized in that, when arrival was ranked the time, described program was stored in a memory device.
3. method as claimed in claim 2 is characterized in that described memory device is a hard disk.
4. method as claimed in claim 2 further comprises:
Whether detection described program during the described program of storage finishes too early; And
If program finishes too early, stop the described program of storage automatically.
5. device via the advertisement television program record scheduling time-histories of television broadcast stream, described device comprises:
Be used to receive the module of described television broadcast stream;
The program that will be used to broadcast future is broadcast the module of the promotional advertisement in the described television broadcast stream;
Be used to show the module of icon to inform that the described program of spectators can Gong be recorded, described icon is to show according to the label that inserts in the described television broadcast stream;
Be used to receive the module that the singly-bound of described spectators on a remote input units pushed;
The module of recording time-histories of described program is used to be ranked.
6. device as claimed in claim 5 further comprises:
Memory device; And
Wherein, when arrival was ranked the time, described program was stored in described memory device.
7. device as claimed in claim 6 is characterized in that described memory device is a hard disk.
8. device as claimed in claim 6 further comprises:
Detect module, wherein said detection module detects whether described program finishes too early during the described program of storage; And
Stop module, wherein said termination module stops the described program of storage automatically when program finishes too early.
CNB2005100094809A 1999-09-20 2000-09-20 Closed caption tagging system Expired - Lifetime CN100459682C (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15471399P 1999-09-20 1999-09-20
US60/154,713 1999-09-20
US09/665,921 2000-09-20
US09/665,921 US7889964B1 (en) 1998-07-30 2000-09-20 Closed caption tagging system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN 00815914 Division CN1220375C (en) 1999-09-20 2000-09-20 Closed caption tagging system

Publications (2)

Publication Number Publication Date
CN1674660A CN1674660A (en) 2005-09-28
CN100459682C true CN100459682C (en) 2009-02-04

Family

ID=34197425

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB2005100094809A Expired - Lifetime CN100459682C (en) 1999-09-20 2000-09-20 Closed caption tagging system
CN 00815914 Expired - Lifetime CN1220375C (en) 1999-09-20 2000-09-20 Closed caption tagging system

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN 00815914 Expired - Lifetime CN1220375C (en) 1999-09-20 2000-09-20 Closed caption tagging system

Country Status (2)

Country Link
CN (2) CN100459682C (en)
HK (1) HK1083965A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7304585B2 (en) * 2004-07-02 2007-12-04 Nokia Corporation Initiation of actions with compressed action language representations
EP1819166A1 (en) * 2005-01-14 2007-08-15 Matsushita Electric Industrial Co., Ltd. Content detection device in digital broadcast
EP2039151A1 (en) * 2006-07-06 2009-03-25 Thomson Licensing Method and system for trick mode suppression control
CN101420622B (en) * 2007-10-22 2010-07-14 北京永新同方数字电视技术有限公司 Labeled television system for describing affair state of digital television set and describing method
US20090259944A1 (en) * 2008-04-10 2009-10-15 Industrial Technology Research Institute Methods and systems for generating a media program
US8347344B2 (en) * 2008-12-18 2013-01-01 Vmware, Inc. Measuring remote video playback performance with embedded encoded pixels
CN106851334A (en) * 2010-11-02 2017-06-13 Lg电子株式会社 Send the method for media content and the device of transmitting-receiving media content
TWI574565B (en) * 2011-03-31 2017-03-11 Sony Corp A transmitting apparatus, a receiving method, a receiving apparatus, a receiving method, a computer-readable medium, and a broadcasting system
CN102595192B (en) * 2012-03-07 2014-12-17 深圳市信义科技有限公司 Video streaming media non-mutual-exclusion buffering method
CN103369272A (en) * 2012-03-27 2013-10-23 联想(北京)有限公司 Controlling method and controlling device for video playing of video terminal and video terminal
EP2912588A4 (en) * 2012-10-25 2016-06-29 Intel Corp Anti-theft in firmware
CN105320684B (en) * 2014-07-28 2019-03-01 中国传媒大学 The method for interchanging data of closed caption
CA2997562A1 (en) * 2015-09-30 2017-04-06 Tivo Solutions Inc. Synchronizing media content tag data

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996008921A1 (en) * 1994-09-12 1996-03-21 Arthur D. Little Enterprises, Inc. Method and apparatus for eliminating television commercial messages
US5659653A (en) * 1978-09-11 1997-08-19 Thomson Consumer Electronics, S.A. Method for programming a recording device and programming device
CN1159704A (en) * 1995-11-09 1997-09-17 汤姆森消费电子有限公司 Automatic screen words editing device and method for video-recorder recording
CN1190483A (en) * 1995-07-11 1998-08-12 汤姆森消费电子有限公司 Video replay automation
US5805763A (en) * 1995-05-05 1998-09-08 Microsoft Corporation System and method for automatically recording programs in an interactive viewing system
WO1999038321A1 (en) * 1998-01-23 1999-07-29 Index Systems, Inc. Home entertainment system and method of its operation
WO1999056466A1 (en) * 1998-04-30 1999-11-04 United Video Properties, Inc. Program guide system with advertisements
WO1999056473A1 (en) * 1998-04-30 1999-11-04 United Video Properties, Inc. Program guide system with flip and browse advertisements
WO2000040015A1 (en) * 1998-12-28 2000-07-06 Thomson Licensing S.A. Method for selecting a program displayed in an advertisement in an application software program

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659653A (en) * 1978-09-11 1997-08-19 Thomson Consumer Electronics, S.A. Method for programming a recording device and programming device
US5696866A (en) * 1993-01-08 1997-12-09 Srt, Inc. Method and apparatus for eliminating television commercial messages
WO1996008921A1 (en) * 1994-09-12 1996-03-21 Arthur D. Little Enterprises, Inc. Method and apparatus for eliminating television commercial messages
US5805763A (en) * 1995-05-05 1998-09-08 Microsoft Corporation System and method for automatically recording programs in an interactive viewing system
CN1190483A (en) * 1995-07-11 1998-08-12 汤姆森消费电子有限公司 Video replay automation
CN1159704A (en) * 1995-11-09 1997-09-17 汤姆森消费电子有限公司 Automatic screen words editing device and method for video-recorder recording
WO1999038321A1 (en) * 1998-01-23 1999-07-29 Index Systems, Inc. Home entertainment system and method of its operation
WO1999056466A1 (en) * 1998-04-30 1999-11-04 United Video Properties, Inc. Program guide system with advertisements
WO1999056473A1 (en) * 1998-04-30 1999-11-04 United Video Properties, Inc. Program guide system with flip and browse advertisements
WO2000040015A1 (en) * 1998-12-28 2000-07-06 Thomson Licensing S.A. Method for selecting a program displayed in an advertisement in an application software program

Also Published As

Publication number Publication date
CN1451234A (en) 2003-10-22
CN1220375C (en) 2005-09-21
CN1674660A (en) 2005-09-28
HK1083965A1 (en) 2006-07-14

Similar Documents

Publication Publication Date Title
CN100379273C (en) Closed caption tagging system
CN1314265C (en) Multimedia time warping system
CN100383890C (en) Multimedia program bookmarking system
CN100407328C (en) Multimedia visual progress indication system
CN1158861C (en) Broadcasting method and broadcast receiver
US8104060B2 (en) Information transmitting method and television broadcast receiver
KR100899051B1 (en) Techniques for navigating multiple video streams
JP5715078B2 (en) Method and apparatus for creating and viewing customized multimedia segments
CN100459682C (en) Closed caption tagging system
JP2009171597A (en) Improvement in receiver for television signal
US6192187B1 (en) Video recorder
JP4491902B2 (en) Interactive system with media contents using sliding graphic windows
CN1348657A (en) System and method for generating video taping reminders
US20150071608A1 (en) Receiving device, transmitting device and transmitting/receiving system
JPH07107448A (en) Television broadcast device, television receiver, and television signal recording and reproducing device
JP2003092712A (en) Electronic program guide information processor
KR100447299B1 (en) Method for transmitting and receiving a broadcasting program information

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1083965

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1083965

Country of ref document: HK

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: California, San Carlos, USA

Patentee after: TiVo Solutions Ltd

Address before: American California

Patentee before: TIVO, Inc.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20090204