ES2159509T5 - Aparato y metodo para utilizar codigos comprimidos para programar la grabacion de programas de television. - Google Patents

Aparato y metodo para utilizar codigos comprimidos para programar la grabacion de programas de television. Download PDF

Info

Publication number
ES2159509T5
ES2159509T5 ES92922394T ES92922394T ES2159509T5 ES 2159509 T5 ES2159509 T5 ES 2159509T5 ES 92922394 T ES92922394 T ES 92922394T ES 92922394 T ES92922394 T ES 92922394T ES 2159509 T5 ES2159509 T5 ES 2159509T5
Authority
ES
Spain
Prior art keywords
channel
time
orders
code
recording
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES92922394T
Other languages
English (en)
Other versions
ES2159509T3 (es
Inventor
Henry C. Yuen
Daniel S. Kwoh
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gemstar Development LLC
Original Assignee
Gemstar Development LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=27117897&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2159509(T5) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Gemstar Development LLC filed Critical Gemstar Development LLC
Publication of ES2159509T3 publication Critical patent/ES2159509T3/es
Application granted granted Critical
Publication of ES2159509T5 publication Critical patent/ES2159509T5/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01HELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
    • H01H9/00Details of switching devices, not covered by groups H01H1/00 - H01H7/00
    • H01H9/02Bases, casings, or covers
    • H01H9/0214Hand-held casings
    • H01H9/0235Hand-held casings specially adapted for remote control, e.g. of audio or video apparatus
    • H01H9/025Stands or organisers to facilitate location or operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Details Of Television Systems (AREA)
  • Selective Calling Equipment (AREA)
  • Television Signal Processing For Recording (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

LA INFORMACION (10) DE LA PREPROGRAMACION DEL TEMPORIZADOR (40) DE UN APARATO PARA LA GRABACION/REPRODUCCION DE VIDEO (44, 370, 964, 991) LISTADA EN UN CALENDARIO DE TELEVISION (FIG. 8) PERMITE UNA MEJORA EN LA PREPROGRAMACION DEL TEMPORIZADOR EN UN GRABADOR DE CASSETTES DE VIDEO VCR (44, 370, 964, 991) QUE SE PROGRAMA UTILIZANDO UN CODIGO COMPRIMIDO DE TAN SOLO ENTRE UNO Y OCHO DIGITOS, QUE SON DESCODIFICADOS MEDIANTE UN DESCODIFICADOR (954) CONSTRUIDO EN EL INTERIOR DE LA TELEVISION (48, 950) PARA CONVERTIR EL CODIGO COMPRIMIDO EN INFORMACION DE CANAL, FECHA, HORA Y LONGITUD. LAS INDICACIONES DE CODIGO COMPRIMIDO ASOCIADAS CON CADA PROGRAMA DE TELEVISION PUEDEN IMPRIMIRSE EN UN CALENDARIO DE PROGRAMAS DE TELEVISION CON ANTELACION. EL USUARIO PODRIA USAR EL CONTROL REMOTO (956) O LOS CONTROLES DE LA TELEVISION (48, 950) PARA INTRODUCIR EL CODIGO QUE SIGNIFICA QUE EL PROGRAMA SERA GRABADO. CUANDO LOS CODIGOS SON INTRODUCIDOS SON TRANSMITIDOS A LA TELEVISION (48, 950) Y POSTERIORMENTE DESCODIFICADOS EN LA TELEVISION (48, 950) Y ENTONCES LOS CODIGOS MISMOS Y LA INFORMACION DE CDTL, QUE ES EL RESULTADO DE LA DESCODIFICACION DE LOS CODIGOS, PUEDE MOSTRARSE SOBRE LA PANTALLA DE MANERA QUE EL USUARIO PUEDA VERIFICAR QUE SE HAN INTRODUCIDO LOS CODIGOS APROPIADOS.

Description

Aparato y método para utilizar códigos comprimidos para programar la grabación de programas de televisión.
Esta invención está relacionada, en general, con sistemas de grabación de cassettes de vídeo y, particularmente, con la característica de preprogramación del temporizador de los grabadores de cassettes de vídeo (aparatos de vídeo) y con un aparato y un método para utilizar información codificada que acorte el tiempo requerido para efectuar una preprogramación del temporizador y con un aparato y un método de incorporar la descodificación de la información codificada en un receptor de televisión, un grabador de cassettes de vídeo, una caja para cable y un receptor de satélites.
El grabador de cassettes de vídeo (aparato de vídeo) tiene varios usos, que incluyen la reproducción de cintas filmadas por una cámara de vídeo, reproducción de cintas pregrabadas y la grabación y reproducción de programas de difusión hertziana y televisión por cable.
Para grabar un programa de televisión antes de verlo, se utiliza frecuentemente un proceso en dos operaciones: (1) obtener la información correcta de canal, fecha, hora y duración (CDTL) a partir de una guía de programas de televisión, y (2) programar esta información CDTL en el aparato de vídeo. Dependiendo del modelo, año y tipo del aparato de vídeo, la información CDTL puede ser programada de varias formas, que incluyen: (i) pulsar una secuencia apropiada de botones en la consola de acuerdo con las instrucciones contenidas en el manual de usuario, (ii) pulsar una secuencia apropiada de botones en una unidad manual de mando a distancia, de acuerdo con las instrucciones contenidas en el manual de usuario (programación a distancia), y (iii) ejecutar una serie de pulsaciones de botones en la unidad manual de mando a distancia como respuesta a un menú que se presenta en la pantalla de televisión (programación en pantalla). Han sido sugeridas otras técnicas de preprogramación que incluyen: (iv) lectura de cierta información de código de barras utilizando un lápiz de luz (programación por lápiz de luz), y (v) introducir instrucciones a través de un ordenador o un módem telefónico. Estos diversos métodos difieren solamente en el medio físico de especificar la información, mientras que el contenido, que es la CDTL y ciertas órdenes de activación/desactivación de alimentación/reloj/temporizador son, generalmente, comunes, aunque el protocolo detallado puede variar con los distintos modelos del aparato de vídeo.
Los métodos (i) y (ii) descritos anteriormente pueden requerir hasta 100 pulsaciones de botones, lo que ha impedido la libre utilización de las características de preprogramación del temporizador de los aparatos de vídeo. Para aliviar esto, los nuevos modelos de aparatos de vídeo han incluido la característica de "Programación en pantalla", la cual permite la introducción a distancia de información CDTL como respuesta a un menú presentado en la pantalla de televisión. Generalmente, la programación en pantalla de la información CDTL requiere un promedio de 18 pulsaciones de botones, que es inferior a algunos de los métodos anteriores, pero que es todavía considerable. Algunas de las demás técnicas, tales como la (i) anterior, requieren el uso de equipos especiales, tales como un lector de código de barras.
La solicitud de patente PCT núm. WO-A-90/07844 describe un aparato y un método para utilizar información codificada de preprogramación del temporizador de un grabador/reproductor de vídeo.
La información codificada de preprogramación del temporizador del grabador/reproductor de vídeo que aparece en una guía de televisión, permite programar la característica de preprogramación del temporizador en un grabador de cassettes de vídeo (aparatos de vídeo) utilizando un código comprimido de solamente 1 hasta sólo 7 dígitos, que es descodificado por un descodificador construido dentro del grabador de cassettes de vídeo o bien de un mando a distancia, para convertir el código comprimido en información de canal, fecha, hora y duración. La información de canal, fecha, hora y duración es comunicada a un aparato de vídeo y utilizada para activar automáticamente el aparato de vídeo para grabar un programa dado de televisión con los correspondientes canal, fecha, hora y duración. Alternativamente, la información de canal, fecha, hora y duración es descodificada directamente en un mando a distancia y solamente se envían al aparato de vídeo las órdenes de inicio de la grabación, fin de la grabación y selección del canal, a las horas apropiadas. Los códigos comprimidos asociados con cada programa de televisión pueden ser impresos en una guía de programas de televisión con antelación y utilizados con un aparato de vídeo o un mando a distancia con los medios de descodificación. Los códigos comprimidos para la preprogramación del temporizador pueden ser utilizados para solo un programa o, repetidamente, para uso diario o semanal. El algoritmo para descodificar los códigos comprimidos puede ser una función del tiempo para asegurar la seguridad del método de descodificación. Se incluye un método para utilizar los códigos comprimidos con los canales por cable, y se describe un método y un aparato para la preprogramación del temporizador para un gran número de programas. La técnica de codificación puede utilizarse también para codificación comprimida de cualquier vector multidimensional para aplicaciones comerciales o industriales.
La solicitud de patente PCT núm. WO-A-91/07050 describe un sistema que hace de interfaz entre un descodificador de televisión por cable y un aparato de vídeo que incorpora un sistema de programación de televisión. La señal de cable es alimentada por cable al descodificador de cable y la salida descodificada del descodificador es alimentada al aparato de vídeo por cable en un canal fijo. El aparato de vídeo recibe órdenes desde su mando a distancia. Entre el aparato de vídeo y el descodificador de cable hay conectado un emulador de mando a distancia de descodificador de cable. Todos los códigos de selección de canales suministrados al aparato de vídeo por su mando a distancia son convertidos por el emulador de mando a distancia en códigos de órdenes reconocidos por el descodificador de cable. El emulador de mando a distancia suprime también la ejecución de los códigos de selección de canales suministrados al aparato de vídeo, con el fin de mantener sintonizado el aparato de vídeo al canal fijo sobre el cual se alimenta la señal de cable descodificada. El emulador de mando a distancia acciona un emisor de infrarrojos, que está situado en frente de una entrada de infrarrojos en el descodificador de cable. Así, el emulador de mando a distancia sustituye al mando a distancia convencional del descodificador de cable. El usuario se comunica con el sistema utilizando el mando a distancia del aparato de vídeo. Para el usuario, el sistema parece funcionar de la misma manera que lo haría el aparato de vídeo conectado al televisor sin haber presente un descodificador de cable.
La patente de Estado Unidos núm. 4.706.121 y la solicitud de patente europea núm. EP-A-0 254 927 describen sistemas en los que un televisor tiene un sistema de control para controlar un aparato de vídeo externo o un receptor externo de satélites de televisión.
En general, el estado de la técnica actual adolece de varios inconvenientes. Primero, el procedimiento para ajustar el aparato de vídeo para que grabe con antelación puede ser muy complejo y confuso y difícil de aprender; en realidad, debido a esto, muchos usuarios evitan utilizar la característica de grabación por preprogramación del temporizador. En segundo lugar, la transcripción de la información CDTL al aparato de vídeo rara vez está libre de errores; en realidad, muchos usuarios de características de preprogramación del temporizador del aparato de vídeo expresan su preocupación por la alta incidencia de errores de programación. En tercer lugar, incluso para usuarios experimentados, el proceso de introducir una secuencia larga de información sobre el canal, fecha, hora y duración del programa deseado puede llegar a ser tediosa. En cuarto lugar, las técnicas tales como lectura de información en código de barras o utilización de un ordenador, requieren equipos especiales. Estos inconvenientes han creado un impedimento serio en la utilización de un aparato de vídeo como dispositivo de grabación para programas de televisión. El efecto es que la observación en diferido de los programas no se ha hecho tan popular como alguna vez se pensó que lo haría. Consecuentemente, hay una necesidad en la técnica de un sistema más sencillo para efectuar la preprogramación del temporizador que permita al usuario aprovechar la ventaja de la característica de grabación de un aparato de vídeo de manera más completa y libre.
De acuerdo con la invención, se proporciona un aparato para utilizar códigos comprimidos para la preprogramación de un grabador de acuerdo con la reivindicación 1.
De acuerdo con la presente invención, se proporciona también un aparato para utilizar códigos comprimidos para la preprogramación de un grabador de acuerdo con la reivindicación 2.
De acuerdo con la invención, se ofrece además un método para permitir preprogramar los programas para ser grabados en un grabador para su observación en diferido, de acuerdo con la reivindicación 11.
De acuerdo con la invención, se ofrece además un método para permitir preprogramar los programas en un grabador para su observación en diferido, de acuerdo con la reivindicación 12.
A continuación se describirán métodos y aparatos para utilizar códigos comprimidos para la preprogramación de un grabador, a modo de ejemplo, con referencia a los dibujos que se acompañan, en los cuales:
Breve descripción de los dibujos
La figura 1 es un esquema que ilustra el aparato de acuerdo con esta invención con los medios descodificadores de código incorporados en el grabador de cassettes de vídeo.
La figura 2 es un esquema de los procesadores incorporados en un aparato de vídeo para control de órdenes y descodificación de código.
La figura 3 es un esquema que ilustra un modo de realización preferido de acuerdo con esta invención con los medios de descodificación de código incorporados en un mando a distancia.
La figura 4 es un esquema de un procesador incorporado en el mando a distancia.
La figura 5 es un esquema de un mando a distancia universal con los medios de descodificación de código incorporados en el mando a distancia universal.
La figura 6 es un gráfico de flujo de la técnica de descodificación de código G.
La figura 7 es un gráfico de flujo de la técnica de codificación de código G.
La figura 8 es una ilustración de parte de un calendario de televisión de acuerdo con esta invención.
La figura 9 es un diagrama de flujo para descodificar los canales de cable.
La figura 10 es un diagrama de flujo para codificar los canales de cable.
\newpage
La figura 11 es un diagrama de flujo de la descodificación del código G para los canales de cable, incluyendo la conversión del número de canal de cable asignado al número de canal de la operadora de cable local.
La figura 12 es un medio para descodificar, incluyendo una memoria apilada.
La figura 13 es un diagrama de flujo para la introducción de programas en la memoria apilada.
La figura 14 es un diagrama de flujo de operaciones para enviar programas desde el mando a distancia a la unidad principal del aparato de vídeo.
La figura 15 es una vista en perspectiva de un aparato para utilizar códigos comprimidos para la preprogramación del grabador, de acuerdo con un modo de realización preferido de la invención.
La figura 16 es una vista frontal del aparato de la figura 15 que ilustra un diodo emisor de luz que mira hacia adelante.
La figura 17 es una vista en perspectiva del aparato de la figura 15, colocado en un soporte de montaje.
La figura 17A es una vista frontal del alzado del aparato de la figura 15 colocado en el soporte de montaje según se ilustra en la figura 17.
La figura 18 es un detalle del visor de LCD del aparato de la figura 15.
La figura 19 es una vista en perspectiva que ilustra una manera de colocar el aparato de la figura 15 con relación a una caja para cable y a un aparato de vídeo.
La figura 20 es una vista en perspectiva que ilustra una manera de colocar el soporte de montaje con el aparato de la figura 15 montado en él, cerca de una caja para cable y de un aparato de vídeo.
La figura 21 es un esquema que ilustra el aparato para utilizar códigos comprimidos para la preprogramación del grabador, de acuerdo con un modo de realización preferido de la invención.
La figura 22 es un esquema detallado que ilustra un modo de realización preferido del aparato que materializa el esquema de la figura 21.
La figura 23 es un diagrama de flujo para la introducción de programas en el aparato de la figura 15.
La figura 24 es un diagrama de flujo para la revisión y cancelación de programas introducidos en el aparato de la figura 15.
La figura 25 es un diagrama de flujo para ejecutar la preprogramación del grabador utilizando códigos comprimidos de acuerdo con un modo de realización preferido de la invención.
La figura 26 es un diagrama de flujo para codificar la información de canal, fecha, hora y duración del programa en códigos decimales comprimidos.
La figura 27 es un diagrama de flujo para descodificar códigos decimales comprimidos en información de canal, fecha, hora y duración del programa.
La figura 28 es un modo de realización de una tabla de número de canal asignado/número de canal local.
La figura 29 es un diagrama de bloques de un sistema que incluye un televisor que tiene un descodificador de código G.
La figura 30 es un esquema de un televisor que tiene un descodificador de código G.
La figura 31 es un esquema que ilustra el aparato para un descodificador de código G en un televisor que tiene descodificación de código G.
La figura 32 es un diagrama de bloques de un sistema que incluye un televisor que tiene un descodificador de código G, un aparato de vídeo, una caja para cable y un receptor de satélite.
La figura 33 es un diagrama de bloques de un sistema que incluye un aparato de vídeo que tiene un descodificador de código G, un televisor, una caja para cable y un receptor de satélite.
La figura 34 es un diagrama de bloques de un sistema que incluye una caja para cable que tiene un descodificador de código G, un televisor, un aparato de vídeo y un receptor de satélite.
La figura 35 es un diagrama de bloques de un sistema que incluye un receptor de satélite que tiene un descodificador de código G, un televisor, un aparato de vídeo y una caja para cable.
La figura 36 es una vista en perspectiva que ilustra una caja para cable colocada en la parte superior de un aparato de vídeo, que tiene un transmisor de infrarrojos detrás del panel frontal, que se comunica con el receptor de infrarrojos de la caja para cable por reflexión.
La figura 37 es una vista en perspectiva que ilustra una caja para cable colocada en la parte superior de un aparato de vídeo, que tiene un transmisor de infrarrojos dentro de una bóveda de infrarrojos en la parte superior del aparato de vídeo, que se comunica con el receptor de infrarrojos de la caja para cable.
La figura 38 es una vista en perspectiva de un aparato de vídeo que tiene un transmisor de infrarrojos dentro de un ratón, acoplado a través de un cable al aparato de vídeo, estando situado el ratón cerca del receptor de infrarrojos de la caja para cable.
La figura 39 es una vista en perspectiva de un aparato de vídeo que tiene un transmisor de infrarrojos dentro de un ratón en miniatura, acoplado por medio de un cable a un aparato de vídeo, estando el ratón en miniatura pegado en la caja para cable, cerca del receptor de infrarrojos.
Descripción de los modos de realización preferidos
Haciendo referencia ahora a los dibujos y, más en particular, a la figura 1, se ilustra un aparato para utilizar información 10 de preprogramación codificada del temporizador de un grabador/reproductor de vídeo, de acuerdo con esta invención. Los componentes principales incluyen un mando a distancia 12 y un grabador/reproductor de cassettes de vídeo con un descodificador 14 de código G, que puede ser controlado por el mando a distancia 12, mediante una señal 16 de órdenes. El mando a distancia 12 puede tener varios botones que incluyen botones numéricos 20, un conmutador 22 de código G, botones 24 de función, botón 26 de programa y un botón 27 de alimentación. Existen medios en el mando a distancia 12 que interpretan cada botón cuando se pulsa y envían la señal 16 de ordenes apropiada al aparato de vídeo a través de un diodo 28 emisor de luz de infrarrojos. Excepto el conmutador 22 de código G del mando a distancia 12 de la figura 1, el mando a distancia 12 es esencialmente el mismo que cualquier otro mando a distancia en cuanto a funcionalidad. El conmutador 22 de código G se ofrece sólo para permitir al usuario enclavar el mando a distancia 12 en el modo de código G cuando se utiliza un código G, que es el nombre dado al código comprimido que es la información CDTL, para realizar la preprogramación del temporizador.
Un código G consiste en 1 a 7 dígitos, aunque podrían utilizarse más, y está asociado con un programa en particular. Un usuario consultaría el código G en una guía de programas e introduciría justamente el código G en el mando a distancia 12, en lugar del estado de la técnica actual, que requiere que el usuario introduzca las órdenes reales de canal, fecha, hora y duración (CDTL).
Con el fin de comprender las ventajas de utilizar el código G, es útil describir lo mejor del estado de la técnica actual, que es la "programación en pantalla" con introducción numérica directa. Esta técnica implica alrededor de 18 pulsaciones de botones y el usuario tiene que mantener su vista cambiándola entre la pantalla de televisión y el mando a distancia mientras introduce la información CDTL. Esta situación puede ser semejante a un usuario que tenga que marcar un número de teléfono de 18 dígitos al tiempo que lo lee de una guía de teléfonos. El número de botones implicados y la conmutación de la vista de un lado a otro tienden a inducir errores. Una secuencia de marcación típica para grabación por temporizador utilizando la programación CDTL en pantalla es como sigue:
PROG 2 1 15 07 30 2 08 00 2 04 PROG
El primer botón 26 de programa (PROG) introduce el modo de programación. Después se pulsa una secuencia de botones numéricos 20. El 2 significa que es grabación por temporizador en lugar de ajuste de la hora. El 1 significa que el usuario está introduciendo ahora los ajustes para el programa 1. El 15 es la fecha. El 07 es la hora de comienzo. El 30 es el minuto de comienzo. El 2 significa que es por la tarde. La siguiente secuencia 08 00 2 es la hora de finalización. El 04 es el número de canal. Finalmente, se pulsa de nuevo PROG para salir del modo de programación.
Como contraste, esta orden podría haber sido "codificada" e introducida en una secuencia típica de código G como sigue: PROG 1138 PROG. Para distinguir que la orden es un código G codificado, el interruptor 22 de código G debe estar puesto en la posición "ON" (activado). En lugar de tener un interruptor, puede utilizarse un botón "G" independiente. La secuencia de pulsaciones de programación de código G sería entonces: G 1138 PROG.
La utilización de un código G no impide la confirmación "en pantalla" de que se ha introducido. Cuando se introducen las pulsaciones "PROG 1138 PROG" con el interruptor de código G en la posición "ON", el código G sería descodificado y el televisor podría presentar el mensaje siguiente:
PROGRAMA FECHA HORA INICIO HORA FINALIZACIÓN CANAL
1138 15 7:30 TARDE 8:00 TARDE 4
Con el fin de que el código G sea útil, debe ser descodificado y debe ofrecerse el aparato para ese fin. Haciendo referencia a la figura 1, se proporciona un grabador/reproductor de cassettes de vídeo con un descodificador 14 de código G, para ser utilizado conjuntamente con el mando a distancia 12. La señal 16 de órdenes enviada desde el mando a distancia 12 es detectada por el fotodiodo 32 y convertida en señales eléctricas por el receptor 30 de señales de órdenes. Las señales eléctricas son enviadas a un controlador 36 de órdenes, que interpreta las órdenes y determina cómo responder a las órdenes. Como se ilustra en la figura 1, también es posible que el controlador 36 de órdenes reciba órdenes desde los controles manuales 34 que están, normalmente, integrados en un aparato de vídeo. Si el controlador 36 de órdenes determina que se ha recibido un código G, este código G será enviado al descodificador 38 de código G para su descodificación. El descodificador 38 de código G convierte el código G en información CDTL que es utilizada por el controlador 36 de órdenes para establecer la programación 40 de hora/canal. Existe un reloj 42 incorporado en el aparato de vídeo. Este reloj se ofrece normalmente en un aparato de vídeo y se utiliza para mantener la fecha y la hora. El reloj 42 se utiliza principalmente por la programación 40 de hora/canal y las funciones del descodificador 38 de código G. La función de programación 40 de hora/canal es establecida con la información CDTL por el controlador 36 de órdenes. Cuando se lee la fecha y hora apropiada del reloj 42, la función de programación 40 de hora/canal activa la función "ON" de grabación/reproducción 44 para que grabe. Al mismo tiempo, el sintonizador 46 es sintonizado al canal apropiado en la señal 18 de televisión. Después, el usuario puede pasar la función de grabación/reproducción 44 a un modo de reproducción para ver el programa a través del monitor 48 de
televisión.
Un modo alternativo de controlar el grabador es hacer que el controlador 36 de órdenes mantenga toda la información CDTL en lugar de enviarla a la programación 40 de hora/canal. El controlador de órdenes mantendría la hora leyendo periódicamente el reloj 42. El controlador de órdenes enviaría entonces órdenes a la programación 40 de hora/canal para activar y desactivar el grabador y al sintonizador 46 para hacer que sintonice el canal correcto a la hora correcta, de acuerdo con la información CDTL.
El reloj 42 es también una entrada al descodificador 38 de código G, lo cual permite que la descodificación de código G sea una función del reloj, que confiere una medida de seguridad a la técnica de descodificación y la hace más difícil de copiar. Naturalmente, esto requiere que la técnica de codificación sea también una función del reloj.
En la figura 2 se ilustra una posible realización del controlador 36 de órdenes y del descodificador 38 de código G. La función del controlador 36 de órdenes puede realizarse con un microprocesador 50, una memoria 52 de acceso aleatorio y una memoria 54 de sólo lectura, que se utiliza para almacenamiento de programas. La función de entrada/salida 56 está adaptada para recibir órdenes procedentes del receptor 30 de señales de órdenes, de los controles manuales 34 y del reloj 42, y para dar como salida señales para un visor 35, al reloj 42 y a la función de programación 40 de hora/canal. Si el microprocesador 50 interpreta que se ha recibido un código G, este código G es enviado al microcontrolador 60 para su descodificación. El microcontrolador 60 tiene incorporadas una memoria 62 de acceso aleatorio y una memoria 64 de solo lectura para almacenamiento de programas y tablas. El reloj 42 puede ser leído por el microprocesador 50 y por el microcontrolador 60.
Una alternativa a la de hacer que el microcontrolador 60 realice la descodificación del código G es incorporar la descodificación de código G directamente en el programa almacenado en la memoria 54 de sólo lectura. Esto eliminaría la necesidad del microcontrolador 60. Naturalmente, podría utilizarse otro hardware para efectuar la descodificación del código G. La elección de cual de las realizaciones hay que utilizar es principalmente económica.
Los bloques de las figuras 1 y 2 son bien conocidos en la técnica anterior y están presentes en las patentes siguientes: patente núm. 4.481.412 de Fields, patente núm. 4.519.003 de Scholz, y patente núm. 4.631.601 de Brugliera. Por ejemplo, el reloj 42 es análogo al elemento 7 de la patente de Scholz y el elemento 17 de la de Brugliera. Otros elementos análogos son: receptor 30 de señales de órdenes y los elementos 14 de Scholz y 12 de Brugliera; el sintonizador 46 con los elementos 6 de Scholz y 10 de Brugliera; la programación 40 de hora/canal y los elementos 8, 11 de Scholz y 16 de Brugliera; grabación y reproducción 44 y los elementos 1, 2, 4 de Scholz; el controlador 36 de órdenes y los elementos 11, 10 de Scholz y 12 de Brugliera; el microprocesador 50 y el elemento 27 de Fields; la RAM 52 y el elemento 34 de Fields; la ROM 54 y el elemento 33 de Fields; los controles manuales 34 y los elementos 15, 16 de Scholz; y el mando a distancia 12 y el elemento 26 de Scholz y el 18 de Brugliera.
La figura 3 ilustra un modo de realización preferido alternativo de esta invención. En la figura 3 se proporciona un mando a distancia con un descodificador 80 de código G incorporado. El mando a distancia con el descodificador 80 de código G incorporado es muy similar al mando a distancia 12, excepto el añadido del descodificador 82 de código G. Obsérvese que es posible también ofrecer un visor 84 en cualquier mando a distancia. El mando a distancia con el descodificador 80 de código G incorporado se utilizaría conjuntamente con un grabador/reproductor 70 de cassettes de vídeo, al cual no se requeriría que tuviera incorporado un descodificador de código G. Las referencias numéricas de los subelementos de grabador/reproductor de cassettes de vídeo son las mismas que se describen anteriormente para el grabador/reproductor de cassettes de vídeo con el descodificador 14 de código G y tienen la misma función, excepto la ausencia del descodificador 38 de código G. Este modo de realización preferido tiene la ventaja que puede utilizarse conjuntamente con los aparatos de vídeo que se utilizan en la actualidad. Estos no tienen la capacidad de descodificación de código G. La sustitución de sus mandos a distancia por unos que tengan esta capacidad incorporada puede aumentar ampliamente la capacidad para realizar la preprogramación del temporizador con un coste modesto.
\newpage
La figura 4 ilustra una posible realización de un descodificador 82 de código G incorporado en el mando a distancia que tiene incluido un descodificador 80 de código G. Se puede utilizar un microprocesador 60, como antes, para descodificar el código G, así como para hacer de interfaz con el visor 84, un reloj 85 el teclado 88 y el diodo 28 emisor de luz. Alternativamente, se pueden utilizar otras realizaciones de hardware para efectuar la descodificación del código G. En el mando a distancia 80 se proporciona el reloj 85, de manera que pueda hacerse que el descodificador 82 de código G tenga el reloj 85 como una de sus entradas. Esto permite que la descodificación de código G sea una función del reloj 85, lo que confiere una medida de seguridad a la técnica de descodificación y lo hace más difícil de copiar.
El mando a distancia con descodificador de código G incorporado, como se ha descrito anteriormente, enviaría información de canal, fecha, hora y duración al grabador/reproductor 70 de cassettes de vídeo, que utilizaría la información CDTL para sintonizar el canal correcto e iniciar y detener la función de grabación. El mando a distancia podría tener que ser exclusivo para cada grabador/reproductor de cassettes de vídeo diferente, porque cada marca o modelo puede tener distintos impulsos de infrarrojos para cada tipo de información enviada, tal como los botones de número de canal y los botones de inicio de grabación y finalización de la grabación. Los impulsos particulares de infrarrojos utilizados para cada tipo de botón pueden ser denominados el vocabulario del mando a distancia en particular. Cada modelo puede tener también un protocolo u orden de pulsación de botones diferentes que sería necesario pulsar para conseguir una función tal como la preprogramación del temporizador. El protocolo u orden de las pulsaciones para conseguir una función pueden ser denominados estructura de sentencia. Si sólo se construye un mando a distancia para cada tipo de modelo, se puede incorporar directamente el vocabulario y la estructura de sentencia adecuados en el mando a distancia.
Como alternativa a la de hacer que el mando a distancia con descodificador de código G incorporado envíe información de canal, fecha, hora y duración al grabador/reproductor 70 de cassettes de vídeo, está la de hacer que el mando a distancia con descodificador de código G incorporado realice más operaciones para simplificar el problema de interfaz con los grabadores/reproductores de cassettes de vídeo existentes. En particular, si el mando a distancia realiza no solamente la descodificación de código G en CDTL, sino que también mantiene la hora a través del reloj 85, es posible entonces que envíe simplemente las órdenes de canal, inicio y finalización de la grabación al grabador/reproductor de cassettes de vídeo. Las órdenes de canal, inicio y finalización de grabación son, normalmente, órdenes básicas de uno o dos botones, lo cual significa que no hay implicados un protocolo o estructura de sentencia complicados. Por tanto, para comunicarse con una diversidad de modelos de grabadores/reproductores de cassettes de vídeo, solamente es necesario disponer de memoria dentro del mando a distancia, tal como la ROM 64 de la figura 4, para almacenar el protocolo de todos los modelos o, al menos, de un subconjunto grande. El código G se introduciría en el mando a distancia igual que antes y se descodificaría en información de canal, fecha, hora y duración, la cual sería almacenada en el mando a distancia. A través del reloj 85, se comprobaría la hora y, cuando llegue el momento correcto, el mando a distancia enviaría órdenes automáticamente a la unidad del aparato de vídeo para sintonizar el canal correcto y para iniciar y detener la grabación. Se estima que solamente se necesitan almacenar dos (2) bytes por cada botón, de aproximadamente 15 botones, para el vocabulario de cada modelo de grabador/reproductor de cassettes de vídeo. Por tanto, para cubrir 50 modelos se requeriría solamente alrededor de 30*50 = 1500 bytes de memoria en el mando a distancia. Sería necesario colocar el mando a distancia apropiadamente con respecto a la unidad del aparato de vídeo de manera que las señales de infrarrojos enviadas por el mando a distancia sean recibidas por la unidad.
Otro modo de realización preferido es proporcionar un mando a distancia universal 90 con un descodificador de código G incorporado. Los mandos a distancia universales ofrecen la capacidad de simular diversos mandos a distancia diferentes. Esto reduce el número de mandos a distancia que necesita tener un usuario. Esto se consigue disponiendo de un botón 94 de función de aprendizaje en el mando a distancia universal, como se ilustra en la figura 5. Si el botón 94 de función de aprendizaje se pulsa conjuntamente con otro botón, la unidad entrará en el modo de aprendizaje. Los impulsos entrantes de infrarrojo (IR) desde el mando a distancia que ha de aprenderse son detectados por el fotodiodo 96 de infrarrojos, filtrado y con forma de onda conformada en modelos de bits reconocibles, antes de ser grabados por un microcontrolador en una RAM estática con apoyo de batería, como el modelo particular de impulsos de IR para ese botón en particular. Esto se hace por medio de botones individuales.
Un ejemplo de aprendizaje más complejo es el siguiente. Si el botón 94 de la función de aprendizaje, conjuntamente con el botón 26 de programas, se pulsan cuando el interruptor de código G está en "ON", la unidad reconocerá que está a punto de grabar la secuencia de botones de un ejemplo específico predeterminado de preprogramación del temporizador del aparato de vídeo particular implicado. El usuario introduciría entonces la secuencia de pulsaciones a partir de la cual el mando a distancia universal 90 puede deducir y grabar el protocolo de la secuencia de preprogramación del temporizador. Esto es necesario debido a que los distintos aparatos de vídeo pueden tener diferentes formatos de órdenes de preprogramación del temporizador.
Si se pulsan botones sin implicar al botón 94 de la función de aprendizaje, el microcontrolador debe reconocer que ahora está en el modo de ejecución. Si el botón es uno de los botones de órdenes directas, el microcontrolador volverá a leer de su memoria RAM estática la secuencia de impulsos almacenada y enviará palabras de órdenes a través de su E/S (entrada/salida) paralela de salida para originar impulsos del diodo 28 emisor de luz de salida. Si el botón es el PROG y el interruptor de código G está en "OFF", el microcontrolador deberá reconocer los sucesivos botones hasta el botón PROG siguiente como una orden de preprogramación del temporizador y enviarla a través del diodo 28 emisor de luz. Si el conmutador 22 de código G está colocado en "ON" (activado) y se pulsa el botón 26 de programas, el microcontrolador debe reconocer los botones siguientes hasta el siguiente botón PROG como una orden de código G para la preprogramación del temporizador. Descodificará el código G en canal, fecha, hora de inicio y duración (CDTL) y el microcontrolador consultará entonces, en el "diccionario" de su RAM estática, los modelos asociados de impulsos de infrarrojos y los concatenará juntos antes de enviarlos a través de su E/S paralela de salida para originar impulsos del diodo 28 emisor de luz de salida con el fin de enviar el mensaje completo al aparato de vídeo en una cadena continua.
La figura 4 ilustra una posible realización del descodificador 92 de código G que podría construirse en un mando a distancia universal con descodificador 90 de código G incorporado. Se puede utilizar un microcontrolador 60, como antes, para descodificar el código G, así como para hacer de interfaz con las funciones de entrada/salida que incluyen el fotodiodo 96. Alternativamente, la descodificación de código G puede ser efectuada con otras realizaciones de hardware.
El mando a distancia universal puede utilizarse también de otra manera para simplificar el problema de interfaz con los grabadores/reproductores de cassettes de vídeo existentes. En particular, si el mando a distancia universal realiza, no solamente la descodificación de código G en CDTL, sino que también mantiene la hora por medio del reloj 85 de la figura 4, es posible entonces que el mando a distancia universal envíe sólo las órdenes de canal, inicio y finalización de la grabación al grabador/reproductor de cassettes de vídeo, las cuales, como se ha explicado anteriormente, son normalmente órdenes básicas de un solo botón, lo cual significa que no hay implicados un protocolo o estructura de sentencia complicados. Por tanto, para comunicarse con una diversidad de modelos de grabadores/reproductores de cassettes de vídeo, sólo es necesario que el mando a distancia universal "aprenda" cada uno de los botones del mando a distancia al que está sustituyendo. El código G se introduciría en el mando a distancia universal igual que antes, y sería descodificado en información de canal, fecha, hora y duración, que sería almacenada en el mando a distancia universal. Por medio del reloj 85, se comprobaría la hora y, cuando llegase el momento correcto, el mando a distancia universal enviaría automáticamente órdenes a la unidad del aparato de vídeo para sintonizar el canal correcto y para iniciar y detener la grabación. Sería necesario situar apropiadamente el mando a distancia universal con respecto a la unidad del aparato de vídeo de manera que las señales enviadas por el mando remoto universal sean recibidas por la unidad del aparato de vídeo.
Existen varias formas de efectuar la descodificación de código G. La manera más obvia es disponer simplemente de una tabla de consulta. El código G sería el índice. Desafortunadamente, esto sería muy ineficaz y daría como resultado un descodificador muy caro, debido a la memoria involucrada. El almacenamiento total implicado es una función del número de combinaciones totales. Si se permiten 128 canales, 31 días al mes, 48 horas de inicio de las horas y de las medias horas, en las veinticuatro horas del día, y 16 posibilidades de duración en incrementos de media hora, el número total de combinaciones es 128x31x48x16 = 3.047.424. Este número de combinaciones puede ser representado por un número de 7 dígitos. La dirección a la tabla sería un número de 7 dígitos. En el caso peor, esto requiere una tabla de consulta que tiene alrededor de 4.000.000 de filas por 15 a 16 columnas digitales, dependiendo del protocolo en particular. Estas columnas digitales corresponderían a la información CDTL requerida para la "programación en pantalla". Cada dígito podría estar representado por un número binario de 4 bits. Por tanto, el número total de almacenamiento de bits requerido para la tabla de consulta sería de alrededor de 4.000.000x16x4 = 256.000.000. El estado de la técnica actual tiene alrededor de 1 millón de bits por chip. Por tanto, la descodificación de código G utilizando una tabla de consulta directa requeriría un número prohibitivamente costoso
de chips.
Afortunadamente, hay formas más inteligentes de efectuar la descodificación de código G. La figura 6 es un diagrama de flujo de una técnica preferida de descodificación de código G. Para comprender la descodificación de código G, lo más fácil es explicar primero la técnica de codificación de código G, para la cual el diagrama de flujo está en la figura 7. Después, se explicará la técnica de descodificación de código G, que es la inversa de la codificación de código G.
La codificación de los códigos G puede hacerse en cualquier ordenador y se realiza antes de preparar cualquier guía de programas que incluya códigos G. Por cada programa que se imprima en la guía se introduce, en la operación 142, un código 144 de canal, fecha, hora y duración (CDTL). La operación 146 lee separadamente la prioridad de canal, fecha, hora y duración en el almacenamiento 122 de vectores de prioridad, que puede ser almacenada en la memoria 64 de sólo lectura. El almacenamiento 122 de vectores de prioridad contiene cuatro tablas: una tabla 124 de vectores C de prioridad, una tabla 126 de vectores D de prioridad, una tabla 128 de vectores T de prioridad y una tabla 130 de vectores L de prioridad.
La tabla de prioridad de canales se ordena de manera que los canales utilizados con más frecuencia tienen un número de prioridad bajo. Un ejemplo de los datos que están en la tabla 124 de vectores C de prioridad es el que
sigue:
\vskip1.000000\baselineskip
1
\newpage
Generalmente, las fechas de un mes tienen una misma prioridad, de manera que los días del mes con número bajo y las prioridades de número bajo se corresponderían en la tabla de vectores D de prioridad como en el ejemplo siguiente:
2
La prioridad de las horas de inicio estarían dispuestas de manera que las horas principales tendrían un número de prioridad bajo y los programas a altas horas de la noche tendrían un número de prioridad alto. Por ejemplo, la tabla de vectores T de prioridad contendría:
3
Un ejemplo de los datos que están en la tabla 130 de vectores L de prioridad es el siguiente:
4
Supongamos que los datos 144 de canal, fecha, hora y duración (CDTL) son 5 10 19.00 1,5, lo cual significa canal 5, décimo día del mes, 7:00 tarde y 1,5 horas de duración; en este caso, para el ejemplo anterior de datos 148 de C_{p}, D_{p}, T_{p}, L_{p}, que son el resultado de consultar las prioridades de canal, fecha, hora y duración en las tablas de prioridad 124, 126, 128 y 130 de la figura 7, sería 4 9 1 3. La operación 150 convierte los datos C_{p}, D_{p}, T_{p}, L_{p} en números binarios. El número de bits binarios en cada conversión está determinado por el número de combinaciones involucradas. Siete bits para C_{p}, que pueden denotarse como C_{7} C_{6} C_{5} C_{4} C_{3} C_{2} C_{1}, proporcionarían 128 canales. Cinco bits por D_{p}, que pueden denotarse como D_{5} D_{4} D_{3} D_{2} D_{1}, proporcionarían 31 días por mes. Seis bits para T_{p}, que pueden denotarse como T_{6} T_{5} T_{4} T_{3} T_{2} T_{1}, proporcionarían 48 horas de inicio cada media hora en un día de veinticuatro horas. Cuatro bits para la duración, que pueden denotarse como L_{4} L_{3} L_{2} L_{1} proporcionarían una duración de programa de hasta 8 horas en pasos de media hora. Juntos, existen 7+5+6+4 = 22 bits de información que corresponden a 2**22 = 4.194.304 combinaciones.
La operación siguiente es utilizar la clave 120 de jerarquía de bits, que puede ser almacenada en la memoria 64 de sólo lectura para reordenar los 22 bits. La clave 120 de jerarquía de bits puede ser cualquier ordenación de los 22 bits. Por ejemplo, la clave de jerarquía de bits podría ser:
5
Idealmente, la clave de jerarquía de bits está ordenada de manera que los programas con más probabilidad de preprogramación del temporizador tendrían un número binario de valor bajo, que podría eliminar pulsaciones de botones para preprogramación del temporizador de los programas más populares. Como toda la información de fechas tiene la misma prioridad, los primeros bits son los D_{5} D_{4} D_{3} D_{2} D_{1}. Después se utilizan T_{1} C_{1} L_{1}, porque, para cualquier fecha, es necesario tener una hora, canal y duración y T_{1} C_{1} L_{1} son los más probables en cada caso debido a la ordenación de los vectores de prioridad en el almacenamiento 122 de vectores de prioridad. El siguiente bit en la clave de jerarquía está determinado por las probabilidades diferenciales de las diversas combinaciones. Deben conocerse las probabilidades de todos los canales, horas y duraciones para efectuar este cálculo.
Por ejemplo, la probabilidad de los canales puede ser:
6
\newpage
Las probabilidades de las horas podrían ser:
7
Y las probabilidades para la duración serían:
8
Las probabilidades asociadas con cada canal, hora, y duración, como se han ilustrado anteriormente, se usan para determinar la ordenación apropiada. Como las tablas de vectores de prioridad están ya ordenadas por los canales, horas y duraciones más populares, el orden en el cual se ha de seleccionar entre los bits binarios de una tabla, por ejemplo la selección entre los bits C_{7} C_{6} C_{5} C_{4} C_{3} C_{2} C_{1}, es ya conocido. El bit C_{1} sería seleccionado primero porque, como el bit binario de orden más bajo, se seleccionaría entre los dos primeros elementos de la tabla de prioridad de canales. Después se seleccionaría el bit C2 y así sucesivamente. De forma similar, se utilizarían los bits T_{1} y L_{1} antes que cualquier otro bit de hora y duración. Debe utilizarse primero una combinación de C_{1},_{ }T_{1}, L_{1} y D_{5} D_{4} D_{3} D_{2} D_{1}, de manera que esté disponible toda la información para un canal, fecha, hora y duración. Los bits D_{5} D_{4} D_{3} D_{2} D_{1} son, todos ellos, utilizados porque los bits de fecha tienen todos la misma prioridad y son todos necesarios para especificar una fecha, aún cuando alguno de los bits sean el cero binario.
En este punto, la clave de jerarquía de bits podría ser:
T_{1} C_{1} L_{1} D_{5} D_{4} D_{3} D_{2} D_{1}
El primer bit binario C_{1} de canal, por sí mismo, sólo puede seleccionar entre 2^{1} = 2 canales, y los dos primeros canales tienen un porcentaje de probabilidad de 5 y 4,3, respectivamente. Por tanto, la probabilidad diferencial de C_{1} es 9,3. De forma similar, la probabilidad diferencial de T_{1} es 8 + 7,8 = 15,8 y la probabilidad diferencial de L_{1} es 50 + 20 = 70. Si se siguen estrictamente las reglas para ordenar la clave de jerarquía de bits, los 8 primeros bits de la clave de jerarquía de bits deben ser ordenados como:
C_{1} T_{1} L_{1} D_{5} D_{4} D_{3} D_{2} D_{1},
porque L_{1} tiene la prioridad diferencial más alta de manera que debería ser el siguiente bit más significativo después de D_{5}, seguido de T_{1} como siguiente bit más significativo, y después C_{1} como siguiente bit más significativo. Obsérvese que la clave de jerarquía de bits comienza con el bit menos significativo D_{1}, y después se rellena con los bits de probabilidad diferencial más alta. Esto se hace con el fin de construir los códigos más compactos para programas populares.
La pregunta en este punto del proceso de codificación es cuál debería ser el siguiente bit más significativo en la clave de jerarquía: T_{2},_{ }C_{2} o L_{2}. Esto se determina, nuevamente, con las probabilidades diferenciales, las cuales pueden ser calculadas a partir de las tablas anteriores de cada bit. Como se está tratando con bits binarios, el bit C_{2} en combinación con el C_{1} selecciona entre 2^{2} = 4 canales o dos canales más que C_{1} solo. La probabilidad diferencial para C_{2} es entonces la suma de probabilidades de estos dos canales adicionales y, para el ejemplo, esto es: 4 + 3 = 7. De una manera similar, C_{3}, en combinación con C_{1} y C_{2}, selecciona entre 2^{3} = 8 canales o 4 = 2^{(3-1)} canales más que la combinación de C_{1} y C_{2}. Así, la probabilidad diferencial de C_{3} es la suma de probabilidades de estos cuatro canales adicionales y, para el ejemplo, esto es: 2,9 + 2,1 + 2 + 1,8 = 8,8. De una manera similar, las probabilidades diferenciales de T_{2} y L_{2} pueden calcularse como 6 + 5 = 11 y 15 + 5 = 20, respectivamente. Una vez que se han calculado todas las probabilidades diferenciales, la operación siguiente es determinar qué combinaciones de bits son más probables.
Ahora bien, para el ejemplo anterior, qué combinación es más probable: T_{2} con C_{1} L_{1}, o C_{2} con T_{1} L_{1}, o L_{2} con T_{1} C_{1}. Esto determinará el siguiente bit de la clave. Por tanto, ¿cuál es mayor: 11x9,3x70 = 7161; 7x15,8x70 = 7742; o 20x15,8x9,3 = 2938,8?. En este caso, la combinación con mayor probabilidad es 7x15,8x70 = 7742, que corresponde a C_{2} con T_{1} L_{1}. Por tanto, se selecciona C_{2} como bit siguiente en la clave de jerarquía de bits.
El siguiente bit se selecciona de la misma manera. Qué combinación es más probable: C_{3} con T_{1} L_{1}, o T_{2} con C_{1} o C_{2} con L_{1}, o L_{2} con C_{1} o C_{2} y T_{1}. Para el ejemplo ilustrado, ¿cuál tiene mayor probabilidad: 8,8x15,8x70 = 9732,8; 11x(9,3+7)x70 = 12551; o 20x9,3+7)x15,8 = 5150,8?. En este caso, la combinación con mayor probabilidad es 11x(9,3+7)x70 = 12551, que corresponde a T_{2} con C_{1} o C_{2} y L_{1}. Por tanto, se selecciona T_{2} como el siguiente bit de la clave de jerarquía de bits. Este procedimiento se repite para todas las probabilidades diferenciales hasta que se averigua la clave completa.
Alternativamente, la clave de la jerarquía de bits puede ser simplemente cierta secuencia arbitraria de bits. También es posible hacer independientes los vectores de prioridad, tal como hacer que el vector de prioridad de duración sea dependiente de grupos de canales distintos. Otra técnica es hacer que la clave 120 de jerarquía de bits y las tablas 122 de vectores de prioridad sean una función del reloj 42, como se ilustra en la figura 7. Esto hace muy difícil duplicar o copiar la clave y, por tanto, la técnica de codificación.
Por ejemplo, es posible cifrar los bits de fecha en la clave 120 de jerarquía de bits en función del reloj. El cambio de orden de los bits en función del reloj no cambiaría la eficacia de la clave de jerarquía de bits al reducir el número de bits binarios para los programas más populares, porque los bits de fecha tienen la misma prioridad. Esto podría ser tan sencillo como cambiar periódicamente los bits D_{1} y D_{5}, por ejemplo cada día o cada semana. Así, la clave 120 de jerarquía de bits cambiaría entre
100
\vskip1.000000\baselineskip
Claramente, son posibles otras permutaciones de la clave de jerarquía de bits en función del reloj.
Las tablas de vectores de prioridad podrían ser cifradas también en función del reloj. Por ejemplo, los dos primeros canales de la tabla de prioridad de canales podría ser conmutada periódicamente. Si se sigue esta técnica, el C_{p} de 148 en la figura 7 cambiaría en función del reloj 42. Por ejemplo,
10
\vskip1.000000\baselineskip
cambiaría, periódicamente, a:
11
Esta sería una técnica de seguridad bastante sutil, porque un descodificador que fuera correcto en otros casos, solamente fallaría si se estuvieran utilizando esos dos primeros canales. Son posibles, también otras dependencias del reloj para proporcionar seguridad a la técnica de codificación.
Como quiera que se obtenga, la clave 120 de jerarquía de bits se determina y se almacena. En la operación 154, los bits binarios de C_{p}, D_{p}, T_{p}, L_{p} están dispuestos según la clave 120 de jerarquía de bits para crear un número binario de 22 bits. Después, el número binario de 22 bits resultante es convertido a decimal en la operación 156 de conversión de números binarios a código G decimal. El resultado es el código G 158.
Si el vector de prioridad y la clave de jerarquía de bits están bien adaptados a los hábitos de visión de la población en general, se puede esperar que los programas más populares no requieran más de 3 o 4 dígitos para el código G.
Ahora que se ha explicado la técnica de codificación, la técnica de descodificación es justamente la inversa de la técnica de codificación. Esto se hace de acuerdo con el diagrama de flujo de la figura 6. Esta es la descodificación preferida de código G que puede construirse en el descodificador 38 de código G en los descodificadores 82 y 92 de código G del aparato de vídeo 14 o del mando a distancia, en las figuras 3 y 5.
La primera operación 102 es introducir el código G 104. A continuación, se convierte el código G 104 en un número binario de 22 bits en la operación 106. Después, se reordenan los bits en la operación 108, de acuerdo con la clave 120 de jerarquía de bits, para obtener los bits reordenados 110. Después, se agrupan los bits y se convierten a forma decimal en la operación 112. En este punto, se obtienen los datos 114 de C_{p}, D_{p}, T_{p}, L_{p}, que son los índices de las tablas de vectores de prioridad. Para el ejemplo anterior, en esta operación se tendría el vector 4 9 1 3. Estos datos 114 de C_{p}, D_{p}, T_{p}, L_{p} se utilizan después en la operación 116 para consultar el canal, fecha, hora y duración en el almacenamiento 122 de vectores de prioridad. La CDTL 118 para el ejemplo anterior es 5 10 19.00 1,5 lo cual significa canal 5, décimo día del mes, 7:00 de la tarde, y 1,5 horas de duración.
Si la técnica de codificación es una función del reloj, también es necesario hacer función del reloj la técnica de descodificación. Es posible hacer función del reloj 42, como se ilustra en la figura 6, la clave 120 de jerarquía de bits y las tablas 122 de vectores de prioridad. Nuevamente, esto hace muy difícil duplicar o copiar la clave y, por tanto, la técnica de descodificación. También es posible hacer las técnicas de descodificación y codificación dependientes de cualquier otro algoritmo predeterminado o preprogramable.
Aunque la técnica de codificación y descodificación de código G descrita es un modo de realización preferido, debe entenderse que hay muchas maneras de realizar la intención de la invención que es reducir el número de pulsaciones de teclas requeridas para la preprogramación del temporizador. Para conseguir este objetivo hay muchas maneras de realizar la codificación y descodificación de código G. También hay muchas maneras de hacer la técnica de codificación y descodificación más segura, además de hacer simplemente la codificación y descodificación una función del reloj. Esta seguridad puede ser el resultado de cualquier algoritmo predeterminado o preprogramado.
En las técnicas de codificación y descodificación de código G es posible utilizar sistemas de números raíz mezclados, en lugar de números binarios. Por ejemplo, supóngase que sólo hay 35 canales, los cuales requerirían 6 bits binarios para ser representados: sin embargo, 6 bits binarios pueden representar 64 canales, porque 2^{6} = 64. El resultado es que en un sistema de números binarios hay 29 posiciones innecesarias. Esto puede tener el efecto de hacer, posiblemente, un código G en particular más largo de lo que necesita ser. Un sistema de números raíz mezclados puede evitar este resultado. Por ejemplo, para el caso de 35 canales, un sistema de números raíz mezclados con los factores de 7^{1} y 5^{0} pueden representar 35 combinaciones sin ningún espacio vacío en el código. Los números permitidos para el factor 7^{1} son 0, 1, 2, 3 y 4. Los números permitidos para el factor 5^{0} son 0, 1, 2, 3, 4, 5 y 6. Por ejemplo, el 0 digital está representado, en el sistema de números raíz mezclados, como 00. El número digital 34 está representado, en el sistema de números raíz mezclados como 46, porque 4*7^{1}+6*5^{0} = 34. La mayor ventaja de un sistema de números raíz mezclados es la priorización de la clave de jerarquía. Si los cinco primeros canales tienen aproximadamente la misma prioridad y los 30 siguientes son también casi iguales, el sistema de números raíz mezclados permite representar con precisión los dos niveles. Esto no quiere decir que un sistema de números raíz mezclados sea preferible necesariamente. Los números binarios son más fáciles de representar en un ordenador y el uso de un sistema de números raíz fijos. tal como los números binarios, permite representar fácilmente una pirámide de priorización en la clave
de jerarquía.
Otra característica que es deseable en todos los modos de realización es la capacidad de teclear el código G una vez para un programa y disponer, después, la información CDTL resultante utilizada diaria o semanalmente. Normalmente, la información CDTL es descartada una vez que se ha utilizado. En el caso de grabación diaria o semanal del mismo programa, la información CDTL es almacenada y utilizada hasta que es cancelada. El deseo de repetir el programa diaria o semanalmente puede realizarse disponiendo de un botón de "WEEKLY" (semanal) o "DAILY" (diario) en el mando a distancia o incorporado en los controles manuales del aparato de vídeo. Otra manera es utilizar un botón, tal como el botón de PROG y pulsarlo múltiples veces dentro de un cierto periodo de tiempo, por ejemplo dos veces para especificar diariamente y tres veces para especificar semanalmente. Por ejemplo, si el interruptor de código G está en "ON" y el código para el programa deseado es 99, puede seleccionarse la grabación diaria del programa por medio de las siguientes pulsaciones de botones:
"PROG 99 DAILY PROG"
o por:
"PROG 99 PROG PROG"
\vskip1.000000\baselineskip
El código G 99 sería convertido en información CDTL, que sería almacenada y utilizada diariamente en este caso, La grabación empezaría en la fecha especificada y después continuaría diariamente utilizando la misma información de canal, hora y duración. Un ligero sesgo es que la grabación diaria podría ser suspendida automáticamente durante los fines de semana, debido a que la mayoría de los programas diarios son diferentes en Sábado y Domingo.
Una vez fijado el programa diario o semanal, se puede utilizar indefinidamente. Si se desea cancelar un programa y hay un botón de "CANCEL" (cancelar) en el mando a distancia o en el control manual del aparato de vídeo, una manera de cancelar un programa (ya sea una CDTL normal, diaria o semanal) es teclear lo siguiente:
"PROG xx CANCEL", donde xx es el código G.
Nuevamente, al igual que antes, existen formas alternativas de conseguir esto.
Si está disponible la "programación en pantalla", los programas que han sido seleccionados para la preprogramación del temporizador podrían ser revisados en la pantalla. Los programas diarios y semanales tendrían una indicación de su tipo. También podrían mostrarse los códigos G junto con la correspondiente información CDTL. Esto haría muy fácil revisar el "menú" en curso y añadir más programas o cancelar programas según se desee.
\newpage
En la figura 8 se ilustra un calendario 200 de televisión de acuerdo con esta invención. Según se ilustra, el calendario de televisión tiene múltiples secciones 202 de días del año, múltiples secciones 204 de días, múltiples secciones 206 de la hora del día, identificadores 208 de canal e identificadores 210 descriptivos de programas, que incluyen el nombre del programa, dispuestos de una manera que es común en las publicaciones de las guías de televisión. Dispuesto con relación a cada identificador de canal, existe una indicación 212 de código comprimido, o código G que contiene la información de canal, fecha, hora y duración para cada elemento del calendario de televisión. La figura 8 ilustra cómo es de fácil efectuar la programación del temporizador. Todo lo que se necesita hacer es encontrar el programa que se desea observar e introducir el código comprimido mostrado por la indicación de código comprimido. Esto contrasta con tener que tratar con los elementos de canal, fecha, hora y duración separadamente. En la guía de televisión se describen explícitamente, al menos, el canal, la fecha y la hora. La duración, normalmente, sólo está disponible buscando en la guía para ver, en la sección 206 de hora del día, cuándo empieza un nuevo programa y realizar un cálculo aritmético para averiguar la duración del programa. Al utilizar el código G comprimido se evitan todas estas complicaciones.
Para los programas de televisión por cable, es necesario abordar un problema adicional para que el código G comprimido sea útil. En una guía normal de televisión, la información CDTL está disponible para todos los canales hertzianos normales en forma de números que incluyen los números de canal, tales como el canal 4 o 7. Sin embargo, para los canales de cable tales como HBO, ESPN, etc., en la mayoría de los listados de televisión, solamente se ofrecen los nombres de los canales. La razón para esto es que, en algunas zonas metropolitanas, tales como Los Ángeles, puede haber sólo una (1) edición de la guía de televisión, pero puede haber bastantes operadores de cable, pudiendo asignar cada uno de los cuales HBO o ESPN a números de canal de cable diferentes. Con el fin de que se pueda aplicar un código comprimido, tal como el código G, a los canales de cable como se publican en una publicación de una guía de televisión de una zona extensa, se puede utilizar la siguiente solución.
En primer lugar, todos los canales de cable tendrían asignado permanentemente un número único, lo cual sería válido en toda la nación. Por ejemplo, se podría asignar ESPN al canal 1 de cable, HBO al canal 2 de cable, SHO al canal 3 de cable, etc. Esta asignación sería publicada por las publicaciones de guías de televisión.
El aparato grabador de cassettes de vídeo, tal como el mando a distancia, la unidad del aparato de vídeo o ambos, podrían estar provistos de dos (2) modos adicionales: "ajustar" y "canal de cable". Una forma de proporcionar el interfaz de usuario a estos modos sería ofreciendo dos (2) botones adicionales: uno denominado SET (AJUSTAR) y otro denominado CABLE CHANNEL (CANAL DE CABLE). Los botones podrían estar localizados en la propia unidad de grabación de cassettes de vídeo o situada en un mando a distancia, como se ilustra en la figuras 1, 3 y 5, donde SET es el elemento 168 y CABLE CHANNEL es el elemento 170. Naturalmente, son posibles otros interfaces de usuario.
A continuación, el telespectador tendría que ir a través de un procedimiento de "ajuste" de su aparato de vídeo para todos los canales de cable que, probablemente, vería. Este procedimiento de ajuste relacionaría cada uno de los números asignados a cada canal de cable con el número de canal del operador de cable local. Por ejemplo, supóngase que el operador de cable local utiliza el canal 6 para ESPN; entonces, se podría asignar el canal de cable número 1 a ESPN, como se ilustra en la tabla siguiente.
\vskip1.000000\baselineskip
12
\newpage
El usuario podría efectuar el procedimiento de "ajuste" pulsando los botones de su mando a distancia como sigue:
SET 06 CABLE CHANNEL 1 PROGRAM
SET 24 CABLE CHANNEL 2 PROGRAM
SET 23 CABLE CHANNEL 3 PROGRAM
SET 25 CABLE CHANNEL 8 PROGRAM
\vskip1.000000\baselineskip
El procedimiento de "ajuste" crearía una tabla 162 de direcciones de canales de cable que sería cargada en la memoria RAM 52 del controlador 36 de órdenes. Para el ejemplo anterior, la tabla 162 de direcciones de canales de cable tendría la información siguiente:
13
Una vez realizado el procedimiento de ajuste, el telespectador puede seleccionar los canales de cable para verlos de la manera anterior: por ejemplo, pulsando los botones 24 del teclado se seleccionará el HBO. También puede hacerlo de la nueva manera: por ejemplo, pulsando CABLE CHANNEL 2, (canal de cable 2) que también seleccionará HBO. La ventaja de la nueva manera es que la guía de televisión publicará [C2] junto a la descripción del programa, de manera que el telespectador consultará simplemente el identificador de número de canal asignado en lugar de tener que recordar que HBO es el canal local de cable 24. Cuando se pulsa el botón CABLE CHANNEL (canal de cable), el controlador 36 de órdenes sabe que consultará el número de canal de cable local en la tabla 162 de direcciones de canales de cable para sintonizar el aparato de vídeo en el canal correcto.
Para la preprogramación del temporizador y para utilizar el código G comprimido, una forma de distinguir entre los canales hertzianos y los de cable es añadir un octavo bit de canal, que se fijaría en 0 para los canales hertzianos normales y en 1 para canales de cable tales como HBO. Este octavo bit de canal podría ser uno de los bits de orden inferior, tal como el tercer bit C_{3} de los ocho bits de canal, de manera que el número de bits para especificar los canales populares se hace mínimo, ya sean canales normales hertzianos o canales de cable. Para un canal hertziano normal, los otros 7 bits pueden ser descodificados de acuerdo con la tabla 124 de vectores C de prioridad. Para un canal de cable, los otros 7 bits pueden ser descodificados de acuerdo con una tabla 160 independiente de vectores de prioridad de canales de cable, que podrían ser almacenados en la ROM 54 del microcontrolador 36. La tabla de vectores de prioridad de canales de cable puede ser ajustada con antelación para todo el país o, al menos, para una zona cubierta por una publicación particular de una guía de televisión para una zona amplia.
Una guía de televisión que contiene el código comprimido conocido como código G, imprimirá la información de canales de cable como sigue:
15
El [C2] en frente de HBO recuerda al telespectador que sólo necesita pulsar CABLE CHANNEL 2 (canal de cable 2) para seleccionar HBO. El (4679) es la indicación de código G para este programa en particular.
La figura 8 muestra una sección de una guía de televisión. Los canales de cable tienen asignado, todos ellos, un número de canal 188 en frente del mnemónico de canal de cable. Excepto el canal de cable, la información está dispuesta de la misma manera que los canales hertzianos con un código G 212 comprimido asociado con el canal.
Para la preprogramación del temporizador, el telespectador sólo necesita introducir el número 4679, de acuerdo con el procedimiento de introducción de código G de la unidad, por ejemplo, PROG 4679 PROG. La unidad descodificadora de código G descodificará este código G como "canal de cable 2" y señalizará también al controlador 36 de órdenes con una señal 164 de canal de cable, como se ilustra en la figuras 1 y 2, debido a que el bit adicional de canal será "1", lo cual hace distinguir que el código G es para un canal de cable; después, como la asociación de "canal de cable 2" con canal 24 ha sido establecida anteriormente en el procedimiento de "ajuste", el controlador de órdenes, si ha recibido una señal de canal de cable, buscará inmediatamente el 2 en la tabla 162 de direcciones de canales de cable para convertirlo en el canal de cable 24, lo cual será utilizado como canal de grabación en el momento apropiado. Asociando el código G con el número de canal de cable asignado, en lugar del número de canal de cable local, el código G para ese programa será valido en toda la zona local, que puede tener muchos operadores de cable diferentes, pudiendo tener cada uno de ellos números distintos de canales de cable locales.
Para incluir la característica de código G comprimido del canal de cable, los algoritmos de descodificación y codificación son los ilustrados en las figuras 9 y 10, respectivamente. Debe explicarse primero la codificación antes que la descodificación. El cambio principal de la figura 10 con respecto a la figura 7 es que se ha añadido una tabla 160 de vectores de prioridad de canales de cable y que es utilizada en la operación 180 de consulta de prioridad si se está codificando un canal de cable. Además, si se está codificando un canal de cable, se añade el bit de canal de cable en la posición de bits correcta en la operación 182 de conversión de C_{p} D_{p} T_{p} L_{p} a números binarios. Este podría ser el bit C_{3} como se ha descrito anteriormente. La clave de jerarquía de bits podría ser determinada igual que antes para comprimir el número de bits en los programas más populares: sin embargo, necesita tener una longitud de 23 bits para acoger el bit de canal
de cable. La longitud máxima de código G comprimido podría seguir siendo de 7 dígitos, porque 2^{23} = 8.388.608.
La descodificación está ilustrada en la figura 9 y es justamente el inverso del proceso de codificación. Tras la operación 108, se añade, operación 174, el bit de prueba de canal de cable y comprueba efectivamente el bit de canal de cable para determinar si es un "1". Si lo es, el controlador 36 de órdenes es señalizado, a través de la señal 164 de canal de cable de las figuras 1 y 2, de que la CDTL 118 que le será enviada desde el descodificador 38 de código G es para un canal de cable. Después, el controlador de órdenes sabe consultar el número de canal del operador local de cable basándose en el número de canal de cable asignado. En la operación 176 de la figura 9, se utilizan las tablas de vectores de prioridad, incluyendo la tabla 160 de vectores de prioridad de canales de cable, para consultar la información CDTL 118.
Una alternativa a disponer del controlador de órdenes para recibir una señal, 164, de canal de cable, es que el descodificador de código G realice toda la descodificación incluyendo la conversión del número de canal de cable asignado al número del operador local de cable. Este sería el caso de la realización de mando a distancia de la figura 3. La figura 11 ilustra la realización de la figura 3 del algoritmo completo de descodificación si se incluye esta operación. Todo lo que hay que añadir es la operación 166 de conversión del canal asignado al canal del operador de cable local, que realiza una consulta en la tabla 162 de direcciones de canal de cable, si el bit de canal de cable indica que se implica un canal de cable. La operación 166 sustituye eficazmente la operación 174 de la figura 9.
Otro problema que hay que abordar es el número de programas que pueden ser preprogramados. Como el código G simplifica considerablemente el proceso de introducción de programas, es probable que el usuario aprenda rápidamente y quiera introducir un gran número de programas; sin embargo, algunos aparatos de vídeo existentes sólo puede almacenar hasta cuatro (4) programas, mientras que otros pueden almacenar hasta ocho. Así, el usuario puede frustrarse fácilmente por las limitaciones de programación del aparato de vídeo.
Una solución a este problema es efectuar la descodificación de código G comprimido en el mando a distancia y proporcionar memoria suficiente en él para almacenar un gran número de programas, por ejemplo 20 o 40. El mando a distancia tendría la capacidad de transferir periódicamente varios de estos programas almacenados de una vez a la unidad principal del aparato de vídeo.
Para ofrecer esta capacidad se requiere, dentro de la unidad a distancia, memoria adicional denominada memoria de pila 76, como se ilustra en la figura 12, que a excepción de esto, es idéntica a la figura 4. La memoria de pila 76 puede ser realizada con una memoria de acceso aleatorio, que puede residir en realidad en el propio microcontrolador, tal como la RAM 62.
En la memoria de pila 76 es donde se lleva a cabo nuevas introducciones, inserción y eliminación de la información de preprogramación del temporizador. Es, también donde tiene lugar la edición. Los lugares superiores de la pila, por ejemplo, los cuatro primeros lugares, corresponden exactamente a la memoria de preprogramación del temporizador disponible en la unidad principal del aparato de vídeo. Cuando se cambia la parte superior de la memoria de pila, la nueva información será enviada a la unidad principal del aparato de vídeo para actualizarla.
La figura 13 muestra la secuencia de sucesos cuando el usuario introduce un programa en código G en el teclado del mando a distancia. Con fines ilustrativos, supóngase que la unidad principal del aparato de vídeo sólo puede manejar cuatro (4) programas. Supóngase también que la capacidad de la memoria de pila es de 20 preprogramas de temporizador. Haciendo referencia al diagrama de flujo de la figura 13, cuando el usuario introduce un código G en la operación 230, el microcontrolador 60 lo descodifica primero en información CDTL en la operación 234 y la presenta en la unidad de presentación con la palabra adicional "introducida" también visible. El microcontrolador introduce después el programa descodificado en la memoria de pila en la operación 236.
Si este es el primer programa introducido, se coloca en el lugar superior de la memoria de pila. Si ya hay programas en la memoria de pila, el programa introducido recientemente será colocado primero, provisionalmente, en la parte inferior de la memoria de pila. La memoria de pila será clasificada entonces en orden temporal correcto en la operación 240, de manera que el programa de hora más temprana aparecerá en el lugar superior y el programa de hora más tardía estará en la parte inferior. Obsérvese que la naturaleza de la memoria de pila clasificada por horas es tal que, si se altera el lugar n de la memoria de pila, todos los lugares por debajo de él serán alterados.
Por ejemplo, supóngase que la memoria de pila tiene seis (6) elementos ya ordenados en orden temporal, y se introduce un nuevo elemento cuya ordenación temporal lo coloca en el lugar 3 (siendo 1 el lugar superior). Si este elemento es colocado en el lugar 3, la información que estaba en los lugares 3, 4, 5, 6 será desplazada a los lugares 4, 5, 6 y 7. Los lugares 1 y 2 permanecen inalterados.
El microcontrolador 60, una vez que ha hecho la ordenación temporal, comprueba en la operación 242 si han cambiado los n primeros elementos de la situación anterior, donde, para el ejemplo presente n es igual a 4. En este caso, como se ha introducido un nuevo programa en el lugar 3, lo que estaba en el lugar 3 se desplaza ahora al lugar 4. Como el menú de programas de cuatro elementos de la unidad principal del aparato de vídeo, deben corresponder exactamente a los lugares 1 a 4 de la memoria de pila, los elementos 3 y 4 de la unidad principal del aparato de vídeo deben ser revisados ahora. El microcontrolador envía por tanto los nuevos elementos 3 y 4 a la unidad principal, en la operación 244 de la figura 13. Si el programa recientemente introducido, tras la ordenación temporal, se introduce en el lugar 5, los elementos 1 a 4 no cambian desde la situación anterior y el microcontrolador no enviará ningún mensaje a la unidad principal del aparato de vídeo y reanudará simplemente la supervisión del reloj 85 y del teclado 88 según la operación 246. Se supone que cuando el usuario introduce el código G en la operación 230, el mando a distancia está apuntando a la unidad principal del aparato de vídeo. El resto de operaciones de la figura 13 se sucede tan rápidamente que los cambios son enviados, en la operación 244 mientras el mando a distancia sigue apuntando a la unidad principal del aparato de vídeo.
Si el usuario decide eliminar un programa en la operación 232, la eliminación se lleva a cabo primero en la memoria de pila. Si están afectados los 4 primeros elementos, el microcontrolador enviará la información revisada a la unidad principal del aparato de vídeo. Si no están afectados los cuatro primeros elementos, nuevamente el mando a distancia no enviará nada. La eliminación sólo cambiará la parte inferior de la pila (inferior significa los lugares 5 a 20). Esta nueva información será enviada a la unidad principal del aparato de vídeo a la hora apropiada.
Mientras tanto, la unidad principal del aparato de vídeo estará llevando a cabo su función de programación del temporizador, completando sus elementos de preprogramación de temporización uno por uno. Una vez que se han completado los 4 elementos de grabación, la memoria de pila del mando a distancia debe enviar algunos elementos nuevos para "reponer" la unidad principal del aparato de vídeo (si la pila tiene más de 4 elementos).
El reloj 85 de tiempo real de la unidad del mando a distancia es supervisada por el microcontrolador para determinar cuando los programas de la unidad principal han sido, todos ellos, usados. Haciendo referencia al diagrama de flujo de la figura 14, el microcontrolador comprueba periódicamente el reloj y las horas de los programas de la parte superior de la pila en la operación 250 (por ejemplo los 4 primeros elementos), que son idénticos al menú de la unidad principal del aparato de vídeo. Si en una de las comprobaciones periódicas se determina que la grabación del menú de la unidad principal está terminada, entonces, si hay más elementos en la pila, lo cual se comprueba en la operación 252, la unidad de presentación quedará fijada en un modo de intermitencia o presentará un mensaje intermitente en la operación 258 para alertar al usuario para que envíe más programas. La siguiente vez que el usuario coge la unidad a distancia, la intermitencia le recordará que el menú de programas de la unidad principal del aparato de vídeo ha terminado y que es el momento de reponer la unidad principal del aparato de vídeo con elementos de programa almacenados en la unidad a distancia. El usuario coge simplemente la unidad remota, la apunta hacia la unidad principal del aparato de vídeo y pulsa "ENTER" (introducir). Esto "sacará" rápidamente la parte superior de la memoria de pila en la operación 206, es decir, subirá cuatro lugares todos los elementos de la pila. El microcontrolador enviará entonces la nueva "parte superior de la pila" (es decir, los cuatro elementos superiores) a la unidad principal del aparato de vídeo en la operación 262. Este proceso se repetirá hasta que se haya vaciado toda la pila.
Otro modo de realización preferido de un aparato para utilizar códigos comprimidos para la preprogramación del grabador es el programador instantáneo 300 de la figura 15. El programador instantáneo 300 tiene varios botones 302, numerados del 0 al 9, un botón 304 de CANCEL (cancelar), un botón 306 de REVIEW (revisión), un botón 308 WEEKLY (semanal), un botón 310 de ONCE (una vez) y un botón 312 de DAILY (M-F) (diario, lunes a viernes), que se utilizan para programar el programador instantáneo 300. Normalmente, hay una tapa que cubre otros botones, los cuales se utilizan para ajustar el programador instantáneo 300. Cuando se levanta la tapa 314, se descubren los siguientes botones: botón 316 SAVE (guardar), botón 318 ENTER (introducir) botón 320 CLOCK (reloj), botón 322 CH (canal), botón 324 ADD TIME (añadir tiempo), botón 326 VCR (aparato de vídeo), botón 328 CABLE (canal de cable) y botón 330 TEST (prueba). Otras características del programador instantáneo 300 ilustrado en la figura 15 son: visor 350 de cristal líquido y diodo 332 emisor de luz roja de aviso. La vista del alzado lateral, figura 16, de un programador instantáneo 300, muestra un diodo frontal 340 de infrarrojos (IR), montado en el lado frontal 338. Al colocar el programador instantáneo 300 en frente del equipo a programar, tal como el grabador 370 de cassettes de vídeo, la caja 372 para cable, y el televisor 374, como se ilustra en la figura 19, el diodo frontal 340 de infrarrojos (IR) puede transmitir señales para controlar la grabación de programas. Una cubierta 336, transparente a IR, cubre diodos adicionales de transmisión de IR, que se explican a continuación.
La figura 18 muestra un detalle de un visor 350 de cristal líquido. En varios momentos, es visible cierto texto 354 en el visor y hay una zona 356 de entradas. En la parte inferior del visor se presentan unas barras 352 de tiempo y su función se describe a continuación.
Un elemento que acompaña al programador instantáneo 300 es el soporte 360 de montaje, ilustrado en la figura 17, que está diseñado para sostener el programador instantáneo 300 entre el lado izquierdo elevado 362 y el lado derecho elevado 364. El programador instantáneo 300 es deslizado entre el lado izquierdo elevado 362 y el lado derecho elevado 364 hasta que llega a un tope en la pestaña frontal 365 de alineación, que está en la parte frontal del soporte 360 de montaje y que está conectado a lo largo del lado izquierdo elevado 362 y del lado derecho elevado 364, como se ilustra en la figura 17A. Los elementos 362, 364 y 365 juntos, proporcionan la alineación del programador instantáneo 300 de manera que la cubierta 336 transparente de IR y los diodos de IR 342, 344, 346 y 348, ilustrados en la figura 17, están alineados apropiadamente para la transmisión cuando el programador instantáneo se utiliza como se ilustra en la figura 20. El soporte 360 de montaje tiene una pestaña 366 de alineación que tiene la finalidad de alinear el borde posterior del soporte 360 de montaje, que está definido como el borde a lo largo del cual está situada la pestaña 366 de alineación, a lo largo del lado frontal de una caja para cable o aparatos de vídeo o unidad similar, como se ilustra en la figura 20. Cuando está alineado como se ilustra en la figura 20, el soporte 360 de montaje alinea el programador instantáneo 300 de manera que el diodo izquierdo 342 de IR, el diodo inferior 344 de IR, dos diodos posteriores 346 de IR y el diodo derecho 348 de IR, como se ilustra en la figura 17, están en la posición para transmitir señales al grabador 370 de cassettes de vídeo y a la caja para cable 372, según sea necesario. Si las funciones del aparato de vídeo y/o de la caja para cable están situadas dentro del propio televisor 374, el programador instantáneo podría situarse de manera que transmita al televisor 374, ya sea en la forma de la figura 19 o colocando el soporte de montaje en la parte superior del televisor de la forma de la figura 20.
Utilizando el soporte 360 de montaje, el usuario sólo necesita alinear una vez el soporte 360 de montaje y el programador instantáneo 300, con el equipo a programar, en lugar de que el usuario tenga que recordar mantener el programador instantáneo 300 en el lugar correcto para transmitir a través del diodo 340 de infrarrojos (IR), como se ilustra en la figura 19. La experiencia actual con diversos mandos a distancia muestra que es difícil, en el mejor de los casos, mantener un mando a distancia en un lugar fijo, por ejemplo en una mesilla para café. El soporte 360 de montaje resuelve este problema situando el programador instantáneo 300 con el equipo a controlar. El diodo izquierdo 342 de IR, el diodo inferior 344 de IR, los dos diodos posteriores 346 de IR y el diodo derecho 348 de IR están colocados para transmitir a la izquierda, hacia abajo, hacia atrás y hacia la derecha. El transmisor hacia abajo supone que el soporte 360 de montaje será colocado en la parte superior de la unidad a programar. La transmisión hacia la izquierda y hacia la derecha permite programar las unidades a la izquierda o a la derecha. Los diodos 346 de IR para la transmisión hacia atrás están previstos para que las señales que rebotan en la pared y otros objetos de la sala. El diodo frontal 340 de IR, el diodo izquierdo 342 de IR, el diodo derecho 348 de IR y el diodo inferior 344 de IR están construidos con diodos de ángulo de emisión de 25 grados. Están previstos dos diodos posteriores de IR para una mayor energía en esa dirección y están construidos con diodos de ángulo de emisión de 5 grados, que enfocan la energía y proporcionan una mayor reflexión de la energía de IR en las paredes u objetos de la sala.
La mayoría de los aparatos de vídeo y las cajas de cableado pueden ser controlados por un mando a distancia de infrarrojos; sin embargo, aparatos de vídeo y cajas para cable diferentes tienen códigos de IR diferentes. Aunque existen literalmente cientos de modelos distintos de aparatos de vídeo y cajas de cableado, afortunadamente sólo hay unas decenas de conjuntos de códigos de IR. Cada conjunto puede tener unas pocas decenas de "palabras" que representan los distintos botones requeridos, por ejemplo, "alimentación", "grabar", "canal hacia arriba", "canal hacia abajo", "detener", "0", "1", "2", etc. Con el fin de controlar el aparato de vídeo y la caja para cable para efectuar la grabación, sólo se requieren las siguientes "palabras": "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "alimentación", "grabar", "detener". Si los códigos IR de estas palabras para todos los conjuntos están almacenados en la memoria del programador instantáneo 300, que está situado en el microordenador 380 de las figuras 21 y 22. Durante el ajuste del programador instantáneo 300, el usuario introduce interactivamente en el programador instantáneo 300 el tipo y modelo de su aparato de vídeo y su caja para cable. El conjunto correcto de códigos IR será evocado de la memoria durante el proceso de control real. En el caso en que el usuario tenga solamente un aparato de vídeo, se evocarán los códigos de infrarrojo (IR) de ese aparato de vídeo en particular para controlar el aparato de vídeo. En el caso en el que el usuario tenga un aparato de vídeo y una caja para cable, serán evocados los códigos IR de "alimentación", "grabar", "detener" del conjunto que corresponde al aparato de vídeo, mientras que serán evocados los código IR del "0" al "9" del conjunto que corresponde a la caja para cable. La razón es que, en este caso, la caja para cable controla la conmutación del canal. Por tanto, las señales de conmutación de canal "0" a "9" deben ser enviadas a la caja para cable en lugar de al aparato de vídeo.
Inicialmente, el usuario efectúa una secuencia de ajuste. Primero, el usuario consulta el número correspondiente al modelo/marca del aparato de vídeo a programar en una tabla, que proporciona una lista de nombres de marca del aparato de vídeo y un código de dos dígitos. Después, con el aparato de vídeo sintonizado en el canal 3 o 4, el que se utilice normalmente, el usuario desconecta el aparato de vídeo (lo pone en "OFF"). Después el usuario pulsa el botón 326 del aparato de vídeo. Cuando el visor presenta VCR (aparato de vídeo), el usuario pulsa el código de dos dígitos consultado en la tabla de modelo/marca del aparato de vídeo (por ejemplo 01 para RCA). El usuario apunta el programador instantáneo 300 al aparato de vídeo y después pulsa el botón 318 ENTER (introducir). El diodo 332 emisor de luz roja de aviso estará intermitente al tiempo que envía una señal al aparato de vídeo. Si el aparato de vídeo se enciende ("ON") y cambia al canal 9, el usuario pulsa el botón 316 SAVE (guardar) y continúa con la operación de ajuste del reloj. Si el aparato de vídeo no se enciende, o se enciende pero no cambió al canal 09, el usuario pulsa nuevamente el botón 318 ENTER y espera hasta que el diodo 332 emisor de luz roja de aviso deja de estar intermitente. El programador instantáneo 300 envía el siguiente código posible al aparato de vídeo mientras que el diodo 332 emisor de luz roja de aviso está intermitente. Si el aparato de vídeo se enciende ("ON") y cambia al canal 09, el usuario pulsa el botón 316 SAVE (guardar), en otro caso el usuario pulsa nuevamente el botón 318 ENTER (introducir) hasta que se encuentra el código de aparato de vídeo que funciona con el aparato de vídeo. El visor muestra "END" (fin) si se han probado todos los códigos de aparato de vídeo posibles. Si es así, el usuario pulsa el código 00 con el botón 326 del aparato de vídeo y después el botón 318 ENTER (introducir) para probar todos los códigos posibles, para todas las marcas, de una en una.
Una vez que se ha encontrado y guardado el código de aparato de vídeo apropiado, la siguiente operación de ajuste es ajustar el reloj en el programador instantáneo 300. Primero, el usuario pulsa el botón 320 CLOCK (reloj). Cuando el visor muestra "YR" (año), el usuario pulsa el año (por ejemplo, 90), y después pulsa el botón 318 ENTER (introducir). Entonces el visor muestra "MO:" (mes) y el usuario pulsa el mes (por ejemplo, 07 es Julio), y después pulsa el botón 318 ENTER (introducir). Esto se repite para "DA:" (fecha del día) por ejemplo 01 es el primero), "Hr:" (hora) (por ejemplo, 02 para las 2 en punto). "Mn:" (minuto) (por ejemplo 05 para 5 minutos), y después "AM/PM:" (mañana/tarde) 1 para AM y 2 para PM. Tras esta secuencia, el visor mostrará "SAVE" (guardar) durante unos segundos y después el visor mostrará la fecha y hora reales que se han introducido. Ya no es necesario que el usuario ajuste el reloj en su aparato de vídeo.
A continuación, si el programador instantáneo 300 ha de usarse también como controlador de la caja para cable, las operaciones de ajuste son como sigue. Primero, se consulta el número correspondiente al modelo/marca de la caja para cable (convertidor) a controlar en una tabla de marcas de los modelos de caja para cable, que proporciona un listado de marcas de cajas para cable y los correspondientes códigos de dos dígitos. El aparato de vídeo es sintonizado al canal 03 o 04, y puesto en "OFF" (desconectado). Después, la caja para cable es sintonizada en el canal 02 o 03, el que sea normal, y se deja en "ON" (conectada). Entonces se pulsa el botón 329 CABLE. Cuando el visor muestra: "CA B-:", el usuario introduce el código de dos dígitos consultado en la tabla de modelos y marcas de cajas para cable, apunta el programador instantáneo 300 a la caja para cable (convertidor) y pulsa el botón 318 ENTER (introducir). El diodo 332 emisor de luz roja de aviso quedará intermitente mientras envía una señal de prueba a la caja para cable. Si la caja para cable cambiase al Canal 09, el usuario pulsaría el botón 316 SAVE (guardar); sin embargo, si la caja para cable no cambiase al Canal 09, el usuario pulsaría nuevamente el botón 318 ENTER (introducir) y esperaría hasta que el diodo 332 emisor de luz roja de aviso deje de estar intermitente, mientras se envía el siguiente código posible. Esto se repite hasta que la caja para cable cambie al Canal 09 y, cuando lo hace, el usuario pulsa el botón 316 SAVE (guardar). Si el visor muestra "END" (fin), el usuario ha probado todos los códigos de caja para cable posibles para esa marca. Si es así, el usuario pulsa el código de cable 00 y después el botón 318 ENTER (introducir) para probar todos los códigos de marcas posibles, de uno en uno.
Para algunas personas (probablemente porque tienen cable o satélite), los canales enumerados en su guía o calendario de televisión son diferentes de los canales en su televisor o cable. Si son diferentes, el usuario procede como sigue. Primero, el usuario pulsa el botón 332 CH (canal). El visor aparecerá así: "Guía CH TV CH". Entonces el usuario pulsa el canal impreso en la guía o calendario de televisión (por ejemplo, pulsa 02 para el canal 2), y después el usuario pulsa el número de canal sobre el cual se recibe el canal impreso a través de su compañía local de cable. Entonces el usuario pulsa el botón 318 ENTER. Esto se repite para cada listado de canales que esté en distinto canal al canal impreso. Cuando termina este proceso, el usuario pulsa el botón 316 SAVE (guardar).
Típicamente, la guía o calendario de televisión de la zona tendrá una tabla que indique el número de canal que ha sido asignado a cada canal de cable y hertziano, por ejemplo: HBO, CNN, ABC, CBS, NBC, etc. Esta tabla correspondería, por ejemplo, a las dos columnas de la izquierda de la figura 28. Por ejemplo, supóngase que la guía o calendario de televisión ha asignado el canal 14 a HBO, pero la compañía de cable del usuario ofrece HBO en el canal 18. Como los números de canal son diferentes, el usuario necesita utilizar el botón 322 CH. El usuario pulsará el botón CH (los dos espacios en blanco bajo la visualización "Guía CH" quedarán intermitentes). El usuario pulsa entonces 14, (ahora quedarán intermitentes los dos espacios en blanco bajo la visualización "TV CH"). El usuario pulsa entonces 18 y después el botón 318 ENTER (introducir). Esto se repite para cada canal que sea diferente. Cuando se ha terminado, el usuario pulsa el botón 316 SAVE (guardar).
Una vez guardados los ajustes de canal, el usuario puede revisar los ajustes pulsando el botón 322 CH (canal) y después el botón 306 REVIEW (revisar). Pulsando repetidamente el botón 306 REVIEW (revisar), cada uno de los canales ajustados irá apareciendo en el visor, de uno en uno.
El usuario puede hacer una comprobación después para asegurarse que la situación del programador instantáneo 300 es buena. Primero, el usuario se asegura de que el aparato de vídeo está en "OFF" (desconectado), pero enchufado, y se asegura de que la caja para cable (si la hay) está en "ON" (conectada). Después el usuario puede pulsar el botón 330 TEST (prueba). Si sólo hay un aparato de vídeo, y si éste pasa a "ON" (conectado), cambia al canal 09, empieza la grabación y después pasa a "OFF" (desconectado), entonces el mando del aparato de vídeo está en un buen sitio.
Si hay también una caja para cable, y si el aparato de vídeo pasa a "ON" (conectado), la caja para cable pasa al canal 09, el aparato de vídeo empieza a grabar y después se para y pasa a "OFF" (desconectado), entonces el programador instantáneo 300 está en un buen sitio.
Para hacer funcionar el programador instantáneo 300, el aparato de vídeo debe dejarse desconectado y la caja para cable conectada. El usuario consulta en la guía de televisión el código comprimido del programa que desea grabar. El código comprimido 212 está enumerado en la lista de la guía de televisión, como se ilustra en la figura 8. La guía/calendario de televisión que se utilizaría en este modo de realización tendría los mismos elementos que se ilustran en la figura 8, excepto que no se requiere el elemento 188 de la figura 8. El código comprimido 212 del programa seleccionado por el usuario es introducido en el programador instantáneo 300 utilizando los botones numéricos 302, y el usuario selecciona después con qué frecuencia va a grabar el programa. El usuario pulsa el botón 310 ONCE (una vez) para grabar el programa una vez a la hora programado, o pulsa el botón 308 WEEKLY (semanal) para grabar el programa todas las semanas a la misma hora programada, hasta que se cancela o bien el usuario pulsa el botón 312 DAILY (M-F) (diariamente, lunes a viernes) para grabar el programa todos los días de lunes a viernes a la misma hora programada hasta que se cancela. Esto es muy útil para programas tales como seriales que se transmiten diariamente, aunque no en los fines de semana. Para confirmar la introducción, el programador instantáneo 300 descodificará inmediatamente el código comprimido y presentará la fecha, canal y hora de inicio del programa introducido por el usuario. La duración del programa introducido se presenta también en las barras de tiempo 352 que van a través de la parte inferior del visor. Cada barra representa una hora (o menos) de programa.
Después, el usuario sólo necesita dejar el programador instantáneo 300 cerca del aparato de vídeo y de la caja para cable de manera que puedan transmitirse las órdenes y, en el momento apropiado, el programador instantáneo 300 conectará el aparato de vídeo, cambiará al canal correcto, grabará el programa y después desconectará el aparato de vídeo. El usuario sólo debe asegurarse de insertar una cinta en blanco.
El botón 306 REVIEW (revisar) permite al usuario ir pasando por los programas introducidos. Estos se presentan en orden cronológico, en fecha y hora. Cada vez que se pulsa el botón 306 REVIEW (revisar), aparece el programa siguiente, hasta que aparece "END" (fin), cuando ya han aparecido todos los programas introducidos. Si se pulsa nuevamente el botón REVIEW (revisar), el visor volverá a la fecha y hora actuales.
Si el usuario desea cancelar un programa, pulsa el botón 306 REVIEW (revisar) hasta que aparece el programa a cancelar, y entonces pulsa el botón 304 CANCEL (cancelar). En el visor se verá "CANCELLED" (cancelado). Además, en cualquier momento en el que el usuario pulse un número equivocado, al pulsar el botón 304 CANCEL (cancelar), se permitirá al usuario empezar de nuevo.
Ciertos programas de televisión, tales como los deportes en directo, pueden durar más que la ventana de tiempo programada. Para asegurar que se ha grabado todo el programa, el usuario puede pulsar el botón 324 ADD TIME (añadir tiempo) para aumentar la duración de la grabación, incluso cuando el programa está siendo grabado. El usuario pulsa el botón 306 REVIEW (revisar) para que aparezca el programa, después pulsa el botón 324 ADD TIME (añadir tiempo). Cada vez que se pulsa el botón 324 ADD TIME (añadir tiempo), se añaden 15 minutos a la duración de la grabación.
Cuando aparecen la fecha y hora actuales, la cantidad de cinta en blanco necesaria para las 24 horas siguientes aparece también mediante las barras 352 de tiempo que atraviesan la parte inferior del visor. Cada barra representa una hora (o menos) de cinta. El usuario debe comprobar esto antes de dejar desatendido el aparato de vídeo para asegurarse de que hay cinta en blanco suficiente.
Cada vez que se introduce un programa, el programador instantáneo 300 comprueba automáticamente todas las entradas para asegurarse de que no hay solapamiento entre las distintas entradas de programa. Si el usuario intenta introducir un programa que se solapa en tiempo con un programa introducido previamente, aparece el mensaje "CLASH" (conflicto). Entonces, como se resume con la operación 432 de la figura 23, el usuario tiene la siguientes opciones: 1) si el usuario desea dejar el programa introducido previamente y olvidarse del nuevo, no hará nada y, tras un corto retardo en el tiempo, el visor volverá a mostrar la hora y fecha actuales; 2) si el usuario desea que se grabe el programa que empieza antes hasta su final, y después grabar lo que queda del segundo programa, entonces pulsará el botón 310 ONCE (una vez), el botón 312 DAILY (M-F) (diario lunes a viernes), o nuevamente el botón 308 WEEKLY (semanal) (el que hubiera pulsado el usuario para introducir el código). Si los programas tienen la misma hora de inicio, se grabará antes el programa introducido más recientemente. Si al ser notificado del "CLASH" (conflicto) el usuario decide que el nuevo programa es más importante que el programa introducido previamente, entonces puede cancelar el programa introducido previamente y después volver a introducir el nuevo.
En algunos lugares, tal como ciertas partes de Colorado, el sistema de cable transmite algunos canales tres (3) hora más tarde/más temprano que las horas que aparecen en la guía de televisión local. Esto es debido a las diferencias de tiempo que dependen de que el canal sea recibido desde un satélite del este o del oeste. Para que el usuario grabe el programa 3 horas más tarde de la hora que aparece en la guía de televisión, el procedimiento es como sigue. Primero el usuario introduce el código del programa y después pulsa el botón 316 SAVE (guardar) (para indicar +) y después pulsa el botón 310 ONCE (una vez), el botón 312 DAILY (M-F) (diario lunes a viernes), o el botón 308 WEEKLY (semanal), según lo desee. Para que el usuario grabe el programa tres horas antes de la hora que aparece en la guía de televisión, el procedimiento es como sigue. Primero el usuario introduce el código del programa y después pulsa el botón 318 ENTER (introducir) (para indicar -) y después pulsa el botón 310 ONCE (una vez), el botón 312 DAILY (M-F) (diario lunes a viernes), o el botón 308 WEEKLY (semanal), según lo desee. El programador instantáneo 300 presentará la hora en la que será grabado el programa, no la hora que muestra la guía de televisión.
Hay ciertos mensajes del visor para hacer que el programador instantáneo 300 sea más agradable para el usuario. La presentación "LO BATT" (batería baja) indica que las baterías necesitan sustitución. "Err: ENTRY" (error en la introducción) indica una entrada no válida durante el ajuste. "Err: CODE" (error en el código) indica que el número de código del programa introducido no es un número válido. Si aparece esto, el usuario debe comprobar la guía de televisión y volver a introducir el número. "Err: DATE" (error en la fecha) indica que el usuario puede haber: intentado seleccionar una grabación diaria (lunes a viernes) para un programa de los sábados o de los domingos; intentado seleccionar semanalmente o diariamente la grabación para un espacio con más de siete días de antelación, porque el programador instantáneo 300 sólo permite utilizar la opción de grabación semanal o diaria de los programas de la semana en curso (\pm 7 días) o intentado introducir un programa que ya ha terminado. "FULL" (lleno) indica que al almacenamiento de pila de los programas a grabar, que es efectuado en memoria de acceso aleatorio (RAM), dentro del programador instantáneo 300 está llena. El usuario podría cancelar entonces uno o más programas antes de introducir nuevos programas. "EMPTY" (vacío) indica que no se han introducido programas para grabar. El número de programas a grabar que pueden ser almacenados en el programador instantáneo 300 varía dependiendo de la densidad de RAM disponible y puede variar desde 10 a más de diez.
La figura 21 es un esquema de los circuitos necesarios para realizar el programador instantáneo 300. Los circuitos consisten en un microordenador 380, un oscilador 382, un visor de cristal líquido 384, un teclado 386, transmisores 390 de IR en cinco direcciones y un diodo 332 emisor de luz roja de aviso. El microordenador 380 consiste en una CPU, una ROM, una RAM, puertos de E/S, temporizadores, contadores y un reloj. La ROM se utiliza para almacenamiento de programas y la RAM se utiliza, entre otros fines, para el almacenamiento de pila de los programas a grabar. El visor 384 de cristal líquido es el visor 350 de las figuras 15 y 18. El teclado 386 materializa todos los botones descritos anteriormente. Los transmisores 390 de IR en cinco direcciones consisten en un diodo frontal 340 de infrarrojos (IR), un diodo izquierdo 342 de IR, un diodo inferior 344 de IR, dos diodos posteriores 346 de IR y un diodo derecho 348 de IR. La figura 22 muestra el esquema detallado de los circuitos del programador instantáneo 300 y los elementos identificados previamente están identificados por los mismos números. El microordenador puede realizarse con un componente NEC uPD7530x, que puede hacer de interfaz directamente con el visor, el teclado, los diodos emisores de luz y el oscilador. Los diodos de IR de 25 grados pueden realizarse con los componentes NEC 313AC y los diodos de IR de 5 grados pueden realizarse con diodos Litton de IR 2871C.
Los diagramas de flujo del programa que está almacenado en la memoria de sólo lectura (ROM) del microordenador 380 que ejecuta la introducción de programas, la revisión y la cancelación de programas, y la ejecución de la grabación, están ilustrados en las figuras 23, 24 y 25, respectivamente. La figura 23 para la introducción de programas, cuyo proceso fue descrito anteriormente, consiste en las operaciones siguientes: operación 402 de presentación de fecha, hora actuales y barras de tiempo, que es el estado en reposo del programador instantáneo 300; operación 404 de exploración del teclado para determinar si se ha introducido código comprimido numérico decimal; operación 406 de presentación del código como se ha introducido; el usuario comprueba si se ha introducido el código correcto, operación 408, y pulsa el botón 304 CANCEL (cancelar), operación 428; el usuario adelanta o retrasa tres horas la hora de inicio pulsando el botón 316 SAVE (guardar) o el botón 318 ENTER (introducir), operación 410; el usuario pulsa el botón 310 ONCE (una vez), el botón 308 WEEKLY (semanal) o el botón 312 DAILY (diario), operación 412; el microordenador descodifica el código comprimido en información CDTL, operación 414; comprobar si hay conflicto con los programas almacenados, operación 416, si es así, presentar el mensaje "CLASH" (conflicto), operación 420; el usuario pulsa el botón 310 ONCE (una vez), el botón 308 WEEKLY (semanal) o el botón 312 DAILY (diario), operación 422; entonces, decidir sobre las entradas en conflicto, operación 432, como se ha descrito anteriormente en la descripción de las opciones de "CLASH" (conflicto) y sobre la entrada no guardada, operación 424, ajustar la presentación de fecha, canal, hora de inicio y duración (barras de tiempo) para ONCE (una vez) o para DA (diario), el canal, la hora de inicio y la duración para DAILY (diario), o para el día de la semana, canal, hora de inicio y duración para WEEKLY (semanal), operación 418; el usuario pulsa el botón 324 ADD TIME (añadir tiempo), que añade 15 minutos a la operación 426 de hora de inicio; el usuario comprueba la presentación, operación 430; introducir programa en la pila en orden cronológico, operación 434, en el que la pila es una parte de la RAM del microcontrolador 380; y calcular la duración de la cinta requerida y actualizar las barras de tiempo, operación 436.
El diagrama de flujo de la figura 24 para revisión y cancelación, cuyo proceso fue descrito anteriormente, consiste en las operaciones siguientes: presentar fecha y hora actuales y barras de tiempo, operación 402; botón 306 REVIEW (revisar) pulsado, operación 442; comprobar si la pila está vacía, operación 444; presentar "EMPTY" (vacía), operación 446, y volver a la presentación de fecha y hora actual, operación 448; presentación de la entrada de lugar superior en la pila, operación 450; el usuario pulsa el botón 324 ADD TIME (añadir tiempo), operación 452, y actualiza las barras de tiempo, operación 460; el usuario pulsa el botón 306 REVIEW (revisar), operación 454 y desplaza la pila un lugar hacia arriba, operación 462; el usuario pulsa el botón 304 CANCEL (cancelar), operación 456 y aparece "CANCELLED" en el visor, y operación 464 de cancelar el programa; y el usuario no hace nada, operación 458 y espera 30 segundos, operación 466, en la que la expiración de los 30 segundos puede efectuarse en los temporizadores del microordenador 380.
El diagrama de flujo de la figura 25 para la ejecución de la grabación, que es el proceso de grabación automática de un programa, y que ha sido descrito anteriormente, consiste en los pasos siguientes: comparar la hora de inicio del programa en la parte superior de la memoria de pila con la hora actual, operación 472; comprobar si quedan tres minutos para la hora de inicio del programa, operación 474; iniciar la intermitencia del LED 332 rojo de aviso durante 30 segundos, operación 476; presentar en el visor el canal, la hora de inicio y el mensaje "START" (inicio) de la intermitencia, operación 478, si se alcanza la hora de inicio correcta, operación 480, y enviar señal de alimentación ON (conectada) al aparato de vídeo y presentar en el visor el mensaje "REC" (grabar), operación 482; comprobar si el aparato de vídeo tiene una caja para cable en la entrada, operación 484, enviar señales de cambio de canal al aparato de vídeo, operación 486, y enviar señales de cambio de canal a la caja para cable, operación 488; enviar señales de grabación al aparato de vídeo, operación 490; comparar la hora de terminación con la hora actual, operación 492, comprobar si se ha alcanzado la hora de terminación, operación 494, y presentar el mensaje "END" (fin), operación 496; enviar señales de parada al aparato de vídeo, operación 498; enviar señal de alimentación OFF (desconectada) al aparato de vídeo, operación 500; y hacer subir la pila de programas, operación 502.
La figura 26 es un diagrama de flujo del método de codificación del canal, fecha, hora y duración (CDTL) en código decimal comprimido, 510. Este proceso se hace "offline" (fuera de línea) y puede realizarse con un ordenador de propósito general y se hace para obtener los códigos comprimidos 212 que están incluidos en la guía o calendario de programas de la figura 8. La primera operación del método de codificación es la operación 512 de introducción de canal, fecha, hora y duración (CDTL) en la que se introduce la CDTL, 514, de canal, fecha, hora y duración de un programa en particular. La operación siguiente es consultar el número de canal asignado, operación 516, que substituye un número de canal asignado, 522, para cada canal 518. A menudo, por ejemplo para canales hertzianos, tales como el canal 2, el número de canal asignado es el mismo; sin embargo, para un canal de cable tal como el HBO, se asigna un número de canal y se consulta en una tabla 520, de canales de cable asignados, que sería esencialmente la misma que las dos primeras columnas de la tabla de la figura 28. A continuación, la operación 524 de consulta de prioridad de canal, fecha y hora/duración en las tablas de vectores de prioridad, realiza una consulta en la tabla 526 de canales (C) del vector de prioridad, en la tabla 528 de fechas (D) del vector de prioridad y en la tabla 530 de hora/duración (T/L) del vector de prioridad, utilizando los índices de canal, fecha y hora/duración, respectivamente, para generar el vector C_{p}, D_{p}, TL_{p}, 532. La utilización de la tabla combinada de hora/duración (TL) para establecer prioridades, admite que hay una relación directa entre estas combinaciones y la popularidad del programa. Por ejemplo, a las 6:30 de la tarde, es más probable que sea popular un programa corto que un programa de 2 horas, porque puede ser la hora de la cena.
La tabla de prioridad de canales está ordenada de manera que los canales utilizados con más frecuencia tienen un número de prioridad bajo. Un ejemplo de los datos que están en la tabla 526 de vectores C de prioridad es como sigue.
16
Generalmente, las fechas de un mes tienen todas la misma prioridad o la misma utilización, de manera que los días del mes y los números de prioridad bajos se corresponderían en la tabla 528 de vectores D de prioridad como en el ejemplo siguiente.
17
La prioridad de las horas de inicio y duración de los programas podría disponerse en una matriz que asignaría una prioridad a cada combinación de horas de inicio y duraciones de programa, de manera que las combinaciones más populares de hora de inicio y duración tendrían un número de prioridad bajo y las combinaciones menos populares tendrían un número de prioridad alto. Por ejemplo, una tabla parcial 530 de vectores T/L de prioridad podría tener la apariencia siguiente.
18
Supóngase que los datos 514 de canal, fecha, hora y duración (CDTL) son canal 5, 10 de Febrero, 1990, 7:00 tarde y 1,5 horas de duración, entonces, los datos 532 de C_{p}, D_{p}, TL_{p} para el ejemplo anterior serían 4 9 19. La operación siguiente es convertir C_{p}, D_{p}, TL_{p} en números binarios y concatenarlos en un número binario, operación 534, dando como resultado la palabra de datos ...TL_{2}TL_{1}...C_{2}C_{1}...D_{2}D_{1}, 536. Para el ejemplo dado anteriormente, la conversión de la palabra ...TL_{2}TL_{1}...C_{2}C_{1}...D_{2}D_{1}, 536, a binario daría los tres números binarios ...0010011, ...0100, ...01001. El número de bits binarios a utilizar en cada conversión está determinado por el número de combinaciones implicadas. Esto podría variar dependiendo de la realización; sin embargo, un modo de realización preferido utilizaría ocho bits para C_{p} indicados como C_{8} C_{7} C_{6} C_{5} C_{4} C_{3} C_{2} C_{1}, lo cual proporcionaría 256 canales, cinco bits para D_{p} que pueden indicarse como D_{5} D_{4} D_{3} D_{2} D_{1}, proporcionarían los 31 días de un mes, y catorce bits para TL_{p}, indicados como TL_{14}... TL_{3} TL_{2} TL_{1}, que proporcionarían horas de inicio separadas cada 5 minutos en 24 horas y duraciones de programas en incrementos de duración de 5 minutos para programas de hasta 3 horas de duración y duraciones de programa en incrementos de duración de 15 minutos para programas desde 3 a 8 horas de duración. Esto requiere alrededor de 288*(36+20) = 16.128 combinaciones, que son proporcionadas por las 2**14 = 16.384 combinaciones binarias. En total hay 8+5+14 = 27 bits de información TL_{14}...TL_{2} TL_{1} C_{8}...C_{2} C_{1} D_{5}...D_{2} D_{1}. Para el ejemplo anterior, rellenando cada número con ceros y concatenándolos después daría como resultado el número binario de 27 bits: 000000000100110000010001001.
La operación siguiente es utilizar la clave 540 de jerarquía de bits, que puede ser almacenada en la memoria 64 de sólo lectura, para efectuar la reordenación de bits del número binario de acuerdo con la clave de jerarquía de bits, operación 538. Como se ha descrito previamente, una clave 540 de jerarquía de bits puede ser cualquier ordenación de los bits...TL_{2} TL_{1}...C_{2} C_{1}...D_{2} D_{1}, 536, y, en general, será seleccionada de manera tal que los programas más probables de ser objeto de preprogramación del temporizador tendrían un código comprimido 212 de valor bajo, lo cual haría mínimas las pulsaciones de botones. La ordenación de la clave de jerarquía de bits puede ser determinada por las probabilidades diferenciales de las diversas combinaciones de bits, como se ha descrito anteriormente. Los detalles de la obtención de la clave 540 de jerarquía de bits fueron descritos con relación a la clave 120 de jerarquía de bits y se puede
utilizar el mismo método para la clave 540 de jerarquía de bits. Por ejemplo, la clave de jerarquía de bits podría ser:
19
La operación siguiente es la combinación de grupos de bits y la conversión de cada grupo en números decimales y la concatenación en un número decimal, operación 542. Por ejemplo, tras la reordenación de acuerdo con la clave de jerarquía de bits, el código puede ser 000000001010010000010001001, que podría ser agrupado como 00000000101001000,0010001001. Si se convierten estos grupos de bits binarios a decimal como 328,137 y se concatenan en un número decimal, el número decimal resultante es 328137. La última operación de codificación es la operación 546 de permutación de número decimal, que permuta el número decimal de acuerdo con la función 544 de permutación que depende de la fecha, 548, y en particular del mes y el año y proporciona a los códigos una característica de seguridad. Tras la operación 546 de permutación de número decimal, el código decimal comprimido G_{8}...G_{2} G_{1}, 550, puede ser, por ejemplo, 238731. Estos códigos codificados son incluidos después en una guía o calendario de programas como en la indicación 212 de códigos comprimidos de la figura 8.
La figura 27 es un diagrama de flujo del método para descodificar un código decimal comprimido en canal, fecha, hora y duración, 560, que es la operación 414 de la figura 23. Una vez que el código decimal comprimido G_{8}...G_{2} G_{1}, 564, es introducido en la operación 562, es necesario invertir la función de permutación de las operaciones 544 y 546 de la figura 26. La primera operación es la operación 566 de extracción de código del día, que extrae el código del día del programa en el código decimal comprimido y pasa el código del día a la operación 568, que recibe también el día actual, 574, del reloj 576, lo cual es realizado por el microordenador 380 de las figuras 21 y 22. El reloj 576 envía también el mes y año actuales a la función 570 de permutación, que depende del mes y el año. La operación 568 efectúa la función: si el código del día es igual o mayor que el día en curso del reloj, utilizar la función de permutación para el mes/año del reloj, en otro caso utilizar la función de permutación para el mes siguiente al mes del reloj y utilizar el año siguiente si el mes en el reloj es Diciembre. En otras palabras, como se puede prever la grabación por preprogramación con un mes o 31 días de antelación, si el día del programa es igual o mayor que el día actual del mes, se referirá a un día del presente mes; en otro caso, si el día del programa es inferior al día actual del mes, debe referirse a un programa del mes siguiente. La operación 566 de extracción de código del día, que debe ser efectuada antes de la operación 580 de inversión de permutación del código decimal comprimido, se consigue mediante un conocimiento a priori de cómo se realiza la operación 546 de código decimal comprimido de la figura 26 con relación a la información de código de día.
El método seleccionado 578 de permutación es utilizado en la operación 580 de inversión de la permutación del código decimal comprimido. Para el ejemplo ofrecido anteriormente, el resultado de la operación 580 sería: 328137. La operación siguiente es la operación 584 de conversión de grupos de números decimales en grupos de números binarios y la concatenación de grupos binarios en un número binario, que es la inversa de la operación 542 de la figura 26 y que para el ejemplo anterior daría como resultado el código binario: 000000001010010000010001001. Después se utiliza la clave 588 de jerarquía de bits en la operación 586 de reordenación de bits del número binario de acuerdo con la clave de jerarquía de bits, que invierte la operación 588 de la figura 26 para obtener 000000000100110000010001001 en el ejemplo anterior, que es ...TL_{2} TL_{1}...C_{2} C_{1}...D_{2} D_{1}, 582, correspondiente a la 536 de la figura 26. La operación siguiente es la operación 590 de agrupar bits para formar tres números binarios TL_{b}, C_{b}, D_{b}, y convertirlos a números decimales, dando como resultado C_{p},D_{p},TL_{p},592, que para el ejemplo anterior sería: 4, 9, 19, y que son vectores de prioridad para canal, día y hora/duración, que a su vez se utilizan para consultar el canal, día, hora y duración, 604, en la tabla 598 de vectores de prioridad de canal (C), en la tabla 600 de vectores de prioridad de fecha (D) y en la tabla 602 de vectores de prioridad de hora/duración (TL), respectivamente.
La operación 606 de consulta de número de canal local, busca el canal local 612, dado el número de canal asignado, 608, en la tabla 610 de canales asignados/locales, que es establecida por el usuario mediante el botón 322 CH (canal), como se ha explicado anteriormente. Un ejemplo de la tabla 610 de canales asignados/locales son las dos columnas de la derecha de la tabla 620 de canales asignados/locales de la figura 28. La correspondencia entre los números de canal asignados, tales como el 624 y 628, y los números de canales locales, tales como el 626 y 630 se establece durante el ajuste que hace el usuario. Para el ejemplo, la figura 28 muestra una correspondencia exacta entre el número 5 de canal asignado y el número 5 de canal local. La última operación es la operación 614 de añadir el mes y el año al día para formar la fecha. El mes y año correctos se obtienen de la operación 568 y dependen nuevamente de si el código del día es igual o mayor que el día del reloj o inferior al día del reloj. Si el código del día es igual o mayor que el día del reloj, se utilizan el mes y el año como se muestran en el reloj; en otro caso, se utiliza el mes siguiente y se utiliza el año siguiente si el mes del reloj es Diciembre. El resultado es el canal, fecha, hora y duración (CDTL), 618,que para el ejemplo anterior sería canal 5, 10 de Febrero, 1990, 7:00 de la tarde y 1,5 horas de duración.
Otro modo de realización preferido es incorporar los medios de descodificación en un receptor de televisión con descodificador 950 de código G, como se ilustra en la figura 29, que es un diagrama de bloques de un sistema que incluye un receptor de televisión con un descodificador de código G. El usuario utilizaría el mando a distancia 956 del televisor o los controles del receptor de televisión para introducir el código que indica el programa a grabar. El mismo mando a distancia del televisor y los controles del televisor serían utilizados también para efectuar las funciones normales de control de la televisión, tales como la selección de canales. Cuando se introduce un código G, el mando a distancia del televisor enviaría el código G al televisor con el descodificador 950 de código G a través del transmisor 958 de infrarrojos. Un receptor 960 de infrarrojos en el receptor 950 de televisión recibiría la transmisión y enviaría el código al descodificador 954 de código G, que descodificaría el código en información CDTL y utilizaría esta información junto con un reloj, que estaría incorporado también en el receptor 950 de televisión, para enviar las órdenes apropiadas al aparato de vídeo 964 y a la caja para cable 966 en el momento apropiado, de forma que se grabará el programa seleccionado a la hora apropiada. La transmisión desde el televisor 950 sería a través de transmisores 962 de infrarrojos, que pueden situarse en puntos estratégicos de la caja del televisor, tales como las esquinas. La transmisión es recibida entonces por el aparato de vídeo 964 a través del receptor 968 de infrarrojos y por la caja para cable 966 a través del receptor 969 de infrarrojos.
La figura 30 es un esquema de un receptor de televisión con un descodificador de código G. El receptor de televisión con descodificador 950 de código G recibiría señales del mando a distancia 956 del televisor a través del receptor 960 de infrarrojos, que enviaría las señales al controlador de órdenes 974 o bien directamente al descodificador 954 de código G. El controlador de órdenes 974 puede estar presente en el receptor de televisión para controlar otros elementos del televisor, incluyendo las funciones "en pantalla" tales como la presentación del número de canal cuando se cambia de canal. El descodificador 954 de código G descodificaría un código G enviado y, utilizando la fecha y hora del reloj 976, enviaría las órdenes apropiadas al aparato de vídeo 964 y a la caja para cable 966 a través de los transmisores 962 de infrarrojos. Los código G y otras órdenes podrían ser enviados también al controlador de órdenes a través del control manual 975. Cuando se descodifica el código G, podrían presentarse "en pantalla" el código G y la información CDTL descodificada como se muestra en la presentación en pantalla 978 de la pantalla/monitor 952 del televisor. La presentación "en pantalla" no es necesaria y cualquier formato es opcional.
La figura 31 es un esquema que muestra el aparato para un descodificador de código G en un receptor de televisión que tiene descodificación de código G. Los circuitos son muy similares al descrito en las figuras 21 y 22; sin embargo, hay interfaces a un receptor 960 de infrarrojos y a un controlador 974 de órdenes en lugar del visor de cristal líquido (LCD) 384 y teclado 386. Los elementos clave son el microcontrolador 980 y el oscilador 982. El interfaz al controlador 974 de órdenes es un modo de realización preferido; otro modo de realización podría tener interfaces directos entre el control manual 975, el receptor 960 de infrarrojos, la pantalla/monitor 952 del televisor y el descodificador 954 de código G sin tener que ir a través del controlador de órdenes 974 intermedio. Los circuitos del televisor incluirían la capacidad de almacenar o aprender los protocolos de código de infrarrojos del aparato de vídeo y de la caja para cable. El diodo 984 emisor de luz de aviso estaría montado en la caja del televisor para advertir de que está a punto de comenzar la grabación con el fin de alertar al usuario de que tenga lista el aparato de vídeo con cinta para grabar.
Con la presentación "en pantalla" en la pantalla/monitor 952 del televisor, el funcionamiento del receptor de televisión con el descodificador 950 de código G puede ser esencialmente idéntico al descrito en las figuras 23, 24 y 25 para introducción de programas, revisión de programas y cancelación de programas y para la ejecución de la preprogramación del grabador utilizando códigos comprimidos, respectivamente. Cualquier cosa que se visualizase en el LCD 384 sería presentada en su lugar en el monitor 952 del televisor. La única diferencia sería que la función "en pantalla" sólo realizaría la operación 402 (presentación de la fecha actual, hora y barras de tiempo) cuando el usuario ponga el mando a distancia 956 del televisor en un modo para introducción y transmisión de código G, revisión de programas o cancelación de programas. El método de codificación de información de canal, fecha, hora y duración del programa en códigos decimales comprimidos de la figura 26, el método de descodificación de códigos decimales comprimidos en información de canal, fecha, hora y duración del programa en códigos decimales comprimidos de la figura 27, y el método de asignación de números de canal a los números de canales locales, como se ilustra en la figura 28, permanecerían igual.
Otro modo de realización preferido de la invención es incorporar los medios de descodificación en diversos equipos asociados con el televisor, tales como un grabador de cassettes de vídeo, una caja para cable o un receptor de satélites. En cualquier sistema, los medios de descodificación sólo tendrían que estar presentes en uno de los equipos, tal como la caja para cable, la cual distribuiría, en el momento apropiado, las órdenes apropiadas a los demás equipos, tales como un aparato de vídeo y un receptor de satélites, para grabar el programa deseado.
La figura 32 es un diagrama de bloques de un sistema que incluye un televisor con un descodificador 950 de código G, un aparato de vídeo 964, una caja para cable 966 y un receptor de satélites 986. Este sistema funcionaría de manera idéntica al sistema ilustrado en la figura 29, excepto que se incluye un receptor de satélites, el cual podría recibir órdenes a través del receptor 988 de infrarrojos desde los transmisores 962 de infrarrojos montados en el receptor de televisión con descodificador 950 de código G. Las órdenes recibidas por el receptor de satélites podrían incluir órdenes de conexión/desconexión y órdenes de selección de canales. El receptor 986 de satélites podría alimentar una señal de televisión al aparato de vídeo 964, el cual grabaría el programa y/o lo retransmitiría a la pantalla/monitor 952 del televisor.
La figura 33 es un diagrama de bloques de un sistema que incluye un aparato de vídeo que tiene un descodificador 991 de código G, un televisor 952, una caja para cable 966 y un receptor de satélites 986. El usuario utilizaría el mando a distancia 956 del televisor o los controles del aparato de vídeo 991 para introducir el código que indica el programa a grabar. Cuando se introduce un código G, el mando a distancia del televisor enviaría el código G al aparato de vídeo 991 con el descodificador 992 de código G, a través del transmisor 958 de infrarrojos. Un receptor 990 de infrarrojos en el aparato de vídeo 991 recibiría la transmisión y enviaría el código al descodificador 992 de código G, el cual descodificaría el código en información CDTL y utilizaría esta información junto con un reloj, que también estaría incorporado en el aparato de vídeo 991, para enviar las órdenes apropiadas a la caja para cable 966 y al receptor de satélites 986 en el momento apropiado, de manera que el programa seleccionado será grabado en la hora apropiada. La transmisión desde del aparato de vídeo 991 sería hecha a través de los transmisores 994 de infrarrojo, que pueden situarse en puntos estratégicos del aparato de vídeo. La transmisión es recibida entonces por la caja para cable 966 a través del receptor 969 de infrarrojos y al receptor de satélites 986 a través del receptor 988 de infrarrojos.
Otro modo de realización preferido del método y aparato de transmisión entre equipos está ilustrado en la figura 36, que es una vista en perspectiva que muestra una caja para cable 372 colocada encima de un aparato de vídeo 370 que tiene un transmisor 1008 de infrarrojos detrás del panel frontal 1009, el cual se comunica con el receptor 1010 de infrarrojos de la caja para cable mediante la reflexión desde las superficies reflectantes que la rodean, tales como las paredes.
Otro modo de realización preferido del método y aparato de transmisión entre equipos está ilustrado en la figura 37, que es una vista en perspectiva que ilustra una caja para cable 372 colocada encima de un aparato de vídeo 370 que tiene un transmisor 1014 de infrarrojos dentro de una cúpula 1012 de infrarrojos en la parte superior del aparato de vídeo, el cual se comunica con el receptor 1010 de infrarrojos de la caja para cable, por comunicación directa o por reflexión, dependiendo de la colocación del receptor 1010 de infrarrojos con relación a la cúpula 1012 de infrarrojos.
Otro modo de realización preferido del método y aparato de transmisión entre equipos está ilustrado en la figura 38, que es una vista en perspectiva de un aparato de vídeo 370 que tiene un transmisor 1022 de infrarrojos dentro de un ratón 1020 acoplado mediante un cable 1018, que está enchufado mediante una clavija 1017 en el receptáculo 1016 del aparato de vídeo. El ratón 1020 está colocado cerca del receptor 1010 de infrarrojos de la caja para cable. Este modo de realización es muy útil cuando la caja para cable está separada del aparato de vídeo por paredes de una caja, por ejemplo, que impedirían la transmisión de infrarrojos directa o reflejada.
Otro modo de realización preferido del método y aparato de transmisión entre equipos está ilustrado en la figura 39, que es una vista en perspectiva de un aparato de vídeo 370 que tiene un transmisor 1026 de infrarrojos dentro de una varilla en un ratón 1024 en miniatura acoplado a través de un cable 1018, que está enchufado mediante una clavija 1017 en un receptáculo 1016 del aparato de vídeo. La varilla del ratón en miniatura 1024 está pegada a la caja para cable muy cerca del receptor 1010 de infrarrojos. Este modo de realización es también muy útil cuando la caja para cable está separada del aparato de vídeo por las paredes de una caja, por ejemplo, que impedirían la transmisión de infrarrojos directa o reflejada.
Los métodos y aparatos de transmisión de las figuras 36, 37, 38 y 39 podrían ser utilizados también con el sistema de la figura 32 para transmitir información desde el receptor de televisión con el descodificador 950 de código G al aparato de vídeo 964, a la caja para cable 966 y al receptor de satélites 986.
La figura 34 es un diagrama de bloques de un sistema que incluye una caja para cable que tiene un descodificador 997 de código G, un televisor 952, un aparato de vídeo 964 y un receptor de satélites 986. El usuario utilizaría el mando a distancia 956 del televisor o los controles de la caja para cable 997 para introducir el código que indica el programa a grabar. Cuando se introduce un código G, el mando a distancia del televisor enviaría el código G a la caja para cable 997 con el descodificador 998 de código G, a través del transmisor 958 de infrarrojos. Un receptor 996 de infrarrojos en la caja para cable 997 recibiría la transmisión y enviaría el código al descodificador 998 de código G, que descodificaría el código en información CDTL y utilizaría esta información junto con un reloj, que estaría incorporado también en la caja para cable 997, para enviar las órdenes apropiadas al aparato de vídeo 964 y al receptor de satélites 986 en el momento apropiado, de manera que el programa seleccionado será grabado a la hora apropiada. La transmisión desde la caja para cable 997 sería efectuada a través de los transmisores 1000 de infrarrojos, que pueden colocarse en puntos estratégicos de la caja para cable. La transmisión es recibida después por el aparato de vídeo 964 a través del receptor 968 de infrarrojos y por el receptor de satélites 986 a través del receptor 988 de infrarrojos. Los métodos y aparatos de transmisión de las figuras 36, 37, 38 y 39 podrían ser utilizados también con el sistema de la figura 34 para transmitir información desde la caja para cable 997 al aparato de vídeo 964 y al receptor de satélites 986.
La figura 35 es un diagrama de bloques de un sistema que incluye un receptor de satélites 1005 que tiene un descodificador de código G, un televisor 952, un aparato de vídeo 964 y una caja para cable 966. El usuario utilizaría el mando a distancia 956 del televisor o los controles del receptor de satélites 1005 para introducir el código que indica el programa a grabar. Cuando se introduce un código G, el mando a distancia del televisor enviaría el código G al receptor de satélites 1005 con el descodificador 1004 de código G, a través del transmisor 958 de infrarrojos. Un receptor 1002 de infrarrojos en el receptor de satélites 1005 recibiría la transmisión y enviaría el código al descodificador 1004 de código G, que descodificaría el código en información CDTL y utilizaría esta información junto con un reloj, que estaría incorporado también en el receptor de satélites 1005, para enviar las órdenes apropiadas al aparato de vídeo 964 y a la caja para cable 966 en el momento apropiado, de manera que el programa seleccionado será grabado a la hora apropiada. La transmisión desde el receptor de satélites 1005 sería efectuada a través de los transmisores 1006 de infrarrojos, que pueden colocarse en puntos estratégicos del receptor de satélites. La transmisión es recibida después por el aparato de vídeo 964 a través del receptor 968 de infrarrojos y por la caja para cable 966 a través del receptor 969 de infrarrojos. Los métodos y aparatos de transmisión de las figuras 36, 37, 38 y 39 podrían ser utilizados también con el sistema de la figura 35 para transmitir información desde el receptor de satélites 1005 al aparato de vídeo 964 y a la caja para cable 966.

Claims (19)

1. Aparato para utilizar códigos comprimidos para la preprogramación de un grabador, que comprende:
un receptor (50);
medios (964) para grabar;
una caja para cable para la selección de canales;
medios (20) para introducir, en dicho receptor, códigos comprimidos que tienen, cada uno de ellos, al menos un dígito y siendo representativos, cada uno de ellos, de la combinación de órdenes de canal, hora, fecha y duración de un programa y estando comprimidos en longitud a partir de dicha combinación;
medios (954) de control que comprenden:
medios (60) para descodificar cada uno de los códigos comprimidos en órdenes de canal, fecha, hora y duración;
medios (62) para almacenar dichas órdenes de canal, fecha, hora y duración;
un reloj (42) con una salida en función del tiempo;
medios (60) para reordenar dichas órdenes de canal, fecha, hora y duración en dichos medios (62) para almacenamiento en orden temporal;
medios (60) para comparar dichas órdenes de fecha y hora del elemento de programa que es temporalmente el primero en el tiempo, en dichos medios (62) de almacenamiento con la salida del reloj (42) en una relación predeterminada;
medios (962) para transmitir órdenes de activar la grabación a dichos medios de grabación al encontrar que existe la relación predeterminada;
medios (962) para transmitir dichas órdenes de canal a la caja para cable al encontrar que existe la relación predeterminada;
medios (40) para medir el tiempo que transcurre a partir de la orden de activación de la grabación; y
medios (952) para transmitir órdenes de desactivación de la grabación a dichos medios (964) de grabación cuando la duración medida de la grabación tiene una relación comparada predeterminada con dicha orden de duración, caracterizado porque el receptor (50) comprende un televisor (950), porque los medios (954) de control están situados en el televisor (950), porque los medios (964) de grabación están dispuestos externamente al televisor (950), porque los medios (962) para transmitir órdenes de activación de la grabación y los medios para transmitir órdenes de finalización de la grabación están situados en el televisor (950) para transmitir a los medios (964) de grabación dispuestos externamente, porque la caja para cable está dispuesta externamente al televisor (950) y porque los medios para transmitir dichas órdenes de canal están situados en dicho televisor (950) para transmitir a la caja para el cable dispuesta externamente.
2. Aparato para utilizar códigos comprimidos para la preprogramación de un grabador que comprende:
un receptor (50);
medios para grabar (964);
un receptor de satélites para la selección de canales;
medios (20) para introducir en dicho receptor códigos comprimidos que tienen, cada uno de ellos, al menos un dígito y siendo, cada uno de ellos, representativo de la combinación de órdenes de canal, hora, fecha y duración de un programa y están comprimidos en longitud a partir de dicha combinación;
medios (954) de control que comprenden:
medios (60) para descodificar cada uno de los códigos comprimidos en órdenes de canal, fecha, hora y duración;
medios (62) para almacenar dichas órdenes de canal, hora, fecha y duración;
un reloj (42) con una salida en función del tiempo;
medios (60) para reordenar dichas órdenes de canal, hora, fecha y duración en dichos medios de almacenamiento en orden temporal;
medios (60) para comparar dichas órdenes de fecha y duración del elemento de programa, que es temporalmente el primero en el tiempo, en dichos medios (62) de almacenamiento con la salida del reloj (42) en una relación predeterminada;
medios (962) para transmitir órdenes de activación de la grabación a dichos medios de grabación al encontrar que existe la relación predeterminada;
medios (962) para transmitir dichas órdenes de canal a dichos medios para la selección de canales al encontrar que existe la relación predeterminada;
medios (40) para medir la duración desde una orden de activación de la grabación; y
medios (952) para transmitir órdenes de desactivación de la grabación a dichos medios de grabación (964) cuando la duración medida de la grabación tiene una relación comparada predeterminada con dicha orden de duración, caracterizado porque el receptor (50) comprende una televisión (950), porque los medios (954) de control están situados en la televisión (950), porque los medios (964) de grabación están dispuestos externamente a la televisión (950), porque los medios (962) para transmitir órdenes de activación de la grabación y los medios para transmitir órdenes de desactivación de la grabación están situados en la televisión (950) para transmitir a los medios (964) de grabación dispuestos externamente, porque el receptor de satélites está dispuesto externamente a la televisión (950), y porque los medios para transmitir dichas órdenes de canal están situados en dicha televisión (950) para transmitir al receptor de satélites dispuesto externamente.
3. Aparato según la reivindicación 1, caracterizado porque dichos medios (20) de introducción comprenden un mando a distancia (956).
4. Aparato según la reivindicación 1, caracterizado porque dichos medios (20) de introducción comprenden medios (954) de control.
5. Aparato según cualquiera de las reivindicaciones 1 a 2, caracterizado porque dichos medios de transmisión comprenden al menos un transmisor de infrarrojos.
6. Aparato según la reivindicación 5, caracterizado por una pluralidad de transmisores de infrarrojos para transmitir simultáneamente en una pluralidad de direcciones.
7. Aparato según la reivindicación 5, caracterizado por un ratón y porque el transmisor de infrarrojos está encerrado en dicho ratón y en el que dicho ratón está unido por un cable a dichos medios de control y en el que dicho ratón está colocado cerca de dichos medios de grabación.
8. Aparato según la reivindicación 5, caracterizado por un ratón y porque el transmisor de infrarrojos está encerrado en dicho ratón y en el que dicho ratón está unido por un cable a dichos medios de control y en el que dicho ratón está colocado cerca de dichos medios de selección de canales.
9. Aparato según la reivindicación 5, caracterizado por un ratón en miniatura y porque el transmisor de infrarrojos está encerrado en dicho ratón en miniatura y en el que dicho ratón en miniatura está unido por un cable a dichos medios de control y en el que dicho ratón en miniatura está colocado cerca de dichos medios de grabación.
10. Aparato según la reivindicación 5, caracterizado por un ratón en miniatura y porque el transmisor de infrarrojos está encerrado en dicho ratón en miniatura y en el que dicho ratón en miniatura está unido por un cable a dichos medios de control y en el que dicho ratón en miniatura está colocado cerca de dichos medios de selección de canales.
11. Un método para permitir la preprogramación de programas para ser grabados por un grabador y poderlos ver en diferido, que comprende las operaciones de:
proporcionar un controlador (954) con medios para transmitir señales y un reloj (42) con una salida en función del tiempo;
introducir en dicho controlador (954) códigos comprimidos que tienen, cada uno de ellos, al menos un dígito y siendo representativos, cada uno de ellos, de la combinación de órdenes de canal, hora, fecha y duración para un programa, y están comprimidos en longitud a partir de dicha combinación;
descodificar cada código comprimido para obtener órdenes de canal, hora, fecha y duración;
proporcionar una memoria (62);
almacenar dichas órdenes de canal, hora, fecha y duración en dicha memoria (62);
reordenar dichas órdenes de canal, hora, fecha y duración en dicha memoria (62) en orden temporal;
comparar las órdenes de fecha y hora del programa temporalmente más próximo en el tiempo, en dicha memoria, con la salida del reloj para obtener una relación predeterminada;
transmitir órdenes de canal y activación de la grabación desde dicho controlador a una caja para cable, tras encontrar que existe la relación predeterminada;
transmitir órdenes de activar la grabación desde dicho controlador a un grabador tras encontrar que existe la relación predeterminada;
seleccionar el canal en la caja para cable;
grabar el programa;
medir el tiempo que transcurre a partir de la transmisión de una orden de activación de la grabación; y
transmitir órdenes de desactivación de la grabación desde dicho controlador cuando la duración medida tiene una relación comparada predeterminada con dicha orden de duración, caracterizado porque dicho controlador está comprendido en un receptor de televisión (950) y la caja para cable y la grabadora están dispuestas externamente a la televisión (950).
12. Un método para permitir la preprogramación de programas para ser grabados por un grabador y poderlos ver en diferido, que comprende las operaciones de:
proporcionar un controlador (954) con medios para transmitir señales y un reloj (42) con una salida en función del tiempo;
introducir en dicho controlador (954) códigos comprimidos que tienen, cada uno de ellos, al menos un dígito y siendo representativos, cada uno de ellos, de la combinación de órdenes de canal, hora, fecha y duración para un programa, y están comprimidos en longitud a partir de dicha combinación;
descodificar cada código comprimido para obtener órdenes de canal, fecha, hora y duración;
proporcionar una memoria (62);
almacenar dichas órdenes de canal, hora, fecha y duración en dicha memoria (62);
reordenar dichas órdenes de canal, hora, fecha y duración en dicha memoria (62) en orden temporal;
comparar las órdenes de fecha y hora del programa temporalmente más próximo en el tiempo, en dicha memoria, con la salida del reloj para obtener una relación predeterminada;
transmitir órdenes de canal y activación de la grabación desde dicho controlador hacia un receptor de satélites, tras encontrar que existe la relación predeterminada;
transmitir órdenes de activación de grabación desde dicho controlador a un grabador tras encontrar que existe la relación predeterminada;
seleccionar el canal en el receptor de satélites;
grabar el programa;
medir el tiempo que transcurre a partir de la transmisión de una orden de activación de la grabación; y
transmitir órdenes de desactivación de la grabación desde dicho controlador al grabador cuando la duración medida tiene una relación comparada predeterminada con dicha orden de duración, caracterizado porque dicho controlador está comprendido en un receptor de televisión (950), y el receptor de satélites y el grabador están dispuestos externamente a la televisión (950).
13. Un método según cualquiera de las reivindicaciones 11 a 12, caracterizado porque la operación de grabar es realizada por un grabador de cassettes de vídeo.
\newpage
14. Un método según cualquiera de las reivindicaciones 11 a 12, caracterizado porque la operación de transmitir es efectuada por al menos un transmisor de infrarrojos que transmite en direcciones múltiples.
15. Un método según cualquiera de las reivindicaciones 11 a 12, caracterizado porque la operación de transmitir es efectuada por un transmisor de infrarrojos unido a un cable.
16. Un método según las reivindicaciones 11-12, caracterizado porque la operación de introducción es efectuada por un mando a distancia.
17. Un método según cualquiera de las reivindicaciones 11 a 12, caracterizado porque la operación de descodificar cada uno de los códigos comprimidos para obtener órdenes de canal, hora, fecha y duración comprende las operaciones de:
permutar dicho código comprimido para obtener un código comprimido permutado;
convertir grupos de dígitos de dicho código comprimido permutado en grupos de dígitos binarios; y
concatenar dichos grupos de dígitos binarios en un número binario;
reordenar los bits de dicho número binario para obtener un código binario comprimido reordenado;
agrupar dicho código binario comprimido reordenado en números de prioridad de canal, fecha, hora y duración; y
obtener dichas órdenes de canal, día, hora y duración a partir de dichos números de prioridad de canal, fecha, hora y duración.
18. Un método según la reivindicación 17, caracterizado porque la operación de permutar dicho código comprimido comprende además:
la permutación de dicho código comprimido en función de la salida de un reloj.
19. Un método según la reivindicación 17, caracterizado por la operación de:
extraer un código del día a partir de dicho código comprimido; y porque dicho código del día es utilizado para efectuar dicha operación de permutación de dicho código comprimido.
ES92922394T 1991-09-30 1992-09-29 Aparato y metodo para utilizar codigos comprimidos para programar la grabacion de programas de television. Expired - Lifetime ES2159509T5 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US76732391A 1991-09-30 1991-09-30
US767323 1991-09-30
US07/829,412 US5307173A (en) 1988-12-23 1992-02-03 Apparatus and method using compressed codes for television program record scheduling
US829412 1992-02-03

Publications (2)

Publication Number Publication Date
ES2159509T3 ES2159509T3 (es) 2001-10-16
ES2159509T5 true ES2159509T5 (es) 2008-12-16

Family

ID=27117897

Family Applications (2)

Application Number Title Priority Date Filing Date
ES00122749T Pending ES2184655T1 (es) 1991-09-30 1992-09-29 Aparato y metodo para usar codigos comprimidos para programacion de un registrador de programas de television.
ES92922394T Expired - Lifetime ES2159509T5 (es) 1991-09-30 1992-09-29 Aparato y metodo para utilizar codigos comprimidos para programar la grabacion de programas de television.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES00122749T Pending ES2184655T1 (es) 1991-09-30 1992-09-29 Aparato y metodo para usar codigos comprimidos para programacion de un registrador de programas de television.

Country Status (13)

Country Link
US (1) US5307173A (es)
EP (3) EP1098520A3 (es)
JP (1) JPH07500443A (es)
CN (1) CN1040494C (es)
AU (1) AU2797192A (es)
CA (1) CA2120255C (es)
DE (2) DE1098520T1 (es)
DK (1) DK0632949T4 (es)
ES (2) ES2184655T1 (es)
MY (1) MY108355A (es)
NZ (1) NZ244444A (es)
TW (1) TW252259B (es)
WO (1) WO1993007711A1 (es)

Families Citing this family (279)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
USRE47642E1 (en) 1981-11-03 2019-10-08 Personalized Media Communications LLC Signal processing apparatus and methods
US7831204B1 (en) 1981-11-03 2010-11-09 Personalized Media Communications, Llc Signal processing apparatus and methods
US5692214A (en) * 1981-12-14 1997-11-25 Levine; Michael R. System for unattended recording of video programs by remote control code transmitter module which receives user selections from a personal computer
CA2005070C (en) * 1988-12-23 1999-04-27 Henry C. Yuen Apparatus and method for using encoded video recorder/player timer preprogramming information
US5532732A (en) * 1988-12-23 1996-07-02 Gemstar Development Corporation Apparatus and methods for using compressed codes for monitoring television program viewing
US5045947A (en) * 1989-05-31 1991-09-03 Jack Beery Television receiver having memory control for tune-by-label feature
US5727060A (en) * 1989-10-30 1998-03-10 Starsight Telecast, Inc. Television schedule system
US7748018B2 (en) * 1989-10-30 2010-06-29 Starsight Telecast, Inc. Arranging channel indicators in a television schedule system
US6832385B2 (en) * 1990-09-10 2004-12-14 United Video Properties, Inc. Television schedule system
JP2763975B2 (ja) * 1990-10-31 1998-06-11 エルジー電子 株式会社 Tv又はvcrの生活情報記録/表示方法
MY117259A (en) * 1991-05-02 2004-06-30 Thomson Consumer Electronics Autoprogrammed channel mapping for a videocassette recorder.
MY110023A (en) * 1991-05-02 1997-11-29 Thomson Consumer Electronics Inc Adaptive menu for programming a videocassette recorder.
US5991498A (en) * 1991-05-24 1999-11-23 Starsight Telecast, Inc. VCR programming system
US6240241B1 (en) 1991-08-19 2001-05-29 Index Systems, Inc. Still frame video in index
US5621579A (en) * 1991-08-19 1997-04-15 Index Systems, Inc. Method for selectively playing back programs recorded on a video tape
US6487362B1 (en) * 1991-08-19 2002-11-26 Index Systems, Inc. Enhancing operations of video tape cassette players
US6091884A (en) * 1991-08-19 2000-07-18 Index Systems, Inc. Enhancing operations of video tape cassette players
MY110893A (en) * 1991-12-13 1999-06-30 Thomson Consumer Electonics Inc An ir led assembly for vcr control of a cable converter unit
MY110336A (en) * 1991-12-13 1998-04-30 Thomson Consumer Electronics Inc Vcr control of a cable converter unit
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
JP2551513B2 (ja) * 1992-04-22 1996-11-06 橋本コーポレイション株式会社 Vtrとテレビとの結合装置
CN1043288C (zh) * 1992-06-19 1999-05-05 宝石星发展公司 用压缩码进行录像预编程的装置及方法
US5742329A (en) * 1992-10-26 1998-04-21 Canon Kabushiki Kaisha Image pickup system and communication system for use in video conference system or the like
US5657414A (en) * 1992-12-01 1997-08-12 Scientific-Atlanta, Inc. Auxiliary device control for a subscriber terminal
GB2273618B (en) * 1992-12-02 1996-09-11 Gold Star Co Automatic broadcasting channel setting system and the method thereof
US9286294B2 (en) 1992-12-09 2016-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content suggestion engine
US7168084B1 (en) 1992-12-09 2007-01-23 Sedna Patent Services, Llc Method and apparatus for targeting virtual objects
BR9307621A (pt) 1992-12-09 1999-06-15 Discovery Communicat Inc Central de operações processos para alocar uma dada quantidade de largura de banda para pluralidade de programas para transmitir uma pluralidade de programas para gerar um sinal de informação de controle de programa para auxiliar um empacotador de prgrama e para criar serviços de programa e vídeo próximo sobre o serviço demandado
EP0688488A1 (en) * 1993-03-05 1995-12-27 MANKOVITZ, Roy J. Apparatus and method using compressed codes for television program record scheduling
US5515173A (en) * 1993-03-05 1996-05-07 Gemstar Developement Corporation System and method for automatically recording television programs in television systems with tuners external to video recorders
AU6551794A (en) * 1993-03-24 1994-10-11 Universal Electronics Inc. Infrared remote control device for a personal digital assistant
JP3353370B2 (ja) * 1993-04-02 2002-12-03 ソニー株式会社 記録再生機の遠隔制御装置および遠隔制御方法
JP2802876B2 (ja) * 1993-04-28 1998-09-24 橋本コーポレイション株式会社 テレビ受像機とビデオテープレコーダとを結合した装置
JP3227272B2 (ja) * 1993-05-28 2001-11-12 アイシン・エィ・ダブリュ株式会社 ナビゲーション装置
JPH06348490A (ja) * 1993-06-08 1994-12-22 Hitachi Ltd 演算処理方法、及びマイクロコンピュータ
JPH0775030A (ja) * 1993-07-07 1995-03-17 Hitachi Ltd テレビジョン受信機
US5761372A (en) * 1993-09-03 1998-06-02 Sony Corporation Recording reservation central control system for one or more VTR's
US5734786A (en) * 1993-10-20 1998-03-31 E Guide, Inc. Apparatus and methods for deriving a television guide from audio signals
US5499103A (en) * 1993-10-20 1996-03-12 E Guide, Inc. Apparatus for an electronic guide with video clips
KR970004287B1 (ko) * 1993-10-26 1997-03-26 대우전자 주식회사 브이씨알의 예약 녹화 방법
US8793738B2 (en) 1994-05-04 2014-07-29 Starsight Telecast Incorporated Television system with downloadable features
CN1140115C (zh) * 1994-05-16 2004-02-25 杰姆斯达发展公司 采用压缩码的电视节目录制预定和卫星接收机控制
US6204796B1 (en) * 1994-07-01 2001-03-20 Gemstar Development Corporation Apparatus and methods for generating codes for controlling appliances from a remote controller
GB2292492A (en) * 1994-08-17 1996-02-21 Thomson Consumer Electronics Automatic mapping for SHOWVIEW/Video Plus+/G-code
WO1996012371A1 (en) * 1994-10-12 1996-04-25 Gemstar Development Corporation Apparatus for scanning television program scheduling information
US5920842A (en) * 1994-10-12 1999-07-06 Pixel Instruments Signal synchronization
JP3812681B2 (ja) * 1994-10-27 2006-08-23 インデックス システムズ, インコーポレイティド ビデオ信号中のレコーダ・プログラミング・データをダウンロードする装置及び方法
US5600368A (en) * 1994-11-09 1997-02-04 Microsoft Corporation Interactive television system and method for viewer control of multiple camera viewpoints in broadcast programming
US20020010918A1 (en) * 1994-12-28 2002-01-24 E-Guide, Inc. Apparatus and methods for a television on-screen guide
US6341195B1 (en) * 1994-12-28 2002-01-22 E-Guide, Inc. Apparatus and methods for a television on-screen guide
US5548345A (en) * 1995-01-05 1996-08-20 Protelcon, Inc. Video viewing censoring supervision system
US5552837A (en) * 1995-03-01 1996-09-03 Gemstar Development Corporation Remote controller for scanning data and controlling a video system
US5559550A (en) * 1995-03-01 1996-09-24 Gemstar Development Corporation Apparatus and methods for synchronizing a clock to a network clock
US5550576A (en) * 1995-04-17 1996-08-27 Starsight Telecast Incorporated Method and apparatus for merging television program schedule information received from multiple television schedule information sources
US5828945A (en) * 1995-04-17 1998-10-27 Starsight Telecast, Inc. Merging multi-source information in a television system
US8539528B2 (en) 1995-04-17 2013-09-17 Starsight Telecast, Inc. Multi-source switching in a television system
US5945987A (en) 1995-05-05 1999-08-31 Microsoft Corporation Interactive entertainment network system and method for providing short sets of preview video trailers
US5721829A (en) * 1995-05-05 1998-02-24 Microsoft Corporation System for automatic pause/resume of content delivered on a channel in response to switching to and from that channel and resuming so that a portion of the content is repeated
US5752160A (en) * 1995-05-05 1998-05-12 Dunn; Matthew W. Interactive entertainment network system and method with analog video startup loop for video-on-demand
US5861906A (en) * 1995-05-05 1999-01-19 Microsoft Corporation Interactive entertainment network system and method for customizing operation thereof according to viewer preferences
US5852478A (en) * 1995-05-12 1998-12-22 Gemstar Development Corporation Vps compatible apparatus and method for selection of correct IR code sets
EP0781487B1 (en) * 1995-05-12 2002-04-24 Gemstar Development Corporation Vps compatible apparatus and method using compressed codes for ir code selection
US5963269A (en) * 1995-06-07 1999-10-05 Beery; Jack Apparatus for controlling a television receiver using a plurality of stored labels
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
US5751282A (en) * 1995-06-13 1998-05-12 Microsoft Corporation System and method for calling video on demand using an electronic programming guide
US5801753A (en) * 1995-08-11 1998-09-01 General Instrument Corporation Of Delaware Method and apparatus for providing an interactive guide to events available on an information network
US6002394A (en) 1995-10-02 1999-12-14 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US6323911B1 (en) 1995-10-02 2001-11-27 Starsight Telecast, Inc. System and method for using television schedule information
US6240240B1 (en) * 1995-10-27 2001-05-29 Sony Corporation Apparatus and method for controlling the recording of television programs
US6122011A (en) * 1995-12-27 2000-09-19 Index Systems, Inc. Apparatus and method for creating or editing a channel map
US6195501B1 (en) * 1996-03-28 2001-02-27 Intel Corporation Computer control of a video cassette recorder using wireless communication and a vertical blanking interval triggering
US6240555B1 (en) * 1996-03-29 2001-05-29 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US6025837A (en) 1996-03-29 2000-02-15 Micrsoft Corporation Electronic program guide with hyperlinks to target resources
US5657072A (en) * 1996-04-10 1997-08-12 Microsoft Corporation Interactive entertainment network system and method for providing program listings during non-peak times
US6469753B1 (en) 1996-05-03 2002-10-22 Starsight Telecast, Inc. Information system
US6567606B2 (en) 1996-07-05 2003-05-20 Starsight Telecast Incorporation On screen VCR programming guide
CN1110950C (zh) * 1996-10-08 2003-06-04 松下电器产业株式会社 信息接收方法及使用此方法的信息接收装置
US6049831A (en) * 1996-11-08 2000-04-11 Gte Laboratories Incorporated System for transmitting network-related information where requested network information is separately transmitted as definitions and display information
US8635649B2 (en) 1996-12-19 2014-01-21 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US6687906B1 (en) 1996-12-19 2004-02-03 Index Systems, Inc. EPG with advertising inserts
US6604242B1 (en) * 1998-05-18 2003-08-05 Liberate Technologies Combining television broadcast and personalized/interactive information
US6208335B1 (en) 1997-01-13 2001-03-27 Diva Systems Corporation Method and apparatus for providing a menu structure for an interactive information distribution system
US5850218A (en) * 1997-02-19 1998-12-15 Time Warner Entertainment Company L.P. Inter-active program guide with default selection control
US5926207A (en) * 1997-03-31 1999-07-20 Compaq Computer Corporation Channel server functionality
GB2325537B8 (en) * 1997-03-31 2000-01-31 Microsoft Corp Query-based electronic program guide
US6326970B1 (en) 1997-05-16 2001-12-04 Liberate Technologies TV centric layout
US6108516A (en) * 1997-06-06 2000-08-22 Hughes Electronics Corporation Remote programmer for a satellite television receiver
JP4062577B2 (ja) 1997-07-21 2008-03-19 ジェムスター ディベロプメント コーポレイション 表示及び記録制御インタフェースのためのシステム及び方法
US6604240B2 (en) 1997-10-06 2003-08-05 United Video Properties, Inc. Interactive television program guide system with operator showcase
US7117440B2 (en) * 1997-12-03 2006-10-03 Sedna Patent Services, Llc Method and apparatus for providing a menu structure for an interactive information distribution system
US7185355B1 (en) 1998-03-04 2007-02-27 United Video Properties, Inc. Program guide system with preference profiles
US6564379B1 (en) 1998-04-30 2003-05-13 United Video Properties, Inc. Program guide system with flip and browse advertisements
US6040829A (en) 1998-05-13 2000-03-21 Croy; Clemens Personal navigator system
US6476825B1 (en) 1998-05-13 2002-11-05 Clemens Croy Hand-held video viewer and remote control device
US20020095676A1 (en) 1998-05-15 2002-07-18 Robert A. Knee Interactive television program guide system for determining user values for demographic categories
DE19829022A1 (de) * 1998-06-30 2000-01-05 Thomson Brandt Gmbh Verfahren zum Ansteuern eines Satellitenempfängers
US6442755B1 (en) 1998-07-07 2002-08-27 United Video Properties, Inc. Electronic program guide using markup language
US8286207B1 (en) 1998-07-13 2012-10-09 Thomson Licensing System for processing programs and system timing information derived from multiple broadcast sources
CN1867068A (zh) 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
AR020608A1 (es) 1998-07-17 2002-05-22 United Video Properties Inc Un metodo y una disposicion para suministrar a un usuario acceso remoto a una guia de programacion interactiva por un enlace de acceso remoto
ES2638812T3 (es) 1998-07-17 2017-10-24 Rovi Guides, Inc. Sistema de guía interactiva de programas de televisión que tiene múltiples dispositivos dentro de un hogar
US7091968B1 (en) * 1998-07-23 2006-08-15 Sedna Patent Services, Llc Method and apparatus for encoding a user interface
US6754905B2 (en) 1998-07-23 2004-06-22 Diva Systems Corporation Data structure and methods for providing an interactive program guide
BR9912385A (pt) 1998-07-23 2002-01-15 Diva Systems Corp Interface de usuário gerada em um extremo de cabeça, guia de programa interativo, e, processos de geração e distribuição de uma interface de usuário, e de interação com um guia de programa interativo
JP2000041210A (ja) 1998-07-23 2000-02-08 Toshiba Video Products Japan Kk タイマー予約装置
US6584153B1 (en) 1998-07-23 2003-06-24 Diva Systems Corporation Data structure and methods for providing an interactive program guide
US9924234B2 (en) 1998-07-23 2018-03-20 Comcast Ip Holdings I, Llc Data structure and methods for providing an interactive program
WO2000005892A1 (en) 1998-07-23 2000-02-03 Diva Systems Corporation System for generating, distributing and receiving an interactive user interface
US6505348B1 (en) * 1998-07-29 2003-01-07 Starsight Telecast, Inc. Multiple interactive electronic program guide system and methods
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
US20100325668A1 (en) * 1998-08-11 2010-12-23 Starsight Telecast, Inc. Television schedule system
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
US6499138B1 (en) 1998-09-10 2002-12-24 Bellsouth Intellectual Property Corporation Methods and systems for providing information about programs available for viewing
US8291450B2 (en) 1999-09-10 2012-10-16 At&T Intellectual Property I, L.P. Methods and systems for providing information about programs available for viewing
US6732370B1 (en) * 1998-11-30 2004-05-04 Diva Systems Corporation Service provider side interactive program guide encoder
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US7665111B1 (en) 1999-10-20 2010-02-16 Tivo Inc. Data storage management and scheduling system
US7543325B2 (en) 1999-03-30 2009-06-02 Tivo Inc. System for remotely controlling client recording and storage behavior
US6968567B1 (en) 1999-04-15 2005-11-22 Sedna Patent Services, Llc Latency reduction in providing interactive program guide
US6904610B1 (en) * 1999-04-15 2005-06-07 Sedna Patent Services, Llc Server-centric customized interactive program guide in an interactive television environment
US7058965B1 (en) 1999-04-15 2006-06-06 Sedna Patent Services, Llc Multiplexing structures for delivery of interactive program guide
US7127737B1 (en) 2000-01-26 2006-10-24 Sedna Patent Services, Llc Bandwidth management techniques for delivery of interactive program guide
US7096487B1 (en) 1999-10-27 2006-08-22 Sedna Patent Services, Llc Apparatus and method for combining realtime and non-realtime encoded content
US6614843B1 (en) 1999-04-15 2003-09-02 Diva Systems Corporation Stream indexing for delivery of interactive program guide
US6704359B1 (en) * 1999-04-15 2004-03-09 Diva Systems Corp. Efficient encoding algorithms for delivery of server-centric interactive program guide
US6621870B1 (en) * 1999-04-15 2003-09-16 Diva Systems Corporation Method and apparatus for compressing video sequences
US6754271B1 (en) * 1999-04-15 2004-06-22 Diva Systems Corporation Temporal slice persistence method and apparatus for delivery of interactive program guide
US7254824B1 (en) 1999-04-15 2007-08-07 Sedna Patent Services, Llc Encoding optimization techniques for encoding program grid section of server-centric interactive programming guide
US6651252B1 (en) 1999-10-27 2003-11-18 Diva Systems Corporation Method and apparatus for transmitting video and graphics in a compressed form
WO2000077974A1 (en) 1999-06-11 2000-12-21 Liberate Technologies Hierarchical open security information delegation and acquisition
US7222155B1 (en) 1999-06-15 2007-05-22 Wink Communications, Inc. Synchronous updating of dynamic interactive applications
US7069571B1 (en) 1999-06-15 2006-06-27 Wink Communications, Inc. Automated retirement of interactive applications using retirement instructions for events and program states
US7634787B1 (en) 1999-06-15 2009-12-15 Wink Communications, Inc. Automatic control of broadcast and execution of interactive applications to maintain synchronous operation with broadcast programs
US6721954B1 (en) 1999-06-23 2004-04-13 Gateway, Inc. Personal preferred viewing using electronic program guide
US7607152B1 (en) 2000-01-26 2009-10-20 Cox Communications, Inc. Demand-cast system and bandwidth management for delivery of interactive programming
US8255956B2 (en) * 1999-06-28 2012-08-28 Cox Communications, Inc. System and method for delivery of short-time duration video segments
EP1197074A1 (en) 1999-06-28 2002-04-17 Index Systems, Inc. System and method for utilizing epg database for modifying advertisements
AU5775900A (en) 1999-06-29 2001-01-31 United Video Properties, Inc. Method and system for a video-on-demand-related interactive display within an interactive television application
US7464394B1 (en) 1999-07-22 2008-12-09 Sedna Patent Services, Llc Music interface for media-rich interactive program guide
US7373652B1 (en) 1999-07-22 2008-05-13 Sedna Patent Services, Llc Server-centric search function in an interactive program guide
US6971118B1 (en) * 1999-07-28 2005-11-29 Sharp Laboratories Of America, Inc. System for displaying programming guide information
AU6634700A (en) * 1999-08-09 2001-03-05 Gemstar Development Corporation Method and apparatus for programming of a vcr recording
US6591421B1 (en) 1999-08-25 2003-07-08 Spotware Technologies, Inc. System and method for automatically detecting and generating electronic program guide entries of future programming
AU7706500A (en) 1999-09-20 2001-04-24 Tivo, Inc. Closed caption tagging system
WO2001028260A2 (en) 1999-10-13 2001-04-19 Openglobe, Inc. Method of identifying signal by accessing at least one database to obtain information about the signal source
US20030182567A1 (en) 1999-10-20 2003-09-25 Tivo Inc. Client-side multimedia content targeting system
US9094727B1 (en) 1999-10-27 2015-07-28 Cox Communications, Inc. Multi-functional user interface using slice-based encoding
ATE359669T1 (de) * 1999-10-27 2007-05-15 Sedna Patent Services Llc Vielfache videoströme unter verwendung von slice- basierter kodierung
US7159232B1 (en) * 1999-11-16 2007-01-02 Microsoft Corporation Scheduling the recording of television programs
US7065287B1 (en) 1999-12-02 2006-06-20 Digital Networks North America, Inc. Apparatus, method and database for control of audio/video equipment
JP4352549B2 (ja) * 2000-01-13 2009-10-28 三菱電機株式会社 受信装置
JP2001202669A (ja) * 2000-01-18 2001-07-27 Sony Corp 情報処理装置及び方法、媒体
US7631338B2 (en) * 2000-02-02 2009-12-08 Wink Communications, Inc. Interactive content delivery methods and apparatus
US7028327B1 (en) 2000-02-02 2006-04-11 Wink Communication Using the electronic program guide to synchronize interactivity with broadcast programs
US20020046407A1 (en) * 2000-02-18 2002-04-18 Alexander Franco Use of web pages to remotely program a broadcast content recording system
MXPA02008941A (es) * 2000-03-14 2003-02-10 Thomson Licensing Sa Sistema y metodo para proporcionar una funcion de grabacion cuando la informacion deun programa no esta disponible.
US20020016964A1 (en) * 2000-03-30 2002-02-07 Shuntaro Aratani Information processing apparatus and method, data broadcasting receiving apparatus, and printer
EP2309440A1 (en) 2000-03-31 2011-04-13 United Video Properties, Inc. System and method for metadata-linked advertisements
JP4560695B2 (ja) * 2000-06-29 2010-10-13 ソニー株式会社 予約情報設定装置、電子機器および予約情報設定方法
JP2002016866A (ja) 2000-06-30 2002-01-18 Toshiba Corp ファイル管理システムおよびステータス情報送信システム
US20020021309A1 (en) * 2000-06-30 2002-02-21 Tara Burnhouse Future program action indication display
JP2002094916A (ja) * 2000-07-14 2002-03-29 Sony Corp 画像記録装置、画像記録方法および記録媒体
US20060259926A1 (en) 2000-07-20 2006-11-16 Digital Deck, Inc. Adaptable programming guide for networked devices
US20020053081A1 (en) * 2000-10-31 2002-05-02 Digitaldeck, Inc. Adaptable programming guide for networked devices
US20020029384A1 (en) 2000-07-20 2002-03-07 Griggs Theodore L. Mechanism for distributing content data
US7773859B1 (en) * 2000-08-30 2010-08-10 Microsoft Corporation Resolving recording conflicts between coinciding programming
PT1327209E (pt) 2000-10-11 2008-11-28 United Video Properties Inc Sistemas e métodos para proporcionar o armazenamento de dados em servidores num sistema de fornecimento a pedido de media
WO2002033973A2 (en) * 2000-10-15 2002-04-25 Sonicblue Incorporated Method and system for pause ads
EP1336296A1 (en) * 2000-11-08 2003-08-20 Koninklijke Philips Electronics N.V. Method of composing a list of tv or radio programs from a given transmission schedule
AUPR190500A0 (en) * 2000-12-07 2001-01-04 Right Hemisphere Pty Limited Video recorder programming
JP3729395B2 (ja) * 2001-07-25 2005-12-21 ソニー株式会社 表示制御装置
US7793326B2 (en) 2001-08-03 2010-09-07 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator
US7908628B2 (en) 2001-08-03 2011-03-15 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator content coding and formatting
US8429688B1 (en) 2001-09-19 2013-04-23 At&T Intellectual Property I, L.P. Broadcast programming guide
US6725246B2 (en) * 2001-09-27 2004-04-20 Intel Corporation Method and apparatus for varying-radix numeration system
JP2005506021A (ja) * 2001-10-12 2005-02-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Epgを介する記録時間間隔の追加マージン
US20030086694A1 (en) * 2001-11-07 2003-05-08 Nokia Corporation Recording program scheduling information in an electronic calendar
IL147585A0 (en) * 2002-01-11 2002-08-14 System and method for providing a computer response associated with a printed material
US20030146928A1 (en) * 2002-01-31 2003-08-07 Paul Finster Method and system for optimal grid alignment
GB2384867A (en) * 2002-02-01 2003-08-06 Audio Partnership Plc Control system for audio visual equipment
US20030167471A1 (en) * 2002-03-04 2003-09-04 Cliff Roth System and method for selection of video products that are deliverable on demand
US7369750B2 (en) * 2002-04-24 2008-05-06 Microsoft Corporation Managing record events
AU2003268273B2 (en) * 2002-08-30 2007-07-26 Opentv, Inc Carousel proxy
US7109908B2 (en) * 2002-10-18 2006-09-19 Contec Corporation Programmable universal remote control unit
US7154566B2 (en) * 2002-12-05 2006-12-26 Koninklijke Philips Electronics N.V. Programmable universal remote control unit and method of programming same
GB2400508B (en) * 2002-12-18 2006-10-25 Chris Skelton Automatic recording device for use with set top boxes
US7493646B2 (en) 2003-01-30 2009-02-17 United Video Properties, Inc. Interactive television systems with digital video recording and adjustable reminders
US20040255327A1 (en) * 2003-06-12 2004-12-16 Digital Deck, Inc. Media content distribution system and method
US7046185B2 (en) 2003-06-19 2006-05-16 Contec Corporation Programmable universal remote control unit and method of programming same
US9021529B2 (en) * 2004-07-15 2015-04-28 Microsoft Technology Licensing, Llc Content recordation techniques
TW200604905A (en) * 2004-07-23 2006-02-01 Hon Hai Prec Ind Co Ltd System and method for controlling media player with an audio DJ controller
US7743398B2 (en) * 2004-08-13 2010-06-22 Microsoft Corporation Video recording conflict management and user interface
US8806533B1 (en) * 2004-10-08 2014-08-12 United Video Properties, Inc. System and method for using television information codes
EP2408202B1 (en) 2004-11-19 2017-05-17 TiVo Solutions Inc. Method and apparatus for secure transfer and playback of multimedia content
TW200704183A (en) 2005-01-27 2007-01-16 Matrix Tv Dynamic mosaic extended electronic programming guide for television program selection and display
US8387089B1 (en) 2005-05-06 2013-02-26 Rovi Guides, Inc. Systems and methods for providing a scan
US8640166B1 (en) 2005-05-06 2014-01-28 Rovi Guides, Inc. Systems and methods for content surfing
US8875196B2 (en) * 2005-08-13 2014-10-28 Webtuner Corp. System for network and local content access
US20070052549A1 (en) * 2005-08-22 2007-03-08 Contec Corporation Apparatus and method for updating encoded signal information stored in a remote control unit through direct key entry
US7788266B2 (en) 2005-08-26 2010-08-31 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US9113107B2 (en) 2005-11-08 2015-08-18 Rovi Guides, Inc. Interactive advertising and program promotion in an interactive television system
US20070157223A1 (en) * 2005-12-29 2007-07-05 United Video Properties, Inc. Systems and methods for managing content
US20070156521A1 (en) 2005-12-29 2007-07-05 United Video Properties, Inc. Systems and methods for commerce in media program related merchandise
US20070162936A1 (en) * 2006-01-06 2007-07-12 Verizon Data Services Inc. Interactive main menu graphical user interface systems and methods
US7657526B2 (en) 2006-03-06 2010-02-02 Veveo, Inc. Methods and systems for selecting and presenting content based on activity level spikes associated with the content
US20100064320A1 (en) * 2006-03-13 2010-03-11 Verizon Services Corp. Integrating data on program popularity into an on-screen program guide
US20070223870A1 (en) * 2006-03-23 2007-09-27 Seagate Technology Llc Single board digital video system
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
US8069461B2 (en) 2006-03-30 2011-11-29 Verizon Services Corp. On-screen program guide with interactive programming recommendations
EP1855438A1 (en) * 2006-05-09 2007-11-14 THOMSON Licensing Device, system and method for service delivery with anti-emulation mechanism
US9679602B2 (en) 2006-06-14 2017-06-13 Seagate Technology Llc Disc drive circuitry swap
US7661121B2 (en) 2006-06-22 2010-02-09 Tivo, Inc. In-band data recognition and synchronization system
US9173001B1 (en) 2006-06-27 2015-10-27 Verizon Patent And Licensing Inc. Media content access systems and methods
US9918043B2 (en) * 2006-06-27 2018-03-13 Verizon Patent And Licensing Inc. Snippet access systems and methods
WO2008016611A2 (en) 2006-07-31 2008-02-07 United Video Properties, Inc. Systems and methods for providing media guidance planners
US20080046935A1 (en) * 2006-08-18 2008-02-21 Krakirian Haig H System and method for displaying program guide information
US9021404B2 (en) * 2006-08-25 2015-04-28 Verizon Patent And Licensing Inc. Systems and methods for modifying content based on a positional relationship
US8418217B2 (en) * 2006-09-06 2013-04-09 Verizon Patent And Licensing Inc. Systems and methods for accessing media content
US8566874B2 (en) * 2006-10-03 2013-10-22 Verizon Patent And Licensing Inc. Control tools for media content access systems and methods
US8316320B2 (en) * 2006-10-03 2012-11-20 Verizon Patent And Licensing Inc. Expandable history tab in interactive graphical user interface systems and methods
US8464295B2 (en) * 2006-10-03 2013-06-11 Verizon Patent And Licensing Inc. Interactive search graphical user interface systems and methods
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
US8316408B2 (en) * 2006-11-22 2012-11-20 Verizon Patent And Licensing Inc. Audio processing for media content access systems and methods
US8250605B2 (en) * 2006-12-18 2012-08-21 Verizon Services Corp. Systems and methods for presentation of preferred program selections
US8194034B2 (en) * 2006-12-20 2012-06-05 Verizon Patent And Licensing Inc. Systems and methods for controlling a display
US8028313B2 (en) * 2006-12-21 2011-09-27 Verizon Patent And Licensing Inc. Linear program guide for media content access systems and methods
US8510780B2 (en) * 2006-12-21 2013-08-13 Verizon Patent And Licensing Inc. Program guide navigation tools for media content access systems and methods
US8898701B2 (en) * 2006-12-29 2014-11-25 Verizon Patent And Licensing Inc. Method and system for providing attribute browsing of video assets
US8015581B2 (en) * 2007-01-05 2011-09-06 Verizon Patent And Licensing Inc. Resource data configuration for media content access systems and methods
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US8418206B2 (en) 2007-03-22 2013-04-09 United Video Properties, Inc. User defined rules for assigning destinations of content
US20080244654A1 (en) * 2007-03-29 2008-10-02 Verizon Laboratories Inc. System and Method for Providing a Directory of Advertisements
US20080244643A1 (en) * 2007-03-30 2008-10-02 Verizon Laboratories Inc. System and Method for Alphanumeric Channel-Changing
US20080301053A1 (en) * 2007-05-29 2008-12-04 Verizon Services Organization Inc. Service broker
US8832553B2 (en) * 2007-06-19 2014-09-09 Verizon Patent And Licensing Inc. Program guide 3D zoom
US8103965B2 (en) 2007-06-28 2012-01-24 Verizon Patent And Licensing Inc. Media content recording and healing statuses
US9826189B2 (en) * 2007-06-28 2017-11-21 Verizon Patent And Licensing Inc. Apparatus, method, and computer program product for presenting an interactive programming guide
US8483546B2 (en) * 2007-06-29 2013-07-09 Verizon Patent And Licensing Inc. Apparatus, method, and computer program product for receiving a command during a commercial
US8739213B2 (en) 2007-06-29 2014-05-27 Verizon Patent And Licensing Inc. System and method for providing an interactive program guide for past current and future programming
US9654721B2 (en) * 2007-07-10 2017-05-16 Verizon Patent And Licensing Inc. System and method for providing personal content recommendations
US8407737B1 (en) 2007-07-11 2013-03-26 Rovi Guides, Inc. Systems and methods for providing a scan transport bar
KR20090024522A (ko) * 2007-09-04 2009-03-09 주식회사 유진테크 기판처리장치
US9305590B2 (en) 2007-10-16 2016-04-05 Seagate Technology Llc Prevent data storage device circuitry swap
WO2009057124A2 (en) * 2007-11-01 2009-05-07 Innomedia Technologies Pvt. Ltd. A set-top-box cabinet for natural cooling of internal electronics
US8051447B2 (en) 2007-12-19 2011-11-01 Verizon Patent And Licensing Inc. Condensed program guide for media content access systems and methods
US9118869B2 (en) * 2007-12-19 2015-08-25 Verizon Patent And Licensing Inc. Vertically oriented program guide for media content access systems and methods
US20090172544A1 (en) * 2007-12-31 2009-07-02 United Video Properties, Inc. Interactive media guidance application with access to multiple data sets
US8601526B2 (en) 2008-06-13 2013-12-03 United Video Properties, Inc. Systems and methods for displaying media content and media guidance information
JP4538068B2 (ja) * 2008-10-31 2010-09-08 株式会社東芝 コンテンツ再生装置及びコンテンツ再生方法
WO2010056492A2 (en) * 2008-11-12 2010-05-20 Level 3 Communications, Llc User authentication in a content delivery network
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
US8522163B2 (en) * 2008-12-19 2013-08-27 Verizon Patent And Licensing Inc. Systems and methods for radial display of time based information
US9274505B2 (en) * 2008-12-19 2016-03-01 Verizon Patent And Licensing Inc. Systems and methods for radial display of time based information
US8438596B2 (en) 2009-04-08 2013-05-07 Tivo Inc. Automatic contact information transmission system
US9241136B2 (en) * 2009-06-29 2016-01-19 Verizon Patent And Licensing Inc. Method and apparatus for creating a personalized programming guide
US8990858B2 (en) * 2009-06-29 2015-03-24 Verizon Patent And Licensing Inc. Search-based media program guide systems and methods
US9009622B2 (en) * 2009-06-30 2015-04-14 Verizon Patent And Licensing Inc. Media content instance search methods and systems
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
US20110078572A1 (en) * 2009-09-30 2011-03-31 Rovi Technologies Corporation Systems and methods for analyzing clickstream data
US9258529B2 (en) * 2009-10-15 2016-02-09 Verizon Patent And Licensing Inc. Data distribution
US9571784B2 (en) * 2009-10-30 2017-02-14 Verizon Patent And Licensing Inc. Media content watch list systems and methods
US8327394B2 (en) * 2009-11-30 2012-12-04 Verizon Patent And Licensing Inc. Boosting factor for television content
US20110154399A1 (en) * 2009-12-22 2011-06-23 Verizon Patent And Licensing, Inc. Content recommendation engine
US8528016B2 (en) * 2009-12-28 2013-09-03 Verizon Patent And Licensing Inc. Dynamic program guide information
US8640052B2 (en) 2009-12-31 2014-01-28 Verizon Patent And Licensing Inc. User interface enhancements for media content access systems and methods
US9204193B2 (en) 2010-05-14 2015-12-01 Rovi Guides, Inc. Systems and methods for media detection and filtering using a parental control logging application
US20110279269A1 (en) * 2010-05-16 2011-11-17 Jeremy Gerber Countdown timer application and method for programmable personal digital devices
US9736524B2 (en) 2011-01-06 2017-08-15 Veveo, Inc. Methods of and systems for content search based on environment sampling
CN103636147A (zh) 2011-05-17 2014-03-12 韦伯图纳公司 用于可扩展的高精确度传感器的系统和方法以及基于id的观众测量系统
CN103649906A (zh) 2011-05-24 2014-03-19 韦伯图纳公司 提高观众测量系统中的分析报告产生的效率和速度的系统和方法
US9021543B2 (en) 2011-05-26 2015-04-28 Webtuner Corporation Highly scalable audience measurement system with client event pre-processing
US9154813B2 (en) 2011-06-09 2015-10-06 Comcast Cable Communications, Llc Multiple video content in a composite video stream
US8805418B2 (en) 2011-12-23 2014-08-12 United Video Properties, Inc. Methods and systems for performing actions based on location-based rules
US9147198B2 (en) 2013-01-10 2015-09-29 Rovi Technologies Corporation Systems and methods for providing an interface for data driven media placement
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material
US9948962B2 (en) 2014-11-13 2018-04-17 Time Warner Cable Enterprises Llc Apparatus and methods for efficient delivery of electronic program guide data

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2333116C3 (de) * 1973-06-29 1985-04-25 Blaupunkt-Werke Gmbh, 3200 Hildesheim Elektronische Programmzeitung
DE2445520A1 (de) * 1974-09-24 1976-04-01 Braun Ag Einrichtung fuer die automatische auswahl bestimmter sendungen bei ton- und fernseh-rundfunkempfangsgeraeten
DE2454227C3 (de) * 1974-11-15 1979-05-03 Blaupunkt-Werke Gmbh, 3200 Hildesheim Fernsehempfänger zum Empfang u. Auswerten von zusätzlichen Informationen in einem Fernsehsignal
DE2612260B2 (de) * 1976-03-23 1978-07-06 Norddeutsche Mende Rundfunk Kg, 2800 Bremen Einrichtung zur drahtlosen Fernbedienung eines Gerätes der Unterhaltungselektronik
US4081754A (en) * 1977-01-31 1978-03-28 Jackson Joseph N Programmable television receiver controllers
DE2714501B1 (de) * 1977-04-01 1978-09-07 Grundig Emv Fernsehempfaenger als Bildwiedergabe-Terminal fuer elektronische Peripherie-Gerte
JPS5951054B2 (ja) * 1977-08-25 1984-12-12 ソニー株式会社 記録再生装置
CA1124901A (en) * 1977-12-21 1982-06-01 Masaru Sato Channel selecting apparatus for use with signal receiver and signal recorder
US4435842A (en) * 1978-01-26 1984-03-06 Matsushita Electric Industrial Co., Ltd. Programmable channel selecting apparatus
US4193120A (en) * 1978-09-13 1980-03-11 Zenith Radio Corporation Addressable event display and control system
GB2034995A (en) * 1978-10-16 1980-06-11 British Broadcasting Corp Control of broadcast radio and television receivers
JPS6053967B2 (ja) * 1979-01-11 1985-11-28 ソニー株式会社 放送局の予約可能な受信機
DE3065490D1 (en) * 1979-01-16 1983-12-15 British Broadcasting Corp Electronic control or data transfer system with a two-dimensional display, e.g. a cathode ray tube
FR2449379A1 (fr) * 1979-02-15 1980-09-12 Scart Systeme d'interconnexion dynamique audio-video
US4598288A (en) * 1979-04-16 1986-07-01 Codart, Inc. Apparatus for controlling the reception of transmitted programs
JPS5626286A (en) * 1979-08-10 1981-03-13 Hitachi Ltd Program timer
DE2950432A1 (de) * 1979-12-14 1981-06-19 Edmond 8031 Gröbenzell Keiser Verfahren und vorrichtung zum steuern des betriebs eines fernsehsignalempfaengers
JPS56168281A (en) * 1980-05-29 1981-12-24 Sony Corp Control method for electronic apparatus
DE3036552C2 (de) * 1980-09-27 1985-04-25 Blaupunkt-Werke Gmbh, 3200 Hildesheim Fernsehempfangsanlage
US4387420A (en) * 1980-11-26 1983-06-07 Rauland-Borg Corporation Programmable clock
US4381522A (en) * 1980-12-01 1983-04-26 Adams-Russell Co., Inc. Selective viewing
DE3104843A1 (de) * 1981-02-11 1982-08-19 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Videorecorder mit mehreren bedienungselementen
DE3210893C2 (de) * 1982-03-25 1984-01-05 Standard Elektrik Lorenz Ag, 7000 Stuttgart Geräteanordnung mit einem Fernsehempfangsgerät und einem Videdoaufnahme- und/oder -wiedergabegerät
JPS58182326A (ja) * 1982-04-19 1983-10-25 Matsushita Electric Ind Co Ltd プログラムメモリ装置
US4605973A (en) * 1982-08-23 1986-08-12 Kohorn H Von System, apparatus and method for recording and editing broadcast transmissions
GB2126002A (en) * 1982-08-25 1984-03-14 Simon William Breese Automatic control for recording apparatus
US4449249A (en) * 1982-09-27 1984-05-15 Price Robert T Televison programming information system
DE3243610A1 (de) * 1982-11-25 1984-05-30 Philips Patentverwaltung Gmbh, 2000 Hamburg Anordnung zur programmierbaren steuerung einer rundfunk- und/oder fernseh-empfangseinrichtung
DE3313799C1 (de) * 1983-04-15 1984-06-20 Institut für Rundfunktechnik GmbH, 8000 München Einrichtung zum zeit- oder ereignisgesteuerten Aufzeichnen von Fernsehprogrammsignalen
US4625080A (en) * 1983-05-03 1986-11-25 Scott Michael M Remote video recorder programming apparatus operating over telephone lines
US4638359A (en) * 1983-05-19 1987-01-20 Westinghouse Electric Corp. Remote control switching of television sources
DE3328001C2 (de) * 1983-08-03 1987-05-07 Institut für Rundfunktechnik GmbH, 8000 München Einrichtung zum automatischen Ein- und Ausschalten des Aufzeichnungsbetriebs eines Videorecorders
US4641205A (en) * 1984-03-05 1987-02-03 Rca Corporation Television system scheduler with on-screen menu type programming prompting apparatus
JPS6169266A (ja) * 1984-09-12 1986-04-09 Sharp Corp 入力装置
JPS6184989A (ja) * 1984-10-02 1986-04-30 Sony Corp タイマ−装置
US4631601A (en) * 1984-10-05 1986-12-23 Zenith Electronics Corporation Time programmable control system for a converter/VCR system
US4751578A (en) * 1985-05-28 1988-06-14 David P. Gordon System for electronically controllably viewing on a television updateable television programming information
US4703359A (en) * 1985-05-30 1987-10-27 Nap Consumer Electronics Corp. Universal remote control unit with model identification capability
US4706121B1 (en) * 1985-07-12 1993-12-14 Insight Telecast, Inc. Tv schedule system and process
GB8609524D0 (en) * 1986-04-18 1986-05-21 British Broadcasting Corp Video receivers & recorders
JPH07105895B2 (ja) 1986-06-02 1995-11-13 ソニー株式会社 電子機器
DE3625382C2 (de) * 1986-07-26 1994-06-09 Grundig Emv Einrichtung zur Aufzeichnung von Satelliten-Fernsehsendungen
EP0255107B1 (en) * 1986-08-01 1994-04-20 Sanyo Electric Co., Ltd. Program mode setting apparatus
DE3819863A1 (de) * 1987-06-12 1989-01-05 Matsushita Electric Ind Co Ltd Fernsteuervorrichtung fuer elektronische geraete
US4825200A (en) * 1987-06-25 1989-04-25 Tandy Corporation Reconfigurable remote control transmitter
DE3733015A1 (de) * 1987-09-30 1989-04-20 Thomson Brandt Gmbh Programmierverfahren und/oder -einrichtung fuer audio- oder videogeraete
US4807031A (en) * 1987-10-20 1989-02-21 Interactive Systems, Incorporated Interactive video method and apparatus
US4841368A (en) * 1988-01-21 1989-06-20 North American Philips Corporation Television customer control functions restorer
GB2215928A (en) * 1988-03-22 1989-09-27 Rank Precision Ind Limited Controlling a video recorder by a coded broadcast signal
US4977455B1 (en) * 1988-07-15 1993-04-13 System and process for vcr scheduling
US4866434A (en) * 1988-12-22 1989-09-12 Thomson Consumer Electronics, Inc. Multi-brand universal remote control
CA2005070C (en) * 1988-12-23 1999-04-27 Henry C. Yuen Apparatus and method for using encoded video recorder/player timer preprogramming information
JP2804287B2 (ja) * 1989-03-24 1998-09-24 パイオニア株式会社 Catv端末装置
US5068734B1 (en) * 1989-05-31 1993-10-26 Beery Jack Apparatus for controlling a television receiver
EP0500680B1 (en) * 1989-10-30 2002-01-23 Starsight Telecast, Inc. Cable television decoder to television accessory interfacing
US5123046A (en) * 1990-11-05 1992-06-16 Smart Vcr Limited Partnership Vcr with cable tuner control
MY110023A (en) * 1991-05-02 1997-11-29 Thomson Consumer Electronics Inc Adaptive menu for programming a videocassette recorder.
MY108018A (en) * 1991-05-02 1996-07-30 Thomson Consumer Electronics Inc Deletion of entries from the channel mapping list of a videocassette recorder.
MY117259A (en) * 1991-05-02 2004-06-30 Thomson Consumer Electronics Autoprogrammed channel mapping for a videocassette recorder.
MY111248A (en) * 1991-05-22 1999-10-30 Thomson Consumer Electronics Inc Simplified programming of a video cassette recorder having multiple and signal channel signal sources.

Also Published As

Publication number Publication date
DK0632949T4 (da) 2008-10-27
EP1653739A3 (en) 2009-12-30
JPH07500443A (ja) 1995-01-12
CA2120255C (en) 2002-02-05
CN1040494C (zh) 1998-10-28
NZ244444A (en) 1995-05-26
DE69231813T2 (de) 2002-03-28
EP1098520A3 (en) 2002-03-06
WO1993007711A1 (en) 1993-04-15
EP0632949B2 (en) 2008-09-17
TW252259B (es) 1995-07-21
DE69231813D1 (de) 2001-06-07
MY108355A (en) 1996-09-30
DK0632949T3 (da) 2001-08-20
EP1653739A2 (en) 2006-05-03
ES2159509T3 (es) 2001-10-16
EP0632949B1 (en) 2001-05-02
CN1071038A (zh) 1993-04-14
ES2184655T1 (es) 2003-04-16
EP0632949A1 (en) 1995-01-11
DE69231813T3 (de) 2009-05-07
EP1098520A2 (en) 2001-05-09
US5307173A (en) 1994-04-26
DE1098520T1 (de) 2003-05-28
EP0632949A4 (en) 1994-10-21
AU2797192A (en) 1993-05-03
CA2120255A1 (en) 1993-04-15

Similar Documents

Publication Publication Date Title
ES2159509T5 (es) Aparato y metodo para utilizar codigos comprimidos para programar la grabacion de programas de television.
US5475382A (en) Remote control mounting stand
US6049652A (en) Apparatus and method using compressed codes for recorder preprogramming
US6549719B2 (en) Television program record scheduling and satellite receiver control using compressed codes
US6430358B1 (en) Universal remote including apparatus using compressed codes for video recorder control
US6430359B1 (en) Apparatus and method using compressed codes for television program record scheduling
US6668133B2 (en) Apparatus and method using compressed codes for scheduling broadcast information recording
US6760537B2 (en) Apparatus and method for television program scheduling
WO1994016523A1 (en) Universal remote controller using compressed codes
EP0619058B1 (en) Apparatus and method using compressed codes for scheduling broadcast information recording
CA2134344C (en) Television program record scheduling using compressed codes
CA2633629C (en) Apparatus and method for providing an information broadcast using compressed codes
EP0938232A2 (en) Television program record scheduling using compressed codes
NZ243976A (en) Video recorder remote controller transmits in at least two directions

Legal Events

Date Code Title Description
FG2A Definitive protection

Ref document number: 632949

Country of ref document: ES