ES2381760T3 - Sincronización de contenido multimedia con eventos basados en el reconocimiento de secuencias de valores de clave calculada. - Google Patents
Sincronización de contenido multimedia con eventos basados en el reconocimiento de secuencias de valores de clave calculada. Download PDFInfo
- Publication number
- ES2381760T3 ES2381760T3 ES06773937T ES06773937T ES2381760T3 ES 2381760 T3 ES2381760 T3 ES 2381760T3 ES 06773937 T ES06773937 T ES 06773937T ES 06773937 T ES06773937 T ES 06773937T ES 2381760 T3 ES2381760 T3 ES 2381760T3
- Authority
- ES
- Spain
- Prior art keywords
- data
- calculated
- multimedia
- dvr
- content
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 83
- 230000008569 process Effects 0.000 claims abstract description 30
- 230000004044 response Effects 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims abstract description 8
- 238000004364 calculation method Methods 0.000 claims abstract description 5
- 206010011878 Deafness Diseases 0.000 claims description 119
- 230000009471 action Effects 0.000 claims description 42
- 230000011664 signaling Effects 0.000 claims description 19
- 238000004891 communication Methods 0.000 description 29
- 238000004458 analytical method Methods 0.000 description 26
- 239000000872 buffer Substances 0.000 description 25
- 230000015654 memory Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 17
- 238000003909 pattern recognition Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 10
- 230000001174 ascending effect Effects 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 7
- 230000001186 cumulative effect Effects 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000230533 Gulo gulo Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4126—The peripheral being portable, e.g. PDAs or mobile phones
- H04N21/41265—The peripheral being portable, e.g. PDAs or mobile phones having a remote control device for bidirectional communication between the remote control device and client device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/005—Reproducing at a different information rate from the information rate of recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/28—Arrangements for simultaneous broadcast of plural pieces of information
- H04H20/30—Arrangements for simultaneous broadcast of plural pieces of information by a single channel
- H04H20/31—Arrangements for simultaneous broadcast of plural pieces of information by a single channel using in-band signals, e.g. subsonic or cue signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/68—Systems specially adapted for using specific information, e.g. geographical or meteorological information
- H04H60/73—Systems specially adapted for using specific information, e.g. geographical or meteorological information using meta-information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2353—Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4135—Peripherals receiving signals from specially adapted client devices external recorder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/4147—PVR [Personal Video Recorder]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
- H04N21/4314—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47214—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/09—Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
- H04H60/13—Arrangements for device control affected by the broadcast information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/27—Arrangements for recording or accumulating broadcast information or broadcast-related information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/84—Television signal recording using optical recording
- H04N5/85—Television signal recording using optical recording on discs or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/907—Television signal recording using static stores, e.g. storage tubes or semiconductor memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Library & Information Science (AREA)
- Finance (AREA)
- Human Computer Interaction (AREA)
- Strategic Management (AREA)
- Business, Economics & Management (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
- Communication Control (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Television Systems (AREA)
- Theoretical Computer Science (AREA)
- Stereo-Broadcasting Methods (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Un procedimiento para procesar datos intrabanda en un dispositivo multimedia que comprende: recibir un flujo (600, 700A, 700B) de contenido multimedia, en el que el flujo (600, 700A, 700B) de contenido multimedia contiene datos intrabanda; procesar los datos intrabanda, incluyendo el cálculo de al menos dos valores (314A-314D) de clave calculada a partir de los datos intrabanda y un período de tiempo entre la generación de los al menos dos valores calculados (314A-314D) de clave calculada; determinar que los al menos dos valores calculados (314A-314D) de clave calculada y el período de tiempo entre la generación de los al menos dos valores calculados (314A-314D) de clave calculada coinciden con un patrón particular asociado con uno o más eventos, donde el período de tiempo coincide dentro de un margen de error; e identificar los uno o más eventos en respuesta a la determinación de que el patrón particular coincida dentro del margen de error.
Description
Sincronización de contenido multimedia con
eventos basados en el reconocimiento de secuencias de valores de
clave calculada.
La presente invención versa acerca del
reconocimiento de datos intrabanda en un flujo de contenido
multimedia y de la ubicación de puntos dentro del flujo de contenido
multimedia en un dispositivo multimedia.
Los enfoques descritos en esta sección son
enfoques que podrían ser seguidos, pero no necesariamente enfoques
que hayan sido concebidos o seguidos previamente. Por lo tanto, a no
ser que se indique otra cosa, no debería suponerse que ninguno de
los enfoques descritos en esta sección de derecho a su clasificación
como técnica anterior meramente gracias a su inclusión en esta
sección.
Los espectadores pueden grabar programas de TV
emitidos usando un grabador de videocasetes (VCR). Por ello, un
usuario de un VCR puede grabar un programa particular de TV en el
momento en que es emitido y reproducir el mismo programa grabado de
TV en un momento posterior. Para lograr esto, un VCR transforma las
señales eléctricas que representan un programa de TV en señales
magnéticas y almacena las señales magnéticas en una cinta magnética.
La cinta magnética habitualmente tiene la forma de una cinta de
videocasete insertada en el VCR por el usuario del VCR. Cuando un
usuario del VCR decide reproducir el programa de TV, el proceso se
invierte, y el VCR transforma (as señales magnéticas almacenadas en
la cinta de videocasete en señales eléctricas y envía las señales
eléctricas a un televisor.
Con el desarrollo de la tecnología digital, los
VCR están siendo sustituidos por grabadores de vídeo digital (DVR).
Un OVR graba programas de TV emitidos para su reproducción posterior
transformando señales eléctricas del programa de TV en información
digital y almacenando la información digital en un disco duro.
Cuando un usuario reproduce el programa grabado de TV, el DVR vuelve
a convertir la información digital en señales analógicas y envía las
señales al televisor, que presenta el programa de TV al espectador.
Además, con el advenimiento de los televisores digitales, el DVR
puede recibir señales digitales y analógicas y enviar señales
digitales directamente a un televisor digital, que presenta el
programa de TV en formato digital. Muchos proveedores de contenidos
usan ahora tecnología digital de cable y satélite para emitir
programación digital. La programación digital es recibida por
receptores de televisión por cable y/o transceptores de satélite que
se usan para presentar la programación digital a un usuario en una
pantalla de visualización. Así, los DVR tienen la capacidad de
recibir señales de programación digital de receptores de televisión
por cable o transceptores de satélite para grabar y presentar, así
como de estar incorporados en tales dispositivos.
Los DVR se han vuelto cada vez más populares y
se usan de forma generalizada para grabar programas de TV. Más
importante es que el uso de los DVR para grabar programas de TV ha
hecho que los proveedores de contenido busquen medios diferentes de
presentación de contenido a los usuarios de DRV y de enriquecer la
experiencia de los programas de vídeo. El contenido de emisión
personalizada viene estando ausente en las comunidades de
proveedores de contenidos y DVR. La solicitud de patente
estadounidense con nº de serie 09/665.921, propiedad del
Solicitante, describe un procedimiento para identificar el contenido
de una emisión usando el área de subtítulos para sordos. La patente
estadounidense nº 6.233.389, propiedad del Solicitante, también
describe un procedimiento para reconocer palabras específicas en los
datos de subtítulos para sordos.
Es deseable una técnica para reconocer eventos
diferenciados dentro de un programa no modificado de vídeo.
El documento US 2005/0226601 A1 da a conocer una
técnica para sincronizar un efecto con una presentación multimedia.
Un procesador obtiene un valor de CRC para una porción de una o más
pistas o líneas de subtítulos para sordos en una grabación. Los
valores obtenidos se cargan en una tabla, de modo que los valores
obtenidos se asocien con una entrada con una hora de registro en la
tabla que coincide con el momento en que aparece en la grabación la
línea del subtítulo para sordos.
La presente invención está definida por las
reivindicaciones independientes. Las reivindicaciones dependientes
se ocupan de características opcionales de algunas realizaciones de
la presente invención.
La presente invención se ilustra a título de
ejemplo, y no de limitación, en las figuras de los dibujos adjuntos
y eh las que los números de referencia similares se refieren a
elementos similares y en las cuales:
la Fig. 1 es un diagrama de bloques que ilustra
un sistema para el reconocimiento y la sincronización de datos
intrabanda según una realización;
la Fig. 2 es un diagrama de bloques que ilustra
una visión de conjunto general de componentes de un dispositivo para
el reconocimiento y la sincronización de datos intrabanda según una
realización;
la Fig. 3A es un diagrama de flujo que
representa un procedimiento para generar datos de secuencia de
valores de clave calculada según una realización;
la Fig. 3B es un diagrama de bloques que ilustra
el procedimiento para generar datos de secuencia de valores de clave
calculada según una realización;
la Fig. 3C es un diagrama de bloques que ilustra
el procedimiento para generar datos de secuencia de valores de clave
calculada usando diversos esquemas de subtítulos para sordos según
una realización;
la Fig. 3D es un diagrama de bloques que ilustra
un icono que aparece en una pantalla de visualización según una
realización;
la Fig. 4 es un diagrama de flujo que representa
un procedimiento para el reconocimiento y ta sincronización de
subtítulos para sordos en un dispositivo multimedia según una
realización;
la Fig. 5A es un diagrama de bloques que ilustra
una máquina de estado para encontrar coincidencias en patrones de
datos intrabanda según una realización;
la Fig. 5B es un diagrama de bloques que ilustra
datos de secuencia de valores de clave calculada según una
realización;
la Fig. 6 es un diagrama de bloques que ilustra
un procedimiento para la sincronización con datos intrabanda según
una realización;
la Fig. 7 es un diagrama de bloques que ilustra
un procedimiento para crear y ver segmentos multimedia dentro de un
programa de vídeo según una realización; y
la Fig. 8 es un diagrama de bloques de un
sistema en el que pueden implementarse realizaciones de la
invención.
En la descripción siguiente, se exponen con
fines explicativos numerosos detalles específicos para proporcionar
una comprensión cabal de la presente invención. Sin embargo, será
evidente que la presente invención puede ser puesta en práctica sin
estos detalles específicos. En otros casos, estructuras y
dispositivos bien conocidos son mostrados en forma de diagrama de
bloques para evitar oscurecer innecesariamente la presente
invención.
En el presente documento se describen
realizaciones según el esquema siguiente:
- 1.0
- Visión general de conjunto.
- 2.0
- Visión estructural de conjunto.
- 3.0
- Enfoque para reconocer datos intrabanda y sincronizar con los mismos.
- 3.1
- Datos de subtítulos para sordos.
- 3.1.1
- Generación de datos de secuencia de valores de clave calculada.
- 3.1.2
- Metadatos de secuencia de claves calculadas.
- 3.1.3
- Reconocimiento de secuencias de claves calculadas en un dispositivo multimedia.
- 3.1.4
- Sincronización con datos de subtítulos para sordos.
- 3.2
- Datos de señalización de Televisión Mejorada.
- 4.0
- Enfoque para crear y ver segmentos multimedia personalizados.
- 4.1
- Selección de segmentos de programas multimedia por parte del usuario.
- 4.2
- Creación de datos de identificación de eventos iniciada por el usuario para programas multimedia.
- 4.3
- Creación de un contenido identificado de programas multimedia.
- 4.4
- Compartición de datos de identificación de eventos para programas multimedia.
- 5.0
- Mecanismos de implementación.
\vskip1.000000\baselineskip
Las necesidades identificadas en los anteriores
Antecedentes, y otras necesidades y otros objetos que se harán
evidentes a partir de la siguiente descripción, se satisfacen en la
presente invención, que comprende, en un aspecto, un sistema de
reconocimiento y sincronización de datos intrabanda.
Tal como se ha mencionado en lo que antecede, el
uso de los DVR para grabar programas de TV ha hecho que los
proveedores de contenidos busquen diferentes medios de presentar un
contenido a usuarios de DVR y de enriquecer la experiencia de los
programas de vídeo. Por ejemplo, los proveedores de contenidos que
deseen presentar un contenido adicional de mercadotecnia o
promocional dentro de los programas de vídeo pueden hacer que se
presenten iconos particulares, mensajes o elementos interactivos al
usuario en partes particulares del programa de vídeo.
Tal como se describe en la solicitud de patente
estadounidense con nº de serie 11/284.487, titulada "Method and
Apparatus for Displaying Branded Video Tags", un DVR puede
presentar porciones de programa de vídeo con contenido comercial
presentando iconos o contenido relacionado durante la emisión del
programa de vídeo. Así, sí el proveedor de contenidos quisiera
promocionar un programa de vídeo de pronta aparición, puede
presentarse un icono interactivo durante la presentación de un
anuncio que detalle un programa de vídeo de pronta aparición.
Mientras ven el anuncio, los espectadores pueden interactuar con el
icono usando un control remoto para hacer que el DVR grabe
automáticamente el programa de vídeo de pronta aparición que está
siendo promocionado.
Para que muchas de estas características
adicionales funcionen, un DVR debe estar sincronizado con el flujo
de contenido multimedia para presentar los datos de contenido
adicional en el debido momento. Típicamente, el contenido adicional
está directamente embebido en el flujo de contenido multimedia antes
de que el contenido se emita. De esta manera, el DVR procesa el
contenido adicional junto con los datos de audio y vídeo dentro del
flujo de contenido multimedia. Embebiendo directamente el contenido
en el flujo de contenido multimedia, el proveedor de contenidos
tiene la garantía de que los datos adicionales son presentados al
usuario precisamente en el lugar en el que el proveedor de
contenidos solicitó que se presentaran. Además, el flujo de
contenido multimedia puede estar embebido con información adicional
no visible al usuario para ayudar al DVR en la sincronización. Las
anteriores características están descritas con detalle adicional en
la solicitud estadounidense nº 09/665.921, titulada
"Closed-Caption Tagging System" y en la patente
estadounidense nº 6.215.526, titulada "Analog Video Tagging and
Encoding System".
Una realización de la invención permite que los
DVR y otros dispositivos multimedia se sincronicen con datos
intrabanda dentro de flujos de contenido multimedia. Los datos
intrabanda se usan para señalizar datos adicionales por el mismo
canal o "banda" que el usado para enviar datos, en este caso
los datos de audio y vídeo. Una ventaja de usar datos intrabanda
para la sincronización es que los datos intrabanda quedan
normalmente intactos dentro de los flujos de contenido. De aquí que,
dado que normalmente quedan intactos e inalterados, los datos
intrabanda son una fuente fiable para la sincronización con un
flujo de contenido multimedia.
Ejemplos de datos intrabanda incluyen datos de
subtítulos para sordos y datos de señalización de Televisión
Mejorada (ETV). Los flujos de subtítulos para sordos contienen datos
de subtítulos para sordos (típicamente, datos de instrucciones y
texto de subtítulos para sordos) asociados con programas de vídeo
como anuncios, telecomedias, largometrajes y otro contenido
multimedia para presentar a un espectador. Los datos de señalización
de ETV definen señales de instrucciones y control para aplicaciones
interactivas que están sincronizadas con programas de vídeo de
ETV.
Cuando un dispositivo multimedia recibe un flujo
de contenido multimedia que contiene programas de vídeo y datos
intrabanda, el dispositivo procesa los datos intrabanda. El flujo de
contenido multimedia puede ser emitido por el aire por un proveedor
de contenidos o haber sido grabado previamente por el dispositivo
multimedia, Durante la grabación o la reproducción de los programas
de vídeo, el dispositivo multimedia intenta reconocer patrones de
datos intrabanda. Los patrones de datos intrabanda pueden ser
proporcionados desde otro dispositivo u otro proveedor de servicio
como datos de identificación de eventos. Los datos de identificación
de eventos identifican patrones de datos intrabanda que están
asociados con eventos particulares en el flujo de contenido
multimedia. Los datos de identificación de eventos pueden estar
almacenados en un dispositivo de almacenamiento y ser objeto de
acceso cuando se procesan datos intrabanda.
El dispositivo multimedia intenta reconocer
patrones de datos intrabanda utilizando un algoritmo de correlación.
Según una realización el algoritmo de correlación está implementado
en una máquina de estado finito. Mientras escucha en busca de datos
intrabanda dentro de un flujo de contenido multimedia, el
dispositivo multimedia utiliza la máquina de estado para determinar
sí los datos intrabanda coinciden con un patrón particular de los
datos intrabanda.
Según una realización, los datos de
identificación de eventos, que se almacenan localmente en el
dispositivo multimedia, también incluyen metadatos. Los metadatos
identifican una o más acciones para adoptar en respuesta a la
identificación del patrón escuchando los datos intrabanda de un
flujo de contenido multimedia. Si ocurre una coincidencia, el
dispositivo multimedia procesa los metadatos asociados con el patrón
y emprende la acción apropiada especificada en los metadatos. Por
ejemplo, el dispositivo multimedia puede presentar un icono a un
usuario en una pantalla de visualización. Los metadatos pueden dar
instrucciones al dispositivo multimedia en cuanto a cualquier
respuesta necesaria si un usuario reacciona ante el icono. Además,
en respuesta al reconocimiento de un patrón de datos intrabanda, el
dispositivo multimedia puede almacenar segmentos de vídeo asociados
con el patrón en un dispositivo de almacenamiento. El dispositivo
multimedia también puede usar los metadatos asociados con el patrón
reconocido para determinar el lugar en el que empieza o termina un
segmento de vídeo, o en el lugar en el que se produce un evento
particular dentro del programa de vídeo. De esta manera, se habilita
un procedimiento para el reconocimiento y la sincronización con
datos intrabanda.
En otro aspecto, se proporciona un procedimiento
para crear y ver segmentos multimedia personalizados. Se proporciona
a los usuarios en dispositivos multimedia un procedimiento mediante
el cual pueden seleccionar eventos o porciones dentro de un programa
de vídeo para su almacenamiento o reproducción. En un primer
dispositivo multimedia, un usuario selecciona una o más ubicaciones
dentro de un programa de vídeo usando una interfaz de control tal
como un control remoto. Un dispositivo multimedia recibe señales
desde la interfaz de control y determina que ubicaciones se
seleccionaron en el programa de vídeo. El dispositivo multimedia
calcula entonces un patrón de datos intrabanda relativo a la o las
ubicaciones seleccionadas y almacena el patrón de datos intrabanda
como datos de identificación de eventos de la misma manera que se ha
descrito en lo que antecede.
Los datos de identificación de eventos relativos
a la o las ubicaciones seleccionadas pueden ser proporcionados a
otro dispositivo multimedia. Usando los datos de identificación de
eventos, el otro dispositivo multimedia intenta identificar patrones
de datos intrabanda asociados con el programa de vídeo para
reconocer la o las ubicaciones dentro del programa de vídeo.
Según una realización, la o las ubicaciones
seleccionadas del programa de vídeo representan un evento o un
segmento de vídeo. Además, según otra realización, cuando se
reconoce el segmento de vídeo, pueden colocarse identificaciones de
vídeo en los lugares apropiados dentro del flujo de contenido
multimedia para que un usuario pueda saltar directamente al
emplazamiento durante la reproducción del programa de vídeo.
Además, en otras realizaciones, una vez que se
han generado identificadores de vídeo que representan las
ubicaciones seleccionadas del programa de vídeo, pueden extraerse
del flujo de contenido los datos de subtítulos para sordos y puede
proporcionarse el flujo de contenido a un dispositivo portátil. El
dispositivo portátil usa los identificadores de vídeo para indicar
la ubicación o los segmentos particulares dentro del programa de
vídeo. Alternativamente, en lugar de poner identificadores de vídeo
en el flujo de contenido multimedia, puede proporcionarse al
dispositivo multimedia una versión no editada del flujo de
contenido junto con datos que representan la o las ubicaciones
seleccionadas. Los datos que representan la o las ubicaciones
seleccionadas pueden ser proporcionados por separado del flujo de
contenido multimedia. Un dispositivo portátil puede usar los datos
para identificar ubicaciones interesantes dentro de un programa de
vídeo y presentar las ubicaciones a un usuario. Alternativamente, el
dispositivo portátil puede usar los datos que representan la o las
ubicaciones seleccionadas de cualquier manera apropiada.
En otros aspectos, la invención abarca un
aparato y un medio legible por ordenador.
\vskip1.000000\baselineskip
En toda la presente descripción, se usarán
varios términos para referirse a conceptos particulares cuyas
definiciones se proporcionan en el presente documento.
Específicamente, "datos intrabanda" son datos de señalización
enviados por el mismo canal o la misma "banda" que se usa para
enviar datos de audio y/o vídeo. Colectivamente, los datos
intrabanda se contienen en un "flujo de datos intrabanda".
Según una realización, el flujo de datos intrabanda puede incluir
datos de subtítulos para sordos o datos de señalización de
Televisión Mejorada (ETV) en un flujo de contenido multimedia.
"Patrones de datos intrabanda" incluye cualesquiera datos
intrabanda que aparezcan en un segmento particular del flujo de
datos intrabanda. Un patrón de datos intrabanda identifica una
secuencia de datos intrabanda seleccionados de una porción del flujo
de datos intrabanda. Por ejemplo, el patrón de datos intrabanda
puede ser una colección de datos de subtítulos para sordos o datos
de señalización de ETV que abarcan un segmento particular del flujo
de datos intrabanda. "Datos de identificación de eventos" son
datos que identifican uno o más patrones de datos intrabanda.
Además, los datos de identificación de eventos pueden también
incluir datos adicionales tales como metadatos que describen eventos
dentro del flujo de contenido multimedia, así como datos de
instrucciones para emprender acciones en respuesta al reconocimiento
de patrones de datos intrabanda. Los datos de identificación de
eventos pueden ser proporcionados a dispositivos multimedia, que
usan la los datos de identificación de eventos para reconocer datos
intrabanda en un flujo de contenido multimedia y localizan puntos
dentro del flujo de contenido multimedia.
Con referencia a la Fig. 1, según una
realización, se muestra un sistema para el reconocimiento y la
sincronización con datos intrabanda. El sistema contiene los DVR 102
y 104, cada uno de los cuales está acoplado en comunicación con la
red 105 a través de cualquier interfaz apropiada de comunicaciones,
tal como un puerto de comunicaciones Ethernet o inalámbrico. Además,
el sistema incluye el servidor 106A, el proveedor 106B de
contenidos, el ordenador personal 101A y el dispositivo portátil
101B.
El ordenador personal 101A puede ser un
dispositivo personal de cálculo, tal como un ordenador de sobremesa
o portátil, y está acoplado también a la red 105 a través de
cualquier interfaz apropiada. El ordenador personal 101A también
está conectado con el dispositivo portátil 101B. El dispositivo
portátil 101B es un dispositivo de cálculo de mano, un teléfono
móvil, un reproductor multimedia portátil o cualquier otro
dispositivo portátil capaz de mostrar contenido multimedia. A través
de la red 105, los DVR 102 y 104, el ordenador personal 101A y el
dispositivo portátil 101B se comunican cada uno con el servidor 106A
y el proveedor 106B de contenidos.
La red 105 puede ser implementada por cualquier
medio o mecanismo que permita el intercambio de datos entre
dispositivos en el sistema de comunicaciones. Ejemplos de red 105
incluyen, sin limitación, una red tal como una red de área local
(LAN), una red de área amplia (WAN), Ethernet o Internet, o uno o
más enlaces terrestres, de satélite o inalámbricos.
Alternativamente, o además, también pueden conectarse directamente
entre sí a través de un enlace de comunicaciones un número
cualquiera de dispositivos conectados a la red 105.
En una realización, los DVR 102 y 104 se
comunican con el servidor 106A, que proporciona datos de gula de
programas, recursos gráficos (como tipografías, imágenes, etc.),
información de servicios, soporte lógico, anuncios, datos de
identificación de eventos y otras formas de datos que permiten a los
DVR 102 y 104 operar independientemente del servidor 106A para
satisfacer los intereses de los espectadores.
El proveedor 106B de contenidos también puede
proporcionar contenido de programa multimedia directamente a los DVR
102 y 104 por medio de emisiones por el aire, transmisiones por
satélite o cable coaxial. El contenido de programa multimedia
incluye contenido tal como largo metrajes, telecomedias, programas
de variedades, programas de entrevistas, anuncios, etc., para sus
presentaciones a usuarios de DVR. Además, el proveedor 106B de
contenidos también proporciona datos adicionales al servidor 106A,
incluyendo datos promocionales, iconos, datos de páginas
electrónicas y otra información para que el servidor 106A la
interprete y la proporcione a los DVR 102 y 104. Según otra
realización, un proveedor 10?B de contenidos también proporciona
contenido de programas multimedia al servidor 106A para su
procesamiento. El servidor 106A procesa el contenido de programas
multimedia, crea los datos de identificación de eventos y
proporciona los datos de identificación de eventos a los DVR y a
otros dispositivos.
Los dispositivos multimedia usan los datos de
identificación de eventos para reconocer y sincronizarse con flujos
de contenido multimedia. Con referencia ahora a la Fig. 2, se
muestra un diagrama de bloques que ilustra los componentes de un
dispositivo para el reconocimiento y la sincronización con datos
intrabanda según una realización. En particular, la Fig. 2
representa los componentes de un DVR 200. Obsérvese que, con fines
de ejemplo, se hará referencia a un DVR en toda la descripción. Sin
embargo, la invención no está limitada en ese sentido, y el proceso
de reconocimiento y sincronización con datos intrabanda puede ser
implementado en cualquier tipo de dispositivo multimedia o sistema
de ordenador.
El DVR 200 comprende generalmente una pluralidad
de componentes, significados por el módulo 202A de entrada, para
recibir un contenido de programa multimedia de un proveedor 106B de
contenidos o de un servidor 106A. Según una realización, las
señales emitidas que representan un flujo de contenido multimedia
son enviadas al DVR 200 desde el proveedor 106B de contenidos. El
DVR 200 recibe las señales emitidas que representan un flujo de
contenido multimedia desde una antena, un sistema de TV por cable,
un receptor de satélite o cualquier otro sistema de transmisión por
medio del módulo 202A de entrada, El módulo 202A de entrada puede
comprender una pluralidad de módulos de sintonización que permiten
que una pluralidad de señales sea recibida y grabada
simultáneamente. Además, el módulo 202A de entrada toma flujos de
entrada de TV en una multitud de formas, por ejemplo una emisión en
sistema del Comité Nacional de Estándares de Televisión (NTSC) o
PAL, y formas digitales tales como el Sistema de Satélite Digital
(DSS), los Servicios de Emisión Digital (DBS) o el Comité de
Estándares Avanzados de Televisión (ATSC). DBS, DSS y ATSC se basan
en estándares denominados Grupo 2 de Expertos en Imágenes en
Movimiento (MPEG2) y Transporte de MPEG 2 Transport. El Transporte
de MPEG 2 es un estándar para dar formato al flujo de datos
digitales procedente de un transmisor fuente de TV para que el
receptor de TV pueda desensamblar el flujo de entrada para encontrar
programas en la señal multiplexada.
El DVR 200 también incluye un módulo grabador
204, que es funcional para grabar una o más porciones de un flujo de
contenido multimedia recibido desde el módulo 202A de entrada y
almacenar el flujo de contenido multimedia como un flujo de datos
digitales en el dispositivo 214 de almacenamiento. El módulo 204 de
grabación graba el flujo entrante de contenido multimedia
almacenando el flujo de datos digitales en al menos un componente de
almacenamiento, tal como el dispositivo 214 de almacenamiento, que
está diseñado para retener segmentos del flujo de datos digitales.
Según una realización, el dispositivo 214 de almacenamiento puede
ser una unidad de disco duro situada en el DVR 200.
Alternativamente, el dispositivo 214 de almacenamiento puede ser
cualquier tipo de medio de almacenamiento volátil y/o no volátil,
tal como memoria flash, y puede también consistir en medios de
almacenamiento extraíbles, tales como un disco de
DVD-ROM. Obsérvese que el DVR 200 puede contener
múltiples dispositivos de almacenamiento, medios de almacenamiento o
medios de almacenamiento extraíble del tipo descrito en lo que
antecede en cualquier combinación de los mismos.
Durante la reproducción, el flujo de datos
digitales se convierte en una señal analógica y luego se modula en
una portadora de RF por medio del módulo 202 B de salida a través
del cual la señal es entregada a un televisor estándar. El módulo
202B de salida puede entregar alternativamente una señal digital a
un televisor o un monitor de vídeo. Por ejemplo, el DVR 200 puede
utilizar un puerto de Interfaz Visual Digital (DVI) para enviar
señales digitales a un TV por medra de un cable DVI.
Alternativamente, el módulo 202B de salida puede entregar señales
analógicas y/o digitales internamente a un televisor sin el uso de
ningún cable. Por ejemplo, el DVR 200 puede ser parte de un
televisor, de modo que la comunicación entre el DVR 200 y la
pantalla de visualización se realiza internamente a través de un bus
de sistema situado en el televisor.
Para grabar y almacenar flujos de contenido
multimedia, así como otros tipos de datos, el DVR 200 incluye un
dispositivo 214 de almacenamiento. El dispositivo 214 de
almacenamiento puede ser un disco duro, una memoria o cualquier otra
forma de almacenamiento situada en el DVR 200. El dispositivo 214 de
almacenamiento puede usarse para almacenar no solo material de
programas o flujos de contenido multimedia, sino también datos
adicionales para el uso por parte del DVR 200. Por ejemplo, puede
almacenarse datos de identificación de eventos en el dispositivo 214
de almacenamiento para su recuperación futura. Aunque el dispositivo
214 de almacenamiento aparece como un módulo dentro del DVR 200, el
dispositivo 214 de almacenamiento puede estar situado
alternativamente fuera del DVR 200, y el DVR 200 puede comunicarse
con el almacenamiento usando una interfaz tal como la interfaz 206
de comunicaciones.
El DVR 200 también incluye una interfaz 206 de
comunicaciones, a través de la cual el DVR 200 se comunica con la
red 105 a través de Ethernet, red inalámbrica, módem u otros
estándares de comunicaciones. En otras realizaciones, la interfaz
206 de comunicaciones puede ser cualquier tipo de puerto de
comunicaciones, tal como un cable coaxial, infrarrojos, fibra óptica
o puerto serie. Según un ejemplo, se comunican datos desde el
servidor 106A por la red 105 hasta el DVR 200 usando un cable
Ethernet conectado a la interfaz 206 de comunicaciones. Usando la
interfaz 206 de comunicaciones, el DVR 200 puede comunicarse con un
PC 101A o el dispositivo portátil 101B a través de una
LAN.
LAN.
El módulo 202A de entrada recibe flujos de
contenido multimedia para su grabación y reproducción para los
usuarios del DVR. Cuando se reciben flujos de contenido multimedia
en el módulo 202A de entrada, son grabados por el módulo grabador
204 y procesados para su presentación al usuario por medio del
módulo 202B de salida. El procesamiento del flujo de contenido
multimedia para su visualización incluye el envío del flujo de
contenido multimedia al dispositivo 214 de almacenamiento y,
después, al módulo 202B de salida para su visualización. De hecho,
el DVR graba porciones de los flujos de contenido multimedia
durante la reproducción en directo, permitiendo que un usuario pause
y rebobine una emisión en directo sin grabar todo el programa de
vídeo. El procesamiento del flujo de contenido multimedia se
describe adicionalmente con más detalle en la patente estadounidense
nº 6.233.389, titulada "Multimedia Time Warping System" - (de
aquí en adelante patente '389).
Durante la operación del DVR 200, el módulo 210
de análisis escucha en busca de datos intrabanda, tales como datos
de subtítulos para sordos o datos de señalización de ETV. Mientras
se analiza el flujo de contenido multimedia, el módulo 210 de
análisis monitoriza la porción del flujo de datos intrabanda.
Alternativamente, el módulo 210 de análisis puede monitorizar los
datos intrabanda durante cualquier otro momento, tal como en la
reproducción del flujo de contenido multimedia.
Según una realización, el flujo de contenido
multimedia es un flujo de transporte MPEG y los datos intrabanda
están intercalados con datos de audio de vídeo como un evento de
datos privados. Dado que los datos intrabanda son un evento discreto
dentro del flujo de contenido, son fácilmente reconocibles por un
dispositivo multimedia tal como el DVR 200. Además, en el caso en el
que la emisión original está en un formato analógico, el DVR 200
contiene una pluralidad de componentes necesarios para digitalizar
flojos de contenido multimedia en el módulo 202A de entrada, de modo
que el flujo de contenido multimedia tenga la forma de un flujo de
transporte MPEG cuando sea procesado por el módulo 210 de análisis.
Los datos intrabanda son extraídos mientras se colocan vídeo y audio
en un flujo elemental empaquetado (PES), como describe
adicionalmente en la patente '389. Los datos intrabanda se combinan
entonces con el audio y el vídeo para su procesamiento por el módulo
210 de análisis y para su presentación por medio del módulo 202B de
salida.
Para sincronizar con flujos de contenido
multimedia, el DVR 200 también contiene una máquina 212 de estado de
reconocimiento de patrones. En una realización, la máquina 212 de
estado de reconocimiento de patrones representa un algoritmo para el
reconocimiento de patrones de datos intrabanda dentro del flujo de
contenido multimedia, la máquina 212 de estado de reconocimiento de
patrones procesa los datos de identificación de eventos, que incluye
patrones conocidos de datos intrabanda, en un intento por
identificar los datos intrabanda con patrones conocidos de datos
intrabanda.
Según una realización, la máquina 212 de estado
de reconocimiento de patrones es un algoritmo basado en el estado
que intenta identificar datos intrabanda procedentes del módulo 210
de análisis con patrones de datos intrabanda en los datos de
identificación de eventos almacenados en el dispositivo 214 de
almacenamiento. Si ocurre una coincidencia, la máquina 212 de estado
de reconocimiento de patrones informa de la coincidencia al DVR 200,
que inspecciona los metadatos asociados con el patrón reconocido de
datos intrabanda. En base a los metadatos, el DVR 200 puede
emprender cualquier número de acciones en sincronización con el
flujo de contenido multimedia.
Obsérvese que aunque los componentes del DVR 200
han sido descritos en relación con un DVR, los anteriores módulos
pueden estar integrados en un sistema de TV, de tal modo que los
módulos estén alojados en un televisor capaz de llevar a cabo las
funciones de cada módulo del DVR 200. Además, en otras
realizaciones, los módulos descritos en lo que antecede pueden estar
situados entre cualquier número de dispositivos capaces de realizar
las funciones descritas. Así, mediante la operación de los
componentes descritos, el DVR 200 puede reconocer datos intrabanda y
sincronizar acciones y eventos con los datos intrabanda.
\vskip1.000000\baselineskip
Tal como se ha mencionado en lo que antecede,
los datos intrabanda pueden adoptar muchas formas. Dos formas tales
incluyen datos de subtítulos para sordos y datos de señalización de
ETV. Obsérvese, sin embargo, que la invención no está limitada a
datos de subtítulos para sordos ni de señalización de ETV, y que
puede ser aplicada a otros tipos de datos intrabanda.
\vskip1.000000\baselineskip
Un tipo de datos intrabanda dentro de un flujo
de contenido multimedia son los datos de subtítulos para sordos. Los
datos de subtítulos para sordos son datos que representan texto de
subtítulos para sordos para su presentación a un usuario, así como
control de subtítulos para sordos en conjunción con programación de
vídeo. Los dispositivos multimedia pueden reconocer los datos de
subtítulos para sordos y sincronizar acciones y eventos con los
datos de subtítulos para sordos de diversas maneras usando los
procesos según se describe en el presente docu-
mento.
mento.
Un dispositivo multimedia puede usar patrones de
datos de subtítulos para sordos para reconocer y sincronizarse con
flujos de contenido multimedia. Los tipos de patrones de datos
disponibles en los datos de subtítulos para sordos son numerosos.
Por ejemplo, pueden existir patrones de datos diferenciados dentro
del texto de subtítulos para sordos propiamente dicho, los datos de
control de los subtítulos para sordos, así como cualquier otro
evento definido por los datos de subtítulos para sordos.
Reconociendo patrones diferenciados dentro de los datos de
subtítulos para sordos, un DVR puede identificar eventos dentro del
flujo de contenido multimedia.
Una manera de reconocer patrones dentro de los
datos de subtítulos para sordos es calculando valores de clave
calculada que representen el texto de los subtítulos para sordos e
identificando patrones de las secuencias de valores de claves
calculadas. Así, según una realización, en un dispositivo
multimedia, tal como un DVR o un servidor, se analizan los datos de
subtítulos para sordos y se generan valores de clave calculada
correspondientes a los datos de subtítulos para sordos. Los valores
de clave calculada se compilan entonces en secuencias de valores de
clave calculada con programas o segmentos de vídeo particular, y se
combinan además con metadatos que definen información de
instrucciones y control para su procesamiento en dispositivos
multimedia.
Estas secuencias de claves calculadas y estos
metadatos son proporcionados a dispositivos multimedia tales como
DVR en forma de datos de secuencias de valores de clave calculada.
Los dispositivos multimedia usan los datos de secuencias de valores
de clave calculada para reconocer y sincronizarse con los datos de
subtítulos para sordos. El dispositivo multimedia usa un algoritmo
de identificación para comparar secuencialmente los valores
generados de clave calculada procedentes de los datos de subtítulos
para sordos cor» múltiples secuencias de claves calculadas que el
dispositivo multimedia tiene almacenadas localmente. Según una
realización, el algoritmo de identificación se implementa por medio
de una máquina de estado que procesa los valores generados de clave
calculada e informa si ha ocurrido o no una coincidencia en una
secuencia de claves calculadas identificada por los datos de
secuencias de valores de clave calculada.
\vskip1.000000\baselineskip
Según una realización, para reconocer datos de
subtítulos para sordos y sincronizar acciones y eventos con los
datos de subtítulos para sordos en un sistema de ordenador, los
datos de secuencias de valores de clave calculada son generados y
proporcionados a dispositivos como los DVR 102 y 104, Cada DVR 102 y
104 también recibe uno o más flujos de contenido multimedia que
contienen programas de vídeo para su presentación a un usuario. Tal
como se define en el presente documento, un programa de vídeo puede
ser un largometraje, un programa de variedades, un programa de
entrevistas, un vídeo musical, un programa de telecomedia, anuncios,
una emisión de televisión en directo o cualquier otro contenido
multimedia reproducido para un usuario de un DVR.
Los datos de subtítulos para sordos, según una
realización, pueden estar contenidos en un flujo separado de datos
asociado con el flujo de contenido multimedia. Por ejemplo, si un
programa está en forma digital, los datos de subtítulos para sordos
son comunicados dentro del flujo MPEG2 como parte de un canal
privado de datos. Sin embargo, cuando se comunican en un formato
analógico, los datos de subtítulos para sordos están modulados, en
cambio, en el Intervalo de Supresión Vertical (VBI) de la señal
analógica de TV de varias maneras estándar por ejemplo, puede usarse
el Estándar Norteamericano de Emisión de Teletexto (NABTS) para
modular información en las líneas 10 a 20 de una señal NTSC,
mientras que la FCC ordena el uso de la línea 21 para los subtítulos
para sordos (SS) y los Servicios de Datos Extendidos (EDS). Sin
embargo, las señales analógicas de subtítulos para sordos son
decodificadas por el módulo de entrada del DVR y son pasadas a los
otros componentes del DVR como sí fuesen distribuidas por medio de
un canal privado de datos MPEG2. Por lo tanto, tal como se ha
descrito en lo que antecede, el módulo 210 de análisis del DVR 200
puede procesar los datos de subtítulos para sordos que en origen se
transmitieron en formato analógico o digital. Puede encontrarse más
información sobre la ubicación de datos de subtítulos para sordos en
flujos de contenido multimedia en la solicitud estadounidense con nº
de serie 09/665.921, titulada "Closed-Caption
Tagging System".
En otras realizaciones, los datos de subtítulos
para sordos pueden estar contenidos en cualquier forma detectable
dentro del flujo de contenido multimedia. El servidor 106A y el DVR
200 pueden leer y analizar (os datos de subtítulos para sordos.
Como parte del proceso de reconocimiento de
datos de subtítulos para sordos y de sincronización de acciones y
eventos con los datos de subtítulos para sordos en un flujo de
contenido multimedia, cada DVR 102 y 104 recibe también datos de
identificación de eventos. Según una realización, los datos de
identificación de eventos son datos de secuencias de valores de
clave calculada. Los datos de secuencias de valores de clave
calculada pueden provenir de varias fuentes tales como el servidor
106A. Por ejemplo, el servidor 106A puede procesar de antemano un
contenido de programa calculando valores de clave calculada y
determinando secuencias de claves calculadas para su uso por
dispositivos multimedia. El contenido de programa puede ser
proporcionado por el proveedor 106B de contenido al servidor 106A
antes de que se emita por vez primera a dispositivos multimedia. El
servidor 106A puede proporcionar secuencias de claves calculadas a
los dispositivos multimedia antes de que los dispositivos multimedia
reciban el contenido del programa asociado. Alternativamente, los
datos de la secuencia pueden provenir de otro dispositivo de
cálculo, tal como otro DVR.
Por lo tanto, con referencia ahora a la Fig. 3A,
se muestra un diagrama de flujo que representa un procedimiento para
generar datos de una secuencia de valores de clave calculada según
una realización. En la etapa 302, el servidor 106A recibe datos que
representan uno o más programas de vídeo procedentes del proveedor
106B de contenidos. Los datos pueden estar en forma de flujo de
contenido multimedia o pueden ser datos individuales de programas de
vídeo separados del flujo de contenido multimedia. Junto con los
datos de programas de vídeo, el proveedor 106B de contenidos
también suministra al servidor 106A datos de subtítulos para sordos
asociados con el programa de vídeo. En una realización, los datos
de subtítulos para sordos pueden estar embebidos dentro de un flujo
de contenido multimedia que contenga el programa de vídeo
suministrado por el proveedor 106B de contenidos. Además, el
proveedor 106B de contenidos puede proporcionar metadatos que
contengan información de eventos asociados con programas de
vídeo.
El servidor 106A define información que
especifica eventos o acciones sobre los que opera el dispositivo
multimedia mientras presenta un programa de vídeo a un usuario. Esta
información puede incluir referencias a iconos gráficos o contenido
adicional para mostrar al usuario. El contenido o los iconos
estarían presentes en el dispositivo multimedia o serian obtenibles
por el dispositivo a través de Internet, de la red u otro DVR.
Además, la información puede presentar datos que representan ciertos
eventos dentro del programa de vídeo. Por ejemplo, si una emisión
deportiva se dividiese en tiempos separados y un descanso, el
proveedor 106B de contenidos podría proporcionar información del
evento al servidor 106A que indicase en qué lugar del flujo de
contenido multimedia ocurre el descanso. Usando esta información, el
servidor 106A puede generar datos de secuencia de valores de clave
calculada para permitir que un DVR identifique automáticamente el
comienzo y el final del descanso dentro del programa de vídeo. Dado
que el descanso ha sido identificado, un usuario del DVR puede
solicitar del DVR que se salte automáticamente el descanso cuando
vea la emisión grabada.
Además, según una realización, el servidor 106A
pueda obtener datos de subtítulos para sordos para programas de
vídeo procedentes de cualquier dispositivo multimedia, tal como un
DVR. Por ejemplo, el DVR 102 puede haber grabado previamente un
programa de vídeo que contuviera datos de subtítulos para sordos. El
DVR 102 puede enviar el programa de vídeo grabado al servidor 106A
por la red 105, incluyendo los datos de subtítulos para sordos
asociados con el programa de vídeo para su procesamiento por el
servidor 106A.
En la etapa 304, el servidor 106A analiza los
datos de subtítulos para sordos del programa de vídeo
convirtiéndolos en valores de clave calculada, que son usados para
crear datos de secuencias de valores de clave calculada. El servidor
106A puede usar varios procedimientos diferentes para crear valores
de clave calculada. El procedimiento usado para crear valores de
clave calculada para datos de subtítulos para sordos puede variar
según el procedimiento usado por el flujo de subtítulos para sordos
para mostrar el texto de subtítulos para sordos a un espectador del
programa de vídeo. Así, el servidor 106A realiza un seguimiento de
qué modo de subtítulo para sordos se está usando para mostrar los
datos de subtítulos para sordos. Por ejemplo, según una realización,
el texto de subtítulo para sordos puede ser procesado y mostrado a
un usuario usando el modo de aparición súbita, el modo de aparición
ascendente o el modo de aparición sobre segundo plano, tal como se
describe adicionalmente en el presente documento. Dependiendo del
modo usado, un valor de clave calculada representa el resultado de
aplicar una función de clave calculada a varios caracteres en una
línea de texto. Una función H de clave calculada es una
transformación que toma una entrada m de tamaño variable y devuelve
una cadena de tamaño fijo, que se denomina valor de clave calculada
h; es decir, h = H(m). La entrada de tamaño variable
para datos de subtítulos para sordos dependerá del procedimiento de
subtítulo para sordos que se use, tal como se describirá
adicionalmente en el presente documento. Además, según una
realización, la cantidad de caracteres que pueden ponerse en una
línea de datos de subtítulos para sordos es
limitada.
limitada.
Sin embargo, el analizador 312 puede ser
configurado para aceptar cualquier número de caracteres en una línea
de texto para acomodar diferentes sistemas. Así, tal como se
describe en lo que sigue, el analizador 312 determina cuándo generar
valores de clave calculada en respuesta a la detección de eventos
diferenciados dentro de los datos de subtítulos para sordos. Los
eventos diferenciados dentro de los datos de subtítulos para sordos
pueden ser instrucciones tales como una instrucción de "retorno de
carro". Puede usarse una instrucción de "retorno de carro"
para definir el final o el comienzo de una línea de texto. Así, por
ejemplo, cuando se ha completado una línea de texto, un "retorno
de carro" hará que la posición del cursor se ponga en la línea
siguiente.
La función de clave calculada es útil para crear
un valor estandarizado de clave calculada de tamaños variables de
texto. Según una realización, los caracteres pueden representar
números hexadecimales similares a los definidos por el Código
Estadounidense Normalizado para el Intercambio de Información
(ASCII). Además, algunas implementaciones de subtítulos para sordos
pueden utilizar un estándar ASCII modificado para la presentación de
símbolos alternativos, tales como notas musicales durante el audio
en un programa de vídeo.
Según una realización, el módulo 210 de análisis
aplica el algoritmo de clave calculada a las representaciones
hexadecimales de los datos de subtítulos para sordos para producir
valores de clave calculada. Además, el módulo 210 de análisis ajusta
el procedimiento para el cálculo de valores de clave calculada
dependiendo del procedimiento de subtítulos para sordos que se esté
usando.
Con referencia a la Fig. 3B, se muestra un
diagrama de bloques que ilustra el procedimiento para generar datos
de secuencias de valores de clave calculada según una realización.
Las tramas 310A-310D representan tramas de un
programa de vídeo dentro de un flujo de contenido multimedia
recibido en el servidor 106A. Según una realización, los programas
de vídeo se reproducen a una velocidad de treinta tramas por
segundo. Cada trama 310A-310D es reproducida en un
instante particular según la velocidad de las tramas. Por ejemplo,
la trama 310A ocurre a la hora = 1:00 y la trama 310B ocurre a la
hora = 1:05. De aquí que, suponiendo una velocidad de tramas de
treinta tramas por segundo, la trama 3106 ocurre en el número de
trama 151, o 150 tramas después de la trama 310A.
Obsérvese que las tramas
310A-310D son solo cuatro tramas diferenciadas entre
muchas tramas dentro del flujo de contenido multimedia, y pueden
existir muchas tramas entre cada una de las tramas 310A y 310D. En
las tramas 310A-310D, se generan valores de clave
calculada para el texto A-D, respectivamente. El
texto A-D es texto contenido dentro de un flujo de
subtítulos para sordos, y las tramas 310A-310D
representan el instante en el que se generan los valores de clave
calculada para el texto. Obsérvese, sin embargo, que el texto de
subtítulos para sordos normalmente se presenta un tiempo mayor que
una trama cada vez. Según una realización, la tasa de transmisión
para datos de subtítulos para sordos es de dos bytes por trama de
vídeo, y la transmisión o la recepción de una línea completa de
texto lleva varias tramas. El texto B, por ejemplo, puede mostrarse
en múltiples tramas que precedan a la trama 310B. Sin embargo, la
trama 310B es la posición dentro del flujo de contenido multimedia
en la que se genera un valor de clave calculada para el texto B.
Además, dado que cada trama
310A-310D es mostrada en un momento particular,
pueden crearse metadatos que contengan datos de tiempo relativo que
representen un instante dentro del programa de vídeo o del flujo de
contenido multimedia en que se está mostrando la trama, así, la
trama 310A está mostrando el texto A a la hora 1:00, mientras que la
trama 310B está mostrando el texto B a la hora 1:05. El analizador
312 lee el texto A-D de cada trama
310A-310D para generar los valores
314A-314D de clave calculada y los metadatos
asociados con esos valores de clave calculada, respectivamente, Sin
embargo, obsérvese que no es preciso crear metadatos cada vez que se
genere un valor de clave calculada.
En otras realizaciones, el analizador 312 puede
analizar tramas adicionales que no muestren ningún texto. Sin
embargo, dado que esas tramas no contienen ningún texto de
subtítulos para sordos, no se desencadenará la generación de un
valor de clave calculada. Más bien, tal como se describe con detalle
adicional en el presente documento, el analizador 312 no genera un
valor de clave calculada hasta que haya ocurrido un evento
desencadenante. Dependiendo del procedimiento de subtítulos para
sordos que se estén usando, el evento desencadenante variará de un
caso a otro. Por ejemplo, según una realización, el evento
desencadenante es la identificación de una instrucción de "retorno
de carro" dentro de los datos de subtítulos para sordos. Cuando
se detecta la instrucción de "retorno de carro" dentro de los
datos de subtítulos para sordos, el analizador 312 genera un valor
de clave calculada que representa las una o más líneas de texto de
subtítulos para sordos que abarcan varios segundos dentro del
programa de vídeo.
La tabla 320 representa una enumeración de
valores de clave calculada generados por el analizador 312 del
programa de vídeo representado por las tramas
310A-310D. La tabla 320 incluye una columna de Valor
de la clave calculada, una columna de Hora y una columna de Desfase
horario. La columna Valor de la clave calculada representa los
valores do clave calculada generados por el analizador 312 para las
tramas 310A-310D. La columna Hora representa el
tiempo relativo en que se generó cada valor de clave calculada según
el debido procedimiento de subtítulos para sordos. El valor horario
puede ser relativo a todo el flujo de contenido multimedia, a las
tramas particulares 310A-310D que contienen el
programa de vídeo o a la hora del reloj del mundo real del DVR.
Cuando el analizador 312 genera un valor de
clave calculada para cualquier trama, el analizador 312 interroga a
un módulo temporizador 209 del DVR 200 para determinar el instante
en el que se generó el valor de clave calculada. Mientras el
analizador 312 use la misma unidad temporal relativa para generar la
hora en la columna Hora, el DVR 200 podrá seguir con precisión
cualquier variación horaria entre los valores generados de clave
calculada y los datos de la secuencia de valores de clave calculada.
La columna Desfase horario indica la diferencia entre los datos
horarios asociados con un valor de clave calculada y los datos
horarios asociados con un valor subsiguiente de clave calculada. Por
ejemplo, se documenta que el valor de clave calculada "3D59" no
tiene ningún valor de desfase horario. En este caso, se determina
que el valor de clave calculada "3D59" es el comienzo de una
secuencia de claves calculadas, por lo que no se precisa ningún
valor de desfase horario. Sin embargo, para el valor de clave
calculada "2Z55", se documenta un valor de desfase horario de
:05 segundos, lo que indica que el valor de clave calculada
"2Z55" se genera aproximadamente :05 segundos después de que se
haya generado el valor de clave calculada "3D59". Esta
información puede ser usada para localizar el comienzo de un
programa de vídeo o, alternativamente, cualquier evento o ubicación
particulares dentro del programa de vídeo en un DVR. El proceso de
uso de la información de desfase horario para sincronizar un sistema
de ordenador con un programa de vídeo se expone con mayor detalle
más abajo en la sección 3.3.
Así, el analizador 312 analiza los datos de
subtítulos para sordos dentro del programa de vídeo. Con referencia
otra vez a la Fig. 3A, una vez que el analizador 312 ha analizado
los datos de subtítulos para sordos de un programa de vídeo
convirtiéndolos en valores de clave calculada, el servidor 106A pasa
a generar secuencias de claves calculadas asociadas con el programa
de vídeo en la etapa 306. Cuando el analizador 312 ha completado la
generación de un número particular de valores de clave calculada
para un programa de vídeo o un segmento de un programa de vídeo, el
analizador 312 crea datos de secuencias de valores de clave
calculada a partir de los valores de clave calculada generados.
El número de valores de clave calculada en una
secuencia de claves calculadas, así como la cantidad de tiempo
representada por los valores de clave calculada pueden ser fijados
de forma arbitraria por el analizador 312, el servidor 106A o por
cualquier otro dispositivo o usuario que deseen controlar la
creación de datos de secuencias de valores de clave calculada. Por
ejemplo, si el proveedor 106B de contenidos suministrase un programa
particular de vídeo para su análisis al servidor 106A, el proveedor
106B de contenidos también puede indicar que, durante una porción
particular del programa de vídeo que durante de cinco a diez
segundos, aparezca un icono en pantalla que solicite la intervención
del usuario. La Fig. 3D es un diagrama que ilustra la aparición de
tal icono en una pantalla de visualización según una realización.
Según la Fig. 3D, la pantalla 400 de visualización muestra un icono
404. El icono 404 contiene un diálogo que solicita la intervención
404A del usuario. En este ejemplo, el proveedor 106B de contenidos
solicita al servidor 106A que el icono 404 aparezca en la pantalla
400 de visualización durante una porción particular de un programa
de vídeo. Aquí, el analizador 312 puede ser configurado para generar
valores de clave calculada que abarquen al menos 10 segundos de la
porción seleccionada del programa de vídeo. Esto garantiza que se
generen valores de clave calculada para al menos la porción
seleccionada del programa de vídeo, dando a un sistema de ordenador
suficiente tiempo para reconocer la secuencia completa de valores de
clave calculada y para identificar positivamente el programa o la
porción de vídeo. Además, para compensar cualquier demora o margen
de error, el analizador 312 puede ser configurado para generar
valores de clave calculada que abarquen más de la porción
seleccionada del programa de vídeo.
Alternativamente, puede determinarse la longitud
de cualesquiera datos de secuencias de valores de clave calculada
por lo único que es cada valor de clave calculada generado dentro de
la secuencia de claves calculadas. Por ejemplo, en algunas
situaciones, los mismos datos de subtítulos para sordos pueden dar
como resultado el mismo valor de clave calculada. Si dos programas
de vídeo contienen datos muy similares de subtítulos para sordos,
tales como dos anuncios con muy poco texto de subtítulos para
sordos, pueden empezar generando los mismos valores de clave
calculada para la primera porción del programa. Sin embargo, cuando
más tiempo genere el analizador 312 valores de clave calculada para
un programa de vídeo particular, más probable es que la secuencia de
clave calculada sea única. Por lo tanto, el analizador 312 puede ser
configurado para que seleccione cualquier número de valores de clave
calculada para incluirlos en una secuencia de claves calculadas para
controlar la precisión de la coincidencia de los datos de secuencias
de valores de clave calculada con los programas de vídeo. Además,
cuando el analizador 312 genera los valores de clave calculada, el
servidor 106A puede asociar metadatos con los datos de secuencias de
valores de clave calculada. Los metadatos asociados pueden indicar
que se muestre un icono 400 solicitando la intervención del usuario,
tal como se ha expuesto en el ejemplo que antecede.
Cuando se generan valores de clave calculada, el
analizador 312 incluye datos horarios asociados con el instante en
que se generó cada valor de clave calculada. Sin embargo, los mismos
datos de subtítulos para sordos o incluso el mismo valor de clave
calculada pueden ser generados en momentos diferentes según el
procedimiento de subtítulos para sordos usado.
Así, con referencia a la Fig. 3C, se muestran
diferentes procedimiento de subtítulos para sordos según una
realización. Respectivamente, se muestran a un usuario datos de
subtítulos para sordos en modo 340 de aparición súbita, en modo 342
de aparición ascendente o en modo 346 de aparición sobre segundo
plano. La Fig. 3C muestra un área de datos entrantes de SS de un
flujo de subtítulos para sordos y un área de visualización que
representa la salida o la visualización propiamente dicha del texto
de subtítulos para sordos para un usuario.
\vskip1.000000\baselineskip
En el modo 340 de aparición súbita, según una
realización, entre una y cuatro líneas de texto aparecen en pantalla
todas a la vez, se quedan ahí durante un período de tiempo y luego
son sustituidas por las siguientes líneas de texto de subtítulos
para sordos.
En el modo 340 de aparición súbita, los datos
entrantes de subtítulos para sordos se colocan en la memoria
intermedia posterior 350B y se muestran con una sola instrucción de
"volcar memorias intermedias" una vez que el texto completo
para una trama particular o una serie de tramas está listo para ser
visualizado. En este modo, se genera un valor de clave calculada
para el texto que se está visualizando cuando se emite la
instrucción de "volcar memorias intermedias". Cuando se emite
la instrucción de "volcar memorias intermedias", el texto en la
memoria intermedia posterior 350B es transferido a la memoria
intermedia anterior 350A, que representa el texto que se está
visualizando en el dispositivo 360 de visualización.
En el modo de aparición súbita, hay solo dos
eventos bien definidos que cambian el texto visible en el
dispositivo 360 de visualización para el usuario. Estos eventos
incluyen (1) el volcado de las memorias intermedias, de tal forma
que el contenido de la memoria intermedia posterior 350B se ponga en
la memoria intermedia anterior 350A, y (2) el borrado del texto
mostrado en la pantalla 360 de visualización. Generar valores de
clave calculada en el modo de aparición súbita es meramente cuestión
de mantener un seguimiento del texto compuesto en la memoria
intermedia posterior y de crear un valor de clave calculada para el
texto en la memoria intermedia posterior 350B una vez que han sido
procesadas una instrucción de volcado o una instrucción de borrado
de la memoria intermedia visuali-
zada.
zada.
Así, en el modo de aparición súbita, el
analizador 312 mantendrá un seguimiento del texto que se está
componiendo en la memoria intermedia posterior 350B. Mientras
monitoriza la memoria intermedia posterior 350B, el analizador 312
sigue actualizando un valor de clave calculada correspondiente a al
valor total de cualquier texto acumulado en la memoria intermedia
posterior 350B. Inicialmente, la memoria intermedia posterior 350B
está vacía. Mientras se está componiendo el texto introduciéndolo en
cada línea, el analizador 312 aguarda hasta que se emita una
instrucción de "colocación del cursor". Puede usarse una
instrucción de colocación del cursor para colocar el cursor de texto
en una nueva línea. En base a la instrucción de colocación del
cursor, el analizador 312 puede determinar que una línea está
completa y calcula un valor de clave calculada para la línea
particular.
Al final, se vacía la memoria intermedia
anterior 350A y se vuelca la memoria intermedia posterior 350B a la
anterior mediante la emisión de una instrucción de volcado de las
memorias intermedias. Obsérvese que la memoria intermedia posterior
3508 puede contener múltiples líneas de texto. Para generar un solo
valor de clave calculada para las múltiples líneas de texto, se
genera un valor acumulativo de clave calculada para todas las líneas
de texto que aparecen en la memoria intermedia anterior 350A. El
valor acumulativo de clave calculada es creado una vez que la
memoria intermedia posterior 350B es volcada a la memoria intermedia
anterior 350A. Así, mientras se está compilando texto en la memoria
intermedia posterior 350B, el analizador 312 realiza un seguimiento
de los valores individuales de clave calculada para cada línea de
texto según se ha descrito en lo que antecede. Cuando se vuelca a la
memoria intermedia anterior 350A, se combinan entre sí los valores
de clave calculada para cada línea para crear el valor acumulativo
de clave calculada.
Según una realización, cuando el analizador 312
genera el valor de clave calculada, el analizador 312 también
recupera los datos horarios asociados con el flujo de contenido
multimedia procedentes del módulo temporizador 209. El módulo
temporizador 209 puede indicar la temporización del flujo de
contenido relativo de forma relativa al comienzo del flujo de
contenido multimedia, una hora de reloj de calendario, el tiempo
desde el último valor de clave calculada o el tiempo relativo al
comienzo de un programa de vídeo dentro del flujo de contenido
multimedia. De aquí que, con referencia de nuevo a la Fig. 3B, por
ejemplo, el analizador 312 determina que el texto A de la trama 310A
ha sido volcado a la memoria intermedia anterior 350A a la hora =
1:00 y que tiene un valor correspondiente de clave calculada de
"3D59".
\vskip1.000000\baselineskip
Otro modo de presentar texto de subtítulos para
sordos es el modo 342 de aparición ascendente. En el modo 342 de
aparición ascendente, que es más común en las emisiones en directo,
como las noticias o los programas de entrevistas, se mecanografía
texto a medida que se enuncia y aparece en el televisor tan pronto
como se recibe. Una vez que se recibe una instrucción de "retorno
de carro", el texto sube. Una instrucción de retorno de carro es
una instrucción que hace que el cursor vuelva al comienzo de la
línea. Dado que el cursor ha vuelto al comienzo de una nueva línea,
puede usarse un retorno de carro para indicar que se está
componiendo una nueva línea. Según una realización, inicialmente
puede componerse texto en el dispositivo 360 de visualización de tal
forma que la trama X incluya así la línea 1 de texto, mientras que
los datos entrantes 350C de SS contiene texto que es compuesto
subsiguientemente, tal como las líneas 2-4 de texto.
Cuando la línea 2 de texto está lista para ser mostrada, la línea 2
de texto "asciende" hasta la pantalla, haciendo que la línea 1
de texto se desplace hacia arriba en la trama Y del dispositivo 360
de visualización. En una realización, la trama Y solo permite que se
presenten dos líneas de texto en un momento dado. Así, en cualquier
trama subsiguiente, cuando la línea 3 de texto está lista para ser
mostrada, se borrarla la línea 1 de texto y la línea 2 de texto se
movería hacia arriba, ocupando la segunda fila de texto en el
dispositivo 360 de visualización. Alternativamente, puede
aprovisionarse cualquier número de líneas para subtítulos para
sordos en el modo de aparición ascendente.
Según una realización, para generar valores de
clave calculada en el modo de aparición ascendente, el analizador
312 monitoriza las líneas de texto y queda a la escucha en busca de
una instrucción de retorno de carro. Una vez que el analizador 312
determina que ha ocurrido tal evento, el analizador 312 genera un
valor de clave calculada para el texto correspondiente. Así, se
genera un valor de clave calculada cuando se completa una línea de
texto, y los datos de subtítulos para sordos contienen un evento
diferenciado visible para el usuario que marca el fin de la línea.
En vez de crear un valor acumulativo de clave calculada para todas
las líneas de texto mostradas en la pantalla, el modo de aparición
ascendente genera y documenta un valor de clave calculada para cada
línea de texto visible a medida que aparece en pantalla.
Por ejemplo, según una realización, el
analizador 312 puede determinar que una línea de texto está completa
cuando el texto asciende una línea; por ejemplo, la línea 1 de texto
en la trama Y. El analizador 312 puede detectar que una línea de
texto está completa cuando detecta una instrucción de "retorno de
carro" dentro de los datos entrantes 350 de SS. De aquí que, con
referencia de nuevo a la Fig. 3B, por ejemplo, el analizador 312
determine que una línea de texto correspondiente al texto B está
completa después de detectar una instrucción de "retorno de
carro" en la trama 310B y calcula un valor de clave calculada de
"2Z55" a la hora = 1:05.
\vskip1.000000\baselineskip
Otro modo de subtítulos para sordos es el modo
344 de aparición sobre segundo plano. El modo 344 de aparición sobre
segundo plano es similar al modo 340 de aparición súbita, salvo en
que los datos entrantes 350D de SS se componen directamente en una
memoria intermedia anterior y. dado que el contenido de la memoria
intermedia anterior es alimentado directamente al dispositivo de
visualización, un espectador puede ver el texto a medida que se
compone. En una realización, para generar valores de clave
calculada, el analizador 312 aguarda hasta que ocurre el primer
evento visible al usuario después de que se completa una línea
entera de texto. Así, en el modo 344 de aparición sobre segundo
plano, un procedimiento de generación de valores de clave calculada
incluye la acumulación de una línea de texto a medida que se está
mostrando y aguardando el primer evento visible para el usuario
después de que la línea está completa para generar el valor de clave
calculada para esa línea. El primer evento visible para el usuario
podría ser el inicio de otra línea, el borrado de la pantalla o una
instrucción de "volcar memorias intermedias" para mostrar el
nuevo texto en el modo de aparición súbita.
\vskip1.000000\baselineskip
Con independencia del tipo del modo de
subtítulos para sordos que se esté usando, una vez que el analizador
312 genera los valores de clave calculada asociados con un programa
de vídeo, los valores de clave calculada se colocan en la tabla 320
junto con cualesquiera datos adicionales, tales como la hora y los
datos del desfase horario para cada valor de clave calculada. Los
datos acumulativos en la tabla 320 representan así datos de
secuencias de valores generados por un dispositivo tal como el
servidor 106A.
Una vez que se han generado los datos de la
secuencia de valores de clave calculada, pueden asociarse metadatos
adicionales con la secuencia de claves calculadas. Según una
realización, los metadatos adicionales pueden incluir datos de
instrucción y datos de control para emprender alguna acción tras el
reconocimiento de la secuencia de claves calculadas.
Así, con referencia de nuevo a la Fig. 3B, la
tabla 330 incluye columnas que representan secuencias de claves
calculadas y metadatos asociados con las secuencias de claves
calculadas. Según una realización, la secuencia de claves calculadas
3D59, 2255, A6E3 y 9Y95 incluye metadatos que describen un evento
EVENTO 1. El EVENTO 1 puede ser un evento dentro del flujo de
contenido multimedia que ocurre en un momento particular. Por
ejemplo, el EVENTO 1 puede definir una ubicación particular dentro
de un programa de vídeo, tal como un descanso durante un evento
deportivo. Los metadatos que definen el EVENTO 1 pueden también
incluir información adicional, tal como una descripción del programa
de vídeo y acciones subsiguientes que adoptar después de reconocer
el evento. Por ejemplo, el EVENTO 1 puede incluir información de
identificación para insertar una identificación en el flujo de
programa a la hora del EVENTO 1. El identificador es operativo para
permitir que un usuario vaya directamente al EVENTO 1 o,
alternativamente, que se salte el EVENTO 1 durante la reproducción.
La funcionalidad de las identificaciones en el flujo de contenido
multimedia se describe con mayor detalle en lo que sigue, y se
describe también en la solicitud estadounidense con nº de serie
09/665.921, titulada "Closed Caption Tagging System".
Con referencia aún a la tabla 330, los metadatos
pueden también especificar acciones particulares, tales como la
ACCIÓN 1, asociada con la secuencia de claves calculadas A6E3, 9Y95,
E4E9 y 9F4U. Según una realización, la ACCIÓN 1 puede describir una
acción particular que debe adoptar el DVR después de reconocer la
secuencia de claves calculadas. Por ejemplo, la ACCIÓN 1 puede
incluir la presentación de un icono a un usuario del DVR. Los
metadatos que definen la ACCIÓN 1 pueden incluir información horaria
relativa a la duración de la acción, así como información relativa a
la colocación de gráficos e iconos en el dispositivo de
visualización conectado al DVR. Obsérvese que la acción especificada
por los metadatos puede tener lugar en un momento diferente del
momento de reconocimiento de la secuencia de claves calculadas. Por
ejemplo, los metadatos pueden indicar que la acción debería tener
lugar en un momento que preceda el reconocimiento de la secuencia de
claves calculadas. De esta manera, sí el programa es reproducido
partiendo de la copia grabada, el DVR va explorando por delante,
llevando a cabo las comparaciones de claves calculadas, y sabe
realizar la acción en el momento debido.
En otra realización, la ACCIÓN 1 puede incluir
datos de instrucciones para que los procese el DVR. Los datos de
instrucciones pueden hacer que el DVR grabe y almacene una o más
porciones del flujo de contenido multimedia. Por ejemplo, durante
una emisión en directo de un programa de vídeo particular, si el DVR
reconoce la secuencia de claves calculadas de C, D, E, F y procesa
los datos de instrucciones asociados con la secuencia de claves
calculadas, los datos de instrucciones harán que el DVR empiece a
grabar el programa de inmediato. En otras realizaciones, los datos
de instrucciones pueden hacer que el DVR empiece a grabar la emisión
en directo en cualquier momento después del reconocimiento de la
secuencia de claves calculadas.
Además, los metadatos asociados con cualquier
secuencia de claves calculadas no están limitados a los eventos o
las acciones especificados, sino que pueden ser datos cualesquiera
que puedan ser entendidos y procesados por un DVR o un dispositivo
que reciba los metadatos.
\vskip1.000000\baselineskip
Cuando el servidor 106A ha acumulado datos de
secuencias de valores de clave calculada, el servidor 106A envía los
datos de secuencias de valores de clave calculada a un DVR u otro
dispositivo que usa los datos de secuencias de valores de clave
calculada para reconocer datos de subtítulos para sordos y para
sincronizarse con programas de vídeo usando los datos de subtítulos
para sordos. Con referencia ahora a la Fig. 4, se muestra un
diagrama de flujo que esquematiza el proceso de reconocimiento de
datos de subtítulos para sordos y de sincronización de acciones y
eventos con los datos de subtítulos para sordos. En la etapa 402, el
DVR 102 recibe los datos de secuencias de valores de clave calculada
representados por la tabla 330 en la Fig. 3B procedentes del
servidor 106A. En una realización, en lo que se conoce como
transacción "pull", el DVR 102 recibe los datos de secuencias
de valores de clave calculada después de iniciar una solicitud de
los datos de secuencias de valores de clave calculada al servidor
106A. Alternativamente, en lo que se conoce como transacción
"push", el servidor 106A puede enviar automáticamente los datos
de secuencias de valores de clave calculada al DVR 102 sin solicitud
alguna del DVR 102. Cuando el DVR 102 recibe los datos de secuencias
de valores de clave calculada, almacena los datos de secuencias de
valores de clave calculada en el dispositivo 214 de
almacenamiento.
En la etapa 404, el DVR 102 recibe un flujo de
contenido multimedia para su presentación a un usuario. Según una
realización, el flujo de contenido multimedia puede ser recibido
procedente del módulo 202A de entrada y representar contenido
multimedia que está siendo emitido en ese momento por el proveedor
106B de contenidos. Alternativamente, el flujo de contenido
multimedia puede ser reproducido partiendo del dispositivo 214 de
almacenamiento del DVR 102. Además, en otras realizaciones, el DVR
102 puede recibir un flujo de contenido multimedia mediante emisión
o por Internet sin presentar el flujo de contenido multimedia al
usuario. De aquí que el DVR 102 pueda recibir contenido del
proveedor 106B de contenidos y almacenar el contenido en el
dispositivo 214 de almacenamiento. Mientras el flujo de contenido
multimedia está siendo grabado o reproducido, en la etapa 406, el
DVR 102 empieza a analizar los datos de subtítulos para sordos
asociados con el flujo de contenido multimedia.
El módulo 210 de análisis analiza los datos de
subtítulos para sordos de la misma manera descrita en lo que
antecede con referencia al servidor 106A en la Fig. 3B. Así, el
módulo 210 de análisis analiza los datos de subtítulos para sordos
transformándolos en múltiples valores de clave calculada según el
procedimiento usado de subtítulos para sordos (es decir, de
aparición súbita, de aparición ascendente o de aparición sobre
segundo plano). Mientras genera los valores de clave calculada, el
módulo 210 de análisis envía los valores de clave calculada y los
sellos de tiempo asociados con cada valor de clave calculada a una
máquina 212 de estado de reconocimiento de patrones, que se usa para
comparar e identificar los valores de clave calculada con cualquiera
de los datos de secuencias de valores de clave calculada
descargados, almacenados o recibidos por el DVR 102 desde el
servidor 106A o cualquier otra
fuente.
fuente.
En la etapa 408, se usa la máquina 212 de estado
de reconocimiento de patrones para monitorizar los valores de clave
calculada generados por el módulo 210 de análisis y comparar los
valores de clave calculada con los datos de secuencias de valores de
clave calculada recibidos en la etapa 402. Según una realización, la
máquina 212 de estado de reconocimiento de patrones es una máquina
de estado construida según los datos de secuencias de valores de
clave calculada que se recibieron en la etapa 402.
De cara a un ejemplo, supongamos que la máquina
212 de estado de reconocimiento de patrones adopta la estructura de
un árbol que contiene nudos y ramas. Cada nudo del árbol puede
representar un valor de clave calculada particular en una secuencia
de valores de clave calculada, y cada "rama" del árbol
representa la secuencia completa de claves calculadas identificada
por los datos de secuencias de valores de clave calculada. Esta
estructura es objeto de referencia adicional en la Fig. 5A, expuesta
más abajo, la máquina 212 de estado de reconocimiento de patrones
intenta casar los valores de clave calculada generados cruzando los
nudos del árbol. En cualquier nudo dado, sí ocurre una coincidencia,
la máquina 212 de estado de reconocimiento de patrones prosigue al
nudo siguiente. Si el nudo anterior representa el final de una
secuencia de valores de clave calculada, ha ocurrido una
coincidencia, y la máquina 212 de estado de reconocimiento de
patrones puede indicar que se ha identificado una secuencia de
valores de clave calculada, lo que, a su vez, hace que el DVR 200
lleve a cabo la acción apropiada, según se describe con mayor
detalle en el presente documento.
En consecuencia, en la etapa 510, la máquina 212
de estado de reconocimiento de patrones determina si algún valor de
clave calculada generado por el módulo 210 de análisis coincide con
los valores de clave calculada contenidos dentro de los datos de
secuencias de valores de clave calculada. Mientras los valores de
clave calculada coincidan y la diferencia horaria entre los eventos
de valores de clave calculada estén dentro de un umbral de la
secuencia de clave calculada esperada, se informará de una
coincidencia positiva.
Con referencia ahora a la Fig. 5A, según una
realización, se muestran datos de una secuencia de valores de clave
calculada en la forma de una máquina de estado de reconocimiento de
patrones. Los datos de secuencias de valores de clave calculada
están representados por la máquina 510 de estado, que contiene nudos
que representan valores individuales de clave calculada dentro de
las secuencias de valores de clave calculada. Según una realización,
la máquina 510 de estado contiene un nudo 502 de INICIO que
representa el estado inicial de la máquina de estado.
Según una realización, los nudos de la máquina
510 de estado están indexados según el primer valor de clave
calculada de cualquier secuencia de claves calculadas identificada
en los datos de secuencias de valores de clave calculada. Después de
que la máquina 510 de estado se inicializa, puede determinar en
primer lugar si ese valor de clave calculado del primer nudo 504
coincide con un valor de clave calculada generado por el módulo 210
de análisis. Si no ocurre coincidencia alguna, la máquina 510 de
estado sigue cruzando el índice 501, comprobando subsiguientemente
el nudo siguiente 520. Obsérvese que, aunque es raro, diferentes
secuencias de valores de clave calculada pueden comenzar con el
mismo valor de clave calculada. Por lo tanto, el nudo 504, que
representa secuencias de claves calculadas que comienzan con el
valor de clave calculada "3D59", puede contener dos ramas
diferenciadas que representan diferentes secuencias de valores de
clave calculada: (1) 3D59, 2Z55, A6E3 y 9Y95, o (2) 3D59, 2Z55,
E4E9 y 9F4U.
Según una realización, la máquina 500 de estado
es un componente ligero del DVR 200, lo que significa que la máquina
500 de estado está diseñada para ocupar mínimos recursos del sistema
durante la operación del DVR 200. Por lo tanto, aun en el caso de
que la máquina 500 de estado deba cruzar decenas de miles de nudos
para determinar si se ha reconocido una secuencia de valores de
clave calculada, se precisan pocos recursos del sistema para operar
la máquina 500 de estado. De aquí que los usuarios del DVR no
aprecien ninguna demora ni degradación en la reproducción de
contenido multimedia durante la operación de la máquina 500 de
estado.
Según una realización, la eficacia de la máquina
500 de estado aumenta adicionalmente mediante el uso del índice 501.
Indexando el primer valor de clave calculada dentro de cada
secuencia de claves calculadas en un índice 501, la máquina 500 de
estado puede descartar rápidamente una gran cantidad de secuencias
de claves calculadas para una comparación sin ocupar muchos recursos
del sistema.
Para iniciar el procesamiento de valores de
clave calculada generados desde el módulo 210 de análisis, la
máquina 500 de estado es inicializada y comienza la comprobación de
los nudos situados en el índice 501. Según una realización, el
primer valor de clave calculada generado por el módulo 210 de
análisis es "3D59", correspondiente al texto A en la trama 310A
de la Fig. 3B. En consecuencia, la máquina 500 de estado es
iniciada, comprobará el primer nudo 504 que representa el valor de
clave calculada "3D59" y encontrará una coincidencia, dando una
salida positiva según esta realización, cualquier coincidencia hace
que la máquina de estado prosiga a la derecha, mientras que
cualquier error hace que la máquina de estado cruce a un nivel
inferior. Sin embargo, en otras realizaciones, la máquina 500 de
estado puede ser estructurada de cualquier manera adecuada para
comprobar valores de clave calculada.
Sin embargo, supongamos que el módulo 210 de
análisis informó inicialmente de un valor de clave calculada de
"2Z55". En lugar de encontrar una coincidencia en el primer
nudo 504, la máquina 510 de estado informarla de una salida negativa
y proseguiría hacia abajo, hasta el siguiente nudo 520 en el índice
501, que representa el valor de clave calculada "2Z55".
Alternativamente, si no se encuentra coincidencia alguna en un nudo
particular, la máquina 510 de estado puede también proseguir al nudo
515 de ERROR, que hace que la máquina de estado se reinicie y vuelva
a comenzar en el nudo 502 de INICIO.
Por lo tanto, suponiendo que ocurrió una
coincidencia en el primer nudo del Índice 501. la máquina 212 de
estado aguarda entonces el siguiente valor generado de clave
calculada procedente del módulo 210 de análisis. En una realización,
el siguiente valor generado de clave calculada es "2Z55". En
consecuencia, la máquina 510 de estado compara "2Z55" con el
valor en el siguiente nudo 506. Dado que el valor en el siguiente
nudo también es "2Z55", la máquina 510 de estado encontrará una
coincidencia y proseguirá al nudo 508. Sin embargo, obsérvese que si
no se encontrara coincidencia alguna en el nudo 506, la máquina 500
de estado no proseguiría al estado de ERROR, sino que, en cambio,
intentarla encontrar una coincidencia para el valor de clave
calculada en el nudo 507, que representa "E4E9". De esta
manera, el nudo 506 representa una bifurcación en la máquina 500 de
estado, de modo que dos secuencias de valores de clave calculada
puedan empezar con los valores de clave calculada de "3D59" y
"2Z55", respectiva-
mente.
mente.
En respuesta a la recepción de valores de clave
calculada generados por el módulo 210 de análisis, la máquina 500 de
estado atraviesa secuencialmente cada nudo representado en la Fig. 5
hasta que no ocurra coincidencia alguna o hasta que se ha
identificado el final de una secuencia de claves calculadas. Además,
mientras busca coincidencias de valores de clave calculada con cada
valor de clave calculada en la secuencia de valores de clave
calculada, la máquina 500 de estado puede también comparar el
desfase horario entre el valor de clave calculada generado por el
módulo 210 de análisis y el valor de clave calculada dentro de la
secuencia de claves calculadas. Si ambos valores de clave calculada
coinciden y coinciden los valores de desfase horario de ambos
valores de clave calculada, la máquina 500 de estado puede
determinar que ha ocurrido una coincidencia positiva. En otra
realización, la máquina 500 de estado puede determinar que un valor
de clave calculada particular ha coincidido con el desfase horario
de un valor de clave calculada dentro de una secuencia de claves
calculadas permitiendo una "compensación" o margen de error.
Según este ejemplo específico, la máquina 500 de estado determina
que ha ocurrido una coincidencia para la secuencia de claves
calculadas de 3D59, 2Z55, A6E3 y 9Y95 después de recibir los valores
de clave calculada respectivos generados por el analizador 312 en la
Fig. 3B.
Cuando no se encuentra coincidencia alguna, la
máquina 500 de estado se reinicia al nudo 502 de INICIO y
reinicializa el proceso de búsqueda de coincidencias cuando se
recibe el siguiente valor de clave calculada procedente del módulo
210 de análisis.
Obsérvese que en toda la operación del DVR 200,
la máquina 500 de estado está continuamente intentando encontrar una
coincidencia de los valores de clave calculada con las secuencias de
claves calculadas. Cuando se encuentra una coincidencia positiva
para una secuencia completa de claves calculadas, en la etapa 412,
la máquina 500 de estado informa de una coincidencia plena, haciendo
que el DVR 200 inspeccione los metadatos asociados con los datos de
secuencias de valores de clave calculada.
En otras realizaciones, la máquina 500 de estado
utiliza una tabla de claves calculadas para intentar encontrar
coincidencias de valores de clave calculada con datos de secuencias
de valores de clave calculada. Una tabla de claves calculadas es una
estructura de datos compuesta de una matriz (o una tabla en la que
se almacenan los datos que han de ser objeto de búsqueda) y una
función de correspondencia. Se usa comúnmente una tabla de valores
calculados en algoritmos de búsqueda y es una estructura de datos
que es bien conocida en la técnica.
Además, en otra realización, el DVR 200 contiene
una pluralidad de máquinas de estado. Al tener más de una máquina de
estado que funcionan a la vez, pueden identificarse múltiples
patrones dentro de la misma secuencia de valores de clave calculada.
Por ejemplo, supongamos que los valores de clave calculada de
"X6Y6, A4Z4 y B1C1" se generaron a partir de un flujo de
contenido multimedia. Supongamos también que existen dos patrones
conocidos, "X6Y6, A4Z4" y "A4Z4, B1C1". Si en el DVR 200
estuviese ejecutándose una sola máquina de estado, soto uno de esos
patrones sería reconocido. Sin embargo, dado que el DVR 200 puede
ejecutar concurrentemente más de una máquina de estado, el DVR 200
puede reconocer ambos patrones "X6Y6, A4Z4" y "A4Z4, B1C1"
a partir de los valores de clave calculada de "X6Y6, A4Z4 y
B1C1". Por lo tanto, en otras realizaciones, el DVR 200 puede
contener una pluralidad de máquinas de estado, y cada máquina de
estado puede representar diferentes patrones de datos
intrabanda.
Con referencia a la Fig. 5B, se muestra una
secuencia de valores de clave calculada según una realización. Los
datos de secuencias de valores de clave calculada contienen los
datos 520A de secuencia y los metadatos 520B. Los datos 520A de
secuencia corresponden a los datos que representan la secuencia de
valores de clave calculada, así como la diferencia horaria
aproximada entre las incidencias de los valores de clave calculada.
Así, tal como se describe en lo que antecede, la máquina 500 de
estado cruza los nudos, según se representa en la Fig. 5A, hasta que
no se encuentra coincidencia alguna en un nivel particular o si se
ha encontrado el fin de una secuencia de claves calculadas. Según
una realización, la máquina 212 de estado de reconocimiento de
patrones determina que la secuencia de los valores de clave
calculada 3D59, 2Z55, A6E3 y 9Y95 ha coincidido con la generación de
los mismos valores de clave calculada procedentes del módulo 210 de
análisis en base a la diferencia horaria entre cada valor de clave
calculada generado.
\vskip1.000000\baselineskip
Cuando un DVR determina que ha ocurrido una
coincidencia de patrones, usa los metadatos descritos en lo que
antecede para sincronizarse con el flujo de contenido multimedia. En
particular, el DVR usa los metadatos para determinar la ubicación
relativa de eventos o de programas de vídeo dentro del flujo de
contenido multimedia. Así, cuando el DVR 102 determina que se ha
generado una secuencia particular de valores de clave calculada, el
DVR 200 consultará los metadatos 520B para determinar la acción que
se emprenderá. Los metadatos 520B pueden contener información tal
como información de instrucciones y control, temporización de
programas, información de contenido, instrucciones de visualización
e información gráfica. Además, los metadatos 520B pueden contener
también datos 522 de instrucciones.
Una vez que las máquinas 212 de estado de
reconocimiento de patrones han determinado que los valores de clave
calculada procedentes del flujo de contenido multimedia coinciden
con una secuencia particular de claves calculadas, entonces, en la
etapa 412, el DVR inspecciona los metadatos de la secuencia de
claves calculadas asociada con la secuencia de claves calculadas y
responde en consecuencia. Dependiendo del contenido de los
metadatos, un DVR como el DVR 102 puede responder de muchas maneras
diferentes al reconocimiento de una secuencia de valores de clave
calculada. Por ejemplo, los metadatos pueden contener información
que permita que el DVR reconozca eventos dentro de un programa de
vídeo, que se sincronice con el programa de vídeo o con todo el
flujo de contenido multimedia, que presente información a un usuario
o que haga que se grabe un programa futuro. Además, en otras
realizaciones, los metadatos pueden contener información que permita
que un DVR realice cualquier acción relativa al flujo de contenido
multimedia, al programa de vídeo o a la operación del DVR, por
ejemplo saltarse los anuncios y otro contenido.
Así, con referencia ahora a la Fig. 6, se
muestra un diagrama de bloques que ilustra un procedimiento para la
sincronización de acciones y eventos con datos intrabanda según una
realización. La tabla 606 representa datos de secuencias de valores
de clave calculada, mientras que la tabla 608 representa metadatos
asociados con la secuencia particular de claves calculadas. En este
ejemplo particular, la tabla 606 contiene la secuencia de claves
calculadas 3D59, 2Z55, A6E3 y 9Y95, así como los valores de hora y
desfase horario para cada valor de clave calculada. Tal como se ha
descrito en lo que antecede, esta información es recibida del
servidor 106A o de cualquier otra fuente, y se encuentra en el DVR
102 en forma de máquinas 212 de estado de reconocimiento de
patrones. El contenido 600 representa un flujo de contenido
multimedia que contiene uno o más programas de vídeo. Mientras
reproduce o graba el flujo 600 de contenido multimedia, el DVR
indica su ubicación de reproducción dentro del flujo 600 de
contenido usando el cursor 604, que se mueve sobre una barra de
memoria intermedia de programa que representa el material de
programa, según se describe en la patente estadounidense con nº de
serie 6.850.691 y en la solicitud estadounidense con nº de serie
10/915.990, tituladas ambas "Multimedia Progress Indication
System". En este ejemplo particular, el cursor 604 se encuentra
en ese momento en la hora 1:12 del flujo de contenido multimedia o
del programa de vídeo. Mientras reproduce el flujo 600 de contenido
usando un módulo de análisis, el DVR genera el valor de clave
calculada "3D59" en el instante :00, el valor de clave
calculada "2Z55" en el instante :05, el valor de clave
calculada "A6E3" en el instante :10 y el valor de clave
calculada "9Y95" en el instante :12, que está en ese momento en
la ubicación indicada por el cursor 604.
Una vez generados los valores de clave calculada
y los correspondientes datos horarios, el DVR determina que los
valores de clave calculada coincidencia con los datos de secuencias
de valores de clave calculada encontrados en la tabla 606. Según
una realización, el DVR puede casar positivamente los valores de
clave calculada con los datos de secuencias de valores de clave
calculada comparando no solo los valores de clave calculada
propiamente dichos, sino también los desfases horarios para cada
valor de clave calculada.
Después de determinar una coincidencia, el DVR
conoce ahora el lugar en el que está situado dentro del programa.
Específicamente, el DVR determina que el cursor 604 está situado 12
segundos después del inicio del comienzo especificado del programa
según los datos de secuencias de valores de clave calculada. Acto
seguido, el DVR examina la información de metadatos encontrada en la
tabla 608 para determinar la acción apropiada que debe adoptarse en
respuesta a la coincidencia con los datos de secuencias de valores
de clave calculada. Según una realización, la tabla 608 indica que
el EVENTO 1 tiene lugar en el instante :10. Examinando la ubicación
actual del cursor 604, el DVR 102 puede calcular que el EVENTO 1
tiene lugar :02 segundos antes de la ubicación actual del cursor. Si
el EVENTO 1 estuviera definido para estar mostrando un icono al
usuario durante 10 segundos, el DVR 102 puede mostrar de inmediato
el icono durante ocho segundos, dado que conoce que ya ha superado
el comienzo del EVENTO 1 en dos segundos. Sí el programa que se está
reproduciendo es una grabación o el usuario está reproduciendo una
emisión en directo pero su ubicación de reproducción va a la zaga de
la emisión propiamente dicha, el DVR 102 puede ir explorando por
delante de la ubicación actual de reproducción y calcular valores de
clave calculada por delante de la ubicación actual de reproducción.
Esto permite que el DVR 102 sea más preciso en la realización de
cualquier acción asociada con un evento.
Además, después de inspeccionar la tabla 608, el
DVR 102 puede determinar que el EVENTO 2 tendrá lugar en el instante
:40 del programa de vídeo. Después de examinar la ubicación actual
dentro del programa de vídeo, el DVR 102 determina que el EVENTO 2
tiene lugar :28 segundos después de la última clave calculada. Dado
que el DVR 102 puede determinar la ubicación precisa de los EVENTOS
1 y 2 dentro del flujo de contenido multimedia, el DVR 102 puede ser
programado para reaccionar ante esos eventos de cualquier manera,
Por ejemplo, según una realización, el DVR 102 puede recibir la
instrucción de que muestre un icono a un usuario durante el EVENTO
2. En otra realización, el DVR 102 puede ser programado para empezar
a grabar el flujo de contenido multimedia en el EVENTO 2. De esta
manera, la información que identifica a cualquier EVENTO 1 o 2 puede
ser usada para identificar un evento diferenciado dentro del
programa 600 de vídeo. Además, en otras realizaciones, la tabla 608
puede definir otros eventos u otras acciones que deba adoptar un DVR
tras el reconocimiento de una secuencia de claves calculadas. Por
ejemplo, después de reconocer la secuencia de claves calculadas
3D59, 2Z55, A6E3 y 9Y95, la tabla 608 puede indicar que el DVR debe
mostrar inmediatamente al usuario un icono interactivo en un
dispositivo de visualización.
Además, una vez que el DVR 102 reconoce los
EVENTOS 1 y 2 dentro del programa de vídeo, el DVR 102 puede
insertar identificadores de vídeo en el flujo de contenido
multimedia en las ubicaciones del EVENTO 1 y 2. Según una
realización, los identificadores de vídeo son objetos de datos
intercalados en un flujo de contenido multimedia que contiene datos
de vídeo y de audio, tal como un flujo MPEG-2.
Después de que se colocan identificadores de vídeo en el flujo de
contenido multimedia, el flujo de contenido multimedia es almacenado
para ser reproducido posteriormente. Cuando se reproduce, el DVR 102
procesa el flujo de contenido multimedia y se encuentra con los
identificadores de vídeo en la ubicación exacta de los EVENTOS 1 y
2. De esta manera, una vez que se han colocado identificadores de
vídeo en el flujo de contenido multimedia, el DVR ya no necesita
reconocer los datos de subtítulos para sordos para sincronizarse con
el flujo de contenido multimedia, porque los eventos o las acciones
han sido definidos por identificadores de vídeo, que son procesados
automáticamente junto con los datos de vídeo y de audio durante la
reproducción. Los identificadores de vídeo son expuestos con mayor
detalle en la solicitud estadounidense con nº de serie 09/666.921,
titulada "Closed-Caption Tagging System".
Aunque el proceso anterior ha sido descrito en
relación con el DVR 102, el procedimiento puede ser realizado por
cualquier otro dispositivo capaz de llevar a cabo tales etapas, tal
como el DVR 104, el PC 101A o el dispositivo portátil 101B.
\vskip1.000000\baselineskip
Otro tipo de datos intrabanda que puede ser
usado para reconocer patrones de datos intrabanda son los datos de
señalización de Televisión Mejorada (ETV). La ETV permite el uso de
aplicaciones interactivas que son distribuidas "intrabanda" con
otros servicios de vídeo en un flujo de contenido multimedia. Para
sincronizar las aplicaciones intrabanda con programas de vídeo, la
ETV utiliza señales de instrucciones coordinadas con la
temporización de los programas de vídeo. Hay disponible más
información relativa a las prestaciones de señalización para la
transmisión intrabanda de datos en la especificación OpenCable
Enhanced TV Application Messaging
(ETV-AM-102), que especifica las
prestaciones de señalización para la transmisión intrabanda de datos
sincronizados con la línea horaria de un servicio de vídeo.
Según una realización, los dispositivos
multimedia con prestaciones ETV incluyen un agente de ETV para
recibir y procesar señales de instrucciones de ETV. Las señales de
instrucciones de ETV hacen que los dispositivos multimedia
descubran, descarguen, lancen y terminen aplicaciones de ETV en
momentos particulares. Así, según una realización, un dispositivo
multimedia puede reconocer patrones de datos de señalización de ETV
que definen el inicio o la terminación de aplicaciones dentro de un
flujo de contenido multimedia de ETV. Esto puede ser implementado
usando el módulo 210 de análisis para identificar y extraer los
datos de señalización de ETV del flujo de contenido multimedia.
Además, las señales de instrucciones de ETV pueden incluir
información adicional, tal como información que describa el
contenido o la programación de ETV. Además, las señales de
instrucciones de ETV están asociadas con datos horarios para
procesar la aplicación de ETV en el debido momento. Usando estos
datos horarios, un dispositivo multimedia puede identificar una
posición relativa dentro de un flujo de contenido multimedia. Por lo
tanto, un dispositivo multimedia puede interpretar datos de
señalización de ETV para determinar que (a) está ocurriendo un
evento de ETV y (b) que el evento de ETV está sincronizado con una
porción o un segmento particulares del programa de vídeo.
Así, de forma similar al reconocimiento de
secuencias de valores de clave calculada en los datos de subtítulos
para sordos, puede usarse la máquina 212 de estado de reconocimiento
de patrones para reconocer patrones de señales de instrucciones de
ETV e información horaria. Dado que las aplicaciones de ETV ya están
sincronizadas con el programa de vídeo acompañante, un dispositivo
multimedia puede sincronizarse con un flujo de contenido multimedia
reconociendo patrones de datos de señalización de ETV. Como con los
datos de subtítulos para sordos, una vez que el dispositivo
multimedia reconoce un patrón, el dispositivo multimedia puede
emprender acciones similares a las descritas más arriba con respecto
a la sincronización de acciones y eventos con los datos de
subtítulos para sordos.
\vskip1.000000\baselineskip
Según una realización, los programas de vídeo en
un flujo de contenido multimedia son mostrados a un usuario del DVR
en un dispositivo de visualización tal como una pantalla de
televisión o un monitor de ordenador. En otras realizaciones, los
programas de vídeo pueden ser presentados en un dispositivo de
visualización tal como un dispositivo portátil de visionado
multimedia. Un usuario del DVR puede controlar la reproducción del
programa de vídeo usando una interfaz de control tal como un control
remoto.
Un usuario puede marcar secciones de un programa
multimedia o colocar puntos de interés relativos al contenido dentro
del programa multimedia. Por ejemplo, un usuario puede querer marcar
las mejores jugadas de una grabación de un partido de fútbol. Una
vez que el usuario marca las jugadas, puede enviar las secuencias
resultantes de claves calculadas al DVR de un amigo. En la solicitud
estadounidense con nº de serie 10/220.558, titulada "System and
Method for Internet Access lo a Personal Television Service" y en
la solicitud estadounidense con nº de serie 10/741.596, titulada
"Secura Multimedia Transfer System" se describe un
procedimiento de transferencia de datos entre varios DVR. El DVR del
amigo puede entonces presentar los puntos de interés del usuario al
amigo cuando el amigo reproduce su copia grabada del partido. El DVR
del amigo presenta los puntos de interés junto con la barra de
memoria intermedia de programa, mostrada, por ejemplo, en su
dispositivo de visualización.
El DVR del amigo procesa de antemano el partido
grabado antes de empezar a reproducir el partido calculando valores
de clave calculada del partido grabado y comparando los valores de
clave calculada con las secuencias recibidas de clave calculada.
Esto permite que el DVR localice los puntos de interés en el partido
grabado y que presente los puntos de interés al amigo. El amigo
puede entonces saltar a los puntos de interés usando su control
remoto.
Los usuarios de DVR pueden distribuir sus
propios conjuntos de puntos de interés de programas a otros
usuarios. Los usuarios pueden, además, adjuntar metadatos a cada
punto de interés que puedan hacer que el DVR presente texto al
espectador; por ejemplo, "¿No es esta una gran escena de
acción?". El usuario también puede adjuntar metadatos a un punto
de interés que le diga al DVR que se salte x segundos en el programa
desde ese punto de interés o que presente x segundos del programa
antes de saltar al siguiente punto de interés. Esto permite que los
usuarios creen sus propias versiones condensadas de un programa que
pueden distribuir a sus amigos, familiares, compañeros de clase, a
estudiantes, a un grupo de interés, etc.
Además, pueden darse instrucciones a un DVR para
que vuelva a ordenar segmentos de un programa multimedia o de un
flujo completo de contenido. Un propósito para hacerlo es cuando el
emisor ha codificado segmentos del flujo de contenido multimedia. En
consecuencia, los espectadores no autorizados no podrán ver con
claridad el flujo de contenido multimedia. Sin embargo, para los
espectadores autorizados, el DVR pone los segmentos en el orden
correcto. Además, los usuarios pueden desear volver a ordenar
segmentos del flujo de contenido multimedia para crear sus propios
programas multimedia personalizados. Los usuarios pueden entonces
almacenar programas multimedia personalizados o distribuir programas
multimedia personalizados a sus amigos y a otros usuarios de DVR.
Los programas multimedia personalizados pueden incluir una
compilación de segmentos recuperados de diferentes flujos de
contenido multimedia, o de segmentos que han sido almacenados
previamente en el dispositivo de almacenamiento del DVR.
Usando el procedimiento para reconocer y
sincronizar un sistema de ordenador con datos intrabanda, tal como
se describe en lo que antecede, el DVR puede llevar a cabo estas
funciones con facilidad.
Por ejemplo, cuando un usuario desea guardar o
indicar la ubicación de un contenido particular dentro del programa
de vídeo, el usuario del DVR puede pulsar un botón en la interfaz de
control para indicarlo. La interfaz de control envía una señal al
DVR, que interpreta la señal como una selección de usuario. El DVR
puede determinar entonces el instante dentro del programa en que el
usuario envió la señal desde la interfaz de control y calcular un
patrón de datos intrabanda que lleve hasta ese punto.
\vskip1.000000\baselineskip
Con referencia a la Fig. 7, se muestra un
diagrama de bloques que ilustra un procedimiento para crear y ver
segmentos multimedia dentro de un programa de vídeo según una
realización. Cuando un flujo 700A de contenido multimedia que
contiene datos intrabanda tales como los datos 702 de subtítulos
para sordos (SS) se está grabando o reproduciendo en un DVR u otro
dispositivo, se asocia información horaria en forma de sellos de
tiempo asociada con los datos intrabanda. Específicamente, tal como
se describe en lo que antecede, el flujo de contenido multimedia,
incluyendo tos datos intrabanda, se empaquetan en tramas
diferenciadas de audio, vídeo y datos. Cuando está empaquetada, se
le da a cada trama un sello de tiempo relativo. Estos sellos de
tiempo pueden ser usados para hacer un seguimiento de la hora de los
datos intrabanda dentro del flujo de contenido multimedia o del
programa de vídeo.
Cuando un usuario ve un segmento de un programa
de vídeo que le gustaría guardar o del que le gustarla tomar nota,
el usuario hace que el DVR 102 marque el segmento seleccionando una
ubicación dentro del programa de vídeo. Según una realización, se
presenta una interfaz gráfica de usuario en una pantalla de
visualización que incluye una barra 700B de memoria intermedia de
programa y un cursor 708. El cursor indica la ubicación de
reproducción actual del programa. Cuando un usuario quisiese
seleccionar una ubicación dentro del programa de vídeo, el usuario
aguarda hasta que el cursor haya alcanzado la ubicación deseada y.
usando una interfaz de control tal como un control remoto,
selecciona la ubicación deseada. Cuando el usuario pulsa un botón en
el control remoto, se envía una señal desde el control remoto al
DVR, haciendo que el DVR presente al usuario un menú desplegable. El
menú desplegable puede contener opciones para que el usuario las
seleccione en relación con la ubicación deseada en el programa de
vídeo. Según una realización, las opciones disponibles al usuario
incluyen la inclusión en favoritos, saltarse la ubicación, adjuntar
una nota o cualquier otra acción que pueda ser llevada a cabo en
relación con un programa de vídeo.
Según una realización, mientras se está
reproduciendo el programa de vídeo, un usuario del DVR selecciona la
ubicación 704 usando la interfaz de control. Cuando el DVR recibe la
señal de la interfaz de control, reconoce que ha ocurrido una
selección del usuario y registra la ubicación de la selección, lo
que ocurre en el instante :10. En este punto, el DVR crea datos de
identificación del evento. Tal como se ha descrito en lo que
antecede, los datos de identificación de eventos pueden contener
patrones o secuencias de datos intrabanda, así como metadatos para
identificar acciones o eventos dentro del flujo de contenido
multimedia.
Una vez más, un tipo de datos intrabanda son los
datos de subtítulos para sordos. Según una realización, para crear
datos de identificación de eventos, el DVR busca suficientes datos
de subtítulos para sordos antes de la ubicación 704 para crear una
secuencia única de valores de clave calculada. La tabla 710
representa datos de secuencias de valores de clave calculada del
segmento 700 de vídeo. Los datos de secuencias de valores de clave
calculada pueden indicar el valor de clave calculada, la hora del
valor de clave calculada y un desfase horario para cada valor de
clave calculada. Según una realización, el desfase horario indica la
diferencia entre tiempo entre la generación del valor de clave
calculada y el valor anterior de clave calculada en el programa de
vídeo.
Así, la tabla 710 identifica los valores de
clave calculada "W5W4" y "M5M5" que preceden a la
ubicación 704. El DVR graba la hora a ta que cada valor de clave
calculada fue generado según el procedimiento particular de
subtítulos para sordos usado para mostrar el texto de subtítulos
para sordos y el desfase horario de los valores de clave calculada.
Aquí, el valor de clave calculada "W5W4" ocurre en el instante
:06 desde el inicio del programa y es la primera clave calculada de
la secuencia con un desfase horario de cero. El valor de clave
calculada "M5M5" ocurre en el instante :08 desde el inicio del
programa y está dos segundos después del valor de clave calculada
"W5W4". Cuando un DVR reconoce la secuencia de claves
calculadas "W5W4, M5M5", el DVR puede identificar que se
requiere una acción antes de la reproducción propiamente dicha de la
ubicación 704 y llevar a cabo la acción apropiada, tal como la
presentación de un icono. Los metadatos pueden indicar que se
muestre el icono dos segundos después del reconocimiento de la
secuencia de claves calculadas "W5W4, M5M5".
Además, el usuario puede seleccionar también una
segunda ubicación 706 que represente el fin de una porción deseada
de un segmento de vídeo que ocurra en el instante :20. Según una
realización, el DVR analiza los datos de SS entre los instantes
:10 y :20, genera tres valores de clave calculada "Z1B1, E5Y5 y
A2R2" y graba la hora en que se generó cada valor de clave
calculada. De aquí que, en este ejemplo particular, el valor de
clave calculada "Z1B1" ocurra primero (aquí, en el instante
:12), que el valor de clave calculada "E5Y5" ocurra dos
segundos después y que el valor de clave calculada "A2R2"
ocurra cuatro segundos después que "E5Y5". Colectivamente, los
valores de clave calculada "Z1B1, E5Y5 y A2R2" representan la
secuencia de claves calculadas para la segunda ubicación 706. Los
metadatos asociados con el programa indicarán esto.
Así, en la tabla 710, el valor de clave
calculada "Z1B1" ocurre en el instante cero, dado que es la
primera clave calculada en la secuencia, la clave calculada
"E5Y5" ocurre dos segundos después del valor de clave calculada
"Z1B1" y el valor de clave calculada "A2R2" ocurre
cuatro segundos después del valor de clave calculada "E5Y5".
Alternativamente, el desfase horario puede ser relativo a cualquier
porción del programa de vídeo, del flujo de contenido multimedia,
de la ubicación en el programa o flujo de vídeo o del segmento de
vídeo.
Cuando un DVR reproduce el flujo 7008 de
contenido multimedia usando la tabla 710 como datos de secuencias de
valores de clave calculada para su máquina de estado, analiza los
datos 702 de SS y genera valores de clave calculada. Una vez que el
DVR reconoce el valor de clave calculada "A2R2" según el
procedimiento descrito en lo que antecede para reconocer secuencias
de claves calculadas, el DVR puede de inmediato llevar a cabo una
acción, tal como provocar la presentación de un icono en una
pantalla de visualización conectada al DVR. En este caso, cuando el
DVR reconoce las secuencias de claves calculadas encontradas en la
tabla 710, el DVR puede determinar tas instantes exactos de inicio y
fin del segmento de vídeo entre las ubicaciones 704 y 706. Dada esta
información, los metadatos asociados con los datos de secuencias de
valores de clave calculada pueden dar instrucciones al DVR para que
salte el segmento de programa entre las ubicaciones 704 y 706 o
pueden dar instrucciones al DVR, por ejemplo, para que almacene el
segmento de programa entre la ubicación 704 y 706.
El DVR puede reconocer segmentos de vídeo
relativos a cualquier flujo de contenido multimedia usando los
sellos de tiempo en los datos de secuencias de valores de clave
calculada. De aquí que, aunque un programa de vídeo se emitiera o
reprodujera a dos horas distintas en ubicaciones diferentes, los
mismos segmentos de vídeo podrían ser reconocidos usando los sellos
de tiempo asociados con los valores de clave calculada. Más
específicamente, los sellos de tiempo son relativos a la generación
de valores de clave calculada y no a una hora local del DVR ni a una
hora de emisión. Por lo tanto, suponiendo que la mayor parte de la
programación sea idéntica cuando se reproduzca en diferentes
ubicaciones o a horas diferentes, los segmentos de vídeo pueden ser
reconocidos con gran precisión usando los sellos de tiempo de los
valores de clave calculada. Obsérvese que aunque la anterior
exposición se centra en datos de subtítulos para sordos, la
invención no está limitada a tal realización y que un DVR puede
crear datos de identificación de eventos usando cualquier tipo de
datos intrabanda, tal como datos de señalización de
ETV.
ETV.
\vskip1.000000\baselineskip
Después de reconocer eventos o segmentos dentro
de un programa de vídeo, el DVR 102 puede generar identifica do res
para corresponderse al segmento o a los eventos e insertar esos
identificadores en el flujo de contenido multimedia en las
ubicaciones apropiadas. Cada identificador puede contener
información de instrucciones y control que un dispositivo que
procese el identificador traduzca y con la cual actúe. Por ejemplo,
según una realización, si un usuario desea saltarse todo el
contenido entre las ubicaciones 704 y 706, tras reconocer la
secuencia de claves calculadas asociada con el segmento de vídeo, el
DVR puede simplemente crear un identificador en la ubicación 704,
haciendo que el DVR salte automáticamente 10 segundos a la ubicación
706, saltándose con ello el segmento de vídeo. Además, los datos del
identificador son procesados como parte del flujo de contenido
multimedia y, por lo tanto, son sincronizados automáticamente con la
reproducción del programa de vídeo. Con los datos del identificador,
un dispositivo que reciba el flujo de contenido multimedia puede
saltar automáticamente hasta la ubicación seleccionada.
Alternativamente, el identificador puede incluir información que
identifique el contenido relativo a la ubicación dentro del programa
de vídeo. Por ejemplo, un identificador correspondiente a la
ubicación 704 en el flujo 700A de contenido multimedia puede incluir
información que identifique la ubicación como un descanso dentro de
un programa deportivo. Además, la ubicación 706 puede ser el final
de la transmisión. Así, un DVR puede presentar una interfaz de
usuario para que un usuario indique que el descanso dentro del
programa deportivo tiene lugar en la ubicación 704 o en el instante
:10 y que termine en la ubicación 706 o en el instante :20. Usando
esta información, el usuario puede hacer que el DVR salte detrás de
la ubicación 704 o prosiga directamente a la ubicación 706.
Además, mientras se insertan identificadores en
el flujo de contenido multimedia para corresponderse a eventos o
segmentos particulares, el DVR 102 puede eliminar datos intrabanda
del flujo de contenido multimedia. Por ejemplo, según una
realización, el flujo de contenido multimedia es un flujo de
transporte MPEG2 que incluye entradas separadas de audio, vídeo y
datos. Los datos intrabanda originales está situados en la porción
de datos del flujo de contenido multimedia. Cuando se genera un
identificador, el identificador es insertado en la porción de datos
del flujo multimedia. Además, una vez que se han eliminado los datos
intrabanda, el PC 101. por ejemplo, puede transferir el flujo de
contenido multimedia al dispositivo portátil 101B. Dado que se
colocado identificadores en el flujo de contenido multimedia y que
se ha eliminado el flujo de subtítulos para sordos, no es preciso
que el dispositivo portátil 101B muestre datos de subtítulos para
sordos. En vez de ello, los identificadores dentro del flujo de
contenido multimedia son procesados automáticamente en
sincronización con el flujo de contenido multimedia mientras el
flujo de contenido multimedia está siendo mostrado a un usuario. Se
presentan detalles adicionales sobre la generación e inserción de
identificadores en un flujo de contenido multimedia en la solicitud
estadounidense nº 09/665.921, titulada "Closed Caption Tagging
System".
En otra realización, un dispositivo multimedia,
tal como el DVR 102 o el PC 101. puede simplemente proporcionar al
dispositivo portátil 101B una lista de ubicaciones de interés. Así,
en vez de insertar identificadores en el flujo de contenido
multimedia, el flujo de contenido queda sin tocar y el dispositivo
portátil 101B puede identificar eventos dentro de un programa de
vídeo usando la lista de ubicaciones de interés. La lista de
ubicaciones de interés puede ser proporcionada por separado del
flujo de contenido multimedia al dispositivo portátil 101B, Según
una realización, la lista de ubicaciones de interés incluye datos
horarios que identifican la hora relativa a la que ocurre un evento.
Además, la lista de ubicaciones de interés puede también incluir
datos adicionales, tales como datos que describan cada evento. El
dispositivo portátil 101B puede decidir usar los datos de la lista
de ubicaciones de interés de cualquier manera apropiada.
Según una realización, la lista de ubicaciones
de interés es generada por un dispositivo multimedia en respuesta a
la intervención del usuario. Por ejemplo, un usuario puede
seleccionar una o más ubicaciones dentro de un programa de vídeo
usando una interfaz de control. El dispositivo multimedia recibe
señales de la interfaz de control y determina los lugares en los que
están las ubicaciones seleccionadas dentro del programa de vídeo. El
dispositivo multimedia puede realizar tal determinación examinando
los datos horarios asociados con el flujo de contenido multimedia.
El dispositivo multimedia almacena entonces los datos que
identifican cada ubicación seleccionada con sus datos horarios
asociados en la lista de ubicaciones de interés y proporciona la
lista al dispositivo portátil 101B.
Además, en otra realización, un dispositivo
multimedia puede generar una lista de ubicaciones de interés después
de reconocer eventos o segmentos dentro de un programa de vídeo
usando patrones de datos intrabanda. Por ejemplo, un dispositivo
multimedia puede procesar un flujo completo de contenido multimedia
antes de proporcionárselo a un dispositivo portátil 101B. Cuando el
dispositivo multimedia reconoce un patrón de datos intrabanda,
examina tos metadatos asociados con el patrón de datos intrabanda e
identifica eventos dentro de un programa de vídeo, incluyendo los
datos horarios asociados con cada evento. Usando los datos horarios,
el dispositivo multimedia genera una lista de ubicaciones de interés
que enumera cada evento y la hora a la que el evento tiene lugar con
respecto al programa de vídeo o al flujo de contenido multimedia. La
lista de ubicaciones de interés es proporcionada entonces al
dispositivo portátil 101B, que puede usar la lista para identificar
las ubicaciones dentro del programa de vídeo.
\vskip1.000000\baselineskip
Tal como se ha hecho notar más arriba, los
usuarios de un DVR pueden transferir datos de identificación de
eventos de su DVR a otros DVR. Esto puede lograrse por medio de una
transferencia directa por medio de una red o Internet a otro DVR.
Una vez que un DVR recibe datos de identificación de eventos, puede
notificarse al usuario del DVR que se ha recibido un índice
personalizado de programa y también se le puede notificar del
programa con el que está relacionado. El usuario puede entonces
escoger reproducir el programa usando el índice.
Además, un servicio de DVR puede actuar como
punto de distribución para datos de identificación de eventos. Los
datos de identificación de eventos asociados con un programa pueden
ser subidos al servidor 106A desde el DVR. Cuando el servidor 106A
recibe del DVR los datos de identificación de eventos, almacena los
datos de identificación de eventos en un dispositivo o base de datos
local de almacenamiento. El servidor 106A puede proporcionar datos
de identificación de eventos creados en múltiples DVR para su
descarga por medio de la red 105. Cuando otro DVR 104 quiere
recuperar datos de identificación de eventos asociados con un
programa particular, el servidor 106A envía los datos de
identificación de eventos al DVR 104 por medio de la red 105. Por
ello, se habilita un sistema para crear y ver segmentos
personalizados de vídeo.
\vskip1.000000\baselineskip
La Figura 8 es un diagrama de bloques que
ilustra un sistema 800 de ordenador en el que puede ser implementada
una realización de la presente invención. El sistema 800 de
ordenador incluye un bus 802 u otro mecanismo de comunicaciones para
comunicar información, y un procesador 804 acoplado con el bus 802
para el procesamiento de la información. El sistema 800 también
incluye una memoria principal 806, tal como una memoria de acceso
aleatorio (RAM) u otro dispositivo de almacenamiento dinámico,
acopiada al bus 802 para almacenar información e instrucciones que
ha de ejecutar el procesador 804. La memoria principal 806 también
puede ser usada para almacenar variables temporales u otra
información intermedia durante la ejecución de instrucciones que ha
de ejecutar el procesador 804. El sistema 800 de ordenador incluye
además una memoria 808 de solo lectura (ROM) u otro dispositivo de
almacenamiento estático acoplados al bus 802 para almacenar
información estática e instrucciones para el procesador 804. Un
dispositivo 810 de almacenamiento, tal como un disco magnética o un
disco óptico, es proporcionado y está acoplado al bus 802 para
almacenar información e instrucciones.
El sistema 800 de ordenador puede estar
acoplado, a través del bus 802, a un dispositivo 812 de
visualización, tal como un tubo de rayos catódicos (CRT), para
mostrar información a un usuario del ordenador. Un dispositivo 814
de entrada, que incluye teclas alfanuméricas y de otro tipo, está
acoplado al bus 802 para comunicar información y selecciones de
instrucciones al procesador 804. Otro tipo de dispositivo de entrada
de usuario es el control 816 del cursor, tal como un ratón, una bola
de mando o teclas de dirección del cursor para comunicar información
de dirección y selecciones de instrucciones al procesador 804 y para
controlar el movimiento del cursor en el dispositivo 812 de
visualización, Típicamente, este dispositivo de entrada tiene dos
grados de libertad en dos ejes, un primer eje (por ejemplo, x) y un
segundo eje (por ejemplo, y), lo que permite que el dispositivo
especifique posiciones en un
plano.
plano.
La invención versa acerca del uso de un sistema
800 de ordenador para implementar las técnicas descritas en el
presente documento, Según una realización de la invención, esas
técnicas son realizadas por el sistema 800 de ordenador en respuesta
a que el procesador 804 ejecute una o más secuencias de una o más
instrucciones contenidas en la memoria principal 806. Tales
instrucciones pueden ser leídas a la memoria principal 806 desde
otro medio legible por máquina, tal como el dispositivo 810 de
almacenamiento. La ejecución de secuencias de instrucciones
contenidas en la memoria principal 806 hace que el procesador 804
lleve a cabo las etapas de procedimiento descritas en el presente
documento. En realizaciones alternativas, puede usarse una
circuitería cableada en vez de o en combinación con instrucciones de
soporte lógico para implementar la invención. Así, las realizaciones
de la invención no están limitadas a ninguna combinación específica
de circuitería de soporte físico y soporte lógico.
Tal como se usa en el presente documento, la
expresión "medio legible por máquina" se refiere a cualquier
medio que participe en proporcionar datos que hagan que una máquina
opere de una manera específica. En una realización implementada
usando el sistema 800 de ordenador, hay implicados diversos medios
legibles por máquina, por ejemplo para proporcionar instrucciones al
procesador 804 para su ejecución. Tal medio puede adoptar muchas
formas, incluyendo, sin limitación, medios no volátiles, medios
volátiles y medios de transmisión. Los medios no volátiles incluyen,
por ejemplo, discos ópticos o magnéticos, tales como el dispositivo
810 de almacenamiento. Los medios volátiles incluyen la memoria
dinámica, tal como la memoria principal 806. Los medios de
transmisión incluyen cables coaxiales, hilo de cobre y fibra óptica,
incluyendo los hilos que comprenden el bus 802. Los medios de
transmisión también pueden adoptar la forma de ondas acústicas o
lumínicas, tales como las generadas durante las comunicaciones de
datos por ondas de radio o infrarrojos. Todos los medios de esos
tipos deben ser tangibles para permitir que las instrucciones
portadas por los medios sean detectadas por un mecanismo físico que
lea las instrucciones introduciéndolas en una máquina.
Formas comunes de medios legibles por máquina
incluyen, por ejemplo, un disquete, un disco flexible, un disco
duro, una cinta magnética o cualquier otro medio magnético, un
CD-ROM, cualquier otro medio óptico, tarjetas
perforadas, cinta de papel, cualquier otro medio físico con patrones
de agujeros, una RAM, una PROM, una EPROM, una
FLASH-EPROM, cualquier otro chip o cartucho de
memoria, una onda portadora, como se describirá posteriormente en el
presente documento, o cualquier otro medio del que pueda leer un
ordenador.
Diversas formas de medios legibles por máquina
pueden estar implicadas en portar una o más secuencias de una o más
instrucciones al procesador 804 para su ejecución. Por ejemplo, las
instrucciones pueden estar portadas inicialmente en un disco
magnético de un ordenador remoto. El ordenador remoto puede cargar
las instrucciones en su memoria dinámica y enviar las instrucciones
por una línea telefónica usando un módem. Un módem local de un
sistema 800 de ordenador puede recibir los datos por la línea
telefónica y usar un transmisor infrarrojo para convertir los datos
en una señal infrarroja. Un detector infrarrojo puede recibir los
datos portados en la señal infrarroja y una circuitería apropiada
puede poner los datos en el bus 802. El bus 802 lleva los datos a la
memoria principal 806, de la que el procesador 804 los recupera y
ejecuta las instrucciones. Las instrucciones recibidas por la
memoria principal 806 pueden opcionalmente ser almacenadas en el
dispositivo 810 de almacenamiento, ya sea antes o después de su
ejecución por el procesador 804.
El sistema 800 de ordenador también incluye una
interfaz 818 de comunicaciones acoplada al bus 802. La interfaz 818
de comunicaciones proporciona un acoplamiento de comunicaciones
bidireccionales de datos a un enlace 820 de red que está conectado a
una red local 822. Por ejemplo, la interfaz 818 de comunicaciones
puede ser una tarjeta de red digital de servicios integrados (RDSI)
o un módem para proporcionar una conexión de comunicaciones de datos
con un tipo correspondiente de línea telefónica. Como ejemplo
adicional, la interfaz 818 de comunicaciones puede ser una tarjeta
de red de área local (LAN) para proporcionar una conexión de
comunicaciones de datos con una LAN compatible. También pueden
implementarse enlaces inalámbricos. En cualquier implementación tal,
la interfaz 818 de comunicaciones envía y recibe señales eléctricas,
electromagnéticas u ópticas que portan flujos de datos digitales que
representan diversos tipos de información.
Típicamente, el enlace 820 de red proporciona
una comunicación de datos, a través de una o más redes, con otros
dispositivos de datos. Por ejemplo, el enlace 820 de red puede
proporcionar una conexión a través de la red local 822 con un
ordenador central 820 o con equipos de datos operados por un
proveedor 826 de servicios de Internet (ISP). A su vez, el ISP 826
proporciona servicios de comunicaciones de datos a través de la red
mundial de comunicaciones de paquetes de datos ahora denominada
comúnmente "Internet" 828. La red local 822 e Internet 828 usan
ambas señales eléctricas, electromagnéticas u ópticas que portan
flujos digitales de datos. Las señales a través de las diversas
redes y las señales en el enlace 820 de red y a través de la
interfaz 818 de comunicaciones, que portan los datos digitales hasta
el sistema 800 de ordenador y procedentes del mismo, son formas
ejemplares de ondas portadoras que transportan la información.
El sistema 800 de ordenador puede enviar
mensajes y recibir datos, incluyendo código de programas, a través
de la o las redes, del enlace 820 de red y de la interfaz 818 de
comunicaciones. En el ejemplo de Internet, un servidor 820 podría
transmitir un código solicitado para un programa de aplicación a
través de Internet 828, el ISP 826, la red local 822 y la interfaz
818 de comunicaciones.
El código recibido puede ser ejecutado por el
procesador 840 cuando se recibe, y/o almacenado en el dispositivo
810 de almacenamiento u otro almacenamiento no volátil para su
ejecución posterior. De esta manera, el sistema 800 de ordenador
puede obtener código de aplicación en forma de una onda
portadora.
En la memoria anterior, se han descrito
realizaciones de la presente invención con referencia a numerosos
detalles específicos que pueden variar de una implementación a otra.
Así, el único y exclusivo indicador de lo que es la invención, y de
lo que el solicitante pretende que sea la invención, es el conjunto
de reivindicaciones que esta solicitud da a conocer, en la forma
específica en la que tales reivindicaciones son dadas a conocer,
incluyendo cualquier corrección subsiguiente. Cualquier definición
formulada expresamente en el presente documento de términos
contenidos en tales reivindicaciones gobernarán el significado de
tales términos tal como son usados en las reivindicaciones. Por
ello, ninguna limitación, ningún elemento, propiedad,
característica, ventaja o atributo que no sean enumerados
expresamente en una reivindicación deberían limitar el alcance de
tal reivindicación en modo alguno. La memoria y los dibujos han de
ser considerados, en consecuencia, en un sentido ilustrativo, no
restrictivo.
Claims (16)
1. Un procedimiento para procesar datos
intrabanda en un dispositivo multimedia que comprende:
recibir un flujo (600, 700A, 700B) de contenido
multimedia, en el que el flujo (600, 700A, 700B) de contenido
multimedia contiene datos intrabanda;
procesar los datos intrabanda, incluyendo el
cálculo de al menos dos valores (314A-314D) de clave
calculada a partir de los datos intrabanda y un período de tiempo
entre la generación de los al menos dos valores calculados
(314A-314D) de clave calculada;
determinar que los al menos dos valores
calculados (314A-314D) de clave calculada y el
período de tiempo entre la generación de los al menos dos valores
calculados (314A-314D) de clave calculada coinciden
con un patrón particular asociado con uno o más eventos, donde el
período de tiempo coincide dentro de un margen de error; e
identificar los uno o más eventos en respuesta a
la determinación de que el patrón particular coincida dentro del
margen de error.
\vskip1.000000\baselineskip
2. El procedimiento de la Reivindicación 1 en el
que los datos intrabanda son datos (702) con subtítulos para sordos
y/o datos de señalización de Televisión Mejorada (ETV).
3. El procedimiento de la Reivindicación 1 que,
además, comprende las etapas de:
en respuesta a la identificación de uno o más
eventos en el flujo (600, 700A, 700B) de contenido multimedia:
presentar un icono a un usuario en una pantalla
de visualización mientras se presenta a un usuario el flujo (600,
700A, 700B) de contenido multimedia; y/o
almacenar uno o más segmentos del flujo (600.
700A, 700B) de contenido multimedia en el dispositivo multimedia que
están relacionados con los uno o más eventos identificados.
\vskip1.000000\baselineskip
4. El procedimiento de la Reivindicación 1 en el
que el flujo (600, 700A, 700B) de contenido multimedia comprende,
además, uno o más programas de vídeo y en el que la etapa de
identificación identifica uno o más eventos en los uno o más
programas de vídeo.
5. El procedimiento de la Reivindicación 1 en el
que la etapa de determinación comprende, además:
procesar metadatos asociados con el patrón
particular coincidente.
\vskip1.000000\baselineskip
6. El procedimiento de la Reivindicación 5 en el
que los metadatos dan instrucciones al dispositivo multimedia
para:
llevar a cabo una acción; y/o
saltar un segmento del flujo (600, 700A, 700B)
de contenido multimedia; y/o
reordenar dos o más segmentos del flujo (600,
700A, 700B) de contenido multimedia.
\vskip1.000000\baselineskip
7. El procedimiento de la Reivindicación 6 que,
además, comprende:
crear, en el dispositivo multimedia, un flujo
personalizado (600, 700A, 700B) de contenido multimedia que contiene
los dos o más segmentos reordenados; y
presentar el flujo personalizado (600, 700A,
700B) de contenido multimedia a un usuario.
\vskip1.000000\baselineskip
8. El procedimiento de la Reivindicación 5 en el
que los metadatos asociados con la ubicación identificada dan
instrucciones al dispositivo multimedia para almacenar uno o más
segmentos del flujo (600, 700A, 700B) de contenido en un dispositivo
(214) de almacenamiento, y en el que el dispositivo (214) de
almacenamiento contiene uno más segmentos extraídos de uno o más
flujos diferentes (600, 700A, 700B) de contenido.
\newpage
9. El procedimiento de la Reivindicación 8 que,
además, comprende:
crear, en el dispositivo multimedia, un flujo
personalizado de contenido multimedia que contiene cualesquiera
combinaciones de segmentos almacenadas en el dispositivo (214) de
almacenamiento; y
presentar el flujo personalizado de contenido a
un usuario.
\vskip1.000000\baselineskip
10. El procedimiento de la Reivindicación 1 que,
además, comprende:
durante la reproducción del contenido
multimedia, saltar a una ubicación en el contenido multimedia
asociada con un evento identificado.
\vskip1.000000\baselineskip
11. El procedimiento de la Reivindicación 1 que,
además, comprende:
recibir datos de identificación de eventos que
asocian uno o más patrones de datos intrabanda con uno o más
eventos; y
almacenar los datos recibidos de identificación
de eventos en el dispositivo (214) de almacenamiento como parte de
la pluralidad de patrones.
\vskip1.000000\baselineskip
12. El procedimiento de la Reivindicación 11 en
el que el dispositivo (214) de almacenamiento es:
una unidad de disco duro; y/o
un medio de almacenamiento extraíble; y/o
un medio de almacenamiento volátil; y/o
un medio de almacenamiento no volátil.
\vskip1.000000\baselineskip
13. El procedimiento de la Reivindicación 1 en
el que el flujo (600, 700A, 700B) de contenido multimedia es un
flujo de emisión de televisión.
14. El procedimiento de la Reivindicación 1 que,
además, comprende llevar a cabo una acción en respuesta a la
identificación de los uno o más eventos 3.
15. Un aparato para procesar datos intrabanda en
un dispositivo multimedia, estando adaptado el aparato para llevar a
cabo el procedimiento de una cualquiera de las Reivindicaciones
1-14.
16. Un medio de almacenamiento legible por
ordenador que contiene una o más secuencias de instrucciones para
procesar datos intrabanda en un dispositivo multimedia,
instrucciones que, cuando son ejecutadas por uno o más procesadores
(804), hacen que los uno o más procesadores (804) lleven a cabo las
etapas del procedimiento de una cualquiera de las Reivindicaciones
1-14.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/473,543 US7661121B2 (en) | 2006-06-22 | 2006-06-22 | In-band data recognition and synchronization system |
| US473543 | 2006-06-22 | ||
| PCT/US2006/024688 WO2007149100A2 (en) | 2006-06-22 | 2006-06-23 | In-band data recognition and synchronization system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2381760T3 true ES2381760T3 (es) | 2012-05-31 |
Family
ID=38833884
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES06773937T Active ES2381760T3 (es) | 2006-06-22 | 2006-06-23 | Sincronización de contenido multimedia con eventos basados en el reconocimiento de secuencias de valores de clave calculada. |
Country Status (10)
| Country | Link |
|---|---|
| US (8) | US7661121B2 (es) |
| EP (3) | EP2506595B1 (es) |
| JP (3) | JP5060552B2 (es) |
| CN (2) | CN101473648B (es) |
| AT (1) | ATE546014T1 (es) |
| AU (2) | AU2006344735C1 (es) |
| CA (1) | CA2653558C (es) |
| ES (1) | ES2381760T3 (es) |
| PT (1) | PT2036343E (es) |
| WO (1) | WO2007149100A2 (es) |
Families Citing this family (123)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6233389B1 (en) | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
| US7558472B2 (en) | 2000-08-22 | 2009-07-07 | Tivo Inc. | Multimedia signal processing system |
| JP2003521851A (ja) | 1999-09-20 | 2003-07-15 | ティヴォ インク | クローズド・キャプション・タグ付けシステム |
| WO2001047257A1 (en) * | 1999-12-21 | 2001-06-28 | Tivo, Inc. | Intelligent system and methods of recommending media content items based on user preferences |
| US7917932B2 (en) | 2005-06-07 | 2011-03-29 | Sling Media, Inc. | Personal video recorder functionality for placeshifting systems |
| US9998802B2 (en) | 2004-06-07 | 2018-06-12 | Sling Media LLC | Systems and methods for creating variable length clips from a media stream |
| US8346605B2 (en) | 2004-06-07 | 2013-01-01 | Sling Media, Inc. | Management of shared media content |
| BRPI0511858B1 (pt) | 2004-06-07 | 2020-12-22 | Sling Media, Inc. | transmissor de mídia pessoal e respectivo sistema de transmissão, métodos de provimento de acesso a fonte áudio/visual em localização remota da fonte áudio/visual e de fluxo (streaming) de sinal de mídia para local de assinante remoto |
| US7769756B2 (en) | 2004-06-07 | 2010-08-03 | Sling Media, Inc. | Selection and presentation of context-relevant supplemental content and advertising |
| US7975062B2 (en) | 2004-06-07 | 2011-07-05 | Sling Media, Inc. | Capturing and sharing media content |
| WO2006055920A2 (en) | 2004-11-19 | 2006-05-26 | Tivo Inc. | Method and apparatus for secure transfer of previously broadcasted content |
| US8069461B2 (en) | 2006-03-30 | 2011-11-29 | Verizon Services Corp. | On-screen program guide with interactive programming recommendations |
| US7661121B2 (en) * | 2006-06-22 | 2010-02-09 | Tivo, Inc. | In-band data recognition and synchronization system |
| US7873982B2 (en) * | 2006-06-22 | 2011-01-18 | Tivo Inc. | Method and apparatus for creating and viewing customized multimedia segments |
| US8418217B2 (en) | 2006-09-06 | 2013-04-09 | Verizon Patent And Licensing Inc. | Systems and methods for accessing media content |
| US8464295B2 (en) | 2006-10-03 | 2013-06-11 | Verizon Patent And Licensing Inc. | Interactive search graphical user interface systems and methods |
| US8566874B2 (en) | 2006-10-03 | 2013-10-22 | Verizon Patent And Licensing Inc. | Control tools for media content access systems and methods |
| US8595760B1 (en) * | 2006-11-22 | 2013-11-26 | Amdocs Software Systems Limited | System, method and computer program product for presenting an advertisement within content |
| WO2008064469A1 (en) * | 2006-11-28 | 2008-06-05 | Innovative Chemical Technologies Canada Ltd. | Recycling of oil-based drilling muds |
| US8510780B2 (en) | 2006-12-21 | 2013-08-13 | Verizon Patent And Licensing Inc. | Program guide navigation tools for media content access systems and methods |
| US8015581B2 (en) | 2007-01-05 | 2011-09-06 | Verizon Patent And Licensing Inc. | Resource data configuration for media content access systems and methods |
| US8126262B2 (en) * | 2007-06-18 | 2012-02-28 | International Business Machines Corporation | Annotating video segments using feature rhythm models |
| US8103965B2 (en) | 2007-06-28 | 2012-01-24 | Verizon Patent And Licensing Inc. | Media content recording and healing statuses |
| US8136140B2 (en) | 2007-11-20 | 2012-03-13 | Dish Network L.L.C. | Methods and apparatus for generating metadata utilized to filter content from a video stream using text data |
| US8165450B2 (en) | 2007-11-19 | 2012-04-24 | Echostar Technologies L.L.C. | Methods and apparatus for filtering content in a video stream using text data |
| US8165451B2 (en) * | 2007-11-20 | 2012-04-24 | Echostar Technologies L.L.C. | Methods and apparatus for displaying information regarding interstitials of a video stream |
| US8051447B2 (en) | 2007-12-19 | 2011-11-01 | Verizon Patent And Licensing Inc. | Condensed program guide for media content access systems and methods |
| US11227315B2 (en) | 2008-01-30 | 2022-01-18 | Aibuy, Inc. | Interactive product placement system and method therefor |
| US8312486B1 (en) | 2008-01-30 | 2012-11-13 | Cinsay, Inc. | Interactive product placement system and method therefor |
| US20110191809A1 (en) | 2008-01-30 | 2011-08-04 | Cinsay, Llc | Viral Syndicated Interactive Product System and Method Therefor |
| US8606085B2 (en) * | 2008-03-20 | 2013-12-10 | Dish Network L.L.C. | Method and apparatus for replacement of audio data in recorded audio/video stream |
| US9113214B2 (en) | 2008-05-03 | 2015-08-18 | Cinsay, Inc. | Method and system for generation and playback of supplemented videos |
| US9183885B2 (en) | 2008-05-30 | 2015-11-10 | Echostar Technologies L.L.C. | User-initiated control of an audio/video stream to skip interstitial content between program segments |
| US8156520B2 (en) | 2008-05-30 | 2012-04-10 | EchoStar Technologies, L.L.C. | Methods and apparatus for presenting substitute content in an audio/video stream using text data |
| US20090307741A1 (en) * | 2008-06-09 | 2009-12-10 | Echostar Technologies L.L.C. | Methods and apparatus for dividing an audio/video stream into multiple segments using text data |
| CN101350826B (zh) * | 2008-08-22 | 2012-09-05 | 中兴通讯股份有限公司 | 用于通信系统的图片或多媒体视频图片的监控方法 |
| US8515338B2 (en) * | 2008-12-12 | 2013-08-20 | At&T Intellectual Property I, L.P. | Systems and methods for synchronized playout of music on several personal digital music players |
| US8407735B2 (en) * | 2008-12-24 | 2013-03-26 | Echostar Technologies L.L.C. | Methods and apparatus for identifying segments of content in a presentation stream using signature data |
| US8588579B2 (en) * | 2008-12-24 | 2013-11-19 | Echostar Technologies L.L.C. | Methods and apparatus for filtering and inserting content into a presentation stream using signature data |
| US8510771B2 (en) * | 2008-12-24 | 2013-08-13 | Echostar Technologies L.L.C. | Methods and apparatus for filtering content from a presentation stream using signature data |
| US8326127B2 (en) * | 2009-01-30 | 2012-12-04 | Echostar Technologies L.L.C. | Methods and apparatus for identifying portions of a video stream based on characteristics of the video stream |
| US20100228736A1 (en) * | 2009-02-20 | 2010-09-09 | All Media Guide, Llc | Recognizing a disc |
| US20100228704A1 (en) * | 2009-02-20 | 2010-09-09 | All Media Guide, Llc | Recognizing a disc |
| US8438596B2 (en) | 2009-04-08 | 2013-05-07 | Tivo Inc. | Automatic contact information transmission system |
| US20100269147A1 (en) * | 2009-04-15 | 2010-10-21 | Echostar Technologies Llc | Video stream index generation at a video content transmitter |
| US8620967B2 (en) | 2009-06-11 | 2013-12-31 | Rovi Technologies Corporation | Managing metadata for occurrences of a recording |
| US8437617B2 (en) * | 2009-06-17 | 2013-05-07 | Echostar Technologies L.L.C. | Method and apparatus for modifying the presentation of content |
| US8325276B2 (en) * | 2009-08-26 | 2012-12-04 | Samsung Electronics Co., Ltd. | System and method for real-time video content sharing with synchronization via closed-caption metadata |
| US8621099B2 (en) | 2009-09-21 | 2013-12-31 | Sling Media, Inc. | Systems and methods for formatting media content for distribution |
| EP2520084A4 (en) * | 2009-12-29 | 2013-11-13 | Tv Interactive Systems Inc | METHOD FOR IDENTIFYING VIDEO SEGMENTS AND DISPLAYING A CONTEXTUALLY TARGETED CONTENT ON A CONNECTED TELEVISION |
| US8670648B2 (en) | 2010-01-29 | 2014-03-11 | Xos Technologies, Inc. | Video processing methods and systems |
| US20110197224A1 (en) * | 2010-02-09 | 2011-08-11 | Echostar Global B.V. | Methods and Apparatus For Selecting Advertisements For Output By A Television Receiver Based on Social Network Profile Data |
| US8934758B2 (en) | 2010-02-09 | 2015-01-13 | Echostar Global B.V. | Methods and apparatus for presenting supplemental content in association with recorded content |
| US8930849B2 (en) | 2010-03-31 | 2015-01-06 | Verizon Patent And Licensing Inc. | Enhanced media content tagging systems and methods |
| CA2740111C (en) | 2010-05-10 | 2019-01-15 | Encore Interactive Inc. | Realtime broadcast stream and control data conversion system and method |
| US8983952B1 (en) * | 2010-07-29 | 2015-03-17 | Symantec Corporation | System and method for partitioning backup data streams in a deduplication based storage system |
| US8468453B2 (en) | 2010-08-12 | 2013-06-18 | Echostar Technologies L.L.C. | User-selected media content blocking |
| KR101737325B1 (ko) * | 2010-08-19 | 2017-05-22 | 삼성전자주식회사 | 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치 |
| US11227330B2 (en) | 2010-09-03 | 2022-01-18 | Lee Martin Stewart | Determining a part having an anomaly in equipment and initiating an electronic transaction for replacing the part using a three-dimensional (3D) model of the equipment |
| US8935300B1 (en) | 2011-01-03 | 2015-01-13 | Intellectual Ventures Fund 79 Llc | Methods, devices, and mediums associated with content-searchable media |
| US8745683B1 (en) * | 2011-01-03 | 2014-06-03 | Intellectual Ventures Fund 79 Llc | Methods, devices, and mediums associated with supplementary audio information |
| US9383928B2 (en) * | 2011-06-13 | 2016-07-05 | Emc Corporation | Replication techniques with content addressable storage |
| US9219945B1 (en) * | 2011-06-16 | 2015-12-22 | Amazon Technologies, Inc. | Embedding content of personal media in a portion of a frame of streaming media indicated by a frame identifier |
| US9535450B2 (en) * | 2011-07-17 | 2017-01-03 | International Business Machines Corporation | Synchronization of data streams with associated metadata streams using smallest sum of absolute differences between time indices of data events and metadata events |
| US8437622B2 (en) | 2011-08-23 | 2013-05-07 | Echostar Technologies L.L.C. | Altering presentation of received content based on use of closed captioning elements as reference locations |
| EP3499446A1 (en) | 2011-08-29 | 2019-06-19 | AiBuy, Inc. | Containerized software for virally copying from one endpoint to another |
| EP2826251B1 (en) * | 2012-03-13 | 2018-08-08 | TiVo Solutions Inc. | Automatic commercial playback system |
| US8918311B1 (en) | 2012-03-21 | 2014-12-23 | 3Play Media, Inc. | Intelligent caption systems and methods |
| TWI519167B (zh) * | 2012-04-23 | 2016-01-21 | 廣達電腦股份有限公司 | 運用後設資料來進行目標辨識與事件重現之系統 |
| WO2013173805A1 (en) | 2012-05-17 | 2013-11-21 | Google Inc. | Systems and methods re-ranking ranked search results |
| WO2013173806A2 (en) * | 2012-05-17 | 2013-11-21 | Google Inc. | Systems and methods for determining a likelihood that an entity is an author of original content |
| US9607330B2 (en) | 2012-06-21 | 2017-03-28 | Cinsay, Inc. | Peer-assisted shopping |
| US10789631B2 (en) | 2012-06-21 | 2020-09-29 | Aibuy, Inc. | Apparatus and method for peer-assisted e-commerce shopping |
| US8819759B2 (en) * | 2012-06-27 | 2014-08-26 | Google Technology Holdings LLC | Determining the location of a point of interest in a media stream that includes caption data |
| US20150245092A1 (en) * | 2012-09-26 | 2015-08-27 | ALi Europe SarI | Digital converter |
| US9379932B1 (en) | 2013-03-07 | 2016-06-28 | Google Inc. | Personal video recorder with limited attached local storage |
| US9173004B2 (en) | 2013-04-03 | 2015-10-27 | Sony Corporation | Reproducing device, reproducing method, program, and transmitting device |
| FR3004881B1 (fr) | 2013-04-19 | 2015-04-17 | Kolor | Procede de generation d'un flux video de sortie a partir d'un flux video large champ |
| JP6546924B2 (ja) | 2013-09-11 | 2019-07-17 | アイバイ,インコーポレイテッド | コンテンツトランザクションアイテムの動的バインド |
| KR20160064093A (ko) | 2013-09-27 | 2016-06-07 | 신세이, 인크. | 보조 콘텐츠의 n 레벨 복제 |
| AU2014324843A1 (en) | 2013-09-27 | 2016-03-10 | Aibuy, Inc. | Apparatus and method for supporting relationships associated with content provisioning |
| US9456170B1 (en) | 2013-10-08 | 2016-09-27 | 3Play Media, Inc. | Automated caption positioning systems and methods |
| CN103701909B (zh) * | 2013-12-26 | 2018-06-26 | 乐视致新电子科技(天津)有限公司 | 视频应用的快速生成方法及系统 |
| US9668020B2 (en) | 2014-04-07 | 2017-05-30 | The Nielsen Company (Us), Llc | Signature retrieval and matching for media monitoring |
| US20150332730A1 (en) * | 2014-05-16 | 2015-11-19 | Sumit Bohra | System and method for removing commercial advertisement from recorded tv programs |
| US9575680B1 (en) | 2014-08-22 | 2017-02-21 | Veritas Technologies Llc | Deduplication rehydration |
| US11051075B2 (en) | 2014-10-03 | 2021-06-29 | Dish Network L.L.C. | Systems and methods for providing bookmarking data |
| GB2533913A (en) * | 2014-11-07 | 2016-07-13 | Fast Web Media Ltd | A video signal caption system and method for advertising |
| US10303666B2 (en) | 2015-03-09 | 2019-05-28 | International Business Machines Corporation | File transfer system using file backup times |
| US10015541B2 (en) | 2015-03-25 | 2018-07-03 | Cisco Technology, Inc. | Storing and retrieval heuristics |
| US9578394B2 (en) | 2015-03-25 | 2017-02-21 | Cisco Technology, Inc. | Video signature creation and matching |
| US9900636B2 (en) * | 2015-08-14 | 2018-02-20 | The Nielsen Company (Us), Llc | Reducing signature matching uncertainty in media monitoring systems |
| US10303887B2 (en) | 2015-09-14 | 2019-05-28 | T0.Com, Inc. | Data verification methods and systems using a hash tree, such as a time-centric merkle hash tree |
| US10200546B2 (en) | 2015-09-25 | 2019-02-05 | The Nielsen Company (Us), Llc | Methods and apparatus to identify media using hybrid hash keys |
| EP3357250A4 (en) | 2015-09-30 | 2019-02-27 | TiVo Solutions Inc. | SYNCHRONIZING TAG DATA FOR MEDIA CONTENT |
| US10033928B1 (en) | 2015-10-29 | 2018-07-24 | Gopro, Inc. | Apparatus and methods for rolling shutter compensation for multi-camera systems |
| US9973696B1 (en) | 2015-11-23 | 2018-05-15 | Gopro, Inc. | Apparatus and methods for image alignment |
| US9792709B1 (en) | 2015-11-23 | 2017-10-17 | Gopro, Inc. | Apparatus and methods for image alignment |
| US9848132B2 (en) * | 2015-11-24 | 2017-12-19 | Gopro, Inc. | Multi-camera time synchronization |
| US9973746B2 (en) | 2016-02-17 | 2018-05-15 | Gopro, Inc. | System and method for presenting and viewing a spherical video segment |
| US9602795B1 (en) | 2016-02-22 | 2017-03-21 | Gopro, Inc. | System and method for presenting and viewing a spherical video segment |
| GB2556612B (en) | 2016-04-18 | 2022-03-09 | Grass Valley Ltd | Monitoring audio-visual content with captions |
| US10387631B2 (en) * | 2016-05-06 | 2019-08-20 | Enterpriseweb Llc | Systems and methods for domain-driven design and execution of modular and dynamic services, applications and processes |
| US10432855B1 (en) | 2016-05-20 | 2019-10-01 | Gopro, Inc. | Systems and methods for determining key frame moments to construct spherical images |
| GB2552349B (en) * | 2016-07-20 | 2019-05-22 | Law Malcolm | Sample synchronisation |
| US9934758B1 (en) | 2016-09-21 | 2018-04-03 | Gopro, Inc. | Systems and methods for simulating adaptation of eyes to changes in lighting conditions |
| US10268896B1 (en) | 2016-10-05 | 2019-04-23 | Gopro, Inc. | Systems and methods for determining video highlight based on conveyance positions of video content capture |
| US10194101B1 (en) | 2017-02-22 | 2019-01-29 | Gopro, Inc. | Systems and methods for rolling shutter compensation using iterative process |
| US10937083B2 (en) | 2017-07-03 | 2021-03-02 | Medici Ventures, Inc. | Decentralized trading system for fair ordering and matching of trades received at multiple network nodes and matched by multiple network nodes within decentralized trading system |
| US11418858B2 (en) | 2017-09-01 | 2022-08-16 | Roku, Inc. | Interactive content when the secondary content is server stitched |
| CN108259965B (zh) * | 2018-03-31 | 2020-05-12 | 湖南广播电视台广播传媒中心 | 一种视频剪辑方法和剪辑系统 |
| CN108600773B (zh) * | 2018-04-25 | 2021-08-10 | 腾讯科技(深圳)有限公司 | 字幕数据推送方法、字幕展示方法、装置、设备及介质 |
| US11469881B2 (en) * | 2018-12-26 | 2022-10-11 | Korea Institute Of Science And Technology | Apparatus and method for forgery prevention of digital information |
| US11483496B2 (en) * | 2019-04-21 | 2022-10-25 | Oran Gilad | System and method for synchronizing auxiliary content to a video stream |
| US11233840B2 (en) * | 2019-09-13 | 2022-01-25 | Roku, Inc. | Use of in-band metadata as basis to access reference fingerprints to facilitate content-related action |
| US11172269B2 (en) | 2020-03-04 | 2021-11-09 | Dish Network L.L.C. | Automated commercial content shifting in a video streaming system |
| US11252460B2 (en) | 2020-03-27 | 2022-02-15 | The Nielsen Company (Us), Llc | Signature matching with meter data aggregation for media identification |
| CN111597885A (zh) * | 2020-04-07 | 2020-08-28 | 上海推乐信息技术服务有限公司 | 一种视频附加内容检测方法和系统 |
| US11490167B2 (en) * | 2020-12-07 | 2022-11-01 | Rovi Guides, Inc. | Systems and methods for dynamically syncing from time-shifted frame to live stream of content |
| US11490153B2 (en) | 2020-12-07 | 2022-11-01 | Rovi Guides, Inc. | Systems and methods for dynamically syncing from time-shifted frame to live stream of content |
| US11770588B2 (en) * | 2020-12-07 | 2023-09-26 | Rovi Guides, Inc. | Systems and methods for dynamically syncing from time-shifted frame to live stream of content |
| US11735186B2 (en) | 2021-09-07 | 2023-08-22 | 3Play Media, Inc. | Hybrid live captioning systems and methods |
| KR20230112424A (ko) * | 2022-01-20 | 2023-07-27 | 삼성전자주식회사 | 디스플레이 장치 및 ir led를 이용하여 수신한 ir 신호에 기초하여 그 장치를 제어하는 방법 |
Family Cites Families (265)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2062424B (en) | 1979-10-31 | 1983-04-07 | British Broadcasting Corp | Bradcast teletext system |
| DE3071063D1 (en) * | 1979-12-21 | 1985-10-10 | Pelikan Ag | Method for manufacturing large numbers of ball-point pen refills |
| DE3036552C2 (de) | 1980-09-27 | 1985-04-25 | Blaupunkt-Werke Gmbh, 3200 Hildesheim | Fernsehempfangsanlage |
| US4387406A (en) | 1980-10-31 | 1983-06-07 | Texas Instruments Incorporated | Encoding and decoding digital data in a video format |
| US4805020A (en) | 1983-03-21 | 1989-02-14 | Greenberg Burton L | Television program transmission verification method and apparatus |
| JPS6059864A (ja) * | 1983-09-13 | 1985-04-06 | Dainippon Screen Mfg Co Ltd | 画像走査記録装置 |
| US4697209A (en) * | 1984-04-26 | 1987-09-29 | A. C. Nielsen Company | Methods and apparatus for automatically identifying programs viewed or recorded |
| US4677466A (en) * | 1985-07-29 | 1987-06-30 | A. C. Nielsen Company | Broadcast program identification method and apparatus |
| US4739398A (en) * | 1986-05-02 | 1988-04-19 | Control Data Corporation | Method, apparatus and system for recognizing broadcast segments |
| US4843562A (en) * | 1987-06-24 | 1989-06-27 | Broadcast Data Systems Limited Partnership | Broadcast information classification system and method |
| DE3856057T2 (de) | 1987-07-20 | 1998-10-29 | Philips Electronics Nv | Fernseh-Übertragungssystem |
| DE3727756A1 (de) | 1987-08-20 | 1989-03-02 | Philips Patentverwaltung | Verfahren zum aufbereiten von kennsignalen |
| US4930158A (en) * | 1987-09-02 | 1990-05-29 | Vogel Peter S | Selective video playing system |
| US4807031A (en) | 1987-10-20 | 1989-02-21 | Interactive Systems, Incorporated | Interactive video method and apparatus |
| US5121476A (en) | 1988-02-22 | 1992-06-09 | Yee Keen Y | TV data capture device |
| US4945412A (en) | 1988-06-14 | 1990-07-31 | Kramer Robert A | Method of and system for identification and verification of broadcasting television and radio program segments |
| US4931865A (en) | 1988-08-24 | 1990-06-05 | Sebastiano Scarampi | Apparatus and methods for monitoring television viewers |
| JPH0271633A (ja) | 1988-09-07 | 1990-03-12 | Hitachi Ltd | 放送番組収録方法および収録装置および放送装置 |
| US5767913A (en) | 1988-10-17 | 1998-06-16 | Kassatly; Lord Samuel Anthony | Mapping system for producing event identifying codes |
| US4857999A (en) * | 1988-12-20 | 1989-08-15 | Peac Media Research, Inc. | Video monitoring system |
| US5307173A (en) | 1988-12-23 | 1994-04-26 | Gemstar Development Corporation | Apparatus and method using compressed codes for television program record scheduling |
| KR900010504A (ko) | 1988-12-31 | 1990-07-07 | 안시환 | 비디오 테이프 레코오더를 이용한 가정자동화 방법 및 장치 |
| US5014125A (en) | 1989-05-05 | 1991-05-07 | Cableshare, Inc. | Television system for the interactive distribution of selectable video presentations |
| US5469207A (en) | 1989-12-06 | 1995-11-21 | British Broadcasting Corporation | Method of labelling a broadcast signal including transmitting a sequence of program labels |
| CA2036205C (en) * | 1990-06-01 | 1996-11-19 | Russell J. Welsh | Program monitoring unit |
| US5233423A (en) | 1990-11-26 | 1993-08-03 | North American Philips Corporation | Embedded commericals within a television receiver using an integrated electronic billboard |
| WO1992022983A2 (en) | 1991-06-11 | 1992-12-23 | Browne H Lee | Large capacity, random access, multi-source recorder player |
| US5387941A (en) | 1991-06-14 | 1995-02-07 | Wavephore, Inc. | Data with video transmitter |
| US5210611A (en) | 1991-08-12 | 1993-05-11 | Keen Y. Yee | Automatic tuning radio/TV using filtered seek |
| JPH05114194A (ja) | 1991-10-22 | 1993-05-07 | Sumitomo Electric Ind Ltd | 番組予約システム |
| JPH05182294A (ja) | 1991-12-27 | 1993-07-23 | Sony Corp | 記録装置及び再生装置 |
| JP3299771B2 (ja) | 1992-02-18 | 2002-07-08 | パイオニア株式会社 | 文字放送受信機 |
| US5659368A (en) | 1992-04-28 | 1997-08-19 | Thomson Consumer Electronics, Inc. | Auxiliary video information system including extended data services |
| US5363481A (en) | 1992-06-22 | 1994-11-08 | Tektronix, Inc. | Auto selecting scrolling device |
| ATE164280T1 (de) | 1992-06-29 | 1998-04-15 | Koninkl Philips Electronics Nv | Fernsehempfänger mit videotextdekoder |
| US5440345A (en) | 1992-07-17 | 1995-08-08 | Kabushiki Kaisha Toshiba | High efficient encoding/decoding system |
| US5721788A (en) | 1992-07-31 | 1998-02-24 | Corbis Corporation | Method and system for digital image signatures |
| GB2270791B (en) | 1992-09-21 | 1996-07-17 | Grass Valley Group | Disk-based digital video recorder |
| US5371551A (en) | 1992-10-29 | 1994-12-06 | Logan; James | Time delayed digital video system using concurrent recording and playback |
| US5400401A (en) | 1992-10-30 | 1995-03-21 | Scientific Atlanta, Inc. | System and method for transmitting a plurality of digital services |
| US5282247A (en) | 1992-11-12 | 1994-01-25 | Maxtor Corporation | Apparatus and method for providing data security in a computer system having removable memory |
| DE69331715T2 (de) | 1992-12-09 | 2002-10-24 | Discovery Communications, Inc. | Fernbedienung für Kabelfernsehverteilsysteme |
| US5999688A (en) | 1993-01-08 | 1999-12-07 | Srt, Inc. | Method and apparatus for controlling a video player to automatically locate a segment of a recorded program |
| US5696866A (en) | 1993-01-08 | 1997-12-09 | Srt, Inc. | Method and apparatus for eliminating television commercial messages |
| US5987210A (en) | 1993-01-08 | 1999-11-16 | Srt, Inc. | Method and apparatus for eliminating television commercial messages |
| US7110658B1 (en) * | 1993-01-08 | 2006-09-19 | Televentions, Llc | Method and apparatus for eliminating television commercial messages |
| US5428400A (en) | 1993-01-29 | 1995-06-27 | Thomson Consumer Electronics, Inc. | Enabling a display of closed captioning status upon detecting a code of a proper subset of closed-caption data codes |
| US5375160A (en) | 1993-05-28 | 1994-12-20 | Ledler Corporation | Interface apparatus for effecting captioning and communications between a telephone line and a television |
| US5386232A (en) | 1993-06-16 | 1995-01-31 | Intel Corporation | Method and apparatus for encoding images using a specified data format |
| JP3371158B2 (ja) | 1993-07-23 | 2003-01-27 | ソニー株式会社 | 放送受信装置 |
| US5481296A (en) | 1993-08-06 | 1996-01-02 | International Business Machines Corporation | Apparatus and method for selectively viewing video information |
| DE69424611T2 (de) | 1993-09-22 | 2001-01-25 | Sony Corp., Tokio/Tokyo | Fernsehgerät |
| US5481294A (en) | 1993-10-27 | 1996-01-02 | A. C. Nielsen Company | Audience measurement system utilizing ancillary codes and passive signatures |
| US5519780A (en) | 1993-12-03 | 1996-05-21 | Scientific-Atlanta, Inc. | System and method for providing compressed digital teletext services and teletext support services |
| US5559653A (en) | 1993-12-10 | 1996-09-24 | Yamaha Corporation | Thin film magnetic head having a multilayer upper core |
| JP3277473B2 (ja) | 1994-01-25 | 2002-04-22 | ソニー株式会社 | 放送受信装置 |
| US5537151A (en) | 1994-02-16 | 1996-07-16 | Ati Technologies Inc. | Close caption support with timewarp |
| US5624265A (en) | 1994-07-01 | 1997-04-29 | Tv Interactive Data Corporation | Printed publication remote contol for accessing interactive media |
| EP0692909B1 (en) | 1994-07-12 | 2001-11-28 | Deutsche Thomson-Brandt Gmbh | Method to provide a subtitle in a teletext system |
| US5555441A (en) | 1994-08-02 | 1996-09-10 | Interim Design Inc. | Interactive audiovisual distribution system |
| US5600775A (en) | 1994-08-26 | 1997-02-04 | Emotion, Inc. | Method and apparatus for annotating full motion video and other indexed data structures |
| JPH0879685A (ja) | 1994-08-31 | 1996-03-22 | Sony Corp | ニア・ビデオ・オン・デマンドシステムにおけるプログラム再生装置 |
| DE4434034A1 (de) | 1994-09-23 | 1996-03-28 | Thomson Brandt Gmbh | Verfahren zur Markierung und/oder zur Auswertung von Markierungen von auf einem Speicherträger aufgezeichneten Informationen für Steuerungszwecke |
| US5614940A (en) | 1994-10-21 | 1997-03-25 | Intel Corporation | Method and apparatus for providing broadcast information with indexing |
| US5566089A (en) | 1994-10-26 | 1996-10-15 | General Instrument Corporation Of Delaware | Syntax parser for a video decompression processor |
| DE69529836T2 (de) | 1994-10-27 | 2004-03-04 | Index Systems, Inc. | System und methode zur fernladung von recorderprogrammierungsdaten in einem videosignal |
| US5867205A (en) | 1994-11-14 | 1999-02-02 | Intel Corporation | Method and apparatus for controlling video/audio and channel selection for a communication signal based on textual information indicative of channel contents of a signal |
| JP3248380B2 (ja) | 1994-12-15 | 2002-01-21 | ソニー株式会社 | データ復号化装置およびデータ復号化方法 |
| US5872983A (en) | 1994-12-22 | 1999-02-16 | Texas Instruments Incorporated | Power management interface system for use with an electronic wiring board article of manufacture |
| US6198977B1 (en) | 1995-01-09 | 2001-03-06 | Qwest Communication International Inc. | Electronic classified advertising interface method and instructions with ad replay options |
| US6115057A (en) | 1995-02-14 | 2000-09-05 | Index Systems, Inc. | Apparatus and method for allowing rating level control of the viewing of a program |
| GB9504376D0 (en) | 1995-03-04 | 1995-04-26 | Televitesse Systems Inc | Automatic broadcast monitoring system |
| US5526054A (en) | 1995-03-27 | 1996-06-11 | International Business Machines Corporation | Apparatus for header generation |
| US5517257A (en) | 1995-03-28 | 1996-05-14 | Microsoft Corporation | Video control user interface for interactive television systems and method for controlling display of a video movie |
| EP0735754B1 (en) | 1995-03-30 | 2008-05-07 | THOMSON Licensing | Method and apparatus for the classification of television signals |
| US5719634A (en) | 1995-04-19 | 1998-02-17 | Sony Corportion | Methods of and apparatus for encoding and decoding digital data for representation in a video frame |
| US5805763A (en) | 1995-05-05 | 1998-09-08 | Microsoft Corporation | System and method for automatically recording programs in an interactive viewing system |
| FI98591C (fi) | 1995-05-23 | 1997-07-10 | Nokia Technology Gmbh | Videokuvan tekstitysmenetelmä |
| US5708787A (en) | 1995-05-29 | 1998-01-13 | Matsushita Electric Industrial | Menu display device |
| US5930493A (en) | 1995-06-07 | 1999-07-27 | International Business Machines Corporation | Multimedia server system and method for communicating multimedia information |
| US6829368B2 (en) * | 2000-01-26 | 2004-12-07 | Digimarc Corporation | Establishing and interacting with on-line media collections using identifiers in media signals |
| JPH09102940A (ja) | 1995-08-02 | 1997-04-15 | Sony Corp | 動画像信号の符号化方法、符号化装置、復号化装置、記録媒体及び伝送方法 |
| JPH0965267A (ja) | 1995-08-22 | 1997-03-07 | Toshiba Corp | テレビジョンシステムおよび磁気記録再生装置 |
| US5878141A (en) | 1995-08-25 | 1999-03-02 | Microsoft Corporation | Computerized purchasing system and method for mediating purchase transactions over an interactive network |
| US6496981B1 (en) | 1997-09-19 | 2002-12-17 | Douglass A. Wistendahl | System for converting media content for interactive TV use |
| JP3330797B2 (ja) | 1995-10-02 | 2002-09-30 | 富士通株式会社 | 動画像データ格納方式および動画像データ復号方式 |
| JP3671476B2 (ja) | 1995-11-07 | 2005-07-13 | ソニー株式会社 | 受信装置 |
| US6157413A (en) | 1995-11-20 | 2000-12-05 | United Video Properties, Inc. | Interactive special events video signal navigation system |
| TW303437B (en) | 1996-01-11 | 1997-04-21 | Ibm | Entertainment system for portable computer |
| US6061056A (en) | 1996-03-04 | 2000-05-09 | Telexis Corporation | Television monitoring system with automatic selection of program material of interest and subsequent display under user control |
| JP3332756B2 (ja) | 1996-03-14 | 2002-10-07 | 三洋電機株式会社 | テレビジョン放送信号の記録再生装置 |
| US6240555B1 (en) | 1996-03-29 | 2001-05-29 | Microsoft Corporation | Interactive entertainment system for presenting supplemental interactive content together with continuous video programs |
| US6058430A (en) | 1996-04-19 | 2000-05-02 | Kaplan; Kenneth B. | Vertical blanking interval encoding of internet addresses for integrated television/internet devices |
| US5929849A (en) | 1996-05-02 | 1999-07-27 | Phoenix Technologies, Ltd. | Integration of dynamic universal resource locators with television presentations |
| KR100212134B1 (ko) * | 1996-05-03 | 1999-08-02 | 윤종용 | 시청자 선택형 자막표시의 소프트 스크롤 방법 |
| CN1192602C (zh) | 1996-05-03 | 2005-03-09 | 三星电子株式会社 | 适于音节文字的观众选择型字幕播放和接收方法及其装置 |
| US6018775A (en) | 1996-07-02 | 2000-01-25 | Gateway 2000, Inc. | System with a remote wireless mass storage which provides identification of a particular mass storage stored in a cradle to the system |
| US5742768A (en) | 1996-07-16 | 1998-04-21 | Silicon Graphics, Inc. | System and method for providing and displaying a web page having an embedded menu |
| US7225142B1 (en) | 1996-08-01 | 2007-05-29 | At&T Corp. | Interactive multimedia advertising and electronic commerce on a hypertext network |
| US7155451B1 (en) | 1996-09-03 | 2006-12-26 | Torres Damon C | Automated browsing system for publishers and users on networks serving internet and remote devices |
| US5856973A (en) | 1996-09-10 | 1999-01-05 | Thompson; Kenneth M. | Data multiplexing in MPEG server to decoder systems |
| CN100347671C (zh) | 1996-09-11 | 2007-11-07 | 松下电器产业株式会社 | 程序接收执行装置及用于它的程序发送装置 |
| US5892536A (en) * | 1996-10-03 | 1999-04-06 | Personal Audio | Systems and methods for computer enhanced broadcast monitoring |
| US20020120925A1 (en) | 2000-03-28 | 2002-08-29 | Logan James D. | Audio and video program recording, editing and playback systems using metadata |
| US20030093790A1 (en) * | 2000-03-28 | 2003-05-15 | Logan James D. | Audio and video program recording, editing and playback systems using metadata |
| US7055166B1 (en) | 1996-10-03 | 2006-05-30 | Gotuit Media Corp. | Apparatus and methods for broadcast monitoring |
| JPH10174007A (ja) | 1996-10-11 | 1998-06-26 | Toshiba Corp | マルチ機能テレビジョン装置 |
| ES2531195T3 (es) | 1996-10-16 | 2015-03-11 | Gemstar Dev Corp | Aparato de grabación de programas y método de gestión de planificación de grabación |
| US20030005463A1 (en) | 1999-09-30 | 2003-01-02 | Douglas B Macrae | Access to internet data through a television system |
| US5774666A (en) | 1996-10-18 | 1998-06-30 | Silicon Graphics, Inc. | System and method for displaying uniform network resource locators embedded in time-based medium |
| US7269330B1 (en) | 1996-11-01 | 2007-09-11 | Televentions, Llc | Method and apparatus for controlling a video recorder/player to selectively alter a video signal |
| US5999689A (en) | 1996-11-01 | 1999-12-07 | Iggulden; Jerry | Method and apparatus for controlling a videotape recorder in real-time to automatically identify and selectively skip segments of a television broadcast signal during recording of the television signal |
| JPH10164521A (ja) | 1996-11-29 | 1998-06-19 | Canon Inc | 画像処理装置 |
| JP3575205B2 (ja) | 1996-12-13 | 2004-10-13 | ソニー株式会社 | リモートコマンダ及びネットワーク接続システム |
| US6177931B1 (en) | 1996-12-19 | 2001-01-23 | Index Systems, Inc. | Systems and methods for displaying and recording control interface with television programs, video, advertising information and program scheduling information |
| US6473903B2 (en) | 1996-12-30 | 2002-10-29 | Koninklijke Philips Electronics N.V. | Method and system for implementing interactive broadcast programs and commercials |
| US6163316A (en) | 1997-01-03 | 2000-12-19 | Texas Instruments Incorporated | Electronic programming system and method |
| US6637032B1 (en) * | 1997-01-06 | 2003-10-21 | Microsoft Corporation | System and method for synchronizing enhancing content with a video program using closed captioning |
| JP3837808B2 (ja) | 1997-01-22 | 2006-10-25 | ヤマハ株式会社 | 記録再生装置 |
| US6211919B1 (en) | 1997-03-28 | 2001-04-03 | Tektronix, Inc. | Transparent embedment of data in a video signal |
| AU7684198A (en) | 1997-04-21 | 1998-11-13 | Gemstar Development Corporation | Method and apparatus for time-shifting video and text in a text-enhanced television program |
| US6239843B1 (en) | 1997-05-05 | 2001-05-29 | Wavo Corporation | Method and system for decoding data in a signal |
| US6094677A (en) | 1997-05-30 | 2000-07-25 | International Business Machines Corporation | Methods, systems and computer program products for providing insertions during delays in interactive systems |
| JPH117751A (ja) | 1997-06-18 | 1999-01-12 | Oputoromu:Kk | ドライブ一体型ディスク |
| US6172605B1 (en) | 1997-07-02 | 2001-01-09 | Matsushita Electric Industrial Co., Ltd. | Remote monitoring system and method |
| IL125141A0 (en) * | 1998-06-29 | 1999-01-26 | Nds Ltd | Advanced television system |
| JPH1145157A (ja) | 1997-07-24 | 1999-02-16 | Internatl Business Mach Corp <Ibm> | データ転送装置、ディスク装置及びデータ転送方法 |
| JPH11103452A (ja) | 1997-09-26 | 1999-04-13 | Hitachi Ltd | インタラクティブ番組における対話及び画面制御方法 |
| US6600496B1 (en) | 1997-09-26 | 2003-07-29 | Sun Microsystems, Inc. | Interactive graphical user interface for television set-top box |
| EP1013089B1 (en) | 1997-10-06 | 2005-06-22 | Silicon Image, Inc. | Digital video system and methods for providing same |
| US6412111B1 (en) | 1997-10-09 | 2002-06-25 | International Business Machines Corporation | Data processing system and method for implementing programmable distribution of information by a video server |
| US6094228A (en) | 1997-10-28 | 2000-07-25 | Ciardullo; Daniel Andrew | Method for transmitting data on viewable portion of a video signal |
| JPH11187324A (ja) | 1997-12-19 | 1999-07-09 | Matsushita Electric Ind Co Ltd | 番組情報作成装置および方法と受信装置 |
| CA2254695A1 (en) | 1997-12-19 | 1999-06-19 | John M. Todd | Anti-theft alarm for portable electrically operated devices |
| US6075550A (en) | 1997-12-23 | 2000-06-13 | Lapierre; Diane | Censoring assembly adapted for use with closed caption television |
| EP1389014A1 (en) | 1997-12-26 | 2004-02-11 | Matsushita Electric Industrial Co., Ltd. | Video clip identification system unusable for commercial cutting |
| US6097441A (en) * | 1997-12-31 | 2000-08-01 | Eremote, Inc. | System for dual-display interaction with integrated television and internet content |
| US6008802A (en) * | 1998-01-05 | 1999-12-28 | Intel Corporation | Method and apparatus for automatically performing a function based on the reception of information corresponding to broadcast data |
| US6064748A (en) | 1998-01-16 | 2000-05-16 | Hewlett-Packard Company | Method and apparatus for embedding and retrieving additional data in an encoded data stream |
| AU2337699A (en) | 1998-01-23 | 1999-08-09 | Index Systems, Inc. | Home entertainment system and method of its operation |
| US20010042246A1 (en) | 1999-08-04 | 2001-11-15 | Henry C. Yuen | Home entertainment system and method of its operation |
| US6557171B1 (en) | 1998-02-02 | 2003-04-29 | Matsushita Electric Industrial Co., Ltd. | Digital tv broadcast sending apparatus, digital tv broadcast receiving apparatus, and digital tv broadcast sending / receiving system which facilitate preselection of tv programs, and computer readable recording medium storing a program for achieving a function of the digital tv broadcast receiving apparatus |
| JP3672432B2 (ja) | 1998-03-20 | 2005-07-20 | パイオニア株式会社 | 情報再生装置及び情報再生方法 |
| US6433835B1 (en) | 1998-04-17 | 2002-08-13 | Encamera Sciences Corporation | Expanded information capacity for existing communication transmission systems |
| US6788882B1 (en) | 1998-04-17 | 2004-09-07 | Timesurf, L.L.C. | Systems and methods for storing a plurality of video streams on re-writable random-access media and time-and channel- based retrieval thereof |
| US6590588B2 (en) | 1998-05-29 | 2003-07-08 | Palm, Inc. | Wireless, radio-frequency communications using a handheld computer |
| US6286061B1 (en) | 1998-06-02 | 2001-09-04 | Philips Electronics North America Corporation | System for applying a tag to a frame based on certain characteristics of the frame and transferring the frame as a function of the tag |
| US6229532B1 (en) | 1998-06-11 | 2001-05-08 | Sony Corporation | Method and apparatus for building a uniform resource locator menu in an Internet television system |
| US6698020B1 (en) | 1998-06-15 | 2004-02-24 | Webtv Networks, Inc. | Techniques for intelligent video ad insertion |
| JP3907839B2 (ja) | 1998-06-17 | 2007-04-18 | 松下電器産業株式会社 | 放送システム |
| US6400407B1 (en) | 1998-06-17 | 2002-06-04 | Webtv Networks, Inc. | Communicating logical addresses of resources in a data service channel of a video signal |
| US6100941A (en) | 1998-07-28 | 2000-08-08 | U.S. Philips Corporation | Apparatus and method for locating a commercial disposed within a video data stream |
| JP3951464B2 (ja) | 1998-07-28 | 2007-08-01 | 株式会社日立製作所 | ディジタル信号処理装置 |
| US8577205B2 (en) | 1998-07-30 | 2013-11-05 | Tivo Inc. | Digital video recording system |
| US8380041B2 (en) | 1998-07-30 | 2013-02-19 | Tivo Inc. | Transportable digital video recorder system |
| US6233389B1 (en) | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
| US20020057893A1 (en) | 1998-08-11 | 2002-05-16 | Anthony Wood | Digital recording and playback |
| US6215526B1 (en) | 1998-11-06 | 2001-04-10 | Tivo, Inc. | Analog video tagging and encoding system |
| US6473778B1 (en) * | 1998-12-24 | 2002-10-29 | At&T Corporation | Generating hypermedia documents from transcriptions of television programs using parallel text alignment |
| US6480353B1 (en) | 1999-02-22 | 2002-11-12 | Seagate Technology Llc | Fixed disc drive cartridge and playback device |
| US6895166B1 (en) | 1999-03-15 | 2005-05-17 | Computer Prompting And Captioning Co. | Method and apparatus for encoding control data in a video data system |
| US6320621B1 (en) | 1999-03-27 | 2001-11-20 | Sharp Laboratories Of America, Inc. | Method of selecting a digital closed captioning service |
| US6850691B1 (en) | 1999-03-30 | 2005-02-01 | Tivo, Inc. | Automatic playback overshoot correction system |
| AU4057100A (en) | 1999-03-30 | 2000-10-16 | Tivo, Inc. | Multimedia schedule presentation system |
| US6694200B1 (en) | 1999-04-13 | 2004-02-17 | Digital5, Inc. | Hard disk based portable device |
| US6266094B1 (en) | 1999-06-14 | 2001-07-24 | Medialink Worldwide Incorporated | Method and apparatus for the aggregation and selective retrieval of television closed caption word content originating from multiple geographic locations |
| US20010003184A1 (en) | 1999-07-16 | 2001-06-07 | Ching Jamison K. | Methods and articles of manufacture for interfacing, advertising and navigating with internet television |
| US6349410B1 (en) | 1999-08-04 | 2002-02-19 | Intel Corporation | Integrating broadcast television pause and web browsing |
| EP1534004B1 (en) | 1999-08-26 | 2016-05-25 | Sony Europe Limited | Television display device and method of operating a television system |
| JP2003521851A (ja) | 1999-09-20 | 2003-07-15 | ティヴォ インク | クローズド・キャプション・タグ付けシステム |
| JP3659090B2 (ja) | 1999-10-29 | 2005-06-15 | 日本電信電話株式会社 | 電子情報流通システム及び電子情報流通プログラムを格納した記憶媒体及び電子情報流通方法 |
| US7159232B1 (en) | 1999-11-16 | 2007-01-02 | Microsoft Corporation | Scheduling the recording of television programs |
| US6351596B1 (en) | 2000-01-07 | 2002-02-26 | Time Warner Entertainment Co, Lp | Content control of broadcast programs |
| US7028071B1 (en) | 2000-01-28 | 2006-04-11 | Bycast Inc. | Content distribution system for generating content streams to suit different users and facilitating e-commerce transactions using broadcast content metadata |
| US7028327B1 (en) | 2000-02-02 | 2006-04-11 | Wink Communication | Using the electronic program guide to synchronize interactivity with broadcast programs |
| WO2001058121A1 (en) | 2000-02-04 | 2001-08-09 | Homerelay Communications, Inc. | Method and apparatus for conducting long distance telephone calls in association with an advertisement system |
| WO2001058151A2 (en) | 2000-02-04 | 2001-08-09 | Intel Corporation | Displaying enhanced content information on a remote control unit |
| AU2001239780A1 (en) | 2000-02-17 | 2001-08-27 | Minds@Work | Video content distribution system including an interactive kiosk, a portable content storage device, and a set-top box |
| US7120924B1 (en) | 2000-02-29 | 2006-10-10 | Goldpocket Interactive, Inc. | Method and apparatus for receiving a hyperlinked television broadcast |
| DE10195884T1 (de) | 2000-03-08 | 2003-03-27 | Gen Instrument Corp | Persönlicher Datenrecorder und Inbetriebnahme und Nutzung desselben |
| US7395546B1 (en) | 2000-03-09 | 2008-07-01 | Sedna Patent Services, Llc | Set top terminal having a program pause feature |
| JP2001268494A (ja) | 2000-03-15 | 2001-09-28 | Sony Corp | ハードディスク装置 |
| US20030174549A1 (en) | 2000-03-31 | 2003-09-18 | Yoshitaka Yaguchi | Recording format, recording device and reproducing device |
| US8296792B2 (en) | 2000-04-24 | 2012-10-23 | Tvworks, Llc | Method and system to provide interactivity using an interactive channel bug |
| US7877766B1 (en) | 2000-05-04 | 2011-01-25 | Enreach Technology, Inc. | Method and system of providing a non-skippable sub-advertisement stream |
| JP2001338242A (ja) | 2000-05-29 | 2001-12-07 | Nippon Telegr & Teleph Corp <Ntt> | 電子情報流通方法及びシステム及び電子情報流通プログラムを格納した記憶媒体 |
| US6832388B1 (en) | 2000-05-30 | 2004-12-14 | Jordan Du Val | Personal computer used in conjunction with television to display information related to television programming |
| US6442328B1 (en) | 2000-05-31 | 2002-08-27 | Keen Personal Media, Inc. | Digital video recorder connectable to an auxiliary interface of a set-top box that provides video data stream to a display device based on selection between recorded video signal received from the dig |
| US7140033B1 (en) | 2000-06-21 | 2006-11-21 | Bellsouth Intellectual Property Corporation | Methods and systems for controlling consumer electronics external devices via data delivered to a device |
| US6757675B2 (en) * | 2000-07-24 | 2004-06-29 | The Regents Of The University Of California | Method and apparatus for indexing document content and content comparison with World Wide Web search service |
| US20020054091A1 (en) | 2000-07-25 | 2002-05-09 | Tomsen Mai-Lan | Method and system to defer transactions conducted via interactive television |
| US7313802B1 (en) | 2000-07-25 | 2007-12-25 | Digeo, Inc. | Method and system to provide deals and promotions via an interactive video casting system |
| US7103908B2 (en) | 2000-07-25 | 2006-09-05 | Diego, Inc. | Method and system to save context for deferred transaction via interactive television |
| US20020013950A1 (en) | 2000-07-25 | 2002-01-31 | Tomsen Mai-Lan | Method and system to save context for deferred transaction via interactive television |
| US20060015904A1 (en) * | 2000-09-08 | 2006-01-19 | Dwight Marcus | Method and apparatus for creation, distribution, assembly and verification of media |
| US8122236B2 (en) | 2001-10-24 | 2012-02-21 | Aol Inc. | Method of disseminating advertisements using an embedded media player page |
| US6973256B1 (en) * | 2000-10-30 | 2005-12-06 | Koninklijke Philips Electronics N.V. | System and method for detecting highlights in a video program using audio properties |
| WO2002039739A1 (en) | 2000-11-08 | 2002-05-16 | Koninklijke Philips Electronics N.V. | Method and device for communicating a command |
| US6909837B1 (en) | 2000-11-13 | 2005-06-21 | Sony Corporation | Method and system for providing alternative, less-intrusive advertising that appears during fast forward playback of a recorded video program |
| US20030182414A1 (en) * | 2003-05-13 | 2003-09-25 | O'neill Patrick J. | System and method for updating and distributing information |
| US7870592B2 (en) | 2000-12-14 | 2011-01-11 | Intertainer, Inc. | Method for interactive video content programming |
| MXPA03007075A (es) | 2001-02-07 | 2004-01-29 | Infosphere Inc | Metodo y aparato para proporcionar una presentacion de los medios interactivos. |
| JP3738968B2 (ja) | 2001-02-20 | 2006-01-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 広告配信システム、広告配信管理システム、及び付加情報配信方法 |
| US20020124250A1 (en) | 2001-03-02 | 2002-09-05 | Proehl Andrew M. | Hybrid advertising broadcast method |
| US7143353B2 (en) | 2001-03-30 | 2006-11-28 | Koninklijke Philips Electronics, N.V. | Streaming video bookmarks |
| WO2002082699A1 (en) | 2001-04-05 | 2002-10-17 | Matsushita Electric Industrial Co., Ltd. | Data broadcast program ts (transport stream) transmission apparatus and method, data broadcast program transmission program, recording medium, delivery apparatus, and delivery system |
| US20030229893A1 (en) | 2001-04-26 | 2003-12-11 | Vito Sgaraglino | Multiple response means for interactive advertising and information systems |
| US20020194608A1 (en) * | 2001-04-26 | 2002-12-19 | Goldhor Richard S. | Method and apparatus for a playback enhancement system implementing a "Say Again" feature |
| US6996717B2 (en) | 2001-05-24 | 2006-02-07 | Matsushita Electric Industrial Co., Ltd. | Semi-fragile watermarking system for MPEG video authentication |
| US20050005308A1 (en) | 2002-01-29 | 2005-01-06 | Gotuit Video, Inc. | Methods and apparatus for recording and replaying sports broadcasts |
| US7266832B2 (en) * | 2001-06-14 | 2007-09-04 | Digeo, Inc. | Advertisement swapping using an aggregator for an interactive television system |
| JP2003015993A (ja) | 2001-06-28 | 2003-01-17 | Sony Corp | 情報処理装置および情報処理方法、記録媒体、並びにプログラム |
| US6980594B2 (en) | 2001-09-11 | 2005-12-27 | Emc Corporation | Generation of MPEG slow motion playout |
| US6957396B2 (en) | 2001-10-18 | 2005-10-18 | Sony Corporation | Graphic user interface for digital networks |
| US20030079224A1 (en) | 2001-10-22 | 2003-04-24 | Anton Komar | System and method to provide additional information associated with selectable display areas |
| JP2003152707A (ja) * | 2001-11-08 | 2003-05-23 | Nippon Hoso Kyokai <Nhk> | コンテンツ作成装置,コンテンツ再生装置,コンテンツ提供方法 |
| US20030122966A1 (en) | 2001-12-06 | 2003-07-03 | Digeo, Inc. | System and method for meta data distribution to customize media content playback |
| US7373651B2 (en) | 2001-12-17 | 2008-05-13 | Sedna Patent Services, Llc | Metadata structure for providing access to EPG features from within broadcast advertisements |
| CA2365731C (en) * | 2001-12-20 | 2008-09-23 | Ibm Canada Limited-Ibm Canada Limitee | Support for concurrent active sql statements having shared sql context information |
| US8086491B1 (en) * | 2001-12-31 | 2011-12-27 | At&T Intellectual Property I, L. P. | Method and system for targeted content distribution using tagged data streams |
| CN1628302A (zh) | 2002-02-05 | 2005-06-15 | 皇家飞利浦电子股份有限公司 | 指纹的有效存储器 |
| WO2003073758A1 (en) | 2002-02-27 | 2003-09-04 | Gemstar Development Corporation | Video clipping system and method |
| US7818764B2 (en) * | 2002-06-20 | 2010-10-19 | At&T Intellectual Property I, L.P. | System and method for monitoring blocked content |
| US7818763B2 (en) | 2002-06-25 | 2010-10-19 | Starz Entertainment, Llc | Video advertising |
| JP3743635B2 (ja) | 2002-07-30 | 2006-02-08 | ソニー株式会社 | 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム |
| GB0226648D0 (en) | 2002-11-15 | 2002-12-24 | Koninkl Philips Electronics Nv | Usage data harvesting |
| US20040122746A1 (en) | 2002-12-23 | 2004-06-24 | Charlier Michael L. | Method and system for direct purchase in response to a multi-media display |
| GB0303176D0 (en) | 2003-02-12 | 2003-03-19 | Video Networks Ltd | A system for capture and selective playback of broadcast programmes |
| US7694318B2 (en) * | 2003-03-07 | 2010-04-06 | Technology, Patents & Licensing, Inc. | Video detection and insertion |
| US7814523B2 (en) | 2003-03-19 | 2010-10-12 | International Business Machines Corporation | Apparatus and method for television viewer interest expression in advertiser goods and services |
| US20040261128A1 (en) | 2003-06-17 | 2004-12-23 | Pioneer Digital Technologies, Inc. | Method and apparatus for placement of auxiliary content in a stream of information |
| WO2005006768A1 (en) | 2003-06-20 | 2005-01-20 | Nielsen Media Research, Inc | Signature-based program identification apparatus and methods for use with digital broadcast systems |
| JP2006528859A (ja) | 2003-07-25 | 2006-12-21 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | オーディオとビデオを同期させるための指紋生成及び検出の方法及び装置 |
| US20050044561A1 (en) * | 2003-08-20 | 2005-02-24 | Gotuit Audio, Inc. | Methods and apparatus for identifying program segments by detecting duplicate signal patterns |
| US20050086705A1 (en) | 2003-08-26 | 2005-04-21 | Jarman Matthew T. | Method and apparatus for controlling play of an audio signal |
| US7886337B2 (en) | 2003-10-22 | 2011-02-08 | Nvidia Corporation | Method and apparatus for content protection |
| TW200516574A (en) * | 2003-11-06 | 2005-05-16 | Liteon It Corp | The method of recording and displaying the video and audio stream |
| KR100531622B1 (ko) * | 2003-12-05 | 2005-11-28 | 한국전자통신연구원 | 고속 패턴 저장 및 매칭 방법 |
| US7986913B2 (en) * | 2004-02-19 | 2011-07-26 | Landmark Digital Services, Llc | Method and apparatus for identificaton of broadcast source |
| US20050226601A1 (en) * | 2004-04-08 | 2005-10-13 | Alon Cohen | Device, system and method for synchronizing an effect to a media presentation |
| US7681141B2 (en) | 2004-05-11 | 2010-03-16 | Sony Computer Entertainment America Inc. | Fast scrolling in a graphical user interface |
| US20060013556A1 (en) | 2004-07-01 | 2006-01-19 | Thomas Poslinski | Commercial information and guide |
| JP4257269B2 (ja) | 2004-07-13 | 2009-04-22 | 日本電気株式会社 | メタデータ送信装置及びメタデータ受信装置 |
| US8566879B2 (en) * | 2004-09-28 | 2013-10-22 | Sony Corporation | Method and apparatus for navigating video content |
| US20060089843A1 (en) | 2004-10-26 | 2006-04-27 | David Flather | Programmable, interactive task oriented hotspot, image map, or layer hyperlinks within a multimedia program and interactive product, purchase or information page within a media player, with capabilities to purchase products right out of media programs and/ or media players |
| WO2006055920A2 (en) | 2004-11-19 | 2006-05-26 | Tivo Inc. | Method and apparatus for secure transfer of previously broadcasted content |
| US8768146B2 (en) * | 2005-10-24 | 2014-07-01 | Microsoft Corporation | Strategies for controlling presentation of media information based on a sampling of customer playback behavior |
| JP4843449B2 (ja) | 2005-12-02 | 2011-12-21 | ソニー株式会社 | コンテンツ送受再生方法および受信再生端末 |
| US8161412B2 (en) | 2006-01-13 | 2012-04-17 | At&T Intellectual Property I, L.P. | Systems, methods, and computer program products for providing interactive content |
| MX2007015979A (es) * | 2006-03-31 | 2009-04-07 | Nielsen Media Res Inc | Metodos, sistemas y aparato para medicion de multiples fines. |
| US20080010130A1 (en) | 2006-06-15 | 2008-01-10 | Nokia Corporation | Auctions for widget space |
| US7661121B2 (en) | 2006-06-22 | 2010-02-09 | Tivo, Inc. | In-band data recognition and synchronization system |
| US7873982B2 (en) | 2006-06-22 | 2011-01-18 | Tivo Inc. | Method and apparatus for creating and viewing customized multimedia segments |
| US8261300B2 (en) | 2006-06-23 | 2012-09-04 | Tivo Inc. | Method and apparatus for advertisement placement in a user dialog on a set-top box |
| US7703120B2 (en) | 2006-09-13 | 2010-04-20 | Cisco Technology, Inc. | Set-top box initiated contact center interaction |
| JP2008098960A (ja) | 2006-10-12 | 2008-04-24 | Funai Electric Co Ltd | 情報記録再生装置 |
| CN101523911B (zh) | 2006-10-31 | 2013-08-28 | Tivo有限公司 | 用于将辅助节目数据下载到dvr的方法和装置 |
| US20080104199A1 (en) | 2006-10-31 | 2008-05-01 | Yahoo! Inc. | Identity and preference management via universal identifier |
| US8046803B1 (en) | 2006-12-28 | 2011-10-25 | Sprint Communications Company L.P. | Contextual multimedia metatagging |
| US20090052870A1 (en) | 2007-08-22 | 2009-02-26 | Time Warner Cable Inc. | Apparatus And Method For Remote Control Of Digital Video Recorders And The Like |
| US20090241158A1 (en) | 2008-03-18 | 2009-09-24 | Avaya Technology Llc | Open cable application platform set-top box (stb) personal profiles and communications applications |
| TW201002069A (en) | 2008-06-18 | 2010-01-01 | Chung Hsin Elec & Mach Mfg | System of using set-top-box to obtain advertisement information |
| US8438596B2 (en) | 2009-04-08 | 2013-05-07 | Tivo Inc. | Automatic contact information transmission system |
| US20100280876A1 (en) | 2009-04-30 | 2010-11-04 | Microsoft Corporation | Implicit rating of advertisements |
| US8929718B2 (en) | 2011-09-14 | 2015-01-06 | Viacom International Inc. | Systems and methods for providing online advertisements |
-
2006
- 2006-06-22 US US11/473,543 patent/US7661121B2/en active Active
- 2006-06-23 CA CA2653558A patent/CA2653558C/en active Active
- 2006-06-23 CN CN2006800550560A patent/CN101473648B/zh active Active
- 2006-06-23 AU AU2006344735A patent/AU2006344735C1/en active Active
- 2006-06-23 ES ES06773937T patent/ES2381760T3/es active Active
- 2006-06-23 PT PT06773937T patent/PT2036343E/pt unknown
- 2006-06-23 EP EP11195319.6A patent/EP2506595B1/en active Active
- 2006-06-23 JP JP2009516470A patent/JP5060552B2/ja active Active
- 2006-06-23 EP EP11195360.0A patent/EP2434756B1/en active Active
- 2006-06-23 AT AT06773937T patent/ATE546014T1/de active
- 2006-06-23 CN CN201110041816.5A patent/CN102098478B/zh active Active
- 2006-06-23 WO PCT/US2006/024688 patent/WO2007149100A2/en not_active Ceased
- 2006-06-23 EP EP06773937A patent/EP2036343B1/en active Active
-
2009
- 2009-10-01 US US12/572,032 patent/US8146130B2/en active Active
- 2009-10-01 US US12/572,037 patent/US8572669B2/en active Active
-
2011
- 2011-01-04 AU AU2011200011A patent/AU2011200011B2/en not_active Expired - Fee Related
-
2012
- 2012-03-29 JP JP2012078314A patent/JP5250129B2/ja active Active
- 2012-03-29 JP JP2012078313A patent/JP5250128B2/ja active Active
-
2013
- 2013-10-29 US US14/066,613 patent/US9100670B2/en active Active
-
2015
- 2015-08-04 US US14/818,278 patent/US10153000B2/en active Active
-
2018
- 2018-11-13 US US16/188,494 patent/US10991394B2/en active Active
-
2021
- 2021-03-26 US US17/214,210 patent/US11825144B2/en active Active
-
2023
- 2023-11-21 US US18/515,783 patent/US20240276050A1/en not_active Abandoned
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2381760T3 (es) | Sincronización de contenido multimedia con eventos basados en el reconocimiento de secuencias de valores de clave calculada. | |
| ES2523135T3 (es) | Procedimiento y dispositivo para visualizar segmentos multimedia personalizados | |
| HK1155873B (en) | A method and an apparatus for processing in-band data at a multimedia device |