ES2633148T3 - Método de codificación que utiliza una secuencia de parámetros suplementarios ajustados para la codificación o codificación multivista de video escalable - Google Patents
Método de codificación que utiliza una secuencia de parámetros suplementarios ajustados para la codificación o codificación multivista de video escalable Download PDFInfo
- Publication number
- ES2633148T3 ES2633148T3 ES12165846.2T ES12165846T ES2633148T3 ES 2633148 T3 ES2633148 T3 ES 2633148T3 ES 12165846 T ES12165846 T ES 12165846T ES 2633148 T3 ES2633148 T3 ES 2633148T3
- Authority
- ES
- Spain
- Prior art keywords
- layer
- sps
- information
- nal unit
- parameters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000000295 complement effect Effects 0.000 claims abstract description 54
- 239000010410 layer Substances 0.000 description 251
- 238000004891 communication Methods 0.000 description 88
- 230000033001 locomotion Effects 0.000 description 32
- 230000008569 process Effects 0.000 description 32
- 239000002356 single layer Substances 0.000 description 25
- 230000001419 dependent effect Effects 0.000 description 24
- 230000002123 temporal effect Effects 0.000 description 14
- 238000000354 decomposition reaction Methods 0.000 description 12
- 230000009466 transformation Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000006872 improvement Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 101000587820 Homo sapiens Selenide, water dikinase 1 Proteins 0.000 description 2
- 101000828738 Homo sapiens Selenide, water dikinase 2 Proteins 0.000 description 2
- 101000701815 Homo sapiens Spermidine synthase Proteins 0.000 description 2
- 102100031163 Selenide, water dikinase 1 Human genes 0.000 description 2
- 102100023522 Selenide, water dikinase 2 Human genes 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000000153 supplemental effect Effects 0.000 description 2
- 101000998814 Escherichia coli O6:H1 (strain CFT073 / ATCC 700928 / UPEC) N-acetylneuraminate lyase 1 Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234327—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440227—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64784—Data processing by the network
- H04N21/64792—Controlling the complexity of the content stream, e.g. by dropping packets
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
Un método de decodificación, que comprende: acceder (1710) a información desde un primer conjunto de parámetros contenido en una primera unidad de capa de abstracción de la red, siendo el primer conjunto de parámetros una estructura de sintaxis que contiene elementos de sintaxis que se aplican a secuencias de video codificadas a cero o más enteros, y describiendo la información un parámetro para uso en decodificar múltiples capas de las secuencias de vídeo; acceder (1720) a información complementaria contenida en una segunda unidad de capa de abstracción de la red, teniendo la segunda unidad de NAL un código de tipo unidad de NAL específico y correspondiendo a una capa de dichas capas múltiples, y describiendo la información complementaria (i) un identificador del primer conjunto de parámetros para indicar que la segunda unidad de NAL se utiliza para complementar la primera unidad de NAL, (ii) un parámetro de información de usabilidad de vídeo ("VUI") que tiene información que depende de la capa, para uso en decodificar dicha una capa de dichas capas múltiples; y decodificar (1740) dicha una capa de dichas capas múltiples en base a la información a la que se ha accedido a partir desde la primera unidad de NAL y a la información complementaria a la que se ha accedido desde la segunda unidad de NAL.
Description
5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Metodo de codificacion que utiliza una secuencia de parametros suplementarios ajustados para la codificiacion o codificacion multivista de video escalable
REFERENCIA CRUZADA A SOLICITUDES RELACIONADAS
Esta solicitud reivindica el beneficio de cada una de, y con ello incorpora como referencia para todos los fines la totalidad de cada uno de: (1) la solicitud provisional de EE.UU. n° de serie 60/923.993, con el tttulo "Supplemental Sequence Parameter Set for Scalable Video Coding or Multi-view Video Coding” y presentada el 18 de abril 2007 (Expediente del Agente PU070101) y (2) solicitud de patente de EE.UU. n° de serie 11/824.006, con el titulo "Supplemental Sequence Parameter Set for Scalable Video Coding or Multi-view Video Coding", y presentada el 28 de junio 2007 (Expediente del Agente PA070032).
CAMPO TECNICO
Al menos una implementacion se refiere a la codificacion y decodificacion de datos de video de una manera escalable.
ANTECEDENTES
La codificacion de datos de video de acuerdo con varias capas puede ser util cuando los terminales para los que se destinan los datos tienen diferentes capacidades y, por lo tanto, no decodifican un flujo de datos completo, sino solo una parte de un flujo de datos completo. Cuando los datos de video son codificados de acuerdo con varias capas de una manera escalable, el terminal receptor puede extraer del flujo de bits recibido una parte de los datos de acuerdo con el perfil del terminal. Un flujo de datos completo tambien puede transmitir informacion de sobrecarga para cada una de las capas soportadas, para facilitar la decodificacion de cada una de las capas en un terminal.
La sintaxis de alto nivel MVC se identifica en los siguientes documentos:
- Purvin Pandit et AI "MVC high level syntax for random access", 77. Reunion del MPEG; 17 de julio de 2006 - 21 de julio de 2006 (MPEG o ISO/IEC JTC1/SC29/WG11);
- Pandit P et AI "MVC high level syntax", 22. Reunion del mPeG; 13 de enero de 2007 - 20 de enero de 2007 (Joint Video Team of ISO/IEC JTC1/SC29/WG11 e ITU-T SG.16)
SUMARIO
La invencion se define por las reivindicaciones. De acuerdo con un aspecto general, se accede a la informacion a partir de una unidad de una capa de abstraccion de red (“NAL”) de conjunto de parametros en secuencia (“SPS”). La informacion describe un parametro para su uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. A la informacion tambien se accede desde una unidad NAL de SPS complementaria que tiene una estructura diferente a la unidad NAL de SPS. La informacion de la unidad NAL de SPS complementaria describe un parametro para su uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes. Una decodificacion de la secuencia de imagenes se genera en base a la codificacion de la primera capa, la codificacion de la segunda capa, la informacion a la que se accede desde la unidad NAL de SPS y la informacion a la que se accede desde la unidad NAL de SPS complementaria.
De acuerdo con otro aspecto general, se utiliza una estructura de sintaxis que proporciona la decodificacion de una secuencia de imagenes en multiples capas. La estructura de sintaxis incluye sintaxis para una unidad NAL de SPS que incluye informacion que describe un parametro para su uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. La estructura de sintaxis tambien incluye sintaxis para una unidad NAL de SPS complementaria que tiene una estructura diferente a la unidad NAL de SPS. La unidad NAL de SPS complementaria incluye informacion que describe un parametro para su uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes. Se puede generar una decodificacion de la secuencia de imagenes en base a la primera capa que codifica, la segunda capa que codifica la informacion de la unidad NAL de SPS, y la informacion de la unidad NAL de SPS complementaria.
De acuerdo con otro aspecto general, se formatea una senal para incluir informacion de una unidad NAL de SPS. La informacion describe un parametro para su uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. La senal se formatea para incluir informacion de una unidad NAL de SPS complementaria que tiene una estructura diferente a la unidad NAL de SPS. La informacion procedente de la unidad NAL de SPS complementaria describe un parametro para su uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes.
5
10
15
20
25
30
35
40
45
50
55
De acuerdo con otro aspecto general, se genera una unidad NAL de SPS que incluye informacion que describe un parametro para su uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. Se genera una unidad NAL de SPS complementaria que tiene una estructura diferente a la unidad NAL de SPS. La unidad NAL de SPS complementaria incluye informacion que describe un parametro para uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes. Se proporciona un conjunto de datos que incluye la primera capa que codifica la secuencia de imagenes, la segunda capa que codifica la secuencia de imagenes, la unidad NaL de SPS y la unidad NAL de SPS complementaria.
De acuerdo con otro aspecto general, se utiliza una estructura de sintaxis que proporciona la codificacion de una secuencia de imagenes en multiples capas. La estructura de sintaxis incluye sintaxis para una unidad NAL de SPS. La unidad NAL de SPS incluye informacion que describe un parametro para su uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. La estructura de sintaxis incluye sintaxis para una unidad NAL de SPS complementaria. La unidad NAL de SPS complementaria tiene una estructura diferente a la unidad NAL de SPS. La unidad NAL de SPS complementaria incluye informacion que describe un parametro para su uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes. Puede estar previsto un conjunto de datos que incluye la primera capa que codifica la secuencia de imagenes, la segunda capa que codifica la secuencia de imagenes, la unidad NAL de SPS y la unidad NAL de SPS complementaria.
De acuerdo con otro aspecto general, se accede a informacion dependiente de la primera capa en un primer conjunto de parametros normativo. La informacion dependiente de la primera capa a la que se accede es para uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. Se accede a informacion dependiente de la segunda capa en un segundo conjunto de parametros normativo. El segundo conjunto de parametros normativo tiene una estructura diferente a la del primer conjunto de parametros normativo. La informacion dependiente de la segunda capa a la que se accede es para uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes. La secuencia de imagenes es decodificada en base a una o mas de la informacion dependiente de la primera capa a la que se ha accedido o a la informacion dependiente de la segunda capa a la que se ha accedido.
De acuerdo con otro aspecto general, se genera un primer conjunto de parametros normativo que incluye informacion dependiente de la primera capa. La informacion dependiente de la primera capa es para uso en la decodificacion de una primera capa que codifica una secuencia de imagenes. Se genera un segundo conjunto de parametros normativo que tiene una estructura diferente que el primer conjunto de parametros normativo. El segundo conjunto de parametros normativo incluye informacion dependiente de la segunda capa para uso en la decodificacion de una segunda capa que codifica la secuencia de imagenes. Se proporciona un conjunto de datos que incluye el primer conjunto de parametros normativo y el segundo conjunto de parametros normativo.
Los detalles de una o mas implementaciones se recogen en los dibujos adjuntos y la descripcion siguiente. Incluso si se describe de una manera particular, debe quedar claro que las implementaciones pueden ser configuradas o realizadas de diversas maneras. Por ejemplo, una implementacion puede llevarse a cabo como un metodo, o configurarse como un aparato, tal como, por ejemplo, un aparato configurado para realizar un conjunto de operaciones o un aparato que almacena instrucciones para realizar un conjunto de operaciones, o incorporado en una senal. Otros aspectos y caractensticas resultaran evidentes a partir de la siguiente descripcion detallada considerada en union con los dibujos adjuntos y las reivindicaciones.
BREVE DESCRIPCION DE LOS DIBUJOS
La FIG. 1 es un diagrama de bloques para una implementacion de un codificador.
La FIG. 1a es un diagrama de bloques para otra implementacion de un codificador.
La FIG. 2 es un diagrama de bloques para una implementacion de un decodificador.
La FIG. 2a es un diagrama de bloques para otra implementacion de un decodificador.
La FIG. 3 es una estructura de una implementacion de una unidad de una sola capa de abstraccion de red (“NAL”) de conjunto de parametros en secuencia (“SPS”).
La FIG. 4 es una vista de bloques de un ejemplo de porciones de un flujo de datos que ilustra el uso de una unidad NAL de SPS.
La FIG. 5 es una estructura de una implementacion de una unidad NAL de SPS complementaria ("SUP SPS").
La FIG. 6 es una implementacion de una jerarqrna organizativa entre una unidad SPS y multiples unidades SUP SPS.
La FIG. 7 es una estructura de otra implementacion de una unidad NAL de SUP SPS.
La FIG. 8 es una vista funcional de una implementacion de un codificador de video escalable que genera unidades de SUP SPS.
5
10
15
20
25
30
35
40
45
50
55
La FIG. 9 es una vista jerarquica de una implementacion de la generacion de un flujo de datos que contiene unidades SUP SPS.
La FIG. 10 es una vista de bloques de un ejemplo de un flujo de datos generado por la implementacion de la FIG. 9.
La FIG. 11 es un diagrama de bloques de una implementacion de un codificador.
La FIG. 12 es un diagrama de bloques de otra implementacion de un codificador.
La FIG. 13 es un diagrama de flujo de una implementacion de un proceso de codificacion utilizado por los codificadores de las FIGS. 11 o 12.
La FIG. 14 es una vista de bloques de un ejemplo de un flujo de datos generado por el proceso de la FIG. 13.
La FIG. 15 es un diagrama de bloques de una implementacion de un decodificador.
La FIG. 16 es un diagrama de bloques de otra implementacion de un decodificador.
La FIG. 17 es un diagrama de flujo de una implementacion de un proceso de decodificacion utilizado por los decodificadores de las FIGS. 15 o 16.
DESCRIPCION DETALLADA
Existen en la actualidad varias normas de codificacion de video que pueden codificar datos de video de acuerdo con diferentes capas y/o perfiles. Entre ellas se pueden citar H.264/MPEG-4 AVC (la "norma AVC"), a la que tambien se alude como la Organizacion Internacional de Normalizacion/Comision Electrotecnica Internacional (ISO / IEC) Moving Picture Experts Group-4 (MPEG-4) Parte 10 Advanced Video Coding (AVC) Union Internacional de Telecomunicaciones estandar/Sector de Telecomunicaciones (UIT-T) recomendacion H.264. Adicionalmente, existen ampliaciones a la norma AVC. Una primera ampliacion es una extension de codificacion de video escalable ("SVC") (Anexo G) a la que se alude como extension de codificacion de video escalable H.264/MPEG-4 AVC, (la "extension SVC"). Una segunda extension de este tipo es una extension multivista de video de codificacion ("MVC") (Anexo H) a la que se alude como H.264/MPEG-4 aVc, MVC (la "extension MVC").
Al menos una implementacion descrita en esta divulgacion puede utilizarse con la norma AVC, asf como con las extensiones SVC y MVC. La implementacion proporciona una unidad de una capa de abstraccion de red (“NAL”) de conjunto de parametros en secuencia (“SPS”) complementario ("SUP") que tiene un tipo de unidad NAL diferente al de las unidades NAL de SPS. Una unidad SPS incluye tfpicamente, pero no necesariamente, la informacion para al menos una sola capa. Ademas, la unidad NAL de SUP SPS incluye informacion dependiente de la capa para al menos una capa adicional. Por lo tanto, mediante el acceso a unidades SPS y SUP SPS, un decodificador tiene determinada (y tfpicamente toda la) informacion dependiente de la capa disponible, necesaria para decodificar un flujo de bits.
Al utilizar esta implementacion en un sistema AVC, las unidades NAL de SUP SPS no necesitan ser transmitidas, y puede ser transmitida una unidad NAL de SPS de una sola capa (tal como se describe mas adelante). Al utilizar esta implementacion en un sistema SVC (o MVC), la o las unidades NAL de SUP SPS pueden ser transmitidas para las capas adicionales (o vistas) deseadas, ademas de una unidad NAL de SPS. Al utilizar esta implementacion en un sistema que incluye tanto decodificadores compatibles con AVC como decodificadores compatibles con SVC (o compatibles con MVC), los decodificadores compatibles con AVC pueden ignorar las unidades NAL de SUP SPS detectando el tipo de unidad NAL. En cada caso, se consiguen eficiencia y compatibilidad.
La implementacion anterior tambien proporciona beneficios para sistemas (normas o de otro tipo) que imponen el requisito de que ciertas capas comparten informacion de cabecera tal como, por ejemplo, un SPS o informacion particular que portan tfpicamente en un SPS. Por ejemplo, si una capa de base y sus capas temporales compuestas necesitan compartir un SPS, entonces la informacion dependiente de la de capa puede no ser transmitida con la SPS compartida. Sin embargo, el SUP SPS proporciona un mecanismo para transmitir la informacion dependiente de la capa.
El SUP SPS de diversas implementaciones tambien proporciona una ventaja de eficiencia, debido a que el SUP SPS no necesita incluir y, por lo tanto, repetir, todos los parametros en el SPS. El SUP SPS se centrara tfpicamente en los parametros dependientes de la capa. Sin embargo, diversas implementaciones incluyen una estructura SUP SPS que incluye parametros no dependientes de la capa, o incluso repite todo de una estructura de SPS.
Diversas implementaciones se refieren a la extension SVC. La extension SVC propone la transmision de datos de video de acuerdo con varios niveles en el espacio, niveles temporales y niveles de calidad. Para un nivel en el espacio, se puede codificar de acuerdo con varios niveles temporales, y para cada uno de los niveles temporales de acuerdo con varios niveles de calidad. Por lo tanto, cuando se definen m niveles en el espacio, n niveles temporales y O niveles de calidad, los datos de video pueden ser codificados de acuerdo con m*n*O diferentes combinaciones. A estas combinaciones se las alude como capas o como puntos de interoperabilidad ("IOPs"). De acuerdo con las
4
5
10
15
20
25
30
35
40
45
50
capacidades del decodificador (al que tambien se alude como el receptor o el cliente), las diferentes capas pueden ser transmitidas a una determinada capa correspondiente al maximo de las capacidades del cliente.
Tal como se utiliza en este documento, la informacion "dependiente de la capa" se refiere a informacion que se refiere espedficamente a una sola capa. Es decir, como su nombre indica, la informacion depende de la capa espedfica. Dicha informacion no tiene necesariamente que variar de una capa a otra, pero sena tfpicamente proporcionada por separado para cada una de las capas.
Como se utiliza en este documento, "sintaxis de alto nivel" se refiere a la sintaxis presente en el flujo de bits que reside jerarquicamente por encima de la capa de macrobloque. Por ejemplo, la sintaxis de alto nivel, tal como se utiliza en este documento, puede referirse, pero no se limita a la sintaxis en el nivel de cabecera de segmento, nivel de informacion de mejora complementaria (SEI), nivel de conjunto de parametros de imagen (PPS), nivel de conjunto de parametros en secuencia (SPS) y nivel de cabecera de la unidad capa de abstraccion de red (NAL).
Con referencia a la FIG. 1, un codificador de SVC a modo de ejemplo se indica generalmente por el numero de referencia 100. El codificador de SVC 100 tambien puede utilizarse para la codificacion de AVC, es decir, para una sola capa (por ejemplo, la capa base). Ademas, el codificador de sVc 100 puede utilizarse para la codificacion de MVC como apreciara una persona con experiencia ordinaria en la tecnica. Por ejemplo, diversos componentes del codificador de SVC 100, o variaciones de estos componentes, se pueden utilizar en la codificacion de multiples vistas.
Una primera salida de un modulo de descomposicion temporal 142 esta conectada en comunicacion de senal con una primera entrada de una intra-prediccion para el modulo de intra-bloques 146. Una segunda salida del modulo de descomposicion temporal 142 esta conectada en comunicacion de senal con una primera entrada de un modulo de codificacion de movimiento 144. Una salida de la intra-prediccion para el modulo de intra-bloques 146 esta conectada en comunicacion de senal con una entrada de un codificador de transformacion/entropfa (relacion senal a ruido (SNR) escalable) 149. Una primera salida del codificador de transformacion/entropfa 149 esta conectada en comunicacion de senal con una primera entrada de un multiplexor 170.
Una primera salida de un modulo de descomposicion temporal 132 esta conectada en comunicacion de senal con una primera entrada de una intra-prediccion para el modulo de intra-bloques 136. Una segunda salida del modulo de descomposicion temporal 132 esta conectada en comunicacion de senal con una primera entrada de un modulo de codificacion de movimiento 134. Una salida de la intra-prediccion para el modulo de intra-bloques 136 esta conectada en comunicacion de senal con una entrada de un codificador de transformacion/entropfa (relacion senal a ruido (SNR) escalable) 139. Una primera salida del codificador de transformacion/entropfa 139 esta conectada en comunicacion de senal con una primera entrada de un multiplexor 170.
Una segunda salida del codificador de transformacion/entropfa 149 esta conectada en comunicacion de senal con una entrada de un modulo de interpolacion espacial 2D 138. Una salida del modulo de interpolacion espacial 2D 138 esta conectada en comunicacion de senal con una segunda entrada de la intra-prediccion para el modulo de intra- bloques 136. Una segunda salida del modulo de codificacion de movimiento 144 esta conectada en comunicacion de senal con una entrada del modulo de codificacion de movimiento 134.
Una primera salida de un modulo de descomposicion temporal 122 esta conectada en comunicacion de senal con una primera entrada de un intra-predictor 126. Una segunda salida del modulo de descomposicion temporal 122 esta conectada en comunicacion de senal con una primera entrada de un modulo de codificacion de movimiento 124. Una salida del intra-predictor 126 esta conectada en comunicacion de senal con una entrada de un codificador de transformacion/entropfa (relacion senal a ruido (SNR) escalable) 129. Una salida del codificador de transformacion/entropfa 129 esta conectada en comunicacion de senal con una primera entrada de un multiplexor 170.
Una segunda salida del codificador de transformacion/entropfa 139 esta conectada en comunicacion de senal con una entrada de un modulo de interpolacion espacial 2D 128. Una salida del modulo de interpolacion espacial 2D 128 esta conectada en comunicacion de senal con una segunda entrada del modulo intra-predictor 126. Una segunda salida del modulo de codificacion de movimiento 134 esta conectada en comunicacion de senal con una entrada del modulo de codificacion de movimiento 124.
Una primera salida del modulo de codificacion de movimiento 124, una primera salida del modulo de codificacion de movimiento 134 y una primera salida del modulo de codificacion de movimiento 144 estan conectadas cada una en comunicacion de senal con una segunda entrada del multiplexor 170.
5
10
15
20
25
30
35
40
45
50
Una primera salida de un modulo de diezmado espacial 2D 104 esta conectada en comunicacion de senal con una entrada del modulo de descomposicion temporal 132. Una segunda salida del modulo de diezmado espacial 2D 104 esta conectada en comunicacion de senal con una entrada del modulo de descomposicion temporal 142.
Una entrada del modulo de descomposicion temporal 122 y una entrada del modulo de diezmado espacial 2D 104 estan disponibles como entradas del codificador 100, para recibir video de entrada 102.
Una salida del multiplexor 170 esta disponible como una salida del codificador 100, para proporcionar un flujo de bits 180.
El modulo de descomposicion temporal 122, el modulo de descomposicion temporal 132, el modulo de descomposicion temporal 142, el modulo de codificacion de movimiento 124, el modulo de codificacion del movimiento 134, el modulo de codificacion del movimiento 144, el intra-predictor 126, el intra-predictor 136, el intrapredictor 146, el codificador de transformacion/entropfa 129, el codificador de transformacion/entropfa 139, el codificador de transformacion/entropfa 149, el modulo de interpolacion espacial 2D 128 y el modulo de interpolacion espacial 2D 138 estan incluidos en una parte de codificador de nucleo 187 del codificador 100.
La FIG. 1 incluye tres codificadores de nucleo 187. En la implementacion mostrada, el codificador de nucleo 187 mas inferior puede codificar una capa de base, codificando los codificadores de nucleo medio y superior 187 las capas superiores.
Pasando a la FIG. 2, un decodificador de SVC a modo de ejemplo se indica en general con el numero de referencia 200. El decodificador de SVC 200 tambien puede utilizarse para la decodificacion de AVC, es decir, para una sola vista. Ademas, el decodificador de SVC 200 puede utilizarse para la decodificacion de MVC como apreciara una persona de experiencia ordinaria en la tecnica. Por ejemplo, diversos componentes del decodificador de SVC 200, o variaciones de estos componentes se pueden utilizar en la decodificacion de multiples vistas.
Observese que el codificador 100 y el decodificador 200, asf como otros codificadores y decodificadores comentados en esta divulgacion, pueden ser configurados para llevar a cabo diversos metodos que se muestran a lo largo de esta divulgacion. Ademas de realizar operaciones de codificacion, los codificadores descritos en esta divulgacion pueden realizar diversas operaciones de decodificacion durante un proceso de reconstruccion con el fin de reflejar las acciones que se esperan de un decodificador. Por ejemplo, un codificador puede decodificar unidades SUP SPS para decodificar los datos de video codificados con el fin de producir una reconstruccion de los datos de video codificados para su uso en la prediccion de datos de video adicionales. En consecuencia, un codificador puede llevar a cabo sustancialmente la totalidad de las operaciones que son realizadas por un decodificador.
Una entrada de un demultiplexor 202 esta disponible como una entrada al decodificador de video escalable 200, para recibir un flujo de bits escalable. Una primera salida del demultiplexor 202 esta conectada en comunicacion de senal con una entrada de un decodificador de entropfa escalable de transformada inversa espacial SNR 204. Una primera salida del decodificador de entropfa escalable de transformada inversa espacial SNR 204 esta conectada en comunicacion de senal con una primera entrada de un modulo de prediccion 206. Una salida del modulo de prediccion 206 esta conectada en comunicacion de senal con una primera entrada de un combinador 230.
Una segunda salida del decodificador de entropfa escalable de transformada inversa espacial SNR 204 esta conectada en comunicacion de senal con una primera entrada de un decodificador de vector de movimiento (MV) 210. Una salida del decodificador de MV 210 esta conectada en comunicacion de senal con una entrada de un compensador del movimiento 232. Una salida del compensador de movimiento 232 esta conectada en comunicacion de senal con una segunda entrada del combinador 230.
Una segunda salida del demultiplexor 202 esta conectada en comunicacion de senal con una entrada de un decodificador de entropfa escalable de transformada inversa espacial SNR 212. Una primera salida del decodificador de entropfa escalable de transformada inversa espacial SNR 212 esta conectada en comunicacion de senal con una primera entrada de un modulo de prediccion 214. Una primera salida del modulo de prediccion 214 esta conectada en comunicacion de senal con una entrada de un modulo de interpolacion 216. Una salida del modulo de interpolacion 216 esta conectada en comunicacion de senal con una segunda entrada del modulo de prediccion 206. Una segunda salida del modulo de prediccion 214 esta conectada en comunicacion de senal con una primera entrada de un combinador 240.
Una segunda salida del decodificador de entropfa escalable de transformada inversa espacial SNR 212 esta conectada en comunicacion de senal con una primera entrada de un decodificador de MV 220. Una primera salida
5
10
15
20
25
30
35
40
45
50
del decodificador de MV 220 esta conectada en comunicacion de senal con una segunda entrada del decodificador MV 210. Una segunda salida del decodificador de MV 220 esta conectada en comunicacion de senal con una entrada de un compensador de movimiento 242. Una salida del compensador de movimiento 242 esta conectada en comunicacion de senal con una segunda entrada del combinador 240.
Una tercera salida del demultiplexor 202 esta conectada en comunicacion de senal con una entrada de un decodificador de entropfa escalable de transformada inversa espacial SNR 222. Una primera salida del decodificador de entropfa escalable de transformada inversa espacial SNR 222 esta conectada en comunicacion de senal con una entrada de un modulo de prediccion 224. Una primera salida del modulo de prediccion 224 esta conectada en comunicacion de senal con una entrada de un modulo de interpolacion 226. Una salida del modulo de interpolacion 226 esta conectada en comunicacion de senal con una segunda entrada del modulo de prediccion 214.
Una segunda salida del modulo de prediccion 224 esta conectada en comunicacion de senal con una primera entrada de un combinador 250. Una segunda salida del decodificador de entropfa escalable de transformada inversa espacial SNR 222 esta conectada en comunicacion de senal con una entrada de un decodificador de MV 230. Una primera salida del decodificador de MV 230 esta conectada en comunicacion de senal con una segunda entrada del decodificador de MV 220. Una segunda salida del decodificador de MV 230 esta conectada en comunicacion de senal con una entrada de un compensador de movimiento 252. Una salida del compensador de movimiento 252 esta conectada en comunicacion de senal con una segunda entrada del combinador 250.
Una salida del combinador 250 esta disponible como una salida del decodificador 200, para dar salida a una senal de capa 0. Una salida del combinador 240 esta disponible como una salida del decodificador 200, para dar salida a una senal de capa 1. Una salida del combinador 230 esta disponible como una salida del decodificador 200, para dar salida a una senal de capa 2.
Con referencia a la FIG. 1a, un codificador de AVC modo de ejemplo se indica en general con el numero de referencia 2100. El codificador de AVC 2100 se puede utilizar, por ejemplo, para codificar una sola capa (por ejemplo, la capa base).
El codificador de video 2100 incluye un bufer de ordenamiento de trama 2110 que tiene una salida en comunicacion de senal con una entrada no inversora de un combinador 2185. Una salida del combinador 2185 esta conectada en comunicacion de senal con una primera entrada de un transformador y cuantificador 2125. Una salida del transformador y cuantificador 2125 esta conectada en comunicacion de senal con una primera entrada de un codificador de entropfa 2145 y una primera entrada de un transformador inverso y cuantificador inverso 2150. Una salida del codificador de entropfa 2145 esta conectada en comunicacion de senal con una primera entrada no inversora de un combinador 2190. Una salida del combinador 2190 esta conectada en comunicacion de senal con una primera entrada de un bufer de salida 2135.
Una primera salida de un controlador de codificador 2105 esta conectada en comunicacion de senal con una segunda entrada del bufer de ordenamiento de trama 2110, una segunda entrada del transformador inverso y cuantificador inverso 2150, una entrada de un modulo de decision de tipo de imagen 2115, una entrada de un modulo de decision de tipo de macrobloque (tipo MB) 2120, una segunda entrada de un modulo de intra-prediccion 2160, una segunda entrada de un filtro de desbloqueo 2165, una primera entrada de un compensador de movimiento 2170, una primera entrada de un estimador de movimiento 2175 y una segunda entrada de un bufer de imagenes de referencia 2180.
Una segunda salida del controlador de codificador 2105 esta conectada en comunicacion de senal con una primera entrada de un insertador de informacion de mejora complementaria ("SEI") 2130, una segunda entrada del transformador y cuantificador 2125, una segunda entrada del codificador de entropfa 2145, una segunda entrada del bufer de salida 2135 y una entrada del insertador del conjunto de parametros en secuencia (SPS) y del conjunto de parametros de imagen (PPS) 2140.
Una primera salida del modulo de decision de tipo de imagen 2115 esta conectada en comunicacion de senal con una tercera entrada de un bufer de ordenamiento de trama 2110. Una segunda salida del modulo de decision de tipo de imagen 2115 esta conectada en comunicacion de senal con una segunda entrada de un modulo de decision de tipo macrobloque 2120.
Una salida del insertador del conjunto de parametros en secuencia (SPS) y del conjunto de parametros de imagen (PPS) 2140 esta conectada en comunicacion de senal con una tercera entrada no inversora del combinador 2190.
5
10
15
20
25
30
35
40
45
50
Una salida del insertador SEI 2130 esta conectada en comunicacion de senal con una segunda entrada no inversora del combinador 2190.
Una salida del cuantificador inverso y el transformador inverso 2150 esta conectada en comunicacion de senal con una primera entrada no inversora de un combinador 2127. Una salida del combinador 2127 esta conectada en comunicacion de senal con una primera entrada del modulo de intra-prediccion 2160 y una primera entrada del filtro de desbloqueo 2165. Una salida del filtro de desbloqueo 2165 esta conectada en comunicacion de senal con una primera entrada de un bufer de imagenes de referencia 2180. Una salida del bufer de imagenes de referencia 2180 esta conectada en comunicacion de senal con una segunda entrada del estimador del movimiento 2175 y con una primera entrada de un compensador del movimiento 2170. Una primera salida del estimador de movimiento 2175 esta conectada en comunicacion de senal con una segunda entrada del compensador de movimiento 2170. Una segunda salida del estimador de movimiento 2175 esta conectada en comunicacion de senal con una tercera entrada del codificador de entropfa 2145.
Una salida del compensador de movimiento 2170 esta conectada en comunicacion de senal con una primera entrada de un conmutador 2197. Una salida del modulo de intra-prediccion 2160 esta conectada en comunicacion de senal con una segunda entrada del conmutador 2197. Una salida del modulo de decision de tipo macrobloque 2120 esta conectada en comunicacion de senal con una tercera entrada del conmutador 2197 con el fin de proporcionar una entrada de control al conmutador 2197. Una salida del conmutador 2197 esta conectada en comunicacion de senal con una segunda entrada no inversora del combinador 2127 y con una entrada inversora del combinador 2185.
Entradas del bufer de ordenamiento de trama 2110 y el controlador de codificador 2105 estan disponibles como entrada del codificador 2100, para recibir una imagen de entrada 2101. Ademas, una entrada del insertador de SEI 2130 esta disponible como una entrada del codificador 2100, para la recepcion de metadatos. Una salida del bufer de salida 2135 esta disponible como una salida del codificador 2100, para dar salida a un flujo de bits.
Con referencia a la FIG. 2a, un decodificador de video capaz de realizar la decodificacion de video de acuerdo con la norma AVC MPEG-4 se indica en general con el numero de referencia 2200.
El decodificador de video 2200 incluye un bufer de entrada 2210 que tiene una salida conectada en comunicacion de senal con una primera entrada de un decodificador de entropfa 2245. Una primera salida del decodificador de entropfa 2245 esta conectada en comunicacion de senal con una primera entrada de un transformador inverso y cuantificador inverso 2250. Una salida del transformador inverso y cuantificador inverso 2250 esta conectada en comunicacion de senal con una segunda entrada no inversora de un combinador 2225. Una salida del combinador 2225 esta conectada en comunicacion de senal con una segunda entrada de un filtro de desbloqueo 2265 y una primera entrada de un modulo de intra-prediccion 2260. Una segunda salida del filtro de desbloqueo 2265 esta conectada en comunicacion de senal con una primera entrada de un bufer de imagenes de referencia 2280. Una salida del bufer de imagenes de referencia 2280 esta conectada en comunicacion de senal con una segunda entrada de un compensador de movimiento 2270.
Una segunda salida del decodificador de entropfa 2245 esta conectada en comunicacion de senal con una tercera entrada del compensador de movimiento 2270 y una primera entrada del filtro de desbloqueo 2265. Una tercera salida del decodificador de entropfa 2245 esta conectada en comunicacion de senal con una entrada de un controlador de decodificador 2205. Una primera salida del controlador de decodificador 2205 esta conectada en comunicacion de senal con una segunda entrada del decodificador de entropfa 2245. Una segunda salida del controlador de decodificador 2205 esta conectada en comunicacion de senal con una segunda entrada del transformador inverso y cuantificador inverso 2250. Una tercera salida del controlador de decodificador 2205 esta conectada en comunicacion de senal con una tercera entrada del filtro de desbloqueo 2265. Una cuarta salida del controlador de decodificador 2205 esta conectada en comunicacion de senal con una segunda entrada del modulo de intra-prediccion 2260, con una primera entrada del compensador de movimiento 2270 y con una segunda entrada del bufer de imagenes de referencia 2280.
Una salida del compensador de movimiento 2270 esta conectada en comunicacion de senal con una primera entrada de un conmutador 2297. Una salida del modulo de intra-prediccion 2260 esta conectada en comunicacion de senal con una segunda entrada del conmutador 2297. Una salida del conmutador 2297 esta conectada en comunicacion de senal con una primera entrada no inversora del combinador 2225.
5
10
15
20
25
30
35
40
45
50
Una entrada del bufer de entrada 2210 esta disponible como una entrada del decodificador 2200, para recibir un flujo de bits de entrada. Una primera salida del filtro de desbloqueo 2265 esta disponible como una salida del decodificador 2200, para dar salida a una imagen de salida.
Con referencia a la FIG. 3, se muestra una estructura para un SPS de un sola capa 300. El SPS es una estructura de sintaxis que contiene generalmente elementos de sintaxis que se aplican a las secuencias de video codificadas cero o mas enteros. En la extension de SVC, los valores de algunos elementos de sintaxis transportados en el SPS son dependientes de la capa. Estos elementos de sintaxis dependientes de la capa incluyen, pero no se limitan a la informacion de temporizacion, parametros del HRD (que representa "decodificado hipotetico de referencia") e informacion de restriccion de flujo de bits. Los parametros del HRD pueden incluir, por ejemplo, indicadores de tamano del bufer, la tasa de bits maxima y el retardo inicial. Los parametros del HRD pueden permitir a un sistema de recepcion, por ejemplo, verificar la integridad de un flujo de bits recibidos y/o para determinar si el sistema de recepcion (por ejemplo, un decodificador) puede decodificar el flujo de bits. Por lo tanto, un sistema puede proporcionar la transmision de los elementos de sintaxis antes mencionados para cada una de las capas.
El SPS de una sola capa 300 incluye un SPS-ID 310 que proporciona un identificador para el SPS. El SPS de una sola capa 300 incluye tambien los parametros de la VUI (que representa Informacion de Usabilidad de Video) 320 para una sola capa. Los parametros de la VUI incluyen los parametros del HRD 330 para una sola capa tales como, por ejemplo, la capa de base. El SPS de una sola capa 300 tambien puede incluir parametros adicionales 340, aunque las implementaciones no necesitan incluir cualquier parametro adicional 340.
Con referencia a la FIG. 4, una vista de bloques de un flujo de datos 400 muestra un uso tfpico del SPS de una sola capa 300. En la norma AVC, por ejemplo, un flujo de datos tfpico puede incluir, entre otros componentes, una unidad de SPS, multiples unidades de pPs (secuencia de parametros de imagen) que proporcionan parametros para una imagen particular, y multiples unidades para datos de imagen codificada. Un marco general de este tipo se sigue en la FIG. 4, que incluye el SPS 300, una PPS-1 410, una o mas unidades 420 que incluyen datos codificados de imagen-1, una PPS-2 430, y una o mas unidades 440 que incluyen datos codificados de imagen-2. La PPS-1 410 incluye parametros para los datos codificados de imagen-1 420, y la PPS-2 430 incluye parametros para los datos codificados de imagen-2 440.
Los datos codificados de imagen-1 420 y los datos codificados de imagen-2 440 estan cada uno asociados con un SPS particular (el SPS 300 en la implementacion de la FIG. 4). Esto se logra mediante el uso de punteros, como ahora se explica. Los datos codificados de imagen-1 420 incluyen una PPS-ID (no mostrada) que identifica la PPS-1 410 tal como se muestra por una flecha 450. La PPS-ID puede ser almacenada, por ejemplo, en una cabecera de segmento. Los datos codificados de imagen-2 440 incluyen una PPS-ID (no mostrada) que identifica la PPS-2 430 tal como se muestra por una flecha 460. La PPS-1 410 y la PPS-2 430 incluyen cada una un SPS-ID (no mostrado) que identifica la SPS 300 tal como se muestra por las flechas 470 y 480, respectivamente.
Con referencia a la FIG. 5, se muestra una estructura para un SUP SPS 500. El SUP SPS 500 incluye un SPS ID 510, una VUI 520 que incluye parametros del HRD 530 para una sola capa adicional a la que se alude como "(D2, T2, Q2)", y parametros adicionales opcionales 540. "D2, T2, Q2" se refiere a una segunda capa que tiene el nivel espacial (D) 2, el nivel temporal (T) 2 y el nivel de calidad (Q) 2.
Observese que se pueden utilizar diversos esquemas de numeracion para referirse a las capas. En un esquema de numeracion, las capas de base tienen una D, T, Q de 0, x, 0, lo que significa un nivel espacial de cero, cualquier nivel temporal y un nivel de calidad de cero. En ese esquema de numeracion, las capas de mejora tienen una D, T, Q en donde D o Q son mayores que cero.
El uso del SUP SPS 500 permite, por ejemplo, que un sistema utilice una estructura de SPS que solo incluye parametros para una sola capa, o que no incluye informacion alguna dependiente de la capa. Un sistema de este tipo puede crear un SUP SPS separado para cada una de las capas adicionales mas alla de la capa base. Las capas adicionales pueden identificar el SPS con el que estan asociados a traves del uso de la SPS ID 510. Claramente varias capas pueden compartir un solo SPS utilizando una SPS ID comun en sus respectivas unidades de SUP SPS.
Con referencia a la FIG. 6, se muestra una jerarqrna organizativa 600 entre una unidad de SPS 605 y multiples unidades de SUP SPS 610 y 620. Las unidades de SUP SPS 610 y 620 se muestran como unidades de SUP SpS de una sola capa, pero otras implementaciones pueden utilizar una o mas unidades de SUP SPS de multiples capas ademas, o en lugar de unidades de SUP SPS de una sola capa. La jerarqrna 600 ilustra que, en un escenario tfpico, multiples unidades de SUP SPS se pueden asociar con una unica unidad de SPS. Las implementaciones pueden
5
10
15
20
25
30
35
incluir, por supuesto, multiples unidades de SPS, y cada una de las unidades de SPS puede tener asociadas unidades de SPS SUP.
Con referencia a la FIG. 7, se muestra una estructura para otro SUP SPS 700. El SUP SPS 700 incluye parametros para multiples capas, mientras que SUP SPS 500 incluye parametros para una sola capa. SUP SPS 700 incluye una SPS ID 710, una VUI 720 y los parametros adicionales opcionales 740. La VUI 720 incluye parametros del HRD 730 para una primera capa adicional (D2, T2, Q2), y para otras capas adicionales hasta la capa (Dn, Tn, Qn).
Con referencia de nuevo a la FIG. 6, la jerarqma 600 puede modificarse para utilizar un SUP SPS de multiples capas. Por ejemplo, la combinacion de los SUP SPS 610 y 620 puede ser reemplazada por el SUP SPS 700 si tanto el SUP SPS 610 como el 620 incluyen la misma SPS ID.
Adicionalmente, el SUP SPS 700 se puede utilizar, por ejemplo, con un SPS que incluye parametros para una sola capa, o que incluye parametros para multiples capas, o que no incluye parametros dependientes de la capa para cualquiera de las capas. El SUP SPS 700 permite a un sistema proporcionar parametros para multiples capas con poca sobrecarga.
Otras implementaciones pueden estar basadas, por ejemplo, en un SPS que incluye todos los parametros necesarios para todas las capas posibles. Es decir, la SPS de una implementacion de este tipo incluye todos los niveles espacial (Di), temporal (Ti) y de calidad (Qi) correspondientes que estan disponibles para ser transmitidos, independientemente de si todas las capas son transmitidas o no. Incluso con un sistema de este tipo, sin embargo, se puede utilizar un SUP SPS para proporcionar una capacidad de cambiar los parametros de una o mas capas sin transmitir todo el SPS de nuevo.
Haciendo referencia a la Tabla 1, se proporciona una sintaxis para una implementacion espedfica de un SUP SPS de una sola capa. La sintaxis incluye sequence_parameter_set_id para identificar el SPS asociado, y los identificadores de temporaljevel, dependency_id, y quality_level para identificar una capa escalable. Los parametros de la VUI se incluyen mediante el uso de svc_vui_parameters() (vease la Tabla 2), que incluye parametros del HRD a traves del uso de hrd_parameters(). La sintaxis que figura mas adelante permite que cada una de las capas especifique sus propios parametros dependientes de la capa tales como, por ejemplo, parametros del HRD.
- sup_seq_parameter_set_svc ( ) {
- C Descriptor
- sequence_parameter_set_id
- 0 ue(v)
- temporaMevel
- 0 u(3)
- dependency_id
- 0 u(3)
- qualitylevel
- 0 u(2)
- vui_parameters_present_svc_flag
- 0 u(l)
- if( vui_parameters_present_svc_flag )
- svc_vui_parameters( )
- }
Tabla 1
La semantica para la sintaxis de sup_seq_parameter_set_svc () es como sigue.
- sequence_parameter_set_id identifica el conjunto de parametros de secuencia que mapea la corriente SUP SPS para la capa actual;
- temporaljevel, dependency_id, y quality_level especifican el nivel temporal, el identificador de dependencia y el nivel de calidad para la capa actual. Dependency_id indica en general el nivel espacial. Sin embargo, dependency_id tambien se utiliza para indicar la jerarqufa de la Escalabilidad por Granularidad Gruesa ("CGS"), que incluye tanto la escalabilidad espacial como la SNR, siendo la escalabilidad SNR una escalabilidad tradicional de la calidad. En consecuencia, quality_level y dependency_id pueden ser utilizadas para distinguir los niveles de calidad.
- vui_parameters_present_svc_flag igual a 1 especifica que esta presente la estructura de sintaxis svc_vui_parameters() tal como se define mas adelante. vui_parameters_present_svc_flag igual a 0 especifica que no esta presente la estructura de sintaxis svc_vui_parameters().
La Tabla 2 da la sintaxis para svc_vui_parameters(). Por tanto, los parametros de la VUI estan separados para cada 5 una de las capas y se ponen en unidades de SUP SPS individuales. Otras implementaciones, sin embargo, agrupan los parametros de la VUI para multiples capas en un solo SUP SPS.
- svc_vui_parameters( ) {
- C Descriptor
- timing info present flag
- 0 u(l)
- If( timing_info_present_flag ) {
- n u m_u n its_in_tick
- 0 ii(32)
- timescale
- 0 u(32)
- fixed_frame_rate_flag
- 0 u(l)
- } ~
- na l_h rd_pa ra meters_p resen t_flag
- 0 u(l)
- If( nal_hrd_parameters_present_flag )
- hrd_parameters( )
- vd_hrd_parameters_present_flag
- 0 u(l)
- If( vcl_hrd_parameters_present_flag )
- hrd_parameters( )
- If( nal_hrd_parameters_present_flag || vcl_hrd_parameters_present flag)
- low_delay_hrd_fIag
- 0 u(l)
- pic_struct_present_flag
- 0 U(l)
- bitstream_restriction_flag
- 0 U(I)
- Ifl[ bitstream_restriction_flag ) {
- motion_vectors_over_pic_boundaries_flag
- 0 u(l)
- maxbytesperpicdenom
- 0 ue(v)
- max_bits_per_mb_denom
- 0 ue(v)
- log2_max_mv_length_horizontal
- 0 ue(v)
- log2_max_mv_Iength_vertical
- 0 ue(v)
- numreorderframes
- 0 ue(v)
- max_dec_frame_buffering
- 0 ue(v)
- } '
- 1
Tabla 2
10 Los campos de la sintaxis svc_vui_parameters() de la Tabla 2 se definen en la version de la extension SVC que existfa en abril de 2007 bajo JVT-U201 anexo E E.1. En particular, hrd_parameters() es como se define para la norma AVC. Observese tambien que svc_vui_parameters () incluye diversa informacion dependiente de la capa, incluyendo los parametros relacionados con el HRD. Los parametros relacionados con el HRD incluyen num_units_in_tick, time_scale, fixed_frame_rate_flag, nal_hrd_parameters_present_flag,
15 vcl_hrd_parameters_present_flag, hrd_parameters (), low_delay_hrd_flag, y pic_struct_present_flag. Ademas, los elementos de sintaxis en el bitsream_restriction_flag if-loop son dependientes de la capa, a pesar de que no estan relacionados con el HRD.
Tal como se menciono anteriormente, el SUP SPS se define como un nuevo tipo de unidad NAL. La Tabla 3 enumera algunos de los codigos de unidad NAL tal como se define por la norma JVT-U201, pero modificados para asignar tipo 24 al SUP SPS. Los puntos suspensivos entre los tipos de unidad NAL 1 y 16, y entre 18 y 24, indican que esos tipos son sin cambios. Los puntos suspensivos entre los tipos de unidad NAL 25 y 31 significan que esos 5 tipos estan todos no especificados. La implementacion de la Tabla 3 que figura a continuacion cambia el tipo 24 de la norma de "no especificado" a "sup_seq_parameter_set_svc()". "No especificado" se reserva generalmente para las aplicaciones de usuario."Reservado", por el contrario, generalmente se reserva para futuras modificaciones estandares. En consecuencia, otra implementacion cambia uno de los tipos "reservados" (por ejemplo, el tipo 16, 17 o 18) a "sup_seq_parameter_set_svc ()". El cambio de un tipo "no especificado" resulta en una implementacion para 10 un usuario dado, mientras que el cambio de un tipo de resultados "reservado" en una implementacion cambia el patron para todos los usuarios.
- tipo_unidad_nal
- Contenido de unidad NAL y estructura de la sintaxis RBSP C
- 0
- No especificado
- 1
- Segmento codificado de una imagen no IDR slice_layer_without_partitioning_rbsp() 2, 3, 4
- 16-18
- Reservado
- 24
- sup_seq_parameter_set_svc()
- CO LO CM
- No especificado
Tabla 3
La FIG. 8 muestra una vista funcional de una implementacion de un codificador de video escalable 800 que genera unidades SUP SPS. Un video se recibe en la entrada del codificador de video escalable 1. El video es codificado de 15 acuerdo con diferentes niveles espaciales. Los niveles espaciales se refieren principalmente a los diferentes niveles de resolucion del mismo video. Por ejemplo, como la entrada de un codificador de video escalable, se puede tener una secuencia CIF (352 por 288) o una secuencia QCIF (176 por 144) que representan cada una un nivel espacial.
Cada uno de los niveles espaciales se envfa a un codificador. El nivel espacial 1 se envfa a un codificador 2" , el nivel espacial 2 se envfa a un codificador 2', y el nivel espacial m se envfa a un codificador 2.
20 Los niveles espaciales son codificados con 3 bits, utilizando dependency_id. Por lo tanto, el numero maximo de niveles espaciales en esta implementacion es 8.
Los codificadores 2, 2' y 2" codificar una o mas capas que tienen el nivel espacial indicado. Los codificadores 2, 2' y 2" pueden ser disenados para que tengan niveles particulares de calidad y niveles temporales, o los niveles de calidad y niveles temporales puede ser configurables. Como puede verse por la FIG. 8, los codificadores 2, 2' y 2" 25 estan dispuestos jerarquicamente. Es decir, el codificador 2" alimenta al codificador 2', que a su vez alimenta al codificador 2. La disposicion jerarquica indica el escenario tfpico en el que las capas superiores utilizan menos capa(s) que una referencia.
Despues de la codificacion, las cabeceras se preparan para cada una de las capas. En la implementacion mostrada, para cada uno de los niveles espaciales, se crea un mensaje de SPS, un mensaje PPS y multiples mensajes 30 SUP_SPS. Los mensajes (o unidades) SUP SPS se pueden crear, por ejemplo, para las capas correspondientes a los diferentes niveles de calidad y temporales diferentes.
Para el nivel espacial 1, se crean SPS y PPS 5" y tambien se crea un conjunto de SUP_SPS1i, SUP_SPS21,..., SUP_SPS1n*O
Para el nivel espacial 2, se crean SPS y PPS 5' y tambien se crea un conjunto de SUP_SPS2i, SUP_SPS22,..., 35 SUP_SPS2n*o
5
10
15
20
25
30
35
40
Para el nivel espacial m, se crean SPS y PPS 5 y tambien se crea un conjunto de SUP_SPSmi, SUP_SPS2m,..., SUP_SPSn*om
Los flujos de bits 7, 7' y 7" codificados por los codificadores 2, 2' y 2" siguen tipicamente la pluralidad de SPS, PPS y SUP_SPS (a los que se alude tambien como cabeceras, unidades, o mensajes) en el flujo de bits global.
Un flujo de bits 8" incluye SPS y PPS 5", SUP_SPS1i, SUP_SPS21,..., SUP_SPSn*o1 6" , y flujo de bits de video codificado 7", que constituyen todos los datos codificados asociados con el nivel espacial 1.
Un flujo de bits de 8' incluye SPS y PPS 5' , SUP_SPS2i, SUP_SPS22,..., SUP_SPSn*o2 6' , y flujo de bits de video codificado 7' , que constituyen todos los datos codificados asociados con el nivel espacial 2.
Un flujo de bits 8 incluye SPS y PPS 5, SUP_SPSmi, SUP_SPS2m,..., SUP_SPSn*om 6, y flujo de bits de video codificado 7, que constituyen todos los datos codificados asociados con el nivel espacial m.
Las diferentes cabeceras SUP_SPS son compatibles con las cabeceras descritas en las Tablas 1-3.
El codificador 800 representado en la FIG. 8 genera un SPS para cada uno de los niveles espaciales. Sin embargo, otras implementaciones pueden generar multiples SPS para cada uno de los niveles espaciales o pueden generar un SPS que sirve a multiples niveles espaciales.
Los flujos de bits 8, 8' y 8" se combinan en un multiplexor 9 que produce un flujo de bits de SVC tal como se muestra en la FIG. 8.
Con referencia la FIG. 9, una vista jerarquica 900 ilustra la generacion de un flujo de datos que contiene unidades SUP SPS. La vista 900 se puede utilizar para ilustrar los posibles flujos de bits generados por el codificador de video escalable 800 de la FIG. 8. La vista 900 proporciona un flujo de bits de SVC a una interfaz de transmision 17.
El flujo de bits de SVC se puede generar, por ejemplo, de acuerdo con la implementacion de la FIG. 8, y comprende un SPS para cada uno de los niveles espaciales. Cuando se codifican m niveles espaciales, el flujo de bits de SVC comprende SPS1, SPS2 y SPSm representados por 10, 10' y 10" en la FIG. 9.
En el flujo de bits de SVC, cada uno de los SPS codifica la informacion general en relacion con el nivel espacial. El SPS es seguido por una cabecera 11, 11', 11", 13, 13', 13", 15, 15' y 15" del tipo SUP_SPS. El SUP_SPS es seguido por los datos de video codificados correspondientes 12, 12', 12", 14, 14', 14", 16, 16' y 16", que corresponden cada uno a un nivel temporal (n) y a un nivel de calidad (O).
Por lo tanto, cuando una capa no se transmite, los SUP_SPS correspondiente tampoco se transmiten. Esto es porque tfpicamente existe una cabecera SUP_SPS correspondiente a cada una de las capas.
Implementaciones tfpicas utilizan un esquema de numeracion para las capas en el que la capa base tiene un D y Q de cero. Si se utiliza un esquema de numeracion de este tipo para la vista 900, entonces la vista 900 no muestra explfcitamente una capa base. Esto no excluye el uso de una capa base. Adicionalmente, sin embargo, la vista 900 puede ser aumentada para mostrar explfcitamente un flujo de bits para una capa base, asf como, por ejemplo, un SPS separado para una capa base. Ademas, la vista 900 puede utilizar un esquema de numeracion alternativo para capas base, en el que uno o mas de los flujos de bits (1, 1, 1) a (m, n, O) se refiere a una capa base.
Con referencia a la FIG. 10, se proporciona una vista de bloque de un flujo de datos 1000 generado por la implementacion de las FIGS. 8 y 9. La FIG. 10 ilustra la transmision de las siguientes capas:
o capa (1, 1, 1): nivel espacial 1, nivel temporal 1, nivel de calidad 1; que incluye la transmision de
los bloques 10, 11 y 12;
o capa (1, 2, 1): nivel espacial 1, nivel temporal 2, nivel de calidad 1; que incluye la transmision
adicional de los bloques 11' y 12';
o capa (2, 1, 1): nivel espacial 2, nivel temporal 1, nivel de calidad 1; que incluye la transmision
adicional de los bloques 10', 13 y 14;
o capa (3, 1, 1) nivel espacial 3, nivel temporal 1, nivel de calidad 1; que incluye la transmision
adicional de los bloques 10", 15 y 16;
5
10
15
20
25
30
35
40
45
50
o capa (3, 2, 1): nivel espacial 3, nivel temporal 2, nivel de calidad 1; que incluye la transmision
adicional de los bloques 15' y 16';
o capa (3, 3, 1): nivel espacial 3, nivel temporal 3, nivel de calidad 1; que incluye la transmision
adicional de los bloques 15" y 16".
La vista de bloques del flujo de datos 1000 ilustra que SPS 10 solo se envfa una vez y es utilizado tanto por la capa (1, 1, 1) como por la capa (1, 2, 1), y que SPS 10" solo se envfa una vez y es utilizado por cada una de la capa (3, 1, 1), la capa (3, 2, 1) y la capa (3, 3, 1). Ademas, el flujo de datos 1000 ilustra que los parametros para todas las capas no se transmiten, sino mas bien solamente los parametros correspondientes a las capas transmitidas. Por ejemplo, los parametros para la capa (2, 2, 1), correspondiente a SUP_SPS22, no se transmiten debido a que la capa no se transmite. Esto proporciona una eficiencia para esta implementacion.
Con referencia la FIG. 11, un codificador 1100 incluye una unidad de generacion de SPS 1110, un codificador de video 1120 y un formateador 1130. El codificador de video 1120 recibe video de entrada, codifica el video de entrada y proporciona el video de entrada codificada al formateador 1130. El video de entrada codificada puede incluir, por ejemplo, multiples capas tales como, por ejemplo, una capa de base codificada y una capa de mejora codificada. La unidad de generacion de SPS 1110 genera informacion de cabecera tal como, por ejemplo, las unidades SPS y unidades SUP SPS, y proporciona la informacion de cabecera al formateador 1130. La unidad de generacion de SPS 1110 tambien se comunica con el codificador de video 1120 para proporcionar parametros utilizados por el codificador de video 1120 en la codificacion del video de entrada.
La unidad de generacion de SPS 1110 puede estar configurada, por ejemplo, para generar una unidad NAL de SPS. La unidad NAL de SPS puede incluir informacion que describe un parametro para su uso en la descodificacion de una codificacion de la primera capa de una secuencia de imagenes. La unidad de generacion de SPS 1110 tambien puede estar configurada, por ejemplo, para generar una unidad NAL de SUP SPS que tiene una estructura diferente a la unidad NAL de SPS. La unidad nAl de SUP SPS puede incluir informacion que describe un parametro para su uso en la descodificacion de una segunda capa que codifica la secuencia de imagenes. La codificacion de la primera capa y la codificacion de la segunda capa pueden ser producidas por el codificador de video 1120.
El formateador 1130 multiplexa el video codificado desde el codificador de video 1120, y la informacion de cabecera de la unidad de generacion de SPS 1110, para producir una salida de flujo de bits codificado. El flujo de bits codificado puede ser un conjunto de datos que incluye la codificacion de la primera capa de la secuencia de imagenes, la codificacion de la segunda capa de la secuencia de imagenes, la unidad NAL de SPS y la unidad NAL de SUP SPS.
Los componentes 1110, 1120 y 1130 del codificador 1100 pueden adoptar muchas formas. Uno o mas de los componentes 1110, 1120 y 1130 puede incluir hardware, software, firmware o una combinacion, y puede ser hecho funcionar a partir de una variedad de plataformas tales como, por ejemplo, un codificador dedicado o un procesador general configurado a traves de software para funcionar como un codificador.
Las FIGS. 8 y 11 se pueden comparar. La unidad de generacion de SPS 1110 puede generar el SPS y los diversos SUP_SPSn*om mostrados en la FIG. 8. El codificador de video 1120 puede generar los flujos de bits 7, 7' y 7" (que son las codificaciones del video de entrada) que se muestran en la FIG. 8. El codificador de video 1120 puede corresponder, por ejemplo, a uno o mas de los codificadores 2, 2' o 2". El formateador 1130 puede generar los datos dispuestos jerarquicamente que se muestran con los numeros de referencia 8, 8', 8", asf como realizar la operacion del multiplexor 9 para generar el flujo de bits de SVC de la FIG. 8.
Las FIGS. 1 y 11 tambien se pueden comparar. El codificador de video 1120 puede corresponder, por ejemplo, a los bloques 104 y 187 de la FIG. 1. El formateador 1130 puede corresponder, por ejemplo, al multiplexor 170. La unidad de generacion de SPS 1110 no se muestra explfcitamente en la FIG.1, aunque la funcionalidad de la unidad de generacion de SPS 1110 puede ser llevada a cabo, por ejemplo, por el multiplexor 170.
Otras implementaciones del codificador 1100 no incluyen el codificador de video 1120 porque, por ejemplo, los datos estan pre-codificados. El codificador 1100 tambien puede proporcionar salidas adicionales y proporcionar una comunicacion adicional entre los componentes. El codificador 1100 tambien puede modificarse para proporcionar componentes adicionales que pueden, por ejemplo, estar situados entre componentes existentes.
Con referencia a la FIG. 12, se muestra un codificador 1200 que opera de la misma manera que el codificador 1100. El codificador 1200 incluye una memoria 1210 en comunicacion con un procesador 1220. La memoria 1210 puede utilizarse, por ejemplo, para almacenar el video de entrada, para almacenar parametros de codificacion o
5
10
15
20
25
30
35
40
45
50
decodificacion, para almacenar resultados intermedios o finales durante el proceso de codificacion o para almacenar instrucciones para realizar un metodo de codificacion. Tal almacenamiento puede ser temporal o permanente.
El procesador 1220 recibe video de entrada y codifica el video de entrada. El procesador 1220 tambien genera informacion de cabecera, y formatea un flujo de bits codificado que incluye informacion de cabecera y video de entrada codificado. Al igual que en el codificador 1100, la informacion de cabecera proporcionada por el procesador 1220 puede incluir estructuras separadas para el transporte de la informacion de cabecera para multiples capas. El procesador 1220 puede operar de acuerdo con las instrucciones almacenadas en, o de otro modo residentes en o parte de, por ejemplo, el procesador 1220 o la memoria 1210.
Con referencia a la FIG. 13, se muestra un proceso 1300 para la codificacion de video de entrada. El proceso 1300 puede llevarse a cabo mediante, por ejemplo, cualquiera de los codificadores 1100 o 1200.
El proceso 1300 incluye generar una unidad NAL de SPS (1310). La unidad NAL de SPS incluye informacion que describe un parametro para su uso en la decodificacion de la primera capa que codifica la secuencia de imagenes. La unidad NAL de SPS puede estar definida por un patron de codificacion o no. Si la unidad NAL de SPS esta definida por un patron de codificacion, entonces el patron de codificacion puede requerir un decodificador para operar de acuerdo con las unidades NAL de SPS recibidas. A un requisito de este tipo se le alude en general afirmando que la unidad NAL de SPS es "normativa". Los SPS, por ejemplo, son normativos en la norma AVC, mientras que los mensajes de informacion de mejora complementaria ("SEI"), por ejemplo, no son normativos. Por consiguiente, los decodificadores compatibles con AVC pueden ignorar los mensajes de SEI recibidos, pero deben operar de acuerdo con el SPS recibido.
La unidad NAL de SPS incluye informacion que describe uno o mas parametros para decodificar una primera capa. El parametro puede ser, por ejemplo, informacion que depende de la capa, o no depende de la capa. Ejemplos de parametros que son tipicamente dependientes de la capa incluyen un parametro de la VUI o un parametro del HRD.
Operacion 1310 puede llevarse a cabo, por ejemplo, por la unidad de generacion de SPS 1110, el procesador 1220, o el insertador de SPS y PPS 2140. La operacion 1310 puede corresponder tambien a la generacion de SPS en cualquiera de los bloques 5, 5', 5" en la FIG. 8.
Por consiguiente, un medio para realizar la operacion 1310, es decir, generar una unidad NAL de SPS, puede incluir diversos componentes. Por ejemplo, tales medios pueden incluir un modulo para generar SPS 5, 5' o 5", un sistema codificador completo de la FIG. 1, 8, 11 o 12, una unidad de generacion de SPS 1110, un procesador 1220 o un insertador de sPs y PPS 2140, o sus equivalentes, incluyendo codificadores conocidos y desarrollados en el futuro.
El proceso 1300 incluye generar una unidad NAL de (SUP”) SPS complementaria que tiene una estructura diferente a la unidad NAL de sPs (1320). La unidad NAL de SUP SPS incluye informacion que describe un parametro para su uso en la decodificacion de la segunda capa que codificacion de la secuencia de imagenes. La unidad NAL de SUP SPS puede estar definida por un estandar de codificacion, o no. Si la unidad NAL de SUP SPS esta definida por un estandar de codificacion, entonces el estandar de codificacion puede requerir un decodificador para operar de acuerdo con las unidades NAL de SUP SPS recibidas. Tal como se ha comentado anteriormente con respecto a la operacion 1310, a un requisito de este tipo se le alude en general estableciendo que la unidad NAL de SUP SPS es "normativa".
Diversas implementaciones incluyen mensajes de SUP SPS normativos. Por ejemplo, los mensajes de SUP SPS pueden ser normativos para decodificadores que decodifican mas de una capa (por ejemplo, decodificadores compatibles con SVC). Tales decodificadores de multiples capas (por ejemplo, decodificadores compatibles con SVC) senan necesarios para operar de acuerdo con la informacion transmitida en mensajes de SUP SPS. Sin embargo, los decodificadores de una sola capa (por ejemplo, decodificadores compatibles con AVC) podnan ignorar los mensajes de SUP SPS. Como otro ejemplo, los mensajes de SUP SPS pueden ser normativos para todos los decodificadores, incluyendo decodificadores de una sola capa y de multiples capas. No es de extranar que muchas implementaciones incluyan mensajes de SUP SPS normativos, dado que los mensajes de SUP SPS se basan, en gran parte, en los mensajes de SPS y que los mensajes de SPS sean normativos en la norma AVC y las extensiones de SVC y MVC. Es decir, mensajes SUP SPS portan datos similares como mensajes de SPS, sirven para un proposito similar a los mensajes de SPS y pueden ser considerados como un tipo de mensaje de SPS. Debe quedar claro que las implementaciones que tienen mensajes de SUP SPS normativos pueden proporcionar ventajas de compatibilidad, por ejemplo, permitiendo que decodificadores de AVC y SVC reciban un flujo de datos comun.
5
10
15
20
25
30
35
40
45
50
La unidad NAL de SUP SPS (a la que tambien se alude como el mensaje de SUP SPS) incluye uno o mas parametros para decodificar una segunda capa. El parametro puede ser, por ejemplo, informacion que depende de la capa o que no depende de la capa. Ejemplos espedficos incluyen un parametro de la VUI o un parametro del HRD. El SUP SPS puede tambien utilizarse para la decodificacion de la primera capa, ademas de ser utilizado para la decodificacion de la segunda capa.
La operacion 1320 puede realizarse, por ejemplo, por la unidad de generacion de SPS 1110, el procesador 1220 o un modulo analogo al insertador de SPS y PPS 2140. La operacion 1320 puede corresponder tambien a la generacion de SUP_SPS en cualquiera de los bloques 6, 6', 6" en la FIG. 8.
Por consiguiente, medios para realizar la operacion 1320, es decir, generar una unidad NAL de SUP SPS, pueden incluir diversos componentes. Por ejemplo, tales medios pueden incluir un modulo para generar SUP_SPS 6, 6' o 6", un sistema codificador completo de la FIG. 1, 8, 11 o 12, una unidad de generacion de SPS 1110, un procesador 1220 o un modulo analogo al insertador de SPS y PPS 2140, o sus equivalentes, incluyendo codificadores conocidos y desarrollados en el futuro.
El proceso 1300 incluye codificar una primera capa que codifica, por ejemplo, la capa base, para una secuencia de imagenes, y codificar una segunda capa que codifica la secuencia de imagenes (1330). Estas codificaciones de la secuencia de imagenes producen la codificacion de la primera capa y la codificacion de la segunda capa. La codificacion de la primera capa puede ser formateada en una serie de unidades a las que se hace referencia como unidades de codificacion de la primera capa, y la codificacion de la segunda capa puede ser formateada en una serie de unidades a los que se hace referencia como unidades de codificacion de la segunda capa. La operacion 1330 puede llevarse a cabo, por ejemplo, por el codificador de video 1120, el procesador 1220, los codificadores 2, 2' o 2" de la FIG.8 o la implementacion de la FIG. 1.
Por consiguiente, medios para realizar la operacion 1330 pueden incluir diversos componentes. Por ejemplo, tales medios pueden incluir un codificador 2, 2' o 2", un sistema codificador completo de la FIG. 1, 8, 11 o 12, un codificador de video 1120, un procesador 1220 o uno o mas codificadores de nucleo 187 (posiblemente incluyendo el modulo de decimacion 104), o sus equivalentes, incluyendo codificadores conocidos y desarrollados en el futuro.
El proceso 1300 incluye proporcionar un conjunto de datos (1340). El conjunto de datos incluye la primera capa que codifica la secuencia de imagenes, la segunda capa que codifica la secuencia de imagenes, la unidad NAL de SPS y la unidad NAL de SUP SPS. El conjunto de datos puede ser, por ejemplo, un flujo de bits, codificados de acuerdo con un patron conocido, a almacenar en la memoria o a transmitir a uno o mas decodificadores. La operacion 1340 puede llevarse a cabo, por ejemplo, por el formateador 1130, el procesador 1220 o el multiplexor 170 de la FIG. 1. La operacion 1340 tambien se puede realizar en la FIG. 8 mediante la generacion de cualquiera de los flujos de bits de 8, 8' y 8", asf como mediante la generacion del flujo de bits multiplexado de SVC.
Por consiguiente, unos medios para realizar la operacion 1340, es decir, proporcionar un conjunto de datos, puede incluir diversos componentes. Por ejemplo, tales medios pueden incluir un modulo para generar el flujo de bits 8, 8' u 8", un multiplexor 9, un sistema codificador completo de la FIG. 1, 8,11 o 12, un formateador 1130, un procesador 1220 o un multiplexor 170, o sus equivalentes, incluyendo codificadores conocidos y desarrollados en el futuro.
El proceso 1300 puede ser modificado de diversas maneras. Por ejemplo, la operacion 1330 puede ser eliminada del proceso 1300 en las implementaciones en las que, por ejemplo, los datos son pre-codificados. Adicionalmente, ademas de eliminar la operacion 1330, la operacion 1340 puede ser eliminada para proporcionar un proceso dirigido hacia la generacion de unidades de descripcion para multiples capas.
Con referencia a la FIG. 14, se muestra un flujo de datos 1400 que puede ser generado, por ejemplo, por el proceso 1300. El flujo de datos 1400 incluye una parte 1410 para una unidad NAL de SPS, una parte 1420 para una unidad NAL de SUP SPS, una parte 1430 para los datos codificados de la primera capa y una porcion 1440 para los datos codificados de la segunda capa. Los datos codificados de la primera capa 1430 es la codificacion de la primera capa, que puede ser formateada como unidades de codificacion de la primera capa. Los datos codificados de la segunda capa 1440 es la codificacion de la segunda capa, que puede ser formateada como unidades de codificacion de la segunda capa. El flujo de datos 1400 puede incluir partes adicionales que pueden adjuntarse despues de la porcion 1440 o intercalarse entre las porciones 1410-1440. Adicionalmente, otras implementaciones pueden modificar una o mas de las porciones 1410-1440.
El flujo de datos 1400 puede ser comparado con las FIGS. 9 y10. La unidad NAL de SPS 1410 puede ser, por ejemplo, cualquiera del SPS1 10, el SPS2 10' o el SPSm 10". La unidad NAL de SUP SPS 1420 puede ser, por
5
10
15
20
25
30
35
40
45
ejemplo, cualquiera de las cabeceras SUP_SPS 11, 11', 11", 13, 13', 13", 15, 15' o 15". Los datos codificados de la primera capa 1430 y los datos codificados de la segunda capa 1440 pueden ser cualquiera de los flujos de bits para las capas individuales mostradas como Flujo de bits de la Capa (1, 1, 1) 12 a (m, n, O) 16", e incluyendo los flujos de bits 12, 12', 12", 14, 14', 14", 16, 16' y 16". Es posible que los datos codificados de la primera capa 1430 sean un flujo de bits con un conjunto superior de niveles que los datos codificados de la segunda capa 1440. Por ejemplo, los datos codificados de la primera capa 1430 pueden ser el Flujo de bits de la Capa (2, 2, 1) 14', y los datos codificados de la segunda capa 1440 pueden ser el Flujo de bits de la Capa (1, 1, 1) 12.
Una implementacion del flujo de datos 1400 tambien puede corresponder al flujo de datos 1000. La unidad NAL de SPS 1410 puede corresponder al modulo de SPS 10 del flujo de datos 1000. La unidad NAL de SUP SPS 1420 puede corresponder al modulo SUP_SPS 11 del flujo de datos 1000. Los datos codificados de la primera capa 1430 pueden corresponder al Flujo de bits de la Capa (1, 1, 1) 12 del flujo de datos 1000. Los datos codificados de la segunda capa 1440 pueden corresponder al Flujo de bits de la Capa (1, 2, 1) 12' del flujo de datos 1000. El modulo SUP_SPS 11' del flujo de datos 1000 puede estar intercalado entre los datos codificados de la primera capa 1430 y los datos codificados de la segunda capa 1440. Los bloques restantes (10'-16") mostrados en el flujo de datos 1000 pueden adjuntarse al flujo de datos 1400 en el mismo orden que el mostrado en el flujo de datos 1000.
Las FIGS. 9 y 10 pueden sugerir que los modulos de SPS no incluyen parametros espedficos para la capa. Diversas implementaciones operan de esta manera y tfpicamente requieren un SUP_SPS para cada una de las capas. Sin embargo, otras implementaciones permiten que el SPS incluya parametros de la capa espedficos para una o mas capas, permitiendo de este modo que una o mas capas sean transmitidas, sin requerir una SUP_SPS.
Las FIGS. 9 y 10 sugieren que cada uno de los niveles espaciales tenga su propio SPS. Otras implementaciones vanan esta caractenstica. Por ejemplo, otras implementaciones proporcionan un SPS separado para cada nivel temporal o para cada nivel de calidad. Todavfa otras implementaciones proporcionan un SPS separado para cada capa, y otras implementaciones proporcionan un SPS unico que sirve a todas las capas.
Con referencia a la FIG. 15, un descodificador 1500 incluye una unidad de analisis 1510 que recibe un flujo de bits codificados tal como, por ejemplo, el flujo de bits codificados proporcionados por el codificador 1100, el codificador 1200, el proceso 1300 o el flujo de datos 1400. La unidad de analisis 1510 esta acoplada a un decodificador 1520.
La unidad de analisis 1510 esta configurada para acceder a la informacion desde una unidad NAL de SPS. La informacion de la unidad NAL de SPS describe un parametro para uso en decodificar una codificacion de primera capa de una secuencia de imagenes. La unidad de analisis 1510 esta configurada adicionalmente para acceder a la informacion desde una unidad NAL de SUP SPS que tiene una estructura diferente a la unidad NAL de SPS. La informacion desde la unidad NAL de SUP SPS describe un parametro para uso en decodificar una codificacion de segunda capa de la secuencia de imagenes. Tal como se ha descrito anteriormente en relacion con la FIG. 13, los parametros pueden depender de la capa o no depender de la capa.
La unidad de analisis 1510 proporciona datos de cabecera analizados como una salida. Los datos de cabecera incluyen la informacion de acceso desde la unidad NAL de SPS y tambien incluyen la informacion de acceso desde la unidad NAL de SUP SPS. La unidad de analisis 1510 tambien proporciona datos de video codificados analizados como una salida. Los datos de video codificados incluyen la codificacion de la primera capa y la codificacion de la segunda capa. Tanto los datos de cabecera como los datos de video codificados son proporcionados al decodificador 1520.
El decodificador 1520 decodifica la codificacion de la primera capa utilizando la informacion que se accede desde la unidad NAL de SPS. El decodificador 1520 tambien decodifica la codificacion de la segunda capa utilizando la informacion que se accede desde la unidad NAL de SUP SPS. El decodificador 1520 genera, ademas, una reconstruccion de la secuencia de imagenes en base a la primera capa decodificada y/o la segunda capa decodificada. El decodificador 1520 proporciona un video reconstruido como una salida. El video reconstruido puede ser, por ejemplo, una reconstruccion de la codificacion de la primera capa o una reconstruccion de la codificacion de la segunda capa.
Comparando las FIGS. 15, 2 y 2a, la unidad de analisis 1510 puede corresponder, por ejemplo, al demultiplexor 202, y/o uno o mas de los decodificadores de entropfa 204, 212, 222 o 2245, en algunas implementaciones. El decodificador 1520 puede corresponder, por ejemplo, a los bloques restantes en la FIG. 2.
5
10
15
20
25
30
35
40
45
El decodificador 1500 tambien puede proporcionar salidas adicionales y proporcionar una comunicacion adicional entre los componentes. El decodificador 1500 tambien puede modificarse para proporcionar componentes adicionales que pueden, por ejemplo, estar situados entre componentes existentes.
Los componentes 1510 y 1520 del decodificador 1500 pueden adoptar muchas formas. Uno o mas de los componentes 1510 y 1520 puede incluir hardware, software, firmware o una combinacion, y puede ser hecho funcionar de una diversidad de plataformas tales como, por ejemplo, un descodificador dedicado o un procesador general configurado a traves de software para funcionar como un decodificador.
Con referencia a la FIG. 16, se muestra un decodificador 1600 que opera de la misma manera que el decodificador 1500. El decodificador 1600 incluye una memoria 1610 en comunicacion con un procesador 1620. La memoria 1610 puede utilizarse, por ejemplo, para almacenar el flujo de bits de entrada codificado, para almacenar parametros de decodificacion o codificacion, para almacenar resultados intermedios o finales durante el proceso de decodificacion o para almacenar las instrucciones para realizar un metodo de decodificacion. Un almacenamiento de este tipo puede ser temporal o permanente.
El procesador 1620 recibe un flujo de bits codificado y decodifica el tren de bits codificado en un video reconstruido. El flujo de bits codificado incluye, por ejemplo, (1) una codificacion de la primera capa de una secuencia de imagenes, (2) una codificacion de la segunda capa de la secuencia de imagenes, (3) una unidad NAL de SPS que tiene informacion que describe un parametro para uso en decodificar la codificacion de la primera capa y (4) una unidad NAL de SUP SPS que tiene una estructura diferente a la unidad NAL de SPS y que tiene informacion que describe un parametro para su uso en decodificar la codificacion de la segunda capa.
El procesador 1620 produce el video reconstruido basandose en al menos la codificacion de la primera capa, la codificacion de la segunda capa, la informacion de la unidad NAL de SPS y la informacion de la unidad NAL de SUP SPS. El video reconstruido puede ser, por ejemplo, una reconstruccion de la codificacion de la primera capa o una reconstruccion de la codificacion de la segunda capa. El procesador 1620 puede operar de acuerdo con las instrucciones almacenadas en, o residentes de otro modo en o parte de, por ejemplo, el procesador 1620 o la memoria 1610.
Con referencia a la FIG. 17, se muestra un proceso 1700 para decodificar un flujo de bits codificado. El proceso 1700 puede llevarse a cabo, por ejemplo, mediante cualquiera de los decodificadores 1500 o 1600.
El proceso 1700 incluye acceder a informacion desde una unidad NAL de SPS (1710). La informacion a la que se ha accedido describe un parametro para uso en decodificar una codificacion de la primera capa de una secuencia de imagenes.
La unidad NAL de SPS puede ser como se describe anteriormente con respecto a la FIG. 13. Ademas, la informacion a la que se ha accedido puede ser, por ejemplo, un parametro del HRD. La operacion 1710 puede llevarse a cabo, por ejemplo, por la unidad de analisis 1510, el procesador 1620, un decodificador de entropfa 204, 212, 222 o 2245, o el control del decodificador 2205. La operacion 1710 tambien se puede realizar en un proceso de reconstruccion en un codificador por uno o mas componentes de un codificador.
Por consiguiente, un medio para realizar la operacion 1710, es decir, acceder a la informacion desde una unidad NAL de SPS, puede incluir diversos componentes. Por ejemplo, tales medios pueden incluir una unidad de analisis 1510, un procesador 1620, un decodificador de una sola capa, un sistema decodificador completo de la FIG. 2, 15 o 16, o uno o mas componentes de un decodificador, o uno o mas componentes de los codificadores 800, 1100 o 1200, o sus equivalentes, incluyendo los decodificadores y codificadores conocidos y desarrollados en el futuro.
El proceso 1700 incluye acceder a la informacion desde una unidad NAL de SUP SPS que tiene una estructura diferente a la unidad NAL de SPS (1720). La informacion a la que se accede desde la unidad NAL de SUP SPS describe un parametro para su uso en decodificar una codificacion de la segunda capa de la secuencia de imagenes.
La unidad NAL de SUP SPS puede ser como se describe anteriormente con respecto a la FIG. 13. Ademas, la informacion a la que se accede puede ser, por ejemplo, un parametro del HRD. La operacion 1720 puede llevarse a cabo, por ejemplo, por la unidad de analisis 1510, el procesador 1620, un decodificador de entropfa 204, 212, 222 o 2245, o el control del decodificador 2205. La operacion 1720 tambien se puede realizar en un proceso de reconstruccion en un codificador por uno o mas componentes de un codificador.
5
10
15
20
25
30
35
40
45
50
Por consiguiente, medios para realizar la operacion 1720, es dedr, acceso a la informacion desde una unidad NAL de SUP SPS, pueden incluir diversos componentes. Por ejemplo, tales medios pueden incluir una unidad de analisis 1510, un procesador 1620, un demultiplexor 202, un decodificador de entropfa 204, 212 o 222, un descodificador de una sola capa o un sistema decodificador completo 200, 1500 o 1600, o uno o mas componentes de un decodificador, o uno o mas componentes de los codificadores 800, 1100 o 1200, o sus equivalentes, incluyendo los decodificadores y codificadores conocidos y desarrollados en el futuro.
El proceso 1700 incluye acceder a una codificacion de la primera capa y a una codificacion de la segunda capa para la secuencia de imagenes (1730). La codificacion de la primera capa puede haber sido formateado en unidades de codificacion de la primera capa, y la codificacion de la segunda capa puede haber sido formateada en unidades de codificacion de la segunda capa. La operacion 1730 puede llevarse a cabo, por ejemplo, por la unidad de analisis 1510, el decodificador 1520, el procesador 1620, un decodificador de entropfa 204, 212, 222 o 2245, o diversos otros bloques aguas abajo de los decodificadores de entropfa. La operacion 1730 tambien se puede realizar en un proceso de reconstruccion en un codificador por uno o mas componentes de un codificador.
Por consiguiente, un medio para realizar la operacion 1730 puede incluir diversos componentes. Por ejemplo, tales medios pueden incluir una unidad de analisis 1510, un descodificador 1520, un procesador 1620, un demultiplexor 202, un descodificador de entropfa 204, 212 o 222, un decodificador de una sola capa, un receptor de flujo de bits, un dispositivo de recepcion o el sistema de decodificador completo 200, 1500 o 1600, o uno o mas componentes de un decodificador, o uno o mas componentes de los codificadores 800, 1100 o 1200, o sus equivalentes, incluyendo los decodificadores y codificadores conocidos y desarrollados en el futuro.
El proceso 1700 incluye generar una decodificacion de la secuencia de imagenes (1740). La decodificacion de la secuencia de imagenes puede basarse en la codificacion de la primera capa, la codificacion de la segunda capa, la informacion a la que se accede desde la unidad NAL de SPS y la informacion a la que se accede desde la unidad NAL de SUP SPS. La operacion 1740 puede llevarse a cabo, por ejemplo, por el decodificador 1520, el procesador 1620 o diversos bloques aguas abajo del demultiplexor 202 y el bufer de entrada 2210. La operacion 1740 tambien puede ser realizada en un proceso de reconstruccion en un codificador por uno o mas componentes de un codificador.
Por consiguiente, medios para realizar la operacion 1740 pueden incluir varios componentes. Por ejemplo, tales medios pueden incluir un decodificador 1530, un procesador 1620, un decodificador de una sola capa, un sistema decodificador completo 200, 1500 o 1600, o uno o mas componentes de un decodificador, un codificador que realiza una reconstruccion, o uno o mas componentes del codificador 800, 1100 o 1200, o sus equivalentes, incluyendo decodificadores o codificadores conocidos y desarrollados en el futuro.
Otra implementacion realiza un metodo de codificacion que incluye acceder a la informacion que depende de la primera capa en un primer conjunto de parametros normativos. La informacion que depende de la primera capa a la que se ha accedido es para uso en decodificar una codificacion de la primera capa de una secuencia de imagenes. El primer conjunto de parametros normativo puede ser, por ejemplo, un SPS que incluye parametros relacionados con el HRD u otra informacion que depende de la capa. Sin embargo, el primer conjunto de parametros normativos no necesita ser un SPS y no necesita estar relacionado con un estandar H.264.
Ademas del primer conjunto de parametros que son normativos, lo que requiere un decodificador para operar de acuerdo con el primer juego de parametros si se recibe un conjunto de parametros de este tipo, el primer conjunto de parametros tambien puede ser necesario para ser recibido en una implementacion. Es decir, una implementacion puede requerir, ademas, que se proporcione el primer conjunto de parametros a un decodificador.
El metodo de codificacion de esta implementacion incluye, ademas, acceder a la informacion que depende de la segunda capa en un segundo conjunto de parametros normativos. El segundo conjunto de parametros normativos tiene una estructura diferente que el primer conjunto de parametros normativos. Ademas, la informacion que depende de la segunda capa a la que se accede es para uso en decodificar una codificacion de la segunda capa de la secuencia de imagenes. El segundo conjunto de parametros normativos puede ser, por ejemplo, un SPS complementario. El SPS complementario tiene una estructura que es diferente, por ejemplo, de un SPS. El SPS complementario tambien incluye parametros del HRD u otra informacion que depende de la capa para una segunda capa (diferente de la primera capa).
El metodo de codificacion de esta implementacion incluye, ademas, decodificar la secuencia de imagenes en base a una o mas de la informacion que depende de la primera capa a la que se ha accedido o la informacion que depende
5
10
15
20
25
30
35
40
45
50
de la segunda capa a la que se ha accedido. Esto puede incluir, por ejemplo, decodificar una capa base o una capa de mejora.
Aparatos correspondientes se proporcionan tambien en otras implementaciones, para implementar el metodo de codificacion de esta implementacion. Tales aparatos incluyen, por ejemplo, codificadores programados, procesadores programados, implementaciones de hardware o medios legibles por ordenador que tienen instrucciones para realizar el metodo de codificacion. Los sistemas 1100 y 1200, por ejemplo, pueden poner en practica el metodo de codificacion de esta implementacion.
Tambien se proporcionan senales correspondientes y medios de almacenamiento de dichas senales o los datos de tales senales. Dichas senales se producen, por ejemplo, por un codificador que realiza el metodo de codificacion de esta implementacion.
Otra implementacion realiza un metodo de decodificacion analogo al metodo de codificacion anterior. El metodo de decodificacion incluye generar un primer conjunto de parametros normativos que incluye informacion que depende de la primera capa. La informacion que depende de la primera capa es para uso en la decodificacion de una codificacion de la primera capa de una secuencia de imagenes. El metodo de decodificacion tambien incluye generar un segundo conjunto de parametros normativos que tienen una estructura diferente a la del primer conjunto de parametros normativos. El segundo conjunto de parametros normativos incluye informacion que depende de la segunda capa para su uso en decodificar una codificacion de la segunda capa de la secuencia de imagenes. El metodo de decodificacion incluye, ademas, proporcionar un conjunto de datos, incluyendo el primer conjunto de parametros normativos y el segundo conjunto de parametros normativos.
Se proporcionan tambien en otras implementaciones aparatos correspondientes para implementar el metodo de decodificacion anterior de esta implementacion. Tales aparatos incluyen, por ejemplo, decodificadores programados, procesadores programados, implementaciones de hardware, o medios legibles por ordenador que tienen instrucciones para realizar el metodo de decodificacion. Los sistemas 1500 y 1600, por ejemplo, pueden poner en practica el metodo de decodificacion de esta implementacion.
Observese que el termino "complementario", tal como se utiliza arriba, por ejemplo, al referirse a "SPS complementario" es un termino descriptivo. Como tal, "SPS complementario" no excluye unidades que no incluyen el termino "complementario" en el nombre de la unidad. Por consiguiente, y a modo de ejemplo, un proyecto actual de la extension de SVC define una estructura de sintaxis "SPS subconjunto", y la estructura de sintaxis "SPS subconjunto" esta totalmente contenida en el termino descriptivo "complementario". De modo que el "SPS subconjunto" de la actual extension de SVC es una implementacion de un SUP SPS como se describe en esta divulgacion.
Implementaciones pueden utilizar otros tipos de mensajes ademas, o como un reemplazo de las unidades NAL de SPS y/o las unidades NAL de SUP SPS. Por ejemplo, al menos un implementacion genera, transmite, recibe, accede a y analiza otros conjuntos de parametros que tienen informacion que depende de la capa.
Ademas, aunque SPS y SPS complementario se han comentado en gran medida en el contexto de las normas H.264, otras normas pueden incluir tambien SPS, SPS complementario o variaciones de SPS o SPS complementario. Por consiguiente, otras normas (existentes o desarrolladas en el futuro) pueden incluir estructuras a las que se alude como SPS o SPS complementaria, y tales estructuras pueden ser identicos a o ser variantes del SPS y SPS complementario descritos en este documento. Tales otras normas pueden, por ejemplo, estar relacionadas con las normas H.264 actuales (por ejemplo, una enmienda a una norma H.264 existente), o ser normas completamente nuevas. Alternativamente, otras normas (existentes o desarrolladas en el futuro) pueden incluir estructuras a las que no se hace referencia como SPS o SPS complementario, pero tales estructuras puede ser identicas a, analogas a o variaciones del SPS o SPS complementario descrito en este documento.
Observese que un conjunto de parametros es un conjunto de parametros que incluyen datos. Por ejemplo, un SPS, un PPS o un SPS complementario.
En diversas implementaciones, se dice que “se ha accedido” a los datos. Datos a los que se accede pueden incluir, por ejemplo, recibir, almacenar, transmitir o procesar datos.
Se proporcionan y describen diversas implementaciones. Estas implementaciones se pueden utilizar para resolver una diversidad de problemas. Uno de estos problemas surge cuando multiples puntos de interoperabilidad (lOPs) (a los que tambien se alude como capas) necesitan diferentes valores para los parametros que son portados
5
10
15
20
25
30
35
40
45
50
55
tipicamente en el SPS. No existe metodo adecuado alguno para transmitir los elementos de sintaxis que dependen de la capa en el SPS para diferentes capas que tienen el mismo identificador de SPS. Es problematico enviar datos de SPS separados para cada una de tales capas. Por ejemplo, en muchos sistemas existentes una capa base y sus capas temporales compuestas comparten el mismo identificador de SPS.
Varias implementaciones proporcionan un tipo de unidad de NAL diferente para los datos de SPS complementarios. Por lo tanto, pueden enviarse multiples unidades de NAL, y cada una de las unidades de NAL puede incluir informacion del SPS complementario para una capa de SVC diferente, pero cada una de las unidades de NAL puede ser identificada por el mismo tipo de unidad de NAL. La informacion del SPS complementario puede, en una implementacion, ser proporciona en el tipo de unidad de NAL “SPS subconjunto" de la actual extension de SVC.
Debe quedar claro que las implementaciones descritas en esta divulgacion no se limitan a la extension de SVC o a cualquier otra norma. Los conceptos y caractensticas de las implementaciones descritas pueden ser utilizados con otras normas que existen ahora o que se desarrollen en el futuro, o pueden ser utilizados en sistemas que no se ajustan a ninguna norma. Como un ejemplo, los conceptos y caractensticas descritos en este documento se pueden utilizar para las implementaciones que funcionan en el entorno de la extension de MVC. Por ejemplo, vistas de MVC pueden necesitar diferente informacion de SPS, o capas de SVC soportadas dentro de la extension de MVC pueden necesitar diferente informacion de SPS. Adicionalmente, caractensticas y aspectos de las implementaciones descritas tambien se pueden adaptar para aun otras implementaciones. Por consiguiente, aunque las implementaciones descritas en este documento pueden describirse en el contexto de SPS para las capas de SVC, tales descripciones no deben en ningun caso considerarse como una limitacion de las caractensticas y los conceptos para tales implementaciones o contextos.
Las implementaciones descritas en este documento pueden implementarse, por ejemplo, en un metodo o proceso, un aparato o un programa de software. Incluso si solo se comenta en el contexto de una sola forma de implementacion (por ejemplo, comentarse solo como un metodo), la implementacion de caractensticas que se comentan tambien puede implementarse en otras formas (por ejemplo, un aparato o programa). Un aparato puede implementarse, por ejemplo, en el hardware, software y firmware adecuado. Los metodos pueden implementarse, por ejemplo, en un aparato tal como, por ejemplo, un procesador, que se refiere a dispositivos de procesamiento en general, incluyendo, por ejemplo, un ordenador, un microprocesador, un circuito integrado o un dispositivo logico programable. Los procesadores tambien incluyen dispositivos de comunicacion tales como, por ejemplo, ordenadores, telefonos moviles, asistentes digitales portatiles/personales ("PDAs"), y otros dispositivos que facilitan la comunicacion de informacion entre usuarios finales.
Implementaciones de los diversos procesos y funciones que se describen en este documento pueden realizarse en una diversidad de diferentes equipos o aplicaciones, en particular, por ejemplo, equipos o aplicaciones asociados con la codificacion y decodificacion de datos. Ejemplos de equipos incluyen codificadores de video, decodificadores de video, codecs de video, servidores web, receptores de television, ordenadores portatiles, ordenadores personales, telefonos moviles, PDAs y otros dispositivos de comunicacion. Como debe quedar claro, el equipo puede ser movil e incluso instalado en un vetnculo movil.
Adicionalmente, los metodos pueden ser implementados por instrucciones que se llevan a cabo por un procesador, y tales instrucciones pueden ser almacenadas en un medio legible por procesador tal como, por ejemplo, un circuito integrado, un soporte de software u otro dispositivo de almacenamiento tal como, por ejemplo, un disco duro, un disquete compacto, una memoria de acceso aleatorio ("RAM") o una memoria de solo lectura ("ROM"). Las instrucciones pueden formar un programa de aplicacion tangiblemente incorporado en un medio legible por procesador. Las instrucciones pueden estar, por ejemplo, en hardware, firmware, software o una combinacion. Las instrucciones pueden encontrarse, por ejemplo, en un sistema operativo, una aplicacion separada, o una combinacion de los dos. Un procesador puede ser caracterizado, por lo tanto, como, por ejemplo, tanto un dispositivo configurado para llevar a cabo un proceso como un dispositivo que incluye un medio legible por ordenador que tiene instrucciones para llevar a cabo un proceso.
Como resultara evidente para un experto en la tecnica, las implementaciones pueden producir una diversidad de senales formateadas para portar informacion que puede ser, por ejemplo, almacenada o transmitida. La informacion puede incluir, por ejemplo, instrucciones para realizar un metodo, o datos producidos por una de las implementaciones descritas. Por ejemplo, una senal puede ser formateada para portar como datos las reglas para escribir o leer la sintaxis de un modo de realizacion descrito, o para portar en forma de datos los valores de sintaxis reales escritos por un modo de realizacion descrito. Una senal de este tipo puede ser formateada, por ejemplo, como una onda electromagnetica (por ejemplo, utilizando una parte de radiofrecuencia del espectro) o como una senal de banda base. El formateado puede incluir, por ejemplo, codificar una secuencia de datos y modular un portador con el flujo de datos codificado. La informacion que porta la senal puede ser, por ejemplo, informacion analogica o digital.
21
La senal puede ser transmitida a traves de una diversidad de diferentes enlaces cableados o inalambricos, como es conocido.
Se ha descrito un cierto numero de implementaciones. Sin embargo, se entendera que se pueden hacer diversas modificaciones. Por ejemplo, elementos de diferentes implementaciones se pueden combinar, complementar, 5 modificar o eliminar para producir otras implementaciones. Adicionalmente, un experto ordinario en la tecnica comprendera que otras estructuras y procesos se pueden sustituir por los descritos y que las implementaciones resultantes realizaran, al menos sustancialmente la o las mismas funciones, sustancialmente de la o las mismas maneras para lograr al menos sustancialmente el o los mismos resultados que las implementaciones descritas. Por consiguiente, estas y otras implementaciones se contemplan por esta solicitud y estan dentro del alcance de las 10 siguientes reivindicaciones.
Claims (4)
- 510152025303540REIVINDICACIONES1. Un metodo de decodificacion, que comprende:acceder (1710) a informacion desde un primer conjunto de parametros contenido en una primera unidad de capa de abstraccion de la red, siendo el primer conjunto de parametros una estructura de sintaxis que contiene elementos de sintaxis que se aplican a secuencias de video codificadas a cero o mas enteros, y describiendo la informacion un parametro para uso en decodificar multiples capas de las secuencias de video;acceder (1720) a informacion complementaria contenida en una segunda unidad de capa de abstraccion de la red, teniendo la segunda unidad de NAL un codigo de tipo unidad de NAL espedfico y correspondiendo a una capa de dichas capas multiples, y describiendo la informacion complementaria (i) un identificador del primer conjunto de parametros para indicar que la segunda unidad de NAL se utiliza para complementar la primera unidad de NAL, (ii) un parametro de informacion de usabilidad de video (“VUI”) que tiene informacion que depende de la capa, para uso en decodificar dicha una capa de dichas capas multiples; ydecodificar (1740) dicha una capa de dichas capas multiples en base a la informacion a la que se ha accedido a partir desde la primera unidad de NAL y a la informacion complementaria a la que se ha accedido desde la segunda unidad de NAL.
- 2. Un metodo, que comprende:generar un primer conjunto de parametros contenido en una primera unidad de capa de abstraccion de red, siendo el primer conjunto de parametros una estructura de sintaxis que contiene elementos de sintaxis que se aplican a secuencias de video codificadas a cero o mas enteros, y describiendo la informacion un parametro para uso en decodificar multiples capas de las secuencias de video; ygenerar una segunda unidad de NAL que tiene un codigo de tipo unidad de NAL espedfico, correspondiendo la segunda unidad de NAL a una capa de dichas capas multiples e incluyendo la segunda unidad de NAL informacion complementaria, indicando la informacion complementaria de la segunda unidad de NAL (i) un identificador del primer conjunto de parametros para indicar que la segunda unidad de NAL se utiliza para complementar la primera unidad de NAL, (ii) un parametro de informacion de usabilidad de video (“VUI”) que tiene informacion que depende de la capa, para uso en decodificar dicha una capa de dichas capas multiples.
- 3. El metodo de la reivindicacion 2, que comprende, ademas:codificar datos para generar dicha una capa de dichas capas multiples en base a la informacion generada para la primera unidad de NAL y la informacion complementaria generada para la segunda unidad de NAL.
- 4. Una senal que tiene parametros decodificadores, estando la senal formateada para comprender:informacion desde un primer conjunto de parametros contenido en una primera unidad de capa de abstraccion de la red, siendo el primer conjunto de parametros una estructura de sintaxis que contiene elementos de sintaxis que se aplican a secuencias de video codificadas a cero o mas enteros, y describiendo la informacion un parametro para uso en decodificar multiples capas de las secuencias de video;informacion complementaria desde una segunda unidad de NAL que tiene un codigo de tipo unidad de NAL espedfico, correspondiendo la segunda unidad de NAL a una capa de dichas capas multiples, e indicando la informacion complementaria de la segunda unidad de NAL (i) un identificador del primer conjunto de parametros para indicar que la segunda unidad de NAL se utiliza para complementar la primera unidad de NAL, (ii) un parametro de informacion de usabilidad de video (“VUI”) que tiene informacion que depende de la capa, para uso en decodificar dicha una capa de dichas capas multiples; y datos que representan dicha una capa de dichas capas multiples.
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US92399307P | 2007-04-18 | 2007-04-18 | |
| US923993P | 2007-04-18 | ||
| US11/824,006 US20090003431A1 (en) | 2007-06-28 | 2007-06-28 | Method for encoding video data in a scalable manner |
| US824006 | 2007-06-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2633148T3 true ES2633148T3 (es) | 2017-09-19 |
Family
ID=39790128
Family Applications (4)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES21214034T Active ES2988482T3 (es) | 2007-04-18 | 2008-04-07 | Sistemas de codificación |
| ES20162659T Active ES2905052T3 (es) | 2007-04-18 | 2008-04-07 | Sistemas de codificación |
| ES08742644T Active ES2388799T3 (es) | 2007-04-18 | 2008-04-07 | Sistemas de codificación |
| ES12165846.2T Active ES2633148T3 (es) | 2007-04-18 | 2008-04-07 | Método de codificación que utiliza una secuencia de parámetros suplementarios ajustados para la codificación o codificación multivista de video escalable |
Family Applications Before (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES21214034T Active ES2988482T3 (es) | 2007-04-18 | 2008-04-07 | Sistemas de codificación |
| ES20162659T Active ES2905052T3 (es) | 2007-04-18 | 2008-04-07 | Sistemas de codificación |
| ES08742644T Active ES2388799T3 (es) | 2007-04-18 | 2008-04-07 | Sistemas de codificación |
Country Status (19)
| Country | Link |
|---|---|
| US (1) | US8619871B2 (es) |
| EP (11) | EP2147555B1 (es) |
| JP (9) | JP5026584B2 (es) |
| KR (8) | KR101547008B1 (es) |
| CN (5) | CN102685557B (es) |
| BR (8) | BRPI0810366B1 (es) |
| CY (1) | CY1123148T1 (es) |
| DK (1) | DK3264780T3 (es) |
| ES (4) | ES2988482T3 (es) |
| HR (1) | HRP20201105T1 (es) |
| HU (1) | HUE050251T2 (es) |
| LT (1) | LT3264780T (es) |
| MX (5) | MX348825B (es) |
| PL (3) | PL4054201T3 (es) |
| PT (1) | PT2147555E (es) |
| RU (1) | RU2501179C2 (es) |
| SI (1) | SI3264780T1 (es) |
| TW (9) | TWI599228B (es) |
| WO (1) | WO2008130500A2 (es) |
Families Citing this family (50)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8289370B2 (en) | 2005-07-20 | 2012-10-16 | Vidyo, Inc. | System and method for scalable and low-delay videoconferencing using scalable video coding |
| US20140072058A1 (en) | 2010-03-05 | 2014-03-13 | Thomson Licensing | Coding systems |
| EP2198619A2 (en) * | 2007-10-05 | 2010-06-23 | Thomson Licensing | Methods and apparatus for incorporating video usability information (vui) within a multi-view video (mvc) coding system |
| KR101242472B1 (ko) * | 2008-07-16 | 2013-03-12 | 노키아 코포레이션 | 트랙 및 트랙 서브세트의 그룹화를 위한 방법 및 장치 |
| CN102420986B (zh) * | 2009-01-19 | 2014-01-29 | 松下电器产业株式会社 | 编码方法、解码方法、编码装置、解码装置、程序及集成电路 |
| JP4962525B2 (ja) * | 2009-04-08 | 2012-06-27 | ソニー株式会社 | 再生装置、再生方法、およびプログラム |
| RU2534936C2 (ru) * | 2009-04-09 | 2014-12-10 | Телефонактиеболагет Лм Эрикссон (Пабл) | Управление мультимедийными контейнерными файлами |
| KR20110132380A (ko) * | 2009-04-28 | 2011-12-07 | 파나소닉 주식회사 | 화상 복호 방법 및 화상 복호 장치 |
| EP2355510A1 (en) * | 2009-12-21 | 2011-08-10 | Alcatel Lucent | Method and arrangement for video coding |
| JP5738434B2 (ja) * | 2011-01-14 | 2015-06-24 | ヴィディオ・インコーポレーテッド | 改善されたnalユニットヘッダ |
| WO2012105265A1 (en) * | 2011-02-03 | 2012-08-09 | Panasonic Corporation | Systems and methods for encoding and decoding video which support compatibility functionality to legacy video players |
| WO2012122246A1 (en) | 2011-03-10 | 2012-09-13 | Vidyo, Inc. | Dependency parameter set for scalable video coding |
| US10944994B2 (en) * | 2011-06-30 | 2021-03-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Indicating bit stream subsets |
| KR20130058584A (ko) * | 2011-11-25 | 2013-06-04 | 삼성전자주식회사 | 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치 |
| US9451252B2 (en) | 2012-01-14 | 2016-09-20 | Qualcomm Incorporated | Coding parameter sets and NAL unit headers for video coding |
| US10097841B2 (en) | 2012-05-04 | 2018-10-09 | Lg Electronics Inc. | Method for storing image data, method for parsing image data, and an apparatus for using the same |
| US9313486B2 (en) | 2012-06-20 | 2016-04-12 | Vidyo, Inc. | Hybrid video coding techniques |
| US20140003534A1 (en) * | 2012-07-02 | 2014-01-02 | Sony Corporation | Video coding system with temporal scalability and method of operation thereof |
| WO2014006266A1 (en) * | 2012-07-02 | 2014-01-09 | Nokia Corporation | Method and apparatus for video coding |
| US10110890B2 (en) * | 2012-07-02 | 2018-10-23 | Sony Corporation | Video coding system with low delay and method of operation thereof |
| US9912941B2 (en) * | 2012-07-02 | 2018-03-06 | Sony Corporation | Video coding system with temporal layers and method of operation thereof |
| US20140079116A1 (en) * | 2012-09-20 | 2014-03-20 | Qualcomm Incorporated | Indication of interlaced video data for video coding |
| US9426462B2 (en) | 2012-09-21 | 2016-08-23 | Qualcomm Incorporated | Indication and activation of parameter sets for video coding |
| US9241158B2 (en) | 2012-09-24 | 2016-01-19 | Qualcomm Incorporated | Hypothetical reference decoder parameters in video coding |
| US9432664B2 (en) | 2012-09-28 | 2016-08-30 | Qualcomm Incorporated | Signaling layer identifiers for operation points in video coding |
| US9319703B2 (en) * | 2012-10-08 | 2016-04-19 | Qualcomm Incorporated | Hypothetical reference decoder parameter syntax structure |
| EP2930936A4 (en) | 2012-12-10 | 2016-11-02 | Lg Electronics Inc | IMAGE DECODING METHOD AND APPARATUS USING THE SAME |
| EP2941003B1 (en) * | 2012-12-26 | 2021-07-14 | Sony Corporation | Image processing device and method |
| KR102807030B1 (ko) | 2013-01-04 | 2025-05-14 | 지이 비디오 컴프레션, 엘엘씨 | 효율적인 확장가능한 코딩 개념 |
| US9325992B2 (en) | 2013-01-07 | 2016-04-26 | Qualcomm Incorporated | Signaling of clock tick derivation information for video timing in video coding |
| KR20140095442A (ko) | 2013-01-23 | 2014-08-01 | 삼성전자주식회사 | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
| US20140269934A1 (en) * | 2013-03-15 | 2014-09-18 | Sony Corporation | Video coding system with multiple scalability and method of operation thereof |
| US9485508B2 (en) | 2013-04-08 | 2016-11-01 | Qualcomm Incorporated | Non-entropy encoded set of profile, tier, and level syntax structures |
| KR102127281B1 (ko) | 2013-04-08 | 2020-06-26 | 지이 비디오 컴프레션, 엘엘씨 | 효율적인 다-시점/계층 코딩을 허용하는 코딩 개념 |
| US10003815B2 (en) * | 2013-06-03 | 2018-06-19 | Qualcomm Incorporated | Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures |
| US9648335B2 (en) * | 2013-07-12 | 2017-05-09 | Qualcomm Incorporated | Bitstream restrictions on picture partitions across layers |
| US20150103878A1 (en) * | 2013-10-14 | 2015-04-16 | Qualcomm Incorporated | Device and method for scalable coding of video information |
| WO2015099506A1 (ko) * | 2013-12-26 | 2015-07-02 | 삼성전자 주식회사 | 서브블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치 |
| EP3090550A1 (en) * | 2014-01-02 | 2016-11-09 | VID SCALE, Inc. | Sub-bitstream extraction process for hevc extensions |
| WO2015102441A1 (ko) * | 2014-01-03 | 2015-07-09 | 삼성전자 주식회사 | 효율적인 파라미터 전달을 사용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
| WO2015104451A1 (en) * | 2014-01-07 | 2015-07-16 | Nokia Technologies Oy | Method and apparatus for video coding and decoding |
| US10390087B2 (en) | 2014-05-01 | 2019-08-20 | Qualcomm Incorporated | Hypothetical reference decoder parameters for partitioning schemes in video coding |
| US9813719B2 (en) * | 2014-06-18 | 2017-11-07 | Qualcomm Incorporated | Signaling HRD parameters for bitstream partitions |
| US10264286B2 (en) * | 2014-06-26 | 2019-04-16 | Qualcomm Incorporated | Bitstream conformance constraints in scalable video coding |
| KR102366503B1 (ko) * | 2014-08-07 | 2022-02-23 | 소니그룹주식회사 | 송신 장치, 송신 방법 및 수신 장치 |
| CN108933768B (zh) * | 2017-05-27 | 2021-06-08 | 成都鼎桥通信技术有限公司 | 视频帧的发送帧率的获取方法和装置 |
| JP7179163B2 (ja) * | 2018-09-13 | 2022-11-28 | フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | ビットストリームマージ |
| BR112021017841A2 (pt) * | 2019-03-11 | 2021-11-30 | Fraunhofer Ges Forschung | Codificador e decodificador, método de codificação e decodificação, sinal de vídeo e sistema |
| US20210195179A1 (en) * | 2019-12-23 | 2021-06-24 | Qualcomm Incorporated | Picture header signaling for video coding |
| FR3112661B1 (fr) * | 2020-07-17 | 2024-02-02 | Fond B Com | Procédés de décodage d’un flux de données, dispositifs et flux de données associés |
Family Cites Families (42)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA2092495C (en) * | 1992-03-26 | 1998-07-28 | Mitsuaki Oshima | Communication system |
| KR960036641A (ko) * | 1995-03-21 | 1996-10-28 | 김광호 | 저속의 비디오비트열을 복호하는 고속용 복호화장치 |
| RU2201654C2 (ru) | 1997-12-23 | 2003-03-27 | Томсон Лайсенсинг С.А. | Способ низкошумового кодирования и декодирования |
| EP1040666B1 (en) | 1997-12-23 | 2003-02-12 | Thomson Licensing S.A. | Low noise encoding and decoding method |
| JP2002512368A (ja) | 1998-04-23 | 2002-04-23 | カロ バイオ ユー エス エイ,インコーポレイテッド | 受容体の生物活性を調節するための化合物の能力を予測する方法 |
| KR100354745B1 (ko) * | 1998-11-02 | 2002-12-18 | 삼성전자 주식회사 | 비디오코딩및디코딩방법 |
| US6501797B1 (en) * | 1999-07-06 | 2002-12-31 | Koninklijke Phillips Electronics N.V. | System and method for improved fine granular scalable video using base layer coding information |
| KR20040106414A (ko) | 2002-04-29 | 2004-12-17 | 소니 일렉트로닉스 인코포레이티드 | 미디어 파일에서 진보된 코딩 포맷의 지원 |
| US20040006575A1 (en) | 2002-04-29 | 2004-01-08 | Visharam Mohammed Zubair | Method and apparatus for supporting advanced coding formats in media files |
| US7724818B2 (en) * | 2003-04-30 | 2010-05-25 | Nokia Corporation | Method for coding sequences of pictures |
| WO2005071970A1 (en) * | 2004-01-16 | 2005-08-04 | General Instrument Corporation | Method and apparatus for determining timing information from a bit stream |
| JP4249223B2 (ja) | 2004-04-16 | 2009-04-02 | パナソニック株式会社 | 再生装置、及び記録方法 |
| US20050254575A1 (en) * | 2004-05-12 | 2005-11-17 | Nokia Corporation | Multiple interoperability points for scalable media coding and transmission |
| KR20050113501A (ko) * | 2004-05-29 | 2005-12-02 | 삼성전자주식회사 | 에이치 264 비디오 디코더를 위한 구문 분석기 |
| US9560367B2 (en) | 2004-09-03 | 2017-01-31 | Nokia Technologies Oy | Parameter set and picture header in video coding |
| DE102004059978B4 (de) * | 2004-10-15 | 2006-09-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Erzeugen einer codierten Videosequenz und zum Decodieren einer codierten Videosequenz unter Verwendung einer Zwischen-Schicht-Restwerte-Prädiktion sowie ein Computerprogramm und ein computerlesbares Medium |
| US20060146734A1 (en) | 2005-01-04 | 2006-07-06 | Nokia Corporation | Method and system for low-delay video mixing |
| US8050328B2 (en) * | 2005-01-17 | 2011-11-01 | Panasonic Corporation | Image decoding method |
| JP2006260611A (ja) | 2005-03-15 | 2006-09-28 | Toshiba Corp | 情報記憶媒体、情報再生装置、情報再生方法、及びネットワーク通信システム |
| KR100732961B1 (ko) * | 2005-04-01 | 2007-06-27 | 경희대학교 산학협력단 | 다시점 영상의 스케일러블 부호화, 복호화 방법 및 장치 |
| US20060233247A1 (en) * | 2005-04-13 | 2006-10-19 | Visharam Mohammed Z | Storing SVC streams in the AVC file format |
| KR100931870B1 (ko) | 2005-04-13 | 2009-12-15 | 노키아 코포레이션 | 비디오 데이터를 효과적으로 코딩 및 디코딩하는 방법,장치 및 시스템 |
| EP1869891A4 (en) * | 2005-04-13 | 2014-06-11 | CODING, STORAGE AND SIGNALING OF SCALABILITY INFORMATION | |
| TWI297471B (en) | 2005-05-20 | 2008-06-01 | Novatek Microelectronics Corp | Method for video content complexity estimation, scene change detection and video encoding |
| KR20060122663A (ko) * | 2005-05-26 | 2006-11-30 | 엘지전자 주식회사 | 영상신호의 엔코딩 및 디코딩에서의 픽처 정보를 전송하고이를 이용하는 방법 |
| EP1773063A1 (en) * | 2005-06-14 | 2007-04-11 | Thomson Licensing | Method and apparatus for encoding video data, and method and apparatus for decoding video data |
| FR2888424A1 (fr) * | 2005-07-07 | 2007-01-12 | Thomson Licensing Sas | Dispositif et procede de codage et de decodage de donnees video et train de donnees |
| US7974517B2 (en) | 2005-10-05 | 2011-07-05 | Broadcom Corporation | Determination of decoding information |
| US20100158133A1 (en) | 2005-10-12 | 2010-06-24 | Peng Yin | Method and Apparatus for Using High-Level Syntax in Scalable Video Encoding and Decoding |
| KR100772868B1 (ko) | 2005-11-29 | 2007-11-02 | 삼성전자주식회사 | 복수 계층을 기반으로 하는 스케일러블 비디오 코딩 방법및 장치 |
| US8937997B2 (en) * | 2006-03-16 | 2015-01-20 | Apple Inc. | Scalable video coding/multiplexing compatible with non-scalable decoders |
| WO2007112384A2 (en) | 2006-03-27 | 2007-10-04 | Vidyo, Inc. | System and method for management of scalability information in scalable video and audio coding systems using control messages |
| US8320450B2 (en) * | 2006-03-29 | 2012-11-27 | Vidyo, Inc. | System and method for transcoding between scalable and non-scalable video codecs |
| US20070230564A1 (en) * | 2006-03-29 | 2007-10-04 | Qualcomm Incorporated | Video processing with scalability |
| US8422548B2 (en) * | 2006-07-10 | 2013-04-16 | Sharp Laboratories Of America, Inc. | Methods and systems for transform selection and management |
| US20080095228A1 (en) | 2006-10-20 | 2008-04-24 | Nokia Corporation | System and method for providing picture output indications in video coding |
| WO2008060125A1 (en) | 2006-11-17 | 2008-05-22 | Lg Electronics Inc. | Method and apparatus for decoding/encoding a video signal |
| JP5475464B2 (ja) * | 2007-01-17 | 2014-04-16 | エルジー エレクトロニクス インコーポレイティド | ビデオ信号処理方法及び装置 |
| KR101132386B1 (ko) | 2007-04-13 | 2012-07-16 | 노키아 코포레이션 | 비디오 코더 |
| US20090003431A1 (en) | 2007-06-28 | 2009-01-01 | Lihua Zhu | Method for encoding video data in a scalable manner |
| US20100142613A1 (en) | 2007-04-18 | 2010-06-10 | Lihua Zhu | Method for encoding video data in a scalable manner |
| US20080317124A1 (en) * | 2007-06-25 | 2008-12-25 | Sukhee Cho | Multi-view video coding system, decoding system, bitstream extraction system for decoding base view and supporting view random access |
-
2008
- 2008-04-07 LT LTEP17166196.0T patent/LT3264780T/lt unknown
- 2008-04-07 KR KR1020127015615A patent/KR101547008B1/ko active Active
- 2008-04-07 MX MX2016003028A patent/MX348825B/es unknown
- 2008-04-07 KR KR1020127015620A patent/KR20120079177A/ko not_active Ceased
- 2008-04-07 KR KR1020177024865A patent/KR101813848B1/ko active Active
- 2008-04-07 MX MX2009011217A patent/MX2009011217A/es active IP Right Grant
- 2008-04-07 KR KR1020097021908A patent/KR101393169B1/ko active Active
- 2008-04-07 BR BRPI0810366-6A patent/BRPI0810366B1/pt active IP Right Grant
- 2008-04-07 BR BRBR122012013077-0A patent/BR122012013077A2/pt not_active Application Discontinuation
- 2008-04-07 PL PL21214034.7T patent/PL4054201T3/pl unknown
- 2008-04-07 BR BRBR122012013072-9A patent/BR122012013072A2/pt not_active Application Discontinuation
- 2008-04-07 DK DK17166196.0T patent/DK3264780T3/da active
- 2008-04-07 MX MX2017008468A patent/MX384958B/es unknown
- 2008-04-07 US US12/450,868 patent/US8619871B2/en active Active
- 2008-04-07 EP EP08742644A patent/EP2147555B1/en active Active
- 2008-04-07 PL PL12165855T patent/PL2528341T3/pl unknown
- 2008-04-07 ES ES21214034T patent/ES2988482T3/es active Active
- 2008-04-07 RU RU2009142429/07A patent/RU2501179C2/ru active
- 2008-04-07 BR BR122012013078-8A patent/BR122012013078B1/pt active IP Right Grant
- 2008-04-07 KR KR1020157012588A patent/KR101663917B1/ko active Active
- 2008-04-07 EP EP20162659.5A patent/EP3700221B1/en active Active
- 2008-04-07 ES ES20162659T patent/ES2905052T3/es active Active
- 2008-04-07 EP EP12165850.4A patent/EP2533545B1/en active Active
- 2008-04-07 SI SI200832128T patent/SI3264780T1/sl unknown
- 2008-04-07 KR KR1020127015618A patent/KR101429372B1/ko active Active
- 2008-04-07 KR KR1020157012589A patent/KR101663438B1/ko active Active
- 2008-04-07 BR BR122012013059-1A patent/BR122012013059B1/pt active IP Right Grant
- 2008-04-07 CN CN201210147558.3A patent/CN102685557B/zh active Active
- 2008-04-07 HU HUE17166196A patent/HUE050251T2/hu unknown
- 2008-04-07 PT PT87426441T patent/PT2147555E/pt unknown
- 2008-04-07 EP EP12165867A patent/EP2528344A1/en not_active Withdrawn
- 2008-04-07 CN CN201210147680.0A patent/CN102724556B/zh active Active
- 2008-04-07 KR KR1020167026975A patent/KR101777706B1/ko active Active
- 2008-04-07 EP EP21214034.7A patent/EP4054201B1/en active Active
- 2008-04-07 EP EP12165870A patent/EP2528345A1/en not_active Withdrawn
- 2008-04-07 CN CN201310119596.2A patent/CN103281563B/zh active Active
- 2008-04-07 ES ES08742644T patent/ES2388799T3/es active Active
- 2008-04-07 BR BRBR122012013066-4A patent/BR122012013066A2/pt not_active Application Discontinuation
- 2008-04-07 BR BRBR122012013614-0A patent/BR122012013614A2/pt not_active Application Discontinuation
- 2008-04-07 BR BRBR122012013058-3A patent/BR122012013058A2/pt not_active Application Discontinuation
- 2008-04-07 EP EP17166196.0A patent/EP3264780B1/en active Active
- 2008-04-07 PL PL08742644T patent/PL2147555T3/pl unknown
- 2008-04-07 EP EP12165855.3A patent/EP2528341B1/en active Active
- 2008-04-07 CN CN201210146875.3A patent/CN102685556B/zh active Active
- 2008-04-07 WO PCT/US2008/004530 patent/WO2008130500A2/en not_active Ceased
- 2008-04-07 CN CN201310119443.8A patent/CN103338367B/zh active Active
- 2008-04-07 EP EP12165846.2A patent/EP2528340B1/en active Active
- 2008-04-07 EP EP12165861A patent/EP2528343A1/en not_active Withdrawn
- 2008-04-07 JP JP2010504051A patent/JP5026584B2/ja active Active
- 2008-04-07 EP EP12165858A patent/EP2528342A1/en not_active Withdrawn
- 2008-04-07 ES ES12165846.2T patent/ES2633148T3/es active Active
- 2008-04-15 TW TW104143689A patent/TWI599228B/zh active
- 2008-04-15 TW TW101127898A patent/TWI488492B/zh active
- 2008-04-15 TW TW101127896A patent/TWI415450B/zh active
- 2008-04-15 TW TW106120782A patent/TWI775758B/zh active
- 2008-04-15 TW TW097113651A patent/TWI543628B/zh active
- 2008-04-15 TW TW101127895A patent/TWI502976B/zh active
- 2008-04-15 TW TW101127900A patent/TWI445393B/zh active
- 2008-04-15 TW TW101127899A patent/TWI445407B/zh active
- 2008-04-15 TW TW101127897A patent/TWI530196B/zh active
-
2009
- 2009-10-16 MX MX2021009153A patent/MX2021009153A/es unknown
- 2009-10-16 MX MX2015002905A patent/MX337525B/es unknown
-
2012
- 2012-06-13 JP JP2012133610A patent/JP5069811B2/ja active Active
- 2012-08-10 JP JP2012177850A patent/JP5150781B2/ja active Active
- 2012-11-30 JP JP2012262213A patent/JP5213084B2/ja active Active
- 2012-11-30 JP JP2012262219A patent/JP5213085B2/ja active Active
- 2012-12-13 JP JP2012272116A patent/JP5317247B2/ja active Active
-
2013
- 2013-02-27 JP JP2013037236A patent/JP5597269B2/ja active Active
-
2014
- 2014-08-07 JP JP2014160987A patent/JP2014225919A/ja active Pending
-
2015
- 2015-12-16 JP JP2015245159A patent/JP6180495B2/ja active Active
-
2020
- 2020-07-14 HR HRP20201105TT patent/HRP20201105T1/hr unknown
- 2020-07-21 CY CY20201100668T patent/CY1123148T1/el unknown
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2633148T3 (es) | Método de codificación que utiliza una secuencia de parámetros suplementarios ajustados para la codificación o codificación multivista de video escalable | |
| CN101663893B (zh) | 编码方法 | |
| US11412265B2 (en) | Decoding multi-layer images | |
| AU2012238296B2 (en) | Coding systems | |
| HK1174462B (en) | Coding systems |