[go: up one dir, main page]

ES2726772T3 - Grupos de representación de medios para transmisión continua en red de datos de vídeo codificados - Google Patents

Grupos de representación de medios para transmisión continua en red de datos de vídeo codificados Download PDF

Info

Publication number
ES2726772T3
ES2726772T3 ES11746402T ES11746402T ES2726772T3 ES 2726772 T3 ES2726772 T3 ES 2726772T3 ES 11746402 T ES11746402 T ES 11746402T ES 11746402 T ES11746402 T ES 11746402T ES 2726772 T3 ES2726772 T3 ES 2726772T3
Authority
ES
Spain
Prior art keywords
representations
data
representation
manifest file
client device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES11746402T
Other languages
English (en)
Inventor
Ying Chen
Thomas Stockhammer
Mark Watson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of ES2726772T3 publication Critical patent/ES2726772T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

Un procedimiento de recuperación de datos de multimedios, comprendiendo el procedimiento: analizar, por parte de un dispositivo cliente, al menos una primera parte (252) de un fichero de manifiesto en busca de contenido de multimedios, en donde la primera parte del fichero de manifiesto incluye información (254A, 254B) indicativa de conjuntos de representaciones del contenido de multimedios, información (256A, 256B) indicativo de características comunes para cada uno de los conjuntos de representaciones e información (258A, 258B) indicativa de una ubicación de al menos una segunda parte (260A, 260B) del fichero de manifiesto, incluyendo cada segunda parte del fichero de manifiesto información (262A, 262B; 264A, 264B) indicativa de las características de las representaciones individuales (272A, 272B); (282A, 282B) de un conjunto de representaciones (270; 280); seleccionar (404), por parte del dispositivo cliente, uno entre los conjuntos de representaciones basándose en las características comunes para el conjunto entre los conjuntos de representaciones; determinar, por parte del dispositivo cliente, la ubicación de la segunda parte del fichero de manifiesto, relacionado con el conjunto seleccionado entre los conjuntos de representaciones; recuperar, por parte del dispositivo cliente, la segunda parte del fichero de manifiesto relacionado con el 20 conjunto seleccionado entre los conjuntos de representaciones; seleccionar (412), por parte del dispositivo cliente, una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones, basándose en la información (262A; 262B; 264A; 264B) sobre una o más características de codificación de la representación entre las representaciones del conjunto entre los 25 conjuntos incluidos en la segunda parte recuperada del fichero de manifiesto; y generar (414), por parte del dispositivo cliente, una solicitud de datos de multimedios de la representación seleccionada entre el conjunto seleccionado de representaciones.

Description

DESCRIPCIÓN
Grupos de representación de medios para transmisión continua en red de datos de vídeo codificados
CAMPO TÉCNICO
[0001] Esta divulgación se refiere al almacenamiento y transporte de datos de multimedios codificados.
ANTECEDENTES
[0002] Las capacidades del vídeo digital pueden incorporarse a una amplia gama de dispositivos, incluidos televisores digitales, sistemas de difusión directa digital, sistemas de difusión inalámbrica, asistentes digitales personales (PDA), ordenadores portátiles o de sobremesa, cámaras digitales, dispositivos de grabación digitales, reproductores de medios digitales, dispositivos de videojuegos, consolas de videojuegos, teléfonos celulares o de radio por satélite, dispositivos de videoconferencia y similares. Los dispositivos de vídeo digitales implementan técnicas de compresión de vídeo, tales como las descritas en las normas definidas por MPEG-2, MPEG-4, ITU-T H.263 o ITU-T H.264/MPEG-4, parte 10, Codificación de Vídeo Avanzada (AVC) y ampliaciones de dichas normas, para transmitir y recibir información de vídeo digital de manera más eficiente.
[0003] Las técnicas de compresión de vídeo realizan predicción espacial y/o predicción temporal para reducir o eliminar la redundancia inherente a las secuencias de vídeo. Para la codificación de vídeo basada en bloques, una trama o un fragmento de vídeo pueden dividirse en macrobloques. Cada macrobloque se puede dividir aún más. Los macrobloques en una trama o un fragmento intracodificados (I) se codifican mediante predicción espacial con respecto a los macrobloques contiguos. Los macrobloques en una trama o fragmento intercodificados (P o B) pueden utilizar predicción espacial con respecto a los macrobloques contiguos en la misma trama o fragmento, o predicción temporal con respecto a otras tramas de referencia.
[0004] Después de que se hayan codificado los datos de vídeo, los datos de vídeo pueden agruparse en paquetes para su transmisión o almacenamiento. Los datos de vídeo pueden reunirse en un fichero de vídeo conforme a cualquiera entre varias normas, tales como el formato de ficheros de medios básicos de la Organización internacional de normalización (ISO) y extensiones del mismo, tales como la ITU-T H.264/AVC. Dichos datos de vídeo paquetizados se pueden transportar de varias formas, tales como la transmisión por una red informática usando la transmisión continua en red. La técnica anterior relacionada son las contribuciones del 3GPP " Use Cases and Examples for Adaptive HTTP Streaming [Casos de uso y ejemplos de transmisión continua adaptativa de1HTTP]" (S4-100408) y " Media Presentation Description in HTTP Streaming [Descripción de la presentación de medios en transmisión continua del HTTP]" (S4-100080), así como la publicación "Microsoft HTTP Smooth Streaming: Microsoft response to the ISO/IEC/JTC1/SC29/w G11/N1338 Call for Proposal on HTTP Streaming [Transmisión continua llana de1HTTP de Microsoft: Respuesta de Microsoft a la Convocatoria de propuestas ISO/IEC/JTC1/SC29/WG11/N1338 sobre transmisión continua del HTTP]" (MPEG2010/M17902).
SUMARIO
[0005] En general, la presente divulgación describe técnicas para mejorar la transmisión continua de datos de medios por una red. Estas técnicas incluyen el soporte para modalidades trucadas, tales como el avance rápido, el rebobinado y la búsqueda dentro de contenido de medios transmitido continuamente por una red. Estas técnicas también incluyen el soporte para grupos de representación, tales como la señalización de características comunes para un grupo de representaciones, así como características individuales de las representaciones. Además, las técnicas incluyen proporcionar información para actualizar ficheros de manifiesto para contenido de medios transmitido continuamente. Las técnicas también incluyen proporcionar datos de medios para anuncios específicos como períodos externos para el contenido de medios. Estas técnicas incluyen además proporcionar e interpretar los informes de calidad de experiencia de un dispositivo cliente a un proveedor de servicios. Además, estas técnicas incluyen la señalización de los datos de perfil a los que se ajusta un fichero de manifiesto de contenido de medios.
[0006] La invención se expone en las reivindicaciones adjuntas.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
[0007]
La figura 1 es un diagrama de bloques que ilustra un sistema ejemplar que implementa técnicas para transmitir continuamente datos de medios por una red.
La figura 2 es un diagrama conceptual que ilustra elementos de un contenido ejemplar de multimedios.
La figura 3 es un diagrama de bloques que ilustra elementos de un fichero de vídeo ejemplar, que puede corresponder a un segmento de una representación de contenido de multimedios.
La figura 4 es un diagrama conceptual que ilustra un contenido ejemplar de multimedios que incluye una descripción de presentación de medios (MPD) y varios grupos de representación.
La figura 5 es un diagrama conceptual que ilustra otro contenido ejemplar de multimedios, en el que los datos de MPD se separan en varias partes para varios grupos de representación.
La figura 6 es un diagrama conceptual que ilustra otro contenido ejemplar de multimedios que puede usarse para prestar soporte a modalidades trucadas.
La figura 7 es un diagrama conceptual que ilustra otro contenido ejemplar de multimedios en el que los segmentos pueden incluir cuadros de actualización de MPD para indicar que se ha de actualizar una MPD del contenido de multimedios.
La figura 8 es un diagrama de flujo que ilustra un procedimiento ejemplar para proporcionar indicaciones de grupos de representación por parte de un dispositivo servidor, y para seleccionar grupos de representación por parte de un dispositivo cliente, así como una representación individual dentro del grupo de representación seleccionado.
La figura 9 es un diagrama de flujo que ilustra un procedimiento ejemplar para proporcionar datos representativos de una modalidad trucada por parte de un dispositivo servidor, y para usar los datos por parte de un dispositivo cliente, para recuperar y reproducir los datos de la modalidad trucada del contenido de multimedios.
La figura 10 es un diagrama de flujo que ilustra un procedimiento ejemplar para proporcionar, mediante un dispositivo servidor, indicaciones de que un fichero de manifiesto, tal como una MPD, ha de actualizarse, y para actualizar una MPD por parte de un dispositivo cliente.
La figura 11 es un diagrama de flujo que ilustra un procedimiento ejemplar para construir y utilizar datos de un documento de informe de calidad de experiencia (QoE).
DESCRIPCIÓN DETALLADA
[0008] En general, esta divulgación describe técnicas para la transmisión continua de datos de multimedios, tales como datos de audio y vídeo, por una red. Las técnicas de esta divulgación se pueden usar junto con la transmisión continua adaptativa dinámica sobre el HTTP (DASH). Esta divulgación describe diversas técnicas que pueden realizarse junto con la transmisión continua en red, cualquiera de, o todas, las cuales puede(n) implementarse sola(s) o en cualquier combinación. Como se describe con mayor detalle a continuación, varios dispositivos que realizan la transmisión continua en red pueden configurarse para implementar las técnicas de esta divulgación.
[0009] De acuerdo a las técnicas de DASH y similares para transmitir continuamente datos por una red, el contenido de multimedios (tal como una película u otro contenido de audio / vídeo, que también puede incluir superposiciones de texto u otros datos) puede codificarse de varias formas y con varias características. Un dispositivo de preparación de contenido puede formar múltiples representaciones del mismo contenido de multimedios. Cada representación puede corresponder a un conjunto particular de características, tales como las características de codificación y representación, para proporcionar datos utilizables por varios dispositivos clientes diferentes con diversas capacidades de codificación y representación. Además, las representaciones que tengan diversas velocidades de bits pueden admitir la adaptación del ancho de banda. Es decir, un dispositivo cliente puede determinar una magnitud del ancho de banda que está disponible actualmente y seleccionar una representación basándose en la magnitud del ancho de banda disponible, junto con las capacidades de codificación y representación del dispositivo cliente.
[0010] En algunos ejemplos, un dispositivo de preparación de contenido puede indicar que un conjunto de representaciones tiene un conjunto de características comunes. El dispositivo de preparación de contenido puede indicar entonces que las representaciones en el conjunto forman un grupo de representación, en cuanto a que las representaciones en el conjunto se pueden usar para la adaptación del ancho de banda. Es decir, las representaciones en el conjunto pueden diferir en la velocidad de bits, pero en lo demás comparten esencialmente las mismas características. De esta manera, un dispositivo cliente puede determinar diversos conjuntos de características comunes para los grupos de representación del contenido de multimedios, y seleccionar un grupo de representación basándose en las capacidades de codificación y representación del dispositivo cliente. Entonces, el dispositivo cliente puede conmutar de forma adaptativa entre las representaciones en el grupo de representación seleccionado basándose en la disponibilidad del ancho de banda.
[0011] El dispositivo de preparación de contenido también puede proporcionar ubicaciones de red distintas para diferentes partes de un fichero de manifiesto, tal como un fichero de descripción de presentación de medios (MPD) en un formato prescrito por el 3GPP (Proyecto de Asociación de Tercera Generación). Es decir, diferentes partes del fichero de manifiesto pueden ser direccionables independientemente, por ejemplo, por varios identificadores uniformes de recursos (URI), tales como los localizadores uniformes de recursos (URL). Una parte inicial del fichero de manifiesto puede incluir un URI, un URL u otro identificador de ubicación de otra parte del fichero de manifiesto. Por ejemplo, una primera parte del fichero de manifiesto puede incluir descripciones de características comunes de grupos de representación, como se ha expuesto anteriormente.
[0012] Cada uno de los grupos de representación puede asociarse a una respectiva parte diferente del fichero de manifiesto, que puede incluir datos indicativos de las ubicaciones de datos de medios de las representaciones en el respectivo grupo de representación. De esta manera, un dispositivo cliente puede recibir la primera parte del fichero de manifiesto, seleccionar un grupo de representación adecuado, recuperar otra parte del fichero de manifiesto para el grupo de representación seleccionado, seleccionar una representación del grupo seleccionado y usar la otra parte del fichero de manifiesto para recuperar los datos de la representación seleccionada. Además, el dispositivo cliente puede adaptarse al ancho de banda cambiante de la red utilizando la otra parte del fichero de manifiesto, es decir, la parte específica del grupo de representación seleccionado.
[0013] Adicional o alternativamente, una parte de un fichero de manifiesto puede referirse a otra parte del fichero de manifiesto para otros fines. Es decir, una parte del fichero de manifiesto puede dirigir un dispositivo cliente a otra parte del fichero de manifiesto para insertar datos de medios de un período remoto en una película durante la reproducción. El período remoto puede corresponder a un anuncio, en algunos ejemplos. Estas técnicas pueden usarse para publicidad objetivada, en algunos ejemplos. Un dispositivo cliente puede proporcionar información de usuario, tal como el identificador de usuario, las preferencias de usuario para los anuncios y/o la información demográfica del usuario, a un dispositivo servidor, que puede seleccionar una parte del fichero de manifiesto en función de la información de usuario. Por lo tanto, cuando no es mencionada, una parte externa del fichero de manifiesto puede ser incorporada en el fichero de manifiesto original, por ejemplo, por el dispositivo cliente. El dispositivo servidor puede proporcionar una ubicación de la parte del fichero de manifiesto, asociado al contenido de medios de publicidad objetivada, al dispositivo cliente. Luego, el dispositivo cliente puede recuperar y presentar datos del contenido de medios de publicidad objetivada antes de recuperar datos de una representación particular de un período de contenido de multimedios solicitado. De esta manera, una primera parte de un fichero de manifiesto para contenido de multimedios puede referirse a una segunda parte del fichero de manifiesto.
[0014] En algunos casos, un usuario puede desear reproducir datos de vídeo de una manera que no sea de principio a fin. Por ejemplo, un usuario puede desear reproducir datos de vídeo en las modalidades de avance rápido o rebobinado, o comenzar desde un punto de reproducción particular. Tales modalidades de reproducción de vídeo, que son modalidades distintas a la reproducción de principio a fin, pueden denominarse "modalidades trucadas". En las modalidades trucadas, porque no todos los datos de vídeo se reproducirán en última instancia, no es necesario recuperar todos los datos de vídeo. Esta divulgación proporciona técnicas para prestar soporte a modalidades trucadas también. Por ejemplo, un dispositivo de preparación de contenido puede proporcionar indicaciones de ubicaciones en distancias de octetos de las tramas en los datos de vídeo utilizados para las modalidades trucadas, tales como las imágenes de actualización instantánea del decodificador (IDR). En general, las imágenes de IDR se pueden decodificar sin hacer referencia a los datos de tramas cualesquiera, externas a las propias imágenes de iDr . Las tramas o fragmentos de imágenes de IDR generalmente se codifican en una modalidad de intrapredicción, para evitar dependencias de otras tramas o fragmentos. De esta manera, el dispositivo cliente puede recuperar información indicativa de las ubicaciones de imágenes de IDR para descargar solo los datos de las imágenes de IDR, para su uso en la visualización de datos de vídeo en una modalidad trucada, tal como el avance rápido. También se pueden incluir otros datos en la subsecuencia temporal. Los datos se pueden organizar en orden de codificación, de modo que los datos utilizados para referencia se produzcan antes de (y en secuencia de octetos continua con) datos de referencia. Por ejemplo, una trama I puede preceder a una trama P, que puede preceder a una o más tramas B, cualquiera de las cuales puede preceder a otras tramas B que pueden referirse a la trama B anterior de forma jerárquica.
[0015] En algunos ejemplos, un fichero de manifiesto, tal como una MPD, puede requerir actualizaciones ocasionales. Esta divulgación también proporciona técnicas para señalizar y recibir indicaciones de que una MPD requiere una actualización. En particular, un dispositivo de preparación de contenido puede incluir datos en segmentos de representaciones que indiquen que una MPD correspondiente requiere una actualización. Estos datos pueden corresponder a un elemento inicial de un segmento, que puede indicar las actualizaciones a aplicar a la MPD y/o las ubicaciones desde las cuales un dispositivo cliente puede recuperar actualizaciones para la MPD. Las actualizaciones pueden comprender una MPD completamente nueva o actualizaciones incrementales relativas a una MPD anterior para el contenido de multimedios
[0016] Esta divulgación incluye además técnicas para proporcionar retroalimentación desde los dispositivos cliente a un dispositivo servidor y/o dispositivo de preparación de contenido. La retroalimentación puede corresponder, por ejemplo, a información indicativa de datos que se recuperaron para contenido de multimedios. Un administrador u otro usuario del dispositivo y/o servidor de preparación de contenido puede usar dicha información de varias maneras. Por ejemplo, el usuario puede configurar una red de entrega de contenido (CDN) para almacenar en memoria caché los datos de las representaciones a las que se accede con mayor frecuencia en los dispositivos delegados de la CDN, tales como encaminadores u otros dispositivos. Como otro ejemplo, el usuario puede determinar las representaciones a las que se accede con más frecuencia para determinar si ciertas representaciones deberían agregarse al, o eliminarse del, contenido de multimedios actual, y/o cómo codificar representaciones de contenido futuro de multimedios.
[0017] Los ficheros de vídeo, tales como los segmentos de representaciones de contenido de multimedios, pueden ser conformes a los datos de vídeo encapsulados de acuerdo a cualquiera entre el formato de fichero de medios de base de la ISO, el formato de fichero de la Codificación de Vídeo Ajustable a Escala (SVC), el formato de fichero de la Codificación de Vídeo Avanzada (AVC), el formato de fichero del Proyecto de Asociación de Tercera Generación (3GPP) y/o el formato de fichero de la Codificación de Vídeo de Múltiples Vistas (MVC) u otros formatos similares de fichero de vídeo.
[0018] El Formato de Fichero de Medios de Base de la ISO está diseñado para contener la información cronológica de medios para una presentación en un formato flexible y extensible que facilite el intercambio, la gestión, la edición y la presentación de los medios. El formato de Fichero de Medios de Base de la ISO (ISO/IEC 14496-12:2004) se especifica en la norma MPEG-4 Parte-12, que define una estructura general para los ficheros de medios con base cronológica. El formato de Fichero de Medios de Base de la ISO se usa como la base para otros formatos de fichero en la familia, tales como el soporte definido del formato de fichero de la AVC (ISO/IEC 14496-15) para la compresión de vídeo de la norma AVC H.264/MPEG-4, el formato de fichero del 3GPP, el formato de fichero de la SVC y el formato de fichero de la MVC. El formato de fichero del 3GPP y el formato de fichero de la MVC son ampliaciones del formato de fichero de la AVC. El formato de fichero de medios de base de la ISO contiene la temporización, la estructura y la información de medios para secuencias cronometradas de datos de medios, tales como las presentaciones audiovisuales. La estructura del fichero puede ser orientada a objetos. Un fichero puede descomponerse en objetos básicos muy sencillamente y la estructura de los objetos está implícita a partir de su tipo.
[0019] Los ficheros conformes al formato de fichero de medios de base de la ISO (y sus ampliaciones) pueden formarse como una serie de objetos, llamados "cuadros". Los datos en el formato de fichero de medios de base de la ISO pueden estar contenidos en cuadros, de modo que no sea necesario que estén contenidos ningunos otros datos dentro del fichero y no es necesario que haya datos fuera de los cuadros dentro del fichero. Esto incluye cualquier rúbrica inicial requerida por el formato de fichero específico. Un "cuadro" puede ser un bloque de construcción orientado a objetos, definido por un identificador y una longitud de tipo único. Habitualmente, una presentación está contenida en un fichero y la presentación de medios está autocontenida. El contenedor de la película (cuadro de película) puede contener los metadatos de los medios, y las tramas de vídeo y audio pueden estar contenidas en el contenedor de datos de medios y podrían estar en otros ficheros.
[0020] Una representación (secuencia de movimiento) puede estar contenida en varios ficheros, a veces denominados segmentos. La información de temporización y encuadre (posición y tamaño) se encuentra en general en el fichero de medios de base de la ISO y los ficheros complementarios pueden usar esencialmente cualquier formato. Esta presentación puede ser 'local' al sistema que contenga la presentación, o puede proporcionarse a través de una red u otro mecanismo de suministro de flujo.
[0021] Se puede usar una pista de metadatos opcional para etiquetar cada pista con la "característica interesante" que tiene, para la cual su valor puede diferir de otros miembros del grupo (por ejemplo, su velocidad de bits, tamaño de pantalla o idioma). Algunas muestras dentro de una pista pueden tener características especiales o pueden identificarse individualmente. Un ejemplo de la característica es el punto de sincronización (a menudo una trama-I de vídeo). Estos puntos pueden ser identificados por una tabla especial en cada pista. De manera más general, la naturaleza de las dependencias entre muestras de pista también se puede documentar utilizando metadatos. Los metadatos se pueden estructurar como una secuencia de muestras de formato de fichero, al igual que una pista de vídeo. Dicha pista puede denominarse una pista de metadatos. Cada muestra de metadatos se puede estructurar como una declaración de metadatos. Hay varios tipos de declaraciones, correspondientes a las diversas preguntas que se pueden formular acerca de la correspondiente muestra de formato de fichero o sus muestras constituyentes.
[0022] Cuando los medios se suministren mediante un protocolo de transmisión continua, los medios pueden necesitar transformarse a partir de la forma en que se representen en el fichero. Un ejemplo de esto es cuando los medios de comunicación se transmiten mediante el Protocolo de Transporte en Tiempo Real (RTP). En el fichero, por ejemplo, cada trama de vídeo se almacena de forma contigua como una muestra de formato de fichero. En el RTP, se deben obedecer las reglas de paquetización (del inglés “packetization”) específicas del códec usado para colocar estas tramas en paquetes del r Tp . Un servidor de transmisión continua puede configurarse para calcular dicha paquetización en tiempo de ejecución. Sin embargo, hay soporte para la asistencia de los servidores de transmisión continua.
[0023] Las técnicas de esta divulgación pueden ser aplicables a los protocolos de transmisión en red, tales como la transmisión continua del HTTP, por ejemplo, de acuerdo a la transmisión continua adaptativa dinámica por e1HTTP (DASH). En la transmisión continua del HTTP, las operaciones usadas frecuentemente incluyen el GET y el GET parcial. La operación GET recupera un fichero completo asociado a un localizador uniforme de recursos (URL) dado o a otro identificador, por ejemplo, el URI. La operación GET parcial recibe un rango de octetos como parámetro de entrada y recupera un número continuo de octetos de un fichero correspondiente al rango de octetos recibido. Por tanto, se pueden proporcionar fragmentos de película para la transmisión continua de1HTTP, porque una operación GET parcial puede obtener uno o más fragmentos de película individuales. Obsérvese que, en un fragmento de película, puede haber varios fragmentos de pista de diferentes pistas. En la transmisión continua de1HTTP, una representación de medios puede ser una colección estructurada de datos a los que puede acceder el cliente. El cliente puede solicitar y descargar información de datos de medios para presentar un servicio de transmisión continua a un usuario.
[0024] En el ejemplo de la transmisión continua de datos del 3GPP utilizando la transmisión continua de1HTTP, puede haber múltiples representaciones de los datos de vídeo y/o audio del contenido de multimedios. El manifiesto de dichas representaciones se puede definir en una estructura de datos de la Descripción de Presentación de Medios (MPD). Una representación de medios puede corresponder a una recopilación de datos estructurada que sea accesible para un dispositivo cliente de transmisión continua del HTTP. El dispositivo cliente de transmisión continua de1HTTP puede pedir y descargar información de datos de medios para presentar un servicio de transmisión continua a un usuario del dispositivo cliente. Una representación de medios se puede describir en la estructura de datos de la MPD, que puede incluir actualizaciones de la MPD.
[0025] El contenido de multimedios puede contener una secuencia de uno o más períodos. Los períodos pueden estar definidos mediante un elemento de Período en la MPD. Cada período puede tener un atributo de inicio en la MPD. La MPD puede incluir un atributo de inicio y un atributo de InstanteInicioDisponible para cada período. Para servicios en vivo, la suma del atributo de inicio del período y del atributo InstanteInicioDisponible de la MPD puede especificar el tiempo de disponibilidad del periodo en formato de UTC, en particular, el primer segmento de medios de cada representación en el período correspondiente. Para servicios a petición, el atributo de inicio del primer período puede ser 0. Para cualquier otro período, el atributo de inicio puede especificar un desplazamiento temporal entre el instante de inicio del período correspondiente con respecto al instante de inicio del primer periodo. Cada período puede extenderse hasta el inicio del siguiente período, o hasta el final de la presentación de medios en el caso del último período. Los instantes de inicio de período pueden ser precisos. Pueden reflejar la temporización real resultante de la reproducción de los medios de todos los periodos anteriores.
[0026] Cada período puede contener una o más representaciones para el mismo contenido de medios. Una representación puede ser una entre una serie de versiones codificadas alternativas de datos de audio o vídeo. Las representaciones pueden diferir en diversas características, tales como según los tipos de codificación, por ejemplo, según la velocidad de bits, la resolución y/o el códec para los datos de vídeo y la velocidad de bits, el idioma y/o el códec para los datos de audio. El término representación se puede usar para referirse a una sección de datos de audio o vídeo codificados correspondientes a un período particular del contenido de multimedios y codificados de forma particular.
[0027] Las representaciones de un período particular se pueden asignar a un grupo, que puede estar indicado por atributo de grupo en la MPD. Las representaciones en el mismo grupo se consideran en general alternativas entre sí. Por ejemplo, cada representación de datos de vídeo para un período determinado se puede asignar a un mismo grupo, de modo que se pueda seleccionar cualquiera de las representaciones para la decodificación, para visualizar datos de vídeo del contenido de multimedios para el período correspondiente. El contenido de medios dentro de un período se puede representar mediante una representación del grupo 0, si está presente, o bien la combinación de a lo sumo una representación de cada grupo distinto de cero, en algunos ejemplos. Los datos de temporización para cada representación de un período pueden expresarse con respecto al tiempo de inicio del período.
[0028] Una representación puede incluir uno o más segmentos. Cada representación puede incluir un segmento de inicialización, o cada segmento de una representación puede ser auto-inicializador. Cuando esté presente, el segmento de inicialización puede contener información de inicialización para acceder a la representación. En general, el segmento de inicialización no contiene datos de medios. Un segmento puede ser mencionado únicamente por un identificador, tal como un localizador uniforme de recursos (URL). La MPD puede proporcionar los identificadores para cada segmento. En algunos ejemplos, la MPD también puede proporcionar rangos de octetos en forma de un atributo de rango, que puede corresponder a los datos para un segmento dentro de un fichero accesible por el URL o el URI.
[0029] Cada representación también puede incluir uno o más componentes de medios, donde cada componente de medios puede corresponder a una versión codificada de un tipo individual de medios, tal como audio, vídeo y / o texto cronometrado (por ejemplo, para los subtítulos cerrados). Los componentes de medios pueden tener continuidad temporal entre fronteras de segmentos de medios consecutivos dentro de una representación.
[0030] La figura 1 es un diagrama de bloques que ilustra un sistema ejemplar 10 que implementa técnicas para transmitir continuamente datos de medios por una red. En este ejemplo, el sistema 10 incluye el dispositivo de preparación de contenido 20, el dispositivo servidor 60 y el dispositivo cliente 40. El dispositivo cliente 40 y el dispositivo servidor 60 están acoplados de forma comunicativa por la red 74, que puede comprender Internet. En algunos ejemplos, el dispositivo de preparación de contenido 20 y el dispositivo servidor 60 también pueden estar acoplados por la red 74 u otra red, o pueden estar acoplados de forma comunicativa de manera directa. En algunos ejemplos, el dispositivo de preparación de contenido 20 y el dispositivo servidor 60 pueden comprender el mismo dispositivo.
[0031] El dispositivo de preparación de contenido 20, en el ejemplo de la figura 1, comprende el origen de audio 22 y el origen de vídeo 24. El origen de audio 22 puede comprender, por ejemplo, un micrófono que produzca señales eléctricas representativas de los datos de audio capturados a codificar por el codificador de audio 26. De forma alternativa, el origen de audio 22 puede comprender un medio de almacenamiento que almacene datos de audio previamente grabados, un generador de datos de audio tal como un sintetizador informatizado, o cualquier otro origen de datos de audio. El origen de vídeo 24 puede comprender una cámara de vídeo que produzca datos de vídeo a codificar por el codificador de vídeo 28, un medio de almacenamiento codificado con datos de vídeo grabados previamente, una unidad de generación de datos de vídeo, tal como un origen de gráficos de ordenador, o cualquier otro origen de datos de vídeo. El dispositivo de preparación de contenido 20 no está necesariamente acoplado de forma comunicativa al dispositivo servidor 60 en todos los ejemplos, pero puede almacenar contenido de multimedios en un medio independiente que sea leído por el dispositivo servidor 60.
[0032] Los datos de audio y vídeo en bruto pueden comprender datos analógicos o digitales. Los datos analógicos pueden digitalizarse antes de ser codificados por el codificador de audio 26 y/o el codificador de vídeo 28. El origen de audio 22 puede obtener datos de audio desde un orador participante mientras el orador participante está hablando, y el origen de vídeo 24 puede obtener simultáneamente datos de vídeo del orador participante. En otros ejemplos, el origen de audio 22 puede comprender un medio de almacenamiento legible por ordenador que comprenda datos de audio almacenados, y el origen de vídeo 24 puede comprender un medio de almacenamiento legible por ordenador que comprenda datos de vídeo almacenados. De esta manera, las técnicas descritas en esta divulgación pueden aplicarse a datos de audio y vídeo en vivo, de transmisión continua y en tiempo real, o a datos de audio y vídeo archivados y pregrabados.
[0033] Las tramas de audio que corresponden a tramas de vídeo son generalmente tramas de audio que contienen datos de audio que fueron capturados por el origen de audio 22 contemporáneamente con los datos de vídeo, capturados por el origen de vídeo 24, que están contenidos dentro de las tramas de vídeo. Por ejemplo, mientras un orador participante produce en general datos de audio hablando, el origen de audio 22 captura los datos de audio y el origen de vídeo 24 captura los datos de vídeo del orador participante al mismo tiempo, es decir, mientras el origen de audio 22 está capturando los datos de audio. Por lo tanto, un trama de audio puede corresponder temporalmente a una o más tramas de vídeo particulares. Por consiguiente, una trama de audio correspondiente a una trama de vídeo corresponde en general a una situación en la que se capturaron datos de audio y datos de vídeo al mismo tiempo, y para la que una trama de audio y un trama de vídeo comprenden, respectivamente, los datos de audio y los datos de vídeo que se capturaron al mismo tiempo.
[0034] En algunos ejemplos, el codificador de audio 26 puede codificar un sello cronológico en cada trama de audio codificada, que representa un momento en que se registraron los datos de audio para la trama de audio codificada y, de manera similar, el codificador de vídeo 28 puede codificar un sello cronológico en cada trama de vídeo codificada, que representa un momento en el que se grabaron los datos de vídeo para la trama de vídeo codificada. En dichos ejemplos, una trama de audio correspondiente a una trama de vídeo puede comprender una trama de audio que comprende un sello cronológico y una trama de vídeo que comprende el mismo sello cronológico. El dispositivo de preparación de contenido 20 puede incluir un reloj interno a partir del cual el codificador de audio 26 y/o el codificador de vídeo 28 pueden generar los sellos cronológicos, o que el origen de audio 22 y el origen de vídeo 24 pueden utilizar para asociar datos de audio y vídeo, respectivamente, a un sello cronológico.
[0035] En algunos ejemplos, el origen de audio 22 puede enviar datos al codificador de audio 26, correspondientes a una hora en la que se registraron los datos de audio, y el origen de vídeo 24 puede enviar datos al codificador de vídeo 28, correspondientes a una hora en la que se registraron los datos de vídeo. En algunos ejemplos, el codificador de audio 26 puede codificar un identificador de secuencia en datos de audio codificados para indicar un ordenamiento temporal relativo de datos de audio codificados, pero sin indicar necesariamente una hora absoluta en la cual se grabaron los datos de audio y, de manera similar, el codificador de vídeo 28 también puede usar identificadores de secuencia para indicar un ordenamiento temporal relativo de datos de vídeo codificados. De manera similar, en algunos ejemplos, un identificador de secuencia puede ser asociado o correlacionado de otro modo con un sello cronológico.
[0036] El codificador de audio 26 generalmente produce un flujo de datos de audio codificados, mientras que el codificador de vídeo 28 produce un flujo de datos de vídeo codificados. Cada flujo de datos individual (ya sea audio o vídeo) puede denominarse un flujo elemental. Un flujo elemental es un componente único, codificado digitalmente (posiblemente comprimido) de una representación. Por ejemplo, la parte de vídeo o audio codificado de la representación puede ser un flujo elemental. Un flujo elemental se puede convertir en un flujo elemental paquetizado (PES) antes de encapsularse dentro de un fichero de vídeo. Dentro de la misma representación, se puede usar un Identificador de flujo para distinguir los paquetes de PES que pertenezcan a un flujo elemental de los de otro. La unidad básica de datos de un flujo elemental es un paquete de flujo elemental paquetizado (PES). Por lo tanto, los datos de vídeo codificados generalmente corresponden a flujos de vídeo elementales. De manera similar, los datos de audio corresponden a uno o más respectivos flujos elementales.
[0037] Como ocurre con muchas normas de codificación de vídeo, la norma H.264/AVC define la sintaxis, la semántica y el proceso de decodificación para flujos de bits libres de errores, cualquiera de los cuales es conforme a un cierto perfil o nivel. La norma H.264/AVC no especifica el codificador, pero el codificador tiene la tarea de garantizar que los flujos de bits generados sean compatibles con la norma para un decodificador. En el contexto de la norma de codificación de vídeo, un "perfil" corresponde a un subconjunto de algoritmos, características o herramientas y restricciones que se les aplican. Según lo definido por la norma H.264, por ejemplo, un "perfil" es un subconjunto de toda la sintaxis del flujo de bits que está especificada por la norma H.264. Un "nivel" corresponde a las limitaciones del consumo de recursos del decodificador, tales como, por ejemplo, la memoria y el cálculo del decodificador, que se refieren a la resolución de las imágenes, la velocidad de bits y la velocidad de procesamiento de los macrobloques (MB). Un perfil se puede señalizar con un valor de idc_perfil (indicador de perfil), mientras que un nivel se puede señalizar con un valor de idc_nivel (indicador de nivel).
[0038] La norma H.264, por ejemplo, reconoce que, dentro de los límites impuestos por la sintaxis de un perfil dado, todavía es posible requerir una gran variación en el rendimiento de los codificadores y decodificadores, según los valores adoptados por los elementos sintácticos en el flujo de bits, tales como el tamaño especificado de las imágenes decodificadas. La norma H.264 reconoce además que, en muchas aplicaciones, no es ni práctico ni económico implementar un decodificador capaz de tratar todos los usos hipotéticos de la sintaxis dentro de un perfil particular. Por consiguiente, la norma H.264 define un "nivel" como un conjunto especificado de restricciones impuestas a los valores de los elementos sintácticos en el flujo de bits. Estas restricciones pueden ser simples limitaciones de valores. De forma alternativa, estas restricciones pueden adoptar la forma de restricciones sobre combinaciones aritméticas de valores (por ejemplo, el ancho de imagen multiplicado por la altura de imagen multiplicada por el número de imágenes decodificadas por segundo). La norma H.264 provee además que implementaciones individuales puedan dar soporte a un nivel diferente para cada perfil con soporte.
[0039] Un decodificador conforme a un perfil generalmente presta soporte a todas las características definidas en el perfil. Por ejemplo, como característica de codificación, la codificación de imágenes B no tiene soporte en el perfil de línea de base de la H.264/AVC, pero tiene soporte en otros perfiles de la H.264/AVC. Un decodificador conforme a un nivel debería ser capaz de decodificar cualquier flujo de bits que no requiera recursos más allá de las limitaciones definidas en el nivel. Las definiciones de perfiles y niveles pueden ser útiles para la interpretabilidad. Por ejemplo, durante la transmisión de vídeo, se pueden negociar y acordar un par de definiciones de perfil y nivel para una sesión de transmisión completa. Más específicamente, en la norma H.264/AVC, un nivel puede definir, por ejemplo, limitaciones en el número de macrobloques que necesitan ser procesados, el tamaño del almacén temporal de imágenes decodificadas (DPB), el tamaño del almacén temporal de imágenes codificadas (CPB), el rango vectorial de movimiento vertical, el número máximo de vectores de movimiento por dos MB consecutivos y si un bloque B puede tener particiones de submacrobloque inferiores a 8x8 píxeles. De esta manera, un decodificador puede determinar si el decodificador es capaz de decodificar adecuadamente el flujo de bits.
[0040] Las normas de compresión de vídeo, tales como la H.261 de la ITU-T, la H.262, la H.263, la MPEG-1, la MPe G-2 y la H.264/MPEG-4 parte 10 de la norma de Codificación de Vídeo de Alta Eficacia (HEVC), hacen uso de la predicción temporal compensada por movimiento para reducir la redundancia temporal. El codificador, tal como el codificador de vídeo 28, puede usar una predicción compensada por movimiento a partir de algunas imágenes previamente codificadas (también denominadas, en el presente documento, tramas) para predecir las imágenes codificadas actuales de acuerdo a los vectores de movimiento. Existen tres tipos de imagen principales en la codificación de vídeo típica. Se trata de imágenes intracodificadas ("imágenes I" o "tramas I"), imágenes predichas ("imágenes P" o "tramas P") e imágenes predichas bidireccionales ("imágenes B" o "tramas B"). Las imágenes P pueden usar la imagen de referencia antes de la imagen actual en el orden temporal. En una imagen B, cada bloque de la imagen B puede predecirse a partir de una o dos imágenes de referencia. Estas imágenes de referencia podrían situarse antes o después de la imagen actual en el orden temporal.
[0041] Los conjuntos de parámetros contienen generalmente información de cabecera de capa de secuencia en los conjuntos de parámetros de secuencia (SPS), y la información de cabecera de capa de imagen que cambia raramente en conjuntos de parámetros de imagen (PPS). Con los conjuntos de parámetros, esta información que cambia raramente no necesita repetirse para cada secuencia o imagen, de ahí que pueda mejorarse la eficacia de codificación. Además, el uso de conjuntos de parámetros puede permitir la transmisión fuera de banda de la información de cabecera, evitando la necesidad de transmisiones redundantes para lograr la resistencia a los errores. En la transmisión fuera de banda, las unidades de NAL de conjuntos de parámetros se transmiten por un canal diferente al de las otras unidades de NAL.
[0042] En el ejemplo de la figura 1, la unidad de encapsulación 30 del dispositivo de preparación de contenido 20 recibe flujos elementales que comprenden datos de vídeo codificados desde el codificador de vídeo 28 y flujos elementales que comprenden datos de audio codificados desde el codificador de audio 26. En algunos ejemplos, el codificador de vídeo 28 y el codificador de audio 26 pueden incluir, cada uno, paquetizadores para formar paquetes de PES a partir de datos codificados. En otros ejemplos, el codificador de vídeo 28 y el codificador de audio 26 pueden interactuar, cada uno, con los paquetizadores respectivos para formar paquetes de PES a partir de datos codificados. En otros ejemplos más, la unidad de encapsulación 30 puede incluir paquetizadores para formar paquetes de PES a partir de datos de audio y de vídeo codificados.
[0043] El codificador de vídeo 28 puede codificar datos de vídeo de contenido de multimedios en varias formas, para producir diferentes representaciones del contenido de multimedios a varias velocidades de bits y con varias características, tales como resoluciones de píxeles, velocidades de tramas, conformidad con varias normas de codificación, conformidad con varios perfiles y/o niveles de perfiles para varias normas de codificación, representaciones que tienen una o varias vistas (por ejemplo, para reproducción bidimensional o tridimensional), u otras características de ese tipo. Una representación, como se usa en esta divulgación, puede comprender una combinación de datos de audio y datos de vídeo, por ejemplo, uno o más flujos elementales de audio y uno o más flujos elementales de vídeo. Cada paquete de PES incluye un id_flujo que identifica el flujo elemental al que pertenece el paquete de PES. La unidad de encapsulación 30 es responsable de ensamblar flujos elementales en ficheros de vídeo de diversas representaciones.
[0044] La unidad de encapsulación 30 recibe paquetes de PES para flujos elementales de una representación desde el codificador de audio 26 y el codificador de vídeo 28 y forma las correspondientes unidades de capa de abstracción de red (NAL) a partir de los paquetes de PES. En el ejemplo de la H.264/AVC (Codificación de Vídeo Avanzada), los segmentos de vídeo codificados están organizados en unidades de NAL, que proporcionan una representación de vídeo "favorecedora para redes" que aborda aplicaciones tales como la videotelefonía, el almacenamiento, la difusión o la transmisión continua. Las unidades de nAl se pueden clasificar en unidades de NAL de capa de codificación de vídeo (VCL) y unidades de NAL no de VCL. Las unidades de VCL pueden contener el motor de compresión central y pueden incluir datos a nivel de bloque, macrobloque y/o fragmento. Otras unidades de NAL pueden ser unidades de NAL no de VCL. En algunos ejemplos, una imagen codificada en una instancia de tiempo, normalmente presentada como una imagen codificada primaria, puede estar contenida en una unidad de acceso, que puede incluir una o más unidades de NAL.
[0045] Las unidades de NAL que no son de VCL pueden incluir unidades de NAL del conjunto de parámetros y unidades de NAL de SEI, entre otras. Los conjuntos de parámetros contienen información de cabecera a nivel de secuencia (en conjuntos de parámetros de secuencia (SPS)) y la información de cabecera a nivel de imagen, que cambia raramente (en conjuntos de parámetros de imagen (PPS)). Con los conjuntos de parámetros (por ejemplo, PPS y SPS), la información que cambia con poca frecuencia no necesita ser repetida para cada secuencia o imagen, por lo que la eficacia de la codificación puede mejorarse. Además, el uso de conjuntos de parámetros puede permitir la transmisión fuera de banda de la información de cabecera importante, evitando la necesidad de transmisiones redundantes, para la capacidad de recuperación de errores. En los ejemplos de transmisión fuera de banda, las unidades de NAL del conjunto de parámetros pueden transmitirse en un canal diferente al de otras unidades de NAL, tales como las unidades de NAL de SEI.
[0046] La información de mejora suplementaria (SEI) puede contener información que no es necesaria para decodificar las muestras de imágenes codificadas a partir de las unidades de NAL de VCL, pero puede ayudar en los procesos relacionados con la decodificación, visualización, resistencia a errores y otros fines. Los mensajes de SEI pueden estar contenidos en las unidades de NAL no de VCL. Los mensajes de SEI son la parte normativa de algunas especificaciones estándar y, por lo tanto, no siempre son obligatorios para la implementación de decodificadores compatibles con las normas. Los mensajes de SEI pueden ser mensajes de SEI a nivel de secuencia o mensajes de SEI a nivel de imagen. Parte de la información a nivel de secuencia puede estar contenida en los mensajes de SEI, tales como los mensajes de SEI de información de ajustabilidad a escala en el ejemplo de la SVC y los mensajes de SEI de información de ajustabilidad a escala de vistas en la MVC. Estos mensajes de SEI a modo de ejemplo pueden transmitir información, por ejemplo, sobre extracción de puntos de operación y características de los puntos de operación. Además, la unidad de encapsulación 30 puede formar un fichero de manifiesto, tal como un descriptor de presentación de medios (MPD) que describe las características de las representaciones. La unidad de encapsulación 30 puede formatear la MPD de acuerdo al lenguaje de marcado extensible (XML).
[0047] La unidad de encapsulación 30 puede proporcionar datos para una o más representaciones de contenido de multimedios, junto con el fichero de manifiesto (por ejemplo, la MPD), a la interfaz de salida 32. La interfaz de salida 32 puede comprender una interfaz de red o una interfaz para escribir en un medio de almacenamiento, tal como una interfaz del bus universal en serie (USB), un grabador o quemador de CD o DVD, una interfaz para medios de almacenamiento magnéticos o flash, u otras interfaces para almacenar o transmitir datos de medios. La unidad de encapsulación 30 puede proporcionar datos de cada una de las representaciones de contenido de multimedios a la interfaz de salida 32, que puede enviar los datos al dispositivo servidor 60 mediante transmisión por red o medios de almacenamiento. En el ejemplo de la figura 1, el dispositivo servidor 60 incluye un medio de almacenamiento 62 que almacena diversos contenidos de multimedios 64, incluyendo cada uno un respectivo fichero de manifiesto 66 y una o más representaciones 68A a 68N (representaciones 68). De acuerdo a las técnicas de esta divulgación, partes del fichero de manifiesto 66 pueden almacenarse en ubicaciones independientes, por ejemplo, ubicaciones del medio de almacenamiento 62 u otro medio de almacenamiento, potencialmente de otro dispositivo de la red 74 tal como un dispositivo delegado.
[0048] En algunos ejemplos, las representaciones 68 se pueden separar en grupos de representación. Es decir, diversos subconjuntos de representaciones 68 pueden incluir respectivos conjuntos comunes de características, tales como códec, perfil y nivel, resolución, número de vistas, formato de fichero para segmentos, información del tipo de texto que pueda identificar un idioma u otras características del texto a visualizar con la representación y/o los datos de audio a decodificar y presentar, por ejemplo, por altavoces, información de ángulo de cámara que pueda describir un ángulo de cámara o la perspectiva de cámara del mundo real de una escena para representaciones en el grupo de representación, información de calificación que describa la idoneidad del contenido para audiencias particulares, o similares.
[0049] El fichero de manifiesto 66 puede incluir datos indicativos de los subconjuntos de representaciones 68 correspondientes a grupos de representación particulares, así como características comunes para los grupos de representación. El fichero de manifiesto 66 también puede incluir datos representativos de características individuales, tales como las velocidades de bits, para representaciones individuales de grupos de representación. De esta manera, un grupo de representación puede proveer la adaptación simplificada del ancho de banda de red. Las representaciones en un grupo de representación pueden indicarse usando elementos dependientes de un elemento del grupo de representación del fichero de manifiesto 66.
[0050] El fichero de manifiesto 66 también puede (es decir, adicional o alternativamente) señalizar información de modalidad trucada para una o más de las representaciones 68. En algunos ejemplos, una o más de las representaciones 68 pueden incluir una respectiva subsecuencia temporal para el soporte de modalidad trucada. Una modalidad trucada generalmente corresponde a una modalidad de reproducción para una representación en la que los datos de la representación no se reproducen de principio a fin, sino que, en cambio, pueden comenzar en una ubicación temporal específica (por ejemplo, para permitir la búsqueda de una ubicación temporal particular), u omitir una o más tramas en la dirección temporal hacia adelante o hacia atrás (por ejemplo, avance rápido o rebobinado).
[0051] Para proveer modalidades trucadas, el contenido de multimedios 64 puede incluir información representativa de ubicaciones de datos para subsecuencias temporales de representaciones correspondientes 68. En algunos ejemplos, el fichero de manifiesto 66 puede incluir información representativa de ubicaciones de datos para las subsecuencias temporales. En otros ejemplos, las propias representaciones 68 pueden incluir la información representativa de las ubicaciones de los datos para las subsecuencias temporales. En otros ejemplos más, tanto las representaciones 68 como el fichero de manifiesto 66 pueden incluir información representativa de ubicaciones de datos para las subsecuencias temporales.
[0052] En algunos ejemplos, el dispositivo de preparación de contenido 20 puede preparar contenido de medios a medida que se graba el contenido de medios, por ejemplo, para servicios en vivo. En algunos casos, la unidad de encapsulación 30 puede necesitar actualizar periódicamente un fichero de manifiesto para el contenido de medios. La unidad de encapsulación 30 puede incluso actualizar el fichero de manifiesto dentro de un período particular del contenido de medios. De acuerdo a las técnicas de esta divulgación, la unidad de encapsulación 30 puede formar segmentos de una representación que incluyen datos que indican que el fichero de manifiesto ha de actualizarse. La unidad de encapsulación 30 puede proporcionar las actualizaciones en los propios segmentos o en una ubicación distinta desde la que los dispositivos clientes, tales como el dispositivo cliente 40, pueden recuperar las actualizaciones para el fichero de manifiesto. De esta manera, cuando el fichero de manifiesto 66 necesita actualizarse dentro de un período particular de contenido de multimedios 64, la unidad de encapsulación 30 puede formar un segmento de una o más de las representaciones 68 que indican que el fichero de manifiesto 66 se ha de actualizar.
[0053] En algunos ejemplos, el fichero de manifiesto 66 puede incluir datos para insertar datos de un período remoto en el contenido de multimedios 64 durante la reproducción. Por ejemplo, en lugar de codificar anuncios dentro del contenido de multimedios 64, el dispositivo de preparación de contenido 20 puede preparar uno o más contenidos distintos de medios publicitarios, para ser incorporados en el contenido de multimedios 64 durante la reproducción. El dispositivo cliente 40 puede, en algunos ejemplos, proporcionar información específica para el usuario, de modo que los anuncios puedan dirigirse a un usuario del dispositivo cliente 40, de manera que un usuario del dispositivo cliente 40 reciba anuncios que sean sumamente preferibles e informativos para el usuario. En respuesta a un conjunto de información del usuario, el dispositivo servidor 60 puede proporcionar una parte de publicidad objetivada del fichero de manifiesto al dispositivo cliente 40, lo que puede hacer que el dispositivo cliente 40 recupere datos del contenido de multimedios de publicidad objetivada. De esta manera, dos o más espectadores del mismo contenido de multimedios 64 pueden recibir diferentes anuncios objetivados, de modo que los anuncios sean sumamente relevantes y útiles para los usuarios.
[0054] El dispositivo servidor 60 incluye la unidad de procesamiento de solicitudes 70 y la interfaz de red 72. En algunos ejemplos, el dispositivo servidor 60 puede incluir una pluralidad de interfaces de red. Además, cualquiera de, o todas, las características del dispositivo servidor 60 pueden implementarse en otros dispositivos de una red de entrega de contenido, tales como encaminadores, puentes, dispositivos delegados, conmutadores u otros dispositivos. En algunos ejemplos, los dispositivos intermedios de una red de entrega de contenido pueden almacenar en memoria caché datos del contenido de multimedios 64, e incluir componentes esencialmente conformes a los del dispositivo servidor 60. En general, la interfaz de red 72 está configurada para enviar y recibir datos a través de la red 74.
[0055] La unidad de procesamiento de solicitudes 70 está configurada para recibir solicitudes de red, desde dispositivos clientes tales como el dispositivo cliente 40, de datos del medio de almacenamiento 72. Por ejemplo, la unidad de procesamiento de peticiones 70 puede implementar el protocolo de transferencia de hipertexto (HTTP) versión 1,1, como se describe en RFC 2616, "Hypertext Transfer Protocol - HTTP/1.1 [Protocolo de transferencia de hipertexto - HTTP/1,1]” por R. Fielding et al, Grupo de Trabajo de la Red, IETF, junio de 1999. Es decir, la unidad de procesamiento de peticiones 70 puede configurarse para recibir peticiones GET o GET parciales de1HTTP y proporcionar datos de contenido de multimedios 64 en respuesta a las peticiones. Las peticiones pueden especificar un segmento de una de las representaciones 68, por ejemplo, usando un URL del segmento. En algunos ejemplos, las solicitudes también pueden especificar uno o más rangos de octetos del segmento, comprendiendo así solicitudes GET parciales. La unidad de procesamiento de solicitudes 70 puede configurarse además para atender solicitudes HEAD del HTTP para proporcionar datos de cabecera de un segmento de una de las representaciones 68. En cualquier caso, la unidad de procesamiento de peticiones 70 puede configurarse para procesar las peticiones para proporcionar los datos pedidos a un dispositivo solicitante, tal como el dispositivo cliente 40.
[0056] Como se ilustra en el ejemplo de la figura 1, el contenido de multimedios 64 incluye el fichero de manifiesto 66, que puede corresponder a una descripción de presentación de medios (MPD). El fichero de manifiesto 66 puede contener descripciones de diferentes representaciones 68 alternativas (por ejemplo, servicios de vídeo con diferentes calidades) y la descripción puede incluir, por ejemplo, información de códec, un valor de perfil, un valor de nivel, una velocidad de bits y otras características descriptivas de las representaciones 68. El dispositivo cliente 40 puede recuperar la MPD de una presentación de medios para determinar cómo acceder a segmentos de las representaciones 68.
[0057] En particular, la aplicación de la Red 52 puede recuperar datos de configuración (no mostrados) del dispositivo cliente 40 para determinar las capacidades de decodificación del decodificador de vídeo 48 y las capacidades de representación de la salida de vídeo 44. Los datos de configuración también pueden incluir cualquiera de, o todas, las preferencias de idioma seleccionadas por un usuario del dispositivo cliente 40, una o más perspectivas de cámara correspondientes a las preferencias de profundidad establecidas por el usuario del dispositivo cliente 40 y/o una preferencia de calificación seleccionada por el usuario del dispositivo cliente 40. La aplicación de la Red 52 puede comprender, por ejemplo, un navegador de la Red o un cliente de medios configurado para presentar peticiones GET y GET parciales del HTTP. La aplicación de la Red 52 puede corresponder a instrucciones de software ejecutadas por uno o más procesadores o unidades de procesamiento (no mostradas) del dispositivo cliente 40. En algunos ejemplos, toda, o partes de, la funcionalidad descrita con respecto a la aplicación de la Red 52 se puede(n) implementar en hardware, o en una combinación de hardware, software y/o firmware, donde se pueda proporcionar el hardware necesario para ejecutar las instrucciones de software o firmware.
[0058] La aplicación de la Red 52 puede comparar las capacidades de decodificación y representación del dispositivo cliente 40 con las características de las representaciones 68 indicadas por la información del fichero de manifiesto 66. La aplicación de la Red 52 puede recuperar inicialmente al menos una parte del fichero de manifiesto 66 para determinar las características de las representaciones 68. Por ejemplo, la aplicación de la Red 52 puede solicitar una parte del fichero de manifiesto 66 que describa las características de uno o más grupos de representación, de acuerdo a las técnicas de esta divulgación. La aplicación de la Red 52 puede seleccionar un subconjunto de representaciones 68 (por ejemplo, un grupo de representación) que tenga características que puedan ser satisfechas por las capacidades de codificación y representación del dispositivo cliente 40. La unidad de recuperación 52 puede entonces determinar las velocidades de bits para las representaciones en el grupo de representación, determinar una magnitud de ancho de banda de red actualmente disponible y recuperar segmentos de una de las representaciones que tengan una velocidad de bits que pueda ser satisfecha por el ancho de banda de la red.
[0059] En general, las representaciones de mayores velocidades de bits pueden producir una reproducción de vídeo de mayor calidad, mientras que las representaciones de velocidades de bits más bajas pueden proporcionar una reproducción de vídeo de calidad suficiente cuando disminuye el ancho de banda de red disponible. Por consiguiente, cuando el ancho de banda de red disponible sea relativamente alto, la aplicación de la Red 52 puede recuperar datos desde representaciones de velocidades de bits relativamente altas, mientras que, cuando el ancho de banda de red disponible sea bajo, la aplicación de la Red 52 puede recuperar datos desde representaciones de velocidades de bits relativamente bajas. De esta manera, el dispositivo cliente 40 puede transmitir datos de multimedios a través de la red 74 mientras que también se adapta a la disponibilidad cambiante del ancho de banda de red de la red 74.
[0060] Como se ha señalado anteriormente, en algunos ejemplos, el dispositivo cliente 40 puede proporcionar información de usuario, por ejemplo, al dispositivo servidor 60 o a otros dispositivos de una red de distribución de contenido. La aplicación de la Red 52, por ejemplo, puede recopilar un identificador de usuario, un identificador de usuario, preferencias de usuario y/o información demográfica del usuario, y proporcionar dicha información de usuario al dispositivo servidor 60. La aplicación de la Red 52 puede recibir entonces un fichero de manifiesto asociado al contenido de medios publicitarios objetivados, a usar para insertar datos del contenido de medios publicitarios objetivados en los datos de medios del contenido de medios solicitado durante la reproducción.
[0061] A veces, un usuario del dispositivo cliente 40 puede interactuar con el explorador de la Red 52 usando las interfaces de usuario del dispositivo cliente 40, tales como un teclado, un ratón, un lápiz, una interfaz de pantalla táctil, botones u otras interfaces, para solicitar que una representación seleccionada de la representaciones 68 sea reproducida en modalidad trucada. Por ejemplo, el usuario puede seleccionar una ubicación temporal particular desde la cual comenzar la reproducción, o saltar o buscar una ubicación temporal particular. Como otro ejemplo, el usuario puede elegir adelantar o rebobinar la representación.
[0062] En respuesta a tales solicitudes de un usuario, la aplicación de la Red 52 puede determinar si una de las representaciones 68 incluye una subsecuencia temporal, para realizar la modalidad trucada solicitada. Como ejemplo, un usuario puede elegir reproducir datos de vídeo en una modalidad de avance rápido. En lugar de recuperar todos los datos de los segmentos de una representación, la aplicación de la Red 52 puede determinar ubicaciones de datos de la representación correspondiente a una subsecuencia temporal de la representación. Los datos de la subsecuencia temporal pueden corresponder, por ejemplo, a un conjunto de imágenes de actualización de decodificador instantánea (IDR) de la representación.
[0063] Puede haber una duración temporal aproximada entre las imágenes de IDR de una representación, por ejemplo, 2 segundos, 10 segundos u otras duraciones temporales aproximadas. Además, las imágenes de IDR pueden codificarse en una modalidad de intrapredicción y, por lo tanto, la aplicación de la Red 52 no necesita recuperar datos que no sean las imágenes de IDR. La aplicación de la Red 52 puede hacer que las imágenes de IDR se muestren a la misma velocidad de tramas en la que se mostrarían en otro caso los datos de vídeo de la representación. Sin embargo, debido a que se pueden omitir muchas tramas de datos entre imágenes de IDR, los datos de vídeo resultantes pueden reproducirse a una velocidad de tramas incrementada, logrando así la modalidad trucada deseada.
[0064] La aplicación de la Red 52 puede determinar las ubicaciones de los datos para la subsecuencia temporal utilizando varias técnicas. En algunos ejemplos, la aplicación de la Red 52 puede analizar datos del fichero de manifiesto 66 para determinar las ubicaciones de las imágenes de IDR. Las ubicaciones de las imágenes de IDR pueden indicarse utilizando rangos de octetos dentro de segmentos de una representación particular. En otros ejemplos, un cuadro particular de segmentos de representaciones, tales como un cuadro de índice de subfragmento (también conocido como cuadro de índice de subsegmento), puede proporcionar indicaciones de las ubicaciones de los datos para la subsecuencia temporal. Por ejemplo, el cuadro de índice de subfragmento puede incluir datos representativos de rangos de octetos para imágenes de IDR dentro de un segmento correspondiente. En otros ejemplos más, tanto el fichero de manifiesto 66 como las representaciones 68 pueden incluir información utilizada por la aplicación de la Red 52 para recuperar datos para una subsecuencia temporal. En cualquier caso, la aplicación de la Red 52 puede determinar los rangos de octetos de las imágenes de IDR en los segmentos para construir solicitudes GET parciales para las imágenes de IDR, para evitar recuperar datos que no se usarían para decodificar o mostrar.
[0065] En algunos ejemplos, la unidad de encapsulación 30 puede formar segmentos de modo que las imágenes de IDR sean contiguas dentro de los segmentos. Es decir, la unidad de encapsulación 30 puede garantizar que los octetos de los segmentos correspondientes a las imágenes de IDR sean contiguos, sin octetos interpuestos para otros tipos de imágenes. De esta manera, la aplicación de la Red 52 solo necesita especificar un solo rango de octetos de segmentos de una representación para recuperar datos para una subsecuencia temporal de la representación. En algunos ejemplos, las imágenes de actualización de decodificador abierto (ODR) también se pueden usar para realizar modalidades trucadas.
[0066] En algunos ejemplos, la aplicación de la Red 52 puede determinar que una parte de un segmento recibido indica que se ha de actualizar un fichero de manifiesto. La aplicación de la Red 52 puede configurarse para analizar una parte particular de cada segmento, tal como una parte de encabezado u otra parte inicial del segmento, para determinar si el segmento indica que el fichero de manifiesto ha de actualizarse. Cuando un segmento indica que el fichero de manifiesto ha de actualizarse, la aplicación de la Red 52 puede actualizar una copia almacenada localmente del fichero de manifiesto, ya sea utilizando datos del segmento o bien recuperando datos para actualizar el fichero de manifiesto desde una ubicación remota, por ejemplo, desde el servidor 60. Después de actualizar el fichero de manifiesto, la aplicación de la Red 52 puede despachar futuras solicitudes de datos de representaciones 68 basándose en los datos del fichero de manifiesto actualizado.
[0067] Como ejemplo, el dispositivo de preparación de contenido 20 puede codificar datos de medios en vivo, tales como un suceso deportivo en vivo, un suceso político u otro suceso de interés periodístico que normalmente se difunde en vivo o casi en vivo, antes que pregrabado. En tales casos, a los segmentos correspondientes a los datos de medios, hasta un momento determinado, se les pueden asignar identificadores, tales como los URL, incluidos en un fichero de manifiesto inicial. Sin embargo, después de que haya transcurrido un período de tiempo, los segmentos a continuación del momento particular se pueden codificar y se les pueden asignar identificadores, tales como los URL. La unidad de encapsulación 30 del dispositivo de preparación de contenido 20 puede proporcionar los URL para los segmentos a continuación del momento particular a un fichero de manifiesto actualizado. En consecuencia, para determinar cómo recuperar los segmentos a continuación del momento particular, el dispositivo cliente 40 puede recibir información indicativa del fichero de manifiesto actualizado, para construir solicitudes para recuperar los segmentos a continuación del momento particular.
[0068] En algunos ejemplos, un segmento puede indicar si es el último segmento de una representación. Cuando un segmento es el último segmento de una representación, puede ser necesario recuperar un nuevo fichero de manifiesto para determinar las representaciones de un período posterior del correspondientes contenido de multimedios. En consecuencia, cuando la aplicación de la Red 52 determina que un segmento es el último segmento de una representación en un período del contenido de multimedios, la aplicación de la Red 52 puede recuperar un fichero de manifiesto actualizado para el contenido de multimedios, por ejemplo, una versión actualizada del fichero de manifiesto 66 de contenido de multimedios 64.
[0069] En algunos ejemplos, el dispositivo cliente 40 puede mantener una estructura de datos indicativa de representaciones particulares 68 de las cuales el dispositivo cliente 40 solicitó datos para el contenido de multimedios 64. El dispositivo cliente 40 también puede mantener indicaciones de qué se reprodujo exactamente y en qué momento. Es decir, la estructura de datos puede proporcionar información representativa de las horas de inicio y finalización, tanto en tiempo real (o de "reloj de pared") como en tiempo de presentación. La estructura de datos puede proporcionar además información representativa de una hora de arranque inicial y del inicio de la reproducción. Después de finalizar la reproducción del contenido de multimedios 64, el dispositivo cliente 40 puede enviar la estructura de datos al dispositivo servidor 60 y/o al dispositivo de preparación de contenido 20. El dispositivo servidor 60 y/o el dispositivo de preparación de contenido 20 pueden usar la información recibida desde el dispositivo cliente 40 para determinar más formas óptimas de mejorar la calidad de la experiencia, tales como reducir las pausas en la reproducción.
[0070] La interfaz de red 54 puede recibir y proporcionar datos de segmentos de una representación seleccionada a la aplicación de la Red 52, que a su vez puede proporcionar los segmentos a la unidad de desencapsulación 50. La unidad de desencapsulación 50 puede desencapsular elementos de un fichero de vídeo en flujos PES constituyentes, despaquetizar (del inglés “depacketize”) los flujos PES para recuperar datos codificados y enviar los datos codificados al decodificador de audio 46 o bien al decodificador de vídeo 48, en función de si los datos codificados forman parte de un flujo de audio o vídeo, por ejemplo, como lo indican las cabeceras de paquetes PES del flujo. El decodificador de audio 46 decodifica datos de audio codificados y envía los datos de audio decodificados a la salida de audio 42, mientras que el decodificador de vídeo 48 decodifica datos de vídeo codificados y envía los datos de vídeo decodificados, que pueden incluir una pluralidad de vistas de un flujo, a la salida de vídeo 44.
[0071] El codificador de vídeo 28, el decodificador de vídeo 48, el codificador de audio 26, el decodificador de audio 46, la unidad de encapsulación 30, la aplicación de la Red 52 y la unidad de desencapsulación 50 pueden, cada uno, implementarse como cualquiera entre varios circuitos de procesamiento adecuados, según corresponda, tales como uno o más microprocesadores, procesadores de señales digitales (DSP), circuitos integrados específicos de la aplicación (ASIC), formaciones de compuertas programables en el terreno (FPGA), circuitos lógicos discretos, software, hardware, firmware o cualquier combinación de los mismos. Tanto el codificador de vídeo 28 como el decodificador de vídeo 48 pueden estar incluidos en uno o más codificadores o decodificadores, cada uno de los cuales puede estar integrado como parte de un codificador/decodificador (CÓDEC) de vídeo combinado. Asimismo, cada uno entre el codificador de audio 26 y el decodificador de audio 46 puede incluirse en uno o más codificadores o decodificadores, cualquiera de los cuales puede integrarse como parte de un CÓDEC combinado. Un aparato que incluya el codificador de vídeo 28, el decodificador de vídeo 48, el codificador de audio 26, el decodificador de audio 46, la unidad de encapsulación 30, la aplicación de la Red 52 y/o la unidad de desencapsulación 50 puede comprender un circuito integrado, un microprocesador y/o un dispositivo de comunicación inalámbrica, tal como un teléfono celular.
[0072] La figura 2 es un diagrama conceptual que ilustra elementos de un contenido ejemplar de multimedios 100. El contenido de multimedios 100 puede corresponder al contenido de multimedios 64 (figura 1), o a otro contenido de multimedios almacenado en la memoria 62. En el ejemplo de la figura 2, el contenido de multimedios 100 incluye una descripción de presentación de medios (MPD) 102 y una pluralidad de representaciones 110 a 120. La representación 110 incluye datos de cabecera 112 y segmentos 114A a 114N (segmentos 114) optativos, mientras que la representación 120 incluye datos de cabecera 122 y segmentos 124A a 124N (segmentos 124) optativos. La letra N se usa para designar el último fragmento de película en cada una de las representaciones 110, 120, por comodidad. En algunos ejemplos, puede haber diferentes números de fragmentos de películas entre las representaciones 110, 120.
[0073] La MPD 102 puede comprender una estructura de datos independiente de las representaciones 110 a 120. La MPD 102 puede corresponder al fichero de manifiesto 66 de la figura 1. Asimismo, las representaciones 110 a 120 pueden corresponder a las representaciones 68 de la figura 1. En general, la MPD 102 puede incluir datos que describan en general características de las representaciones 110 a 120, tales como las características de codificación y representación, los grupos de representación, un perfil al que corresponda la MPD 102, la información del tipo de texto, la información del ángulo de la cámara, la información de calificación, la información de modalidad trucada (por ejemplo, información indicativa de representaciones que incluyan subsecuencias temporales) y/o la información para recuperar períodos remotos (por ejemplo, para la inserción de anuncios objetivados en el contenido de medios durante la reproducción). Los períodos remotos también pueden denominarse períodos externos. Las figuras 4 a 7, expuestas con mayor detalle a continuación, ilustran diversos ejemplos de contenido de multimedios con diversos elementos incluidos en uno o ambos entre una MPD y/o representaciones (tales como dentro de segmentos de representaciones o datos de cabecera de representaciones). Cualquiera de, o todas, las MPD de las figuras 4 a 7 pueden corresponder esencialmente a la MPD 102 de la figura 2.
[0074] Los datos de cabecera 112, cuando están presentes, pueden describir las características de los segmentos 114, por ejemplo, las ubicaciones temporales de puntos de acceso aleatorios, cuál de los segmentos 114 incluye puntos de acceso aleatorios, desplazamientos en octetos a puntos de acceso aleatorios dentro de los segmentos 114, localizadores de recursos uniformes (URL) de los segmentos 114 u otros aspectos de los segmentos 114. Los datos de cabecera 122, cuando están presentes, pueden describir características similares para los segmentos 124. Adicionalmente, o de forma alternativa, dichas características pueden estar completamente incluidas dentro de la MPD
[0075] Los segmentos 114, 124 incluyen una o más muestras de vídeo codificadas, cada una de las cuales puede incluir tramas o fragmentos de datos de vídeo. Cada una de las muestras de vídeo codificadas de los segmentos 114 puede tener características similares, por ejemplo, requisitos de altura, de ancho y de ancho de banda. Dichas características pueden ser descritas por datos de la MPD 102, aunque dichos datos no se ilustren en el ejemplo de la figura 2. La m Pd 102 puede incluir características según lo descrito por la Memoria Descriptiva del 3GPP, con la adición de cualquier, o toda la, información señalizada descrita en esta divulgación.
[0076] Cada uno de los segmentos 114, 124 puede estar asociado a un único identificador uniforme de recursos (URI), por ejemplo, un localizador uniforme de recursos (URL). Por tanto, cada uno de los segmentos 114, 124 puede ser recuperable independientemente usando un protocolo de red de transmisión continua, tal como DASH. De esta manera, un dispositivo de destino, tal como el dispositivo cliente 40, puede usar una petición Get de1HTTP para recuperar los segmentos 114 o 124. En algunos ejemplos, el dispositivo cliente 40 puede usar peticiones GET parciales del HTTP para recuperar rangos de octetos específicos de los segmentos 114 o 124.
[0077] Como se ha señalado anteriormente, la MPD 102 puede ser conforme a un perfil particular de MPD. La MPD 102 puede incluir información indicativa de un tipo de Extensión de Correo de Internet de Múltiples Fines (MIME) para la MPD 102 y/o el contenido de multimedios 100. Sin embargo, los tipos de MIME no indican en general qué códec se necesita para presentar contenido de multimedios. En general, se supone que, si un dispositivo puede recuperar una MPD para contenido de multimedios, tal como la MPD 102, entonces el dispositivo puede reproducir datos del contenido de multimedios correspondiente a la MPD. Sin embargo, esta suposición puede no ser siempre segura. Por lo tanto, en algunos ejemplos, la MPD 102 puede incluir información indicativa de un perfil al que corresponda la MPD 102.
[0078] Puede haber un número relativamente pequeño de perfiles a los que pueden corresponder las MPD. Los perfiles pueden disponer de soporte por niveles para abordar las capacidades, de manera similar a la manera en que la norma H.264/AVC incluye perfiles y niveles para la codificación de vídeo. Los perfiles de MPD pueden ser de capas envolventes, en cuanto a que un perfil superior puede incluir todas las características de todos los perfiles inferiores. Puede haber un proceso de registro con una autoridad de registro para registrar diversos perfiles. En algunos ejemplos, un dispositivo cliente, tal como el dispositivo cliente 40, puede configurarse para recuperar información indicativa del perfil para la MPD, tal como la MPD 102, antes de recuperar otros datos de la MPD, tales como las características de las representaciones 110 a 120 señalizadas por la MPD 102. De esta manera, el perfil para la MPD 102 puede señalizarse antes de que se proporcione acceso a la MPD 102.
[0079] Se puede proporcionar un identificador de perfil en texto simple (por ejemplo, como un nombre simple), o un nombre de dominio invertido. Los nombres simples pueden ser reservados por una autoridad de registro, tal como el 3GPP u otra autoridad de registro. Un perfil puede considerarse una reivindicación y un permiso, en cuanto a que el perfil puede reivindicar que un correspondiente contenido de multimedios es conforme al perfil y da permiso a un lector (por ejemplo, un dispositivo cliente) que implementa ese perfil para leer la MPD, interpretar lo que reconoce e ignorar el material que no entiende.
[0080] Los perfiles pueden describir características tales como, por ejemplo, características de la MPD 102, el uso de la red, formato(s) de medios, códec(s) usado(s), formatos de protección y/o medidas cuantitativas tales como velocidades de bits, tamaños de pantalla y similares. De esta manera, el perfil de la MPD 102 puede proporcionar información indicativa de qué códecs tienen que disponer de soporte con el fin de recuperar datos de la Mp D 102 y/o contenido de multimedios 100. Los perfiles también se pueden describir como "puntos de conformidad". Los perfiles con los que cumple una MPD pueden indicarse en un atributo "Perfiles" de la MPD. Por tanto, un dispositivo cliente puede configurarse para recuperar una parte de la MPD 102 que incluya información relacionada con el atributo "Perfiles" antes de recuperar datos adicionales de la MPD 102. De forma alternativa, los perfiles se pueden indicar como un parámetro en el tipo MIME de la MPD. Por ejemplo, los perfiles "X, Y Z" se pueden señalizar de la siguiente manera:
vídeo/vnd.mpeg.mpd; profiles = "X, Y, Z. "
[0081] En algunos ejemplos, la MPD 102 puede referirse a datos de periodos externos (también denominados periodos remotos). Un período generalmente corresponde a una sección temporal particular del contenido de multimedios. Cada período puede incluir una o más representaciones, tales como las representaciones 110 a 120. Sin embargo, se puede insertar un período externo dentro de, o entre, los períodos de contenido de multimedios 100. El período externo puede incluir datos de multimedios además de los datos de multimedios del contenido de multimedios. Por ejemplo, los períodos externos pueden incluir datos de publicidad.
[0082] Los períodos pueden definirse por su duración, es decir, la hora de inicio del período puede depender de la duración del período anterior. Un dispositivo cliente puede correlacionar periodos externos con una estructura de MPD. Para servicios en vivo, la concatenación de las MPD puede lograrse mediante una creación dinámica de la MPD en el servidor, tal como el dispositivo servidor 60, con procedimientos de actualización adecuados. También se pueden usar otras tecnologías de la Red. Los URL para períodos definidos externamente pueden procesarse en tiempo real para generar un nuevo período que contenga anuncios objetivados para un usuario del dispositivo cliente 40. El dispositivo cliente 40 puede proporcionar información adicional con la solicitud que puede usarse para la objetivación de publicidad, por ejemplo, un identificador de usuario, preferencias de usuario, información demográfica del usuario u otra información.
[0083] La Tabla 1 a continuación ilustra un conjunto ejemplar de información que se puede proporcionar en la MPD 102 para describir uno o más Períodos de contenido de multimedios, y para indicar la presencia de períodos externos:
TABLA 1 - Inf rm i n rí l MPD
Figure imgf000015_0001
[0084] De esta manera, el elemento Periodo de la MPD 102 puede referirse a periodos externos (o remotos), por ejemplo, utilizando URIListaPeriodos. Para el contenido A-Petición, las indicaciones de las duraciones de período pueden ser más útiles para los dispositivos cliente, tales como el dispositivo cliente 40, que las horas de inicio para prestar soporte a períodos externos. Una MPD puede incluir una secuencia de períodos, donde los períodos pueden ser internos o externos. El uso de dichos Períodos remotos, junto con la información específica del usuario, puede admitir la publicidad dirigida al usuario. El dispositivo servidor 60 y/o el dispositivo de preparación de contenido 20 pueden configurarse para generar dinámicamente MPD distintas para cada usuario, o para cada dispositivo cliente. El dispositivo cliente 40, u otro dispositivo, puede concatenar la reproducción de un anuncio objetivado y un servicio en vivo, por ejemplo, utilizando la MPD creada dinámicamente.
[0085] De esta manera, las técnicas de esta divulgación pueden dar soporte a situaciones en las que un proveedor de servicios ofrece contenido a petición a través de 3GPP AHS. El contenido puede incluir varias escenas y, entre cada escena, se puede agregar un anuncio. El anuncio puede diferir para cada usuario. Es decir, se puede agregar publicidad objetivada. Además, cada anuncio puede ser de una duración diferente. Del mismo modo, un proveedor de servicios puede ofrecer un servicio en vivo en particular (por ejemplo, un servicio gratuito). Al acceder al servicio en vivo, el proveedor de servicios puede agregar un anuncio que puede o no estar dirigido a un usuario. La duración del anuncio puede diferir, según el tiempo de acceso, la ubicación de acceso, el usuario y similares. El dispositivo servidor 60 puede configurarse para proporcionar solo el URL del servicio en vivo después de que se haya completado el anuncio, para asegurar que se vea el anuncio.
[0086] La figura 3 es un diagrama de bloques que ilustra elementos de un fichero de vídeo ejemplar 150, que puede corresponder a un segmento de una representación, tal como uno de los segmentos 114, 124 de la figura 2. Cada uno de los segmentos 114, 124 puede incluir datos que son conformes, esencialmente, a la disposición de datos ilustrada en el ejemplo de la figura 3. Del mismo modo, los segmentos de las figuras 4 a 7 expuestos a continuación también pueden ajustarse esencialmente a la estructura del fichero de vídeo 150. Como se ha descrito anteriormente, los ficheros de vídeo, de acuerdo al formato de fichero de medios de base de la ISO, y las ampliaciones del mismo, almacenan los datos en una serie de objetos, denominados "cuadros". En el ejemplo de la figura 3, el fichero de vídeo 150 incluye el cuadro del tipo de fichero (FTYP) 152, el cuadro de película (Mo Ov ) 154, los cuadros de fragmentos de película (MOOF) 162 y el cuadro de acceso aleatorio de fragmento de película (MFRA) 164.
[0087] El cuadro de tipo de fichero (FTYP) 152 describe en general un tipo de fichero para el fichero de vídeo 150. El cuadro de tipo de fichero 152 puede incluir datos que identifiquen una memoria descriptiva que describa un óptimo uso para el fichero de vídeo 150. El cuadro de tipo de fichero 152 se puede colocar antes del cuadro de MOOV 154, de los cuadros de fragmentos de película 162 y del cuadro de MFRA 164.
[0088] En algunos ejemplos, un segmento, tal como el fichero de vídeo 150, puede incluir un cuadro de actualización de MPD (no mostrado) antes del cuadro de FTYP 152. El cuadro de actualización de MPD puede incluir información que indique que se ha de actualizar una MPD correspondiente a una representación que incluye el fichero de vídeo 150, junto con información para actualizar la MPD. Por ejemplo, el cuadro de actualización de MPD puede proporcionar un URI o URL para un recurso a usar para actualizar la MPD. Como otro ejemplo, el cuadro de actualización de MPD puede incluir datos para actualizar la MPD. En algunos ejemplos, el cuadro de actualización de MPD puede seguir inmediatamente a un cuadro de tipo de segmento (STYP) (no mostrado) del fichero de vídeo 150, donde el cuadro de STYP puede definir un tipo de segmento para el fichero de vídeo 150. La figura 7, que se expone con mayor detalle a continuación, proporciona información adicional con respecto al cuadro de actualización de la MPD.
[0089] El cuadro de MOOV 154, en el ejemplo de la figura 3, incluye el cuadro de cabecera de película (MVHD) 156, el cuadro de pista (TRAK) 158 y uno o más cuadros de extensión de película (MVEX) 160. En general, el cuadro de MVHD 156 puede describir las características generales del fichero de vídeo 150. Por ejemplo, el cuadro de MVHD 156 puede incluir datos que describan cuándo se creó originalmente el fichero de vídeo 150, cuándo se modificó por última vez el fichero de vídeo 150, una escala cronológica para el fichero de vídeo 150, una duración de reproducción para el fichero de vídeo 150 u otros datos que describan en general el fichero de vídeo 150.
[0090] El cuadro de TRAK 158 puede incluir datos para una pista del fichero de vídeo 150. El cuadro de TRAK 158 puede incluir un cuadro de cabecera de pista (TKHD) que describa las características de la pista correspondiente al cuadro de TRAK 158. En algunos ejemplos, el cuadro de TRAK 158 puede incluir imágenes de vídeo codificadas, mientras que, en otros ejemplos, los cuadros codificados de vídeo de la pista pueden incluirse en fragmentos de película 162, a los que se puede hacer referencia mediante los datos del cuadro de TRAK 158.
[0091] En algunos ejemplos, el fichero de vídeo 150 puede incluir más de una pista. Por consiguiente, el cuadro de MOOV 154 puede incluir una serie de cuadros de TRAK igual en número a la serie de pistas en el fichero de vídeo 150. El cuadro de TRAK 158 puede describir las características de una pista correspondiente del fichero de vídeo 150. Por ejemplo, el cuadro de TRAK 158 puede describir información temporal y/o espacial para la pista correspondiente. Un cuadro de TRAK similar al cuadro de TRAK 158 del cuadro de MOOV 154 puede describir características de una pista de conjunto de parámetros, cuando la unidad de encapsulación 30 (figura 1) incluya una pista de conjunto de parámetros en un fichero de vídeo, tal como el fichero de vídeo 150. La unidad de encapsulación 30 puede señalizar la presencia de mensajes de SEI de nivel de secuencia en la pista del conjunto de parámetros dentro del cuadro de TRAK que describe la pista de conjunto de parámetros.
[0092] Los cuadros de MVEX 160 pueden describir las características de los correspondientes fragmentos de película 162, por ejemplo, para señalizar que el fichero de vídeo 150 incluye fragmentos de película 162, además de los datos de vídeo incluidos dentro del cuadro de MOOV 154, si los hubiera. En el contexto de la transmisión continua de datos de vídeo, las imágenes de vídeo codificadas pueden incluirse en los fragmentos de película 162 en lugar de en el cuadro de MOOV 154. Por consiguiente, todas las muestras de vídeo codificadas pueden incluirse en fragmentos de película 162, en lugar de en el cuadro de MOOV 154.
[0093] El cuadro de MOOV 154 puede incluir una serie de cuadros de MVEX 160 iguales en número a la serie de los fragmentos de película 162 en el fichero de vídeo 150. Cada uno de los cuadros de MVEX 160 puede describir las características de un correspondiente fragmento de los fragmentos de película 162. Por ejemplo, cada cuadro de MVEX puede incluir un cuadro de un cuadro de cabecera de extensión de película (MEHD) que describa una duración temporal para el correspondiente fragmento de los fragmentos de película 162.
[0094] Como se ha señalado anteriormente, la unidad de encapsulación 30 puede almacenar un conjunto de datos de secuencia en una muestra de vídeo que no incluya datos reales de vídeo codificados. Una muestra de vídeo puede corresponder en general a una unidad de acceso, que es una representación de una imagen codificada en una instancia temporal específica. En el contexto de la AVC, la imagen codificada incluye una o más unidades de NAL de VCL que contienen la información para construir todos los píxeles de la unidad de acceso y otras unidades de NAL no de VCL asociadas, tales como los mensajes de SEI. Por consiguiente, la unidad de encapsulación 30 puede incluir un conjunto de datos de secuencia, que puede incluir mensajes de SEI de nivel de secuencia, en uno de los fragmentos de película 162. La unidad de encapsulación 30 puede señalizar además la presencia de un conjunto de datos de secuencia y/o de mensajes SEI de nivel de secuencia a medida que estén presentes en uno de los fragmentos de película 162 dentro de uno de los cuadros de MVEX 160 correspondiente al fragmento de los fragmentos de película 162.
[0095] Los fragmentos de película 162 pueden incluir una o más imágenes de vídeo codificadas. En algunos ejemplos, los fragmentos de película 162 pueden incluir uno o más grupos de imágenes (GOP), cada uno de los cuales puede incluir una serie de imágenes de vídeo codificadas, por ejemplo, tramas o imágenes. Además, como se ha descrito anteriormente, los fragmentos de película 162 pueden incluir conjuntos de datos de secuencia en algunos ejemplos. Cada uno de los fragmentos de película 162 puede incluir un cuadro de cabecera de fragmento de película (MFHD, no mostrado en la figura 3). El cuadro de MFHD puede describir las características del fragmento de película correspondiente, tales como un número de secuencia para el fragmento de película. Los fragmentos de película 162 pueden incluirse por orden de número de secuencia en el fichero de vídeo 150.
[0096] El cuadro de MFRA 164 puede describir los puntos de acceso aleatorios dentro de los fragmentos de película 162 del fichero de vídeo 150. Esto puede ayudar a realizar modalidades trucadas, tales como realizar búsquedas hasta ubicaciones temporales particulares dentro del fichero de vídeo 150. El cuadro de MFRA 164 es generalmente optativo y no tiene que incluirse necesariamente en los ficheros de vídeo, en algunos ejemplos. Del mismo modo, un dispositivo cliente, tal como el dispositivo cliente 40, no necesariamente tiene que hacer referencia al cuadro de MFRA 164 para decodificar y visualizar correctamente los datos de vídeo del fichero de vídeo 150. El cuadro de MFRA 164 puede incluir una serie de cuadros de acceso aleatorio de fragmento de pista (TFRA) (no mostrado) iguales en número a la serie de pistas del fichero de vídeo 150 o, en algunos ejemplos, igual en número a la serie de pistas de medios (por ejemplo, pistas no de sugerencia) del fichero de vídeo 150.
[0097] En algunos ejemplos, los fragmentos de película 162 pueden incluir una o más imágenes de IDR y/o ODR. Del mismo modo, el cuadro de MFRA 164 puede proporcionar indicaciones de ubicaciones dentro del fichero de vídeo 150 de las imágenes de IDR y ODR. Por consiguiente, se puede formar una subsecuencia temporal del fichero de vídeo 150 a partir de imágenes de IDR y ODR del fichero de vídeo 150. La subsecuencia temporal también puede incluir otras imágenes, tales como tramas P y/o tramas B que dependen de imágenes de IDR y/o ODR. Las tramas y/o fragmentos de la subsecuencia temporal pueden estar dispuestos dentro de los segmentos de manera que las tramas/fragmentos de la subsecuencia temporal que dependen de otras tramas/fragmentos de la subsecuencia puedan decodificarse adecuadamente. Por ejemplo, en la disposición jerárquica de los datos, los datos utilizados para la predicción de otros datos también pueden incluirse en la subsecuencia temporal. Además, los datos pueden organizarse en una subsecuencia continua, de manera que se pueda especificar un único rango de octetos en una solicitud GET parcial para recuperar todos los datos de un segmento particular utilizado para la subsecuencia temporal. Un dispositivo cliente, tal como el dispositivo cliente 40, puede extraer una subsecuencia temporal del fichero de vídeo 150 mediante la determinación de rangos de octetos de fragmentos de películas 162 (o partes de fragmentos de películas 162) correspondientes a imágenes de IDR y/o ODR. Como se expone con mayor detalle a continuación, los ficheros de vídeo tales como el fichero de vídeo 150 pueden incluir un cuadro de índice de subfragmento y/o un cuadro de fragmento de subpista, cualquiera de los cuales, o ambos, pueden incluir datos para extraer una subsecuencia temporal del fichero de vídeo 150.
[0098] La figura 4 es un diagrama conceptual que ilustra un contenido ejemplar de multimedios 200 que incluye la MPD 202 y grupos de representación 210 a 220. El contenido de multimedios 200 puede corresponder al contenido de multimedios 64 (figura 1), o a otro contenido de multimedios almacenado en la memoria 62. En este ejemplo, las representaciones de contenido de multimedios 200 se organizan por grupo de representación. Es decir, las representaciones con un conjunto común de características se pueden formar en un grupo de representación, que provee una adaptación simplificada del ancho de banda de la red.
[0099] En este ejemplo, la MPD 202 incluye las características de representación comunes 204A que incluyen información que describe las características comunes del grupo de representación 210 y las características de representación comunes 204B que describen las características comunes del grupo de representación 220. Las características comunes pueden incluir características de codificación y/o representación de las representaciones, tales como un códec, un perfil y un nivel del códec al que son conformes las representaciones en la representación, resolución de píxeles, velocidad de tramas u otras características de las representaciones.
[0100] De acuerdo a las técnicas de esta divulgación, las características pueden incluir un valor de tipo de texto, un valor de ángulo de cámara y/o un valor de calificación, además de las características expuestas anteriormente. El valor del tipo de texto puede describir características del texto que se mostrará con los datos de vídeo (por ejemplo, texto de subtítulos cerrados). El valor del tipo de texto puede describir, por ejemplo, un idioma del texto, una ubicación en la pantalla en la que se muestra el texto, la fuente y/o el tamaño del texto, u otras características del texto.
[0101] El valor del ángulo de la cámara puede describir una posición de cámara horizontal del mundo real para una cámara utilizada (ya sea física o conceptualmente) para generar datos de vídeo codificados de representaciones correspondientes. Usando los ángulos de la cámara, un dispositivo cliente puede seleccionar datos de dos o más representaciones para que se muestren de manera esencialmente simultánea, por ejemplo, para producir un efecto de reproducción de vídeo tridimensional. Las ubicaciones horizontales de la cámara en el mundo real pueden permitir que el dispositivo cliente seleccione representaciones para aumentar o disminuir la magnitud relativa de la profundidad en la reproducción tridimensional de los datos de vídeo.
[0102] La calificación puede describir la idoneidad del contenido para audiencias particulares. Por ejemplo, en los Estados Unidos, la Asociación de Películas de Estados Unidos define calificaciones que incluyen G, PG, PG-13, R y NC-17. Como otro ejemplo, en el Reino Unido, la Junta Británica de Clasificación de Películas define clasificaciones que incluyen U, PG, 12A, 12, 15, 18 y R18. Como otro ejemplo más, en la República de China (Taiwán), las categorías de películas incluyen una categoría de público general, una categoría protegida, una categoría de orientación paterna y una categoría restringida.
[0103] Al proporcionar las características comunes 204 de los respectivos grupos de representación, por ejemplo, los grupos de representación 210 a 220, un dispositivo cliente (por ejemplo, el dispositivo cliente 40) puede seleccionar un grupo adecuado entre los grupos de representación 210 a 220, basándose, al menos en parte, en las correspondientes características de representación comunes 204. En el ejemplo de la Figura 4, la MPD 202 también incluye las características de representación individuales 206A, 206B, 208A y 208B, que corresponden respectivamente a las representaciones 212A, 212B, 222A, 222B. Las características de representación individuales 206A, 206B, 208A y 208B pueden incluir información representativa de las características de las representaciones 212A, 212B, 222A, 222B, no indicadas por las características de representación comunes 204. Por ejemplo, las características de representación individuales 206A, 206B, 208A y 208B pueden incluir información representativa de las velocidades de bits para las respectivas representaciones de las representaciones 212A, 212B, 222A, 222B.
[0104] Las representaciones de un grupo de representación pueden considerarse mutuamente excluyentes, en cuanto a que pueden representar el mismo contenido (el mismo vídeo, el mismo idioma de audio, etc.) con codificación diferente u otros parámetros. La MPD 202 puede proporcionar información para seleccionar uno de los grupos de representación 210 a 220, por ejemplo, las características de representación comunes 204. Esta información puede incluir información indicativa de si un cliente puede decodificar y representar una representación dada. De esta manera, el dispositivo cliente puede eliminar de la consideración las representaciones que el dispositivo cliente sea incapaz de decodificar y/o representar. Por consiguiente, el dispositivo cliente 40 puede seleccionar un grupo de representación adecuado que puede decodificarse y representarse, y luego seleccionar una representación del grupo en función, por ejemplo, de la disponibilidad del ancho de banda de la red.
[0105] El dispositivo cliente 40 también puede configurarse con las preferencias del usuario, por ejemplo, para la clasificación, el idioma y/o la profundidad. En consecuencia, el dispositivo cliente 40 también puede seleccionar uno o más grupos de representación de manera que los grupos seleccionados se ajusten a las preferencias del usuario. El dispositivo cliente 40 puede entonces seleccionar un subconjunto de grupos de representación disponibles que se puedan reproducir simultáneamente. Cuando el dispositivo cliente 40 solo es capaz de mostrar una vista, el dispositivo cliente 40 puede elegir recuperar datos solo de una representación. Por otro lado, cuando el dispositivo cliente 40 está capacitado para vista estéreo o las múltiples vistas, el dispositivo cliente 40 puede recuperar datos de dos o más representaciones.
[0106] Después de seleccionar uno o más grupos de representación, el dispositivo cliente 40 puede seleccionar representaciones de los grupos de representación en función, por ejemplo, del ancho de banda de red disponible. A medida que cambia el ancho de banda de red disponible (por ejemplo, aumenta o disminuye), el dispositivo cliente 40 puede ajustar las selecciones de representaciones de los grupos de representación para adaptarse a las condiciones cambiantes del ancho de banda de la red. Por supuesto, el dispositivo cliente 40 también puede cambiar las selecciones de representación si cambian las preferencias del usuario o las capacidades del dispositivo (por ejemplo, las capacidades de decodificación y representación).
[0107] Las características de representación comunes 204 pueden corresponder a los elementos del XML de GrupoRepresentación de la MPD 202, en algunos ejemplos. Las características de representación individual pueden corresponder a subelementos de los elementos correspondientes del GrupoRepresentación de la MPD 202, en algunos ejemplos.
[0108] Al agrupar las características comunes de las representaciones entre sí, se pueden lograr varias optimizaciones. Por ejemplo, muchas representaciones pueden tener los mismos valores para varios parámetros. Por lo tanto, señalizar individualmente características en la MPD puede dar como resultado una duplicación significativa en la MPD para señalizar las características individualmente. Muchos dispositivos clientes están configurados para descartar la gran mayoría de la MPD que se recibe. Por lo tanto, podría haber optimización en la parte de la MPD que recibe el dispositivo cliente. Además, si se descarta un Grupo de Representación, es posible que el dispositivo cliente no tenga necesidad de acceder a la información actualmente presente en la MPD (URL, etc.) para la representación o el grupo de representación descartados. El dispositivo cliente también puede evitar actualizaciones innecesarias de los URL, que tienden a actualizarse con frecuencia, por ejemplo, durante la transmisión continua en tiempo real en red de datos de vídeo para sucesos en vivo. Incluso si se eliminaran las redundancias en la MPD, el dispositivo cliente 40 aún tendría que analizar sintácticamente la MPD completa después de la recepción y la reconstrucción, lo que puede desperdiciar una cantidad significativa de tiempo de cálculo.
[0109] La figura 5 es un diagrama conceptual que ilustra otro contenido ejemplar de multimedios 250, en el que los datos de la MPD se separan en varias partes para varios grupos de representación. El contenido de multimedios 250 puede corresponder al contenido de multimedios 64 (figura 1), o a otro contenido de multimedios almacenado en la memoria 62. En particular, un fichero de manifiesto para contenido de multimedios 250 incluye la parte 252 de la MPD, que generalmente incluye datos relacionados con grupos de representación. En este ejemplo, la parte de 252 de la MPD incluye datos de grupo de representación 254A y 254B (datos de grupo de representación 254), que corresponde a los respectivos grupos de representación 270 a 280, como se ilustra mediante flechas que apuntan desde los datos de grupo de representación 254 a los respectivos grupos de representación 270 a 280.
[0110] En este ejemplo, los datos del grupo de representación 254A incluyen las características comunes 256A del grupo de representación y la ubicación de la parte de la MPD para el grupo de representación 258A. Es decir, la ubicación de la parte de la MPD para el grupo de representación 258A indica la ubicación de la parte de la MPD para el grupo de representación 260A. La ubicación de la parte de la MPD para el grupo de representación 258A puede corresponder, por ejemplo, a un URI o URL de la parte de la MPD para el grupo de representación 260A. De manera similar, los datos del grupo de representación 254B incluyen las características comunes 256B del grupo de representación y la ubicación de la parte de la MPD para el grupo de representación 258B, correspondiente a la parte de la MPD para el grupo de representación 260B.
[0111] La parte de la MPD para el grupo de representación 260A incluye información representativa de las características de las representaciones específicas 272A, 272B (representaciones 272) del grupo de representación 270. De manera similar, la parte de MPD para el grupo de representación 260B incluye información representativa de las características de las representaciones específicas 282A, 282B (representaciones 282) del grupo de representación 280.
[0112] De esta manera, un dispositivo cliente, tal como el dispositivo cliente 40, puede determinar un grupo de representación adecuado desde el cual recuperar datos, sin recibir datos de señalización específicos de la representación para representaciones que el dispositivo cliente 40 no recuperaría, decodificaría ni mostraría. En consecuencia, el dispositivo cliente 40 puede evitar recuperar datos en exceso que, de lo contrario, simplemente se descartarían. En particular, después de seleccionar uno o más grupos de representación, incluidas las representaciones que pueden ser decodificadas y representadas por el dispositivo cliente 40, el dispositivo cliente 40 puede recuperar solo las partes de la MPD para los grupos de representación seleccionados, sin recuperar las partes de la MPD para los grupos de representación que no podrían ser adecuadamente decodificados y/o representados por el dispositivo cliente 40.
[0113] Los datos del contenido de multimedios 250, en general, pueden corresponder esencialmente a los elementos respectivos del contenido de multimedios 200. Sin embargo, el contenido de multimedios 250 puede simplificar la descarga jerárquica de datos de la MPD para el contenido de multimedios 250 por parte de los dispositivos clientes. Por ejemplo, en lugar de recuperar un fichero de manifiesto completo, que puede incluir datos de señalización para todas las representaciones, un dispositivo cliente puede simplemente determinar uno o más grupos de representación, luego recuperar las partes de la MPD correspondientes a esos grupos de representación, sin recuperar las partes de la MPD correspondientes a otros grupos de representación que no serían recuperados por el dispositivo cliente (por ejemplo, porque el dispositivo cliente no presta soporte a procedimientos de decodificación y/o representación para decodificar y mostrar las representaciones). De esta manera, los datos del contenido de multimedios 250 pueden mitigar ineficacias de descargas y análisis sintácticos innecesarios.
[0114] La Tabla 2 a continuación proporciona un elemento ejemplar que se puede agregar a una MPD, tal como la MPD 202 de la figura 4 y/o la parte de la MPD 252 de la figura 5, que describe las características de los grupos de representación. Las características comunes de representación 204 (figura 4) y/o las características comunes del grupo de representación 256 pueden formatearse de acuerdo a la estructura de la Tabla 2.
TABLA 2
Figure imgf000019_0002
[0115] El XML a continuación proporciona ejemplos de elementos del Grupo de Representación de una estructura de datos de MPD:
Figure imgf000019_0001
[0116] La Tabla 3 a continuación proporciona un conjunto ejemplar de datos que pueden incluirse para representaciones. Estos datos pueden proporcionarse para representaciones individuales en algunos ejemplos, mientras que en otros ejemplos, todos, o una parte de, los datos pueden proporcionarse para grupos de representación, según, por ejemplo, la Tabla 2 anterior.
TABLA 3
Figure imgf000019_0003
Figure imgf000020_0001
[0117] En algunos ejemplos, los datos para grupos de representación y los datos para representaciones individuales dentro de tales grupos pueden presentarse dentro de una MPD, como la MPD 202, con una relación jerárquica. Es decir, las representaciones individuales se pueden señalizar como elementos subordinados a un correspondiente elemento de grupo de representación de, por ejemplo, la MPD 202. Del mismo modo, para la parte de la MPD 252 y las partes de la MPD para los grupos de representación 260, las características de representación individuales 262, 264 pueden corresponder a elementos subordinados de las características comunes 256 del grupo de representación.
[0118] La figura 6 es un diagrama conceptual que ilustra otro contenido ejemplar de multimedios 300 que puede usarse para prestar soporte a modalidades trucadas. El contenido de multimedios 300 puede corresponder al contenido de multimedios 64 (figura 1), o a otro contenido de multimedios almacenado en la memoria 62. En este ejemplo, la MPD 302 incluye información de representación 304, que puede incluir información de la subsecuencia temporal 306. La información de representación 304 incluye características de la representación 310, en este ejemplo. La representación 310 incluye los segmentos 312A a 312D (segmentos 312). En este ejemplo, cada uno de los segmentos 312 incluye un respectivo cuadro de índice de subfragmento 314 y datos de punto de acceso aleatorio (RAP) 316. En otros ejemplos, algunos segmentos pueden no incluir ningún punto de acceso aleatorio, mientras que algunos segmentos pueden incluir múltiples puntos de acceso aleatorio. Los puntos de acceso aleatorio pueden incluir imágenes de IDR u ODR.
[0119] El dispositivo cliente 40 puede extraer una subsecuencia temporal de la representación 310. Por ejemplo, el dispositivo cliente 40 puede extraer cada uno de los RAP 316 para formar una subsecuencia temporal de la representación 310. Alternativamente, el dispositivo cliente 40 puede recuperar un subconjunto de los RAP 316, tal como los RAP 316A y 316C, o 316A y 316D. Al recuperar y reproducir solo los puntos de acceso aleatorio 316 (o subconjuntos de los mismos), el dispositivo cliente 40 puede reproducir la representación 310 en un modalidad trucada, por ejemplo, avance rápido o rebobinado. De manera similar, el dispositivo cliente 40 puede omitir o buscar uno en particular entre los puntos de acceso aleatorio 316, para comenzar la reproducción desde una posición temporal solicitada.
[0120] El contenido de multimedios puede incluir uno entre la información de la subsecuencia temporal 306 y/o los cuadros de SFIX 314, o ambos, para indicar la información para las modalidades trucadas. La información de subsecuencia temporal 306 puede incluir un elemento de "Modalidad Trucada" de la MPD 302, tal como el definido por la Tabla 4 a continuación:
TABLA 4
Figure imgf000020_0002
Figure imgf000021_0001
[0121] En el ejemplo de la Tabla 4, el elemento Modalidad Trucada incluye un elemento de Subsecuencia Temporal que especifica que una representación correspondiente contiene una subsecuencia temporal a la que se puede acceder mediante rangos de octetos utilizando información de los cuadros de índice de subfragmento 314. Los RAP 316 pueden corresponder a partes de fragmentos de películas, tales como los fragmentos de películas 162 ilustrados en la figura 3.
[0122] Los cuadros de índice de subfragmento 314 pueden describir en general las ubicaciones de rangos de octetos de los puntos de acceso aleatorio 316 de los segmentos correspondientes 312. En general, los cuadros de índice de subfragmento 314 pueden aparecer después de un cuadro de índice de segmento (SIDX) (no mostrado en la Figura 6) de segmentos 312 y proporcionan tamaños de prefijo de fragmento de película para fragmentos de película a los que se hace referencia en el cuadro de índice de segmento inmediatamente anterior. La tabla 5 a continuación proporciona las propiedades de un cuadro ejemplar de SFIX.
TABLA 5 - Pro iedades del cuadro de índice de subfra mento
Figure imgf000021_0002
[0123] El siguiente seudocódigo proporciona una sintaxis ejemplar para los cuadros de índice de subfragmento 314:
aligned(8) class SubFragmentlndexBox
extends FullBox('strf', 0, 0) {
unsigned int(32) fragment_:ount;
unsigned int(8) sub_fragment_count;
for(i=0; i < fragment_count; i++)
for(j=0; j < sub_fragment_count-l; j++)
unsigned int(32) prefix_size;
}
[0124] La siguiente descripción proporciona un conjunto ejemplar de semántica para la sintaxis descrita anteriormente:
el recuento de fragmentos especifica el número de fragmentos para los cuales se especifica información de subfragmentos en este cuadro. Este debe ser igual al número de referencias de fragmentos en el Cuadro de índice de segmento inmediatamente anterior.
recuento_sub_fragmentos especifica el número de subfragmentos por fragmento
tamaño_prefijo especifica el tamaño del prefijo del fragmento i ocupado por el subfragmento j.
[0125] Además, o como alternativa, se puede incluir un cuadro de fragmento de subpista en los segmentos 312. Mientras que el cuadro de índice de subfragmento puede proporcionar información sintáctica que puede ser recuperada por el dispositivo cliente 40 junto con un cuadro de índice de segmento antes de solicitar datos de medios, el cuadro de índice de subfragmento puede proporcionar información para el dispositivo cliente 40, para construir solicitudes de rango de octetos que apunten a subconjuntos de datos de fragmentos, por ejemplo, subcapas temporales.
[0126] El cuadro Fragmento de subpista puede especificar un reordenamiento de los datos de muestra del fragmento de pista, de modo que las muestras de cada fragmento de subpista precedan a todas las muestras que aparecen solo en fragmentos superiores de subpista. Las muestras de un fragmento de subpista que no aparecen en ningún fragmento inferior de subpista pueden colocarse de manera contigua dentro del fichero (por ejemplo, un segmento correspondiente de los segmentos 312) en el mismo orden en que aparecen en el cuadro Racha de Pistas. Esto puede permitir que las muestras se almacenen en el orden de la capa de escalabilidad temporal dentro del fragmento de pista. Cuando este cuadro está presente, puede haber solo un cuadro de Racha de Pistas.
[0127] La tabla 6 describe las propiedades del cuadro de fragmento de subpista:
TABLA 6 - Pro iedades del cuadro de fra mento de sub ista
Figure imgf000022_0001
[0128] El siguiente pseudocódigo ilustra una sintaxis ejemplar para el cuadro de fragmento de subpista:
aligned(8) class SubTrackFragBox
extends FullBox ('strf', 0, 0) {
unsigned int(8) sub_track_count;
unsigned int(16) sample_count[sub_track_count-l];
for(i=0; i < sub_track_count; i++)
{
for (j =0; j < sairtple_count [ i ]; j++)
bit(l) cur_sub_trak_flag;
} reserved_trailing_bits; }
[0129] La siguiente descripción proporciona una semántica ejemplar para la sintaxis ejemplar del cuadro de fragmento de subpista descrito anteriormente:
el recuento_subpistas indica el número de fragmentos de subpista; cuando este cuadro está presente, el recuento de subpistas puede ser igual o mayor que 2.
recuento_muestras[i] indica el número de muestras en el fragmento de subpista con un índice de i 1. Las muestras de un fragmento de subpista se consideran miembros de todos los fragmentos de subpista con valores de índice más pequeños. El número de muestras en el fragmento de subpista 0 es equivalente al número de ceros de la primera cadena de bits en el bucle posterior. El número de muestras en el fragmento de subpista con un índice de recuento_subpistas-1, que es recuento_muestras[recuento_subpistas-1], es igual al número de muestras en el fragmento de pista.
El indicador_subpista_act igual a 1 en la iteración i del bucle externo indica que una muestra pertenece a un fragmento de subpista con un índice de i 1. Este valor igual a 0 en la iteración del bucle externo indica que una muestra pertenece a un fragmento de subpista con un índice más pequeño que i 1. Nota: Es decir, la primera iteración del bucle contiene recuento_muestras[0] indicadores que indican las posiciones de las muestras en el fragmento-subpista 1 que no están también en el fragmento-subpista 0. La segunda iteración del bucle contiene recuento_muestras[1] indicadores que indican las posiciones de las muestras en el fragmento-subpista 2 y no también en el fragmento-subpista 1, etc. El recuento_muestras[recuento_subpista-1] se considera igual al número de muestras en el fragmento de pista
[0130] Las modalidades trucadas pueden aplicarse a varios escenarios diferentes. Por ejemplo, las modalidades trucadas pueden usarse para pausar un servicio temporalmente, reanudar el servicio después de una pausa, rebobinar durante un período de tiempo y/o avanzar rápidamente para pasar a una posición temporal deseada (por ejemplo, después de que se interrumpe la reproducción o para buscar una posición temporal deseada en particular).
[0131] Prestar soporte a las modalidades trucadas utilizando subsecuencias temporales puede proporcionar una serie de ventajas. Por ejemplo, las subsecuencias temporales pueden dar soporte a varias velocidades de trama de manera relativamente fácil. Del mismo modo, la representación que incluye una subsecuencia temporal se puede usar para la reproducción normal, ya que la representación no está limitada a la subsecuencia temporal. Además, la codificación con subsecuencias temporales puede ser sumamente eficaz. Las subsecuencias temporales tampoco necesitan requerir nuevos perfiles o niveles de codificación cualesquiera, pueden reutilizar las representaciones normales, evitan complejidad adicional del cliente, habilitan el alta sencilla de contenido, proporcionan eficacia del ancho de banda, la memoria caché y el almacenamiento, proporcionan flexibilidad a la implementación del cliente para optimizar la experiencia del usuario, para ser comunes entre diferentes operaciones de modalidad trucada, y pueden ser aplicables a un amplio espectro de implementaciones de clientes, y pueden proporcionar una experiencia de usuario relativamente buena en términos de demora de arranque después de la búsqueda, así como buenas velocidades de tramas, capacidad de reacción y otras métricas de ese tipo.
[0132] La figura 7 es un diagrama conceptual que ilustra otro contenido ejemplar de multimedios 350 en el que los segmentos 362A a 362D pueden incluir cuadros de actualización de MPD 364 para indicar que la MPD 352 se ha de actualizar. El contenido de multimedios 350 puede corresponder al contenido de multimedios 64 (figura 1), o a otro contenido de multimedios almacenado en la memoria 62. En general, la MPD 352 incluye información de representación 354 para la representación 360, tal como características de representación 360 y los URI o URL de segmentos 362 de la representación 360. En algunos casos, la representación 360 se puede formar a partir de contenido en vivo, por ejemplo, un suceso deportivo y, por lo tanto, los URI de los segmentos 362 podrían no estar determinados de antemano. Por lo tanto, a medida que se forman los segmentos de la representación 360, uno o más de los segmentos pueden incluir cuadros de actualización de MPD para indicar que la MPD 352 se ha de actualizar.
[0133] Por ejemplo, en la figura 7, el segmento 362A incluye el cuadro de actualización de MPD 364 y los datos de segmento 366A. Los datos de segmento 366A pueden formarse generalmente de acuerdo al fichero de vídeo 150 (figura 3). Sin embargo, el segmento 362A también incluye el cuadro de actualización de MPD 364A. De esta manera, el dispositivo cliente 40 puede actualizar la MPD 352 basándose en los datos del cuadro de actualización de MPD 364A. El cuadro de actualización de MPD 364A puede incluir actualizaciones de la MPD 352, o puede incluir un URI o URL de una actualización para la MPD 352. Debería entenderse que los datos de los cuadros de actualización de MPD 364 no se incluyen necesariamente en los cuadros explícitos. Por ejemplo, los datos que se ajustan esencialmente a los datos de los cuadros de actualización de MPD 364 pueden incluirse en otros cuadros de los segmentos 362, o en una parte de encabezado de los segmentos 362. De esta manera, una "parte" de los segmentos 362 que incluye información de actualización de MPD puede corresponder a una parte de encabezado, a un cuadro de actualización de MPD similar a los cuadros de actualización de MPD 364, o a datos incluidos en otros uno o más cuadros de los segmentos 362.
[0134] De esta manera, después de recuperar los datos del segmento 362A, el dispositivo cliente 40 puede analizar el cuadro de actualización de MPD 364A para actualizar la MPD 352. El dispositivo cliente 40 puede usar entonces la versión actualizada de la MPD 352 para recuperar los segmentos 362B y 362C. Los segmentos 362B y 362C incluyen los datos de segmento 366B, 366C, que de nuevo pueden formatearse de acuerdo al fichero de vídeo 150 de la Figura 3. El dispositivo cliente 40 también puede recuperar datos del segmento 362D. En este ejemplo, el segmento 362D incluye el cuadro de actualización de MPD 364B, que el dispositivo cliente 40 puede usar para realizar otra actualización de la MPD 352, de una manera que se ajuste esencialmente a la primera actualización. Por consiguiente, para recibir segmentos más allá del segmento 362D de la representación 360, el dispositivo cliente 40 puede usar la versión recientemente actualizada de la MPD 352, basándose en las actualizaciones realizadas con respecto a los datos del cuadro de actualización de MPD 364B.
[0135] Un cuadro de actualización de MPD, tal como los cuadros de actualización de MPD 364A, 364B, puede incluir propiedades de acuerdo a la Tabla 7 a continuación:
TABLA 7 - Pr i l r liz ión de MPD
Figure imgf000023_0001
[0136] La siguiente sintaxis se puede usar para definir un cuadro de actualización de MPD, en algunos ejemplos:
aligned(8) class MPDUpdateBox
extends FullBox('mupe') {
unsigned int(3) mpd information flags;
unsigned int(l) new_location_flag;
unsigned int(28) latest_mpd_update_time;
I I I The following are optional fields
string mpd_location }
[0137] A continuación se proporciona un conjunto ejemplar de semántica para la sintaxis ejemplar del cuadro de actualización de MPD:
Los indicadores_información_transmisión_continua contienen el OR lógico de cero o más de los siguientes:
0x00 Actualización de descripción de presentación de medios ahora
0x01 Actualización de descripción de presentación de medios por delante
0x02 Fin de la presentación.
0x03 a 0x07 reservados
indicador_nueva_ubicación: si se fija en 1, entonces la nueva descripción de presentación de medios está disponible en una nueva ubicación especificada en ubicación_mpd.
momento_más_reciente_actualización_mpd: especifica el momento (en ms) en que la actualización de la MPD es necesaria, en relación con el momento de emisión de MPD de la última MPD. El cliente puede optar por actualizar la MPD en cualquier momento a partir de ahora.
ubicación_mpd: está presente si y solo si el indicador_nueva_ubicación está activado y proporciona un localizador uniforme de recursos para la nueva descripción de presentación de medios.
[0138] De esta manera, la señalización en banda a nivel de segmento se puede usar para indicar actualizaciones para la MPD 302. Las actualizaciones pueden proporcionarse en las fronteras de segmento, en algunos ejemplos. Es decir, los cuadros de actualización de MPD 364 pueden aparecer solo en los comienzos o en los extremos de los segmentos respectivos, en varios ejemplos. En algunos ejemplos, si el ancho de banda de las actualizaciones de MPD presenta un problema, el dispositivo servidor 60 (figura 1) puede ofrecer las MPD para ciertas capacidades de dispositivo, de modo que solo se actualicen estas partes. Además, un elemento de MPD de la MPD 302 puede proporcionar un momento de publicación, en tiempo de reloj de pared, de la MPD 302. Esto puede proporcionar un momento único de publicación de MPD, que puede proporcionar un identificador único para la MPD y cuándo se emitió la MPD. También puede proporcionar un anclaje para los procedimientos de actualización. Además, el dispositivo servidor 60 y/o el dispositivo de preparación de contenido 20 pueden optimizar las actualizaciones de MPD utilizando estructuras jerárquicas, por ejemplo, para actualizar solo partes de la MPD 302 que requieren actualizaciones, sin cambiar otras partes de la MPD 302 que no necesitan actualización.
[0139] La inserción de publicidad, tal como la inserción de publicidad objetivada, también se puede realizar utilizando cuadros de actualización de MPD similares a los de la figura 7. Es decir, se puede proporcionar un cuadro de actualización de MPD para dirigir el dispositivo cliente 40 para recuperar datos del contenido de multimedios publicitarios. Esto puede ocurrir durante los tiempos de espera u otras acciones en sucesos deportivos que retrasan la reproducción del juego y, de igual manera, en los tiempos de espera o demoras de acción emocionante para la reproducción de vídeo. Debido a que tales sucesos pueden ocurrir de manera un tanto aleatoria, los momentos en los que se han de insertar los anuncios podrían no conocerse a priori.
[0140] La actualización de la MPD 302 puede ser factible de manera asíncrona para la entrega de segmentos. El dispositivo servidor 60 puede proporcionar garantías al dispositivo cliente 40 de que una MPD no se actualizará durante un lapso determinado. Sin embargo, el dispositivo servidor 60 no necesita señalizar explícitamente cuando la MPD se actualiza antes de un período mínimo de actualización. Difícilmente se puede lograr una reproducción completamente sincrónica, ya que los dispositivos clientes pueden funcionar en diferentes instancias de actualización de MPD. Por lo tanto, los clientes pueden experimentar deriva. El dispositivo servidor 60 y/o el dispositivo de preparación de contenido 20 pueden proporcionar la visualización del desfase temporal.
[0141] La figura 8 es un diagrama de flujo que ilustra un procedimiento ejemplar para proporcionar indicaciones de grupos de representación por parte de un dispositivo servidor, y para seleccionar grupos de representación por parte de un dispositivo cliente, así como una representación individual dentro del grupo de representación seleccionado. Aunque el procedimiento de la figura 8 se describe con respecto al dispositivo servidor 60 y al dispositivo cliente 40, debería entenderse que otros dispositivos pueden implementar técnicas similares a las del procedimiento de la figura 8. Por ejemplo, el dispositivo de preparación de contenido 20, o uno o más dispositivos de red de una red de distribución de contenido, pueden realizar algunas de, o todas, las funciones atribuidas al dispositivo servidor 60.
[0142] El dispositivo servidor 60 puede obtener inicialmente (por ejemplo, crear o recibir desde el dispositivo de preparación de contenido 20) datos para un conjunto de representaciones de contenido de multimedios, donde las representaciones en el conjunto tienen una o más características comunes, así como un fichero de manifiesto para el contenido de multimedios. El conjunto de representaciones puede corresponder a un grupo de representación. El dispositivo servidor 60 puede proporcionar indicaciones de grupos de representación al dispositivo cliente 40 (400). Por ejemplo, el dispositivo servidor 60 puede proporcionar la MPD 202 (figura 4) o la parte de MPD 252 (figura 5) al dispositivo cliente 40. Otras MPD ejemplares de las figuras 2, 6 y 7 también pueden incluir indicaciones de grupos de representación, tales como elementos del XML de grupos de representación. En cualquier caso, el dispositivo cliente 40 puede recibir información que describa características de grupo de representación (402), por ejemplo, del fichero de MPD, o parte del fichero de MPD, recibido desde el dispositivo servidor 60.
[0143] El dispositivo cliente 40 puede analizar entonces las características del grupo de representación para eliminar los grupos de representación que el dispositivo cliente 40 no pueda elegir, o no elegiría, para recuperar, decodificar o representar. Por ejemplo, el dispositivo cliente 40 puede comparar las capacidades de decodificación y representación con las características de los grupos de representación para determinar los grupos de representación inadecuados. Como otro ejemplo, el dispositivo cliente 40 puede comparar las preferencias del usuario en cuanto al idioma, la calificación y la magnitud de la profundidad (por ejemplo, según lo proporcionado por dos o más vistas que tengan ángulos de cámara particulares), para eliminar los grupos de representación indeseables. El dispositivo cliente 40 puede seleccionar entonces un grupo de representación adecuado basándose, al menos parcialmente, en las capacidades de decodificación y representación del dispositivo cliente 40 (404). Por supuesto, debería entenderse que esta selección también puede hacerse (adicional o alternativamente) en función de las preferencias del usuario, como se ha expuesto anteriormente. De esta manera, el dispositivo cliente 40 puede seleccionar un conjunto de representaciones basándose en características comunes para el conjunto de representaciones.
[0144] Después de seleccionar un grupo de representación, el dispositivo cliente 40 puede solicitar datos para una parte de MPD que describa específicamente las representaciones del grupo de representación. En respuesta, el dispositivo servidor 60 puede proporcionar indicaciones de velocidades de bits de representación, entre otras características de representación individuales, en el grupo de representación seleccionado, al dispositivo cliente 40 (406). Por ejemplo, el dispositivo servidor 60 puede enviar datos para una parte específica de las partes de MPD para los grupos de representación 260 (figura 5) al dispositivo cliente 40. En otros ejemplos, el dispositivo cliente 40 puede haber recibido ya una MPD completa para el contenido de multimedios (por ejemplo, la MPD 202 de la figura 4), pero puede analizar en particular partes de la MPD que correspondan específicamente al grupo de representación seleccionado. De esta manera, en algunos ejemplos, la etapa 406 de la figura 8 puede producirse antes de la etapa 402 y/o de la etapa 404.
[0145] En cualquier caso, después de recibir características específicas para las representaciones del grupo de representación seleccionado, incluyendo velocidades de bits para las representaciones (408), el dispositivo cliente 40 puede determinar una magnitud actualmente disponible de ancho de banda de red (410). El dispositivo cliente 40 puede seleccionar entonces una representación del grupo de representación (412) seleccionado, de modo que la representación seleccionada tenga una velocidad de bits que pueda ser asimilada por la magnitud determinada de ancho de banda de red disponible en la actualidad. Las velocidades de bits de las representaciones representan ejemplos de características de codificación de las representaciones individuales en el grupo de representación. El dispositivo cliente 40 puede solicitar entonces datos de la representación seleccionada (414). Por ejemplo, el dispositivo cliente 40 puede construir (por ejemplo, generar y enviar) una solicitud GET de1HTTP para solicitar un segmento de la representación seleccionada. Alternativamente, el dispositivo cliente 40 puede construir un GET parcial del HTTP que especifica un rango de octetos de un segmento de la representación seleccionada. En cualquier caso, el dispositivo cliente 40 puede despachar la petición al dispositivo servidor 60.
[0146] El dispositivo servidor 60 puede recibir la petición y, en respuesta, enviar los datos solicitados al dispositivo cliente 40 (416). Por ejemplo, la unidad de procesamiento de peticiones 70 puede determinar una dirección de red del dispositivo cliente 40 a partir de los datos de la petición recibida, por ejemplo, una dirección del protocolo de Internet (IP) de origen y un puerto de origen de la petición recibida. La unidad de procesamiento de peticiones 70 puede formar paquetes de red que incluyan los datos pedidos y enviar los datos pedidos al dispositivo cliente 40, por ejemplo, destinados a la dirección determinada del IP del dispositivo cliente 40.
[0147] Después de recibir los datos pedidos, el dispositivo cliente 40 puede comenzar a decodificar y a exhibir los datos recibidos (418). Mientras recibe los datos pedidos, el dispositivo cliente 40 puede continuar analizando el ancho de banda de red disponible actualmente y despachando peticiones de representaciones que tengan velocidades de bits que puedan ser asimiladas por la magnitud de ancho de banda de red disponible actualmente (410 a 414). Si cambia la magnitud de ancho de banda de la red, el dispositivo cliente 40 puede conmutar de forma adaptativa a una representación diferente en el grupo de representación seleccionado. Por ejemplo, el dispositivo cliente 40 puede determinar un segmento en una nueva representación correspondiente a la ubicación temporal del último segmento pedido de una representación anterior en el grupo de representación, luego pedir el segmento determinado (o una parte del mismo) en la nueva representación.
[0148] En algunos ejemplos, el dispositivo servidor 60 puede proporcionar una MPD correspondiente a la inserción de publicidad objetivada al dispositivo cliente 40 durante el procedimiento de la figura 8. La MPD puede hacer que el dispositivo cliente 40 recupere datos de multimedios publicitarios dirigidos a un usuario del dispositivo cliente 40. En algunos ejemplos, el dispositivo cliente 40 puede proporcionar además información de usuario al dispositivo servidor 60 para dirigir los datos de medios publicitarios al usuario del dispositivo cliente 40. La información del usuario puede incluir preferencias del usuario, información de identificación del usuario (tal como un Identificador de usuario), información demográfica del usuario u otra información de ese tipo. La inserción de anuncios objetivados puede ocurrir, por ejemplo, antes de la etapa 400 de la figura 8, o después de la etapa 418 y antes de seleccionar una representación posterior, por ejemplo, para un período posterior del contenido de multimedios.
[0149] De esta manera, el procedimiento de la figura 8 representa un ejemplo de un procedimiento que incluye el análisis de al menos una parte de un fichero de manifiesto para contenido de multimedios, en donde la parte del fichero de manifiesto incluye información indicativa de conjuntos de representaciones del contenido de multimedios e información indicativa de características comunes para cada uno de los conjuntos de representaciones, la selección de uno de los conjuntos de representaciones basándose en las características comunes para el conjunto entre los conjuntos de representaciones, la selección de una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones basándose en una o más características de codificación de la representación entre las representaciones del conjunto entre los conjuntos, y la generación de una solicitud de datos de la representación entre las representaciones, basándose en la selección.
[0150] Asimismo, el procedimiento de la figura 8 representa un ejemplo de un procedimiento que incluye obtener un conjunto de representaciones de contenido de multimedios, que tiene una o más características comunes, en donde cada una de las representaciones en el conjunto tiene características de codificación individuales distintas a las características comunes, obtener un fichero de manifiesto para el contenido de multimedios, en donde el fichero de manifiesto incluye información indicativa de las representaciones en el conjunto, información indicativa de las características comunes para el conjunto de representaciones e información indicativa de las características de codificación para cada una de las representaciones en el conjunto, y enviar al menos una parte de la fichero de manifiesto a un dispositivo cliente.
[0151] La figura 9 es un diagrama de flujo que ilustra un procedimiento ejemplar para proporcionar datos representativos de una modalidad trucada por parte de un dispositivo servidor, y para usar los datos por parte de un dispositivo cliente, para recuperar y reproducir los datos de la modalidad trucada del contenido de multimedios. Aunque el procedimiento de la figura 9 se describe con respecto al dispositivo servidor 60 y al dispositivo cliente 40, debería entenderse que otros dispositivos pueden implementar técnicas similares a las del procedimiento de la figura 9. Por ejemplo, el dispositivo de preparación de contenido 20, o uno o más dispositivos de red de una red de distribución de contenido, pueden realizar algunas de, o todas, las funciones atribuidas al dispositivo servidor 60. Además, la selección de una modalidad trucada puede realizarse junto con la selección de un grupo de representación y una representación del grupo de representación, como se describe con respecto a la figura 8 más arriba.
[0152] El dispositivo servidor 60 puede obtener inicialmente (por ejemplo, crear o recibir desde el dispositivo de preparación de contenido 20) datos para una o más representaciones de contenido de multimedios, donde al menos una de las representaciones incluye una subsecuencia temporal, así como un fichero de manifiesto para el contenido de multimedios El fichero de manifiesto puede indicar que la representación incluye una subsecuencia temporal. El dispositivo servidor 60 puede proporcionar indicaciones de representaciones de contenido de multimedios, por ejemplo, características de las representaciones (430), al dispositivo cliente 40. Además, el dispositivo servidor 60 puede proporcionar indicaciones de subsecuencias temporales de una o más de las representaciones (432). Es decir, el dispositivo servidor 60 puede proporcionar información en un fichero de MPD para el contenido de multimedios, indicando que hay subsecuencias temporales disponibles para una o más representaciones del contenido de multimedios. Por ejemplo, el dispositivo servidor 60 puede proporcionar al menos una parte de una MPD, que incluye un elemento en modalidad trucada que tiene un subelemento de subsecuencia temporal, al dispositivo cliente 40, como se describe con respecto a la Figura 6 anterior.
[0153] El dispositivo cliente 40 puede seleccionar una representación basándose en las características de las representaciones del contenido de multimedios (434). Aunque el dispositivo cliente 40 no necesita seleccionar necesariamente una representación con una subsecuencia temporal, para los fines de exposición para ilustrar estas técnicas, se supone, con fines de ejemplo, que el dispositivo cliente 40 selecciona una representación para la cual está disponible una subsecuencia temporal. El dispositivo cliente 40 puede recibir luego una solicitud para usar una modalidad trucada (436). Por ejemplo, el dispositivo cliente 40 puede recibir una selección de una ubicación temporal particular desde la cual comenzar la reproducción, por ejemplo, desde un usuario del dispositivo cliente 40. Alternativamente, el dispositivo cliente 40 puede recibir una solicitud para adelantar o rebobinar los datos de vídeo.
[0154] En respuesta a la solicitud para usar la modalidad trucada, el dispositivo cliente 40 puede determinar si una subsecuencia temporal para la representación está disponible y, si es así, solicitar datos para recuperar al menos una parte de la subsecuencia temporal (438). El dispositivo servidor 60 puede responder a la solicitud proporcionando indicaciones de ubicaciones de datos para la subsecuencia temporal al dispositivo cliente 40 (440). En algunos ejemplos, una parte de la MPD para el contenido de multimedios puede indicar ubicaciones de los datos para la subsecuencia temporal. En otros ejemplos, el dispositivo cliente 40 puede solicitar cuadros de índice de subfragmento y/o cuadros de fragmentos de subpista de segmentos de la representación correspondiente.
[0155] En cualquier caso, el dispositivo cliente 40 puede usar los datos recibidos que incluyen información indicativa de ubicaciones de datos para la subsecuencia temporal, para solicitar datos de la subsecuencia temporal desde las ubicaciones especificadas (442). Por ejemplo, el dispositivo cliente 40 puede determinar ubicaciones (por ejemplo, los URL de segmentos y, posiblemente, rangos de octetos de los segmentos) que incluyan puntos de acceso aleatorio de IDR y/o puntos de acceso aleatorio de ODR. El dispositivo cliente 40 puede luego construir solicitudes GET o GET parcial del HTTP, de datos de la subsecuencia temporal, para reproducir datos de vídeo de acuerdo a la modalidad trucada.
[0156] Después de recibir las solicitudes GET y/o GET parcial del HTTP desde el dispositivo cliente 40, el dispositivo servidor 60 puede proporcionar los datos solicitados al dispositivo cliente 40 (444). Por ejemplo, el dispositivo servidor 60 puede enviar segmentos en respuesta a solicitudes GET del HTTP o fragmentos de medios (o partes de fragmentos de medios) en respuesta a solicitudes GET parciales del HTTP. Después de recibir los datos pedidos, el dispositivo cliente 40 puede decodificar y exhibir los datos recibidos (446). Del mismo modo, el dispositivo cliente 40 puede continuar solicitando datos de la representación (o una representación diferente si la magnitud del ancho de banda disponible de la red cambia).
[0157] De esta manera, el procedimiento de la figura 9 representa un ejemplo de un procedimiento que incluye el análisis de información de un fichero de manifiesto para contenido de multimedios, en donde la información del fichero de manifiesto indica que al menos una representación del contenido de multimedios incluye una subsecuencia temporal, determinando una o más ubicaciones de datos para la subsecuencia temporal y despachando una o más solicitudes de los datos para la subsecuencia temporal.
[0158] Asimismo, el procedimiento de la figura 9 representa un ejemplo de un procedimiento que incluye obtener datos para al menos una representación de contenido de multimedios que incluye una subsecuencia temporal, obtener datos para un fichero de manifiesto para el contenido de multimedios, en donde la información del fichero de manifiesto indica que la al menos una representación del contenido de multimedios incluye la subsecuencia temporal, y enviar al menos una parte del fichero de manifiesto a un dispositivo cliente.
[0159] La Figura 10 es un diagrama de flujo que ilustra un procedimiento ejemplar para proporcionar, mediante un dispositivo servidor, indicaciones de que un fichero de manifiesto, tal como una MPD, ha de actualizarse, y para actualizar una MPD por parte de un dispositivo cliente. Aunque el procedimiento de la figura 10 se describe con respecto al dispositivo servidor 60 y al dispositivo cliente 40, debería entenderse que otros dispositivos pueden implementar técnicas similares a las del procedimiento de la figura 10. Por ejemplo, el dispositivo de preparación de contenido 20, o uno o más dispositivos de red de una red de distribución de contenido, pueden realizar algunas de, o todas, las funciones atribuidas al dispositivo servidor 60. Además, la actualización de una MPD puede realizarse junto con la selección de una modalidad trucada y/o la selección de un grupo de representación y una representación del grupo de representación, como se ha descrito con respecto a las figuras 8 y 9 anteriores.
[0160] En algunos ejemplos, el dispositivo de preparación de contenido 20 puede codificar y encapsular datos de vídeo codificados, capturados durante un suceso en vivo, tal como un suceso deportivo. De esta manera, el dispositivo cliente 40 puede recuperar datos codificados del suceso casi en tiempo real a medida que se produce el suceso. Inicialmente, el dispositivo servidor 60 puede recibir una o más representaciones de contenido de multimedios, correspondiente al suceso en vivo, y proporcionar indicaciones de características para representaciones del contenido de multimedios en una MPD (460). La MPD solo puede describir características y ubicaciones de segmentos hasta una ubicación temporal particular del contenido de multimedios, debido a que el contenido de multimedios se forma a medida que el suceso se filma en vivo.
[0161] El dispositivo cliente 40 puede usar la información de la MPD para seleccionar una representación (462). Usando la MPD actual, el dispositivo cliente 40 puede solicitar segmentos de la representación seleccionada, por ejemplo, hasta la ubicación temporal. En respuesta, el dispositivo servidor 60 puede enviar los segmentos solicitados. Sin embargo, además, el dispositivo servidor 60 puede enviar un segmento que incluye un cuadro de actualización de MPD u otra información que indique que la MPD se ha de actualizar a partir de ese segmento (466).
[0162] En respuesta, el dispositivo cliente 40 puede decodificar y mostrar datos de uno o más de los segmentos recibidos (468). El dispositivo cliente 40 también puede recibir la información que indica que la MPD ha de actualizarse (470). Por ejemplo, el dispositivo cliente 40 puede recibir el último segmento antes de la ubicación temporal en la que ya no se aplica la MPD. El dispositivo cliente 40 puede determinar que el último segmento incluye un cuadro de actualización de MPD, similar a los cuadros de actualización de MPD descritos con respecto a la figura 7.
[0163] Usando el cuadro de actualización, el dispositivo cliente 40 puede solicitar actualizaciones para la MPD (472). Por ejemplo, el dispositivo cliente 40 puede determinar una ubicación de red de actualizaciones para la MPD y solicitar las actualizaciones a partir de la ubicación determinada. El dispositivo servidor 60, u otro dispositivo que almacene actualizaciones para la MPD (por ejemplo, el dispositivo de preparación de contenido 20) puede enviar información indicativa de las actualizaciones para la MPD (474), que el dispositivo cliente 40 puede usar para actualizar la MPD (476). Alternativamente, en algunos ejemplos, el cuadro de actualización de MPD puede incluir información indicativa de las propias actualizaciones de MPD, en cuyo caso el dispositivo cliente 40 puede actualizar la MPD utilizando la información del cuadro de actualización de MPD. En cualquier caso, el dispositivo cliente 40 puede solicitar segmentos a continuación de la ubicación temporal en la que ya no se aplicaba la MPD anterior, utilizando la versión actualizada de la MPD (478). El dispositivo cliente 40 y el dispositivo servidor 60 pueden continuar realizando etapas similares hasta que el dispositivo cliente 40 haya terminado la reproducción del contenido de multimedios.
[0164] En algunos ejemplos, técnicas similares al procedimiento de la figura 10 pueden ser utilizadas para realizar la inserción de publicidad objetivada. Por ejemplo, una MPD actualizada puede incluir una parte que corresponde al contenido de medios publicitarios. El dispositivo cliente 40 puede ser requerido para recuperar y reproducir datos del contenido de medios publicitarios, basándose en la MPD actualizada, para recibir datos de uno o más segmentos del contenido de medios publicitarios, que puede incluir otra MPD actualizada para recuperar los datos de medios posteriores del contenido de medios deseado.
[0165] De esta manera, el procedimiento de la figura 10 representa un ejemplo de un procedimiento que incluye la recuperación de datos de un primer segmento de una representación de contenido de multimedios, de acuerdo a los datos de una copia de un fichero de manifiesto almacenado por un dispositivo cliente, la recuperación de una parte de un segundo segmento de la representación de acuerdo al fichero de manifiesto, en donde el segundo segmento se produce después del primer segmento en la representación, y en donde la parte del segundo segmento indica que el fichero de manifiesto ha de actualizarse, la actualización de la copia del fichero de manifiesto almacenada por el dispositivo cliente, en función de la indicación de que el fichero de manifiesto ha de actualizarse, y la recuperación de datos de medios del segundo segmento de acuerdo al fichero de manifiesto actualizado.
[0166] Asimismo, el procedimiento de la figura 10 representa un ejemplo de un procedimiento que incluye el envío de datos de un fichero de manifiesto de contenido de multimedios a un dispositivo cliente, en donde el fichero de manifiesto incluye información indicativa de un primer segmento de una representación del contenido de multimedios, el envío de al menos una parte del primer segmento de la representación al dispositivo cliente en respuesta a una solicitud del dispositivo cliente, en donde la parte del primer segmento indica que el fichero de manifiesto ha de actualizarse, en donde una versión actualizada del fichero de manifiesto incluye información indicativa de un segundo segmento diferente de la representación, y el envío, en respuesta a una solicitud recibida desde el dispositivo cliente y formada de acuerdo al fichero de manifiesto actualizado, de datos del segundo segmento al dispositivo cliente.
[0167] La figura 11 es un diagrama de flujo que ilustra un procedimiento ejemplar para construir y utilizar datos de un documento de informe de calidad de experiencia (QoE). Aunque el procedimiento de la figura 11 se describe con respecto al dispositivo servidor 60 y al dispositivo cliente 40, debería entenderse que otros dispositivos pueden implementar técnicas similares a las del procedimiento de la figura 11. Por ejemplo, el dispositivo de preparación de contenido 20, o uno o más dispositivos de red de una red de distribución de contenido, pueden realizar algunas de, o todas, las funciones atribuidas al dispositivo servidor 60. Además, proporcionar un informe de QoE al dispositivo servidor 60 y/o al dispositivo de preparación de contenido 20 puede realizarse junto con cualquiera entre la actualización de una MPD, la selección de una modalidad trucada y/o la selección de un grupo de representación, o todas ellas, y una representación del grupo de representación, como se describe con respecto a las figuras 8, 9 y 10 anteriores.
[0168] Inicialmente, el dispositivo servidor 60 puede proporcionar indicaciones de las características de las representaciones de contenido de multimedios en una MPD, al dispositivo cliente 40 (500). Como se ha expuesto anteriormente, el dispositivo cliente 40 puede seleccionar una representación (502), por ejemplo, en función de las capacidades de decodificación y/o representación del dispositivo cliente 40, las preferencias del usuario, el ancho de banda disponible de la red y / u otras características de representaciones del contenido de multimedios. El dispositivo cliente 40 puede entonces solicitar entonces uno o más segmentos de la representación seleccionada (504).
[0169] El dispositivo servidor 60 puede enviar los segmentos solicitados al dispositivo cliente 40 (506). Después de recibir los segmentos pedidos, el dispositivo cliente 40 puede decodificar y exhibir los datos recibidos (508). El dispositivo cliente 40 puede entonces determinar si se han recibido todos los datos de vídeo (510). Si el último segmento de la representación (o el contenido de multimedios en general) no se ha recibido (rama "NO" de 510), el dispositivo cliente 40 puede evaluar nuevamente la magnitud del ancho de banda de red actualmente disponible y seleccionar una representación basándose en este análisis (502) y solicitar segmentos de la representación (504).
[0170] En general, el dispositivo cliente 40 puede almacenar temporalmente los datos e intentar evitar el desborde por exceso o por defecto del almacén temporal mediante la solicitud de datos del contenido de multimedios a partir de una representación que puede ser asimilada por el ancho de banda de red actualmente disponible. Sin embargo, a veces, puede producirse un desborde por exceso o por defecto del almacén temporal, por ejemplo, si las características de codificación reales del contenido de multimedios no coinciden con las características de codificación señalizadas o si no hubo datos suficientes para que el dispositivo cliente 40 realizara una selección adecuada. Otros factores también pueden dar como resultado una calidad de experiencia reducida para un usuario del dispositivo cliente 40. Por lo tanto, después de que el último segmento de la representación (o contenido de multimedios) haya sido recibido y decodificado correctamente (rama "SÍ" de 510), el dispositivo cliente 40 puede proporcionar un informe de calidad de experiencia (QoE) al dispositivo servidor 60.
[0171] Por ejemplo, el dispositivo cliente 40 puede construir el informe para incluir indicaciones de segmentos y representaciones seleccionadas (512). El dispositivo cliente 40 también puede registrar las ocurrencias de desborde por exceso o por defecto del almacén temporal, lo que puede dar lugar a pausas en la reproducción de medios. El dispositivo cliente 40 puede formar un informe que incluye una secuencia de elementos InformePeriodo, que representan los Periodos que se reprodujeron. Un elemento Periodo puede incluir una secuencia de elementos InformeRepresentación, representando cada uno una reproducción continua de una parte de una Representación, y proporcionando los volúmenes inicial y final, tanto en tiempo real como en tiempo de presentación. El informe también puede incluir el tiempo de arranque inicial, siendo este el tiempo desde la solicitud del usuario para ver el contenido hasta el inicio de la reproducción. De esta manera, el documento de informe puede comprender un documento electrónico formateado en lenguaje de marcado extensible (XML), indicativo de representaciones del contenido de multimedios desde el cual el dispositivo cliente recuperó datos de medios del contenido de multimedios.
[0172] El dispositivo cliente 40 puede proporcionar el informe al dispositivo servidor 60 o a otro dispositivo de una red de entrega de contenido, tal como el dispositivo de preparación de contenido 20 o un dispositivo dedicado de recopilación de informes. De esta manera, el dispositivo servidor 60 puede recibir las indicaciones de los segmentos y las representaciones recibidas por el dispositivo cliente 40 (514). El dispositivo servidor 60 puede proporcionar luego las indicaciones, por ejemplo, para el dispositivo de preparación de contenido 20 u otro dispositivo asociado a un proveedor de servicios o ensamblador de medios, para mejorar la preparación de contenido (516). A partir de la información proporcionada por el dispositivo cliente 40, un proveedor de servicios puede determinar exactamente qué se reprodujo, cuándo hubo pausas en la reproducción y cuándo hubo conmutaciones entre las representaciones. De forma alternativa o adicional, el dispositivo cliente 40 puede proporcionar información resumida en forma de la duración total de la reproducción y el número de períodos de reproducción distintos y continuos para cada representación, junto con el número de pausas y la media y la varianza de las duraciones de pausas.
[0173] Utilizando estos datos, el proveedor de servicios puede analizar la calidad de la información de experiencia para una nueva pieza de contenido de multimedios para su transmisión continua, usando la transmisión continua adaptativa del HTTP. El proveedor de servicios puede dejar disponibles una serie de representaciones diferentes con diferentes velocidades de bits, y proporcionar infraestructura de servicios de1HTTP para alojar los ficheros de multimedios, y luego recopilar la retroalimentación para determinar la calidad de las experiencias de visualización de los usuarios. El proveedor de servicios puede usar estos datos para mejorar la calidad del servicio para este, o el futuro, alojamiento de contenido de medios. Las métricas de calidad de experiencia pueden referirse a la visualización real según lo experimentado por un usuario y pueden ser independientes de los algoritmos del cliente utilizados para la planificación de solicitudes del HTTP, decisiones de selección de representación y similares. De esta manera, el proveedor de servicios puede obtener un retrato relativamente preciso de la calidad de la experiencia visual de un usuario para una sesión de visualización específica.
[0174] De esta manera, el procedimiento de la Figura 11 representa un ejemplo de un procedimiento que incluye la construcción de un documento que incluye información indicativa de representaciones de contenido de multimedios, desde el cual se recuperaron los datos de medios, y el envío del documento construido a un servidor desde el cual se recuperaron los datos de medios. El procedimiento de la Figura 11 también representa un ejemplo de un procedimiento que incluye recibir información indicativa de datos recuperados por un dispositivo cliente, que comprende recibir un documento electrónico formateado en lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido de multimedios desde el cual el dispositivo cliente recuperó datos de medios del contenido de multimedios.
[0175] En uno o más ejemplos, las funciones descritas pueden implementarse en hardware, software, firmware o cualquier combinación de los mismos. Si se implementan en software, las funciones pueden almacenarse en, y transmitirse por, un medio legible por ordenador, como una o más instrucciones o código, y ejecutarse mediante una unidad de procesamiento basada en hardware. Los medios legibles por ordenador pueden incluir medios de almacenamiento legibles por ordenador, que correspondan a un medio tangible tal como medios de almacenamiento de datos, o medios de comunicación que incluyan cualquier medio que facilite la transferencia de un programa informático desde un lugar a otro, por ejemplo, de acuerdo a un protocolo de comunicación. De esta manera, los medios legibles por ordenador pueden corresponder en general a (1) medios de almacenamiento tangibles legibles por ordenador que sean no transitorios o (2) un medio de comunicación tal como una señal o una onda portadora. Los medios de almacenamiento de datos pueden ser medios disponibles cualesquiera a los que se pueda acceder desde uno o más ordenadores o uno o más procesadores para recuperar instrucciones, código y/o estructuras de datos para la implementación de las técnicas descritas en esta divulgación. Un producto de programa informático puede incluir un medio legible por ordenador.
[0176] A modo de ejemplo, y no de limitación, tales medios de almacenamiento legibles por ordenador pueden comprender RAM, ROM, EEPROM, CD-ROM u otro almacenamiento de disco óptico, almacenamiento de disco magnético u otros dispositivos de almacenamiento magnético, memoria flash o cualquier otro medio que pueda usarse para almacenar código de programa deseado en forma de instrucciones o estructuras de datos y al que pueda accederse mediante un ordenador. Además, cualquier conexión recibe adecuadamente la denominación de medio legible por ordenador. Por ejemplo, si las instrucciones se transmiten desde una sede de la Red, un servidor u otro origen remoto usando un cable coaxial, un cable de fibra óptica, un par trenzado, una línea de abonado digital (DSL) o tecnologías inalámbricas tales como infrarrojos, radio y microondas, entonces el cable coaxial, el cable de fibra óptica, el par trenzado, la DSL o las tecnologías inalámbricas tales como infrarrojos, radio y microondas se incluyen en la definición de medio. Sin embargo, debería entenderse que los medios de almacenamiento legibles por ordenador y los medios de almacenamiento de datos no incluyen conexiones, ondas portadoras, señales u otros medios transitorios, sino que, en cambio, están orientados a medios de almacenamiento tangibles no transitorios. Los discos, como se usan en el presente documento, incluyen el disco compacto (CD), el disco láser, el disco óptico, el disco versátil digital (DVD), el disco flexible y el disco Blu-ray, donde algunos discos reproducen normalmente los datos magnéticamente, mientras que otros discos reproducen los datos ópticamente con láseres. Las combinaciones de lo anterior también deberían incluirse dentro del alcance de los medios legibles por ordenador.
[0177] Las instrucciones pueden ser ejecutadas por uno o más procesadores, tales como uno o más procesadores de señales digitales (DSP), microprocesadores de propósito general, circuitos integrados específicos de la aplicación (ASIC), formaciones de compuertas programables in situ (FPGA) u otros circuitos lógicos, integrados o discretos, equivalentes. En consecuencia, el término "procesador", como se usa en el presente documento, se puede referir a cualquiera de las estructuras anteriores o a cualquier otra estructura adecuada para la implementación de las técnicas descritas en el presente documento. Además, en algunos aspectos, la funcionalidad descrita en el presente documento se puede proporcionar dentro de módulos de hardware y/o software dedicados, configurados para la codificación y la decodificación, o incorporados en un códec combinado. Además, las técnicas se podrían implementar totalmente en uno o más circuitos o elementos lógicos.
[0178] Las técnicas de la presente divulgación se pueden implementar en una amplia variedad de dispositivos o aparatos, incluidos un equipo manual inalámbrico, un circuito integrado (IC) o un conjunto de IC (por ejemplo, un conjunto de chips). Diversos componentes, módulos o unidades se describen en esta divulgación para enfatizar aspectos funcionales de dispositivos configurados para realizar las técnicas divulgadas, pero no requieren necesariamente su realización mediante diferentes unidades de hardware. En cambio, como se ha descrito anteriormente, diversas unidades se pueden combinar en una unidad de hardware de códec, o ser proporcionadas por un grupo de unidades de hardware interoperativas, incluyendo uno o más procesadores, como se ha descrito anteriormente, conjuntamente con software y/o firmware adecuados. Las siguientes cláusulas son solo descripciones ejemplares, mientras que la invención está definida únicamente por las reivindicaciones adjuntas. Se pueden definir ejemplos mediante las siguientes cláusulas numeradas, en las que las características preferidas se estipulan en cláusulas dependientes:
1. Un procedimiento de recuperación de datos de multimedios, comprendiendo el procedimiento:
analizar al menos una parte de un fichero de manifiesto en busca de contenido de multimedios, en donde la parte del fichero de manifiesto incluye información indicativa de conjuntos de representaciones del contenido de multimedios e información indicativa de características comunes para cada uno de los conjuntos de representaciones;
seleccionar uno entre los conjuntos de representaciones en función de las características comunes para dicho conjunto entre los conjuntos de representaciones;
seleccionar una representación entre las representaciones del conjunto seleccionado entre los conjuntos de representaciones basándose en una o más características de codificación de la representación entre las representaciones del conjunto seleccionado entre los conjuntos; y
generar una solicitud de datos de la representación entre las representaciones en función de la selección.
2. El procedimiento de la cláusula 1, en el que la parte del fichero de manifiesto comprende una primera parte del fichero de manifiesto, y en el que analizar la primera parte del fichero de manifiesto comprende determinar una ubicación de una segunda parte del fichero de manifiesto, comprendiendo además el procedimiento:
recuperar al menos la segunda parte del fichero de manifiesto desde la ubicación;
analizar la al menos segunda parte del fichero de manifiesto para determinar una ubicación de los datos de medios; y
recuperar al menos una parte de los datos de medios desde la ubicación indicada por la segunda parte del fichero de manifiesto.
3. El procedimiento de la cláusula 2, en el que el contenido de multimedios correspondiente al fichero de manifiesto comprende contenido de multimedios solicitado, comprendiendo además el procedimiento:
antes de enviar la solicitud, enviar información del usuario que incluya al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica del usuario;
en el que analizar la al menos parte del fichero de manifiesto comprende seleccionar una representación de un período remoto que comprende contenido de multimedios de publicidad objetivada del fichero de manifiesto recibido en respuesta a la información del usuario;
en donde recuperar la al menos parte de los datos de medios comprende enviar una solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada; y
en donde enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado comprende enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado solo después de enviar la solicitud de los datos de la representación seleccionada del contenido de multimedios de publicidad objetivada.
4. El procedimiento de la cláusula 2, en donde la segunda parte del fichero de manifiesto comprende una parte diferente del fichero de manifiesto que la primera parte, comprendiendo además el procedimiento determinar una ubicación de los datos de la representación entre las representaciones de la segunda parte del fichero de manifiesto.
5. El procedimiento de la cláusula 4, en el que la segunda parte del fichero de manifiesto incluye información indicativa de la característica de codificación para cada una de las representaciones en el conjunto entre los conjuntos de representaciones, y en el que seleccionar la representación entre las representaciones comprende analizar la segunda parte del fichero de manifiesto para determinar las características de codificación de las representaciones en el conjunto entre los conjuntos.
6. El procedimiento de la cláusula 4, que comprende además:
determinar las velocidades de bits para las representaciones en el conjunto entre los conjuntos a partir de la información incluida en la segunda parte del fichero de manifiesto;
en donde seleccionar la representación entre las representaciones comprende:
determinar una magnitud disponible de ancho de banda de red; y
seleccionar la representación entre las representaciones basándose en una comparación de las velocidades de bits para las representaciones en el conjunto entre los conjuntos y la magnitud disponible de ancho de banda de red.
7. El procedimiento de la cláusula 6, que comprende además:
después de enviar la solicitud de los datos de la representación entre las representaciones, determinar que la magnitud disponible del ancho de banda de la red ha cambiado;
seleccionar una segunda representación diferente del conjunto entre los conjuntos de representaciones basándose en una comparación de las velocidades de bits para las representaciones en el conjunto entre los conjuntos y en la magnitud modificada del ancho de banda de red; y
enviar una segunda solicitud de datos de la segunda representación seleccionada del conjunto entre los conjuntos de representaciones, en donde la segunda solicitud especifica datos de un período temporal del contenido de multimedios posterior a un período temporal del contenido de multimedios para los datos de la primera solicitud.
8. El procedimiento de la cláusula 1, en el que las características comunes para el conjunto de representaciones incluyen información indicativa de un idioma para al menos uno de los textos en el conjunto de representaciones y un idioma para los datos de audio en el conjunto de representaciones, y en donde seleccionar el conjunto entre los conjuntos de representaciones comprenden seleccionar el conjunto entre los conjuntos de representaciones que tienen al menos un idioma para texto y audio correspondiente a un idioma indicado por los datos de configuración de un dispositivo cliente.
9. El procedimiento de la cláusula 1, en el que las características comunes para el conjunto de representaciones incluyen información indicativa de una perspectiva de cámara de una escena para el conjunto de representaciones, y en el que seleccionar el conjunto entre los conjuntos de representaciones comprende seleccionar el conjunto entre los conjuntos de representaciones que tengan una perspectiva de cámara correspondiente a una perspectiva de cámara indicada por los datos de configuración de un dispositivo cliente.
10. El procedimiento de la cláusula 1, en el que las características comunes para el conjunto de representaciones incluyen información indicativa de una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia particular, y en donde seleccionar el conjunto entre los conjuntos de representaciones comprende seleccionar el conjunto entre los conjuntos de representaciones que tengan una clasificación correspondiente a una clasificación indicada por los datos de configuración de un dispositivo cliente.
11. El procedimiento de la cláusula 1, que además comprende determinar un perfil al que se adapta el fichero de manifiesto y recuperar el fichero de manifiesto en función del perfil.
12. Un dispositivo para recibir información para datos de multimedios, comprendiendo el dispositivo uno o más procesadores configurados para analizar al menos una parte de un fichero de manifiesto en busca de contenido de multimedios, en donde la parte del fichero de manifiesto incluye información indicativa de conjuntos de representaciones del contenido de multimedios e información indicativa de características comunes para cada uno de los conjuntos de representaciones, seleccionar uno de los conjuntos de representaciones basándose en las características comunes para el conjunto entre los conjuntos de representaciones, seleccionar una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones basándose en una o más características de codificación de la representación entre las representaciones del conjunto entre los conjuntos, y generar una solicitud de datos de la representación entre las representaciones basándose en la selección.
13. El dispositivo de la cláusula 12, en el que la parte del fichero de manifiesto comprende una primera parte de un primer fichero de manifiesto, y en el que los uno o más procesadores están configurados para determinar una ubicación de una segunda parte del fichero de manifiesto, recuperar al menos la segunda parte del fichero de manifiesto de la ubicación, analizar la al menos segunda parte del fichero de manifiesto para determinar una ubicación de los datos de medios y recuperar al menos una parte de los datos de medios desde la ubicación indicada por la segunda parte del fichero de manifiesto.
14. El dispositivo de la cláusula 13, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, y en el que los uno o más procesadores están configurados, antes de enviar la solicitud, para enviar información de usuario que incluya al menos uno entre un identificador de usuario, las preferencias del usuario para los anuncios y la información demográfica del usuario; en el que, para analizar la al menos parte del fichero de manifiesto, los uno o más procesadores están configurados para seleccionar una representación de un período remoto que comprende contenido de multimedios de publicidad objetivada del fichero de manifiesto recibido en respuesta a la información de usuario; en el que, para recuperar la al menos parte de los datos de medios, los uno o más procesadores están configurados para enviar una solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada, y en el que, para enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado, los uno o más procesadores están configurados para enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado, solo después de enviar la solicitud de los datos de la representación seleccionada del contenido de multimedios del anuncio objetivado.
15. El dispositivo de la cláusula 13, en el que la segunda parte del fichero de manifiesto comprende una parte del fichero de manifiesto diferente a la primera parte, y en el que los uno o más procesadores están configurados para determinar una ubicación de los datos de una de las representaciones de la segunda parte del fichero de manifiesto.
16. El dispositivo de la cláusula 15, en donde la segunda parte del fichero de manifiesto incluye información indicativa de la característica de codificación para cada una de las representaciones en el conjunto entre los conjuntos de representaciones, y en donde, para seleccionar la representación entre las representaciones, los uno o más procesadores son configurados para analizar la segunda parte del fichero de manifiesto, para determinar las características de codificación de las representaciones en el conjunto entre los conjuntos.
17. El dispositivo de la cláusula 12, donde las características comunes para el conjunto de representaciones incluyen al menos una entre información indicativa de un idioma para al menos uno entre texto y audio en el conjunto de representaciones, información indicativa de una perspectiva de cámara de una escena para el conjunto de representaciones e información indicativa de una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia particular y en donde, para seleccionar el conjunto entre los conjuntos de representaciones, los uno o más procesadores están configurados para seleccionar el conjunto entre los conjuntos de representaciones que tengan al menos uno entre un idioma para al menos uno entre texto y audio, correspondiente a un idioma indicado por los datos de configuración del dispositivo, una perspectiva de cámara correspondiente a una perspectiva de cámara indicada por datos de configuración del dispositivo y una calificación correspondiente a una calificación indicada por los datos de configuración del dispositivo.
18. El dispositivo de acuerdo a la reivindicación 12, en el que el dispositivo comprende al menos uno entre:
un circuito integrado;
un microprocesador; y
un dispositivo de comunicación inalámbrica que incluye los uno o más procesadores.
19. Un dispositivo para recibir información para datos de multimedios, comprendiendo el dispositivo:
medios para analizar al menos una parte de un fichero de manifiesto en busca de contenido de multimedios, en donde la parte del fichero de manifiesto incluye información indicativa de conjuntos de representaciones del contenido de multimedios e información indicativa de características comunes para cada uno de los conjuntos de representaciones;
medios para seleccionar uno de los conjuntos de representaciones en función de las características comunes para el conjunto entre los conjuntos de representaciones;
medios para seleccionar una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones, basándose en una o más características de codificación de la representación entre las representaciones del conjunto entre los conjuntos; y
medios para generar una solicitud de datos de la representación entre las representaciones basándose en la selección.
20. El dispositivo de la cláusula 19, en el que la parte del fichero de manifiesto comprende una primera parte de un fichero de manifiesto, y en el que los medios para analizar la primera parte del primer fichero de manifiesto comprenden medios para determinar una ubicación de una segunda parte del fichero de manifiesto, comprendiendo además:
medios para recuperar al menos la segunda parte del fichero de manifiesto desde la ubicación;
medios para analizar la al menos segunda parte del fichero de manifiesto para determinar una ubicación de los datos de medios; y
medios para recuperar al menos una parte de los datos de medios desde la ubicación indicada por la segunda parte del fichero de manifiesto.
21. El dispositivo de la cláusula 20, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además:
medios para enviar, antes de enviar la solicitud, información de usuario que incluya al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica de usuario;
en el que los medios para analizar la al menos parte del fichero de manifiesto comprenden seleccionar una representación de un período remoto que comprende contenido de multimedios de publicidad objetivada del fichero de manifiesto recibido en respuesta a la información del usuario;
en donde recuperar la al menos parte de los datos de medios comprende enviar una solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada; y
en donde enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado comprende enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado solo después de enviar la solicitud de los datos de la representación seleccionada del contenido de multimedios de publicidad objetivada.
22. El dispositivo de la cláusula 20, en el que la segunda parte del fichero de manifiesto comprende una parte del fichero de manifiesto diferente a la primera parte, comprendiendo además el procedimiento determinar una ubicación de los datos de la representación entre las representaciones de la segunda parte del fichero de manifiesto.
23. El dispositivo de la cláusula 19, en el que las características comunes para el conjunto de representaciones incluyen al menos una entre información indicativa de un idioma para al menos uno entre texto y audio en el conjunto de representaciones, información indicativa de una perspectiva de cámara de una escena para el conjunto de representaciones e información indicativa de una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia particular y en donde los medios para seleccionar el conjunto entre los conjuntos de representaciones comprenden medios para seleccionar el conjunto entre los conjuntos de representaciones que tengan al menos uno entre un idioma para al menos uno entre texto y audio, correspondiente a un idioma indicado por los datos de configuración del dispositivo, una perspectiva de cámara correspondiente a una perspectiva de cámara indicada por los datos de configuración de un dispositivo cliente y una calificación correspondiente a una calificación indicada por los datos de configuración de un dispositivo cliente.
24. Un producto de programa informático que comprende un medio legible por ordenador que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que un procesador de un dispositivo para recuperar datos de multimedios:
analice al menos una parte de un fichero de manifiesto en busca de contenido de multimedios, en donde la parte del fichero de manifiesto incluye información indicativa de conjuntos de representaciones del contenido de multimedios e información de características comunes para cada uno de los conjuntos de representaciones;
seleccione uno de los conjuntos de representaciones en función de las características comunes para la representación entre los conjuntos de representaciones;
seleccione una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones, en función de las características de codificación de la representación entre las representaciones del conjunto entre los conjuntos; y
envíe una solicitud de datos de la representación entre las representaciones en función de la selección.
25. El producto de programa informático de la cláusula 24, en el que la parte del fichero de manifiesto comprende una primera parte de un primer fichero de manifiesto, y en donde, para analizar la primera parte del primer fichero de manifiesto, las instrucciones hacen que el procesador determine una ubicación de una segundo parte del fichero de manifiesto, comprendiendo además instrucciones que hacen que el procesador:
recupere al menos la segunda parte del fichero de manifiesto desde la ubicación;
analice la al menos segunda parte del fichero de manifiesto para determinar una ubicación de los datos de medios; y
recupere al menos una parte de los datos de medios desde la ubicación indicada por la segunda parte del fichero de manifiesto.
26. El producto de programa informático de la cláusula 25, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además instrucciones que hacen que el procesador:
antes de enviar la solicitud, envíe información de usuario que incluya al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica del usuario;
en el que las instrucciones que hacen que el procesador analice la al menos parte del fichero de manifiesto comprenden instrucciones que hacen que el procesador seleccione una representación de un período remoto que comprende contenido de multimedios de publicidad objetivada del fichero de manifiesto recibido en respuesta a la información del usuario;
en el que las instrucciones que hacen que el procesador recupere la al menos parte de los datos de medios comprenden instrucciones que hacen que el procesador envíe una solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada; y
en el que las instrucciones que hacen que el procesador envíe la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado comprenden instrucciones que hacen que el procesador envíe la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado solo después del envío la solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada.
27. El producto de programa informático de la cláusula 24, en el que las características comunes para el conjunto de representaciones incluyen al menos una entre información indicativa de un idioma para al menos uno entre texto y audio en el conjunto de representaciones, información indicativa de una perspectiva de cámara de una escena para el conjunto de representaciones e información indicativa de una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia en particular, y en donde las instrucciones que hacen que el procesador seleccione el conjunto entre los conjuntos de representaciones comprenden instrucciones que causan que el procesador seleccione el conjunto entre los conjuntos de representaciones que tengan al menos uno entre un idioma para al menos uno entre texto y audio correspondiente a un idioma indicado por los datos de configuración del dispositivo, una perspectiva de cámara correspondiente a una perspectiva de cámara indicada por los datos de configuración del dispositivo y una calificación correspondiente a una calificación indicada por los datos de configuración del dispositivo.
28. Un procedimiento de enviar información para datos de multimedios, comprendiendo el procedimiento:
obtener un conjunto de representaciones de contenido de multimedios que tengan una o más características comunes, en donde cada una de las representaciones en el conjunto tiene características de codificación individuales distintas a las características comunes;
obtener un fichero de manifiesto para el contenido de multimedios, en donde el fichero de manifiesto incluye información indicativa de las representaciones en el conjunto, información indicativa de las características comunes para el conjunto de representaciones e información indicativa de las características de codificación para cada una de las representaciones en el conjunto; y
enviar al menos una parte del fichero de manifiesto a un dispositivo cliente.
29. El procedimiento de la cláusula 28, en donde las características comunes para el conjunto de representaciones incluyen información indicativa de al menos uno entre un idioma para al menos uno entre texto y audio en el conjunto de representaciones, una perspectiva de cámara de una escena para el conjunto de representaciones y una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia en particular.
30. El procedimiento de la cláusula 28, en el que la parte del fichero de manifiesto incluye información que indica una ubicación de una segunda parte del fichero de manifiesto, y en el que la segunda parte del fichero de manifiesto incluye información indicativa de las ubicaciones de los datos de medios, comprendiendo además el procedimiento: recibir, desde el dispositivo cliente, una solicitud de la segunda parte del fichero de manifiesto;
enviar la segunda parte del fichero de manifiesto al dispositivo cliente;
recibir, desde el dispositivo cliente, una solicitud de al menos una parte de los datos de medios procedentes de al menos una de las ubicaciones indicadas por la segunda parte del fichero de manifiesto; y
enviar, en respuesta a la solicitud de la parte de los datos de medios, la parte solicitada de los datos de medios al dispositivo cliente.
31. El procedimiento de la cláusula 30, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además el procedimiento: recibir, desde el dispositivo cliente, información de usuario que incluye al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica del usuario; y
seleccionar datos de medios de publicidad objetivada en función de la información de usuario recibida, en donde los datos seleccionados de medios de publicidad objetivada están asociados a la segunda parte del fichero de manifiesto.
32. El procedimiento de la cláusula 30, en el que la segunda parte del fichero de manifiesto comprende una parte del fichero de manifiesto diferente a la primera parte y en el que los datos de medios comprenden el contenido de multimedios.
33. El procedimiento de la cláusula 28, que comprende además:
enviar, antes de enviar la al menos parte del fichero de manifiesto, información indicativa de un perfil, al que corresponde el fichero de manifiesto, al dispositivo cliente; y
recibir una solicitud del fichero de manifiesto desde el dispositivo cliente después de enviar la información indicativa del perfil.
34. Un dispositivo para enviar información para datos de multimedios, comprendiendo el dispositivo uno o más procesadores configurados para obtener un conjunto de representaciones de contenido de multimedios que tenga una o más características comunes, en donde cada una de las representaciones en el conjunto tiene características de codificación individuales distintas a las características comunes, obtener un fichero de manifiesto para el contenido de multimedios, en donde el fichero de manifiesto incluye información indicativa de las representaciones en el conjunto, información indicativa de las características comunes para el conjunto de representaciones e información indicativa de las características de codificación para cada una de las representaciones en el conjunto, y enviar al menos una parte del fichero de manifiesto a un dispositivo cliente.
35. El dispositivo de la cláusula 34, en el que las características comunes para el conjunto de representaciones incluyen información indicativa de al menos uno entre un idioma para al menos uno entre texto y audio en el conjunto de representaciones, una perspectiva de cámara de una escena para el conjunto de representaciones y una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia en particular.
36. El dispositivo de la cláusula 34, en el que la parte del fichero de manifiesto incluye información que indica una ubicación de una segunda parte del fichero de manifiesto, en el que la segunda parte del fichero de manifiesto incluye información indicativa de ubicaciones de datos de medios, y en el que los uno o más procesadores están configurados para recibir, desde el dispositivo cliente, una solicitud de la segunda parte del fichero de manifiesto, enviar la segunda parte del fichero de manifiesto al dispositivo cliente, recibir, desde el dispositivo cliente, una solicitud de al menos una parte de los datos de medios de al menos una de las ubicaciones indicadas por la segunda parte del fichero de manifiesto, y enviar, en respuesta a la solicitud de la parte de los datos de medios, la parte solicitada de los datos de medios al dispositivo cliente.
37. El dispositivo de la cláusula 36, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, y en el que los uno o más procesadores están configurados para recibir, desde el dispositivo cliente, información de usuario que incluye al menos uno entre un identificador de usuario, preferencias del usuario para anuncios e información demográfica del usuario, y seleccionar datos de medios de publicidad objetivada basándose en la información de usuario recibida, en donde los datos seleccionados de medios de publicidad objetivada están asociados a la segunda parte del fichero de manifiesto.
38. El dispositivo de la cláusula 36, en el que la segunda parte del fichero de manifiesto comprende una parte del fichero de manifiesto diferente a la primera parte, y en el que los datos de medios comprenden el contenido de multimedios.
39. El dispositivo de la cláusula 34, en el que los uno o más procesadores están configurados para enviar, antes de enviar la al menos parte del fichero de manifiesto, información indicativa de un perfil, al que el fichero de manifiesto corresponde, al dispositivo cliente y recibir una solicitud del fichero de manifiesto desde el dispositivo cliente después de enviar la información indicativa del perfil.
40. El dispositivo de la cláusula 34, en el que el dispositivo comprende al menos uno entre:
un circuito integrado;
un microprocesador; y
un dispositivo de comunicación inalámbrica que incluye los uno o más procesadores.
41. Un dispositivo (60) para enviar información para datos de multimedios, comprendiendo el dispositivo:
medios para obtener un conjunto de representaciones de contenido de multimedios que tengan una o más características comunes, en donde cada una de las representaciones en el conjunto tiene características de codificación individuales distintas a las características comunes;
medios para obtener un fichero de manifiesto para el contenido de multimedios, en donde el fichero de manifiesto incluye información indicativa de las representaciones en el conjunto, información indicativa de las características comunes para el conjunto de representaciones e información indicativa de las características de codificación para cada una de las representaciones en el conjunto; y
medios para enviar al menos una parte del fichero de manifiesto a un dispositivo cliente.
42. El dispositivo de la cláusula 41, en donde las características comunes para el conjunto de representaciones incluyen información indicativa de al menos uno entre un idioma para al menos uno entre texto y audio en el conjunto de representaciones, una perspectiva de cámara de una escena para el conjunto de representaciones y una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia en particular.
43. El dispositivo de la cláusula 41, en el que la parte del fichero de manifiesto incluye información que indica una ubicación de una segunda parte del fichero de manifiesto y en el que la segunda parte del fichero de manifiesto incluye información indicativa de las ubicaciones de los datos de medios, comprendiendo además:
medios para recibir, desde el dispositivo cliente, una solicitud de la segunda parte del fichero de manifiesto; medios para enviar la segunda parte del fichero de manifiesto al dispositivo cliente;
medios para recibir, desde el dispositivo cliente, una solicitud de al menos una parte de los datos de medios desde al menos una de las ubicaciones indicadas por la segunda parte del fichero de manifiesto; y
medios para enviar, en respuesta a la solicitud de la parte de los datos de medios, la parte solicitada de los datos de medios al dispositivo cliente.
44. El dispositivo de la cláusula 43, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además:
medios para recibir, desde el dispositivo cliente, información de usuario que incluye al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica de usuario; y
medios para seleccionar datos de medios de publicidad objetivada en función de la información de usuario recibida, en donde los datos seleccionados de medios de publicidad objetivada están asociados al fichero de manifiesto.
45. El dispositivo de la cláusula 43, en el que el fichero de manifiesto y el primer fichero de manifiesto comprenden el mismo fichero de manifiesto, en el que la segunda parte del fichero de manifiesto comprende una parte del fichero de manifiesto diferente a la primera parte y en el que los datos de medios comprenden el contenido de multimedios.
46. Un producto de programa informático que comprende un medio de almacenamiento legible por ordenador que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que un procesador de un dispositivo para proporcionar datos de multimedios:
obtenga un conjunto de representaciones de contenido de multimedios que tengan una o más características comunes, en donde cada una de las representaciones en el conjunto tenga características de codificación individuales distintas a las características comunes;
obtenga un fichero de manifiesto para el contenido de multimedios, en donde el fichero de manifiesto incluye información indicativa de las representaciones en el conjunto, información indicativa de las características comunes para el conjunto de representaciones e información indicativa de las características de codificación para cada una de las representaciones en el conjunto; y
envíe al menos una parte del fichero de manifiesto a un dispositivo cliente.
47. El producto de programa informático de la cláusula 46, en el que las características comunes para el conjunto de representaciones incluyen información indicativa de al menos uno entre un idioma para al menos uno entre texto y audio en el conjunto de representaciones, una perspectiva de cámara de una escena para el conjunto de representaciones y una calificación para el conjunto de representaciones, en donde la calificación describe la idoneidad del contenido para una audiencia en particular.
48. El producto de programa informático de la cláusula 46, en el que la parte del fichero de manifiesto incluye información que indica una ubicación de una segunda parte del fichero de manifiesto, y en el que la segunda parte del fichero de manifiesto incluye información indicativa de las ubicaciones de los datos de medios, que comprende además instrucciones que hacen que el procesador:
reciba, desde el dispositivo cliente, una solicitud de la segunda parte del fichero de manifiesto;
envíe la segunda parte del fichero de manifiesto al dispositivo cliente;
reciba, desde el dispositivo cliente, una solicitud de al menos una parte de los datos de medios desde al menos una de las ubicaciones indicadas por la segunda parte del fichero de manifiesto; y
envíe, en respuesta a la solicitud de la parte de los datos de medios, la parte solicitada de los datos de medios al dispositivo cliente.
49. El producto de programa informático de la cláusula 48, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además instrucciones que hacen que el procesador:
reciba, desde el dispositivo cliente, información de usuario que incluye al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica del usuario; y
seleccione datos de medios de publicidad objetivada basándose en la información de usuario recibida, en donde los datos seleccionados de medios de publicidad objetivada están asociados a la segunda parte del fichero de manifiesto.
50. El producto de programa informático de la cláusula 48, en donde la segunda parte del fichero de manifiesto comprende una parte del fichero de manifiesto diferente a la primera parte, y en donde los datos de medios comprenden el contenido de multimedios.

Claims (1)

  1. REIVINDICACIONES
    i . Un procedimiento de recuperación de datos de multimedios, comprendiendo el procedimiento:
    analizar, por parte de un dispositivo cliente, al menos una primera parte (252) de un fichero de manifiesto en busca de contenido de multimedios, en donde la primera parte del fichero de manifiesto incluye información (254A, 254B) indicativa de conjuntos de representaciones del contenido de multimedios, información (256A, 256B) indicativo de características comunes para cada uno de los conjuntos de representaciones e información (258A, 258B) indicativa de una ubicación de al menos una segunda parte (260A, 260B) del fichero de manifiesto, incluyendo cada segunda parte del fichero de manifiesto información (262A, 262B; 264A, 264B) indicativa de las características de las representaciones individuales (272A, 272B); (282A, 282B) de un conjunto de representaciones (270; 280);
    seleccionar (404), por parte del dispositivo cliente, uno entre los conjuntos de representaciones basándose en las características comunes para el conjunto entre los conjuntos de representaciones; determinar, por parte del dispositivo cliente, la ubicación de la segunda parte del fichero de manifiesto, relacionado con el conjunto seleccionado entre los conjuntos de representaciones;
    recuperar, por parte del dispositivo cliente, la segunda parte del fichero de manifiesto relacionado con el conjunto seleccionado entre los conjuntos de representaciones;
    seleccionar (412), por parte del dispositivo cliente, una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones, basándose en la información (262A; 262B; 264A; 264B) sobre una o más características de codificación de la representación entre las representaciones del conjunto entre los conjuntos incluidos en la segunda parte recuperada del fichero de manifiesto; y
    generar (414), por parte del dispositivo cliente, una solicitud de datos de multimedios de la representación seleccionada entre el conjunto seleccionado de representaciones.
    2. El procedimiento de la reivindicación 1, en el que el contenido de multimedios correspondiente al fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además el procedimiento: antes de enviar la solicitud de datos de multimedios de la representación seleccionada entre el conjunto seleccionado de representaciones, enviar información de usuario que incluya al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica del usuario; en el que analizar la al menos primera parte del fichero de manifiesto comprende seleccionar una representación de un período remoto que comprende contenido de multimedios de publicidad objetivada del fichero de manifiesto recibido en respuesta a la información de usuario;
    en donde recuperar la al menos parte de los datos de medios comprende enviar una solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada; y
    en donde enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado comprende enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado solo después de enviar la solicitud de los datos de la representación seleccionada del contenido de multimedios de publicidad objetivada.
    3. El procedimiento de la reivindicación 1, que comprende además determinar una ubicación de los datos de la representación seleccionada a partir de la segunda parte del fichero de manifiesto.
    4. El procedimiento de la reivindicación 3, que comprende además:
    determinar las velocidades de bits para las representaciones en el conjunto entre los conjuntos a partir de la información incluida en la segunda parte del fichero de manifiesto;
    en donde seleccionar la representación entre las representaciones comprende:
    determinar una magnitud disponible de ancho de banda de red; y
    seleccionar la representación entre las representaciones basándose en una comparación de las velocidades de bits para las representaciones en el conjunto entre los conjuntos y la magnitud disponible de ancho de banda de red.
    5. El procedimiento de acuerdo a la reivindicación 4, que comprende además:
    después de enviar la solicitud de los datos de la representación entre las representaciones, determinar que la magnitud disponible del ancho de banda de la red ha cambiado;
    seleccionar una segunda representación diferente del conjunto entre los conjuntos de representaciones basándose en una comparación de las velocidades de bits para las representaciones en el conjunto entre los conjuntos y en la magnitud modificada del ancho de banda de red; y
    enviar una segunda solicitud de datos de la segunda representación seleccionada del conjunto entre los conjuntos de representaciones, en donde la segunda solicitud especifica datos de un período temporal del contenido de multimedios posterior a un período temporal del contenido de multimedios para los datos de la primera solicitud.
    El procedimiento de la reivindicación 1, que comprende además determinar un perfil al que se ajusta el fichero de manifiesto, y recuperar el fichero de manifiesto en función del perfil.
    Un procedimiento de envío de información para datos de multimedios, comprendiendo el procedimiento: obtener un conjunto de representaciones de contenido de multimedios que tengan una o más características comunes, en donde cada una de las representaciones en el conjunto tiene características de codificación individuales distintas a las características comunes;
    obtener al menos una primera parte de un fichero de manifiesto para el contenido de multimedios, en donde la primera parte incluye información indicativa de conjuntos de representaciones, información indicativa de las características comunes para cada uno de los conjuntos de representaciones e información indicativa de una ubicación de al menos una segunda parte del fichero de manifiesto, incluyendo cada segunda parte del fichero de manifiesto información indicativa de las características de codificación para cada una de las representaciones individuales en un conjunto de representaciones;
    enviar (400) la primera parte del fichero de manifiesto a un dispositivo cliente; y
    en respuesta a la recepción (404), desde un dispositivo cliente, de una indicación de un conjunto seleccionado de representaciones, enviar (406) una segunda parte del fichero de manifiesto relacionado con el conjunto seleccionado de representaciones; y
    en respuesta a la recepción (414), desde un dispositivo cliente, de una indicación de una representación seleccionada en el conjunto seleccionado, enviar (416) los datos de multimedios de la representación seleccionada del conjunto seleccionado.
    Un producto de programa informático que comprende un medio legible por ordenador que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que un procesador de un dispositivo para recuperar datos de multimedios lleve a cabo el procedimiento de acuerdo a una cualquiera de las reivindicaciones 1 a 6. Un dispositivo cliente para recibir información para datos de multimedios, comprendiendo el dispositivo cliente: medios para analizar al menos una primera parte de un fichero de manifiesto en busca del contenido de multimedios, en donde la primera parte del fichero de manifiesto incluye información indicativa de conjuntos de representaciones del contenido de multimedios, información indicativa de características comunes para cada uno de los conjuntos de representaciones e información indicativa de una ubicación de al menos una segunda parte del fichero de manifiesto, incluyendo cada segunda parte del fichero de manifiesto información indicativa de las características de las representaciones individuales de un conjunto de representaciones;
    medios para seleccionar uno de los conjuntos de representaciones en función de las características comunes para el conjunto entre los conjuntos de representaciones;
    medios para determinar la ubicación de la segunda parte del fichero de manifiesto relacionado con la representación seleccionada entre los conjuntos de representaciones;
    medios para recuperar la segunda parte del fichero de manifiesto relacionado con la representación seleccionada entre los conjuntos de representaciones;
    medios para seleccionar una de las representaciones del conjunto seleccionado entre los conjuntos de representaciones, en función de una o más características de codificación de la representación entre las representaciones del conjunto entre los conjuntos incluidos en la segunda parte recuperada del fichero de manifiesto; y
    medios para generar una solicitud de datos de multimedios de la representación seleccionada del conjunto seleccionado de representaciones.
    10. El dispositivo de la reivindicación 9, en el que el contenido de multimedios correspondiente al primer fichero de manifiesto comprende el contenido de multimedios solicitado, comprendiendo además:
    medios para enviar, antes de enviar la solicitud de datos de multimedios de la representación seleccionada del conjunto seleccionado de representaciones, información de usuario que incluye al menos uno entre un identificador de usuario, preferencias de usuario para anuncios e información demográfica de usuario;
    en donde los medios para analizar la al menos primera parte del fichero de manifiesto comprenden seleccionar una representación de un período remoto que comprende contenido de multimedios de publicidad objetivada del fichero de manifiesto recibido en respuesta a la información de usuario;
    en donde recuperar la al menos parte de los datos de medios comprende enviar una solicitud de datos de la representación seleccionada del contenido de multimedios de publicidad objetivada; y
    en donde enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado comprende enviar la solicitud de datos de la representación entre las representaciones del contenido de multimedios solicitado solo después de enviar la solicitud de los datos de la representación seleccionada del contenido de multimedios de publicidad objetivada.
    11. El dispositivo de la reivindicación 9, que comprende además medios para determinar una ubicación de los datos de una de las representaciones de la segunda parte del fichero de manifiesto.
    12. Un dispositivo servidor para enviar información de datos de multimedios, comprendiendo el dispositivo servidor:
    medios para obtener un conjunto de representaciones de contenido de multimedios que tengan una o más características comunes, en el que cada una de las representaciones en el conjunto tiene características de codificación individuales distintas de las características comunes;
    medios para obtener al menos una primera parte de un fichero de manifiesto para el contenido de multimedios, en donde la primera parte incluye información indicativa de conjuntos de representaciones, información indicativa de las características comunes para cada uno de los conjuntos de representaciones e información indicativa de una ubicación de al menos una segunda parte del fichero de manifiesto, incluyendo cada segunda parte del fichero de manifiesto información indicativa de las características de codificación para cada una de las representaciones individuales en un conjunto de representaciones;
    medios para enviar la primera parte del fichero de manifiesto a un dispositivo cliente; medios,
    en respuesta a la recepción desde un dispositivo cliente de una indicación de un conjunto seleccionado de representaciones, para enviar una segunda parte del fichero de manifiesto relacionado con el conjunto seleccionado de representaciones; y
    medios, que responden a la recepción desde un dispositivo cliente de una indicación de una representación seleccionada en el conjunto seleccionado, para enviar los datos multimedios de la representación seleccionada del conjunto seleccionado.
ES11746402T 2010-08-10 2011-08-09 Grupos de representación de medios para transmisión continua en red de datos de vídeo codificados Active ES2726772T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US37239910P 2010-08-10 2010-08-10
US13/205,559 US9456015B2 (en) 2010-08-10 2011-08-08 Representation groups for network streaming of coded multimedia data
PCT/US2011/047121 WO2012021538A1 (en) 2010-08-10 2011-08-09 Media representation groups for network streaming of coded video data

Publications (1)

Publication Number Publication Date
ES2726772T3 true ES2726772T3 (es) 2019-10-09

Family

ID=44509694

Family Applications (3)

Application Number Title Priority Date Filing Date
ES11746404T Active ES2730894T3 (es) 2010-08-10 2011-08-09 Actualizaciones de archivo de manifiesto para la emisión en continuo de red de datos de vídeo codificados
ES11748529T Active ES2730896T3 (es) 2010-08-10 2011-08-09 Modos de reproducción no estándar para la emisión en continuo de red de datos de vídeo codificados
ES11746402T Active ES2726772T3 (es) 2010-08-10 2011-08-09 Grupos de representación de medios para transmisión continua en red de datos de vídeo codificados

Family Applications Before (2)

Application Number Title Priority Date Filing Date
ES11746404T Active ES2730894T3 (es) 2010-08-10 2011-08-09 Actualizaciones de archivo de manifiesto para la emisión en continuo de red de datos de vídeo codificados
ES11748529T Active ES2730896T3 (es) 2010-08-10 2011-08-09 Modos de reproducción no estándar para la emisión en continuo de red de datos de vídeo codificados

Country Status (24)

Country Link
US (3) US8806050B2 (es)
EP (3) EP2604016B1 (es)
JP (5) JP2013538506A (es)
KR (4) KR101709030B1 (es)
CN (3) CN103069769B (es)
AR (3) AR082612A1 (es)
AU (2) AU2011289511B2 (es)
BR (2) BR112013002692B1 (es)
CA (2) CA2807157C (es)
DK (2) DK2604016T3 (es)
ES (3) ES2730894T3 (es)
HK (2) HK1181576A1 (es)
HU (3) HUE044114T2 (es)
IL (2) IL224449A (es)
MY (2) MY155946A (es)
PH (2) PH12013500262A1 (es)
PL (1) PL2604014T3 (es)
PT (1) PT2604014T (es)
RU (2) RU2571375C2 (es)
SG (3) SG187638A1 (es)
SI (2) SI2604016T1 (es)
TW (3) TWI501630B (es)
UA (2) UA107125C2 (es)
WO (3) WO2012021538A1 (es)

Families Citing this family (278)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9240810B2 (en) * 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
CN100539439C (zh) 2002-10-05 2009-09-09 数字方敦股份有限公司 连锁反应码的系统编码和解码系统和方法
CN1954501B (zh) 2003-10-06 2010-06-16 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
KR101205758B1 (ko) 2004-05-07 2012-12-03 디지털 파운튼, 인크. 파일 다운로드 및 스트리밍 시스템
US10862994B1 (en) * 2006-11-15 2020-12-08 Conviva Inc. Facilitating client decisions
KR101292851B1 (ko) 2006-02-13 2013-08-02 디지털 파운튼, 인크. 가변적 fec 오버헤드 및 보호 구간을 이용하는 스트리밍및 버퍼링
US9270414B2 (en) * 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7515710B2 (en) 2006-03-14 2009-04-07 Divx, Inc. Federated digital rights management scheme including trusted systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9209934B2 (en) * 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US20100211690A1 (en) * 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9264780B1 (en) 2006-11-15 2016-02-16 Conviva Inc. Managing synchronized data requests in a content delivery network
US8874725B1 (en) 2006-11-15 2014-10-28 Conviva Inc. Monitoring the performance of a content player
US8751605B1 (en) 2006-11-15 2014-06-10 Conviva Inc. Accounting for network traffic
WO2008086313A1 (en) 2007-01-05 2008-07-17 Divx, Inc. Video distribution system including progressive playback
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
WO2009065137A1 (en) 2007-11-16 2009-05-22 Divx, Inc. Hierarchical and reduced index structures for multimedia files
US10567823B2 (en) 2008-11-26 2020-02-18 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9519772B2 (en) 2008-11-26 2016-12-13 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9986279B2 (en) 2008-11-26 2018-05-29 Free Stream Media Corp. Discovery, access control, and communication with networked services
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
US10334324B2 (en) 2008-11-26 2019-06-25 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US10977693B2 (en) 2008-11-26 2021-04-13 Free Stream Media Corp. Association of content identifier of audio-visual data with additional data through capture infrastructure
US10880340B2 (en) 2008-11-26 2020-12-29 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9026668B2 (en) 2012-05-26 2015-05-05 Free Stream Media Corp. Real-time and retargeted advertising on multiple screens of a user watching television
US8180891B1 (en) 2008-11-26 2012-05-15 Free Stream Media Corp. Discovery, access control, and communication with networked services from within a security sandbox
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
US9961388B2 (en) 2008-11-26 2018-05-01 David Harrison Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements
US9281847B2 (en) * 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8909806B2 (en) * 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US8402494B1 (en) 2009-03-23 2013-03-19 Conviva Inc. Switching content
US9203913B1 (en) * 2009-07-20 2015-12-01 Conviva Inc. Monitoring the performance of a content player
US8566393B2 (en) 2009-08-10 2013-10-22 Seawell Networks Inc. Methods and systems for scalable video chunking
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US8930991B2 (en) * 2009-11-19 2015-01-06 Gregory Philpott System and method for delivering content to mobile devices
US8781122B2 (en) 2009-12-04 2014-07-15 Sonic Ip, Inc. Elementary bitstream cryptographic material transport systems and methods
CA2786812C (en) * 2010-01-18 2018-03-20 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for supporting playout of content
KR101777348B1 (ko) * 2010-02-23 2017-09-11 삼성전자주식회사 데이터 전송 방법 및 장치와 데이터 수신 방법 및 장치
US9032462B2 (en) * 2010-04-19 2015-05-12 Lg Electronics Inc. Method for transmitting/receiving internet-based content and transmitter/receiver using same
KR101702562B1 (ko) 2010-06-18 2017-02-03 삼성전자 주식회사 멀티미디어 스트림 파일의 저장 파일 포맷, 저장 방법 및 이를 이용한 클라이언트 장치
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
KR20120034550A (ko) 2010-07-20 2012-04-12 한국전자통신연구원 스트리밍 컨텐츠 제공 장치 및 방법
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8806050B2 (en) 2010-08-10 2014-08-12 Qualcomm Incorporated Manifest file updates for network streaming of coded multimedia data
KR20120060134A (ko) * 2010-08-16 2012-06-11 삼성전자주식회사 광고 재생 방법 및 장치
US9317622B1 (en) * 2010-08-17 2016-04-19 Amazon Technologies, Inc. Methods and systems for fragmenting and recombining content structured language data content to reduce latency of processing and rendering operations
CN102130936B (zh) * 2010-08-17 2013-10-09 华为技术有限公司 一种在动态http流传输方案中支持时移回看的方法和装置
KR101737325B1 (ko) * 2010-08-19 2017-05-22 삼성전자주식회사 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
WO2012030178A2 (ko) 2010-09-01 2012-03-08 한국전자통신연구원 스트리밍 컨텐츠 제공 장치 및 방법
US9467493B2 (en) 2010-09-06 2016-10-11 Electronics And Telecommunication Research Institute Apparatus and method for providing streaming content
CN102148851B (zh) * 2010-09-30 2014-09-17 华为技术有限公司 一种在动态http流传输中应用父母控制的方法和装置
US9137555B2 (en) * 2010-10-05 2015-09-15 Telefonaktiebolaget L M Ericsson (Publ) Client, a content creator entity and methods thereof for media streaming
US9369512B2 (en) * 2010-10-06 2016-06-14 Electronics And Telecommunications Research Institute Apparatus and method for providing streaming content
KR101206698B1 (ko) * 2010-10-06 2012-11-30 한국항공대학교산학협력단 스트리밍 콘텐츠 제공 장치 및 방법
KR101452669B1 (ko) * 2010-11-02 2014-10-23 엘지전자 주식회사 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치
KR101884725B1 (ko) * 2011-01-04 2018-08-03 톰슨 라이센싱 라이브 미디어 콘텐츠 전송 장치 및 방법
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
WO2012093202A1 (en) * 2011-01-07 2012-07-12 Nokia Corporation Method and apparatus for signaling presentation
JP5529177B2 (ja) 2011-01-19 2014-06-25 ネイバー ビジネス プラットフォーム コーポレーション P2p基盤のストリーミングサービスでバッファリングを行うシステムおよび方法、並びにクライアントでバッファリングを処理するアプリケーションを配布するシステム
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
KR101803970B1 (ko) * 2011-03-16 2017-12-28 삼성전자주식회사 컨텐트를 구성하는 장치 및 방법
CN108366070A (zh) 2011-03-16 2018-08-03 韩国电子通信研究院 用于提供媒体内容的方法和客户端
US9112948B1 (en) 2011-03-18 2015-08-18 Amazon Technologies, Inc. System and method for assignment and switching of content sources for a streaming content session
US9215268B1 (en) 2011-03-18 2015-12-15 Amazon Technologies, Inc. System and method for selection and switching of content sources for a streaming content session
US20120311076A1 (en) * 2011-05-31 2012-12-06 Cisco Technology, Inc. System and method to support different uniform resource locator formats for content on different network elements
PL2721819T3 (pl) 2011-06-16 2024-02-19 Ge Video Compression, Llc Kodowanie entropijne obsługujące przełączanie trybów
US8751807B2 (en) 2011-06-23 2014-06-10 Azuki Systems Inc. Method and system for secure over-the-top live video delivery
US8812662B2 (en) 2011-06-29 2014-08-19 Sonic Ip, Inc. Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content
EP2730072B1 (en) * 2011-07-07 2016-09-07 Telefonaktiebolaget LM Ericsson (publ) Network-capacity optimized adaptive streaming
US8925021B2 (en) 2011-07-11 2014-12-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for trick play in over-the-top video delivery
UA114674C2 (uk) 2011-07-15 2017-07-10 ДЖ.І. ВІДІЕУ КЕМПРЕШН, ЛЛСі Ініціалізація контексту в ентропійному кодуванні
US9955195B2 (en) 2011-08-30 2018-04-24 Divx, Llc Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US8799647B2 (en) 2011-08-31 2014-08-05 Sonic Ip, Inc. Systems and methods for application identification
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
WO2013058684A1 (en) * 2011-10-17 2013-04-25 Telefonaktiebolaget L M Ericsson (Publ) Method for adaptive streaming, local storing and post-storing quality increase of a content file
US10003817B2 (en) 2011-11-07 2018-06-19 Microsoft Technology Licensing, Llc Signaling of state information for a decoded picture buffer and reference picture lists
KR101922552B1 (ko) * 2011-12-06 2018-11-29 삼성전자주식회사 멀티미디어 컨텐트 전송 시스템에서 적응적 스트리밍을 이용한 트래픽 제어 방법 및 장치
US8976814B2 (en) * 2011-12-09 2015-03-10 General Electric Company Method of transporting data from sending node to destination node
US9712874B2 (en) * 2011-12-12 2017-07-18 Lg Electronics Inc. Device and method for receiving media content
US10397294B2 (en) * 2011-12-15 2019-08-27 Dolby Laboratories Licensing Corporation Bandwidth adaptation for dynamic adaptive transferring of multimedia
JP5977838B2 (ja) * 2011-12-29 2016-08-24 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ ネットワーク開始コンテンツ・ストリーミング制御
US8977704B2 (en) * 2011-12-29 2015-03-10 Nokia Corporation Method and apparatus for flexible caching of delivered media
US20130179199A1 (en) 2012-01-06 2013-07-11 Rovi Corp. Systems and methods for granting access to digital content using electronic tickets and ticket tokens
US10218756B2 (en) * 2012-01-06 2019-02-26 Comcast Cable Communications, Llc Streamlined delivery of video content
US8850054B2 (en) * 2012-01-17 2014-09-30 International Business Machines Corporation Hypertext transfer protocol live streaming
US9401968B2 (en) 2012-01-20 2016-07-26 Nokia Techologies Oy Method and apparatus for enabling pre-fetching of media
US20130246578A1 (en) * 2012-03-16 2013-09-19 Cisco Technology, Inc. Adaptive Bit Rate Optimizations When Joining Single Profile Multicast Streams
US20130243079A1 (en) * 2012-03-19 2013-09-19 Nokia Siemens Networks Oy Storage and processing savings when adapting video bit rate to link speed
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
KR101633769B1 (ko) * 2012-04-05 2016-06-27 후아웨이 테크놀러지 컴퍼니 리미티드 Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법
US9438883B2 (en) 2012-04-09 2016-09-06 Intel Corporation Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content
US10148716B1 (en) 2012-04-09 2018-12-04 Conviva Inc. Dynamic generation of video manifest files
US9712887B2 (en) * 2012-04-12 2017-07-18 Arris Canada, Inc. Methods and systems for real-time transmuxing of streaming media content
CA2870801A1 (en) 2012-04-18 2013-10-24 Mdialog Corporation Method and system for inserting content into streaming media at arbitrary time points
WO2013163464A1 (en) * 2012-04-25 2013-10-31 Huawei Technologies Co., Ltd. Systems and methods for controlling client behavior in adaptive streaming
ES2611362T3 (es) 2012-04-25 2017-05-08 Huawei Technologies Co., Ltd. Sistemas y métodos para la integridad y autenticidad de segmentos para transmisión adaptativa en continuo
KR101617340B1 (ko) 2012-04-26 2016-05-02 후아웨이 테크놀러지 컴퍼니 리미티드 어댑티브 스트리밍을 위한 세그먼트 암호화 및 키 유도를 시그널링하기 위한 시스템 및 방법
KR101501344B1 (ko) * 2012-05-02 2015-03-10 삼성전자주식회사 멀티미디어 서비스 송수신 방법 및 장치
US9185470B2 (en) * 2012-05-03 2015-11-10 Nuance Communications, Inc. Remote processing of content
US20130311668A1 (en) * 2012-05-15 2013-11-21 Shahid Akhtar Methods And Systems For Providing Fairness And Stability To Video Streams
US9241166B2 (en) * 2012-06-11 2016-01-19 Qualcomm Incorporated Technique for adapting device tasks based on the available device resources
US9674247B1 (en) * 2012-06-21 2017-06-06 Google Inc. Generating manifest files for digital media items
EP2680527A1 (en) * 2012-06-28 2014-01-01 Alcatel-Lucent Adaptive streaming aware node, encoder and client enabling smooth quality transition
IN2015DN00630A (es) * 2012-06-28 2015-06-26 Azuki Systems Inc
KR20140002447A (ko) * 2012-06-29 2014-01-08 삼성전자주식회사 멀티미디어 시스템에서 적응적 미디어 구조 송수신 방법 및 장치
US10616297B2 (en) 2012-07-09 2020-04-07 Futurewei Technologies, Inc. Content-specific identification and timing behavior in dynamic adaptive streaming over hypertext transfer protocol
US8924582B2 (en) 2012-07-09 2014-12-30 Futurewei Technologies, Inc. Dynamic adaptive streaming over hypertext transfer protocol client behavior framework and implementation of session management
US8495675B1 (en) * 2012-07-30 2013-07-23 Mdialog Corporation Method and system for dynamically inserting content into streaming media
US9125073B2 (en) 2012-08-03 2015-09-01 Intel Corporation Quality-aware adaptive streaming over hypertext transfer protocol using quality attributes in manifest file
WO2014031885A1 (en) 2012-08-22 2014-02-27 Huawei Technologies Co., Ltd. Carriage of iso-bmff event boxes in an mpeg-2 transport stream
US9215269B2 (en) * 2012-08-23 2015-12-15 Amazon Technologies, Inc. Predictive caching for content
US9936267B2 (en) 2012-08-31 2018-04-03 Divx Cf Holdings Llc System and method for decreasing an initial buffering period of an adaptive streaming system
US10182096B1 (en) 2012-09-05 2019-01-15 Conviva Inc. Virtual resource locator
US9246965B1 (en) 2012-09-05 2016-01-26 Conviva Inc. Source assignment based on network partitioning
TWI669952B (zh) 2012-09-18 2019-08-21 美商Vid衡器股份有限公司 使用圖塊及圖塊組的感興趣區域視訊編碼的方法及裝置
US9654802B2 (en) 2012-09-24 2017-05-16 Qualcomm Incorporated Sequence level flag for sub-picture level coded picture buffer parameters
US9313500B2 (en) 2012-09-30 2016-04-12 Microsoft Technology Licensing, Llc Conditional signalling of reference picture list modification information
EP2717562A3 (en) * 2012-10-04 2014-10-01 Samsung Electronics Co., Ltd Apparatus for reproducing recording medium and method thereof
ITTO20120901A1 (it) * 2012-10-15 2014-04-16 Rai Radiotelevisione Italiana Procedimento di codifica e decodifica di un video digitale e relativi dispositivi di codifica e decodifica
JP6236459B2 (ja) * 2012-10-19 2017-11-22 インターデイジタル パテント ホールディングス インコーポレイテッド Httpストリーミングのための多仮説レート適合
DK2920938T3 (en) * 2012-11-13 2017-04-10 ERICSSON TELEFON AB L M (publ) MULTIMEDIA DATA PROCESSING
US9813664B1 (en) * 2012-11-29 2017-11-07 Discovery Communications, Llc Method and system for creating media content
US9143543B2 (en) * 2012-11-30 2015-09-22 Google Technology Holdings LLC Method and system for multi-streaming multimedia data
US9128892B2 (en) * 2012-12-10 2015-09-08 Netflix, Inc. Managing content on an ISP cache
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
WO2014107703A1 (en) * 2013-01-07 2014-07-10 Akamai Technologies, Inc. Connected-media end user experience using an overlay network
US10015437B2 (en) 2013-01-15 2018-07-03 Qualcomm Incorporated Supporting transport diversity and time-shifted buffers for media streaming over a network
JPWO2014112187A1 (ja) * 2013-01-18 2017-01-19 ソニー株式会社 コンテンツサーバ、コンテンツ配信方法、コンテンツ配信システム、クライアント装置、およびコンテンツ取得方法
CN104937583B (zh) * 2013-01-18 2018-09-28 华为技术有限公司 一种对媒体内容进行自适应的方法和装置
US9961415B2 (en) 2013-01-24 2018-05-01 Google Llc Method and system for identifying events in a streaming media program
US9832492B2 (en) * 2013-01-29 2017-11-28 Espial Group Inc. Distribution of adaptive bit rate video streaming via hyper-text transfer protocol
US10440084B2 (en) * 2013-02-06 2019-10-08 Telefonaktiebolaget Lm Ericsson (Publ) Technique for detecting an encoder functionality issue
US9332296B2 (en) 2013-02-12 2016-05-03 Ericsson Ab Content processing for personal over-the-top network video recorder
EP2957087B1 (en) * 2013-02-15 2019-05-08 Nec Corporation Method and system for providing content in content delivery networks
US20140281002A1 (en) * 2013-03-14 2014-09-18 General Instrument Corporation Devices, systems, and methods for managing and adjusting adaptive streaming traffic
US9578333B2 (en) * 2013-03-15 2017-02-21 Qualcomm Incorporated Method for decreasing the bit rate needed to transmit videos over a network by dropping video frames
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
MY177461A (en) * 2013-04-19 2020-09-16 Sony Corp Information processing device, content requesting method, and computer program
CN105379293B (zh) 2013-04-19 2019-03-26 华为技术有限公司 基于超文本协议的动态自适应流媒体中的媒体质量信息指示
US9338209B1 (en) * 2013-04-23 2016-05-10 Cisco Technology, Inc. Use of metadata for aiding adaptive streaming clients
CN104125516B (zh) * 2013-04-24 2018-09-28 华为技术有限公司 媒体文件接收、媒体文件发送方法和装置及系统
US9654758B2 (en) * 2013-04-26 2017-05-16 Microsoft Technology Licensing, Llc Synchronizing external data to video playback
MX359563B (es) * 2013-05-02 2018-10-01 Comcast Cable Communications Man Llc Método y sistema para manipulación eficiente de manifiestos.
US9973559B2 (en) * 2013-05-29 2018-05-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for presenting content streams to a client device
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9380099B2 (en) 2013-05-31 2016-06-28 Sonic Ip, Inc. Synchronizing multiple over the top streaming clients
US9100687B2 (en) 2013-05-31 2015-08-04 Sonic Ip, Inc. Playback synchronization across playback devices
US9444863B2 (en) 2013-06-06 2016-09-13 Intel Corporation Manager for DASH media streaming
US8762564B1 (en) * 2013-07-10 2014-06-24 Mdialog Corporation Method and system for dynamically selecting, assembling and inserting content into stream media
CN105532013B (zh) * 2013-07-12 2018-12-28 佳能株式会社 利用推送消息控制的自适应数据流传输方法
CN105379294A (zh) * 2013-07-15 2016-03-02 华为技术有限公司 基于超文本传输协议的动态自适应流媒体中的远程元素的即时性间接引用
JP6064251B2 (ja) * 2013-07-19 2017-01-25 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動的適応型ハイパーテキスト転送プロトコルストリーミングにおけるメタデータ情報のシグナリングおよび搬送
WO2015013720A1 (en) * 2013-07-26 2015-01-29 Futurewei Technologies Inc. Spatial adaptation in adaptive streaming
JP6327809B2 (ja) * 2013-08-20 2018-05-23 キヤノン株式会社 受信装置、制御方法及びプログラム
US9124947B2 (en) * 2013-09-04 2015-09-01 Arris Enterprises, Inc. Averting ad skipping in adaptive bit rate systems
US9258747B2 (en) 2013-09-17 2016-02-09 Intel IP Corporation User equipment and methods for fast handover failure recovery in 3GPP LTE network
US9955203B2 (en) * 2013-09-24 2018-04-24 Ericsson Ab Recording device and method for efficient network personal video recorder manipulation through adaptive bit rate streaming
US10749761B1 (en) 2013-09-27 2020-08-18 Amazon Technologies, Inc. Unique user session tracking in adaptive bitrate video delivery
US20150095450A1 (en) * 2013-09-30 2015-04-02 Qualcomm Incorporated Utilizing multiple switchable adaptation sets for streaming media data
US9270721B2 (en) 2013-10-08 2016-02-23 Qualcomm Incorporated Switching between adaptation sets during media streaming
US9621919B2 (en) * 2013-10-23 2017-04-11 Qualcomm Incorporated Multi-layer video file format designs
KR101854895B1 (ko) 2013-11-27 2018-05-04 인터디지탈 패튼 홀딩스, 인크 미디어 프리젠테이션 디스크립션
KR101462557B1 (ko) * 2013-12-20 2014-11-27 연세대학교 산학협력단 Dash에서 레프리젠테이션을 재구성하는 방법
ES2613978T3 (es) * 2013-12-26 2017-05-29 Telefonica Digital España, S.L.U. Un método y un sistema para la transmisión por secuencias suave de contenidos de medios en una red de entrega de contenidos distribuida
US9386067B2 (en) 2013-12-30 2016-07-05 Sonic Ip, Inc. Systems and methods for playing adaptive bitrate streaming content by multicast
US10476930B2 (en) * 2014-01-06 2019-11-12 Intel IP Corporation Client/server signaling commands for dash
KR102154800B1 (ko) * 2014-01-10 2020-09-10 삼성전자주식회사 전자 장치의 데이터 스트리밍 방법 및 그 전자 장치
JP2015136057A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
KR101850727B1 (ko) 2014-02-10 2018-04-20 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법 및 방송 신호 수신 방법
US9900362B2 (en) 2014-02-11 2018-02-20 Kiswe Mobile Inc. Methods and apparatus for reducing latency shift in switching between distinct content streams
CN106416198A (zh) * 2014-03-20 2017-02-15 三星电子株式会社 用于使用http流的dash流的方法和装置
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
JP6519586B2 (ja) * 2014-04-11 2019-05-29 ソニー株式会社 受信装置、受信方法、送信装置、及び、送信方法
US9544388B1 (en) 2014-05-09 2017-01-10 Amazon Technologies, Inc. Client-side predictive caching for content
US20150350622A1 (en) 2014-05-30 2015-12-03 Apple Inc. Packed i-frames
US11869038B2 (en) * 2014-06-24 2024-01-09 Arris Enterprises Llc Tracking ad preferences in adaptive bit rate systems
KR20240065194A (ko) * 2014-06-30 2024-05-14 소니그룹주식회사 정보 처리 장치 및 정보 처리 방법
KR20170030490A (ko) * 2014-07-07 2017-03-17 소니 주식회사 수신 장치, 수신 방법, 송신 장치, 및 송신 방법
ES2908859T3 (es) 2014-08-07 2022-05-04 Divx Llc Sistemas y métodos para proteger flujos de bits elementales que incorporan mosaicos codificados independientemente
US9973345B2 (en) 2014-09-10 2018-05-15 Qualcomm Incorporated Calculating and signaling segment availability times for segments of media data
US9894130B2 (en) * 2014-09-23 2018-02-13 Intel Corporation Video quality enhancement
US9681185B2 (en) * 2014-11-04 2017-06-13 Spot Trender Inc. Content utilization paramerization
BR112017010575A2 (pt) * 2014-11-26 2018-02-14 Sony Corp dispositivos e métodos de transmissão e de recepção.
US20160155477A1 (en) * 2014-12-01 2016-06-02 Microsoft Corporation Identifying Media Types
US20160164943A1 (en) * 2014-12-05 2016-06-09 Qualcomm Incorporated Transport interface for multimedia and file transport
US10178043B1 (en) * 2014-12-08 2019-01-08 Conviva Inc. Dynamic bitrate range selection in the cloud for optimized video streaming
US10305955B1 (en) 2014-12-08 2019-05-28 Conviva Inc. Streaming decision in the cloud
US11778014B2 (en) * 2014-12-12 2023-10-03 Arris Enterprises Llc Throttling content download in adaptive HTTP live streaming
US9414130B2 (en) * 2014-12-15 2016-08-09 At&T Intellectual Property, L.P. Interactive content overlay
JP2016116065A (ja) * 2014-12-15 2016-06-23 日本放送協会 受信機、送信機、及びコンテンツの受信方法
CN104484185B (zh) * 2014-12-30 2018-03-20 深圳市大疆创新科技有限公司 固件生成系统及方法
KR20170101983A (ko) * 2014-12-31 2017-09-06 노키아 테크놀로지스 오와이 스케일러블 비디오 코딩 및 디코딩을 위한 계층 간 예측
KR20190097320A (ko) 2015-01-06 2019-08-20 디브이엑스, 엘엘씨 디바이스들간에 콘텐트를 인코딩 및 공유하기 위한 시스템들 및 방법들
US10270823B2 (en) * 2015-02-10 2019-04-23 Qualcomm Incorporated Low latency video streaming
US10715574B2 (en) 2015-02-27 2020-07-14 Divx, Llc Systems and methods for frame duplication and frame extension in live video encoding and streaming
US10412138B2 (en) 2015-03-02 2019-09-10 Qualcomm Incorporated Indication for partial segment
US10659507B2 (en) * 2015-03-02 2020-05-19 Qualcomm Incorporated Indication for partial segment
US10749930B2 (en) 2015-03-02 2020-08-18 Qualcomm Incorporated Indication for partial segment
US9326046B1 (en) 2015-03-19 2016-04-26 Amazon Technologies, Inc. Uninterrupted playback of video streams using lower quality cached files
WO2017004196A1 (en) 2015-06-29 2017-01-05 Vid Scale, Inc. Dash caching proxy application
CN112019883B (zh) * 2015-07-06 2022-04-22 Lg电子株式会社 发送广播信号的方法和设备及接收广播信号的方法和设备
US10652603B2 (en) * 2015-07-09 2020-05-12 Triton Us Vp Acquision Co. Transitioning between broadcast and unicast streams
US10693936B2 (en) * 2015-08-25 2020-06-23 Qualcomm Incorporated Transporting coded audio data
CN107925798B (zh) * 2015-08-28 2021-08-27 索尼公司 接收设备、发送设备和数据处理方法
US11336928B1 (en) 2015-09-24 2022-05-17 Amazon Technologies, Inc. Predictive caching of identical starting sequences in content
US20180324480A1 (en) * 2015-10-08 2018-11-08 Tradecast B.V. Client and Method for Playing a Sequence of Video Streams, and Corresponding Server and Computer Program Product
WO2017063189A1 (en) 2015-10-16 2017-04-20 Qualcomm Incorporated Deadline signaling for streaming of media data
US10516891B2 (en) * 2015-11-20 2019-12-24 Intel Corporation Method and system of reference frame caching for video coding
EP3179688A1 (en) 2015-12-11 2017-06-14 Koninklijke KPN N.V. Updating part of a manifest file on the basis of patches
US9998746B2 (en) * 2016-02-10 2018-06-12 Amazon Technologies, Inc. Video decoder memory optimization
KR20180109890A (ko) * 2016-02-12 2018-10-08 소니 주식회사 정보 처리 장치 및 정보 처리 방법
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
RU2632128C1 (ru) * 2016-04-04 2017-10-02 Общество С Ограниченной Ответственностью "Яндекс" Способ и система загрузки фрагментов изображения на клиентское устройство
US11038938B2 (en) * 2016-04-25 2021-06-15 Time Warner Cable Enterprises Llc Methods and apparatus for providing alternative content
CN105898625B (zh) * 2016-04-29 2020-03-17 腾讯科技(深圳)有限公司 一种播放处理方法及终端设备
US10231001B2 (en) 2016-05-24 2019-03-12 Divx, Llc Systems and methods for providing audio content during trick-play playback
US10129574B2 (en) 2016-05-24 2018-11-13 Divx, Llc Systems and methods for providing variable speeds in a trick-play mode
US10116719B1 (en) 2016-06-03 2018-10-30 Amazon Technologies, Inc. Customized dash manifest
JP6669403B2 (ja) * 2016-06-03 2020-03-18 キヤノン株式会社 通信装置、通信制御方法および通信システム
US10432690B1 (en) 2016-06-03 2019-10-01 Amazon Technologies, Inc. Manifest partitioning
US10104143B1 (en) * 2016-06-03 2018-10-16 Amazon Technologies, Inc. Manifest segmentation
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
US10812558B1 (en) * 2016-06-27 2020-10-20 Amazon Technologies, Inc. Controller to synchronize encoding of streaming content
US10652625B1 (en) 2016-06-27 2020-05-12 Amazon Technologies, Inc. Synchronization of multiple encoders for streaming content
US10652292B1 (en) * 2016-06-28 2020-05-12 Amazon Technologies, Inc. Synchronization of multiple encoders for streaming content
US10389785B2 (en) * 2016-07-17 2019-08-20 Wei-Chung Chang Method for adaptively streaming an audio/visual material
US10367865B2 (en) * 2016-07-28 2019-07-30 Verizon Digital Media Services Inc. Encodingless transmuxing
WO2018028986A1 (en) 2016-08-11 2018-02-15 Telefonaktiebolaget Lm Ericsson (Publ) Improved adaptive bit rate streaming of live content
US11012731B2 (en) 2016-08-11 2021-05-18 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive bitrate streaming of live content with manifest update push notification or long poll
US12244660B2 (en) 2016-09-08 2025-03-04 Divx, Llc Systems and methods for adaptive buffering for digital video streaming
RU2745113C2 (ru) * 2016-09-30 2021-03-22 Лайвстриминг Свиден АБ Буферизация воспроизведения в системе распределения контента, транслируемого в прямом эфире
US10553029B1 (en) 2016-09-30 2020-02-04 Amazon Technologies, Inc. Using reference-only decoding of non-viewed sections of a projected video
US10412412B1 (en) * 2016-09-30 2019-09-10 Amazon Technologies, Inc. Using reference-only decoding of non-viewed sections of a projected video
US10063902B2 (en) 2016-12-22 2018-08-28 Cisco Technology, Inc. ABR network profile selection engine
US10476943B2 (en) * 2016-12-30 2019-11-12 Facebook, Inc. Customizing manifest file for enhancing media streaming
US10440085B2 (en) 2016-12-30 2019-10-08 Facebook, Inc. Effectively fetch media content for enhancing media streaming
EP3563574A1 (en) * 2017-01-02 2019-11-06 Koninklijke KPN N.V. Selectively updating a dynamic manifest file
US10609356B1 (en) 2017-01-23 2020-03-31 Amazon Technologies, Inc. Using a temporal enhancement layer to encode and decode stereoscopic video content
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
CA3106617C (en) * 2017-04-21 2023-11-07 Zenimax Media Inc. Systems and methods for rendering & pre-encoded load estimation based encoder hinting
US10887645B2 (en) * 2017-07-13 2021-01-05 Qualcomm Incorporated Processing media data using file tracks for web content
US10587883B2 (en) * 2017-07-14 2020-03-10 Qualcomm Incorporated Region-wise packing, content coverage, and signaling frame packing for media content
CN113206826B (zh) * 2018-09-28 2022-10-04 华为技术有限公司 传输媒体数据的方法、客户端和服务器
US11381867B2 (en) 2019-01-08 2022-07-05 Qualcomm Incorporated Multiple decoder interface for streamed media data
US11240280B2 (en) * 2019-02-19 2022-02-01 Apple Inc. Low latency streaming media
BR112021018802A2 (pt) 2019-03-21 2021-11-23 Divx Llc Sistemas e métodos para enxames de multimídia
US11831879B2 (en) * 2019-09-20 2023-11-28 Comcast Cable Communications, Llc Methods, systems, and apparatuses for enhanced adaptive bitrate segmentation
US11564018B2 (en) * 2019-10-02 2023-01-24 Qualcomm Incorporated Random access at resync points of dash segments
BR112022016916A2 (pt) 2020-02-28 2022-10-25 Hulu Llc Armazenamento de resoluções de elementos remotos baseado no cliente
EP4111700A4 (en) * 2020-02-28 2024-03-20 Hulu, LLC IDENTIFICATION OF ELEMENTS IN A GROUP TO REPLACE DYNAMIC ELEMENTS
US11166055B2 (en) 2020-03-31 2021-11-02 Viacom International Inc. Fast video stream startup
EP3958579A1 (en) * 2020-08-17 2022-02-23 THEO Technologies A media decoder for decoding streamed media and a method therefor
CN116848840A (zh) * 2020-12-31 2023-10-03 皇家Kpn公司 多视图视频流式传输
EP4469883A1 (en) 2022-01-27 2024-12-04 Cobalt Inc. System and method for multimedia presentation
FR3148347A1 (fr) * 2023-04-26 2024-11-01 Prompteo Procédé de production et diffusion d’une vidéo

Family Cites Families (563)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3909721A (en) 1972-01-31 1975-09-30 Signatron Signal processing system
US4365338A (en) 1980-06-27 1982-12-21 Harris Corporation Technique for high rate digital transmission over a dynamic dispersive channel
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4589112A (en) 1984-01-26 1986-05-13 International Business Machines Corporation System for multiple error detection with single and double bit error correction
US4901319A (en) 1988-03-18 1990-02-13 General Electric Company Transmission system with adaptive interleaving
GB8815978D0 (en) 1988-07-05 1988-08-10 British Telecomm Method & apparatus for encoding decoding & transmitting data in compressed form
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
US7594250B2 (en) 1992-04-02 2009-09-22 Debey Henry C Method and system of program transmission optimization using a redundant transmission sequence
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US5421031A (en) 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5329369A (en) 1990-06-01 1994-07-12 Thomson Consumer Electronics, Inc. Asymmetric picture compression
US5455823A (en) 1990-11-06 1995-10-03 Radio Satellite Corporation Integrated communications terminal
US5164963A (en) 1990-11-07 1992-11-17 At&T Bell Laboratories Coding for digital transmission
US5465318A (en) 1991-03-28 1995-11-07 Kurzweil Applied Intelligence, Inc. Method for generating a speech recognition model for a non-vocabulary utterance
US5379297A (en) 1992-04-09 1995-01-03 Network Equipment Technologies, Inc. Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode
EP0543070A1 (en) 1991-11-21 1993-05-26 International Business Machines Corporation Coding system and method using quaternary codes
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US5371532A (en) 1992-05-15 1994-12-06 Bell Communications Research, Inc. Communications architecture and method for distributing information services
US5425050A (en) 1992-10-23 1995-06-13 Massachusetts Institute Of Technology Television transmission system using spread spectrum and orthogonal frequency-division multiplex
US5372532A (en) 1993-01-26 1994-12-13 Robertson, Jr.; George W. Swivel head cap connector
EP0613249A1 (en) 1993-02-12 1994-08-31 Altera Corporation Custom look-up table with reduced number of architecture bits
DE4316297C1 (de) 1993-05-14 1994-04-07 Fraunhofer Ges Forschung Frequenzanalyseverfahren
AU665716B2 (en) 1993-07-05 1996-01-11 Mitsubishi Denki Kabushiki Kaisha A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame
US5590405A (en) 1993-10-29 1996-12-31 Lucent Technologies Inc. Communication technique employing variable information transmission
JP2576776B2 (ja) 1993-11-10 1997-01-29 日本電気株式会社 パケット伝送方法・パケット伝送装置
US5517508A (en) 1994-01-26 1996-05-14 Sony Corporation Method and apparatus for detection and error correction of packetized digital data
CA2140850C (en) 1994-02-24 1999-09-21 Howard Paul Katseff Networked system for display of multimedia presentations
US5566208A (en) 1994-03-17 1996-10-15 Philips Electronics North America Corp. Encoder buffer having an effective size which varies automatically with the channel bit-rate
US5432787A (en) 1994-03-24 1995-07-11 Loral Aerospace Corporation Packet data transmission system with adaptive data recovery method
US5757415A (en) 1994-05-26 1998-05-26 Sony Corporation On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks are re-arranged for storage to data storage means
US5802394A (en) 1994-06-06 1998-09-01 Starlight Networks, Inc. Method for accessing one or more streams in a video storage system using multiple queues and maintaining continuity thereof
US5739864A (en) 1994-08-24 1998-04-14 Macrovision Corporation Apparatus for inserting blanked formatted fingerprint data (source ID, time/date) in to a video signal
US5568614A (en) 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5668948A (en) 1994-09-08 1997-09-16 International Business Machines Corporation Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports
US5926205A (en) 1994-10-19 1999-07-20 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
US5659614A (en) 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US5617541A (en) 1994-12-21 1997-04-01 International Computer Science Institute System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionalized priority level and received fractionalized packets
JP3614907B2 (ja) 1994-12-28 2005-01-26 株式会社東芝 データ再送制御方法及びデータ再送制御システム
US6079042A (en) 1995-04-27 2000-06-20 The Trustees Of The Stevens Institute Of Technology High integrity transport for time critical multimedia networking applications
US5835165A (en) 1995-06-07 1998-11-10 Lsi Logic Corporation Reduction of false locking code words in concatenated decoders
US5805825A (en) 1995-07-26 1998-09-08 Intel Corporation Method for semi-reliable, unidirectional broadcast information services
US6079041A (en) 1995-08-04 2000-06-20 Sanyo Electric Co., Ltd. Digital modulation circuit and digital demodulation circuit
US5754563A (en) 1995-09-11 1998-05-19 Ecc Technologies, Inc. Byte-parallel system for implementing reed-solomon error-correcting codes
JP4017665B2 (ja) * 1995-09-29 2007-12-05 ローム・アンド・ハース・カンパニー 木材防腐剤
KR0170298B1 (ko) 1995-10-10 1999-04-15 김광호 디지탈 비디오 테이프의 기록 방법
US5751336A (en) 1995-10-12 1998-05-12 International Business Machines Corporation Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems
JP3305183B2 (ja) 1996-01-12 2002-07-22 株式会社東芝 ディジタル放送受信端末装置
US6012159A (en) 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5852565A (en) 1996-01-30 1998-12-22 Demografx Temporal and resolution layering in advanced television
US5936659A (en) 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
US5903775A (en) 1996-06-06 1999-05-11 International Business Machines Corporation Method for the sequential transmission of compressed video information at varying data rates
US5745504A (en) 1996-06-25 1998-04-28 Telefonaktiebolaget Lm Ericsson Bit error resilient variable length code
US5940863A (en) 1996-07-26 1999-08-17 Zenith Electronics Corporation Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators
US5936949A (en) 1996-09-05 1999-08-10 Netro Corporation Wireless ATM metropolitan area network
KR100261706B1 (ko) 1996-12-17 2000-07-15 가나이 쓰도무 디지탈방송신호의 수신장치와 수신 및 기록재생장치
US6044485A (en) 1997-01-03 2000-03-28 Ericsson Inc. Transmitter method and transmission system using adaptive coding based on channel characteristics
US6011590A (en) 1997-01-03 2000-01-04 Ncr Corporation Method of transmitting compressed information to minimize buffer space
US6141053A (en) 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
US5946357A (en) 1997-01-17 1999-08-31 Telefonaktiebolaget L M Ericsson Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
EP0854650A3 (en) 1997-01-17 2001-05-02 NOKIA TECHNOLOGY GmbH Method for addressing a service in digital video broadcasting
US6014706A (en) 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
KR20000075982A (ko) 1997-03-07 2000-12-26 다카노 야스아키 디지탈 방송 수신기 및 디스플레이 장치
US6115420A (en) 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
DE19716011A1 (de) 1997-04-17 1998-10-22 Abb Research Ltd Verfahren und Vorrichtung zur Informationsübertragung über Stromversorgungsleitungen
US6226259B1 (en) 1997-04-29 2001-05-01 Canon Kabushiki Kaisha Device and method for transmitting information device and method for processing information
US5970098A (en) 1997-05-02 1999-10-19 Globespan Technologies, Inc. Multilevel encoder
US5844636A (en) 1997-05-13 1998-12-01 Hughes Electronics Corporation Method and apparatus for receiving and recording digital packet data
JPH1141211A (ja) 1997-05-19 1999-02-12 Sanyo Electric Co Ltd ディジタル変調回路と変調方法、ディジタル復調回路と復調方法
JP4110593B2 (ja) 1997-05-19 2008-07-02 ソニー株式会社 信号記録方法及び信号記録装置
EP0933768A4 (en) 1997-05-19 2000-10-04 Sanyo Electric Co DIGITAL MODULATION AND DEMODULATION
US6128649A (en) 1997-06-02 2000-10-03 Nortel Networks Limited Dynamic selection of media streams for display
US6081907A (en) 1997-06-09 2000-06-27 Microsoft Corporation Data delivery system and method for delivering data and redundant information over a unidirectional network
US5917852A (en) 1997-06-11 1999-06-29 L-3 Communications Corporation Data scrambling system and method and communications system incorporating same
KR100240869B1 (ko) 1997-06-25 2000-01-15 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
US6175944B1 (en) 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US6047069A (en) 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
US6904110B2 (en) 1997-07-31 2005-06-07 Francois Trans Channel equalization system and method
US6178536B1 (en) 1997-08-14 2001-01-23 International Business Machines Corporation Coding scheme for file backup and systems based thereon
FR2767940A1 (fr) 1997-08-29 1999-02-26 Canon Kk Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre
EP0903955A1 (en) 1997-09-04 1999-03-24 STMicroelectronics S.r.l. Modular architecture PET decoder for ATM networks
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
US6134596A (en) 1997-09-18 2000-10-17 Microsoft Corporation Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
US6272658B1 (en) 1997-10-27 2001-08-07 Kencast, Inc. Method and system for reliable broadcasting of data files and streams
US6081918A (en) 1997-11-06 2000-06-27 Spielman; Daniel A. Loss resilient code with cascading series of redundant layers
US6163870A (en) 1997-11-06 2000-12-19 Compaq Computer Corporation Message encoding with irregular graphing
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
US6195777B1 (en) 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
JP3472115B2 (ja) 1997-11-25 2003-12-02 Kddi株式会社 マルチチャンネルを用いるビデオデータ伝送方法及びその装置
US6243846B1 (en) 1997-12-12 2001-06-05 3Com Corporation Forward error correction system for packet based data and real time media, using cross-wise parity calculation
US5870412A (en) 1997-12-12 1999-02-09 3Com Corporation Forward error correction system for packet based real time media
US6849803B1 (en) 1998-01-15 2005-02-01 Arlington Industries, Inc. Electrical connector
US6097320A (en) 1998-01-20 2000-08-01 Silicon Systems, Inc. Encoder/decoder system with suppressed error propagation
US6226301B1 (en) 1998-02-19 2001-05-01 Nokia Mobile Phones Ltd Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system
US6141788A (en) 1998-03-13 2000-10-31 Lucent Technologies Inc. Method and apparatus for forward error correction in packet networks
US6278716B1 (en) 1998-03-23 2001-08-21 University Of Massachusetts Multicast with proactive forward error correction
US6459811B1 (en) 1998-04-02 2002-10-01 Sarnoff Corporation Bursty data transmission of compressed video data
US6185265B1 (en) 1998-04-07 2001-02-06 Worldspace Management Corp. System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload
US6067646A (en) 1998-04-17 2000-05-23 Ameritech Corporation Method and system for adaptive interleaving
US6018359A (en) 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system
US6445717B1 (en) 1998-05-01 2002-09-03 Niwot Networks, Inc. System for recovering lost information in a data stream
US6421387B1 (en) 1998-05-15 2002-07-16 North Carolina State University Methods and systems for forward error correction based loss recovery for interactive video transmission
US6937618B1 (en) 1998-05-20 2005-08-30 Sony Corporation Separating device and method and signal receiving device and method
US6333926B1 (en) 1998-08-11 2001-12-25 Nortel Networks Limited Multiple user CDMA basestation modem
CA2341747C (en) 1998-09-04 2007-05-22 At&T Corp. Combined channel coding and space-time block coding in a multi-antenna arrangement
US6415326B1 (en) 1998-09-15 2002-07-02 Microsoft Corporation Timeline correlation between multiple timeline-altered media streams
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7243285B2 (en) 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6704370B1 (en) 1998-10-09 2004-03-09 Nortel Networks Limited Interleaving methodology and apparatus for CDMA
IT1303735B1 (it) 1998-11-11 2001-02-23 Falorni Italia Farmaceutici S Acidi ialuronici reticolati e loro usi medici.
US6408128B1 (en) 1998-11-12 2002-06-18 Max Abecassis Replaying with supplementary information a segment of a video
US6483736B2 (en) 1998-11-16 2002-11-19 Matrix Semiconductor, Inc. Vertically stacked field programmable nonvolatile memory and method of fabrication
JP2000151426A (ja) 1998-11-17 2000-05-30 Toshiba Corp インターリーブ・デインターリーブ回路
US6166544A (en) 1998-11-25 2000-12-26 General Electric Company MR imaging system with interactive image contrast control
US6876623B1 (en) 1998-12-02 2005-04-05 Agere Systems Inc. Tuning scheme for code division multiplex broadcasting system
EP1123597B1 (en) 1998-12-03 2002-10-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for transmitting information and apparatus and method for receiving information
US6637031B1 (en) 1998-12-04 2003-10-21 Microsoft Corporation Multimedia presentation latency minimization
US6496980B1 (en) 1998-12-07 2002-12-17 Intel Corporation Method of providing replay on demand for streaming digital multimedia
US6223324B1 (en) 1999-01-05 2001-04-24 Agere Systems Guardian Corp. Multiple program unequal error protection for digital audio broadcasting and other applications
JP3926499B2 (ja) 1999-01-22 2007-06-06 株式会社日立国際電気 畳み込み符号軟判定復号方式の受信装置
US6618451B1 (en) 1999-02-13 2003-09-09 Altocom Inc Efficient reduced state maximum likelihood sequence estimator
US6041001A (en) 1999-02-25 2000-03-21 Lexar Media, Inc. Method of increasing data reliability of a flash memory device without compromising compatibility
AU2827400A (en) 1999-03-03 2000-09-21 Sony Corporation Transmitter, receiver, transmitter/receiver system, transmission method and reception method
US6466698B1 (en) 1999-03-25 2002-10-15 The United States Of America As Represented By The Secretary Of The Navy Efficient embedded image and video compression system using lifted wavelets
US6535920B1 (en) 1999-04-06 2003-03-18 Microsoft Corporation Analyzing, indexing and seeking of streaming information
US6609223B1 (en) 1999-04-06 2003-08-19 Kencast, Inc. Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter
JP3256517B2 (ja) 1999-04-06 2002-02-12 インターナショナル・ビジネス・マシーンズ・コーポレーション 符号化回路、回路、パリティ生成方法及び記憶媒体
US6804202B1 (en) 1999-04-08 2004-10-12 Lg Information And Communications, Ltd. Radio protocol for mobile communication system and method
US7885340B2 (en) 1999-04-27 2011-02-08 Realnetworks, Inc. System and method for generating multiple synchronized encoded representations of media data
FI113124B (fi) 1999-04-29 2004-02-27 Nokia Corp Tiedonsiirto
EP1051027B1 (en) 1999-05-06 2006-05-24 Sony Corporation Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media
KR100416996B1 (ko) 1999-05-10 2004-02-05 삼성전자주식회사 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법
US6154452A (en) 1999-05-26 2000-11-28 Xm Satellite Radio Inc. Method and apparatus for continuous cross-channel interleaving
US6229824B1 (en) 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and interleaving
AU5140200A (en) 1999-05-26 2000-12-18 Enounce, Incorporated Method and apparatus for controlling time-scale modification during multi-media broadcasts
JP2000353969A (ja) 1999-06-11 2000-12-19 Sony Corp デジタル音声放送の受信機
US6577599B1 (en) 1999-06-30 2003-06-10 Sun Microsystems, Inc. Small-scale reliable multicasting
IL141800A0 (en) 1999-07-06 2002-03-10 Samsung Electronics Co Ltd Rate matching device and method for a data communication system
US6643332B1 (en) 1999-07-09 2003-11-04 Lsi Logic Corporation Method and apparatus for multi-level coding of digital signals
US6279072B1 (en) 1999-07-22 2001-08-21 Micron Technology, Inc. Reconfigurable memory with selectable error correction storage
JP3451221B2 (ja) 1999-07-22 2003-09-29 日本無線株式会社 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
US6453440B1 (en) 1999-08-04 2002-09-17 Sun Microsystems, Inc. System and method for detecting double-bit errors and for correcting errors due to component failures
JP2001060934A (ja) 1999-08-20 2001-03-06 Matsushita Electric Ind Co Ltd Ofdm通信装置
US6430233B1 (en) 1999-08-30 2002-08-06 Hughes Electronics Corporation Single-LNB satellite data receiver
US6332163B1 (en) 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
JP4284774B2 (ja) 1999-09-07 2009-06-24 ソニー株式会社 送信装置、受信装置、通信システム、送信方法及び通信方法
EP1131930B1 (en) 1999-09-27 2007-01-17 Koninklijke Philips Electronics N.V. Partitioning of file for emulating streaming
JP2001094625A (ja) 1999-09-27 2001-04-06 Canon Inc データ通信装置、データ通信方法及び記憶媒体
US7529806B1 (en) 1999-11-04 2009-05-05 Koninklijke Philips Electronics N.V. Partitioning of MP3 content file for emulating streaming
US20050160272A1 (en) 1999-10-28 2005-07-21 Timecertain, Llc System and method for providing trusted time in content of digital data files
US6523147B1 (en) 1999-11-11 2003-02-18 Ibiquity Digital Corporation Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system
US6678855B1 (en) 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6798791B1 (en) 1999-12-16 2004-09-28 Agere Systems Inc Cluster frame synchronization scheme for a satellite digital audio radio system
US6487692B1 (en) 1999-12-21 2002-11-26 Lsi Logic Corporation Reed-Solomon decoder
US20020009137A1 (en) 2000-02-01 2002-01-24 Nelson John E. Three-dimensional video broadcasting system
US6965636B1 (en) 2000-02-01 2005-11-15 2Wire, Inc. System and method for block error correction in packet-based digital communications
WO2001057667A1 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Data streaming
US7304990B2 (en) 2000-02-03 2007-12-04 Bandwiz Inc. Method of encoding and transmitting data over a communication medium through division and segmentation
IL140504A0 (en) 2000-02-03 2002-02-10 Bandwiz Inc Broadcast system
DE10009443A1 (de) 2000-02-29 2001-08-30 Philips Corp Intellectual Pty Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals
US6765866B1 (en) 2000-02-29 2004-07-20 Mosaid Technologies, Inc. Link aggregation
US6384750B1 (en) 2000-03-23 2002-05-07 Mosaid Technologies, Inc. Multi-stage lookup for translating between signals of different bit lengths
JP2001274776A (ja) 2000-03-24 2001-10-05 Toshiba Corp 情報データ伝送システムとその送信装置及び受信装置
US6510177B1 (en) 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
US6851086B2 (en) 2000-03-31 2005-02-01 Ted Szymanski Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link
US6473010B1 (en) 2000-04-04 2002-10-29 Marvell International, Ltd. Method and apparatus for determining error correction code failure rate for iterative decoding algorithms
US8572646B2 (en) 2000-04-07 2013-10-29 Visible World Inc. System and method for simultaneous broadcast for personalized messages
DE60121930T2 (de) 2000-04-08 2007-07-26 Sun Microsystems, Inc., Santa Clara Methode zum streamen einer einzelnen medienspur zu mehreren clients
US6631172B1 (en) 2000-05-01 2003-10-07 Lucent Technologies Inc. Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels
US6742154B1 (en) 2000-05-25 2004-05-25 Ciena Corporation Forward error correction codes for digital optical network optimization
US6738942B1 (en) 2000-06-02 2004-05-18 Vitesse Semiconductor Corporation Product code based forward error correction system
US6694476B1 (en) 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder
US7373413B1 (en) 2000-06-28 2008-05-13 Cisco Technology, Inc. Devices and methods for minimizing start up delay in transmission of streaming media
GB2366159B (en) 2000-08-10 2003-10-08 Mitel Corp Combination reed-solomon and turbo coding
US6834342B2 (en) 2000-08-16 2004-12-21 Eecad, Inc. Method and system for secure communication over unstable public connections
KR100447162B1 (ko) 2000-08-19 2004-09-04 엘지전자 주식회사 래디오 링크 콘트롤(rlc)에서 프로토콜 데이터 유닛(pdu) 정보의 길이 지시자(li) 처리방법
JP2002073625A (ja) 2000-08-24 2002-03-12 Nippon Hoso Kyokai <Nhk> 放送番組に同期した情報提供の方法、サーバ及び媒体
US7340664B2 (en) 2000-09-20 2008-03-04 Lsi Logic Corporation Single engine turbo decoder with single frame size buffer for interleaving/deinterleaving
US7151754B1 (en) 2000-09-22 2006-12-19 Lucent Technologies Inc. Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
US7031257B1 (en) 2000-09-22 2006-04-18 Lucent Technologies Inc. Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol
US7490344B2 (en) 2000-09-29 2009-02-10 Visible World, Inc. System and method for seamless switching
US6411223B1 (en) 2000-10-18 2002-06-25 Digital Fountain, Inc. Generating high weight encoding symbols using a basis
US7613183B1 (en) 2000-10-31 2009-11-03 Foundry Networks, Inc. System and method for router data aggregation and delivery
US6694478B1 (en) 2000-11-07 2004-02-17 Agere Systems Inc. Low delay channel codes for correcting bursts of lost packets
US6732325B1 (en) 2000-11-08 2004-05-04 Digeo, Inc. Error-correction with limited working storage
US20020133247A1 (en) 2000-11-11 2002-09-19 Smith Robert D. System and method for seamlessly switching between media streams
US7072971B2 (en) 2000-11-13 2006-07-04 Digital Foundation, Inc. Scheduling of multiple files for serving on a server
US7240358B2 (en) 2000-12-08 2007-07-03 Digital Fountain, Inc. Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources
EP1342363B9 (en) 2000-12-15 2012-09-12 BRITISH TELECOMMUNICATIONS public limited company Transmission and reception of audio and/or video material
CN1243442C (zh) 2000-12-15 2006-02-22 英国电讯有限公司 音频和/或视频资料的传输和接收
US6850736B2 (en) 2000-12-21 2005-02-01 Tropian, Inc. Method and apparatus for reception quality indication in wireless communication
US7143433B1 (en) 2000-12-27 2006-11-28 Infovalve Computing Inc. Video distribution system using dynamic segmenting of video data files
US20020085013A1 (en) 2000-12-29 2002-07-04 Lippincott Louis A. Scan synchronized dual frame buffer graphics subsystem
NO315887B1 (no) 2001-01-04 2003-11-03 Fast Search & Transfer As Fremgangsmater ved overforing og soking av videoinformasjon
US8595340B2 (en) 2001-01-18 2013-11-26 Yahoo! Inc. Method and system for managing digital content, including streaming media
FI118830B (fi) 2001-02-08 2008-03-31 Nokia Corp Tietovirran toisto
US6868083B2 (en) 2001-02-16 2005-03-15 Hewlett-Packard Development Company, L.P. Method and system for packet communication employing path diversity
US20020129159A1 (en) 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
KR100464360B1 (ko) 2001-03-30 2005-01-03 삼성전자주식회사 고속 패킷 데이터 전송 이동통신시스템에서 패킷 데이터채널에 대한 효율적인 에너지 분배 장치 및 방법
US20020143953A1 (en) 2001-04-03 2002-10-03 International Business Machines Corporation Automatic affinity within networks performing workload balancing
US6785836B2 (en) 2001-04-11 2004-08-31 Broadcom Corporation In-place data transformation for fault-tolerant disk storage systems
US6820221B2 (en) 2001-04-13 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for detecting process and network failures in a distributed system
US7010052B2 (en) 2001-04-16 2006-03-07 The Ohio University Apparatus and method of CTCM encoding and decoding for a digital communication system
US7035468B2 (en) 2001-04-20 2006-04-25 Front Porch Digital Inc. Methods and apparatus for archiving, indexing and accessing audio and video data
TWI246841B (en) 2001-04-22 2006-01-01 Koninkl Philips Electronics Nv Digital transmission system and method for transmitting digital signals
US20020191116A1 (en) 2001-04-24 2002-12-19 Damien Kessler System and data format for providing seamless stream switching in a digital video recorder
US20020194608A1 (en) * 2001-04-26 2002-12-19 Goldhor Richard S. Method and apparatus for a playback enhancement system implementing a "Say Again" feature
US6497479B1 (en) 2001-04-27 2002-12-24 Hewlett-Packard Company Higher organic inks with good reliability and drytime
US7962482B2 (en) 2001-05-16 2011-06-14 Pandora Media, Inc. Methods and systems for utilizing contextual feedback to generate and modify playlists
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US7076478B2 (en) 2001-06-26 2006-07-11 Microsoft Corporation Wrapper playlists on streaming media services
US6745364B2 (en) 2001-06-28 2004-06-01 Microsoft Corporation Negotiated/dynamic error correction for streamed media
JP2003018568A (ja) 2001-06-29 2003-01-17 Matsushita Electric Ind Co Ltd 再生システム、サーバ装置及び再生装置
JP2003022232A (ja) 2001-07-06 2003-01-24 Fujitsu Ltd コンテンツデータ転送システム
JP2003019012A (ja) 2001-07-09 2003-01-21 Akira Okabe 発光ステッキ
US6895547B2 (en) 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US6928603B1 (en) 2001-07-19 2005-08-09 Adaptix, Inc. System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system
US6961890B2 (en) 2001-08-16 2005-11-01 Hewlett-Packard Development Company, L.P. Dynamic variable-length error correction code
US7110412B2 (en) 2001-09-18 2006-09-19 Sbc Technology Resources, Inc. Method and system to transport high-quality video signals
FI115418B (fi) 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
US6990624B2 (en) 2001-10-12 2006-01-24 Agere Systems Inc. High speed syndrome-based FEC encoder and decoder and system using same
US7480703B2 (en) 2001-11-09 2009-01-20 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user
US7003712B2 (en) 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
US7363354B2 (en) 2001-11-29 2008-04-22 Nokia Corporation System and method for identifying and accessing network services
JP2003174489A (ja) 2001-12-05 2003-06-20 Ntt Docomo Inc ストリーミング配信装置、ストリーミング配信方法
EP1454250A4 (en) * 2001-12-15 2010-08-25 Thomson Licensing SYSTEM AND METHOD FOR MODIFYING A VIDEO POWER ON THE BASIS OF A CLIENT OR NETWORK ENVIRONMENT
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
CN1288915C (zh) * 2002-01-23 2006-12-06 诺基亚有限公司 视频序列的编码和解码方法及相关的视频编码器和解码器
US7483489B2 (en) 2002-01-30 2009-01-27 Nxp B.V. Streaming multimedia data over a network having a variable bandwith
WO2003071440A1 (en) 2002-02-15 2003-08-28 Digital Fountain, Inc. System and method for reliably communicating the content of a live data stream
JP4126928B2 (ja) 2002-02-28 2008-07-30 日本電気株式会社 プロキシサーバ及びプロキシ制御プログラム
JP4116470B2 (ja) 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
FR2837332A1 (fr) 2002-03-15 2003-09-19 Thomson Licensing Sa Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants
CN1647428A (zh) 2002-04-15 2005-07-27 诺基亚有限公司 通信站的rlp逻辑层
US6677864B2 (en) 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
JP3629008B2 (ja) 2002-04-19 2005-03-16 松下電器産業株式会社 データ受信装置及びデータ配信システム
JP3689063B2 (ja) 2002-04-19 2005-08-31 松下電器産業株式会社 データ受信装置及びデータ配信システム
KR100693200B1 (ko) 2002-04-25 2007-03-13 샤프 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 기록 매체 및 화상기록 장치
US20030204602A1 (en) 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
US7177658B2 (en) 2002-05-06 2007-02-13 Qualcomm, Incorporated Multi-media broadcast and multicast service (MBMS) in a wireless communications system
US7200388B2 (en) 2002-05-31 2007-04-03 Nokia Corporation Fragmented delivery of multimedia
IL165278A0 (en) 2002-06-04 2005-12-18 Qualcomm Inc System for multimedia rendering in a portable device
AR039964A1 (es) * 2002-06-04 2005-03-09 Qualcomm Inc Metodo y sistema para emitir un contenido de multimedia en un dispositivo portatil y un medio legible por computadora
US20040083015A1 (en) 2002-06-04 2004-04-29 Srinivas Patwari System for multimedia rendering in a portable device
EP1506621B1 (en) 2002-06-11 2013-01-02 Digital Fountain, Inc. Decoding of chain reaction codes through inactivation of recovered symbols
EP1550315B1 (en) 2002-06-11 2015-10-21 Telefonaktiebolaget L M Ericsson (publ) Generation of mixed media streams
US6956875B2 (en) 2002-06-19 2005-10-18 Atlinks Usa, Inc. Technique for communicating variable bit rate data over a constant bit rate link
JP4154569B2 (ja) 2002-07-10 2008-09-24 日本電気株式会社 画像圧縮伸長装置
JP4120461B2 (ja) 2002-07-12 2008-07-16 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
CA2492751C (en) 2002-07-16 2012-06-12 Nokia Corporation A method for random access and gradual picture refresh in video coding
JPWO2004019521A1 (ja) 2002-07-31 2005-12-15 シャープ株式会社 データ通信装置、その間欠通信方法、その方法を記載するプログラム、及びそのプログラムを記録する記録媒体
JP2004070712A (ja) 2002-08-07 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム
US7620111B2 (en) 2002-08-13 2009-11-17 Nokia Corporation Symbol interleaving
US6985459B2 (en) 2002-08-21 2006-01-10 Qualcomm Incorporated Early transmission and playout of packets in wireless communication systems
WO2004030273A1 (ja) 2002-09-27 2004-04-08 Fujitsu Limited データ配信方法、システム、伝送方法及びプログラム
JP3534742B1 (ja) 2002-10-03 2004-06-07 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
CN100539439C (zh) 2002-10-05 2009-09-09 数字方敦股份有限公司 连锁反应码的系统编码和解码系统和方法
JP2004135013A (ja) 2002-10-10 2004-04-30 Matsushita Electric Ind Co Ltd 伝送装置及び伝送方法
FI116816B (fi) 2002-10-14 2006-02-28 Nokia Corp Median suoratoisto
US7289451B2 (en) 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
US8320301B2 (en) 2002-10-25 2012-11-27 Qualcomm Incorporated MIMO WLAN system
US7328394B2 (en) 2002-10-30 2008-02-05 Koninklijke Philips Electronics N.V. Adaptative forward error control scheme
JP2004165922A (ja) 2002-11-12 2004-06-10 Sony Corp 情報処理装置および方法、並びにプログラム
JP4087852B2 (ja) 2002-11-18 2008-05-21 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー ビデオの伝送方法
GB0226872D0 (en) 2002-11-18 2002-12-24 British Telecomm Video transmission
JP3935419B2 (ja) 2002-11-19 2007-06-20 Kddi株式会社 動画像符号化ビットレート選択方式
KR100502609B1 (ko) 2002-11-21 2005-07-20 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
US7086718B2 (en) 2002-11-23 2006-08-08 Silverbrook Research Pty Ltd Thermal ink jet printhead with high nozzle areal density
JP2004192140A (ja) 2002-12-09 2004-07-08 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP2004193992A (ja) 2002-12-11 2004-07-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US8135073B2 (en) 2002-12-19 2012-03-13 Trident Microsystems (Far East) Ltd Enhancing video images depending on prior image enhancements
US7164882B2 (en) * 2002-12-24 2007-01-16 Poltorak Alexander I Apparatus and method for facilitating a purchase using information provided on a media playing device
WO2004068715A2 (en) 2003-01-29 2004-08-12 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
US7525994B2 (en) 2003-01-30 2009-04-28 Avaya Inc. Packet data flow identification for multiplexing
US7756002B2 (en) 2003-01-30 2010-07-13 Texas Instruments Incorporated Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer
US7231404B2 (en) 2003-01-31 2007-06-12 Nokia Corporation Datacast file transmission with meta-data retention
US7062272B2 (en) 2003-02-18 2006-06-13 Qualcomm Incorporated Method and apparatus to track count of broadcast content recipients in a wireless telephone network
EP1455504B1 (en) 2003-03-07 2014-11-12 Samsung Electronics Co., Ltd. Apparatus and method for processing audio signal and computer readable recording medium storing computer program for the method
JP4173755B2 (ja) 2003-03-24 2008-10-29 富士通株式会社 データ伝送サーバ
US7610487B2 (en) 2003-03-27 2009-10-27 Microsoft Corporation Human input security codes
US7266147B2 (en) 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
US7408486B2 (en) 2003-04-21 2008-08-05 Qbit Corporation System and method for using a microlet-based modem
JP2004343701A (ja) 2003-04-21 2004-12-02 Matsushita Electric Ind Co Ltd データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム
JP4379779B2 (ja) 2003-04-28 2009-12-09 Kddi株式会社 映像配信方式
US20050041736A1 (en) 2003-05-07 2005-02-24 Bernie Butler-Smith Stereoscopic television signal processing method, transmission system and viewer enhancements
KR100492567B1 (ko) 2003-05-13 2005-06-03 엘지전자 주식회사 이동통신 시스템의 http 기반 비디오 스트리밍 장치및 방법
US7113773B2 (en) 2003-05-16 2006-09-26 Qualcomm Incorporated Reliable reception of broadcast/multicast content
JP2004348824A (ja) 2003-05-21 2004-12-09 Toshiba Corp Eccエンコード方法、eccエンコード装置
US7483525B2 (en) 2003-05-23 2009-01-27 Navin Chaddha Method and system for selecting a communication channel with a recipient device over a communication network
JP2004362099A (ja) 2003-06-03 2004-12-24 Sony Corp サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US20060177019A1 (en) 2003-06-07 2006-08-10 Vladimir Portnykh Apparatus and method for organization and interpretation of multimedia data on a recording medium
KR101003413B1 (ko) 2003-06-12 2010-12-23 엘지전자 주식회사 이동통신 단말기의 전송데이터 압축/해제 방법
US7603689B2 (en) 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
RU2265960C2 (ru) 2003-06-16 2005-12-10 Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" Способ передачи информации с использованием адаптивного перемежения
US7391717B2 (en) 2003-06-30 2008-06-24 Microsoft Corporation Streaming of variable bit rate multimedia content
US20050004997A1 (en) 2003-07-01 2005-01-06 Nokia Corporation Progressive downloading of timed multimedia content
US8149939B2 (en) 2003-07-07 2012-04-03 Samsung Electronics Co., Ltd. System of robust DTV signal transmissions that legacy DTV receivers will disregard
US7254754B2 (en) 2003-07-14 2007-08-07 International Business Machines Corporation Raid 3+3
KR100532450B1 (ko) 2003-07-16 2005-11-30 삼성전자주식회사 에러에 대해 강인한 특성을 가지는 데이터 기록 방법,이에 적합한 데이터 재생 방법, 그리고 이에 적합한 장치들
US20050028067A1 (en) 2003-07-31 2005-02-03 Weirauch Charles R. Data with multiple sets of error correction codes
US8694869B2 (en) 2003-08-21 2014-04-08 QUALCIMM Incorporated Methods for forward error correction coding above a radio link control layer and related apparatus
IL157885A0 (en) 2003-09-11 2004-03-28 Bamboo Mediacasting Ltd Iterative forward error correction
IL157886A0 (en) 2003-09-11 2009-02-11 Bamboo Mediacasting Ltd Secure multicast transmission
JP4183586B2 (ja) 2003-09-12 2008-11-19 三洋電機株式会社 映像表示装置
WO2005029237A2 (en) 2003-09-15 2005-03-31 Digital Networks North America, Inc. Method and system for adaptive transcoding and transrating in a video network
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
EP1521373B1 (en) 2003-09-30 2006-08-23 Telefonaktiebolaget LM Ericsson (publ) In-place data deinterleaving
US7559004B1 (en) 2003-10-01 2009-07-07 Sandisk Corporation Dynamic redundant area configuration in a non-volatile memory system
CN1954501B (zh) 2003-10-06 2010-06-16 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法
US7516232B2 (en) 2003-10-10 2009-04-07 Microsoft Corporation Media organization for distributed sending of media data
US7614071B2 (en) 2003-10-10 2009-11-03 Microsoft Corporation Architecture for distributed sending of media data
DE602004028849D1 (de) 2003-10-14 2010-10-07 Panasonic Corp Datenumsetzer
US7650036B2 (en) 2003-10-16 2010-01-19 Sharp Laboratories Of America, Inc. System and method for three-dimensional video coding
US7168030B2 (en) 2003-10-17 2007-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Turbo code decoder with parity information update
EP1528808A3 (en) 2003-10-27 2008-03-26 Matsushita Electric Industrial Co., Ltd. Apparatus for receiving a broadcast signal
JP2005136546A (ja) 2003-10-29 2005-05-26 Sony Corp 送信装置および方法、記録媒体、並びにプログラム
EP1528702B1 (en) 2003-11-03 2008-01-23 Broadcom Corporation FEC (forward error correction) decoding with dynamic parameters
US20050102371A1 (en) 2003-11-07 2005-05-12 Emre Aksu Streaming from a server to a client
CN100505552C (zh) 2003-12-01 2009-06-24 数字方敦股份有限公司 使用基于子码元的代码来保护数据不被删除
US7428669B2 (en) 2003-12-07 2008-09-23 Adaptive Spectrum And Signal Alignment, Inc. Adaptive FEC codeword management
US7574706B2 (en) 2003-12-15 2009-08-11 Microsoft Corporation System and method for managing and communicating software updates
US7590118B2 (en) 2003-12-23 2009-09-15 Agere Systems Inc. Frame aggregation format
JP4536383B2 (ja) 2004-01-16 2010-09-01 株式会社エヌ・ティ・ティ・ドコモ データ受信装置およびデータ受信方法
KR100770902B1 (ko) 2004-01-20 2007-10-26 삼성전자주식회사 고속 무선 데이터 시스템을 위한 가변 부호율의 오류 정정부호 생성 및 복호 장치 및 방법
KR100834750B1 (ko) 2004-01-29 2008-06-05 삼성전자주식회사 엔코더 단에서 스케일러빌리티를 제공하는 스케일러블비디오 코딩 장치 및 방법
JP4321284B2 (ja) 2004-02-03 2009-08-26 株式会社デンソー ストリーミングデータ送信装置、および情報配信システム
US7599294B2 (en) 2004-02-13 2009-10-06 Nokia Corporation Identification and re-transmission of missing parts
KR100586883B1 (ko) 2004-03-04 2006-06-08 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법
KR100596705B1 (ko) 2004-03-04 2006-07-04 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템
US7609653B2 (en) 2004-03-08 2009-10-27 Microsoft Corporation Resolving partial media topologies
WO2005094020A1 (en) 2004-03-19 2005-10-06 Telefonaktiebolaget Lm Ericsson (Publ) Higher layer packet framing using rlp
US7240236B2 (en) 2004-03-23 2007-07-03 Archivas, Inc. Fixed content distributed data storage using permutation ring encoding
JP4433287B2 (ja) 2004-03-25 2010-03-17 ソニー株式会社 受信装置および方法、並びにプログラム
US8842175B2 (en) 2004-03-26 2014-09-23 Broadcom Corporation Anticipatory video signal reception and processing
US20050216472A1 (en) 2004-03-29 2005-09-29 David Leon Efficient multicast/broadcast distribution of formatted data
US20080243918A1 (en) 2004-03-30 2008-10-02 Koninklijke Philips Electronic, N.V. System and Method For Supporting Improved Trick Mode Performance For Disc Based Multimedia Content
TW200534875A (en) 2004-04-23 2005-11-01 Lonza Ag Personal care compositions and concentrates for making the same
FR2869744A1 (fr) 2004-04-29 2005-11-04 Thomson Licensing Sa Methode de transmission de paquets de donnees numeriques et appareil implementant la methode
US8868772B2 (en) 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
KR101205758B1 (ko) 2004-05-07 2012-12-03 디지털 파운튼, 인크. 파일 다운로드 및 스트리밍 시스템
US7633970B2 (en) 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
US20050254526A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Parameter sets update in streaming applications
US20060037057A1 (en) 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
US8331445B2 (en) 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US7492828B2 (en) 2004-06-18 2009-02-17 Qualcomm Incorporated Time synchronization using spectral estimation in a communication system
US7139660B2 (en) 2004-07-14 2006-11-21 General Motors Corporation System and method for changing motor vehicle personalization settings
US8112531B2 (en) 2004-07-14 2012-02-07 Nokia Corporation Grouping of session objects
JP2006033763A (ja) 2004-07-21 2006-02-02 Toshiba Corp 電子機器及び通信制御方法
US8544043B2 (en) 2004-07-21 2013-09-24 Qualcomm Incorporated Methods and apparatus for providing content information to content servers
US7409626B1 (en) 2004-07-28 2008-08-05 Ikanos Communications Inc Method and apparatus for determining codeword interleaver parameters
US7376150B2 (en) 2004-07-30 2008-05-20 Nokia Corporation Point-to-point repair response mechanism for point-to-multipoint transmission systems
US7590922B2 (en) 2004-07-30 2009-09-15 Nokia Corporation Point-to-point repair request mechanism for point-to-multipoint transmission systems
US7930184B2 (en) 2004-08-04 2011-04-19 Dts, Inc. Multi-channel audio coding/decoding of random access points and transients
US7721184B2 (en) 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
JP4405875B2 (ja) 2004-08-25 2010-01-27 富士通株式会社 エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体
JP2006074335A (ja) 2004-09-01 2006-03-16 Nippon Telegr & Teleph Corp <Ntt> 伝送方法、伝送システム及び伝送装置
JP4576936B2 (ja) 2004-09-02 2010-11-10 ソニー株式会社 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム
JP2006115104A (ja) 2004-10-13 2006-04-27 Daiichikosho Co Ltd 高能率符号化された時系列情報をパケット化してリアルタイム・ストリーミング送信し受信再生する方法および装置
US7529984B2 (en) 2004-11-16 2009-05-05 Infineon Technologies Ag Seamless change of depth of a general convolutional interleaver during transmission without loss of data
US7751324B2 (en) 2004-11-19 2010-07-06 Nokia Corporation Packet stream arrangement in multimedia transmission
JP5053097B2 (ja) 2004-11-22 2012-10-17 トムソン リサーチ ファンディング コーポレイション Dslシステムにおけるチャンネル切り替えの方法及び装置
CN101061659B (zh) 2004-12-02 2015-04-29 汤姆逊许可公司 自适应前向纠错的方法和设备
KR20060065482A (ko) 2004-12-10 2006-06-14 마이크로소프트 코포레이션 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
JP2006174045A (ja) 2004-12-15 2006-06-29 Ntt Communications Kk 画像配信装置、プログラム及び方法
JP2006174032A (ja) 2004-12-15 2006-06-29 Sanyo Electric Co Ltd 画像データ伝送システム、画像データ受信装置及び画像データ送信装置
US7398454B2 (en) 2004-12-21 2008-07-08 Tyco Telecommunications (Us) Inc. System and method for forward error correction decoding using soft information
JP4391409B2 (ja) 2004-12-24 2009-12-24 株式会社第一興商 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置
WO2006084503A1 (en) 2005-02-08 2006-08-17 Telefonaktiebolaget Lm Ericsson (Publ) On-demand multi-channel streaming session over packet-switched networks
US7925097B2 (en) 2005-02-18 2011-04-12 Sanyo Electric Co., Ltd. Image display method, image coding apparatus, and image decoding apparatus
US7822139B2 (en) 2005-03-02 2010-10-26 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems, methods and computer products for providing a virtual enhanced training sequence
US20090222873A1 (en) 2005-03-07 2009-09-03 Einarsson Torbjoern Multimedia Channel Switching
US8028322B2 (en) 2005-03-14 2011-09-27 Time Warner Cable Inc. Method and apparatus for network content download and recording
US7418649B2 (en) 2005-03-15 2008-08-26 Microsoft Corporation Efficient implementation of reed-solomon erasure resilient codes in high-rate applications
US7219289B2 (en) 2005-03-15 2007-05-15 Tandberg Data Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
US7450064B2 (en) 2005-03-22 2008-11-11 Qualcomm, Incorporated Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system
JP4487028B2 (ja) 2005-03-31 2010-06-23 ブラザー工業株式会社 配信速度制御装置、配信システム、配信速度制御方法、及び配信速度制御用プログラム
US7715842B2 (en) 2005-04-09 2010-05-11 Lg Electronics Inc. Supporting handover of mobile terminal
KR20080006609A (ko) 2005-04-13 2008-01-16 노키아 코포레이션 스케일링가능성 정보의 코딩, 저장, 및 시그널링
JP4515319B2 (ja) 2005-04-27 2010-07-28 株式会社日立製作所 コンピュータシステム
US7961700B2 (en) 2005-04-28 2011-06-14 Qualcomm Incorporated Multi-carrier operation in data transmission systems
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
JP2006319743A (ja) 2005-05-13 2006-11-24 Toshiba Corp 受信装置
US8228994B2 (en) 2005-05-20 2012-07-24 Microsoft Corporation Multi-view video coding based on temporal and view decomposition
US20090222855A1 (en) 2005-05-24 2009-09-03 Jani Vare Method and apparatuses for hierarchical transmission/reception in digital broadcast
US7676735B2 (en) 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
US7644335B2 (en) 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
JP2007013436A (ja) 2005-06-29 2007-01-18 Toshiba Corp 符号化ストリーム再生装置
US20070006274A1 (en) 2005-06-30 2007-01-04 Toni Paila Transmission and reception of session packets
JP2007013675A (ja) 2005-06-30 2007-01-18 Sanyo Electric Co Ltd ストリーミング配信システム及びサーバ
US7725593B2 (en) 2005-07-15 2010-05-25 Sony Corporation Scalable video coding (SVC) file format
US20070022215A1 (en) 2005-07-19 2007-01-25 Singer David W Method and apparatus for media data transmission
JP2007036666A (ja) 2005-07-27 2007-02-08 Onkyo Corp コンテンツ配信システム、クライアント及びクライアントプログラム
CN101053249B (zh) 2005-09-09 2011-02-16 松下电器产业株式会社 图像处理方法、图像存储方法、图像处理装置及文件格式
US7924913B2 (en) 2005-09-15 2011-04-12 Microsoft Corporation Non-realtime data transcoding of multimedia content
US20070067480A1 (en) 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US8879635B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Methods and device for data alignment with time domain boundary
US20070078876A1 (en) 2005-09-30 2007-04-05 Yahoo! Inc. Generating a stream of media data containing portions of media files using location tags
US7720062B2 (en) 2005-10-05 2010-05-18 Lg Electronics Inc. Method of processing traffic information and digital broadcasting system
US7164370B1 (en) 2005-10-06 2007-01-16 Analog Devices, Inc. System and method for decoding data compressed in accordance with dictionary-based compression schemes
WO2007042916A1 (en) 2005-10-11 2007-04-19 Nokia Corporation System and method for efficient scalable stream adaptation
CN100442858C (zh) 2005-10-11 2008-12-10 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
US7720096B2 (en) 2005-10-13 2010-05-18 Microsoft Corporation RTP payload format for VC-1
CN101292538B (zh) 2005-10-19 2012-11-28 汤姆森特许公司 使用可缩放的视频编码的多视图视频编码
JP4727401B2 (ja) 2005-12-02 2011-07-20 日本電信電話株式会社 無線マルチキャスト伝送システム、無線送信装置及び無線マルチキャスト伝送方法
FR2894421B1 (fr) 2005-12-07 2008-01-18 Canon Kk Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique
KR100759823B1 (ko) 2005-12-08 2007-09-18 한국전자통신연구원 제로 복귀 신호 발생 장치 및 그 방법
JP4456064B2 (ja) 2005-12-21 2010-04-28 日本電信電話株式会社 パケット送信装置、受信装置、システム、およびプログラム
US20070157267A1 (en) 2005-12-30 2007-07-05 Intel Corporation Techniques to improve time seek operations
US8185794B2 (en) 2006-01-05 2012-05-22 Telefonaktiebolaget L M Ericsson (Publ) Media container file management
US8214516B2 (en) 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
MY148628A (en) 2006-01-11 2013-05-15 Nokia Corp Backward-compatible aggregation of pictures in scalable video coding
EP1977593A4 (en) 2006-01-12 2010-06-16 Lg Electronics Inc PROCESSING MORE VIEW VIDEO
WO2007086654A1 (en) 2006-01-25 2007-08-02 Lg Electronics Inc. Digital broadcasting system and method of processing data
RU2290768C1 (ru) 2006-01-30 2006-12-27 Общество с ограниченной ответственностью "Трафиклэнд" Система медиавещания в инфраструктуре оператора мобильной связи
US8990153B2 (en) 2006-02-07 2015-03-24 Dot Hill Systems Corporation Pull data replication model
US8239727B2 (en) 2006-02-08 2012-08-07 Thomson Licensing Decoding of raptor codes
KR101292851B1 (ko) 2006-02-13 2013-08-02 디지털 파운튼, 인크. 가변적 fec 오버헤드 및 보호 구간을 이용하는 스트리밍및 버퍼링
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
JP2007228205A (ja) 2006-02-23 2007-09-06 Funai Electric Co Ltd ネットワークサーバ
US8320450B2 (en) 2006-03-29 2012-11-27 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
US20080010153A1 (en) 2006-04-24 2008-01-10 Pugh-O'connor Archie Computer network provided digital content under an advertising and revenue sharing basis, such as music provided via the internet with time-shifted advertisements presented by a client resident application
US20090100496A1 (en) 2006-04-24 2009-04-16 Andreas Bechtolsheim Media server system
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US7525993B2 (en) 2006-05-24 2009-04-28 Newport Media, Inc. Robust transmission system and method for mobile television applications
US20100211690A1 (en) 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
JP2008011404A (ja) 2006-06-30 2008-01-17 Toshiba Corp コンテンツ処理装置及びコンテンツ処理方法
JP4392004B2 (ja) 2006-07-03 2009-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション パケット回復のための符号化および復号化技術
CN102148857A (zh) 2006-07-20 2011-08-10 桑迪士克股份有限公司 内容分布系统
US7711797B1 (en) 2006-07-31 2010-05-04 Juniper Networks, Inc. Optimizing batch size for prefetching data over wide area networks
US8209736B2 (en) 2006-08-23 2012-06-26 Mediatek Inc. Systems and methods for managing television (TV) signals
CA2661578C (en) 2006-08-24 2014-06-17 Nokia Corporation System and method for indicating track relationships in media files
US20080066136A1 (en) * 2006-08-24 2008-03-13 International Business Machines Corporation System and method for detecting topic shift boundaries in multimedia streams using joint audio, visual and text cues
JP2008109637A (ja) 2006-09-25 2008-05-08 Toshiba Corp 動画像符号化装置及びその方法
EP2084928B1 (en) 2006-10-30 2017-08-23 LG Electronics Inc. Method of performing random access in a wireless communication system
JP2008118221A (ja) 2006-10-31 2008-05-22 Toshiba Corp 復号装置及び復号方法
WO2008054100A1 (en) 2006-11-01 2008-05-08 Electronics And Telecommunications Research Institute Method and apparatus for decoding metadata used for playing stereoscopic contents
EP2095641A2 (en) 2006-11-14 2009-09-02 QUALCOMM Incorporated Systems and methods for channel switching
US8027328B2 (en) 2006-12-26 2011-09-27 Alcatel Lucent Header compression in a wireless communication network
WO2008086313A1 (en) 2007-01-05 2008-07-17 Divx, Inc. Video distribution system including progressive playback
US20080168516A1 (en) 2007-01-08 2008-07-10 Christopher Lance Flick Facilitating Random Access In Streaming Content
WO2008084348A1 (en) 2007-01-09 2008-07-17 Nokia Corporation Method for supporting file versioning in mbms file repair
MX2009000619A (es) 2007-01-11 2009-04-16 Panasonic Corp Metodo para la reproduccion de truco de datos multimedia en flujo y encriptados.
US20080172430A1 (en) 2007-01-11 2008-07-17 Andrew Thomas Thorstensen Fragmentation Compression Management
CN101543018B (zh) 2007-01-12 2012-12-26 庆熙大学校产学协力团 网络提取层单元的分组格式、使用该格式的视频编解码算法和装置以及使用该格式进行IPv6标签交换的QoS控制算法和装置
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
US8126062B2 (en) 2007-01-16 2012-02-28 Cisco Technology, Inc. Per multi-block partition breakpoint determining for hybrid variable length coding
US7721003B2 (en) 2007-02-02 2010-05-18 International Business Machines Corporation System and method to synchronize OSGi bundle inventories between an OSGi bundle server and a client
US7805456B2 (en) 2007-02-05 2010-09-28 Microsoft Corporation Query pattern to enable type flow of element types
CN100551043C (zh) * 2007-02-08 2009-10-14 华为技术有限公司 一种快进快退播放视频数据的方法和流媒体服务器
US20080192818A1 (en) 2007-02-09 2008-08-14 Dipietro Donald Vincent Systems and methods for securing media
US20080232357A1 (en) 2007-03-19 2008-09-25 Legend Silicon Corp. Ls digital fountain code
JP4838191B2 (ja) 2007-05-08 2011-12-14 シャープ株式会社 ファイル再生装置、ファイル再生方法、ファイル再生を実行させるプログラム及びそのプログラムを記録した記録媒体
JP2008283571A (ja) 2007-05-11 2008-11-20 Ntt Docomo Inc コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信方法
US8275002B2 (en) 2007-05-14 2012-09-25 Samsung Electronics Co., Ltd. Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
CN101682466A (zh) 2007-05-16 2010-03-24 汤姆森特许公司 编码和解码信号的装置和方法
FR2917262A1 (fr) 2007-06-05 2008-12-12 Thomson Licensing Sas Dispositif et procede de codage d'un contenu video sous la forme d'un flux scalable.
US8487982B2 (en) 2007-06-07 2013-07-16 Reald Inc. Stereoplexing for film and video applications
EP2501137A3 (en) 2007-06-11 2012-12-12 Samsung Electronics Co., Ltd. Method and apparatus for generating header information of stereoscopic image
WO2008156390A1 (en) 2007-06-20 2008-12-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for improved media session management
CN101690229A (zh) 2007-06-26 2010-03-31 诺基亚公司 用于指示时间层切换点的系统和方法
US7917702B2 (en) 2007-07-10 2011-03-29 Qualcomm Incorporated Data prefetch throttle
US8156164B2 (en) 2007-07-11 2012-04-10 International Business Machines Corporation Concurrent directory update in a cluster file system
JP2009027598A (ja) 2007-07-23 2009-02-05 Hitachi Ltd 映像配信サーバおよび映像配信方法
US8327403B1 (en) 2007-09-07 2012-12-04 United Video Properties, Inc. Systems and methods for providing remote program ordering on a user device via a web server
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
US8233532B2 (en) 2007-09-21 2012-07-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal
US8346959B2 (en) 2007-09-28 2013-01-01 Sharp Laboratories Of America, Inc. Client-controlled adaptive streaming
EP2046044B1 (en) 2007-10-01 2017-01-18 Cabot Communications Ltd A method and apparatus for streaming digital media content and a communication system
JP4975868B2 (ja) 2007-10-09 2012-07-11 サムスン エレクトロニクス カンパニー リミテッド 移動通信システムにおけるmacpduの生成・解析装置及び方法
US8706907B2 (en) 2007-10-19 2014-04-22 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
WO2009054907A2 (en) 2007-10-19 2009-04-30 Swarmcast, Inc. Media playback point seeking using data range requests
US7895629B1 (en) 2007-11-07 2011-02-22 At&T Mobility Ii Llc Video service buffer management in a mobile rate control enabled network
US20090125636A1 (en) 2007-11-13 2009-05-14 Qiong Li Payload allocation methods for scalable multimedia servers
WO2009065526A1 (en) 2007-11-23 2009-05-28 Media Patents S.L. A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems
WO2009075766A2 (en) 2007-12-05 2009-06-18 Swarmcast, Inc. Dynamic bit rate scaling
TWI355168B (en) 2007-12-07 2011-12-21 Univ Nat Chiao Tung Application classification method in network traff
JP5385598B2 (ja) 2007-12-17 2014-01-08 キヤノン株式会社 画像処理装置及び画像管理サーバ装置及びそれらの制御方法及びプログラム
US9313245B2 (en) 2007-12-24 2016-04-12 Qualcomm Incorporated Adaptive streaming for on demand wireless services
KR101506217B1 (ko) 2008-01-31 2015-03-26 삼성전자주식회사 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치
EP2086237B1 (en) 2008-02-04 2012-06-27 Alcatel Lucent Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions
US8151174B2 (en) 2008-02-13 2012-04-03 Sunrise IP, LLC Block modulus coding (BMC) systems and methods for block coding with non-binary modulus
US20090219985A1 (en) 2008-02-28 2009-09-03 Vasanth Swaminathan Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File
US7984097B2 (en) 2008-03-18 2011-07-19 Media Patents, S.L. Methods for transmitting multimedia files and advertisements
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US20090257508A1 (en) 2008-04-10 2009-10-15 Gaurav Aggarwal Method and system for enabling video trick modes
US7979769B2 (en) 2008-04-14 2011-07-12 Lg Electronics Inc. Method and apparatus for performing random access procedures
WO2009127961A1 (en) 2008-04-16 2009-10-22 Nokia Corporation Decoding order recovery in session multiplexing
WO2009130561A1 (en) 2008-04-21 2009-10-29 Nokia Corporation Method and device for video coding and decoding
TW201014366A (en) 2008-05-07 2010-04-01 Digital Fountain Inc Fast channel zapping and high quality streaming protection over a broadcast channel
WO2009140208A2 (en) 2008-05-12 2009-11-19 Swarmcast, Inc. Live media delivery over a packet-based computer network
JP5022301B2 (ja) 2008-05-19 2012-09-12 株式会社エヌ・ティ・ティ・ドコモ プロキシサーバおよび通信中継プログラム、並びに通信中継方法
CN101287107B (zh) 2008-05-29 2010-10-13 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
US7860996B2 (en) 2008-05-30 2010-12-28 Microsoft Corporation Media streaming with seamless ad insertion
US8775566B2 (en) 2008-06-21 2014-07-08 Microsoft Corporation File format for media distribution and presentation
US8387150B2 (en) 2008-06-27 2013-02-26 Microsoft Corporation Segmented media content rights management
US8468426B2 (en) 2008-07-02 2013-06-18 Apple Inc. Multimedia-aware quality-of-service and error correction provisioning
US8539092B2 (en) 2008-07-09 2013-09-17 Apple Inc. Video streaming using multiple channels
US20100153578A1 (en) 2008-07-16 2010-06-17 Nokia Corporation Method and Apparatus for Peer to Peer Streaming
US8638796B2 (en) 2008-08-22 2014-01-28 Cisco Technology, Inc. Re-ordering segments of a large number of segmented service flows
US8737421B2 (en) 2008-09-04 2014-05-27 Apple Inc. MAC packet data unit construction for wireless systems
KR101019634B1 (ko) 2008-09-04 2011-03-07 에스케이 텔레콤주식회사 미디어 전송 시스템 및 방법
CN102144401B (zh) 2008-09-05 2014-05-14 汤姆逊许可证公司 用于动态播放列表修改的方法和系统
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US8265140B2 (en) 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
JP5163415B2 (ja) * 2008-10-07 2013-03-13 富士通株式会社 階層型変調方法、階層型復調方法、階層型変調を行う送信装置、階層型復調を行う受信装置
US8370520B2 (en) 2008-11-24 2013-02-05 Juniper Networks, Inc. Adaptive network content delivery system
BRPI0923917B1 (pt) 2008-12-31 2021-05-25 Apple Inc Método implementado por máquina, meio de armazenamento não transitório legível por máquina, aparelho, e sistema de processamento de dados para transmissão contínua em tempo real ou próximo ao tempo real
US20100169303A1 (en) 2008-12-31 2010-07-01 David Biderman Playlists for real-time or near real-time streaming
US8743906B2 (en) 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
CN104768031B (zh) 2009-01-26 2018-02-09 汤姆森特许公司 用于视频解码的装置
US9025670B2 (en) 2009-01-29 2015-05-05 Dolby Laboratories Licensing Corporation Methods and devices for sub-sampling and interleaving multiple images, EG stereoscopic
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
US8909806B2 (en) 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
CN102804785A (zh) 2009-04-13 2012-11-28 瑞尔D股份有限公司 编码、解码和发布增强分辨率的立体视频
US9807468B2 (en) 2009-06-16 2017-10-31 Microsoft Technology Licensing, Llc Byte range caching
WO2011009205A1 (en) 2009-07-22 2011-01-27 Jigsee Inc. Method of streaming media to heterogeneous client devices
US8355433B2 (en) 2009-08-18 2013-01-15 Netflix, Inc. Encoding video streams for adaptive video streaming
US20120151302A1 (en) 2010-12-10 2012-06-14 Qualcomm Incorporated Broadcast multimedia storage and access using page maps when asymmetric memory is used
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20110096828A1 (en) 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9438861B2 (en) 2009-10-06 2016-09-06 Microsoft Technology Licensing, Llc Integrating continuous and sparse streaming data
JP2011087103A (ja) 2009-10-15 2011-04-28 Sony Corp コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供
EP2497267B1 (en) 2009-11-03 2014-08-27 Telefonaktiebolaget LM Ericsson (publ) Streaming with optional broadcast delivery of data segments
CN102473159A (zh) 2009-11-04 2012-05-23 华为技术有限公司 媒体内容流播的系统和方法
KR101786050B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 전송 방법 및 장치
KR101786051B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치
CN101729857A (zh) 2009-11-24 2010-06-09 中兴通讯股份有限公司 一种接入视频服务的方法及视频播放系统
KR101401183B1 (ko) 2009-12-11 2014-05-29 노키아 코포레이션 스트리밍 미디어 파일의 표현을 기술하고 타이밍하기 위한 장치 및 방법
CN102812683B (zh) 2010-02-19 2016-08-17 瑞典爱立信有限公司 用于在http流传输中进行自适应的方法和装置
KR101628432B1 (ko) 2010-02-19 2016-06-21 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 레프리젠테이션 스위칭을 위한 방법 및 장치
WO2011112052A2 (ko) 2010-03-11 2011-09-15 한국전자통신연구원 Mimo 시스템에서 데이터를 송수신하는 방법 및 장치
US9497290B2 (en) 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
EP2585947A1 (en) 2010-06-23 2013-05-01 Telefónica, S.A. A method for indexing multimedia information
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
KR20120010089A (ko) 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US9131033B2 (en) 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8711933B2 (en) 2010-08-09 2014-04-29 Sony Computer Entertainment Inc. Random access point (RAP) formation using intra refreshing technique in video coding
US8806050B2 (en) 2010-08-10 2014-08-12 Qualcomm Incorporated Manifest file updates for network streaming of coded multimedia data
KR101737325B1 (ko) 2010-08-19 2017-05-22 삼성전자주식회사 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
US8615023B2 (en) 2010-10-27 2013-12-24 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving data in communication system
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery

Also Published As

Publication number Publication date
WO2012021540A1 (en) 2012-02-16
SG187638A1 (en) 2013-03-28
AR082616A1 (es) 2012-12-19
AR082614A1 (es) 2012-12-19
US20120042089A1 (en) 2012-02-16
HK1181576A1 (zh) 2013-11-08
US8806050B2 (en) 2014-08-12
CN103081433A (zh) 2013-05-01
EP2604015A1 (en) 2013-06-19
UA107394C2 (en) 2014-12-25
ES2730896T3 (es) 2019-11-13
AU2011289514B2 (en) 2014-08-14
AR082612A1 (es) 2012-12-19
CA2807157C (en) 2016-04-19
KR20130042612A (ko) 2013-04-26
RU2013110060A (ru) 2014-09-20
MY156640A (en) 2016-03-15
DK2604014T3 (da) 2019-05-20
AU2011289514A1 (en) 2013-02-28
CA2807156C (en) 2017-06-06
JP5932070B2 (ja) 2016-06-08
BR112013002692B1 (pt) 2021-10-26
CN103081433B (zh) 2016-01-20
UA107125C2 (uk) 2014-11-25
PH12013500209A1 (en) 2013-04-08
KR101542310B1 (ko) 2015-08-12
JP2014209752A (ja) 2014-11-06
HUE044113T2 (hu) 2019-09-30
WO2012021538A1 (en) 2012-02-16
TWI458313B (zh) 2014-10-21
RU2558615C2 (ru) 2015-08-10
HUE044114T2 (hu) 2019-09-30
RU2013110285A (ru) 2014-09-20
BR112013002686B1 (pt) 2021-10-26
KR101709030B1 (ko) 2017-02-21
CN103141069B (zh) 2016-04-27
BR112013002692A2 (pt) 2016-05-31
EP2604016B1 (en) 2019-03-13
DK2604016T3 (da) 2019-05-13
TWI479882B (zh) 2015-04-01
WO2012021543A1 (en) 2012-02-16
CN103069769A (zh) 2013-04-24
JP2013538506A (ja) 2013-10-10
CN103141069A (zh) 2013-06-05
US9319448B2 (en) 2016-04-19
EP2604014A1 (en) 2013-06-19
TW201230743A (en) 2012-07-16
WO2012021538A8 (en) 2013-02-21
AU2011289511B2 (en) 2015-01-15
KR20130042611A (ko) 2013-04-26
US9456015B2 (en) 2016-09-27
CA2807157A1 (en) 2012-02-16
US20120042090A1 (en) 2012-02-16
JP5612211B2 (ja) 2014-10-22
AU2011289511A1 (en) 2013-02-28
RU2571375C2 (ru) 2015-12-20
IL224476A (en) 2016-11-30
JP2013538507A (ja) 2013-10-10
KR20130061170A (ko) 2013-06-10
KR101442999B1 (ko) 2014-09-22
CN103069769B (zh) 2015-11-25
SI2604014T1 (sl) 2019-05-31
EP2604016A1 (en) 2013-06-19
ES2730894T3 (es) 2019-11-13
IL224449A (en) 2016-12-29
TWI501630B (zh) 2015-09-21
CA2807156A1 (en) 2012-02-16
PH12013500262A1 (en) 2016-11-18
PT2604014T (pt) 2019-06-04
SG10201505779QA (en) 2015-09-29
KR20150090279A (ko) 2015-08-05
MY155946A (en) 2015-12-31
SI2604016T1 (sl) 2019-05-31
TW201220826A (en) 2012-05-16
TW201230777A (en) 2012-07-16
EP2604014B1 (en) 2019-02-20
EP2604015B1 (en) 2019-03-13
US20120042050A1 (en) 2012-02-16
HK1181577A1 (en) 2013-11-08
SG187636A1 (en) 2013-03-28
JP2013538508A (ja) 2013-10-10
JP2015111898A (ja) 2015-06-18
PL2604014T3 (pl) 2019-08-30
JP5559432B2 (ja) 2014-07-23
HUE044172T2 (hu) 2019-10-28
BR112013002686A2 (pt) 2016-05-31

Similar Documents

Publication Publication Date Title
ES2726772T3 (es) Grupos de representación de medios para transmisión continua en red de datos de vídeo codificados
BR112020015214A2 (pt) inserção dinâmica de anúncio condicional
TR201905118T4 (tr) Kodlanmış olan video verilerinin ağ akışı için hile modları