ES2373811T3 - Transcodificación de datos de video. - Google Patents

Transcodificación de datos de video. Download PDF

Info

Publication number
ES2373811T3
ES2373811T3 ES08253317T ES08253317T ES2373811T3 ES 2373811 T3 ES2373811 T3 ES 2373811T3 ES 08253317 T ES08253317 T ES 08253317T ES 08253317 T ES08253317 T ES 08253317T ES 2373811 T3 ES2373811 T3 ES 2373811T3
Authority
ES
Spain
Prior art keywords
transcoding
video
data
processors
video data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES08253317T
Other languages
English (en)
Inventor
Peter Vassilev Sedeffow
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.)
Ott Film 1 Ltd
Original Assignee
Saffron Digital Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Saffron Digital Ltd filed Critical Saffron Digital Ltd
Application granted granted Critical
Publication of ES2373811T3 publication Critical patent/ES2373811T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Traffic Control Systems (AREA)

Abstract

Procedimiento de transcodificación de los datos de decodificación de vídeo codificados y recodificación de dichos datos de vídeo, que comprende las etapas de: recibir (201) como datos de entrada datos de vídeo codificados; suministrar los datos que representan a dichos datos de entrada a cada uno de una pluralidad de procesadores de transcodificación (301, 302); instruir (407) cada uno de dichos procesadores de transcodificación para codificar un segmento basado en el tiempo de los datos de entrada; combinar (410) dichos segmentos de transcodificación; y suministrar (411) como datos de salida de vídeo dichos segmentos transcodificados combinados, caracterizado porque dichos datos que representan los datos de entrada son una copia de la totalidad de dichos datos de entrada.

Description

Transcodificación de datos de vídeo
La presente invención se refiere a un procedimiento de decodificación de datos de vídeo codificados y recodificación de dichos datos de vídeo, en un proceso que generalmente se conoce como transcodificación.
Los procedimientos para la descarga o canalización de material de vídeo son bien conocidos. Al descargar, la totalidad del archivo es transmitida antes de que el archivo se reproduzca. Por otra parte, cuando se canaliza, el material se ve cuando los datos se están transmitiendo. En cualquier caso, es necesario que el equipo de recepción incluya procedimientos adecuados de descodificación (un CODEC) para decodificar el material, permitiendo así que el material sea emitido.
Recientemente, ha habido una tendencia a la recepción de material de vídeo desde muchas fuentes diferentes y por lo tanto es posible que el material se ajuste a muchas técnicas de codificación diferentes. En consecuencia, sólo un subconjunto de este material puede estar disponible para un usuario en particular si hay ciertos CODECs que no están disponibles localmente.
Para hacer que el material pueda emitirse sin tener el CODEC necesario, también es posible realizar una operación de transcodificación en la que el material se decodifica y luego se recodifica a un nivel diferente. Como es sabido en la técnica, el proceso de decodificación es relativamente barato, pero los procedimientos de codificación requieren demandas cada vez mayores de la capacidad de procesamiento. En consecuencia, existen problemas en cuanto a la realización de operaciones de transcodificación en cortos períodos de tiempo de tal manera que el usuario percibe la conversión como sustancialmente instantánea, que pueden ser considerados como tomados en la región de dos segundos.
La transcodificación de vídeo distribuido a alta velocidad para velocidades y formatos, Yasuo Sambe et al, IEICE Transactions on Information and Systems, Vol. E88-D, No. 8, proporciona un procedimiento de transcodificación de datos antes de enviarlos a los dispositivos solicitantes. En este procedimiento, un archivo de vídeo a transcodificar se divide en pequeños segmentos mediante un PC de origen. Cada segmento se envía a un PC de transcodificación en red, que transcodifica los datos. A continuación, un PC de combinación recibe todos los segmentos transcodificados y los une para crear una copia transcodificada de la totalidad del archivo de vídeo. Los datos antes y después de cada segmento también se envían a cada PC de transcodificación para descodificar el segmento con respecto a cualquier marco de referencia que puede ser justo antes o justo después del segmento. Este procedimiento requiere una gran cantidad de procesamiento que se realiza en el PC de origen antes de enviar los segmentos a los equipos de transcodificación. Este procesamiento toma tiempo. Sería mejor un procedimiento más rápido, más eficiente de suministrar los datos a los dispositivos de transcodificación individuales.
Según un aspecto de la presente invención, se proporciona un procedimiento como el descrito en la reivindicación 1 y un aparato como el descrito en la reivindicación 9.
La invención se describirá ahora a modo de ejemplo solamente, con referencia a los dibujos adjuntos, de los cuales:
La figura 1 muestra un entorno para la transcodificación de material de video; La figura 2 muestra una estación de procesamiento identificada en la figura 1; La figura 3 detalla un sistema de transcodificación del tipo identificado en la figura 2; La figura 4 muestra los procedimientos realizados por un procesador de control identificado en la figura 3; La figura 5 muestra los procedimientos para analizar el tipo de contenido de vídeo como se indica en la figura 4; La figura 6 se detalla el proceso de transcodificación; La figura 7 muestra una secuencia de marcos de vídeo, y La figura 8 detalla los procedimientos realizados por cada uno de los procesadores de transcodificación.
Figura 1
Un entorno que incluye una estación de procesamiento de vídeo 101 se ilustra en la figura 1. La estación de procesamiento de vídeo 101 suministra datos de vídeo de muchos orígenes accesibles, incluyendo el origen 102 y el origen 103. Estos orígenes son accesibles a cualquier persona, por lo general sin realización de pago, pero como tal el proveedor no está motivado para configurar el material descargable o canalizable para todos los CODECs de recepción. Por lo tanto, es posible que el material puede verse en un sistema informático en particular (como un sistema de Apple Mac), pero que generalmente no se pueden mostrar en otros sistemas informáticos, tales como un sistema LINUX. Otros problemas de este tipo existen si el material se va a visualizar en dispositivos móviles donde existirán restricciones adicionales en términos de definición de la pantalla y el ancho de banda de transmisión.
En este ejemplo, los orígenes son accesibles a través de un sistema de navegación por la web convencional, como el sistema 104. La estación de procesamiento de vídeo 101 recibe los contenidos de vídeo de los orígenes de acceso 102, 103 a través de Internet 105. Además, el aparato de procesamiento de vídeo 101 también está conectado a un proveedor de servicios de telefonía móvil 106, que comunica con los dispositivos móviles 107, 108 y 109 a través de una red de estaciones de base del transmisor, como el transmisor 110.
También se ha previsto que la transmisión puede producirse a otros tipos de dispositivos conectados a otras redes, tales como una red de gran ancho de banda óptica o una red de radio local, etc.
Figura 2
La estación de procesamiento de vídeo 101 se detalla en la figura 2. La estación de procesamiento de vídeo 101 incluye un dispositivo de entrada conectado a Internet 201 para la recepción de los contenidos de vídeo desde los servidores de acceso de Internet (102, 103). Además, la estación de procesamiento de vídeo está provista de una interfaz de salida para el envío de copias de transcodificación de los contenidos de vídeo a los dispositivos de usuario, como por ejemplo (pero no exclusivamente) los dispositivos 104, 107, 108 y 109. La estación de transcodificación también incluye un sistema de transcodificación 203 configurado para codificar los contenidos de vídeo bajo demanda. Por lo tanto, un contenido de vídeo que se recibe en el dispositivo de entrada 201, transcodificado dentro del sistema de transcodificación 203 y posteriormente transmitida a la interfaz de salida 202 para su transmisión al dispositivo solicitante.
Después de haber transcodificado un contenido de vídeo, es posible que la versión transcodificada a escribir en una memoria caché de estado sólido, como la memoria caché 204 que se muestra en la figura 2 con fines ilustrativos, preferiblemente con una capacidad de almacenamiento de varios terabytes. Por lo tanto, teniendo un contenido transcodificado no es necesario que la operación de transcodificación que realice de nuevo, mientras que la copia transcodificada permanece en la memoria caché 204.
Figura 3
El sistema de transcodificación 203 se detalla en la figura 3. El sistema de transcodificación 203 tiene un gran número de procesadores de transcodificación individuales 301, 302, etc. Cada procesador de transcodificación se implementa como un núcleo del procesador y en este ejemplo un total de cuatro núcleos están disponibles dentro de cada chip. Una pluralidad de chips con circuitos asociados está encerrada dentro de un bastidor de servidores individuales montados y en el sistema de transcodificación 203 se proporcionan un gran número de servidores interconectados. Esto representa un ejemplo de las muchas posibles configuraciones y de preferencia varios procesadores individuales están conectados a un bus de ancho de banda alto 304 o red de comunicación similar.
En una realización particular preferida, un total de ciento sesenta procesos de transcodificación individuales pueden ser incluidos dentro del sistema de transcodificación, lo que proporciona suficiente poder de procesamiento para un contenido de vídeo que dura decenas de minutos cuando se muestran en tiempo real para transcodificar en cuatro segundos. Sin embargo, se puede apreciar que el número de procesadores proporcionados dentro de cualquier sistema dependerá de la potencia de procesamiento de cada procesador individual y del nivel de procesamiento requerido para cada segmento de vídeo individual.
También se ha apreciado que la segmentación de un contenido de vídeo puede introducir objetos indeseables cuando los segmentos de vídeo se recombinan. En consecuencia, para clips de vídeo relativamente cortos, es preferible que un subconjunto de los procesadores disponibles sea instruido a fin de reducir el nivel de segmentación al mínimo al mismo tiempo que se realiza un proceso de transcodificación en un período de unos pocos segundos. Por lo tanto, es posible que la segmentación sea optimizada para reducir el número de objetos introducidos al tiempo que se garantiza que la operación de transcodificación se lleva a cabo en un marco de tiempo relativamente corto.
El sistema de transcodificación incluye un procesador de control 305 que recibe datos de entrada de dispositivo de entrada de 201 y orígenes de datos a la interfaz de salida transcodificado 202. Después de haber recibido un contenido de vídeo, el procesador de control 305 proporciona una copia del contenido total de video para cada uno de los procesadores de transcodificación 301, 302, etc. Por lo tanto, en una realización preferida, el procesador de control 305 emite el contenido de vídeo a través del bus 304, que resulta en una copia del contenido que se conserva en cada procesador individual 301 a 302. De esta manera, no es necesario que el procesador de control 305 implemente un procedimiento para la subdivisión del contenido de vídeo, lo que podría suponer una considerable carga sobre el procesador de control 305.
Se ha apreciado que algunos formatos de archivo requieren que el archivo completo sea considerado antes de que sea posible identificar los marcos individuales en el mismo. También se aprecia que la codificación de las técnicas de este tipo tiende a ser más sofisticada, teniendo en cuenta los requisitos correspondientes para efectuar mayores niveles de compresión sobre los contenidos de vídeo de gran tamaño. Por lo tanto, cada procesador de transcodificación individual 301, 302 se coloca en una posición en la que es posible para el procesador leer y procesar la totalidad del material de vídeo.
Para realizar la operación de transcodificación a alta velocidad, cada procesador de transcodificación 301, 302 etc.
es instruido por el procesador de control 305 para transcodificar un segmento basado en el tiempo del contenido para producir segmentos transcodificados. Por lo tanto, el control del procesador 305 es necesaria para identificar la duración total del contenido de vídeo y luego dividir esta duración total por el número total de procesadores de transcodificación disponibles (por ejemplo, ciento sesenta, en un ejemplo de realización). Por lo tanto, para los contenidos de vídeo con una duración mayor que la duración predeterminada, se utilizan todos los procesadores de transcodificación disponibles (ciento sesenta). Sin embargo, para los clips más pequeños, menos procesadores de transcodificación pueden ser seleccionados como un subgrupo. Una vez identificado el número total de los procesadores de transcodificación disponibles y la duración total del contenido de vídeo, la duración total se divide por el número de procesadores disponibles a fin de determinar la duración específica a procesar por cada procesador.
A los fines de ilustración, un contenido de vídeo podría haber sido identificado teniendo una duración total de una hora, cuarenta y seis minutos y cuarenta segundos. Esto es equivalente a una duración de seis mil cuatrocientos segundos que cuando se dividen a través de ciento sesenta procesadores resulta en un segmento de cuarenta segundos de es transcodificado por cada uno de los procesadores. Así, siguiendo este ejemplo, se requeriría que el procesador trancodificador produzca un segmento de material de salida de vídeo desde el código de tiempo
00:00:00 hasta el código de tiempo 00:00:40. El procesador 302 sería instruido para codificar el siguiente segmento y, por tanto, recibiría instrucciones para codificar desde la posición 00:00:40 hasta 00:01:20. Por lo tanto, a cada procesador trancodificador individual dentro del sistema de transcodificación sería asignado su único segmento de cuarenta segundos, de tal manera que los procedimientos de transcodificación se realizan en paralelo y se juntan en el procesador de control 305, para su transmisión a través de la interfaz de salida 202.
Figura 4
Los procedimientos realizados por el procesador de control 305 se detallan en la Figura 4. En la etapa 401 se recibe un contenido de vídeo y en la etapa 402 se realiza un análisis con el fin de identificar el tipo de codificación de los contenidos de vídeo. A partir de entonces, en la etapa 403 se realiza una evaluación en cuanto al tamaño de los contenidos de vídeo. Por lo tanto, si el contenido de vídeo se considera que es grande en su duración, sólo es necesario que se despliegue un subconjunto de los procesadores disponibles. Por otra parte, si se considera que la duración de los contenidos no es pequeña, todos los procesadores serán desplegados. En consecuencia, se realiza una pregunta en la etapa 404 en cuanto a si la duración es pequeña y cuando se respondió afirmativamente se creó un subconjunto de procesadores en la etapa 405.
En la etapa 406 la duración de los contenidos de vídeo se divide en segmentos. Cabe señalar que estos segmentos son identificados por localizaciones de código de tiempo y no representan una segmentación del material de video actual. En consecuencia, en la etapa 407 la totalidad del contenido se envía a todos los procesadores (o subconjunto de procesadores), junto con instrucciones para el proceso de transcodificación.
En la etapa 408 un estado de espera se introduce al mismo tiempo que se realizan los procedimientos de transcodificación con una pregunta que se hace en la etapa 409 en cuanto a si las salidas están listas. Cuando se responden en forma negativa el estado de espera 408 se introduce de nuevo, pero en última instancia, la pregunta en la etapa 409 se responderá afirmativamente a consecuencia de las salidas que se combinan en la etapa 410. A partir de entonces en la etapa 411, el video transcodificado combinado se suministra como un archivo de salida a la interfaz de salida y entonces se realiza una pregunta en la etapa 412 en cuanto a si otro contenido está disponible. En consecuencia, cuando se respondió afirmativamente el control se devuelve al etapa 402.
Figura 5
En la figura 5 se detallan procedimientos 402 para analizar el tipo de contenido de vídeo. Los archivos de vídeo a menudo toman la forma de un contenedor en el que hay una pluralidad de cajas o átomos dispuestos en una estructura de árbol. Estos contenedores han sido mejorados como en varias versiones, y se liberan por lo tanto en la etapa 502 se identifica la versión del contenedor.
Algunos contenedores contienen consejos para ayudar al transmitir datos de vídeo. Por lo tanto, en la etapa 502 se hace una pregunta acerca de si el archivo contiene consejos y cuando se contestó en forma afirmativa se establece un indicador de consejos en la etapa 503 de tal manera que los datos transcodificados también incluirán consejos.
En la etapa 504 se identifican pistas y en la etapa 505 se selecciona una pista. Para la pista seleccionada el CODEC particular utilizado se identifica en la etapa 506 y se hace un registro de este CODEC identificado en la etapa 507. En la etapa 508 se hace una pregunta sobre si se va a procesar otra pista y cuando se respondió afirmativamente el control se devuelve a la etapa 505.
CODECs típicos para material de vídeo son H.264, MPEG-4 y H.263. Además, para cada pista de vídeo es necesario identificar la anchura y la altura del material de video y algunas especificaciones, tales como H.264 y MPEG-4 incluirán una definición de perfil. El perfil en realidad no cambia el proceso de decodificación, pero sí que proporciona una indicación del tipo de material por venir.
Otros parámetros de identificación CODEC se refieren al tamaño de la memoria intermedia de decodificación y la velocidad de bits.
Además de la transcodificación del material de video, el material de audio también es transcodificado, por lo tanto, procedimientos similares deberán ser llevados a cabo en las pistas de audio, por lo tanto, el requisito en la etapa 508 considera otras pistas. Para los canales de sonido, es necesario identificar si existe una pista mono o dos pistas estéreo y también es necesario identificar la frecuencia de muestreo que normalmente se encuentra entre 8 kHz y 48 kHz.
Figura 6
El proceso de transcodificación realizado dentro del sistema de transcodificación 203 se ilustra en la figura 6. El proceso se inicia con la recepción de secuencias de video 601 que por lo general han sido comprimidas usando técnicas de compresión tales como MPEG-4. Muchos procedimientos de compresión específicos están disponibles, cada uno con su propio CODEC dedicado, y es probable que las nuevas definiciones CODEC sigan desarrollándose. Sin embargo, la mayoría de estos procedimientos de compresión utilizan técnicas similares para lograr la compresión de vídeo.
Es posible comprimir cada marco de vídeo individual utilizando transformadas de coseno discreto o algo similar para lograr la compresión espacial. Esto se traduce en la generación de los coeficientes que pueden o no pueden ser truncados para lograr un nivel de compresión dependiente de la naturaleza del material original y dependiente del grado de pérdida que puede ser tolerado.
La compresión adicional (compresión temporal) se logra mediante la comparación de los marcos de vídeo adyacentes de tal manera que las diferencias entre los marcos se registran en lugar de grabar todo el marco. Este tipo de compresión funciona bien con el vídeo, dado que la diferencia entre la mayoría de los marcos adyacentes son relativamente pequeñas, a menos que se haya producido un cambio de escenario.
El procesador de control es necesario para identificar el tipo de compresión que se ha producido con el fin de determinar el tipo de CODEC necesario para llevar a cabo una operación de descodificación, junto con la determinación de la duración del contenido.
Una vez identificada la duración del contenido, el material original 601 se divide en una pluralidad de segmentos que se muestran como 602 al 609. A los efectos de ilustración, en este ejemplo, el material original 601 se ha dividido en un total de ocho segmentos en función del tiempo de igual duración. En una realización preferida que se ha descrito anteriormente, el contenido total puede ser dividido en un total de ciento sesenta segmentos.
A los efectos de este ejemplo, se proporcionan ocho procesadores de transcodificación individuales del 612 al 619. El procesador de control no divide el material sin procesar y suministra partes de tamaño adecuado para cada uno de los procesadores de transcodificación. En la realización preferida, el procesador de control emite la totalidad del video entrante a todos los procesadores de transcodificación del 612 al 619. Por lo tanto, cada procesador de transcodificación preferentemente conserva una copia del material de origen completo para su posterior decodificación. El procesador de control instruye a cada procesador de transcodificación individual para identificar el segmento específico de vídeo para el que se requiere un segmento de salida.
El proceso de transcodificación se inicia en primer lugar, realizando un proceso de decodificación de tal manera que cada procesador de transcodificación del 612 al 619 produce un segmento respectivo decodificado de material de video del 622 al 629. Por lo tanto, asumiendo que se requiere a cada procesador de transcodificación producir cuarenta segundos de material de transcodificación, a los efectos de esta ilustración, se puede suponer que el procesador de transcodificación 613 se requiere para codificar los cuarenta segundos de material de salida desde la posición de código de tiempo de 00:00:40 a 00:01:20.
Después de haber descifrado el material para producir segmentos del 622 al 629, se realiza una operación de grabación con el fin de convertir el material en una forma adecuada para la recepción en el dispositivo receptor. Por lo tanto, a partir de segmentos de vídeo decodificado del 622 al 629, se producen segmentos recodificados del 632 al 639.
Los segmentos recodificados del 632 al 639 se reciben en el procesador de control 305, que a su vez vuelve a ensamblar los segmentos para producir datos de salida de vídeo 640.
La mayoría de los contenidos de vídeo también incluyen pistas de audio y la representación digital del material de audio será recibido como muestras discretas y estas muestras a su vez pueden estar asociadas con código de tiempo definiendo una posición de marcos en el material de vídeo. Por lo tanto, en una realización preferida, las muestras de audio se conservan con el material de vídeo y son procesadas en el mismo procesador de transcodificación. Por lo tanto, la segmentación que divide el material de vídeo entre los procesadores de transcodificación individuales se re-despliega para la transcodificación del material de audio de tal manera que en cada etapa, el material de audio se procesa con sus imágenes de vídeo asociadas.
Figura 7
En una realización preferida, cada procesador de transcodificación identifica un segmento instruido de los contenidos de vídeo y decodifica los datos de ese segmento de tiempo. Sin embargo, además, en muchas circunstancias el procesador de transcodificación decodificará algunos marcos antes del segmento definido y/o después del segmento definido para facilitar el proceso de decodificación de video.
En la figura 7, se muestra una secuencia de marcos de vídeo, representando los marcos dentro de un segmento. Los marcos del 701 al 705 representan marcos en el comienzo de un segmento y los marcos del 706 al 710 representan marcos al final del segmento, con una pluralidad de marcos en el centro del segmento que no se muestran. Los marcos que se muestran en la figura 7 son necesarios para codificar el material que se encuentre dentro del segmento definido como 00:00:40 a 00:01:20. Por lo tanto, esto representa un segmento de cuarenta segundos. La posición de inicio del segmento está comprendida entre los marcos 703 y 704. Del mismo modo, el punto final se muestra comprendido entre los marcos 708 y 709. El material de transcodificación del segmento incluye marcos 721 y 722 en el inicio junto con los marcos 723, 724 y 725 en el final. En el material de salida final, el marco 721 seguirá al marco final del segmento anterior y el marco 725 precederá al primer marco del siguiente segmento.
Muchos algoritmos de compresión hacen uso de la compresión espacial, reduciendo la cantidad de datos para transmitir un marco individual sin hacer referencia a cualquier otro marco. Los marcos de este tipo a menudo se identifican como "marco I", posiblemente debido a que pueden ser vistos como marcos individuales, sin hacer referencia a otros marcos en una manera temporal. Los marcos de este tipo son a menudo muy similares a los distintos marcos gráficos producidos como imágenes fijas. Así, dentro de un flujo MPEG, los marcos I pueden ser considerados como sustancialmente similares a las imágenes JPEG.
Además de los marcos I comprimidos espacialmente, la secuencia de vídeo también incluye marcos relativos, identificados como "marco R" en la realización mostrada. Estos marcos relativos han sido sometidos a compresión espacial similar a la compresión llevada a cabo en el marco I. Además, una mayor compresión se logra mediante el almacenamiento sólo de las diferencias entre el marco bajo consideración y de uno u otros marcos más dentro de una secuencia. Marcos R también pueden producirse en diferentes tipos. Por lo tanto, en algunos esquemas de codificación, algunos de los marcos R serán identificados como "marcos P" en el que las compresiones temporales se hacen con respecto a los marcos transmitidos anteriormente en la secuencia. Además, algunas de las técnicas de codificación despliegan "marcos B" donde se logra una mayor compresión mediante la transmisión de señales diferentes en función de los marcos más adelante en la secuencia. Por lo tanto, cuando se decodifica sólo es posible de descodificar estos marcos B después de que un marco transmitido más tarde ha sido recibido. Por lo tanto, se puede apreciar que el nivel de memoria intermedia se requiere como parte de muchos de los procedimientos de CODEC.
Como se ilustra en la figura 7, el segmento comienza en 00:00:40 por lo tanto, el primer marco de interés debe ser el
704. Sin embargo, en este ejemplo, el marco 704 es un marco R por lo que ha sufrido la compresión temporal. Los datos contenidos en el marco R 704 representan únicamente las diferencias entre él y el marco anterior 703. Del mismo modo, el marco 703 sólo representa las diferencias de marco 702 que a su vez es un marco R que representan las diferencias del marco 701.
A los fines de ilustración, en este ejemplo, el marco 701 es considerado como un marco I. En consecuencia, si el marco 704 debe reconstituirse, es necesario para procesar los marcos 701, 702 y 703, además de con el material recibido específico para el marco 704. Como resultado de ello, con el fin de realizar la operación de transcodificación, son procesados los marcos del 701 al 703, además del procesamiento de marcos del 704 en adelante.
En el final del segmento, el último marco que se considera debe ser el marco 708. Sin embargo, a efectos de ilustración, este marco se considera que es un marco de versiones anteriores derivadas del marco I 710. Por lo tanto, con el fin de reconstituir el marco 708, es necesario tener en cuenta los marcos 709 y 710. Por lo tanto, una ventaja de que cada procesador de transcodificación reciba la totalidad del material de video es que el proceso de control no tiene por qué tomar ninguna decisión en cuanto a donde segmentar el material original. El procesador de control divide la duración total por el número total de procesadores disponibles, pero no divide el material en sí mismo en estos límites del marco. Como se ilustra en la figura 7, se requiere un marco de entrada 701 como material de origen para dos segmentos de salida, como es el marco de entrada 710.
Figura 8
Los procedimientos realizados en cada uno de los procesadores de transcodificación se identifican en la figura 8. En la etapa 801 una copia del contenido de vídeo se recibe en su totalidad y se almacena temporalmente en la memoria volátil. Por lo tanto, cada procesador de transcodificación individual conserva una copia de los contenidos de vídeo completos.
En la etapa 802 son recibidas instrucciones específicas por cada procesador de transcodificación individual que 5 identifica el segmento de material de vídeo a transcodificar.
En la etapa 803 una operación de descodificación se realiza con el fin de reconstruir los marcos de video original en el segmento instruido. Así, siguiendo el ejemplo descrito anteriormente, un número suficiente de marcos dentro de los datos de vídeo codificados originales son decodificados a fin de generar los cuarenta segundos de datos de
10 vídeo.
En la etapa 804 los datos de vídeo decodificado son recodificados para ser compatibles con las exigencias de la estación receptora.
15 A partir de entonces, en la etapa 805 un segmento transcodificado se devuelve al procesador de control.
REFERENCIAS CITADAS EN LA DESCRIPCIÓN
Esta lista de referencias citadas por el solicitante únicamente es para comodidad del lector. Dicha lista no forma 5 parte del documento de patente europea. Aunque se ha tenido gran cuidado en la recopilación de las referencias, no se pueden excluir errores u omisiones y la EPO rechaza toda responsabilidad a este respecto.
Bibliografia no relativa a patentes citada en la descripción
10 • Yasuo Sambe et al. High-Speed Distributed Video Transcoding for Multiple Rates and Formats. IEICE Transaction on information and Systems, Vol. E88-D (8 [0008]

Claims (14)

  1. REIVINDICACIONES
    1.
    Procedimiento de transcodificación de los datos de decodificación de vídeo codificados y recodificación de dichos datos de vídeo, que comprende las etapas de:
    recibir (201) como datos de entrada datos de vídeo codificados; suministrar los datos que representan a dichos datos de entrada a cada uno de una pluralidad de procesadores de transcodificación (301, 302); instruir (407) cada uno de dichos procesadores de transcodificación para codificar un segmento basado en el tiempo de los datos de entrada; combinar (410) dichos segmentos de transcodificación; y suministrar (411) como datos de salida de vídeo dichos segmentos transcodificados combinados, caracterizado porque dichos datos que representan los datos de entrada son una copia de la totalidad de dichos datos de entrada.
  2. 2.
    Procedimiento según la reivindicación 1, caracterizado porque dichos datos de vídeo codificados están un formato comprimido que incluye la compresión espacial y la compresión temporal.
  3. 3.
    Procedimiento de suministro de datos de vídeo según la reivindicación 1, caracterizado porque cada procesador de transcodificación tiene acceso a una pluralidad de procedimientos de codificación y decodificación (CODECs).
  4. 4.
    Procedimiento de suministro de datos de vídeo según la reivindicación 1, caracterizado porque cada uno de dichos procesadores está configurado para:
    identificar un segmento instruido de los datos de entrada de vídeo compuesto de una pluralidad de marcos de imagen, y
    decodificar algunas imágenes antes (701-703) y/o después (709,710), dicho segmento definido para facilitar la decodificación de video.
  5. 5.
    Procedimiento de suministro de datos de vídeo según la reivindicación 1, caracterizado porque todos los procesadores disponibles son instruidos si la duración del contenido es mayor que la duración mínima predeterminada o bien un subconjunto reducido (405) de los procesadores es instruido.
  6. 6.
    Procedimiento de suministro de datos de vídeo según la reivindicación 1, caracterizado porque el material previamente decodificado se almacena en la memoria caché.
  7. 7.
    Procedimiento de suministro de datos de vídeo según la reivindicación 1, en el que dicho material previamente decodificada se almacena en caché en memoria de estado sólido (204) para facilitar un rápido acceso a dicho material almacenado en caché.
  8. 8.
    Procedimiento de suministro de datos de vídeo según la reivindicación 1, caracterizado porque los segmentos basados en el tiempo del material de audio se procesan en combinación con su material de video correspondiente.
  9. 9.
    Aparato de transcodificación para decodificar los datos de vídeo codificados y la recodificar dichos datos de vídeo, que comprende:
    un dispositivo de entrada (201) para recibir como datos de entrada datos de vídeo codificados; una pluralidad de procesadores de transcodificación (301, 302); un dispositivo de distribución (304) para el suministro de datos que representan a dichos datos de entrada a cada uno de dicha pluralidad de procesadores de transcodificación; un procesador de control (305) configurado para instruir a cada uno de dichos procesadores de transcodificación para codificar un segmento basado en el tiempo de dichos datos de entrada y para combinar dichos segmentos tanscodificados; y un dispositivo de salida (202) para el suministro como datos de vídeo de salida dichos segmentos transcodificados combinados, caracterizado porque dichos datos que representan dichos datos de entrada son una copia de la totalidad de dichos datos de entrada.
  10. 10.
    Aparato según la reivindicación 9, caracterizado porque el código de datos de vídeo está en un formato comprimido que incluye la compresión espacial y la compresión temporal.
  11. 11.
    Aparato según la reivindicación 9, incluyendo los dispositivos de almacenamiento para almacenar una pluralidad de procedimientos de codificación y decodificación (CODECs), de modo que cada uno de dichos procesadores de transcodificación tiene acceso a una pluralidad de dichos CODECs.
  12. 12.
    Aparato según la reivindicación 9, caracterizado porque cada procesador de transcodificación identifica un segmento instruido de los datos de vídeo de entrada compuesto de una pluralidad de marcos de imagen y decodifica algunos marcos antes y/o después de dicho segmento definido para facilitar la decodificación de video.
    5 13. Aparato según la reivindicación 9, caracterizado porque todos los procesadores disponibles son instruidos si la duración del contenido es mayor que la duración del mínimo fijado de antemano, o bien es instruido un subconjunto reducido (405) de los procesadores.
  13. 14. Aparato según la reivindicación 9, que incluye dispositivos de memoria de estado sólido para el almacenamiento 10 en caché de material previamente decodificado.
  14. 15. Aparato según la reivindicación 9, caracterizado porque los segmentos basados en el tiempo del material de audio se procesan en combinación con su material de video correspondiente.
ES08253317T 2008-08-09 2008-10-10 Transcodificación de datos de video. Active ES2373811T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP08252659A EP2151970B1 (en) 2008-08-09 2008-08-09 Processing and supplying video data
EP08252659 2008-08-09

Publications (1)

Publication Number Publication Date
ES2373811T3 true ES2373811T3 (es) 2012-02-08

Family

ID=40352342

Family Applications (2)

Application Number Title Priority Date Filing Date
ES08252659T Active ES2373810T3 (es) 2008-08-09 2008-08-09 Procesamiento y suministro de datos de video.
ES08253317T Active ES2373811T3 (es) 2008-08-09 2008-10-10 Transcodificación de datos de video.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES08252659T Active ES2373810T3 (es) 2008-08-09 2008-08-09 Procesamiento y suministro de datos de video.

Country Status (6)

Country Link
US (1) US8351498B2 (es)
EP (2) EP2151970B1 (es)
AT (2) ATE519321T1 (es)
DK (2) DK2151970T3 (es)
ES (2) ES2373810T3 (es)
PL (1) PL2151970T3 (es)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9819984B1 (en) 2007-03-26 2017-11-14 CSC Holdings, LLC Digital video recording with remote storage
US9049459B2 (en) 2011-10-17 2015-06-02 Exaimage Corporation Video multi-codec encoders
US8583818B2 (en) * 2011-01-31 2013-11-12 Cbs Interactive Inc. System and method for custom segmentation for streaming video
CN103188521B (zh) * 2011-12-29 2015-10-28 北京大学 转码分配方法及装置,转码方法及设备
US9472239B1 (en) * 2012-03-26 2016-10-18 Google Inc. Concurrent transcoding of streaming video for immediate download
US9532080B2 (en) 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
US9357210B2 (en) 2013-02-28 2016-05-31 Sonic Ip, Inc. Systems and methods of encoding multiple video streams for adaptive bitrate streaming
ITBA20130077A1 (it) * 2013-11-25 2015-05-26 Cicco Luca De Meccanismo per il controllo del bitrate di codifica in un sistema di video streaming adattivo basato su buffer di playout e sulla stima di banda.
US9584570B2 (en) 2014-03-28 2017-02-28 Pelco, Inc. Dynamic media transcoding for P2P communications
US10403253B2 (en) * 2014-12-19 2019-09-03 Teac Corporation Portable recording/reproducing apparatus with wireless LAN function and recording/reproduction system with wireless LAN function
CN105872595A (zh) * 2016-03-31 2016-08-17 乐视控股(北京)有限公司 转码任务分配方法及装置
US10904329B1 (en) 2016-12-30 2021-01-26 CSC Holdings, LLC Virtualized transcoder
CN108989885B (zh) * 2017-06-05 2020-08-28 腾讯科技(深圳)有限公司 视频文件转码系统、分割方法、转码方法及装置
US10659797B2 (en) 2017-10-31 2020-05-19 Google Llc Video frame codec architectures
US10798393B2 (en) * 2018-07-09 2020-10-06 Hulu, LLC Two pass chunk parallel transcoding process
US11284165B1 (en) 2021-02-26 2022-03-22 CSC Holdings, LLC Copyright compliant trick playback modes in a service provider network

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742840A (en) * 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
US6275536B1 (en) * 1999-06-23 2001-08-14 General Instrument Corporation Implementation architectures of a multi-channel MPEG video transcoder using multiple programmable processors
KR100725385B1 (ko) * 2004-08-14 2007-06-07 삼성전자주식회사 메시지 통신을 이용한 컨텐츠 디스플레이 시스템 및 방법
WO2006025322A1 (ja) * 2004-08-30 2006-03-09 Matsushita Electric Industrial Co., Ltd. 記録装置
US20070230586A1 (en) * 2006-03-31 2007-10-04 Masstech Group Inc. Encoding, decoding and transcoding of audio/video signals using combined parallel and serial processing techniques
US11223808B1 (en) 2020-06-30 2022-01-11 Christie Digital Systems Usa, Inc. Device, system and method for generating a mapping of projector pixels to camera pixels and/or object positions using alternating patterns
US11340308B1 (en) 2021-04-27 2022-05-24 Beta Air, Llc System and method for state determination of a battery module configured for used in an electric vehicle

Also Published As

Publication number Publication date
ES2373810T3 (es) 2012-02-08
US20100034257A1 (en) 2010-02-11
ATE519322T1 (de) 2011-08-15
DK2151971T3 (da) 2011-11-21
EP2151971B1 (en) 2011-08-03
EP2151970B1 (en) 2011-08-03
DK2151970T3 (da) 2011-11-21
EP2151970A1 (en) 2010-02-10
EP2151971A1 (en) 2010-02-10
PL2151970T3 (pl) 2012-02-29
ATE519321T1 (de) 2011-08-15
US8351498B2 (en) 2013-01-08

Similar Documents

Publication Publication Date Title
ES2373811T3 (es) Transcodificación de datos de video.
US8467775B2 (en) Digital data compression in a cellular phone
US8768142B1 (en) Video editing with connected high-resolution video camera and video cloud server
US8194745B2 (en) Motion vector coding and decoding methods
JP5475855B2 (ja) マルチビュー・ビデオ符号化のための仮想参照デコーダ
JP2021010196A (ja) 送信装置、及び、受信装置
JP6745979B2 (ja) 符号化方法および装置、ならびに復号方法および装置
US20110243245A1 (en) Variable length coding method and variable length decoding method
CN106489270B (zh) 信息处理装置和方法
CN113302944B (zh) 信息处理装置和信息处理方法
EP3151242B1 (en) Information processor and information processing method
ES2299170T3 (es) Procedimiento de descodificacion de imagenes en movimiento y aparato de descodificacion de imagenes en movimiento.
US20050240414A1 (en) Data processing system, data processing method, data processing device, and data processing program
EP1557026A1 (en) Storage
US20190373213A1 (en) Information processing device and method
CN100473150C (zh) 通过url的数字项目适应系统
KR101360264B1 (ko) 방송 서비스 방법
US20140119542A1 (en) Information processing device, information processing method, and information processing program product
CN104333765B (zh) 一种视频直播流的处理方法及处理装置
EP1309196A2 (en) File creating method and data reproduction method
US20090055932A1 (en) Information distributing apparatus and method, receiving apparatus and method, distribution system, and computer program
KR101729765B1 (ko) 실시간 리먹싱 시스템, 송신 방법 및 수신 방법
JP2005176068A (ja) 動画像配信システム及びその方法
KR20150000844A (ko) 멀티미디어 시스템에서 컨텐츠를 변환하는 방법 및 장치
ES2726827T3 (es) Métodos y sistemas para transferir el contenido multimedia utilizando un protocolo de transferencia de sonido digital existente