CN100459682C - Closed caption tagging system - Google Patents
Closed caption tagging system Download PDFInfo
- 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
- viewer
- data
- tags
- tag
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 50
- 238000001514 detection method Methods 0.000 claims 2
- 230000001737 promoting effect Effects 0.000 claims 2
- 230000009471 action Effects 0.000 abstract description 46
- 230000005540 biological transmission Effects 0.000 abstract description 27
- 230000008569 process Effects 0.000 abstract description 16
- 230000007246 mechanism Effects 0.000 abstract description 14
- 238000003825 pressing Methods 0.000 abstract description 7
- 230000003993 interaction Effects 0.000 abstract description 6
- 230000004044 response Effects 0.000 abstract description 5
- 239000000872 buffer Substances 0.000 description 87
- 238000010586 diagram Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 19
- 238000012545 processing Methods 0.000 description 11
- 230000009466 transformation Effects 0.000 description 10
- 238000012546 transfer Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 238000003780 insertion Methods 0.000 description 5
- 230000037431 insertion Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- FCXAUASCMJOFEY-NDKCEZKHSA-N Ala-Leu-Thr-Pro Chemical compound C[C@H](N)C(=O)N[C@@H](CC(C)C)C(=O)N[C@@H]([C@@H](C)O)C(=O)N1CCC[C@H]1C(O)=O FCXAUASCMJOFEY-NDKCEZKHSA-N 0.000 description 1
- 208000001613 Gambling Diseases 0.000 description 1
- 101000974043 Homo sapiens Ribosome biogenesis protein NOP53 Proteins 0.000 description 1
- 102100022399 Ribosome biogenesis protein NOP53 Human genes 0.000 description 1
- 206010064127 Solar lentigo Diseases 0.000 description 1
- 239000013543 active substance Substances 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 235000013405 beer Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000010511 looping mechanism Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000001454 recorded image Methods 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Landscapes
- Television Signal Processing For Recording (AREA)
Abstract
Description
本申请是申请日为2000年9月20日、申请号为00815914.9(国际申请号为PCT/US 00/25847)、标题为“闭式字幕添加标签的系统”的专利申请的分案申请。This application is a divisional application of a patent application with an application date of September 20, 2000, an application number of 00815914.9 (the international application number is PCT/US 00/25847), and a titled "system for adding labels to closed captions".
技术领域 technical field
本发明涉及多媒体影音数据流。更具体而言,本发明涉及多媒体影音电视广播数据流添加标签。The invention relates to multimedia audio-visual data flow. More specifically, the present invention relates to tagging of multimedia audio-visual television broadcast data streams.
背景技术 Background technique
盒式磁带录像机(VCR)已改变全世界电视观众的生活。VCR可提供富有时间变换弹性的电视节目,以配合其生活方式。Video cassette recorders (VCRs) have changed the lives of television viewers around the world. VCRs can provide time-flexible TV programs to match their lifestyles.
观众可利用VCR而将电视节目存储于磁带上。VCR使观众能够针对存储的节目内容进行播放、倒转、快速前进和暂停。此等功能能够让观众依其喜好随时暂停播放中的节目;快速前进而略过不想观赏的内容或商业广告;以及重新播放喜爱的数据段。然而,VCR无法同时进行录像和播放信息内容。Viewers can store television programs on tape using a VCR. VCRs allow viewers to play, rewind, fast-forward, and pause stored program content. These features allow viewers to pause an ongoing program at any time they prefer; fast-forward to skip unwanted content or commercials; and replay favorite segments. However, VCR cannot record video and play information content at the same time.
近来,数字录像机(DVR)已进入商业市场。DVR能够让观众将电视节目存储于硬式磁盘。如此一来,观众可以脱离磁带的限制。观众可以使现场广播的节目暂停、倒转和快速前进。然而,DVR的功能不仅止于录制节目。Recently, digital video recorders (DVRs) have entered the commercial market. DVRs allow viewers to store television programs on hard disks. In this way, viewers are freed from the confines of tape. Viewers can pause, rewind and fast-forward live broadcasts. However, DVRs do more than just record shows.
使节目能够以数字形式存储于本端,可为节目编排者提供比以往更多的选择。现今,广告(商业广告)可以动态方式被更换,并依照观赏习惯而特别锁定特定的观众。商业广告可以在本端存储于观众的DVR内,并可在任何时刻呈现。Enabling programs to be stored locally in digital form provides program planners with more options than ever before. Today, advertisements (commercials) can be changed dynamically and targeted specifically to specific viewers according to viewing habits. Commercials can be stored locally in the viewer's DVR and presented at any time.
DVR能够让观众进行互动式节目广播。一般而言,即将播映节目的预告会在正常广播节目的过程中予以播出。观众必须随即记住该节目的播映日期、时间和频道,以便录制或观赏该节目。DVR能够让观众立即排定录制该节目的时程。DVR enables viewers to broadcast interactive programs. In general, previews of upcoming programs are aired during normal program broadcasts. The viewer must then remember the show date, time and channel of the show in order to record or watch the show. DVRs allow viewers to immediately schedule recordings of the show.
唯一的缺点在于:目前的DVR无法在此层次和观众进行互动。目前无法将商业广告紧接着特定节目或其它广告的情况告知DVR。此外,目前无法将商业广告可更换的情况告知DVR。The only downside: Current DVRs cannot interact with viewers at this level. There is currently no way to tell the DVR that a commercial is immediately followed by a particular program or other advertisement. Additionally, there is currently no way to inform the DVR that commercials are replaceable.
若能提供一种让节目提供者能够经由广播媒体来传送帧专用数据的闭式字幕标示系统当非常有益。若能提供一种让接收机以动态方式和观众进行互动,并根据节目内容来进行自我配置的隐藏字幕标示系统亦当非常有益。It would be beneficial to provide a closed captioning system that would allow program providers to transmit frame specific data over the broadcast medium. It would also be beneficial to provide a closed captioning system that allows receivers to dynamically interact with viewers and configure themselves based on program content.
发明内容 Contents of the invention
本发明是提供一种隐藏字幕标示系统。本发明让内容提供者能够经由广播媒体来传送综合于影音电视广播数据流的帧专用数据以及命令。此外,本发明让接收机能够以动态方式和观众进行互动,并根据影音数据流内容来进行自我配置。The present invention provides a closed caption marking system. The present invention enables content providers to transmit frame-specific data and commands integrated into an AV broadcast data stream via a broadcast medium. In addition, the present invention enables the receiver to interact with the viewer in a dynamic manner and to configure itself according to the content of the audio-visual data stream.
本发明的较佳实施例提供一种将标签插入音频或视频电视广播数据流的机构。标签是在广播之前或当时被插入广播数据流内。此等标签内含接收机解译和作用于其上的指令及控制信息。The preferred embodiment of the present invention provides a mechanism for inserting tags into audio or video television broadcast data streams. Tags are inserted into the broadcast data stream before or at the time of broadcast. These tags contain command and control information that the receiver interprets and acts upon.
前述接收机接收广播数据流,并对该广播数据流内的标签进行检测和处理。广播数据流是存储于接收机上的存储装置。来自于广播数据流的节目素材是从存储装置为观众播映。The foregoing receiver receives the broadcast data stream, and detects and processes tags in the broadcast data stream. The broadcast data stream is stored on a storage device on the receiver. Program material from the broadcast data stream is presented to the viewer from the storage device.
在处理标签的阶段,接收机会响应该等标签而执行适当的动作。此等标签可为内容提供者或系统管理者提供大量的弹性运用空间,藉以建构无穷的操作功能。During the tag processing phase, the receiver will take appropriate actions in response to the tags. These tags can provide content providers or system administrators with a large amount of flexible use space, so as to construct infinite operation functions.
标签可指出节目片段的起点和终点。当观众在遥控输入装置上按下按钮之后,接收机会作出响应,在播映过程中略过某一节目片段。接收机亦可依照观众的喜好而自动略过节目片段。Labels indicate the beginning and end of program segments. When the viewer presses a button on the remote control input device, the receiver responds by skipping a segment of the program during the broadcast. The receiver can also automatically skip program segments according to the viewer's preference.
接收机自动以新的节目片段来取代诸如商业广告等节目片段。新的节目片段是依照不同的标准予以选择,例如:依照场所、一天中的某段时间、节目素材、观众的观赏习惯、观众对于节目的偏好,或是观众的个人数据来选择。新的节目片段是存放于接收机的本端或远端。The receiver automatically replaces program segments, such as commercials, with new program segments. New program segments are selected according to different criteria, such as location, time of day, program material, viewer's viewing habits, viewer's preference for programs, or viewer's personal data. The new program segment is stored at the local end or the remote end of the receiver.
选单、图符和网页是根据含有标签的信息而呈现给观众。观众与选单、图符或网页之间的互动是通过输入装置。接收机执行与选单、图符或网页以及观众输入关联的动作。若某选单或动作要求观众退出节目素材的播映,则接收机会保留退出点,并且当观众完成互动过程之后,使观众再度回到相同的退出点。Menus, icons and web pages are presented to the viewer based on the information contained in the tags. Interaction between viewers and menus, icons or web pages is through input devices. The receiver performs actions associated with menus, icons or web pages and viewer input. If a menu or action requires the viewer to exit the broadcast of the program material, the receiver will retain the exit point and return the viewer to the same exit point again after the viewer completes the interaction process.
选单和图符用于产生产品介绍、推销,以及排定录制节目的时程。在此提供单触控录制选项。观众可看到某图符,其告知某一广告节目可于未来某时间进行录制。观众按下输入装置上的单一按钮,可使接收机排定录制该节目的时程。接收机亦可根据某一标签内的信息,将目前在广播数据流中的节目录制于存储装置内。Menus and icons are used to generate product introductions, merchandising, and to schedule recordings. One-touch recording options are available here. Viewers can see an icon, which informs that a commercial program can be recorded at a certain time in the future. Viewers press a single button on the input device to schedule the receiver to record the program. The receiver can also record the program currently in the broadcast data stream in the storage device according to the information in a certain tag.
标签可用于建立节目素材的索引。如此可让观众跳变到节目内的特定索引。Tags can be used to index program material. This allows the viewer to jump to a specific index within the program.
参酌以下关于本发明的原理的范例说明并配合附图,当可明了本发明的其它态样及优点。Other aspects and advantages of the present invention can be understood with reference to the following descriptions of the principles of the present invention and accompanying drawings.
附图说明 Description of drawings
图1为本发明的较佳实施例的高层次概示框图;Figure 1 is a high-level schematic block diagram of a preferred embodiment of the present invention;
图2为本发明利用多重输入和输出模组的较佳实施例的示意框图;Figure 2 is a schematic block diagram of a preferred embodiment of the present invention utilizing multiple input and output modules;
图3为本发明的活动图像压缩标准(MPEG)数据流及其视频和音频分量的概要图;3 is a schematic diagram of the moving picture compression standard (MPEG) data stream and its video and audio components of the present invention;
图4为本发明的媒体开关内所包含的解析器和四个直接存储器存取(DMA)输入引擎的示意框图;4 is a schematic block diagram of a parser and four direct memory access (DMA) input engines included in the media switch of the present invention;
图5为本发明的分组化基本数据流(PES)缓存器的组成部分的示意框图;Figure 5 is a schematic block diagram of the components of the packetized elementary stream (PES) buffer of the present invention;
图6为根据媒体开关输出环形缓存器的解析件建立的PES缓存器结构的概要图;6 is a schematic diagram of the PES buffer structure established according to the analysis piece of the media switch output ring buffer;
图7为本发明的媒体开关及其所联是的各式部件的示意框图;Fig. 7 is a schematic block diagram of the media switch of the present invention and various components connected thereto;
图8为本发明的程序逻辑的高层次概示框图;Figure 8 is a high level overview block diagram of the program logic of the present invention;
图9为本发明的程序逻辑的类别层次框图;Fig. 9 is a class hierarchical block diagram of the program logic of the present invention;
图10为本发明的剪辑快速缓存件的较佳实施例的示意框图;Fig. 10 is a schematic block diagram of a preferred embodiment of the clipping cache of the present invention;
图11为本发明模拟广播工作室视频混合器的较佳实施例的示意框图;11 is a schematic block diagram of a preferred embodiment of the analog broadcast studio video mixer of the present invention;
图12为本发明的隐藏字幕解析器的示意框图;12 is a schematic block diagram of a closed caption parser of the present invention;
图13为本发明利用VCR做为本发明的综合件的较佳实施例的高层次概示框图;Figure 13 is a high-level schematic block diagram of a preferred embodiment of the present invention utilizing a VCR as an integrator of the present invention;
图14为本发明将标签插入视频数据流内的较佳实施例的示意框图;Fig. 14 is a schematic block diagram of a preferred embodiment of inserting a label into a video data stream according to the present invention;
图15为本发明以服务器为根基将标签插入视频数据流内的较佳实施例的示意框图;Fig. 15 is a schematic block diagram of a preferred embodiment in which tags are inserted into a video data stream based on a server in the present invention;
图16是图示本发明将标签插入视频数据流所用之用户接口;Figure 16 is a diagram illustrating the user interface used by the present invention to insert tags into a video data stream;
图17是根据本发明图示具提示图符的萤幕,其中该图像显示于萤幕的左下角;Fig. 17 is a screen illustrating a prompt icon according to the present invention, wherein the image is displayed in the lower left corner of the screen;
图18为本发明的视频数据流的传送路径的示意框图;Fig. 18 is a schematic block diagram of the transmission path of the video data stream of the present invention;
图19是根据本发明标示某视频数据流的节目片段的起点和终点以及播放新的节目片段的示意框图;Fig. 19 is a schematic block diagram of marking the starting point and end point of a program segment of a certain video data stream and playing a new program segment according to the present invention;
图20为根据本发明解译被插入某视频数据流内的标签的较佳实施例的示意框图;20 is a schematic block diagram of a preferred embodiment of interpreting tags inserted into a video data stream according to the present invention;
图21是图示一萤幕,该萤幕显示本发明的节目录制选项;Figure 21 is a diagram illustrating a screen displaying the program recording options of the present invention;
图22是图示本发明的观众遥控装置;Figure 22 is a viewer remote control device illustrating the present invention;
图23为一系列萤幕的示意框图,该等萤幕产生产品介绍和推销。Figure 23 is a schematic block diagram of a series of screens that generate product presentations and merchandising.
具体实施方式 Detailed ways
本发明实施于隐藏字幕标示系统。根据本发明所建构的系统容许内容提供者经由广播媒体来传送综合于影音电视广播数据流的帧专用数据,以及命令。本发明另可容许接收机以动态方式和观众进行互动,并根据影音数据流内容来进行自我设定。The present invention is implemented in a closed captioning system. The system constructed in accordance with the present invention allows content providers to transmit frame-specific data and commands integrated in an audiovisual television broadcast data stream via the broadcast medium. The present invention also allows the receiver to interact with the audience in a dynamic manner, and to perform self-setting according to the content of the audio-visual data stream.
本发明的较佳实施例提供一种标示和解译系统,该系统能够让内容提供者以特定画面来标示经由电视广播媒体所传送的影音数据流。接收机解译并作用于内嵌在被接收数据流内的标签。标签数据能够让接收机以动态方式通过选单和动作图符而与观众进行互动。标签亦提供接收机的动态配置。A preferred embodiment of the present invention provides a marking and interpreting system, which enables the content provider to mark the video and audio data stream transmitted through the television broadcasting medium with a specific picture. The receiver interprets and acts upon the tags embedded within the received data stream. Tag data enables receivers to dynamically interact with viewers through menus and action icons. Tags also provide dynamic configuration of receivers.
请参照第1图。本发明的较佳实施例具备输入部101、媒体开关102,以及输出部103。输入部101可接收多种形式的电视输入数据流—例如美国国家电视标准委员会(NTSC)标准或逐行倒相制(PAL)广播,以及数字式数据流—例如数字卫星系统(DSS)、数字广播服务(DBS)或高等电视标准委员会(ATSC)标准。DBS、DSS和ATSC是以活动图视频压缩标准2(MPEG2)和MPEG2传输等标准为基础。MPEG2传输标准是一种将电视源发射机的数字数据流予以格式化的标准,以使电视接收机能够解开输入数据流而寻得多路复用信号内的节目。输入部101产生MPEG数据流。MPEG2传输多路复用在同一广播频道内支援多个节目,而该频道内存在视频和音频的供给和专用数据。输入部101可将频道调整至特定节目,从中提取特定的MPEG节目,并将该节目提供到系统的其它部分。利用各自独立的视频及音频编码器将模拟电视信号编码成类似的MPEG格式,使得系统的其它部分不知取得该信号的过程。可利用多种标准方法把信息调制到模拟电视信号的垂直消隐区间(VBI);例如:北美广播图文电视标准(NABTS)可用于将信息调制到NTSC信号的第10条到第20条扫瞄线,而(美国)联邦通信委员会(FCC)则规范第21行做为隐藏字幕(CC)和延伸数据服务(EDS)之用。此类信号藉由输入部予以解码,并传送到其它部件,即如同其经由MPEG2专用数据频道加以传送一般。Please refer to Figure 1. A preferred embodiment of the present invention includes an input unit 101 , a media switch 102 , and an output unit 103 . The input unit 101 can receive various forms of television input data streams—such as the National Television Standards Committee (NTSC) standard or Phase Alternation Line (PAL) broadcasts, as well as digital data streams—such as Digital Satellite System (DSS), digital Broadcasting Service (DBS) or Advanced Television Standards Committee (ATSC) standards. DBS, DSS, and ATSC are based on standards such as Motion Picture Video Compression Standard 2 (MPEG2) and MPEG2 Transport. The MPEG2 transmission standard is a standard for formatting digital data streams from television source transmitters so that television receivers can unpack the incoming data streams to find programs within the multiplexed signal. The input section 101 generates an MPEG data stream. MPEG2 transport multiplexing supports multiple programs within the same broadcast channel where video and audio feeds and private data reside. The input section 101 can tune the channel to a particular program, extract a particular MPEG program from it, and provide that program to the rest of the system. The analog TV signal is encoded into a similar MPEG format using separate video and audio encoders, so that the rest of the system does not know how the signal was obtained. Various standard methods can be used to modulate information into the vertical blanking interval (VBI) of an analog television signal; for example, the North American Broadcast Teletext Standard (NABTS) can be used to modulate information into scans 10 to 20 of an NTSC signal line of sight, while the (US) Federal Communications Commission (FCC) regulates Line 21 for closed captioning (CC) and Extended Data Service (EDS). Such signals are decoded by the input and transmitted to other components as if they were transmitted via an MPEG2 dedicated data channel.
媒体开关102是负责协调微处理器CPU(中央处理单元)106、硬磁盘或存储装置105以及存储器104之间的运作。输入数据流被转换成MPEG数据流,并且被传送到媒体开关102。媒体开关102将MPEG数据流暂存于存储器内。若使用者观看实时播出的电视,则媒体开关102会执行两项工作:数据流被传送到输出部103,以及该数据流同时被写入硬式磁盘或存储装置105。The media switch 102 is responsible for coordinating the operations among the microprocessor CPU (Central Processing Unit) 106 , the hard disk or storage device 105 and the memory 104 . The input data stream is converted to an MPEG data stream and transmitted to the media switch 102 . The media switch 102 temporarily stores the MPEG data stream in memory. If the user watches live TV, the media switch 102 performs two tasks: the data stream is sent to the output unit 103 , and the data stream is written to the hard disk or storage device 105 at the same time.
输出部103接收输入的MPEG数据流,并根据NTSC、PAL或其它所需的电视标准来产生模拟电视信号。输出部103包含有MPEG解码器、在屏显示(0SD)产生器、模拟电视编码器,以及音频逻辑电路。OSD产生器能够让程式逻辑提供叠加于最终模拟电视信号之上的图像。此外,输入部可利用多种标准格式将程式逻辑所提供的信息调制到输出信号的VBI之上,这些格式包括NABTS、CC或EDS。Output section 103 receives an incoming MPEG data stream and generates an analog television signal according to NTSC, PAL or other desired television standard. The output unit 103 includes an MPEG decoder, an on-screen display (OSD) generator, an analog TV encoder, and an audio logic circuit. An OSD generator enables program logic to provide an image superimposed on the final analog TV signal. In addition, the input can modulate information provided by the program logic onto the VBI of the output signal using a variety of standard formats, including NABTS, CC, or EDS.
请参照第2图。本发明可轻易地扩充而容纳多个输入部(调谐器)201、202、203、204,且各输入部可被调整为不同类型的输入。同时,亦可加入多个输出模组(解码器)206、207、208、209。特殊效果—例如画中画—亦可利用多个解码器予以实作。当使用者在观赏某电视节目时,媒体开关205可录制另一个节目。此表示:当某数据流正被存储于磁盘时,可从磁盘中提取另一数据流。Please refer to Figure 2. The present invention can be easily expanded to accommodate multiple input sections (tuners) 201, 202, 203, 204, and each input section can be adjusted to different types of inputs. At the same time, multiple output modules (decoders) 206, 207, 208, 209 can also be added. Special effects—such as picture-in-picture—can also be implemented using multiple decoders. When the user is watching a certain TV program, the media switch 205 can record another program. This means that while a data stream is being stored on disk, another data stream can be fetched from disk.
请参照第3图。内送的MPEG数据流301具有交织的视频302、305、306,以及音频303、304、307等数据段。此等数据段必须加以区隔并重新结合而形成个别的视频308和音频309数据流或缓存信息。上述为必要过程,因为利用个别的解码器将MPEG数据段转换成原来的音频或视频分量。此种个别的传送过程必须产生时间序列信息,以使解码器能够正确地同步化而得到准确的信号播放。Please refer to Figure 3. The incoming
媒体开关使程式逻辑能够使正确的时间序列信息与各个数据段关联,其可能直接将该信息内嵌于数据流内。各个数据段的时间序列信息称作时间标记。每当系统启动之后,此等时间标记即由零开始,并以单调方式增加。如此可让本发明在任何特定的视频数据段中寻找任何特定的点。举例而言,若系统需要将五秒钟读入既已快速缓存的内送连续视频数据流内,则该系统仅需启动前进读取并寻找适当的时间标记。Media switches enable program logic to associate the correct time-series information with each data segment, possibly embedding that information directly within the data stream. The time-series information for each data segment is called a timestamp. These time stamps start at zero and increase monotonically every time the system starts. This allows the present invention to find any particular point in any particular segment of video data. For example, if the system needs to read five seconds into an already cached incoming continuous video stream, the system need only initiate a forward read and look for the appropriate time stamp.
在既已存储的文件上可进行对分搜寻,藉以指引到数据流内。各数据流存储为一串大小固定的数据段当可提高对分搜寻的速度,此是由于时间标记均匀的缘故。若使用者想要从节目的中间开始,则系统会针对既已存储的数据段持续执行对分搜寻,直到系统寻得适当点为止,此时即以最少信息获得期望的结果。若信号是存储为MPEG数据流,则必须从起点以线性方式解析数据流,以寻得所欲的位置。Binary searches can be performed on stored files to navigate into the data stream. Storing each data stream as a series of fixed-size data segments can increase the speed of the binary search because of uniform time stamps. If the user wants to start in the middle of the program, the system will continue to perform binary searches on the stored data segments until the system finds an appropriate point, at which point the desired result is obtained with the least amount of information. If the signal is stored as an MPEG data stream, the data stream must be parsed linearly from the starting point to find the desired position.
请参照第4图。媒体开关包含有四个输入直接存储器存取(DMA)引擎402、403、404、405,而各DMA引擎具有附属的缓冲区410、411、412、413。在概念上,各个DMA引擎具有一个指针406、指针的界线407、下一个指针408,以及下一个指针的界线409。各个DMA隶属于特定类型的信息;例如,视频信息402、音频信息403及解析事件405。缓冲区410、411、412、413是为环形,并收集特定信息。DMA引擎将指针406逐次增加到附属的缓冲区,直到达到界线407为止,随后再载入下一个指针408和界线409。将指针406和下一个指针408的值及其所对应的界线设定为相同,则可建立一个环形缓冲区。下一个指针408可设定到不同的位址而提供向量式DMA。Please refer to Figure 4. The media switch contains four incoming direct memory access (DMA)
输入数据流会通过解析器401。解析器401经由解析数据流来寻找MPEG事件,其指标视频、音频或专用数据段的起点。例如,当解析器401寻得某视频事件时,其会将数据流导引到视频DMA引擎402。解析器401将数据缓存起来,并以DMA方式通过视频DMA引擎402将其导入视频缓冲区410。在此同时,解析器401将某事件导引到事件DMA引擎405,而DMA引擎405则产生一事件于事件缓冲区413。当解析器401遇到一个音频事件时,其会将字节数据流重导到音频DMA引擎403,并产生一事件于事件缓冲区413。同样地,当解析器遇到一个专用数据事件时,其会将字节数据流重导到专用数据DMA引擎404,并导引一事件于事件缓冲区413。当事件被存放在事件缓冲区时,媒体开关会经由中断机构来告知程式逻辑。The input data stream will pass through the parser 401 . Parser 401 finds MPEG events by parsing the data stream, which indicate the beginning of video, audio or private data segments. For example, when the parser 401 finds a certain video event, it will direct the data flow to the
请参照第4图和第5图。解析器401将事件填入事件缓冲区413。事件缓冲区内的各个事件501具有偏移量502、事件类型503及时间标记504等栏。当事件被存放在缓冲区之后,解析器401会提供各个事件的类型和偏移量。举例而言,当出现音频事件时,事件类型栏会被设定为音频事件,而偏移量会指出音频缓冲区411内的位置。程式逻辑会得知音频缓冲区411的起点所在,并且加入偏移量以找出数据流中的事件。位址偏移量502会告知程式逻辑下一个事件出现的位置,但不会告知出现终点的位置。前一个事件会存储在快速缓存器当中,以使当前事件的终点以及数据段的长度能够找到。Please refer to Figures 4 and 5. Parser 401 fills
请参照第5图和第6图。当程式逻辑被媒体开关601中断时,程式逻辑会读取事件缓冲区602内所累积的事件。程式逻辑可由此等事件产生一连串对应于已被解析的MPEG数据段615的逻辑数据段603。程式逻辑会将偏移量502转换成各个数据段的实际位址610,并利用前一个快速缓存事件来记录事件长度609。若数据流由模拟信号的编码所产生,则其将不包含节目时间标记(PTS)值。PTS值供解码器运用,藉以适当提供最后得到的结果。因此,程式逻辑使用产生的时间标记504来计算各个数据段的模拟PTS值,并将该值存放于逻辑数据段时间标记607内。在数位电视广播数据流方面,PTS值已经被编入数据流内。程式逻辑会抽取此信息,并将其存放于逻辑数据段时间标记607内。Please refer to Figures 5 and 6. When the program logic is interrupted by the
程式逻辑会持续收集逻辑数据段603,直到其到达缓冲区的固定容量为止。当达到容量界线时,程式逻辑会产生新的缓冲区—称作分组基本数据流(PES)605缓冲区,此缓冲区内包含依序排列的逻辑数据段603以及附属的控制信息。各个逻辑数据段是直接指向环形缓冲区604—例如媒体开关601所填入的视频缓冲区613。新的缓冲区随后会被传送到其它逻辑元件,其可以某种方式—例如进行解码或将其写入存储媒体,而进一步处理缓冲区内的数据流。因此,处理器不会将MPEG数据从存储器内的某一位置复制到另一位置。由于所需的存储器频宽和处理器频宽均已降低,因此可得到更符经济效益的设计。The program logic continues to collect
MPEG数据流转换成PES缓冲区的独特性质是在于:伴随逻辑数据段的数据不需要如上所述出现于缓冲区本身当中。当PES缓冲区被写入存储媒体时,此等逻辑数据段会依照逻辑次序写入其所出现的存储媒体中。无论数据流的分量是位于视频、音频或专用数据环形缓冲区,上述过程会导致数据流的分量被收集于存储媒体上的单一流数据线性缓冲区。缓冲区会以单次传输而从存储媒体读回,且逻辑数据段信息会被更新而对应缓冲区606内的实际位置。较高阶的程式逻辑并不会得知上述转换过程,因为其仅处理逻辑数据段;因此,流数据能够轻易进行处理,而完全不需要经由CPU在动态随机存取存储器(DRAM)中的位置间进行数据的复制。A unique property of the conversion of an MPEG data stream into a PES buffer is that the data accompanying the logical data segments need not be present in the buffer itself as described above. When the PES buffer is written into the storage medium, these logical data segments are written into the storage medium where they appear in logical order. The above process results in the components of the data stream being collected in a single stream data linear buffer on the storage medium, whether the components of the data stream are located in video, audio or dedicated data ring buffers. The buffer is read back from the storage medium in a single transfer, and the logical segment information is updated to correspond to the actual location in the
媒体开关的独特技术特征之一是在于其具有以有效及低成本的方式来处理高速数据的能力。媒体开关可在低成本的平台上执行下列功能:记录视频及音频数据、送出视频及音频数据、将视频及音频数据送至磁盘,以及从磁盘中取出视频及音频数据。通常,媒体开关系以和微处理器的CPU非同步及独立的方式来运作,并使用其DMA的能力而在CPU介入最少的情况下来搬移大量的数据。One of the unique technical features of media switches is their ability to handle high-speed data in an efficient and cost-effective manner. A media switch can perform the following functions on a low-cost platform: record video and audio data, send video and audio data, send video and audio data to disk, and retrieve video and audio data from disk. Typically, media switches operate asynchronously and independently of the microprocessor's CPU and use their DMA capabilities to move large amounts of data with minimal CPU intervention.
请参照第7图,媒体开关701的输入端连接于MPEG编码器703。另外亦包含专用于提供给媒体开关701的MPEG音频数据704以及VBI数据702的电路。若是处理数位式电视信号,则MPEG编码器703被MPEG2传输分路器取代,而MPEG音频编码器704及VBI解码器702则被略除。该分路器是通过视频输入媒体开关端口针对提取的音频、视频及专用数据频道流进行多路复用。Please refer to FIG. 7 , the input end of the
解析器705用于解析来自于MPEG编码器703、音频编码器704及VBI解码器702的输入数据流,或是在数位式电视广播数据流的情况下,来自于传输分路器的输入数据流。解析器705会检测位于视频或音频数据流当中的所有重要事件、帧以及序列标头的起点,所有此等信息皆为程式逻辑所必须得知者,以便能够正确地播放数据流,并执行特殊功能,例如:快速前进、倒回、播放、暂停、快速/慢速播放、索引、以及快速/慢速逆向播放。Parser 705 is used to parse the input stream from
当解析器705辨认出视频、音频数据段或给定的专用数据时,其将标签707置于先进先出缓冲区706。当此等标签被取出时,DMA 709会加以控制。标签707和段的DMA地址放入事件队列708。帧型信息不论是视频I-帧、视频B-帧、视频P-帧、视频分组基本数据流、音频分组基本数据流、序列标头,还是音频帧或专用数据分组皆连同存放于相关环形缓冲区中的偏移量存放在事件队列708当中,其中各项信息是存放在该环形缓冲区。当程式逻辑被传送到DRAM 714之后,在CPU 713当中运作的程式逻辑会检查环形缓冲区中的事件。When the parser 705 recognizes a segment of video, audio data, or a given private data, it places a
媒体开关701具有连接于CPU 713和DRAM 714的数据总线711。地址总线712亦在媒体开关701、CPU 713和DRAM 714之间共同使用。硬磁盘或存储装置710连接于媒体开关701的一个端口。媒体开关701将数据流输出到MPEG视频解码器715及分开的音频解码器717。音频解码器717的信号包含音频提示,其是由系统所产生,并回应于使用者在遥控或其它内部事件上的指令。由MPEG解码器所输出的被解码音频与分开的音频信号进行数位混合718。最终所得到的信号包含视频信号、音频信号及在屏显示,并会传送至电视716。The media switch 701 has a
媒体开关701取得8位数据并将其送至磁盘,同时从磁盘提取另一数据流,并将其送至MPEG解码器715。以上所描述的所有DMA引擎皆可在同一时间运作。媒体开关701可利用场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(ASIC)或分立逻辑电路按硬件实现。The media switch 701 takes the 8-bit data and sends it to disk, while another data stream is extracted from the disk and sent to the
程式逻辑仅需查找DRAM 714中的环形事件缓冲区,以分辨出每一帧的起始位置及类型,而不需要解析大量的数据流来寻找每一帧的可能起始位置。此种处理方式可节省大量的CPU处理能力,并可使CPU 713的实时要求维持在最小的状态。CPU713在任何时间皆不需具有很高的速率。媒体开关701尽可能提供时间给CPU 713以完成工作。解析器机构705及事件队列708以低成本的方式使CPU 713免于分析音频数据、视频数据与缓冲区,以及数据流的实时性。此种方式亦容许在CPU环境中使用时钟速率非常低的总线,并且配合比其它方式更廉价的存储器来运作。The program logic only needs to search the circular event buffer in the
CPU 713具有为一DMA传输安排队列的功能,并且可在其闲置时建立下一DMA传输。如此即可让CPU 713拥有大量的时间来伺服DMA控制器709。由于容许较大的等待时间,CPU 713可在较大的时间窗内回应DMA中断。不论是从MPEG2传输提取来或从模拟电视信号编码而得的MPEG数据流,其通常是利用一种称作可变位速率(Variable Bit Rate,VBR)编码的技术来加以编码。此种技术会将代表图像序列所需的数据量改变为此等图像之间的移动量。此技术可大量地缩减信号的频宽,而快速移动的序列(如篮球赛)则可以较大的频宽进行编码。例如,休斯直播电视卫星系统在所需频宽以每秒1至10兆位的速率进行编码,并且帧间变化。若不使用此结构,则对于任何电脑系统而言,实难于跟上变化如此快的数据速率。The
参照第8图,CPU当中的程式逻辑具有三个概念上的组成部分:源801、转换802及宿803。源801产生数据缓冲区。转换802处理数据缓冲区,而宿803则消耗数据缓冲区。转换负责在其操作的数据缓冲区的分配及安排队列。缓冲区以如同“空白”的状态分配给数据源,并以“充满”而反馈回去。而后缓冲区进入队列并以“充满”的状态提供给宿,而宿将会以“空白”状态的缓冲区加以回传。Referring to FIG. 8 , the program logic in the CPU has three conceptual components:
源801接收来自于编码器(例如数位式卫星接收机)的数据。该源从下行转换取得此数据的缓冲区,并将此数据封存至缓冲区,而后以上述的方式将缓冲区推进传输通道中。源对象801并不知道关于本系统的其它状况。宿803会消耗缓冲区,并从上行转换中取得缓冲区,且将数据传送到解码器,而后再释放缓冲区以重新使用。
在此使用两种转换802:空间及时间转换。空间转换的例子即如在缓冲数据通过时所进行的图像卷积或压缩/解压缩。时间转换是用于当进入系统的缓冲数据与离开系统的缓冲数据之间没有可表示的关系时。此种转换是将缓冲数据写入位于存储媒体中的文件804。缓冲数据会在稍后被取出,并沿着传输通道加以传送,并在数据流当中适当地排序。Two
参照第9图,其显示程式逻辑所衍生的C++类层次结构。TiVo媒体核心(Tmk)904、908及913转接操作系统核心。此核心提供诸如存储器分配、同步化及线程化等操作功能。TmkCore 904、908及913是将取自于媒体核心的存储器做为对象,其可提供给操作者用于建构新的对象或删除对象。每一对象(源901、转换902及宿903)已定义为多线程,并可以并行处理的方式运作。Referring to Figure 9, it shows the C++ class hierarchy derived from the program logic. TiVo Media Core (Tmk) 904, 908, and 913 switch operating system core. This core provides operational functions such as memory allocation, synchronization and threading.
TmkPipeline类905、909及914负责控制通过系统的流量。传输通道在流量中由源901至宿903而指向下一传输通道。举例而言,若要暂停传输通道,则称作“暂停”的事件会传送至传输通道中的第一对象。此事件会沿着传输通道而一路转送至下一对象。此过程是以非同步的方式针对通过传输通道的数据来进行。因此,在诸如电话通讯等类似的应用中,MPEG数据流的流量控制是非同步化的,并且从数据流本身分离出来。此方式可容许使用简单的逻辑设计,同时具有足够能力支援先前所描述的技术特征,其中包括暂停、倒转、快速前进及其它功能。再者,此种结构可在数据流来源之间进行快速且有效率的切换,此因只要丢弃缓冲处理的数据并利用单一事件而将解码器重置即可,此后来自于新数据流的数据将会通过传输通道。举例而言,当输入部捕获频道切换时,或当来自于输入部的实况广播信号与已存储的数据流之间进行切换时,即需要使用上述功能。The
源对象901为TmkSource 906,而转换对象902则为TmkXfrm 910。以上为中间阶层的类别,其定义传输通道当中的标准行为。概念上,其随着传输通道交换缓冲区。源对象901是从实体数据源将数据取出(如媒体开关),并将其存放在PES缓冲区。为了取得此缓冲区,源对象901会向传输通道中的下行数据流对象要求一缓冲区(allocEmptyBuf)。源对象901会被封闭,直到拥有足够的存储器为止。此意味着传输通道自我调整;其具有自动的流量控制。当源对象901充满了缓冲区时,其会通过pushFullBuf功能将缓冲区交回给转换902。The
宿903亦会受到流量控制。宿会呼叫nextFullBuf,以告知转换902其已为下一充满的缓冲区备妥。此作用可封闭宿903,直到一缓冲区已备妥为止。当宿903完成一缓冲区之后(亦即其已消耗完缓冲区中的数据),其会呼叫releaseEmptyBuf。ReleaseEmptyBuf将缓冲区交回给转换902。举例而言,而后转换902可将缓冲区交回给源对象901,以便重新填满。此方法除了具有自动流量控制的优点之外,其亦藉由容许强制转换缓冲区固定配置而限制缓冲区专用存储器量。此为在有限DRAM环境中达到成本效益的重要特征。The
MediaSwitch类909调用Tmk剪辑快速缓存912对象的allocEmptyBuf方法,并从其接收PES缓冲区。而后在媒体开关硬件中离开环形缓冲区,并产生PES缓冲区。MediaSwitch类909充填缓冲区,并将其推回Tmk剪辑快速缓存912对象。The
Tmk剪辑快速缓存912会在存储媒体中保留一快速缓存文件918。Tmk剪辑快速缓存912亦会将两个指针保留在此快取存储区当中:推进指针919,其可显示来自于源901的下一缓冲区被插入的所在;目前指针920,其指向目前使用中的缓冲区。The
目前指针所指向的缓冲区是经由帆型解码器类916进行处理。帆型解码器类916会在硬件当中与解码器921沟通。解码器921会产生经过解码的电视信号,而此信号会相继被编码成模拟式的NTSC、PAL或其它模拟格式的电视信号。当帆型解码器类916完成缓冲区之后,其将调用releaseEmpthBuf。The buffer currently pointed to by the pointer is processed by the
各类的结构可使得本系统易于进行测试及除错。每一阶层皆可单独地进行测试,以确保其以适当的方式执行,而且各类可逐渐地加以组合而达成所需的功能,同时能够维持有效测试每一对象的能力。Various structures can make the system easy to test and debug. Each layer can be tested independently to ensure that it performs in an appropriate manner, and the various types can be gradually combined to achieve the required function, while maintaining the ability to effectively test each object.
控制对象917用于接收来自于使用者的指令,并将事件传送至传输通道,以控制传输通道的执行状况。例如,若使用者拥有一遥控器并且正在观赏电视节目,则使用者按下暂停后,控制对象917会送出一事件至宿903以告知其暂停。宿903将停止要求新的缓冲区。目前指针920会停留在其所在位置。当宿903接收到告知其播放的另一事件时,宿903将会开始再度提取出缓冲区。本系统处于完美同步,从帧停止之处开始该取出。The control object 917 is used to receive instructions from the user and send events to the transmission channel to control the execution status of the transmission channel. For example, if the user has a remote control and is watching a TV program, after the user presses pause, the control object 917 will send an event to the
遥控器可能亦包含快速前进按键。当快速前进按键被按下后,控制对象917会将一事件传送至转换902,以告知其向前移动两秒钟。转换902发现两秒钟的时间长度需要向前移动三个缓冲区。而后其发出一重置事件至下行通道,以使得任何在队列中的数据或可能出现在硬件解码器的状态被强迫输出。此为一关键步骤,因为MPEG数据流的结构要求必须维持多个帧的状态,而该状态将由于重新定位指针而变成无效。而后其将目前指针920向前移动三个缓冲区。宿903在下一次调用nextFullBuf时,其将取得新的目前缓冲区。相同的方法可应用在快速倒回功能,其是以转换902将目前指针920向后移动而达成。The remote may also contain a fast forward button. When the fast forward button is pressed, the control object 917 sends an event to the
系统时钟基准位于解码器当中。系统时钟基准在快速播放下会被加速,而在慢速播放下则会被减速。宿则单纯依据时钟速率要求整个缓冲区加快或减慢。The system clock reference is located in the decoder. The system clock base is sped up for fast playback and slowed down for slow playback. The sink asks the entire buffer to speed up or slow down purely based on the clock rate.
参照第10图,衍生自TmkXfrm类的另外两对象是存放在传输通道,以便于磁盘的存取。其中之一称作Tmk剪辑读取器1003,而另一称作Tmk剪辑写入器1001。缓冲区进入Tmk剪辑写入器1001,并且被推进至位于存储媒体1004的文件中。Tmk剪辑读取器1003要求取自存储媒体1005的一文件的缓冲区。Tmk剪辑读取器1003仅提供allocEmptyBuf及pushFullBuf方法,而Tmk剪辑写入器1001仅提供nextFullBuff及releaseEmptyBuf方法。因此,Tmk剪辑读取器1003执行与输入或Tmk剪辑快速缓存1002的“推进”端相同的功能,而Tmk剪辑写入器1001则执行与输出或Tmk剪辑快速缓存1002的“拉出”端相同的功能。Referring to Figure 10, the other two objects derived from the TmkXfrm class are stored in the transmission channel for easy disk access. One of them is called
参照第11图,其显示一达成多重功能的较佳实施例。源1101具有一电视信号输入端。该源将数据传送给推进开关1102,其为衍生自TmkXfrm的转换。推进开关1102具有多个输出端,并可藉由控制对象1114加以切换。此意味着一部分的传输通道可停止,而另一传输通道则可按照使用者任意启动。使用者可在不同的存储装置当中进行切换。推进开关1102可输出至Tmk剪辑写入器1106,其进至存储装置1107或写入至快速缓存转换1103。Referring to Figure 11, it shows a preferred embodiment for achieving multiple functions.
此装置的一重要特征在于其可在程式逻辑的控制下,轻易选择内送信号的录制部分。根据诸如目前时刻、特定的时间长度或经由观看者按压遥控器等信息,Tmk剪辑写入器1106可被切换以记录一部分的信号,并且在稍后的某一时间关闭。此切换通常会致使送出一“切换”事件至推进开关1102对象。An important feature of this device is that it can easily select the recorded portion of the incoming signal under the control of the program logic. Based on information such as the current moment, a specific length of time, or via the viewer pressing the remote control, the
另一种用于启动选择性记录的方法是通过将信息调制到VBI,或存放到MPEG专用数据频道。从VBI或专用数据频道所解码出的数据会被送到程式逻辑。程式逻辑会检查此数据,以判定该数据是否指明所调制的电视信号的记录应开始。同样地,此信息亦可指明记录应在何时终止,或另一数据项可调至指明记录应何时终止的信号。起始及终止指示器可以明确地调制到该信号中,或者以标准方式存放在该信号中的其它信息亦可用于进行此信息的编码。Another method for enabling selective recording is by modulating the information into the VBI, or depositing into an MPEG dedicated data channel. Data decoded from the VBI or a dedicated data channel is sent to the program logic. Program logic checks this data to determine whether the data indicates that recording of the modulated television signal should begin. Likewise, this information may also indicate when the recording should be terminated, or another data item may be tuned to signal when the recording should be terminated. Start and stop indicators may be explicitly modulated into the signal, or other information stored in the signal in a standard manner may be used to encode this information.
参照第12图,其显示一实例来说明程式逻辑如何扫描包含于闭路字幕(CC)场当中的字,以确定起始及终止的时间,并利用特定的字或短语来启动记录。其中包括NTSC或PAL场1201的数据流。CC字节是抽取自每一奇数场1202,并加入环形缓冲区1203当中,以用于藉由字解析器1204来处理。字解析器1204收集字,直到遇到字边界为止,此边界通常为空白字、句点或其它描述字符。回想上述情况,MPEG音频及视频数据段被收集到一连串大小固定的PES缓冲区。一特殊数据段会被加入每一PES缓冲区,以保留提取自CC场1205的字。因此,CC的信息将会和音频及视频保持同步,并且可在数据流播放时正确地呈现给观看者。如此亦容许存储的数据流在程式逻辑闲置的时候为CC信息提供处理,其可分散负载、降低成本及提升效率。在此情况下,存放在特殊数据段的字即可直接送至状态表逻辑1206。Referring to FIG. 12, an example is shown of how program logic scans words contained in a closed caption (CC) field to determine start and stop times and initiate recording with a specific word or phrase. These include NTSC or
在数据流进行记录当中,每一字会被锁定在表1206当中,该表指明针对该字所进行的识别动作。此动作可能仅止于改变识别器状态机1207的状态,或可能致使状态机1207发出一动作要求,如“开始记录”、“停止记录”、“观看短语”,或其它类似的要求。的确,所辨识的字或短语可能会导致传输通道被切换;例如,若节目当中使用不想要的语言,则可覆盖不同的声纹道。During data stream recording, each word is locked in a table 1206, which indicates the recognition action for that word. This action may simply change the state of the
应注意的是,解析状态表1206及识别器状态机1207可在任何时间点加以修饰或更改。例如,不同的表及状态机可提供给各个输入频道。在另一种情况下,此等单元可依据日期时间或其它事件而加以切换。It should be noted that the parsing state table 1206 and the
参照第11图,添加拉出开关1104,其是输出至宿1105。宿1105会调用nextFullBuf及releaseEmptyBuf,以取得或回传来自于拉出开关1104的缓冲区。拉出开关1104可有任何数目的输入,其中一输入可为剪辑动作1113。遥控器可在输入源之间进行切换。控制对象1114将一事件传送至拉出开关1104,以告知其进行切换,使其从目前的输入源切换至该控制对象所选定的任一输入源。Referring to FIG. 11 , a
提供剪辑动作用于以可预测及可控制的方式来排列一些不同的存储信号,并可能经由遥控器加入观看者所选择的控制。因此,其是以TmkXfrm对象的衍生物的方式呈现,并接收用于切换至下一存储信号的“切换”事件。Clipping actions are provided for arranging a number of different stored signals in a predictable and controllable manner, possibly adding viewer-selected control via the remote control. Thus, it is exposed as a derivative of the TmkXfrm object and receives a "toggle" event for switching to the next stored signal.
如此即可让程式逻辑或使用者建立惯用的视频输出序列。任何数目的视频数据段可加以排列及组合,即如同程式逻辑或使用者使用广播工作室视频混合器一般。Tmk剪辑读取器1108、1109及1110会加以分配并挂在拉出开关1104当中。拉出开关1104在Tmk剪辑读取器1108、110g及1110之间进行切换,以组合视频及音频剪辑。由于传输通道的建构方式的缘故,流量控制自动化。Push及Pull开关即如同广播工作室的视频开关一样。This allows program logic or the user to create custom video output sequences. Any number of segments of video data can be arranged and combined, eg, as program logic or as a user using a broadcast studio video mixer.
在此所描述的衍生类及所得到的对象可以任何方式加以组合,以建立一些不同且有用的配置用于存储、取回、切换及观看电视广播数据流。例如,若可以使用多重输出部及输入部,则可观看一输入而存储另一输入,同时可藉由第二个输出来产生图像中的图像的视窗,以便预览先前所存储的数据流。此等配置代表一种独特且新颖的软件转换的应用,其可利用单一符合成本效益的装置来达到昂贵且复杂的硬件解决方案所得到的效果。The derived classes and resulting objects described herein can be combined in any manner to create a number of different and useful configurations for storing, retrieving, switching, and viewing television broadcast data streams. For example, if multiple outputs and inputs are available, one input can be viewed while another is stored, while a second output can be used to generate a window of images within images to preview previously stored data streams. These configurations represent a unique and novel application of software translation that can utilize a single cost-effective device to achieve the effects of expensive and complex hardware solutions.
参照第13图,其显示高层次的系统图,并显示以VCR备份器材来实施。输出模组1303将电视信号传送到VCR1307。如此可让使用者直接将电视节目录制在录影带上。本发明可让使用者将要从磁盘录制到录影带的节目加以排队,并可针对节目送至VCR1307的时间进行排程。标题页(EPG数据)可在一节目进行传送之前送入VCR1307。较长的节目可藉由加速播放速率或省略帧而加以调整,使其适合较小的录影带。Referring to Figure 13, it shows a high level system diagram and shows its implementation with VCR backup equipment. The
VCR1307的输出亦可导引回输入模组1301。在此种配置方式下,VCR是做为媒体开关1302的备份系统。所有过剩的存储或优先权较低的节目编排将会被送到VCR1307,以供稍后取用。The output of the
输入模组1301可加以解码并传递至编码在VBI的系统信息的其余部分。输出模组1303可编码到系统的其余部分所提供的输出VBI数据中。程式逻辑可加以安排而将不同种类的识别信息编入输出信号当中,此输出信号将会利用VCR1307记录在磁带上。将此磁带回放即可让程式逻辑返回读取此识别信息,使得记录于该带上的电视信号能够正确地加以处理。例如,一特定节目可连同关于何时被录制及来源网络等信息一起记录到磁带上。当此节目回放到输入模组时,此信息可用于控制信号的存储以及呈现给观看者等。The
凡熟习此技术者将可轻易得知,此种机构可应用于将各种不同的数据项引入程式逻辑当中,而此等数据项并不会被视为电视信号。例如,软件更新或其它数据可加入本系统。从电视广播数据流接收此数据的程式逻辑可加强该数据处理方式的控制,诸如根据某种预先掌握的密钥要求某种认证程序与/或对嵌入的信息解密。此种方法亦可在常规广播信号中运作,从而引入将非电视控制信息及数据提供给程式逻辑的有效方法。Those skilled in the art will readily appreciate that this mechanism can be used to introduce various data items into program logic that would not be considered television signals. For example, software updates or other data may be added to the system. Program logic receiving this data from a television broadcast data stream may enforce control over how the data is processed, such as requiring an authentication procedure and/or decrypting embedded information based on some pre-knowledgeable key. This approach also works on conventional broadcast signals, thereby introducing an efficient method of providing non-television control information and data to program logic.
此外,凡熟习此技术者将可轻易得知,虽然以上是特别针对VCR加以说明,但任何多媒体记录装置(如数字视频光碟-随机存取存储器(DVD-RAM)记录器)可以轻易取代VCR。In addition, those skilled in the art will readily understand that although the above description is specific to a VCR, any multimedia recording device such as a digital video disc-random access memory (DVD-RAM) recorder can easily replace a VCR.
尽管本发明已在此参照较佳实施例而加以说明,凡熟习此项技艺者可轻易得知,其它应用可取代在此所提出者而仍不脱离本发明的精神及范围。例如,本发明可应用于侦测赌博场所的犯罪行为。本发明的输入部连接到赌场的摄影监视系统。记录的视频数据会进行快速缓存,并且同时输出到外部的VCR。在外部VCR正载入实时输入视频的同时,使用者可切换到任一图像馈源,检视(例如倒转、播放、慢速播放、快速播放等)所记录的图像的特定段。Although the present invention has been described herein with reference to preferred embodiments, those skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. For example, the invention can be applied to detect crimes in gambling establishments. The input of the present invention is connected to the camera surveillance system of the casino. Recorded video data will be quickly buffered and output to an external VCR at the same time. While the external VCR is loading real-time input video, the user can switch to either image feed, viewing (eg, reversing, playing, slow-playing, fast-playing, etc.) a specific segment of the recorded image.
视频数据流标签的体系结构Architecture of Video Data Stream Labeling
请再次参照第12图。标签是出现于电视广播数据流1201的抽象事件。此等标签可能内嵌于模拟信号的VBI内,或内嵌于MPEG2多路复用的专用数据频道内。如上所述,标签可内嵌于隐藏字幕(CC)场,并提取到环形缓冲区1203或存储器分配结构。字解析器1204在扫瞄CC数据的过程中会识别出独特的标签。此等标签是利用标准CC控制码予以修饰。同时亦可隐性产生标签;例如:根据当前时间和正在观看的节目而产生。Please refer to Figure 12 again. Tags are abstract events that appear in the television
本发明提供一种称作TiVo视频标签编写(TVTAG)系统,其用于在广播之前将标签(TiVo标签)插入视频数据流。参照第14、16和17图,TVTAG系统包含视频输出源1401、在VBI插入隐藏字幕信息及输出字幕化视频的兼容装置1402、监像器1405,以及软件程序,后者用于控制VBI插入装置,使其将具有隐藏字幕信息格式的字幕化标签数据对象纳入视频数据流1406。经过带标签的视频数据会立即被传送或存储于适当的媒体,以供后续传送。The present invention provides a system called TiVo Video Tag Authoring (TVTAG) for inserting tags (TiVo Tags) into video data streams prior to broadcast. Referring to Figures 14, 16 and 17, the TVTAG system includes a
在大部分的基本实作情况下,TVTAG软件1406负责控制VBI插入装置1402。TVTAG软件1406藉由标准化电脑接口及装置控制码协定来联是VBI插入装置1402。当观看视频监视器1405的操作人员判断出已到达所想要的标签插入点时,其会按下按键而产生TiVo标签数据对象,同时该对象会被传送到VBI插入装置1402,并且被纳入视频数据流而供传送1404或存储1403。In most basic implementation cases, the
TVTAG软件具备控制视频输入源1401和视频输出存储装置1403的额外功能。操作人员选择特定的视频1602,而且能够使视频输入流暂停,以有助于图像要素1702能够重叠于监视器上,并利用指向装置—例如滑鼠—来定位该图像要素。图像要素1702的定位亦可藉由操作人员接口1601来完成。操作人员利用X位置1605与Y位置1604来输入图像位置。The TVTAG software has the additional function of controlling the
图像要素和定位信息随后被纳入TiVo标签对象(以下将会说明),并记载时间码或视频帧。当操作人员感到满意时,即可重新播放和录制。随后,通过插入装置发出最精确的标签。Image elements and positioning information are then incorporated into TiVo tag objects (described below) and recorded with timecode or video frames. When the operator is satisfied, playback and recording can be resumed. Subsequently, the most accurate label is issued by the insertion device.
请参照第15图。在TVTAG系统的另一较佳实施例中,软件程式采用标准因特网络协仪的网页,并为操作人员显示该网页1505。网页会促使远端服务器1504上所执行的脚本产生TiVo标签对象。服务器1504控制VBI插入装置1502、视频源1501以及录制装置1503。位于远端的操作人员1505可从服务器1504取得视频数据流的低频宽或高频宽版本,以做为插入标签的参考。一旦必要的标签数据对象均已产生并传送后,其稍后可藉由服务器1504进行整批处理。Please refer to Figure 15. In another preferred embodiment of the TVTAG system, the software program takes a standard Internet Protocol web page and displays the
在本发明的另一较佳实施例中,其将软件和广泛运用的非线性视频编辑系统综合在一起而成为“插入”对象,藉以容许TiVo标签数据对象能够在产生视频的过程中被插入。在此实施例中,非线性编辑系统是做为源和存储系统控制器,同时亦提供放置图像的功能,其容许放置具精确帧的TiVo标签数据对象。In another preferred embodiment of the present invention, software and widely used non-linear video editing systems are integrated into "insert" objects, thereby allowing TiVo tag data objects to be inserted during video generation. In this embodiment, the nonlinear editing system acts as the source and storage system controller, and also provides image placement functionality, which allows for the placement of frame-accurate TiVo tag data objects.
请参照第18图。标签在视频源1801之前或其上被综合于视频数据流内。随后,视频数据流经由卫星1802、电缆或其它在陆地上的传输方法1803加以传送。接收机1804接收视频数据流、识别出标签,以及回应该等标签而执行适当动作。观众是经由监视器或电视机1805来观赏最终得到的视频数据流。Please refer to Figure 18. Tags are integrated into the video data stream before or on video source 1801 . The video data stream is then transmitted via satellite 1802 , cable or other terrestrial transmission method 1803 . Receiver 1804 receives the video data stream, recognizes tags, and performs appropriate actions in response to the tags. Viewers watch the final video data stream through a monitor or TV set 1805 .
本发明提供一种支援根据视频数据流的标签而采取动作的体系结构。TiVo标签所提供的弹性运用实例包括:The present invention provides an architecture that supports actions based on tags in a video stream. Examples of flexible uses provided by TiVo tags include:
·希望知道何时观赏广播网的节目预告,以便让观众可选择录制未来即将播映的节目。附加于节目预告的TiVo标签会指出节目播映的日期、时间和频道。关于主动节目预告的细节会在下文中详细描述。• Want to know when to watch a broadcast network's promos, so viewers can choose to record upcoming programs that will air in the future. A TiVo tag attached to the program trailer indicates the date, time and channel on which the program will air. Details about proactive promos are described in detail below.
·一种常见的问题会发生在棒球延长加赛的情况。无论何时,当棒球比赛时间超过进入广告的时间时,VCR和数字录像机(DVR)会切断录制过程。在视频数据中传送TiV0标签,以指出录制过程必须继续进行。当比赛结束时,也传送TiVo标签,以告知系统停止录制。• A common problem occurs in baseball overtime. VCRs and digital video recorders (DVRs) cut off the recording process whenever a baseball game is longer than the time to enter commercials. A TiV0 tag is transmitted in the video data to indicate that the recording process must continue. When the game is over, a TiVo tag is also transmitted to tell the system to stop recording.
·拳击比赛经常会突然结束,因而会导致VCR和DVR在剩余的保留时间内录下替代节目。传送TiV0标签,以指出节目已结束,并告知系统停止录影。• Boxing matches often end abruptly, causing VCRs and DVRs to record substitute programs during the remaining retention time. Send a TiV0 tag to indicate that the show is over and tell the system to stop recording.
·请参照第19图。广告加标签,以利播映存储于本端或远端的广告,藉以取代全国或区域以外的广告。在视频数据流1901中,重叠于节目片段1902(商业广告或其它数据段)上的标签是以诸如上述TVTAG系统之类的技术加标签。TiVo标签会告知本发明1905关于旧节目片段1902的起点和终点。可附加单独的标签1903来告知本发明1905关于旧节目片段1902的持续时间,或是将标签附加于旧节目片段的起点1903和终点1904,以指出数据段1902的起点和终点。当检测到标签时,本发明1905会搜寻新的节目片段1906,并直接播映新的数据段来取代旧节目片段1902,而当广播完毕时,其将会回复到原来的节目1901。观众将不会感受到上述转换过程。·Please refer to Figure 19. Advertisement tagging is used to broadcast advertisements stored locally or remotely, so as to replace advertisements outside the country or region. In
此时有三种选择:There are three options at this point:
1)系统1905可持续快速缓存原来的节目;如此,若观众1907使节目1901倒转并再次播放该节目,则其将看到重叠的数据段;1) The
2)旧节目片段1902亦会在快速缓存中被替换;因此,观众将不会看到重叠的数据段;或者2) The
3)系统可快速缓存原来的数据段1902,并在播放时重新解译标签。然而,若无智慧型标签预取功能,则唯有当观众有极充分的备份而使系统能够得知重叠数据段内的第一个标签时,此功能才得以发挥功效。3) The system can quickly cache the
将旧节目片段的长度加入起点1903和终点1904标签,即可解决上述问题。另一个处理方式是标签匹配,使得系统由起点标签1903识别终点标签1904。当系统1905执行快速前进或倒转而通过其中一个标签时,系统1905能够得知其必须寻找另一个标签。标签1903和1904配对含有一个独特的识别符。系统1905随后可向前或向后搜寻配对的标签,并取代旧有的节目。系统执行标签预取时,有其时间或帧长度的限制。此限制包含在标签或标准化当中。将界线包含于标签中是为最具弹性的处理方式。The above problem can be solved by adding the length of the old program segment to the
举例而言,将要播放的节目片段是依照场所、一天中的某段时间、节目内容或依照优选引擎加以选择(描述于本申请的申请人所拥有的美国专利申请案第09/422,121号)。利用优选引擎,来自于当地或服务器存储的适当节目1906可根据观众的个人数据予以选择。个人数据含有观众的观赏习惯、节目喜好及其它个人信息。存储的节目片段1906亦具有描述其特点的节目对象,该等对象是用于搜寻最符合的喜好引导。For example, the program segments to be played are selected by location, time of day, program content, or by a preference engine (described in US Patent Application Serial No. 09/422,121 owned by the applicant of the present application). Using the preference engine,
显然地,商业广告中必须存在一种循环机制,以避免播送完广告。为目前所观赏的节目产生相对于节目数据的偏移倾向,喜好引导即可进一步予以偏移,并可利用此偏移倾向,使商业广告目录与磁盘上的节目1906产生偏移匹配。例如,若某观众正在观赏肥皂剧,而且该观众的喜好倾向为体育节目,则本发明将会选择啤酒广告,而非尿布广告。Obviously, there must be a looping mechanism in commercials to avoid running out of commercials. By creating an offset bias for the currently viewed program relative to the program data, the preference guide can further offset this bias and use this offset bias to match the commercial list with the
标签亦可用于形成条件选择。标签具有其自身衡量喜好的方式。在此情况下,喜好衡量会与喜好倾向相互比较,若比较结果显示高度相关,则本发明不会更动商业广告。比较结果若为低度相关,则会触发运用上述方法Labels can also be used to form conditional selections. Tags have their own way of measuring likes. In this case, the preference measurement is compared with the preference tendency, and if the comparison result shows a high correlation, the present invention will not change the commercial. If the comparison result is low correlation, it will trigger the application of the above method
应注意的是,在所有情况下,系统1905均有充足的时间能够进行选择。传输通道结构通常会快速缓存1/2秒的视频数据,以便在输入与输出之间提供许多时间来更改数据流。若需要更长的时间,则可为传输通道增加更多的缓存。当磁盘内的节目广播完时,系统会藉由读取之前的数据流而形成相同长度的时间延迟。It should be noted that in all cases, the
同时应注意的是,亦可利用上述方法来检测商业广告,该方法描述于美国专利申请案第09/187,967号,其名称为“模拟视频添标及编码系统(Analog VideoTagging and Encoding System)”,前揭申请案亦为本案申请人所拥有。当使用描述于前揭申请案中的标签时,亦可运用与上述方法相同类型的取代方式。It should also be noted that commercials can also be detected using the method described above, described in U.S. Patent Application Serial No. 09/187,967, entitled "Analog Video Tagging and Encoding System", The above-disclosed application is also owned by the applicant of this case. The same type of substitution as described above can also be used when using the tags described in the preceding patent applications.
请参照第19图和第22图。标签可执行商业广告“快速移动/跳过(zapping)”功能。标签可用于标示某商业广告的起点1903和终点1904,因此其可被略过或先行取得。观众只需按下遥控器2201上的跳变键2205即可。系统会搜寻终点标签,并紧接着伴随该标签的帧而重新播放。略过的商业广告数目取决于缓存的视频数据流数量。Please refer to Figure 19 and Figure 22. The tag may perform a commercial "zapping" function. Tags can be used to mark the
根据观众预订的喜好设定,系统1905可自行略过现播节目的广告,或略过预先录制且存储于存储器1906内的节目的商业广告。若要略过现播节目中的商业广告,则依照上述方法,通道内必须有大量缓存。容许系统略过录制于节目中的商业广告,即可让观众观赏连续播映的节目,而不会受到任何商业广告的干扰。The
·附加于节目中的标签可作为索引。举例而言,观众可经由按下遥控器2201上的跳变键2205而跳到节目中的各个索引。• Tags attached to programs can be used as indexes. For example, the viewer can jump to each index in the program by pressing the jump key 2205 on the
·标签亦可用于系统功能。如上所述,系统可将节目内容存储于本端而供其自身运用。系统1905必须以某种方式取得节目素材。在离线时间调到特定频道可达成此目的。系统1905在数据流1901当中搜寻告知其开始录制的标签。录制内容包括若干由标签1903、1904所界定的节目片段,其可识别出内容或喜好倾向。位于数据流中的终点的标签告知系统1905停止录制过程。节目片段1906存储于本端,并依上述方法供后续索引之用。· Labels can also be used for system functions. As mentioned above, the system can store the program content locally for its own use. The
本发明具备下列设计要点:The present invention has the following design points:
·本设计提供清楚的区隔机制和策略。· This design provides clear compartmentalization mechanisms and strategies.
·以内部观点而言,标签可被视为引发策略模组的抽象事件。源通道对象负责将接收到的标签信息映射到此等内部抽象。• From an internal point of view, tags can be viewed as abstract events that trigger policy modules. The source channel object is responsible for mapping received label information to these internal abstractions.
·抽象标签存储于PesBuf数据流,如同其为另一数据段一般。如此即可处理具精确时间信息的任何大小标签。同时亦可让标签能够继续存在而成为录制节目的一部份,因此不论何时观赏节目均可采取适当的动作。• Abstract tags are stored in the PesBuf data stream as if it were another data segment. This allows processing of tags of any size with precise time information. It also allows tags to persist as part of the recorded program, so appropriate actions can be taken whenever the program is viewed.
·标签可更新关于当前节目及未来节目的信息。此类信息是为录制的节目而保留。• Tabs can be updated with information about current shows and future shows. Such information is reserved for recorded programs.
·当标签通过系统时可予以记录。此外,亦可将此信息上传。没有必要保留伴随某标签的所有信息。• Can record tags as they pass through the system. In addition, this information can also be uploaded. It is not necessary to retain all the information that accompanies a label.
·标签可依照个别的时程予以产生。例如,根据时间和观赏的广播网而利用广播网工作站记录产生标签。根据时间而产生的标签会保留在录制的信息流。• Labels can be generated on an individual schedule. For example, use network workstation records to generate tags based on time and network viewed. Time-based tags remain in the recorded stream.
以时间为根基的标签Time-Based Labels
请参照第20图,以时间为根基的标签是藉由时间为根基的标签识别器2012予以处理。此对象2012听取频道改变事件,并且当切换到已知的广播网时,该对象会接收该广播网的“时间记录”。若存在某一时间记录,则对象2012会根据当前时间建立标签时程。当各标签的时间出现时,对象2012将某一事件传送到源2001,以指出标签已被插入。源对象2001则将标签插入当前正在建构的PesBuf内的下一个可用位置。下一个“可用”位置可根据帧边界或其它条件予以决定。Please refer to FIG. 20 , the time-based tags are processed by the time-based
源对象的作用The role of the source object
源对象2001负责将标签插入其所处理的PesBuf数据流。在此假设存在分别用于模拟输入和数位电视源的源对象。The source object 2001 is responsible for inserting tags into the PesBuf stream it processes. It is assumed here that there are separate source objects for analog input and digital TV sources.
标签可以若干不同的方式出现于模拟数据流:Tags can appear in the simulated data stream in a number of different ways:
—在EDS场中。— in the EDS field.
—隐性使用CC场。- Implicit use of CC fields.
—调制到VBI,或许利用ATVEF规格。- Modulation to VBI, perhaps using the ATVEF specification.
—以时间为根基的方式。— A time-based approach.
在数字电视广播数据流中,或由模拟转换为MPEG之后:In a digital TV broadcast data stream, or after conversion from analog to MPEG:
—带内,使用TiVo添标技术。- In-band, using TiVo tagging technology.
—MPEG2专用数据频道。— MPEG2 dedicated data channel.
—MPEG2数据流特征(如帧边界等)。- MPEG2 data flow characteristics (such as frame boundaries, etc.).
—时间为根基的标签。—Time-based labels.
源对象2001并不负责解析标签及采取任何动作。相反地,源对象2001应当仅负责辨识出数据流中的潜在标签,并将其加入PesBuf数据流中。The source object 2001 is not responsible for parsing tags and taking any action. Instead, the source object 2001 should only be responsible for identifying potential tags in the data stream and adding them to the PesBuf data stream.
标签的辨识及动作Tag identification and action
在概念上,所有标签可分为两大类:在接收时必须采取动作(例如录制节目)的标签,以及显示时—亦即观赏节目时—必须采取某种动作的标签。Conceptually, all tags fall into two broad categories: tags that must take an action when received (such as recording a program), and tags that must take some action when displayed—that is, when the program is viewed.
接收标签的处理Processing of received labels
在接收时必须采取动作的标签的处理方式如下:建立Tmk推进开关类2002的新的接收标签机制次类2003。当输入数据流在源对象2001与节目快速缓存转换2013之间通过此次类2003时,次类2003可辨识出接收标签并采取适当动作。Tags that must take action on receive are handled as follows: A new Receive
接收标签通常被处理一次,而后即失效。Receiving tags are usually processed once and then expired.
显示标签的处理Display label processing
显示时必须采取某种动作的标签的处理方式如下:建立TmkPullSwitch类2008的新的显示标签机制次类2007。当输出数据流在节目快速缓存转换2013与宿对象2011之间通过此次类2007时,次类2007可辨识出显示标签并采取适当动作。Labels that must take some action when displayed are handled as follows: Create a new display
标签程序的处理Handling of labeling procedures
只有当TagReceptionPolicy对象2009出现于当前的频道时,才得以进行接收标签的处理。只有当源频道的TagPresentationPolicy对象存在时,才得以进行显示标签的处理。Only when the
TagPolicy对象描述将要辨识的是哪些标签,以及容许进行哪些动作。The TagPolicy object describes which tags will be recognized and which actions are allowed.
当输入频道改变时,接收标签对象会被告知,同时该对象会提取该频道的TagReceptionPolicy对象2009(若此对象存在),并遵守既已被定义的程序。When the input channel changes, the receiving tag object will be notified, and at the same time, the object will extract the
当输出频道改变时,显示标签对象会被告知,同时该对象会取该频道的TagPresentationPolicy对象2010(若此对象存在),并遵守已定义的程序。When the output channel changes, the display tag object will be notified, and at the same time, the object will get the
标签记录tag record
标签的接收可记录于数据库内。此项动作只有当存在TagReceptionPolicy对象2009且该标签被设定为记录属性时才出现。举例而言,记录属性或许已设定,但仍不被容许执行接收动作。如此可达成输入数据流内的动作的被动式记录。Receipt of tags can be recorded in the database. This action only occurs if a
通道处理的变更Changes in channel handling
重要的是支援关于当前放映内容的数据更新。提出以下策略:It is important to support data updates about the current show content. The following strategies are proposed:
—每当输入源改变或新的放映内容开始时,会制作放映对象的副件,而且通道内的其它运作均补做此副件。—When the input source is changed or a new show content starts, a copy of the show object will be made, and other operations in the channel will make up this copy.
—更新标签属于接收标签;在策略允许的情况下,更新经过复制的放映对象。- Update tags are of the receive tag; where policy permits, update the replicated projection object.
—若要录制当前的放映内容,则放映对象的副件与其一同存放,使得存储的节目具备与其一同被存储的适当信息。- If the current showing is to be recorded, a copy of the showing is stored with it so that the stored program has the appropriate information to be stored with it.
—录像机必须得知放映对象已经改变的情况,以使其不会过早切断例如棒球比赛的录像。- The video recorder must be notified that the object of the projection has changed so that it does not prematurely cut off the recording of, for example, a baseball game.
标签解译与标签状态机Tag Interpretation and Tag State Machine
标签的运用非常有弹性,因为一旦TagPolicy对象已被用于识别一个有效的标签之后,标签解译器2005会解译标准化抽象标签,而TiVo标签状态机2006则会执行操作性标签。经过解译的标签会启动已预先定义的动作组。各组动作均已预先程式化设定于系统内。The use of tags is very flexible because the
状态机标签属于操作性标签,其不会携带可执行码,但执行程式步骤。如此可让标签始发端组合此类标签而在TiVo系统上执行特别制订的动作。状态机标签可达到如同解译标签所能达到的结果,但其具有动态更改所执行动作组的灵活性。State machine tags are operational tags that do not carry executable code, but execute program steps. This allows tag originators to combine such tags to perform specially tailored actions on the TiVo system. State machine tags achieve the same results as interpreted tags can, but with the flexibility to dynamically change the set of actions performed.
抽象解译标签Abstract Interpretation Tags
可以运用的抽象标签集合是定义于一个称作标签/动作列表的列表当中。此种列表通常存储于数据库对象内;其中存在若干已定义的抽象标签。此等动作可区分为三大类:The set of abstract tags that can be used is defined in a list called tag/action-list. Such a list is usually stored within a database object; there are several abstract tags defined therein. These actions can be divided into three main categories:
—观众可观看到的动作(可包含互动)。- Actions (which may include interactions) that can be seen by the viewer.
—关于数据流的元信息(例如频道、时间、播映长度等)。- Meta information about the data stream (eg channel, time, show length, etc.).
—TiVo控制标签。-TiVo control tab.
造成盘载数据库更动或隐性录制的标签必须经过验证。此项工作通过控制标签来完成。Tags that cause changes to the on-board database or covert recordings must be authenticated. This work is done through control tags.
观众可观看到的标签Tabs visible to viewers
—选单— menu
此种标签指示要给观众提供选择。此种标签所附带的数据会指出选项为何,以及诸如显示样式等其它相关数据。选单具备逾时停用的功能。This label indicates that the viewer is to be offered a choice. The data attached to this tag tells what the option is, as well as other relevant data such as display styles. The menu has a time-out function.
选单标签的用意是为观众提供选择。若观众不在场或不感兴趣,则选单应立即消失。选单的操作原则可视情况暂停目前播映的节目。选单的显示方式不—定为列表。The purpose of a menu label is to provide choices to the viewer. If the viewer is not present or interested, the menu should disappear immediately. The operating principle of the menu can be used to pause the currently broadcast program according to the situation. The display method of the menu is not necessarily a list.
—有条件推出另一节目— conditional launch of another show
此种标签表示:当某条件式为真时,应播映另一节目。此条件是由策略模组加以分析。条件可以常为真。This tag indicates that another program should be played when a condition is true. This condition is analyzed by the strategy module. A condition can always be true.
—有条件上托另一节目—Conditionally entrusted to another program
此种标签会回复到上一个节目。当节目结束之后,另一节目的堆叠会自动上托。若频道已改变或观众进入TiVo中央选单区,则所有其它的节目均上托。This tab will revert to the previous show. When the program ends, the stack of another program will be lifted up automatically. If the channel has been changed or the viewer enters the TiVo central menu area, all other programs are popped up.
突现其它节目是一种将任意序列插入所观赏的节目的方法。在最上层不评估条件数据。相反地,策略模组必须检查此数据以便选择。例如,此方法可用于形成“套叠”广告。Highlighting other programs is a method of inserting arbitrary sequences into programs being watched. Conditional data is not evaluated at the top level. Instead, policy modules must check this data for selection. For example, this method can be used to form "nested" advertisements.
—有条件显示指示符— conditional display indicator
此种标签会使指示符显现于萤幕上。指示符会被命名,而且可以在任何时刻查询运作中的指示符集合。此种标签或标签策略可指出引导指示符的逾时数值。Such labels cause indicators to appear on the screen. Indicators are named, and the set of active indicators can be queried at any time. Such a tag or tag policy may indicate a timeout value for the boot indicator.
—有条件清除指示符条— Conditional clear indicator bar
此种标签会清除运作中的指示符。若频道已改变或观众进入TiVo中央选单区,则所有指示符均会被清除。This label clears the active indicator. If the channel is changed or the viewer enters the TiVo center menu area, all indicators will be cleared.
指示符是另一种在不中断节目播映的情况下为观众提供选择的方法。指示符亦可用于表示或许会有兴趣的数据流的条件。例如,“主动节目预告(ActivePromo)”可藉提供节目对象识别码作为标签数据的一部分加以建立,使该节目可得到选择。当指示符显现时,若观众按下某特定按钮,则节目会被排定录制时间。Indicators are another way to provide viewers with choices without interrupting the airing of the show. Indicators can also be used to indicate conditions for which data streams may be of interest. For example, an "ActivePromo" can be created by providing a PID as part of the tag data to make the program available for selection. When the indicator is displayed, if the viewer presses a certain button, the program is scheduled to be recorded.
元信息标签meta information tag
—当前的播映信息—Current broadcast information
此种标签一般用于容纳关于当前播映的节目的信息。各标签通常连结某一项信息,例如开始时间、结束时间、持续时间等。此种标签可用于“延长”某事件的录制。This type of tag is typically used to hold information about the currently running program. Each tag is usually linked to a certain piece of information, such as start time, end time, duration, etc. Such tags can be used to "extend" the recording of an event.
—未来的播映信息- Future broadcast information
此种标签类似上述标签,但其包含关于未来播映的信息。在此存在两种相关情况:This tag is similar to the tag above, but it contains information about future showings. There are two relevant situations here:
·上述信息是关于某一项已经存在于数据库内的播映信息。此数据库对象会适时加以更新。• The above information is broadcast information about a certain item already existing in the database. This database object is updated as appropriate.
·上述信息是不存在的播映信息。此时会建立新的播映对象,并由该标签启动。• The above information is broadcast information that does not exist. At this time, a new playback object will be created and started by this label.
TiVo控制标签TiVo Control Tags
—授权修改— authorize modification
此种标签通常会利用当月的安全钥密予以加密。此认证的使用期限由操作原则加以设定,其或许为一或两个小时。因此,若允许更动本端的TiVo系统状态,则上述标签必须持续重新广播。This tag is usually encrypted with the current month's security key. The lifetime of this certification is set by the operating principle, which may be one or two hours. Therefore, if changes to the state of the TiVo system at the local end are allowed, the tags must be continuously rebroadcasted.
此种标签的用意是为杜绝利用诸如延伸数据服务(EDS)之类的内在非安全标签机制的蓄意(或意外)破坏。若广播网提供EDS信息,则首先应确定广播网所提供的标签是正确的,而且不太可能发生破坏标签传输系统的情况。其次,应和该广播网合作,藉以提供一种仅在该广播网传认证标签的认证系统。未经认证的标签绝不可通过源对象插入PES数据流。Such tags are intended to prevent deliberate (or accidental) tampering using inherently non-secure tagging mechanisms such as Extended Data Service (EDS). If the broadcast network provides EDS information, it should first be determined that the labels provided by the broadcast network are correct, and damage to the label transmission system is unlikely to occur. Second, it should cooperate with the broadcast network to provide an authentication system that transmits authentication tags only on the broadcast network. Unauthenticated tags MUST NOT be inserted into the PES stream via source objects.
—有条件录制当前节目—Conditionally record the current program
此种标签会使目前所观赏的节目由此点被存储到磁盘内。当节目结束时即停止录制。This tag causes the currently watched program to be stored to disk from that point on. Recording stops when the program ends.
—有条件停止录制当前节目— Conditionally stop recording the current program
此种标签会停止录制目前所观赏的节目。This tab will stop recording the program you are currently watching.
—有条件录制未来节目—Conditional recording of future programs
在此提供播映对象识别码(或许直接在未来播映标签中传送)。节目会在背景优先次序低于观众的明确选择下被排定录制的时程。The showing object ID is provided here (perhaps directly in the future show tag). Shows are scheduled to be recorded with background prioritizing them lower than the viewer's explicit choice.
—有条件取消录制未来节目— Conditional unrecording of future shows
在此提供播映对象识别码。若由前一个标签为该对象排定录制的时程,则该录制会被取消。Provide the playback object ID here. If a recording was scheduled for this object by a previous tag, the recording will be cancelled.
此等标签和未来播映标签可按经过加密的安全格式插入。若此等标签已经过适当验证,则源对象只会将此等标签插入PES数据流。These tags and future show tags can be inserted in an encrypted and secure format. The source object will only insert such tags into the PES stream if they have been properly validated.
此等标签其中一个用途是自动启动TiVo目录—例如回路集合、广告、空档等。稍后的下载会使此目录被“安装”并成为可用状态。One use of these tabs is to automatically launch TiVo catalogs - such as loop collections, commercials, slots, etc. Later downloads will cause this directory to be "mounted" and available.
—有条件存储文件—Store files conditionally
此种标签是用于传送数据流内的数据,使其存储于磁盘内。例如,广播网页即会通过此种机制。This type of tag is used to transfer data within a data stream to be stored on disk. For example, broadcast web pages go through this mechanism.
—有条件储存对象—Conditionally store objects
此种标签是用于传送数据流内的对象,使其存储于磁盘内。对象的存储过程会遵循标准化对象更新规则。This tag is used to transfer objects in the data stream to be stored on disk. Object stored procedures follow standardized object update rules.
以下为利用插入于数据流的隐藏字幕(CC)部分的放映标签的实作范例。由于当某信号被传送到达使用者接收装置并解码之前,该信号会被保留,所以选择数据流的CC部分。VBI信号的其余部分则不保证如此。当编码成MPEG-2时,许多卫星系统会卸除隐藏字幕以外的所有部分。The following is an example implementation using a show tag inserted in the Closed Caption (CC) portion of the data stream. The CC portion of the data stream is selected because the signal is preserved when it is transmitted to the user's receiving device before it is decoded. The rest of the VBI signal is not guaranteed to be the same. When encoding to MPEG-2, many satellite systems strip everything but closed captions.
在CC数据流上有非常严格的频宽限制。CC数据流的数据速率为每一视频帧两个7位字节。此外,为了避免和控制码发生抵触,数据必须从0x20开始,因而实际上将其传输速率限制在约6.5位的字节(为简便起见,删截到6位的字节)。再者,上述频宽约等于360位/秒。若频道与实际的CC数据共用,则将会进一步降低上述传输速率。此外,需要传送额外的控制码,以避免具备CC功能的电视试图将TiVo标签作为CC文本显示。There are very strict bandwidth restrictions on CC data streams. The data rate of the CC data stream is two 7-bit bytes per video frame. Furthermore, to avoid collisions with control codes, the data must start at 0x20, thus effectively limiting its transfer rate to approximately 6.5-bit bytes (truncated to 6-bit bytes for simplicity). Furthermore, the aforementioned bandwidth is approximately equal to 360 bits/second. If the channel is shared with the actual CC data, the above transmission rate will be further reduced. Additionally, additional control codes need to be transmitted to prevent CC-capable TVs from attempting to display the TiVo tag as CC text.
基本标签设计Basic Label Design
此段落将说明如何在隐藏字幕数据流内安排标签。在此假设对于隐藏字幕的规格有概括性的了解;然而,此点并非决定因素。This paragraph explains how to arrange tags within a closed caption data stream. A general knowledge of closed captioning specifications is assumed here; however, this is not a determining factor.
使标签无法被看见make the label invisible
安置于数据流当中的TiVo标签不应影响具隐藏字幕功能的电视上的显示。此目的可藉由下列方法而达成:首先传送一个“重新字幕载入”指令(传送两次以免失误),其后紧接一串描述标签的字符,该等字符之后为“擦除非显示存储器”指令(传送两次以免失误)。上述过程的作用是将文本载入画面以外的存储器,而后再清除该存储器。一般具备隐藏字幕功能的电视将不会显示此文本(根据EIA-701标准)。A TiVo tag placed in the data stream should not interfere with the display on a closed caption capable TV. This purpose can be achieved by the following method: first send a "reload subtitle" command (send twice to avoid mistakes), followed by a string of characters describing the label, these characters are followed by "erase non-display memory" Command (twice to avoid mistakes). The effect of the above procedure is to load the text into memory outside the screen, and then clear the memory. Normally closed captioning capable TVs will not display this text (according to the EIA-701 standard).
只要隐藏字幕解码器并非处于“滚动”或“卷动”模式,则上述方法必然能奏效。在此种模式中,“重新字幕载入”指令将会导致文本被删除。为克服此问题,即使TiVo标签被传送到第二个隐藏字幕频道,TiVo标签仍会被接收并予以辨识。依照上述方式,纵使隐藏字幕频道1被设定为卷动式文本,仍然可以通过隐藏字幕频道2来传送标签。As long as the closed caption decoder is not in "scroll" or "scroll" mode, the above method must work. In this mode, the "reload subtitles" command will cause the text to be deleted. To overcome this problem, even if the TiVo tag is transmitted to the second closed captioning channel, the TiVo tag will still be received and recognized. According to the above method, even if the closed caption channel 1 is set as scrolling text, the tag can still be transmitted through the closed caption channel 2.
标签的编码Label encoding
以TiVo标签传送的文本包含“Tt”字母,其次是代表该标签长度的单一字符,紧接着是标签内容,而后则是标签内容的循环冗余校验码(CRC)。”Tt”字母具备充分的唯一性,而不太可能在一般的CC数据中遇到相同的字母。此外,一般的CC数据经常会从位置控制码开始,以指出文本应显示于萤幕上的哪个位置。由于不会用到在屏显示,所以不需要此种位置数据。故此,紧接着“重新字幕载入”控制码之后遇到”Tt”字母的可能性极低,几乎能够完全保证此种组合为TiVo标签(然而此实作不需仰赖上述情况确实如此)。The text transmitted in a TiVo tag consists of the letters "Tt", followed by a single character representing the length of the tag, followed by the tag content, followed by a cyclic redundancy check (CRC) of the tag content. The "Tt" letter is sufficiently unique that it is unlikely to encounter the same letter in general CC data. In addition, general CC data often starts with a position control code to indicate where the text should be displayed on the screen. Such location data is not required since the on-screen display will not be used. Thus, the very low probability of encountering the letters "Tt" immediately after the "resubtitle loading" control code almost guarantees that this combination is a TiVo tag (however this implementation does not need to rely on the fact that this is the case).
代表标签长度的单一字符是将标签长度增加0x20并经计算而得。举例而言,若其长度为3个字符,则所用的长度字符为0x23(‘#’)。如此一来,上述实作可延伸到长度为95(因为字集中只有96个字符),而最大长度则被定义为63。若需要更长的标签,则可为长度字符增加其它32个可能值的解译。The single character representing the tag length is calculated by adding 0x20 to the tag length. For example, if its length is 3 characters, the length character used is 0x23 ('#'). Thus, the above implementation can be extended to a length of 95 (because there are only 96 characters in the character set), and the maximum length is defined as 63. If longer tags are required, interpretations of the other 32 possible values can be added for the length character.
标签本身的可能值是定义于以下的标签类型一节。The possible values for the tag itself are defined in the Tag Types section below.
上述CRC是一种16位的CRC-CCITT(国际电报电话谘询委员会)标准码(亦即,多项式=x^16+x^12+x^5+1)。CRC码是以三个单独字符安置于数据流。第一个字符是将0x20加上CRC的六个最高有效位并经计算而得。下一个字符是将0x20加上CRC的第二个最显著位元并经计算而得。最后一个字符则将0x20加上CRC的最后四位并经计算而得。The above-mentioned CRC is a 16-bit CRC-CCITT (Consultative Committee for International Telegraph and Telephone) standard code (ie, polynomial=x^16+x^12+x^5+1). The CRC code is placed in the data stream as three separate characters. The first character is calculated by adding 0x20 to the six most significant bits of the CRC. The next character is calculated by adding 0x20 to the second most significant bit of the CRC. The last character is calculated by adding 0x20 to the last four bits of CRC.
标签类型label type
此段落将详细说明TiVo标签的范例。应注意的是,各标签序列由至少一个字节开始,而该字节代表标签的类型。This paragraph will detail examples of TiVo tags. It should be noted that each tag sequence begins with at least one byte, and this byte represents the type of tag.
iPreview标签iPreview Tags
请参照第17图。一个iPreview标签包含四项信息。第一项信息为预告节目的32位节目识别码。第二项信息包含预告节目的持续播映时间。第三项数据为iPreview提示1702安置于萤幕1701上的位置,而最后一项信息则为iPreview提示所使用的尺寸大小。Please refer to Figure 17. An iPreview tab contains four items of information. The first item of information is the 32-bit program identification code of the preview program. The second piece of information contains the running time of the teaser program. The third item of data is the position on the
iPreview提示的萤幕位置为萤幕的宽、高解析度的比值。X座标使用9位来区分宽度,因而最后得到的座标如下:X=(x_resolution/511*xval)。若xval为10,则在720x486的萤幕上(使用CCIR656解析度),X座标为14。Y座标使用8位来区分高度,因而最后得到的座标如下:Y=(y_resolution/255*yval)。X、Y座标指示调试图左上角的位置。The screen position prompted by iPreview is the ratio of the screen width and high resolution. The X coordinate uses 9 bits to distinguish the width, so the final coordinate is as follows: X=(x_resolution/511*xval). If xval is 10, then on a 720x486 screen (using CCIR656 resolution), the X coordinate is 14. The Y coordinate uses 8 bits to distinguish the height, so the final coordinate is as follows: Y=(y_resolution/255*yval). The X, Y coordinates indicate the position of the upper left corner of the debug graph.
若X、Y值被设成最大的可能值(亦即x=511,y=255),则表示制作者将决定其位置的工作留给系统来完成。系统会将调试图安置在预先设定的位置。使用最大值来表示预设位置的理由在于:“实际”位置绝不会被设定在此等数值,因为如此将使整个调制图超出画面之外。If the X and Y values are set to the maximum possible values (ie x=511, y=255), it means that the maker leaves the determination of its position to the system. The system will place the debug map at the preset position. The reason for using maximum values for preset positions is that the "real" positions are never set to these values, as doing so would push the entire modulation map out of frame.
尺寸栏为四位数字,其代表所有提示图像的大小。此栏的16个可能的数值对应预先设定的图像大小,机顶盒(视讯转接器)应预先予以提供。The Size column is a four-digit number that represents the size of all hint images. The 16 possible values in this column correspond to preset image sizes, which should be provided in advance by the set-top box (video adapter).
逾时限制为一个10位的数字,其代表留在预告节目内的帧的个数。此将限定标签的使用期限为34秒。若某预告节目的持续时间较长,则必须重复该标签。应注意的是,上述逾时限制是“人为限制”于10位,以避免发生错误。当某制作者在标签中使用格式错误的逾时限制时,上述处理方式可避免其影响到后续的商业广告。The timeout is limited to a 10-digit number representing the number of frames left in the trailer. This will limit the lifetime of the tag to 34 seconds. This tag must be repeated if a teaser has a longer duration. It should be noted that the above timeout limit is "artificially limited" to 10 digits to avoid errors. This prevents it from affecting subsequent commercials when a creator uses a malformed timeout in a tag.
版本是用于编定版本的编号,藉以识别预告节目本身。在此使用完整的隐藏字幕字符集,以取代以位包封此号码(因而将其限制为6位),如此可形成96个可能值,而非64(2^6)个可能值。因此,版本编号范围应在0-95之内。目前尚未使用到保留字符。此种字符必须存在,以使控制码能够正确地终止而对准2字节的边界。Version is the number used to compile the version to identify the preview program itself. The full closed caption character set is used here instead of bit-packing the number (thus limiting it to 6 bits), which results in 96 possible values instead of 64 (2^6) possible values. Therefore, version numbers should be in the range 0-95. Reserved characters are not currently used. Such characters must be present in order for the control codes to be properly terminated on 2-byte boundaries.
Ipreview标签的第一个字符总是“i”。The first character of the Ipreview tag is always "i".
所有数据栏是包封在同一个位边界,而后再分为六个位值,此等位值会被转换成字符(藉由增加0x20)并传送。上述栏的次序如下:All data fields are packed on the same bit boundary, and then divided into six bit values, which are converted into characters (by adding 0x20) and sent. The order of the above columns is as follows:
·32位:节目识别码(ID)32 bits: program identification code (ID)
·9位:X座标9 digits: X coordinate
·8位:Y座标8 bits: Y coordinate
·4位:图像大小4 bits: image size
·10位:逾时限制10 digits: timeout limit
·1字符:版本1 character: version
·1字符:保留栏1 character: Reserved column
数据栏总共有66位,其需要11个字符来传送,并加上1个字符用于版本栏,以及1个字符用于保留栏。各个字符的确实内容如下:The data field has a total of 66 bits, which requires 11 characters to transmit, plus 1 character for the version field, and 1 character for the reserved field. The exact content of each character is as follows:
1)0x20+识别码(ID)[31:26]1) 0x20+ identification code (ID) [31:26]
2)0x20+ID[25:20]2) 0x20+ID[25:20]
3)0x20+ID[19:14]3) 0x20+ID[19:14]
4)0x20+ID[13:8]4) 0x20+ID[13:8]
5)0x20+ID[7:2]5) 0x20+ID[7:2]
6)0x20+ID[1:0]X[8:5]6) 0x20+ID[1:0]X[8:5]
7)0x20+X[4:0]Y[7]7) 0x20+X[4:0]Y[7]
8)0x20+Y[6:1]8) 0x20+Y[6:1]
9)0x20+Y[0]大小(size)[3:0]9) 0x20+Y[0] size (size)[3:0]
10)0x20+Y[0]size[3:0]逾时(timeout)[9]10) 0x20+Y[0] size[3:0] timeout (timeout)[9]
11)0x20+timeout[8:3]11) 0x20+timeout[8:3]
12)0x20+timeout[2:0]12) 0x20+timeout[2:0]
13)0x20+版本(version)13) 0x20+ version (version)
14)保留14) Reserved
包含第一个字符“i”在内,iPreview标签的长度为14个字符+3个CRC字符。加上标签档头(3个字符),其使全长成为20个字符,并可在10个帧上进行传送。另外加上4个用于传送两次“重新字幕载入”及“擦除未显示存储器”的帧,此意味着iPreview标签在广播时将占用14个帧(0.47秒)。Including the first character "i", the length of the iPreview tag is 14 characters + 3 CRC characters. Adding the tag header (3 characters) makes the total length 20 characters and can be transmitted over 10 frames. Plus the 4 frames used to send the two "reload subtitles" and "erase undisplayed memory", this means that the iPreview tag will take up 14 frames (0.47 seconds) when broadcast.
一个完整的iPreview标签包含:A complete iPreview tab contains:
“重新字幕载入”,“重新字幕载入”,Tt1(0x20+17=0x31=0110001=”1”)i<13字符iPreview标签>,3字符CRC,擦除未显示存储器,擦除未显示存储器"Reload subtitle", "Reload subtitle", Tt1(0x20+17=0x31=0110001="1") i<13 characters iPreview tag>, 3 characters CRC, erase undisplayed memory, erase undisplayed memory
奇偶调试字符parity debug characters
目前,奇偶位用作奇偶校验。然而,由于CRC已包含于其中,奇偶位不需要具备错误检查的功能。进一步发展此项设计,可利用更灵巧的方式来使用奇偶位。由于隐藏字幕接收机势必会忽略任何具有错误奇偶位的字符,此一种利用频宽有限的CC频道的较佳方式可藉由故意使用错误的奇偶性而达成。如此即可免除重新字幕载入及删除未显示存储器,同时更容易在现有的CC数据中“散置”TiVo标签。Currently, parity bits are used as parity. However, since the CRC is already included, the parity bit does not need to have the function of error checking. Taking this design a step further, there are more clever ways to use the parity bits. Since closed caption receivers will necessarily ignore any characters with wrong parity, this preferred way of utilizing the bandwidth-limited CC channels can be achieved by intentionally using wrong parity. This eliminates the need to reload subtitles and delete undisplayed memory, and makes it easier to "scatter" TiVo tags in existing CC data.
iPreview观众互动iPreview audience interaction
请参照第17图、第20图、第21图和第22图。iPreview标签会促使标签解译器2005将iPreview提示1702显示于萤幕1701。iPreview提示1702是告知观众,运作中的节目预告可以运用,而观众可告知TiVo系统,使其录制未来即将播映的节目。观众是通过按压遥控器2201上的选择钮2204来回应iPreview提示1702。Please refer to Figure 17, Figure 20, Figure 21 and Figure 22. The iPreview tag causes the
标签解译器2005会等待使用者的输入。依据观众预先设定的喜好,按下选择钮2204会使标签解译器2005自动排定录制节目的时程,因而成为一种单键录制功能,亦即为观众呈现录制选项萤幕2101。此时,观众可突显录制选单上的选项2102,并按下选择键2204而使节目被排定录制时程。The
标签本身已被标签解译器2005解译。标签解译器2005会等待观众通过遥控器2201的任何输入。一旦观众按下选择键2204之后,标签解译器2005会告知TiVo系统排定录制描述于iPreyiew标签内的32位节目识别码的节目的时程。The tag itself has been interpreted by the
请参照第20图、第22图和第23图。iPreview亦有其它用途。各项用途均受到节目内容和显示萤幕图像的支配。显然,系统无法解译节目内容,但图像与节目识别码的组合可告知标签解译器2005应采取何种动作。以下为产生租用和销售的两个范例。Please refer to Figure 20, Figure 22 and Figure 23. iPreview also has other uses. Each use is governed by program content and display screen images. Obviously, the system cannot interpret the program content, but the combination of the image and the program ID tells the
产生租用的过程会发生在例如正在播映的汽车广告。当iPreview图像出现于萤幕上时,观众即得知可经由按下选择键2204而进入互动选单。The process of generating a rental may take place, for example, while a car advertisement is being played. When the iPreview image appears on the screen, the viewer knows that they can enter the interactive menu by pressing the select key 2204 .
选单萤幕2302是由标签解译器2005显示,其为观众提供选择,以获得更多的信息2303或观赏汽车影片2304。观众随时可按下现场电视按键2202而离开。若观众通过上下方向键2203和选择键2204来选择取得更多信息2303,则观众所要的信息会由标签解译器2005传送到制造商2305,并藉此产生产品介绍。观众按下选择键2204可回到节目。A
当播映例如音乐专辑等产品广告时可产生销售。iPreview图像2301会出现在萤幕上。观众可按下选择键2204,促使标签解译器2005显示选单萤幕2307。Sales may be generated when advertisements for products such as music albums are shown. The
选单萤幕2307为观众提供选择购买产品2308或离开2309。若观众选择“是”2308来购买该项产品,则标签解译器2005会将订购单连同观众的购买信息2310传送给制造商。若该项广告为音乐专辑广告,则观众亦可选择观赏音乐制作人所制作的音乐影片。The
无论何时当系统使观众返回节目时,观众会回到原来离开的地方。如此将给予观众一种连续播映的感觉。Whenever the system returns the viewer to the program, the viewer will pick up where he left off. This will give the viewer a sense of continuous play.
重导(redirect)概念可以轻易地扩展到因特网方面。iPreview图符会以如同上述方式显现。当观众在遥控器2201上按下选择键2204时,网页会随之为观众呈现。观众随后可与该网页进行互动,而当此互动完成后,本系统会使观众返回到先前离开正在观赏节目的地方。The concept of redirection can be easily extended to the Internet. The iPreview icon will appear as above. When the viewer presses the
利用上述喜好引擎,在形成产品介绍或销售过程中为观众呈现的信息可方便地适合特定观众。观众的观赏习惯、节目喜好及个人信息会被用于选择提供给观众的选单、选项和萤幕显示。各个选单、选项和萤幕显示均有相关的节目对象,而该等对象会与观众的喜好倾向相互比较。Using the preference engine described above, the information presented to a viewer in forming a product introduction or sales process can be conveniently tailored to a specific audience. The viewer's viewing habits, program preferences and personal information are used to select the menus, options and screen displays presented to the viewer. Each menu, option, and screen display has an associated program object, and these objects are compared with the viewer's preferences.
举例而言,若某观众为男性,且广告为Chevrolet公司所提供,则当该观众按下选择键时,会显现一张货车照片。若该观众为女性,则会显现有活动折篷汽车的照片。For example, if a viewer is male and the ad is provided by Chevrolet, when the viewer presses the select button, a picture of a truck will appear. If the viewer is a woman, a picture of a convertible car will appear.
应注意的是:以下所描述的标签状态机2006完全能够执行与上述范例中的标签解译器2005所执行的相同步骤。It should be noted that the
TiVo标签状态机TiVo Tag State Machine
请再次参照第20图。本发明的较佳实施例提供一种标签状态机(TSM)2006。此种标签状态机是一种用于处理抽象标签的机构,其可藉由TiVo接收机产生观众可观看到的动作。Please refer to Figure 20 again. A preferred embodiment of the present invention provides a Tag State Machine (TSM) 2006 . The tag state machine is a mechanism for processing abstract tags, which can generate actions that can be seen by the viewer through the TiVo receiver.
建立主动节目预告是其中一个简单范例。如上所述,主动节目预告是为即将播映节目的预告,而观众可立即选择让TiVo系统在该节目实际播映时进行录制。Creating proactive promos is a simple example of this. As mentioned above, active promos are previews of upcoming shows, and viewers can immediately choose to have the TiVo system record the show when it actually airs.
在上述简单范例中存在若干潜在的复杂性:必须产生某个指示符,以提示观众该项机会;指示符必须准确地呈现与消失;必须提供在此讨论的节目的正确识别码;出现主动节目预告的节目可在不同于其原来播映时间的时间被观赏。There are several potential complications in the simple example above: some indicator must be generated to alert the viewer to the opportunity; the indicator must appear and disappear accurately; the correct identifier for the program in question must be provided; active programs appear A previewed program may be viewed at a different time than its original airing time.
在TiVo标签的建立和管理方面亦存在挑战性。重要的是要尽可能减少针对现存广播方式和技术的更动。此表示机构应尽可能简单,使其容易综合于广播数据流,并得到坚固且可靠的操作特性。There are also challenges in setting up and managing TiVo tags. It is important to minimize changes to existing broadcast methods and technologies. This presentation mechanism should be as simple as possible to allow easy integration into broadcast data streams and result in robust and reliable operating characteristics.
标签的运作原理How Tags Work
如上所述,已认为传送标签的可用频宽会受到限制。例如,VBI具有争相使用的有限可用空间。甚至在数字电视信号中,其所传送的带外数据量也不多,因为该信号的大部分使用者主要是着重于电视节目编排的选择。As mentioned above, it has been considered that the available bandwidth for transmitting tags is limited. For example, the VBI has limited free space that it scrambles to use. Even in digital television signals, the amount of out-of-band data conveyed is modest, since most users of this signal are primarily concerned with television programming choices.
因此,标签成为大小仅几字节的简单对象。较为复杂的动作是借着连续传送多个标签而建立。Thus, tags become simple objects of only a few bytes in size. More complex actions are established by sequentially transmitting multiple tags.
广播传输的特性隐含标签将会因信号问题、太阳黑子等问题而遗失。TSM利用某种机构来处理遗失的标签,并确保不会因遗失的标签而采用任何未如预期的动作。The nature of broadcast transmissions implies that labels will be lost due to signal problems, sunspots, etc. TSM utilizes some kind of mechanism to deal with missing tags and make sure that no unintended actions are taken due to missing tags.
一般而言,观众可观看到的标签动作仅与其所收看的频道有关;在此假设:当频道改变之后即弃置标签状态。Generally speaking, the tag actions that viewers can watch are only related to the channel they watch; it is assumed here that the tag status is discarded when the channel is changed.
实体标签会由接收该等实体标签的源对象1901转译为抽象标签。由于标签并未附带可执行码,因此标签不是“主动代理者”;操作TSM可得到观众可观看到的修改及变更,但TiVo接收系统的基本运作并不会受到标签序列的影响。若标签能够包含可执行码—例如适用于ATVEF的Java字节流,则TiVo观赏体验的品质会因撰写较差或恶意的软件而受到不良影响。Entity tags are translated into abstract tags by the
所有标签动作均由匹配于当前频道的匹配策略对象加以管理。任何动作均由此对象启动或停用;若策略对象不存在,则所有标签动作均会被封锁。All tag actions are governed by a matching policy object that matches the current channel. Any action is enabled or disabled by this object; if no policy object exists, all tag actions are blocked.
基本抽象标签Basic abstraction tags
所有抽象标签均有一个共同的基础结构。下列组成部分会出现在所有抽象标签内:All abstract tags share a common underlying structure. The following components appear in all abstract tags:
—标签类型(1字节)— Tag type (1 byte)
不容许有类型0。类型255指示“延伸”标签,以防未来可能需要超过254个标签值。Type 0 is not allowed.
—标签序列(1字节)— tag sequence (1 byte)
此种不具正负号的栏随着序列中的各标签而递增。对于不属于序列的标签而言,此栏必须设定为0。1的标签序列代表新序列的开始;在概念上,序列可为任意的长度,但其必须由少于255个标签的有序片段所组成。This unsigned column increments with each label in the sequence. For tags that are not part of a sequence, this column must be set to 0. A tag sequence of 1 represents the start of a new sequence; conceptually, a sequence can be of any length, but it must consist of an ordered sequence of fewer than 255 tags. composed of fragments.
各标签类型均有一个内藏序列长度(可为0);引进序列号是为处理数据流中的标签遗漏或其它形式的标签遗失。一般而言,每当一个序列发生错误时,整个标签序列会被弃置并重设状态机。Each tag type has a built-in sequence length (may be 0); the sequence number is introduced to handle tag omissions or other forms of tag loss in the data stream. In general, whenever an error occurs in one sequence, the entire tag sequence is discarded and the state machine is reset.
标签应在实体范围内进行检验和。若检验和不符,则源对象会将标签弃置。如此会造成序列错误并重设状态机。Tags should be checked and summed within the scope of the entity. If the checksum does not match, the source object discards the tag. Doing so will cause a sequence error and reset the state machine.
—标签时间标记(8字节)— tag time stamp (8 bytes)
此为电视广播数据流内的同步时间,而标签即在此时被辨识。此时间会与TiVo接收机所产生的所有其它显示内容同步。此部分将不会被传送,而是由接收机本身所产生。This is the synchronous time within the television broadcast data stream at which the tag is recognized. This time is synchronized with all other displays produced by the TiVo receiver. This part will not be transmitted, but generated by the receiver itself.
—标签数据长度(2字节)—Length of label data (2 bytes)
此为任何与标签并联的数据的长度。此数据是根据标签类型予以解译。实体范围解译器应针对数据执行至少某种程度的错误检查。This is the length of any data in parallel with the tag. This data is interpreted according to the tag type. Entity scope interpreters should perform at least some level of error checking on the data.
标签状态机(TSM)Tag State Machine (TSM)
TSM为标签显现机构的一部份,该机构与录像重放联机。The TSM is part of the tag presentation mechanism, which is connected to the video playback.
在概念上,TSM是管理整数的抽象堆叠,其中整数的精确度至少为32位,或其大小足够存放一个对象识别码。此对象识别码为抽象化,其可指示或不指示TiVo接收机上的真实对象—否则该对象可能必须映射为正确对象。堆叠的大小是限制在255个数据项,以防止拒绝服务的破坏。Conceptually, a TSM manages an abstract stack of integers that are at least 32 bits in precision, or large enough to hold an object identifier. This object identification code is an abstraction that may or may not indicate a real object on the TiVo receiver - otherwise the object may have to be mapped to the correct object. The stack size is limited to 255 data items to prevent denial of service damage.
TSM亦管理一组变数。变数命名为2字节整数。变数名称0被保留。标签序列可操作“使用者”变数;此类变数介于1与2^15-1之间。“系统”变数由TSM处理,且包含关于目前TiVo接收机的数值,例如:当前节目的对象识别码、TSM修订版和其它有用的信息。此等变数的名称介于2^5与2^16-1之间。使用者变数的个数限制于TSM内;而TSM变数指示此界线。TSM also manages a set of variables. Variables are named 2-byte integers. Variable name 0 is reserved. Label sequences operate on "user" variables; such variables are between 1 and 2^15-1. The "system" variable is handled by the TSM and contains values about the current TiVo receiver, such as: object ID of the current program, TSM revision and other useful information. The names of these variables are between 2^5 and 2^16-1. The number of user variables is limited within the TSM; and TSM variables indicate this boundary.
标签数据是TSM指令序列。当标签被识别且被容许时,即开始执行此等指令。TSM指令面向字节,而且特定指令可包含额外的字节来支援其功能。Tag data is a sequence of TSM instructions. Execution of these commands begins when the tag is recognized and allowed. TSM instructions are byte-oriented, and certain instructions may contain additional bytes to support their functionality.
可供运用的TSM指令可区分为若干类型:Available TSM commands can be divided into several types:
数据移动指令Data Movement Instructions
push_byte—遵循指令而将字节推至堆叠上。push_byte—follows the instruction and pushes bytes onto the stack.
push_short—遵循指令而将短数推至堆叠上。push_short—follows the instruction to push a short number onto the stack.
push_word—遵循指令而将字推至堆叠上。push_word—Follows the instruction and pushes the word onto the stack.
变数存取指令variable access instruction
push_var—遵循指令而下推以16位命名的变数。push_var—Push down a 16-bit named variable following the instruction.
pop_var—遵循指令而上托以16位命名的变数。pop_var—follows the instruction to pop up a 16-bit named variable.
copy_var—遵循指令而从堆叠复制到以16位命名的变数。copy_var—follows the instruction to copy from the stack to a 16-bit named variable.
堆叠操作指令stack operation instructions
swap—使最上两层的堆叠值互换。swap—Swaps the stack values of the top two layers.
pop—上托最上层的堆叠值。pop—Pops up the topmost stacked value.
算术指令arithmetic instruction
add_byte—遵循指令而将有号字节加到堆叠顶层。add_byte—follows the instruction to add the signed byte to the top of the stack.
add_short—遵循指令而将有号短数加到堆叠顶层。add_short—follows the instruction to add a signed short to the top of the stack.
add_word—遵循指令而将有号字加到堆叠顶层。add_word—follows the instruction and adds the signed word to the top of the stack.
and—将顶层和下一层堆叠的数据项相加在一起,上托该堆叠并下推新的值。and—Adds together the top and next stacked data items, popping up the stack and pushing down the new value.
or—将顶层和下—层堆叠的数据项取“或”,上托该堆叠并下推新的值。or—ORs the top and bottom stacked data items, pops up the stack and pushes down the new value.
条件指令conditional instruction
(仅用于无号变数的比较)(only for comparison of unsigned variables)
brif_zero—若堆叠顶层为零,则遵循指令而分支到有号16位偏移量。brif_zero—follow the instruction to branch to a signed 16-bit offset if the top level of the stack is zero.
brif_nz—若堆叠顶层不为零,则遵循指令而分支到有号16位偏移量。brif_nz—Follow instruction to branch to signed 16-bit offset if top of stack is non-zero.
brif_gt—若堆叠顶层大于下一个堆叠数据项,则遵循指令而分支到有号16位偏移量。brif_gt—Follow the instruction to branch to the signed 16-bit offset if the top of the stack is greater than the next stack data item.
brif_ge—若堆叠顶层大于或等于下一个堆叠数据项,则遵循指令而分支到有号16位元偏移量。brif_ge—Follow instruction to branch to signed 16-bit offset if top of stack is greater than or equal to next stack data item.
brif_le—若堆叠顶层小于或等于下一个堆叠数据项,则遵循指令而分支到有号16位偏移量。brif_le—Follow the instruction to branch to the signed 16-bit offset if the top level of the stack is less than or equal to the next stack data item.
brif_lt—若堆叠顶层小于下一个堆叠数据项,则遵循指令而分支到有号16位偏移量。brif_lt - follow instruction to branch to signed 16-bit offset if top of stack is less than next stack data item.
brif_set—若当堆叠顶层与下一个堆叠数据项是以AND运算子连结在一起时,存在位集合,则遵循指令而分支到有号16位偏移量。brif_set—follows the instruction to branch to a signed 16-bit offset if there is a set of bits when the top of the stack and the next stack data item are joined together with the AND operator.
动作指令action command
exec—针对命名于堆叠顶层的对象识别码执行标签动作exec—Executes the tag action on the object identifier named at the top of the stack
fin—终止标签而不采取任何动作fin—terminates the label without taking any action
系统变数system variable
32768(TAG)—当前标签的值32768(TAG)—The value of the current tag
..
..
..
格林威治标准时间:GMT:
32769(YEAR)—当前年度(由0开始)。32769 (YEAR)—Current year (starts with 0).
32770(MONTH)—当前月份(1-12)。32770(MONTH)—Current month (1-12).
32771(DAY)—当月日期(1-31)。32771(DAY)—the day of the month (1-31).
32772(WDAY)—当周日期(1-7,从周日开始)。32772 (WDAY)—Day of the week (1-7, starting on Sunday).
32773(HOUR)—当日小时(0-23)。32773(HOUR)—the hour of the day (0-23).
32774(MIN)—小时内的分钟(0-59)。32774 (MIN)—Minute of hour (0-59).
32775(SEC)—分钟内的秒钟(0-59)。32775 (SEC)—Second of minute (0-59).
TiVo接收机的状态:Status of TiVo receiver:
32800(SWREL)—软件版本(以字节标示为x.x.x)32800 (SWREL)—software version (marked as x.x.x in bytes)
32801(NTWRK)—当前调谐网络的对象识别码32801 (NTWRK) - Object ID of the currently tuned network
32802(PRGRM)—当前调谐节目的对象识别码32802 (PRGRM) - Object ID of the currently tuned program
32803(PSTATE)—输出通道的目前状态:32803(PSTATE)—The current state of the output channel:
0—正常播放0—normal playback
1—暂停1—Pause
2—慢动作2—Slow motion
10—倒转速度110—reverse speed 1
11—倒转速度211—reverse speed 2
......
20—快速前进速度120—fast forward speed 1
21—快速前进速度221—fast forward speed 2
标签执行状态:Tag execution status:
32900(IND)—显示或消除的指示符号码。32900(IND)—Indicator code to show or clear.
32901(PDURING)—执行标签过程中的通道状态。32901(PDURING)—Channel status during label execution.
32902(ALTP)—推进播放堆叠的另一节目对象识别码。32902 (ALTP) - Alternate Program Object ID to advance play stack.
32903(SELOBJ)—选择指示符时的录制节目对象识别码。32903 (SELOBJ) - Recorded Program Object ID when the indicator is selected.
33000(MENU1)—选单项目1的字串对象编号。33000 (MENU1) - String object number for menu item 1.
33001(MENU2)—选单项目2的字串对象编号。33001 (MENU2) - String object number for menu item 2.
......
33009(MENU10)—选单项目10的字串对象编号。33009 (MENU10) - String object number for menu item 10.
33100(PICT1)—选单项目1的图像对象编号。33100 (PICT1) - Picture object number for menu item 1.
33101(PICT2)—选单项目2的图像对象编号。33101 (PICT2) - Picture object number for menu item 2.
......
3310g(PICT10)—选单项目10的图像对象编号。3310g (PICT10) - Picture object number for menu item 10.
33200(MSELOBJ1)—选择选单项目时的录制节目对象识别码。33200 (MSELOBJ1) - Recorded Program Object ID when selecting a menu item.
33201(MSELOBJ2)—选择选单项目时的录制节目对象识别码。33201 (MSELOBJ2) - Recorded Program Object ID when selecting a menu item.
......
33209(MSELOBJ10)—选择选单项目时的录制节目对象识别码。33209 (MSELOBJ10) - Recorded Program Object ID when selecting a menu item.
标签Label
—下推另一节目—Push down another show
—上托另一节目(节目结束之后自动上托)—Upload another program (upload automatically after the program ends)
—升高指示符— Raise indicator
—降低指示符— lower indicator
—选单— menu
标签执行策略Label Enforcement Policy
执行策略由TSM决定。若干建议如下:Execution strategy is determined by TSM. Some suggestions are as follows:
—选单— menu
选单根据标准化TiVo选单基准安排。一般而言,选单会出现于现场视像上。选择某选项通常会引发出录制对话。在操作选单时,最好能够暂停数据通道。Menus are arranged according to standardized TiVo menu benchmarks. Generally speaking, the menu will appear on the live video. Selecting an option usually initiates a recording dialog. It would be nice to be able to pause the data channel while manipulating the menu.
—指示符-indicator
请参照第17图和第22图。指示符是以小图像的形式排列显示于底部。在正常观赏状态下,遥控器2201上的上下方向键2203不运作。对指示符而言,上方向键2203会使指示符转向左边,而下方向键则使其转向右边。被选定的指示符周围会出现小方框。按下选择键2204会启动该项动作。根据预设条件,新的指示符会被选取;当某指示符被删除时,若有先前选取的指示符,则该指示符会突显出来。Please refer to Figure 17 and Figure 22. Indicators are displayed in an array of small images at the bottom. In the normal viewing state, the up and down
—可供选择的节目- Programs to choose from
可供选择的节目应显现为视频数据流的一部分,而且具备完整的快速前进/倒转控制。跳变到现场节目按键2202首先将可供选择的节目堆叠上托为空堆叠。Alternative programs shall appear as part of the video stream with full fast forward/rewind controls. Jumping to the
熟习此项技艺的人士当可轻易得知:虽然在此特别以隐藏字幕数据流为例加以说明,但亦可使用其它传输方法,例如:EDS场、VBI、MPEG2专用数据频道等。People who are familiar with this technology can easily know that although the closed caption data stream is used as an example for illustration, other transmission methods can also be used, such as: EDS field, VBI, MPEG2 dedicated data channel, etc.
虽然在此以较佳实施例来说明本发明,凡熟习此项技艺的人士当可轻易得知,其它应用可用于替换在此提出的实施方式,而仍不脱离本发明的精神及范围。故此,本发明仅由权利要求予以界定。Although the present invention is described here with a preferred embodiment, those skilled in the art can easily understand that other applications can be used to replace the embodiment presented here without departing from the spirit and scope of the present invention. Accordingly, the invention is only to be defined by the appended claims.
Claims (8)
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 |
---|---|---|---|
CN 00815914 Expired - Lifetime CN1220375C (en) | 1999-09-20 | 2000-09-20 | Closed caption tagging system |
CNB2005100094809A Expired - Lifetime CN100459682C (en) | 1999-09-20 | 2000-09-20 | Closed caption tagging system |
Family Applications Before (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 (1)
Country | Link |
---|---|
CN (2) | CN1220375C (en) |
Families Citing this family (13)
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 |
JP4518079B2 (en) * | 2005-01-14 | 2010-08-04 | パナソニック株式会社 | Content detection device for digital broadcasting |
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 |
CA2816621A1 (en) * | 2010-11-02 | 2012-05-10 | Lg Electronics Inc. | Method for adaptive streaming that transmits/receives media content according to a network bandwidth and device for adaptive streaming using the same |
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 |
WO2014063330A1 (en) * | 2012-10-25 | 2014-05-01 | Intel Corporation | Anti-theft in firmware |
CN105320684B (en) * | 2014-07-28 | 2019-03-01 | 中国传媒大学 | The method for interchanging data of closed caption |
CN108605153A (en) * | 2015-09-30 | 2018-09-28 | TiVo解决方案有限公司 | Synchronized multimedia content tab data |
Citations (9)
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 |
-
2000
- 2000-09-20 CN CN 00815914 patent/CN1220375C/en not_active Expired - Lifetime
- 2000-09-20 CN CNB2005100094809A patent/CN100459682C/en not_active Expired - Lifetime
Patent Citations (10)
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 |
---|---|
CN1674660A (en) | 2005-09-28 |
CN1451234A (en) | 2003-10-22 |
HK1083965A1 (en) | 2006-07-14 |
CN1220375C (en) | 2005-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7986868B2 (en) | Scheduling the recording of a program via an advertisement in the broadcast stream | |
US10587925B2 (en) | Television viewer interface system | |
CN100407328C (en) | Multimedia Visual Playing Progress Indication System | |
US6847778B1 (en) | Multimedia visual progress indication system | |
CN100459682C (en) | Closed caption tagging system | |
HK1083965B (en) | Method and apparatus for scheduling a recording of a television program via an advertisement in a television broadcast stream | |
HK1145747A (en) | Closed caption tagging system | |
HK1119340A (en) | Multimedia program bookmarking system and method | |
HK1119340B (en) | Multimedia program bookmarking system and method | |
HK1096765B (en) | Multimedia visual progress indication system |
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 |
Address after: California, San Carlos, USA Patentee after: TiVo Solutions Ltd Address before: American California Patentee before: TIVO, Inc. |
|
CP03 | Change of name, title or address | ||
CX01 | Expiry of patent term |
Granted publication date: 20090204 |
|
CX01 | Expiry of patent term |