ES2730894T3 - Actualizaciones de archivo de manifiesto para la emisión en continuo de red de datos de vídeo codificados - Google Patents

Actualizaciones de archivo de manifiesto para la emisión en continuo de red de datos de vídeo codificados Download PDF

Info

Publication number
ES2730894T3
ES2730894T3 ES11746404T ES11746404T ES2730894T3 ES 2730894 T3 ES2730894 T3 ES 2730894T3 ES 11746404 T ES11746404 T ES 11746404T ES 11746404 T ES11746404 T ES 11746404T ES 2730894 T3 ES2730894 T3 ES 2730894T3
Authority
ES
Spain
Prior art keywords
data
segment
manifest file
client device
representation
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
ES11746404T
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 ES2730894T3 publication Critical patent/ES2730894T3/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 multimedia, comprendiendo el procedimiento: recuperar datos (366A) de un primer segmento (362A) de una representación (360) de contenido multimedia (150, 350) de acuerdo con datos de una copia de un archivo de manifiesto (66, 102, 352) almacenada por un dispositivo cliente (40), en el que los datos del primer segmento corresponden a un período del contenido multimedia; recuperar una parte de un segundo segmento (362D) de la representación de acuerdo con el archivo de manifiesto, en el que unos datos (366D) del segundo segmento corresponden al período al que corresponden los datos del primer segmento, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto está por actualizar (364, 364B); actualizar la copia del archivo de manifiesto almacenada por el dispositivo cliente basándose en la indicación (364, 364B) de que el archivo de manifiesto está por actualizar, indicando el archivo de manifiesto actualizado segmentos adicionales del período al que corresponde el primer segmento; y recuperar datos de medios del segundo segmento y los segmentos adicionales de acuerdo con el archivo de manifiesto actualizado.

Description

DESCRIPCIÓN
Actualizaciones de archivo de manifiesto para la emisión en continuo de red de datos de vídeo codificados
CAMPO TÉCNICO
[0001] La presente divulgación se refiere al almacenamiento y transporte de datos multimedia codificados.
ANTECEDENTES
[0002] Las capacidades de vídeo digital pueden incorporarse a una amplia gama de dispositivos, incluidos televisores digitales, sistemas de radiodifusión digital directa, sistemas de radiodifusión inalámbrica, asistentes digitales personales (PDA), ordenadores portátiles o de sobremesa, cámaras digitales, dispositivos de grabación digital, 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 eficaz.
[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 sector de vídeo pueden dividirse en macrobloques. Cada macrobloque se puede dividir aún más. Los macrobloques de una trama o un sector intracodificados (I) se codifican mediante predicción espacial con respecto a unos macrobloques vecinos. Los macrobloques de una trama o sector intercodificados (P o B) pueden usar predicción espacial con respecto a unos macrobloques vecinos de la misma trama o sector, o predicción temporal con respecto a otras tramas de referencia.
[0004] Una vez que se han 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 archivo de vídeo que se ajustan a cualquiera de una variedad de normas, tales como el formato de archivos de medios base de la Organización Internacional de Normalización (ISO) y ampliaciones del mismo, tales como la ITU-T H.264/AVC. Dichos datos de vídeo en paquetes se pueden transportar en una variedad de formas, tales como la transmisión a través de una red informática usando emisión en continuo de red.
[0005] En el documento “Media presentation description in HTTP streaming" [“Descripción de presentación de medios en emisión en continuo HTTP”] de Telefon AB LM Ericsson y ST-Ericsson SA, 3GPPSA4#57; S4-100080, se divulga la actualización de descripciones de presentación de medios (MPD), con dos formas diferentes para que el cliente conozca las actualizaciones MPD: 1) sondeo tipo RSS, donde el cliente de medios realiza con frecuencia sondeos sobre nuevas actualizaciones MPD; y 2) notificaciones automáticas de servidor, donde el servidor avisa al cliente de medios sobre una actualización MPD.
[0006] En el documento “An MPD delta file for HTTP streaming"[“Archivo delta MPD para emisión en continuo HTTP”] de Research in Motion UK Limited, 3GPP TSG-SA4 reunión n.° 59, S4-100453, se divulga una propuesta para añadir un elemento a la MPD para indicar la compatibilidad con los archivos delta, y en un ejemplo que se divulga en ese documento, un archivo delta se pone a disposición del cliente en el servidor al mismo tiempo que se actualiza la MPD, de modo que el cliente solo tiene que descargar el archivo delta en lugar de la MPD completa.
RESUMEN
[0007] En general, la presente divulgación describe técnicas para mejorar la emisión en continuo de datos de medios a través de una red. Estas técnicas incluyen la compatibilidad para modos de reproducción no estándar, como avance rápido, retroceso y búsqueda dentro de contenido de medios emitido en continuo a través de una red. Estas técnicas también incluyen la compatibilidad para grupos de representaciones, tales como la señalización de características comunes para un grupo de representaciones, así como de características individuales de las representaciones. Por otro lado, las técnicas incluyen proporcionar información para actualizar archivos de manifiesto para contenido multimedia emitido en continuo. Las técnicas también incluyen proporcionar datos de medios para anuncios dirigidos como períodos externos para contenido de medios. Estas técnicas incluyen además proporcionar e interpretar informes de calidad de experiencia de un dispositivo cliente para un proveedor de servicios. Además, estas técnicas incluyen señalizar datos de perfil a los que se ajusta un archivo de manifiesto de contenido de medios.
[0008] La presente invención se expone en las reivindicaciones adjuntas. De acuerdo con un primer aspecto a modo de ejemplo, se proporciona un procedimiento de recuperación de datos multimedia, comprendiendo el procedimiento: recuperar datos de un primer segmento de una representación de contenido multimedia de acuerdo con datos de una copia de un archivo de manifiesto almacenada por un dispositivo cliente, en el que los datos del primer segmento corresponden a un período del contenido multimedia; recuperar una parte de un segundo segmento de la representación de acuerdo con el archivo de manifiesto, en el que unos datos del segundo segmento corresponden al período al que corresponden los datos del primer segmento, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto se debe actualizar; actualizar la copia del archivo de manifiesto almacenada por el dispositivo cliente basándose en la indicación de que el archivo de manifiesto se debe actualizar; y recuperar datos de medios del segundo segmento de acuerdo con el archivo de manifiesto actualizado.
[0009] De acuerdo con un segundo aspecto a modo de ejemplo, se proporciona un procedimiento de envío de información para datos multimedia, comprendiendo el procedimiento: enviar datos de un archivo de manifiesto de contenido multimedia a un dispositivo cliente, en el que el archivo de manifiesto incluye información indicativa de un primer segmento de una representación del contenido multimedia, en el que unos datos del primer segmento corresponden a un período del contenido multimedia; enviar al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto se debe actualizar, en el que una versión actualizada del archivo de manifiesto incluye información indicativa de un segundo segmento diferente de la representación, en el que unos datos del segundo segmento corresponden al período al que corresponden los datos del primer segmento; y enviar, como respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento al dispositivo cliente.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
[0010]
La FIG. 1 es un diagrama de bloques que ilustra un ejemplo de sistema que implementa técnicas para emitir en continuo datos de medios a través de una red.
La FIG. 2 es un diagrama conceptual que ilustra elementos de un ejemplo de contenido multimedia.
La FIG.3 es un diagrama de bloques que ilustra elementos de un ejemplo de archivo de vídeo, que puede corresponder a un segmento de una representación de contenido multimedia.
La FIG. 4 es un diagrama conceptual que ilustra un ejemplo de contenido multimedia que incluye una descripción de presentación de medios (MPD) y diversos grupos de representaciones.
La FIG. 5 es un diagrama conceptual que ilustra otro ejemplo de contenido multimedia, en el que los datos de MPD se dividen en diversas partes para diversos grupos de representaciones.
La FIG. 6 es un diagrama conceptual que ilustra otro ejemplo de contenido multimedia que puede usarse para admitir modos de reproducción no estándar.
La FIG. 7 es un diagrama conceptual que ilustra otro ejemplo de contenido multimedia en el que unos segmentos pueden incluir cajas de actualización MPD para indicar que una MPD del contenido multimedia se debe actualizar.
La FIG. 8 es un diagrama de flujo que ilustra un ejemplo de procedimiento para proporcionar indicaciones de grupos de representaciones mediante un dispositivo servidor, y para seleccionar grupos de representaciones mediante un dispositivo cliente, así como una representación individual dentro del grupo de representaciones seleccionado.
La FIG. 9 es un diagrama de flujo que ilustra un ejemplo de procedimiento para proporcionar datos representativos de un modo de reproducción no estándar mediante un dispositivo servidor, y para usar los datos mediante un dispositivo cliente para recuperar y reproducir en modo de reproducción no estándar datos de contenido multimedia.
La FIG. 10 es un diagrama de flujo que ilustra un ejemplo de procedimiento para proporcionar, mediante un dispositivo servidor, indicaciones de que un archivo de manifiesto, tal como una MPD, se debe actualizar, y para actualizar una MPD mediante un dispositivo cliente.
La FIG. 11 es un diagrama de flujo que ilustra un ejemplo de procedimiento para crear y usar datos de un documento de informe de calidad de experiencia (QoE).
DESCRIPCIÓN DETALLADA
[0011] En general, la presente divulgación describe unas técnicas para la emisión en continuo de datos multimedia, tales como datos de audio y vídeo, a través de una red. Las técnicas de la presente divulgación se pueden usar junto con la emisión en continuo adaptativa dinámica por HTTP (DASH). La presente divulgación describe diversas técnicas que pueden realizarse junto con la emisión en continuo de red, cualquiera o la totalidad de las cuales pueden implementarse solas o en cualquier combinación. Como se describe con mayor detalle a continuación, diversos dispositivos que realizan la emisión en continuo de red pueden estar configurados para implementar las técnicas de la presente divulgación.
[0012] De acuerdo con la técnica DASH y otras similares para emitir en continuo datos a través de una red, un contenido multimedia (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 una variedad de formas y con una variedad de características. Un dispositivo de preparación de contenido puede formar múltiples representaciones del mismo contenido multimedia. Cada representación puede corresponder a un conjunto particular de características, tales como unas características de codificación y renderización, para proporcionar datos usables por una variedad de dispositivos cliente diferentes con diversas capacidades de codificación y renderización. Además, las representaciones que tienen diversas velocidades de bits pueden permitir la adaptación de ancho de banda. Es decir, un dispositivo cliente puede determinar una cantidad de ancho de banda que está disponible actualmente y seleccionar una representación basándose en la cantidad de ancho de banda disponible, junto con unas capacidades de codificación y renderización del dispositivo cliente.
[0013] 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, a continuación, que las representaciones del conjunto forman un grupo de representaciones, en la medida en que las representaciones del conjunto se pueden usar para adaptación de ancho de banda. Es decir, las representaciones del conjunto pueden diferir en la velocidad de bits, pero por otro lado compartir sustancialmente las mismas características. De esta manera, un dispositivo cliente puede determinar diversos conjuntos de características comunes para unos grupos de representaciones de contenido multimedia, y seleccionar un grupo de representaciones basándose en unas capacidades de codificación y renderización del dispositivo cliente. A continuación, el dispositivo cliente puede cambiar de forma adaptativa entre representaciones del grupo de representaciones seleccionado basándose en la disponibilidad de ancho de banda.
[0014] El dispositivo de preparación de contenido también puede proporcionar ubicaciones de red separadas para diferentes partes de un archivo de manifiesto, como un archivo 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 archivo de manifiesto pueden ser independientemente direccionables, por ejemplo, mediante diversos identificadores de recursos uniformes (URI), tales como localizadores de recursos uniformes (URL). Una parte inicial del archivo de manifiesto puede incluir un URI, un URL u otro identificador de ubicación de otra parte del archivo de manifiesto. Por ejemplo, una primera parte del archivo de manifiesto puede incluir descripciones de características comunes de grupos de representaciones, como se ha analizado anteriormente.
[0015] Cada uno de los grupos de representaciones puede estar asociado con una parte diferente respectiva del archivo de manifiesto, que puede incluir datos indicativos de ubicaciones de datos de medios de representaciones en el grupo de representaciones respectivo. De esta manera, un dispositivo cliente puede recibir la primera parte del archivo de manifiesto, seleccionar un grupo de representaciones apropiado, recuperar otra parte del archivo de manifiesto para el grupo de representaciones seleccionado, seleccionar una representación del grupo seleccionado y usar la otra parte del archivo de manifiesto para recuperar los datos de la representación seleccionada. Por otro lado, el dispositivo cliente puede adaptarse para cambiar el ancho de banda de red usando la otra parte del archivo de manifiesto, es decir, la parte específica del grupo de representaciones seleccionado.
[0016] De forma adicional o alternativa, una parte de un archivo de manifiesto puede referirse a otra parte del archivo de manifiesto para otros propósitos. Es decir, una parte del archivo de manifiesto puede dirigir un dispositivo cliente hacia otra parte del archivo 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 se pueden usar para publicidad dirigida, en algunos ejemplos. Un dispositivo cliente puede proporcionar información de usuario, tal como un identificador de usuario, preferencias de usuario para anuncios y/o información demográfica de usuario, a un dispositivo servidor, que puede seleccionar una parte del archivo de manifiesto basándose en la información de usuario. Por lo tanto, cuando está desreferenciada, una parte externa del archivo de manifiesto puede incorporarse al archivo de manifiesto original, por ejemplo, mediante el dispositivo cliente. El dispositivo servidor puede proporcionar una ubicación de la parte del archivo de manifiesto asociada con el contenido de medios de publicidad dirigida al dispositivo cliente. El dispositivo cliente a continuación puede recuperar y presentar datos del contenido de medios de publicidad dirigida antes de recuperar datos de una representación particular de un período de contenido multimedia solicitado. De esta manera, una primera parte de un archivo de manifiesto para contenido multimedia puede referirse a una segunda parte del archivo de manifiesto.
[0017] En algunos casos, un usuario puede desear no reproducir datos de vídeo de principio a fin, sino de una manera diferente. Por ejemplo, un usuario puede desear reproducir datos de vídeo en unos modos de avance rápido o retroceso, o comenzar desde un punto de reproducción particular. Dichos modos de reproducción de vídeo, que son modos distintos a la reproducción de principio a fin, pueden denominarse “modos de reproducción no estándar”. Debido a que en los modos de reproducción no estándar no se reproducirán finalmente todos los datos de vídeo, no es necesario recuperar todos los datos de vídeo. La presente divulgación proporciona técnicas para admitir modos de reproducción no estándar también. Por ejemplo, un dispositivo de preparación de contenido puede proporcionar indicaciones de ubicaciones de intervalo de bytes de tramas en los datos de vídeo usados para los modos de reproducción no estándar, tales como unas imágenes de actualización de descodificador instantánea (IDR). En general, las imágenes IDR se pueden descodificar sin hacer referencia a los datos de ninguna trama externa a las propias imágenes IDR. Las tramas o los sectores de imágenes IDR en general se codifican en un modo de intrapredicción, para evitar dependencias de otras tramas o sectores. De esta manera, el dispositivo cliente puede recuperar información indicativa de ubicaciones de imágenes IDR para descargar solo datos para las imágenes IDR para su uso en la visualización de datos de vídeo en un modo de reproducción no estándar, como el avance rápido. También se pueden incluir otros datos en la subsecuencia temporal. Los datos se pueden disponer en orden de codificación, de modo que los datos usados como referencia aparecen antes que (y en una secuencia de bytes continua con) los datos de referenciación. Por ejemplo, una trama I puede preceder a una trama P, que puede preceder a una o más tramas B, cualquiera o la totalidad de las cuales puede preceder a otras tramas B que pueden referirse a la trama B anterior de forma jerárquica.
[0018] En algunos ejemplos, un archivo de manifiesto, tal como una MPD, puede requerir actualizaciones ocasionales. La presente 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 indican que una MPD correspondiente requiere una actualización. Estos datos pueden corresponder a un elemento inicial de un segmento, que puede indicar las actualizaciones que se deben aplicar a la MPD y/o ubicaciones desde las cuales un dispositivo cliente puede recuperar las actualizaciones para la MPD. Las actualizaciones pueden comprender una MPD completamente nueva o actualizaciones progresivas relativas a una MPD anterior para el contenido multimedia.
[0019] La presente divulgación incluye además técnicas para proporcionar retroalimentación de dispositivos cliente a un dispositivo servidor y/o un dispositivo de preparación de contenido. La retroalimentación puede corresponder, por ejemplo, a información indicativa de datos que se han recuperado para contenido multimedia. Un administrador u otro usuario del dispositivo de preparación de contenido y/o servidor puede usar dicha información en una variedad de maneras. Por ejemplo, el usuario puede configurar una red de distribución de contenido (CDN) para almacenar en memoria caché datos de las representaciones a las que se accede con más frecuencia en dispositivos proxy de la CDN, tales como encaminadores u otros dispositivos. En otro ejemplo, el usuario puede determinar las representaciones a las que se accede con más frecuencia para determinar si determinadas representaciones deberían añadirse a, o eliminarse de, el contenido multimedia actual, y/o cómo codificar representaciones de contenido multimedia futuro.
[0020] Los archivos de vídeo, tales como los segmentos de representaciones de contenido de medios, pueden ajustarse a los datos de vídeo encapsulados de acuerdo con cualquiera de entre el formato de archivo de medios base ISO, el formato de archivo de codificación de vídeo escalable (SVC), el formato de archivo de codificación de vídeo avanzada (AVC), el formato de archivo del Proyecto de Asociación de Tercera Generación (3GPP) y/o el formato de archivo de codificación de vídeo multivista (MVC) u otros formatos de archivo de vídeo similares.
[0021] El formato de archivo de medios base ISO está diseñado para contener información de medios temporizada 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 archivo de medios base ISO (ISO/IEC 14496-12:2004) se especifica en el documento MPEG-4 Parte 12, que define una estructura general para los archivos de medios basados en el tiempo. El formato de archivo de medios base ISO se usa como base para otros formatos de archivos de la familia, tal como el soporte definido del formato de archivo AVC (ISO/IEC 14496-15) para la compresión de vídeo H.264/MPEG-4 AVC, el formato de archivo 3GPP, el formato de archivo SVC y el formato de archivo MVC. El formato de archivo 3GPP y el formato de archivo MVC son ampliaciones del formato de archivo AVC. El formato de archivo de medios base ISO contiene la información de temporización, estructura y medios para secuencias temporizadas de datos de medios, tales como presentaciones audiovisuales. La estructura de archivo puede ser orientada a objetos. Un archivo puede descomponerse en objetos básicos de una manera muy sencilla, y la estructura de los objetos está implícita en su tipo.
[0022] Los archivos que se ajustan al formato de archivo de medios base ISO (y ampliaciones del mismo) pueden estar formados como una serie de objetos, denominados “cajas”. Los datos en el formato de archivo de medios base ISO pueden estar contenidos en cajas, de modo que no es necesario que haya otros datos dentro del archivo y no es necesario que haya datos fuera de las cajas dentro del archivo. Esto incluye cualquier firma inicial requerida por el formato de archivo específico. Una “caja” puede ser un componente esencial orientado a objetos definido por un identificador y una longitud de tipo único. Típicamente, una presentación está contenida en un archivo y la presentación de medios es independiente. El contenedor de película (caja de película) puede contener los metadatos de los medios, y las tramas de audio y vídeo pueden estar contenidos en el contenedor de datos de medios y podrían estar en otros archivos.
[0023] Una representación (secuencia de movimiento) puede estar contenida en varios archivos, a veces denominados segmentos. La información de temporización y tramas (posición y tamaño) se encuentra en general en el archivo de medios base ISO, y los archivos complementarios pueden usar esencialmente cualquier formato. Esta presentación puede ser “local” para el sistema que contiene la presentación, o puede proporcionarse a través de una red u otro mecanismo de distribución de flujos.
[0024] 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 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 identificarse mediante una tabla especial en cada pista. De manera más general, la naturaleza de las dependencias entre muestras de pistas también se puede documentar usando metadatos. Los metadatos se pueden estructurar como una secuencia de muestras de formato de archivo, igual que una pista de vídeo. Dicha pista puede denominarse pista de metadatos. Cada muestra de metadatos se puede estructurar como una declaración de metadatos. Hay diversos tipos de declaraciones, correspondientes a las diversas preguntas que se pueden formular sobre la muestra de formato de archivo correspondiente o sus muestras constitutivas.
[0025] Cuando se distribuyen medios a través de un protocolo de emisión en continuo, puede ser necesario transformar los medios respecto de la forma en que se representan en el archivo. Un ejemplo de lo anterior se obtiene cuando los medios se transmiten a través del Protocolo de T ransporte en Tiempo Real (RTP). En el archivo, por ejemplo, cada trama de vídeo se almacena de forma contigua como una muestra de formato de archivo. En RTP, se deben obedecer unas reglas de paquetización específicas del códec usado para colocar estas tramas en paquetes RTP. Un servidor de emisión en continuo puede estar configurado para calcular dicha paquetización en tiempo de ejecución. Sin embargo, hay respaldo para la asistencia de los servidores de emisión en continuo.
[0026] Las técnicas de la presente divulgación pueden ser aplicables a los protocolos de emisión en continuo de red, tales como emisión en continuo HTTP, por ejemplo, de acuerdo con la emisión en continuo adaptativa dinámica por HTTP (DASH). En la emisión en continuo HTTP, las operaciones usadas frecuentemente incluyen GET y GET parcial. La operación GET recupera un archivo completo asociado a un localizador de recursos uniforme (URL) o a otro identificador, por ejemplo, un URI. La operación GET parcial recibe un intervalo de bytes como parámetro de entrada y recupera un número continuo de bytes de un archivo correspondiente al intervalo de bytes recibido. Por tanto, se pueden proporcionar fragmentos de película para emisión en continuo HTTP, porque una operación GET parcial puede obtener uno o más fragmentos de película individuales. Debe observarse que, en un fragmento de película, puede haber varios fragmentos de pista de diferentes pistas. En la emisión en continuo HTTP, una representación de medios puede ser una recopilación de datos estructurada que es accesible para el cliente. El cliente puede solicitar y descargar información de datos de medios para presentar un servicio de emisión en continuo a un usuario.
[0027] En el ejemplo de emisión en continuo de datos 3GPP usando emisión en continuo HTTP, puede haber múltiples representaciones para datos de vídeo y/o audio de contenido multimedia. El manifiesto de dichas representaciones se puede definir en una estructura de datos de descripción de presentación de medios (MPD). Una representación de medios puede corresponder a una recopilación de datos estructurada que es accesible para un dispositivo cliente de emisión en continuo HTTP. El dispositivo cliente de emisión en continuo HTTP puede solicitar y descargar información de datos de medios para presentar un servicio de emisión en continuo a un usuario del dispositivo cliente. Una representación de medios se puede describir en la estructura de datos de MPD.
[0028] Un contenido multimedia puede contener una secuencia de uno o más períodos. Los períodos pueden definirse mediante un elemento Period en la MPD. Cada período puede tener un atributo start en la MPD. La MPD puede incluir un atributo start y un atributo availableStartTime para cada período. Para servicios en directo, la suma del atributo start del período y el atributo de la MPD availableStartTime puede especificar el tiempo de disponibilidad del periodo en formato UTC, en particular, el primer segmento de medios de cada representación en el período correspondiente. Para servicios a la carta, el atributo start del primer período puede ser 0. Para cualquier otro período, el atributo start puede especificar un desplazamiento temporal entre la hora de inicio del período correspondiente con respecto a la hora 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. Las horas de inicio de período pueden ser precisas. Pueden reflejar la temporización real resultante de la reproducción de los medios de todos los periodos anteriores.
[0029] Cada período puede contener una o más representaciones para el mismo contenido de medios. Una representación puede ser una de entre un número de versiones codificadas alternativas de datos de audio o vídeo. Las representaciones pueden diferir en diversas características, tales como los tipos de codificación, por ejemplo, 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 multimedia y codificados de una forma particular.
[0030] Las representaciones de un período particular se pueden asignar a un grupo, que puede indicarse mediante un atributo group en la MPD. Las representaciones del mismo grupo se consideran en general alternativas mutuas. Por ejemplo, cada representación de datos de vídeo para un período particular se puede asignar al mismo grupo, de modo que se puede seleccionar cualquiera de las representaciones para la descodificación para visualizar datos de vídeo del contenido multimedia 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 la combinación de como máximo 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 a la hora de inicio del período.
[0031] 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 autoinicializador. 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 referenciarse de forma exclusiva mediante un identificador, tal como un identificador de recursos uniformes (URL). La MPD puede proporcionar los identificadores para cada segmento. En algunos ejemplos, la MPD también puede proporcionar intervalos de bytes en forma de un atributo range, que puede corresponder a los datos para un segmento dentro de un archivo accesible mediante el URL o el URI.
[0032] 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 de medios individual, tal como audio, vídeo o texto temporizado (por ejemplo, para subtítulos ocultos). Los componentes de medios pueden tener continuidad temporal entre los límites de segmentos de medios consecutivos dentro de una representación.
[0033] La FIG. 1 es un diagrama de bloques que ilustra un ejemplo de sistema 10 que implementa técnicas para emisión continua de datos de medios a través de una red. En este ejemplo, el sistema 10 incluye un dispositivo de preparación de contenido 20, un dispositivo servidor 60 y un dispositivo cliente 40. El dispositivo cliente 40 y el dispositivo servidor 60 están acoplados de forma comunicativa mediante 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 mediante la red 74 u otra red, o pueden estar directamente acoplados de forma comunicativa. En algunos ejemplos, el dispositivo de preparación de contenido 20 y el dispositivo servidor 60 pueden comprender el mismo dispositivo.
[0034] El dispositivo de preparación de contenido 20, en el ejemplo de la FIG. 1, comprende una fuente de audio 22 y una fuente de vídeo 24. La fuente de audio 22 puede comprender, por ejemplo, un micrófono que genera señales eléctricas representativas de unos datos de audio captados que el codificador de audio 26 va a codificar. De forma alternativa, la fuente 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 otra fuente de datos de audio. La fuente de vídeo 24 puede comprender una cámara de vídeo que genera datos de vídeo que el codificador de vídeo 28 va a codificar, un medio de almacenamiento codificado con datos de vídeo grabados previamente, una unidad de generación de datos de vídeo, tal como una fuente de gráficos de ordenador, o cualquier otra fuente 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 multimedia en un medio separado que es leído por el dispositivo servidor 60.
[0035] Los datos de audio y vídeo sin procesar pueden comprender datos analógicos o digitales. Los datos analógicos se pueden digitalizar antes de que el codificador de audio 26 y/o el codificador de vídeo 28 los codifique. La fuente de audio 22 puede obtener datos de audio de un participante hablante mientras el participante hablante está hablando, y la fuente de vídeo 24 puede obtener simultáneamente datos de vídeo del participante hablante. En otros ejemplos, la fuente de audio 22 puede comprender un medio de almacenamiento legible por ordenador que comprende datos de audio almacenados, y la fuente de vídeo 24 puede comprender un medio de almacenamiento legible por ordenador que comprende datos de vídeo almacenados. De esta manera, las técnicas descritas en la presente divulgación pueden aplicarse a datos de audio y vídeo en directo de emisión en continuo y tiempo real, o a datos de audio y vídeo archivados y pregrabados.
[0036] Las tramas de audio que corresponden a tramas de vídeo son en general tramas de audio que contienen datos de audio que la fuente de audio 22 ha captado al mismo tiempo que los datos de vídeo captados por la fuente de vídeo 24 que están contenidos dentro de las tramas de vídeo. Por ejemplo, mientras un participante hablante en general genera datos de audio al hablar, la fuente de audio 22 capta los datos de audio y la fuente de vídeo 24 capta los datos de vídeo del participante hablante al mismo tiempo, es decir, mientras la fuente de audio 22 está captando los datos de audio. Por lo tanto, una trama de audio puede corresponder temporalmente a una o más tramas de vídeo particulares. En consecuencia, una trama de audio correspondiente a una trama de vídeo corresponde en general a una situación en la que los datos de audio y los datos de vídeo se captaron al mismo tiempo, y para la que una trama de audio y una trama de vídeo comprenden, respectivamente, los datos de audio y los datos de vídeo que se captaron al mismo tiempo.
[0037] En algunos ejemplos, el codificador de audio 26 puede codificar un sello de tiempo en cada trama de audio codificada que representa una hora a la que se han grabado los datos de audio para la trama de audio codificada y, de manera similar, el codificador de vídeo 28 puede codificar un sello de tiempo en cada trama de vídeo codificada que representa una hora a la que se han grabado 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 de tiempo y una trama de vídeo que comprende el mismo sello de tiempo. 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 de tiempo, o que la fuente de audio 22 y la fuente de vídeo 24 pueden usar para asociar datos de audio y vídeo, respectivamente, a un sello de tiempo.
[0038] En algunos ejemplos, la fuente de audio 22 puede enviar datos al codificador de audio 26, correspondientes a una hora a la que se han grabado los datos de audio, y la fuente de vídeo 24 puede enviar datos al codificador de vídeo 28, correspondientes a una hora a la que se han grabado los datos de vídeo. En algunos ejemplos, el codificador de audio 26 puede codificar un identificador de secuencia en los datos de audio codificados para indicar un orden temporal relativo de los datos de audio codificados, pero sin indicar necesariamente una hora absoluta a la cual se han grabado los datos de audio y, de manera similar, el codificador de vídeo 28 también puede usar identificadores de secuencia para indicar un orden temporal relativo de los datos de vídeo codificados. De manera similar, en algunos ejemplos, un identificador de secuencia se puede asociar o correlacionar de algún modo con un sello de tiempo.
[0039] El codificador de audio 26 en general genera un flujo de datos de audio codificados, mientras que el codificador de vídeo 28 genera un flujo de datos de vídeo codificados. Cada flujo de datos individual (ya sea de audio o vídeo) puede denominarse flujo elemental. Un flujo elemental es un componente único codificado digitalmente (y posiblemente comprimido) de una representación. Por ejemplo, la parte de vídeo o audio codificada 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 archivo de vídeo. Dentro de la misma representación, se puede usar un ID de flujo para diferenciar unos de otros los paquetes PES que pertenecen a un flujo elemental. La unidad básica de datos de un flujo elemental es un paquete de flujo elemental paquetizado (PES). Por tanto, los datos de vídeo codificados corresponden en general a flujos de vídeo elementales. De manera similar, los datos de audio corresponden a uno o más flujos elementales respectivos.
[0040] 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 descodificación para flujos de bits sin errores, cualquiera de los cuales se ajusta a un determinado perfil o nivel. La norma H.264/AVC no especifica el codificador, pero el codificador se encarga de la tarea de garantizar que los flujos de bits generados sigan la norma para un descodificador. En el contexto de una 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. Como se define en la norma H.264, por ejemplo, un “perfil” es un subconjunto de toda la sintaxis del flujo de bits que la norma H.264 especifica. Un “nivel” corresponde a las limitaciones del consumo de recursos del descodificador, tales como, por ejemplo, la memoria y el cálculo del descodificador, 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 profile_idc (indicador de perfil), mientras que un nivel se puede señalizar con un valor level_idc (indicador de nivel).
[0041] 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 descodificadores, dependiendo de los valores tomados por los elementos sintácticos en el flujo de bits, tales como el tamaño especificado de las imágenes descodificadas. La norma H.264 reconoce además que, en muchas aplicaciones, no es ni práctico ni económico implementar un descodificador capaz de ocuparse de todos los usos hipotéticos de la sintaxis dentro de un perfil particular. En consecuencia, 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 descodificadas por segundo). La norma H.264 contempla además que unas implementaciones individuales puedan admitir un nivel diferente para cada perfil admitido.
[0042] Un descodificador que se ajusta a un perfil ordinariamente admite todas las características definidas en el perfil. Por ejemplo, como característica de codificación, la codificación de imágenes B no está admitida en el perfil de base de la norma H.264/AVC, pero está admitida en otros perfiles de la H.264/AVC. Un descodificador que se ajusta a un nivel debería ser capaz de descodificar cualquier flujo de bits que no requiere 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, unas limitaciones en el número de macrobloques que se necesita procesar, el tamaño de memoria intermedia de imágenes descodificadas (DPB), el tamaño de memoria intermedia de imágenes codificadas (CPB), el intervalo de vectores de movimiento vertical, el número máximo de vectores de movimiento por cada dos MB consecutivos y si un bloque B puede tener particiones de submacrobloque inferiores a 8x8 píxeles. De esta manera, un descodificador puede determinar si el descodificador es capaz de descodificar correctamente el flujo de bits.
[0043] Las normas de compresión de vídeo, tales como ITU-T H.261, H.262, H.263, MPEG-1, MPEG-2 y H.264/MPEG-4 parte 10, y la próxima norma de Codificación de Vídeo de Alta Eficiencia (HEVC), usan la predicción temporal con compensación de movimiento para reducir la redundancia temporal. El codificador, tal como el codificador de vídeo 28, puede usar una predicción con compensación de movimiento a partir de algunas imágenes previamente codificadas (también denominadas tramas en el presente documento) para predecir las imágenes codificadas actuales de acuerdo con unos vectores de movimiento. Existen tres tipos de imagen principales en la codificación de vídeo típica. Estas son las 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 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 estar situadas antes o después de la imagen actual en orden temporal.
[0044] Los conjuntos de parámetros en general contienen información de cabecera de capa de secuencia en unos conjuntos de parámetros de secuencia (SPS), y la información de cabecera de capa de imagen que cambia ocasionalmente en unos conjuntos de parámetros de imagen (PPS). Con los conjuntos de parámetros, esta información que cambia ocasionalmente no necesita repetirse para cada secuencia o imagen, de ahí que pueda aumentarse la eficacia de codificación. Además, el uso de conjuntos de parámetros puede permitir una transmisión fuera de banda de información de cabecera, evitando la necesidad de transmisiones redundantes para lograr resistencia a los errores. En una transmisión fuera de banda, las unidades NAL de conjuntos de parámetros se transmiten por un canal diferente al de las otras unidades NAL.
[0045] En el ejemplo de la FIG. 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 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 PES a partir de datos codificados. En otros ejemplos más, la unidad de encapsulación 30 puede incluir paquetizadores para formar paquetes PES a partir de datos de audio y de vídeo codificados.
[0046] El codificador de vídeo 28 puede codificar datos de vídeo de contenido multimedia en una variedad de formas, para generar diferentes representaciones del contenido multimedia a varias velocidades de bits y con diversas características, tales como resoluciones de píxeles, velocidades de tramas, conformidad con diversas normas de codificación, conformidad con diversos perfiles y/o niveles de perfiles para diversas normas de codificación, representaciones que tienen una o múltiples vistas (por ejemplo, para reproducción bidimensional o tridimensional), u otras de dichas características. Una representación, como se usa en la presente 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 PES incluye un stream_id que identifica el flujo elemental al que pertenece el paquete PES. La unidad de encapsulación 30 es responsable de agrupar flujos elementales en archivos de vídeo de diversas representaciones.
[0047] La unidad de encapsulación 30 recibe paquetes PES para flujos elementales de una representación desde el codificador de audio 26 y el codificador de vídeo 28 y forma unas correspondientes unidades de capa de abstracción de red (NAL) a partir de los paquetes PES. En el ejemplo de la norma H.264/AVC (Codificación de Vídeo Avanzada), los segmentos de vídeo codificados están organizados en unidades NAL, que proporcionan una representación de vídeo “apta para redes” que cubre aplicaciones tales como la videotelefonía, el almacenamiento, la radiodifusión o la emisión en continuo. Las unidades NAL se pueden clasificar en unidades NAL de Capa de Codificación de Vídeo (VCL) y unidades no VCL NAL. Las unidades VCL pueden contener el motor de compresión central y pueden incluir datos de nivel de bloque, macrobloque y/o sector. Otras unidades NAL pueden ser unidades no VCL nAl . En algunos ejemplos, una imagen codificada a una hora concreta, normalmente presentada como una imagen codificada primaria, puede estar contenida en una unidad de acceso, que puede incluir una o más unidades NAL.
[0048] Las unidades no VCL NAL pueden incluir unidades NAL de conjuntos de parámetros y unidades SEI NAL, entre otras. Los conjuntos de parámetros pueden contener información de cabecera de nivel de secuencia (en conjuntos de parámetros de secuencia (SPS)) y la información de cabecera de nivel de imagen que cambia ocasionalmente (en conjuntos de parámetros de imagen (PPS)). Con los conjuntos de parámetros (por ejemplo, PPS y SPS), no es necesario repetir la información que cambia ocasionalmente para cada secuencia o imagen, por lo que la eficacia de la codificación puede aumentarse. 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 resistencia a errores. En unos ejemplos de transmisión fuera de banda, las unidades NAL de conjuntos de parámetros pueden transmitirse en un canal diferente al de otras unidades NAL, tales como las unidades SEI NAL.
[0049] La información de mejora complementaria (SEI) puede contener información que no es necesaria para descodificar las muestras de imágenes codificadas a partir de unidades VCL NAL, pero puede ayudar en los procesos relacionados con la descodificación, visualización, resistencia a errores y otros propósitos. Los mensajes SEI pueden estar contenidos en unidades no VCL NAL. Los mensajes SEI son la parte normativa de algunas especificaciones estándar y, por lo tanto, no siempre son obligatorios para la implementación de descodificador compatible con las normas. Los mensajes SEI pueden ser mensajes SEI de nivel de secuencia o mensajes SEI de nivel de imagen. Parte de la información de nivel de secuencia puede estar contenida en mensajes SEI, tal como los mensajes SEI de información de escalabilidad en el ejemplo de la SVC y los mensajes SEI de información de escalabilidad de vistas en la MVC. Estos ejemplos de mensajes SEI 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 archivo de manifiesto, tal como una descripción 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 con el lenguaje de marcado extensible (XML).
[0050] La unidad de encapsulación 30 puede proporcionar datos para una o más representaciones de contenido multimedia, junto con el archivo 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 de bus serie universal (USB), un escritor o grabador de CD o DVD, una interfaz con unos 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 multimedia a la interfaz de salida 32, que puede enviar los datos al dispositivo servidor 60 a través de una transmisión de red o unos medios de almacenamiento. En el ejemplo de la FIG. 1, el dispositivo servidor 60 incluye un medio de almacenamiento 62 que almacena diversos contenidos multimedia 64, cada uno de los cuales incluye un respectivo archivo de manifiesto 66 y una o más representaciones 68A a 68N (representaciones 68). De acuerdo con las técnicas de la presente divulgación, unas partes del archivo de manifiesto 66 pueden almacenarse en ubicaciones separadas, 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 proxy.
[0051] En algunos ejemplos, las representaciones 68 se pueden dividir en conjuntos de representaciones. 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 archivo para segmentos, información de tipo de texto que puede identificar un idioma u otras características del texto que se va a visualizar con la representación y/o datos de audio que se van a descodificar y presentar, por ejemplo, mediante unos altavoces, información de ángulo de cámara que puede describir un ángulo de cámara o una perspectiva de cámara de mundo real de una escena para representaciones del grupo de representaciones, información de calificación que describe la idoneidad del contenido para audiencias particulares, o similares.
[0052] El archivo de manifiesto 66 puede incluir datos indicativos de los subconjuntos de representaciones 68 correspondientes a grupos de representaciones particulares, así como características comunes para los grupos de representaciones. El archivo de manifiesto 66 también puede incluir datos representativos de características individuales, tales como velocidades de bits, para representaciones individuales de grupos de representaciones. De esta manera, un grupo de representaciones puede permitir una adaptación simplificada de un ancho de banda de red. Las representaciones de un grupo de representaciones pueden indicarse usando elementos hijo de un elemento del grupo de representaciones del archivo de manifiesto 66.
[0053] El archivo de manifiesto 66 también puede (es decir, de forma adicional o alternativa) señalizar información de modo de reproducción no estándar para una o más de las representaciones 68. En algunos ejemplos, una o más de las representaciones 68 pueden incluir una subsecuencia temporal respectiva para admitir el modo de reproducción no estándar. Un modo de reproducción no estándar en general corresponde a un modo 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 su lugar, pueden comenzar en una ubicación temporal especificada (por ejemplo, para permitir la búsqueda hasta una ubicación temporal particular), u omitir una o más tramas en la dirección temporal directa o inversa (p. ej., avance rápido o retroceso).
[0054] Para permitir modos de reproducción no estándar, el contenido multimedia 64 puede incluir información representativa de ubicaciones de datos para subsecuencias temporales de representaciones correspondientes 68. En algunos ejemplos, el archivo 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. Todavía en otros ejemplos, tanto las representaciones 68 como el archivo de manifiesto 66 pueden incluir información representativa de ubicaciones de datos para las subsecuencias temporales.
[0055] En algunos ejemplos, el dispositivo de preparación de contenido 20 puede preparar contenido de medios a medida que el contenido de medios se está grabando, por ejemplo, para servicios en directo. La unidad de encapsulación 30 puede, en algunos casos, necesitar actualizar periódicamente un archivo de manifiesto para el contenido de medios. La unidad de encapsulación 30 puede incluso actualizar el archivo de manifiesto dentro de un período particular del contenido de medios. De acuerdo con las técnicas de la presente divulgación, la unidad de encapsulación 30 puede formar segmentos de una representación que incluyen datos que indican que el archivo de manifiesto se debe actualizar. La unidad de encapsulación 30 podría proporcionar las actualizaciones en los propios segmentos o en una ubicación separada desde la cual los dispositivos cliente, como el dispositivo cliente 40, podrían recuperar las actualizaciones del archivo de manifiesto. De esta manera, cuando el archivo de manifiesto 66 necesita actualizarse dentro de un período particular de contenido multimedia 64, la unidad de encapsulación 30 puede formar un segmento de una o más de las representaciones 68 que indican que el archivo de manifiesto 66 se debe actualizar.
[0056] En algunos ejemplos, el archivo de manifiesto 66 puede incluir datos para insertar datos de un período remoto en un contenido multimedia 64 durante la reproducción. Por ejemplo, en lugar de codificar anuncios dentro del contenido multimedia 64, el dispositivo de preparación de contenido 20 puede preparar uno o más contenidos de medios de publicidad separados que se deben incorporar al contenido multimedia 64 durante la reproducción. El dispositivo cliente 40 puede, en algunos ejemplos, proporcionar información específica de usuario, de modo que los anuncios pueden dirigirse a un usuario del dispositivo cliente 40, de modo que un usuario del dispositivo cliente 40 recibe anuncios que son más preferibles e informativos para el usuario. Como respuesta a un conjunto de información de usuario, el dispositivo servidor 60 puede proporcionar una parte de publicidad dirigida del archivo de manifiesto al dispositivo cliente 40, lo que puede hacer que el dispositivo cliente 40 recupere datos del contenido multimedia de publicidad dirigida. De esta manera, dos o más espectadores del mismo contenido multimedia 64 pueden recibir diferentes anuncios dirigidos, de modo que los anuncios son más pertinentes y útiles para los usuarios.
[0057] El dispositivo servidor 60 incluye una unidad de procesamiento de peticiones 70 y una interfaz de red 72. En algunos ejemplos, el dispositivo servidor 60 puede incluir una pluralidad de interfaces de red. Además, cualquiera o la totalidad de las características del dispositivo servidor 60 pueden implementarse en otros dispositivos de una red de distribución de contenido, tales como encaminadores, puentes, dispositivos proxy, conmutadores u otros dispositivos. En algunos ejemplos, unos dispositivos intermedios de una red de distribución de contenido pueden almacenar en memoria caché datos de contenido multimedia 64, e incluir componentes que se ajustan sustancialmente 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.
[0058] La unidad de procesamiento de peticiones 70 está configurada para recibir peticiones de red desde dispositivos cliente, 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 el documento RFC 2616, “Hypertext Transfer Protocol - HTTP/1.1" [“Protocolo de transferencia de hipertexto - HTTP/1.1”], por R. Fielding et al., Network Working Group, IETF, junio de 1999. Es decir, la unidad de procesamiento de peticiones 70 puede estar configurada para recibir peticiones HTTP GET o GET parciales y proporcionar datos de contenido multimedia 64 como 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 peticiones también pueden especificar uno o más intervalos de bytes del segmento, comprendiendo por tanto peticiones GET parciales. La unidad de procesamiento de peticiones 70 puede estar configurada además para atender peticiones HTTP HEAD 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 estar configurada para procesar las peticiones para proporcionar los datos solicitados a un dispositivo solicitante, tal como el dispositivo cliente 40.
[0059] Como se ilustra en el ejemplo de la FIG. 1, el contenido multimedia 64 incluye el archivo de manifiesto 66, que puede corresponder a una descripción de presentación de medios (MPD). El archivo 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.
[0060] En particular, una aplicación web 52 puede recuperar datos de configuración (no mostrados) del dispositivo cliente 40 para determinar las capacidades de descodificación del descodificador de vídeo 48 y las capacidades de renderización de la salida de vídeo 44. Los datos de configuración también pueden incluir cualquiera o la totalidad de 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 web 52 puede comprender, por ejemplo, un navegador web o un cliente de medios configurados para presentar peticiones HTTP GET y GET parciales. La aplicación web 52 puede corresponder a instrucciones de software ejecutadas por uno o más procesadores o unidades de procesamiento (no mostrados) del dispositivo cliente 40. En algunos ejemplos, la totalidad o unas partes de la funcionalidad descrita con respecto a la aplicación web 52 se pueden implementar en hardware, o en una combinación de hardware, software y/o firmware, donde se puede proporcionar el hardware necesario para ejecutar las instrucciones para software o firmware.
[0061] La aplicación web 52 puede comparar las capacidades de descodificación y renderización del dispositivo cliente 40 con las características de las representaciones 68 indicadas por la información del archivo de manifiesto 66. La aplicación web 52 puede recuperar inicialmente al menos una parte del archivo de manifiesto 66 para determinar las características de las representaciones 68. Por ejemplo, la aplicación web 52 puede solicitar una parte del archivo de manifiesto 66 que describe las características de uno o más grupos de representaciones, de acuerdo con las técnicas de la presente divulgación. La aplicación web 52 puede seleccionar un subconjunto de representaciones 68 (por ejemplo, un grupo de representaciones) que tiene características que las capacidades de codificación y renderización del dispositivo cliente 40 pueden satisfacer. La aplicación web 52 a continuación puede determinar las velocidades de bits para las representaciones del grupo de representaciones, determinar una cantidad de ancho de banda de red actualmente disponible y recuperar segmentos de una de las representaciones que tiene una velocidad de bits que el ancho de banda de la red puede satisfacer.
[0062] En general, las representaciones de velocidades de bits más altas pueden facilitar 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 el ancho de banda de red disponible disminuye. En consecuencia, cuando el ancho de banda de red disponible es relativamente alto, la aplicación web 52 puede recuperar datos de representaciones de velocidades de bits relativamente altas, mientras que, cuando el ancho de banda de red disponible es bajo, la aplicación web 52 puede recuperar datos de representaciones de velocidades de bits relativamente bajas. De esta manera, el dispositivo cliente 40 puede emitir en continuo datos multimedia a través de la red 74 mientras se adapta también a la disponibilidad cambiante de ancho de banda de red de la red 74.
[0063] Como se ha indicado anteriormente, en algunos ejemplos, el dispositivo cliente 40 puede proporcionar información de usuario a, por ejemplo, el dispositivo servidor 60 o a otros dispositivos de una red de distribución de contenido. La aplicación web 52, por ejemplo, puede recopilar un identificador de usuario, unas 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 web 52 puede recibir a continuación un archivo de manifiesto asociado con el contenido de medios de publicidad dirigida, para usarlo para insertar datos del contenido de medios de publicidad dirigida en los datos de medios del contenido de medios solicitado durante la reproducción.
[0064] A veces, un usuario del dispositivo cliente 40 puede interactuar con un navegador web 52 usando las interfaces de usuario del dispositivo cliente 40, tal como un teclado, un ratón, un lápiz, una interfaz de pantalla táctil, unos botones, u otras interfaces, para solicitar que una seleccionada de las representaciones 68 se reproduzca en un modo de reproducción no estándar. Por ejemplo, el usuario puede seleccionar una ubicación temporal particular desde la cual comenzar la reproducción, o saltar a, o buscar, una ubicación temporal particular. En otro ejemplo, el usuario puede elegir realizar un avance rápido o retroceso de la representación.
[0065] Como respuesta a dichas peticiones de un usuario, la aplicación web 52 puede determinar si una de las representaciones 68 incluye una subsecuencia temporal, para realizar el modo de reproducción no estándar solicitado. En un ejemplo, un usuario puede elegir reproducir datos de vídeo en un modo de avance rápido. En lugar de recuperar todos los datos de los segmentos de una representación, la aplicación web 52 puede determinar las ubicaciones de los datos de la representación correspondientes 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 descodificador instantánea (IDR) de la representación.
[0066] Puede haber una duración temporal aproximada entre las imágenes IDR de una representación, por ejemplo, 2 segundos, 10 segundos u otras duraciones temporales aproximadas. Por otro lado, las imágenes IDR pueden codificarse en un modo de intrapredicción y, por lo tanto, la aplicación web 52 no necesita recuperar datos distintos a las imágenes IDR. La aplicación web 52 puede hacer que las imágenes IDR se visualicen a la misma velocidad de tramas a la que, por otro lado, se visualizarían los datos de vídeo de la representación. Sin embargo, debido a que se pueden saltar muchas tramas de datos entre imágenes IDR, los datos de vídeo resultantes pueden reproducirse a una velocidad de tramas incrementada, logrando así el modo de reproducción no estándar deseado.
[0067] La aplicación web 52 puede determinar las ubicaciones de los datos para la subsecuencia temporal usando diversas técnicas. En algunos ejemplos, la aplicación web 52 puede analizar datos del archivo de manifiesto 66 para determinar las ubicaciones de las imágenes IDR. Las ubicaciones de las imágenes IDR pueden indicarse usando intervalos de bytes dentro de segmentos de una representación particular. En otros ejemplos, una caja particular de segmentos de representaciones, tal como una caja de índice de subfragmento (también denominada caja de índice de subsegmento), puede proporcionar indicaciones de las ubicaciones de los datos para la subsecuencia temporal. Por ejemplo, la caja de índice de subfragmento puede incluir datos representativos de intervalos de bytes para imágenes IDR dentro de un segmento correspondiente. En otros ejemplos más, tanto el archivo de manifiesto 66 como las representaciones 68 pueden incluir información usada por la aplicación web 52 para recuperar datos para una subsecuencia temporal. En cualquier caso, la aplicación web 52 puede determinar los intervalos de bytes de las imágenes IDR en los segmentos para crear peticiones GET parciales para las imágenes IDR, y evitar recuperar datos que no se usarían para descodificar ni visualizar.
[0068] En algunos ejemplos, la unidad de encapsulación 30 puede formar segmentos de modo que las imágenes IDR sean contiguas dentro de los segmentos. Es decir, la unidad de encapsulación 30 puede asegurar que los bytes de los segmentos correspondientes a las imágenes IDR son contiguos, sin bytes intermedios para otros tipos de imágenes. De esta manera, la aplicación web 52 solo necesita especificar un único intervalo de bytes de segmentos de una representación para recuperar datos para una subsecuencia temporal de la representación. En algunos ejemplos, también se pueden usar imágenes de actualización de descodificador abierta (ODR) para realizar modos de reproducción no estándar.
[0069] En algunos ejemplos, la aplicación web 52 puede determinar que una parte de un segmento recibido indica que se debe actualizar un archivo de manifiesto. La aplicación web 52 puede estar configurada para analizar una parte particular de cada segmento, tal como una parte de cabecera u otra parte inicial del segmento, para determinar si el segmento indica que el archivo de manifiesto se debe actualizar. Cuando un segmento indica que el archivo de manifiesto se debe actualizar, la aplicación web 52 puede actualizar una copia almacenada localmente del archivo de manifiesto, ya sea usando datos del segmento o recuperando datos para actualizar el archivo de manifiesto desde una ubicación remota, por ejemplo, desde un servidor 60. Después de actualizar el archivo de manifiesto, la aplicación web 52 puede presentar futuras peticiones de datos de representaciones 68 basándose en datos del archivo de manifiesto actualizado.
[0070] Como un ejemplo, el dispositivo de preparación de contenido 20 puede codificar datos de medios en directo, tal como un acontecimiento deportivo en directo, un acontecimiento político u otro acontecimiento de interés periodístico que típicamente se transmite en directo o casi en directo, en lugar de pregrabarse. En dichos casos, a los segmentos correspondientes a los datos de medios hasta una hora determinada se les pueden asignar identificadores, como unos URL, incluidos en un archivo de manifiesto inicial. Sin embargo, después de que haya transcurrido un período de tiempo, se pueden codificar los segmentos posteriores a la hora particular y se puede asignar a estos unos identificadores, tales como unos URL. La unidad de encapsulación 30 del dispositivo de preparación de contenido 20 puede proporcionar los URL para los segmentos posteriores a la hora particular a un archivo de manifiesto actualizado. En consecuencia, para determinar cómo recuperar los segmentos posteriores a la hora particular, el dispositivo cliente 40 puede recibir información indicativa del archivo de manifiesto actualizado, a fin de crear peticiones para recuperar los segmentos posteriores a la hora particular.
[0071] En algunos ejemplos, un segmento puede indicar si ese es el último segmento de una representación. Cuando un segmento es el último segmento de una representación, es posible que deba recuperarse un nuevo archivo de manifiesto para determinar unas representaciones de un período subsiguiente del contenido multimedia correspondiente. En consecuencia, cuando la aplicación web 52 determina que un segmento es el último segmento de una representación en un período del contenido multimedia, la aplicación web 52 puede recuperar un archivo de manifiesto actualizado para el contenido multimedia, por ejemplo, una versión actualizada del archivo de manifiesto 66 de contenido multimedia 64.
[0072] En algunos ejemplos, el dispositivo cliente 40 puede mantener una estructura de datos indicativa de unas representaciones particulares 68 de las cuales el dispositivo cliente 40 ha solicitado datos para contenido multimedia 64. El dispositivo cliente 40 también puede mantener indicaciones de qué se ha reproducido exactamente y a qué hora. Es decir, la estructura de datos puede proporcionar información representativa de las horas de inicio y fin tanto en tiempo real (o de “reloj”) como en tiempo de presentación. La estructura de datos puede proporcionar además información representativa de una hora de puesta en marcha inicial y el inicio de una reproducción. Después de terminar la reproducción de contenido multimedia 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 formas más óptimas de mejorar la calidad de la experiencia, tales como reducir las pausas durante la reproducción.
[0073] La interfaz de red 54 puede recibir y proporcionar datos de segmentos de una representación seleccionada a la aplicación web 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 archivo de vídeo en flujos PES constituyentes, despaquetizar los flujos PES para recuperar datos codificados y enviar los datos codificados al descodificador de audio 46 o bien al descodificador de vídeo 48, dependiendo de si los datos codificados forman parte de un flujo de audio o vídeo, por ejemplo, como se indica en las cabeceras de paquetes PES del flujo. El descodificador de audio 46 descodifica datos de audio codificados y envía los datos de audio descodificados a la salida de audio 42, mientras que el descodificador de vídeo 48 descodifica datos de vídeo codificados y envía los datos de vídeo descodificados, que pueden incluir una pluralidad de vistas de un flujo, a la salida de vídeo 44.
[0074] El codificador de vídeo 28, el descodificador de vídeo 48, el codificador de audio 26, el descodificador de audio 46, la unidad de encapsulación 30, la aplicación web 52 y la unidad de desencapsulación 50 pueden implementarse, cada uno, como cualquiera de entre una variedad de 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), matrices de puertas programables in situ (FPGA), circuitos de lógica discreta, software, hardware, firmware o cualquier combinación de los mismos. Tanto el codificador de vídeo 28 como el descodificador de vídeo 48 pueden estar incluidos en uno o más codificadores o descodificadores, ambos de los cuales pueden estar integrados como parte de un codificador/descodificador (CÓDEC) de vídeo combinado. Asimismo, cada uno del codificador de audio 26 y del descodificador de audio 46 puede estar incluido en uno o más codificadores o descodificadores, ambos de los cuales pueden estar integrados como parte de un códec combinado. Un aparato que incluye un codificador de vídeo 28, un descodificador de vídeo 48, un codificador de audio 26, un descodificador de audio 46, una unidad de encapsulación 30, una aplicación web 52 y/o una 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.
[0075] La FIG. 2 es un diagrama conceptual que ilustra elementos de un ejemplo de contenido multimedia 100. Un contenido multimedia 100 puede corresponder a un contenido multimedia 64 (f Ig . 1) o a otro contenido multimedia almacenado en la memoria 62. En el ejemplo de la FIG. 2, el contenido multimedia 100 incluye una descripción de presentación de medios (MPD) 102 y una pluralidad de representaciones 110-120. La representación 110 incluye datos de cabecera 112 y segmentos 114A-114N (segmentos 114) opcionales, mientras que la representación 120 incluye datos de cabecera 122 y segmentos 124A-124N (segmentos 124) opcionales. 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ícula entre representaciones 110, 120.
[0076] La MPD 102 puede comprender una estructura de datos separada de las representaciones 110-120. La MPD 102 puede corresponder al archivo de manifiesto 66 de la FIG. 1. Asimismo, las representaciones 110-120 pueden corresponder a las representaciones 68 de la FIG. 1. En general, la MPD 102 puede incluir datos que describen en general características de las representaciones 110-120, tales como unas características de codificación y renderización, unos grupos de representaciones, un perfil al que corresponde la MPD 102, información de tipo de texto, información de ángulo de cámara, información de calificación, información de modo de reproducción no estándar (por ejemplo, información indicativa de representaciones que incluyen subsecuencias temporales) y/o información para recuperar períodos remotos (por ejemplo, para la inserción de publicidad dirigida en el contenido de medios durante la reproducción). Los períodos remotos también pueden denominarse períodos externos. Las FIG. 4-7, analizadas con mayor detalle a continuación, ilustran diversos ejemplos de contenido multimedia con diversos elementos incluidos en uno o ambos de una MPD y/o unas representaciones (por ejemplo, dentro de segmentos de representaciones o datos de cabecera de representaciones). Cualquiera o la totalidad de las MPD de las FIG. 4-7 pueden corresponder sustancialmente a la MPD 102 de la FIG. 2.
[0077] Los datos de cabecera 112, cuando están presentes, pueden describir características de los segmentos 114, por ejemplo, ubicaciones temporales de puntos de acceso aleatorio, cuál de los segmentos 114 incluye puntos de acceso aleatorio, desplazamientos en bytes con respecto a puntos de acceso aleatorio 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. De forma adicional o alternativa, dichas características pueden estar completamente incluidas dentro de la MPD 102.
[0078] Los segmentos 114 incluyen una o más muestras de vídeo codificadas, cada una de las cuales puede incluir tramas o sectores 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, anchura y ancho de banda. Dichas características pueden describirse mediante datos de la MPD 102, aunque dichos datos no se ilustran en el ejemplo de la FIG. 2. La MPD 102 puede incluir características como las descritas en la especificación 3GPP, con la adición de cualquier información o toda la información señalizada descrita en la presente divulgación.
[0079] Cada uno de los segmentos 114, 124 puede estar asociado con un único identificador de recursos uniforme (URI), por ejemplo, un localizador de recursos uniforme (URL). Por tanto, cada uno de los segmentos 114, 124 puede ser independientemente recuperable usando un protocolo de red de emisión en continuo, tal como el DASH. De esta manera, un dispositivo de destino, tal como el dispositivo cliente 40, puede usar una petición HTTP Get para recuperar segmentos 114 o 124. En algunos ejemplos, el dispositivo cliente 40 puede usar peticiones HTTP GET parciales para recuperar intervalos de bytes específicos de los segmentos 114 o 124.
[0080] Como se ha indicado anteriormente, la MPD 102 puede ajustarse a un perfil MPD particular. La MPD 102 puede incluir información indicativa de un tipo de extensión multipropósito de correo Internet (MIME) para MPD 102 y/o contenido multimedia 100. Sin embargo, los tipos MIME en general no indican qué códec se necesita para presentar contenido multimedia. En general, se supone que, si un dispositivo puede recuperar una MPD para contenido multimedia, tal como la MPD 102, entonces el dispositivo puede reproducir datos del contenido multimedia correspondientes 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 la MPD 102 corresponde.
[0081] Puede haber un número relativamente pequeño de perfiles a los que las MPD pueden corresponder. Los perfiles pueden admitirse por niveles para abordar las capacidades, de forma similar a la manera en que la norma H.264/AVC incluye perfiles y niveles para codificación de vídeo. Los perfiles MPD pueden disponerse como capas de cebolla, en la medida en que un perfil superior puede incluir todas las características de todos los perfiles inferiores. Puede haber un proceso de registro en una autoridad de registro para registrar diversos perfiles. En algunos ejemplos, un dispositivo cliente, tal como el dispositivo cliente 40, puede estar configurado 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-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.
[0082] Se puede proporcionar un identificador de perfil en texto sin formato (por ejemplo, como un nombre sin formato), o un nombre de dominio inverso. Una autoridad de registro, tal como el 3GPP u otra autoridad de registro, puede conservar los nombres sin formato. Un perfil puede considerarse una reivindicación y un permiso, en la medida en que el perfil puede reivindicar que un contenido multimedia correspondiente se ajusta al perfil y da permiso a un lector (por ejemplo, un dispositivo cliente) que implementa ese perfil para leer la MPD, interpreta qué reconoce y hace caso omiso del material que no entiende.
[0083] Los perfiles pueden describir características tales como, por ejemplo, características de MPD 102, 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 MPD 102 puede proporcionar información indicativa de qué códecs tienen que admitirse con el fin de recuperar datos de MPD 102 y/o contenido multimedia 100. Los perfiles también se pueden describir como “puntos de ajuste”. Los perfiles con los que cumple una MPD pueden indicarse en un atributo “Profiles” de la MPD. Por tanto, un dispositivo cliente puede estar configurado para recuperar una parte de la MPD 102 que incluye información relacionada con el atributo “Profiles” 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 y Z” se pueden señalizar de la siguiente manera:
video/vnd.mpeg.mpd;profiles="X,Y,Z".
[0084] En algunos ejemplos, la MPD 102 puede referirse a datos de períodos externos (también denominados períodos remotos). Un período corresponde en general a una sección temporal particular de contenido multimedia. Cada período puede incluir una o más representaciones, tales como las representaciones 110-120. Sin embargo, se puede insertar un período externo dentro o entre períodos de contenido multimedia 100. El período externo puede incluir datos multimedia además de datos multimedia del contenido multimedia. Por ejemplo, los periodos externos pueden incluir datos de publicidad.
[0085] 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 MPD. Para los servicios en directo, la concatenación de 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 apropiados. También se pueden usar otras tecnologías web. Los URL para períodos definidos externamente pueden procesarse en tiempo real para generar un nuevo período que contiene anuncios dirigidos a un usuario del dispositivo cliente 40. El dispositivo cliente 40 puede facilitar información adicional con la petición que puede usarse para dirigir publicidad, por ejemplo, un identificador de usuario, unas preferencias de usuario, información demográfica de usuario u otra información.
[0086] La Tabla 1 siguiente ilustra un ejemplo de conjunto de información que se puede proporcionar en la MPD 102 para describir uno o más Períodos de contenido multimedia e indicar la presencia de períodos externos:
TABLA 1 - Información de Período MPD
Figure imgf000016_0001
[0087] De esta manera, el elemento período de la MPD 102 puede referirse a periodos externos (o remotos), por ejemplo, usando periodListURI. Para contenido a la carta, las indicaciones de duraciones de período pueden ser más útiles para dispositivos cliente, tales como el dispositivo cliente 40, que las horas de inicio para admitir 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 información específica de usuario, puede permitir la publicidad dirigida al usuario. El dispositivo servidor 60 y/o el dispositivo de preparación de contenido 20 pueden estar configurados para generar dinámicamente unas MPD separadas para cada usuario o para cada dispositivo cliente. El dispositivo cliente 40, u otro dispositivo, puede concatenar la reproducción de un anuncio dirigido y un servicio en directo, por ejemplo, usando la MPD creada dinámicamente.
[0088] De esta manera, las técnicas de la presente divulgación pueden admitir situaciones en las que un proveedor de servicios ofrece contenido a la carta a través de 3GPP AHS. El contenido puede incluir varias escenas, y entre cada escena, se puede añadir un anuncio. El anuncio puede diferir para cada usuario. Es decir, se puede añadir publicidad dirigida. Además, cada anuncio puede tener una duración diferente. Del mismo modo, un proveedor de servicios puede ofrecer un servicio en directo particular (por ejemplo, un servicio gratuito). Al acceder al servicio en directo, el proveedor de servicios puede añadir un anuncio que puede o no estar dirigido a un usuario. La duración del anuncio puede diferir, dependiendo de la hora de acceso, la ubicación de acceso, el usuario y similares. El dispositivo servidor 60 puede estar configurado para proporcionar solo el URL del servicio en directo una vez terminado el anuncio, para asegurar que se vea el anuncio.
[0089] La FIG. 3 es un diagrama de bloques que ilustra elementos de un ejemplo de archivo de vídeo 150, que puede corresponder a un segmento de una representación, tal como uno de los segmentos 114, 124 de la FIG. 2. Cada uno de los segmentos 114, 124 puede incluir datos que se ajustan sustancialmente a la disposición de datos ilustrada en el ejemplo de la FIG.3. Del mismo modo, los segmentos de las FIG.4-7 analizados a continuación también pueden ajustarse sustancialmente a la estructura del archivo de vídeo 150. Como se ha descrito anteriormente, los archivos de vídeo de acuerdo con el formato de archivo de medios base ISO y ampliaciones del mismo almacenan datos en una serie de objetos, denominados “cajas”. En el ejemplo de la FIG. 3, el archivo de vídeo 150 incluye una caja de tipo de archivo (FTYP) 152, una caja de película (MOOV) 154, unas cajas de fragmento de película (MOOF) 162 y una caja de acceso aleatorio de fragmento de película (MFRA) 164.
[0090] La caja de tipo de archivo (FTYP) 152 describe en general un tipo de archivo para el archivo de vídeo 150. La caja de tipo de archivo 152 puede incluir datos que identifican una especificación que describe un mejor uso para el archivo de vídeo 150. La caja de tipo de archivo 152 puede estar situada antes de la caja MOOV 154, de las cajas de fragmento de película 162 y de la caja MFRA 164.
[0091] En algunos ejemplos, un segmento, tal como el archivo de vídeo 150, puede incluir una caja de actualización de MPD (no mostrada) antes de la caja FTYP 152. La caja de actualización de MPD puede incluir información que indica que se debe actualizar una MPD correspondiente a una representación que incluye el archivo de vídeo 150, junto con información para actualizar la MPD. Por ejemplo, la caja de actualización de MPD puede proporcionar un URI o URL para un recurso que se debe usar para actualizar la MPD. En otro ejemplo, la caja de actualización de MPD puede incluir datos para actualizar la MPD. En algunos ejemplos, la caja de actualización de MPD puede seguir inmediatamente a una caja de tipo de segmento (STYP) (no mostrada) del archivo de vídeo 150, donde la caja STYP puede definir un tipo de segmento para el archivo de vídeo 150. La FIG. 7, que se analiza con mayor detalle a continuación, proporciona información adicional con respecto a la caja de actualización de MPD.
[0092] La caja MOOV 154, en el ejemplo de la FIG. 3, incluye la caja de cabecera de película (MVHD) 156, la caja de pista (TRAK) 158 y una o más cajas de extensión de película (MVEX) 160. En general, la caja MVHD 156 puede describir características generales del archivo de vídeo 150. Por ejemplo, la caja MVHD 156 puede incluir datos que indican cuándo se ha creado originariamente el archivo de vídeo 150, cuándo se ha modificado por última vez el archivo de vídeo 150, una escala de tiempo para el archivo de vídeo 150, una duración de reproducción para el archivo de vídeo 150 u otros datos que describen en general el archivo de vídeo 150.
[0093] La caja TRAK 158 puede incluir datos para una pista del archivo de vídeo 150. La caja TRAK 158 puede incluir una caja de cabecera de pista (TKHD) que describe características de la pista correspondiente a la caja TRAK 158. En algunos ejemplos, la caja TRAK 158 puede incluir imágenes de vídeo codificadas, mientras que, en otros ejemplos, las imágenes de vídeo codificadas de la pista pueden estar incluidas en fragmentos de película 162, a los que los datos de la caja TRAK 158 pueden hacer referencia.
[0094] En algunos ejemplos, el archivo de vídeo 150 puede incluir más de una pista. En consecuencia, la caja MOOV 154 puede incluir un número de cajas TRAK igual al número de pistas del archivo de vídeo 150. La caja TRAK 158 puede describir características de una pista correspondiente del archivo de vídeo 150. Por ejemplo, la caja TRAK 158 puede indicar información temporal y/o espacial para la pista correspondiente. Una caja TRAK similar a la caja TRAK 158 de la caja MOOV 154 puede describir características de una pista de conjunto de parámetros, cuando la unidad de encapsulación 30 (FIG. 1) incluye una pista de conjunto de parámetros en un archivo de vídeo, tal como el archivo de vídeo 150. La unidad de encapsulación 30 puede señalizar la presencia de mensajes SEI de nivel de secuencia en la pista de conjunto de parámetros dentro de la caja TRAK que describe la pista de conjunto de parámetros.
[0095] Las cajas MVEX 160 pueden describir características de unos fragmentos de película 162 correspondientes, por ejemplo, para señalizar que el archivo de vídeo 150 incluye fragmentos de película 162, además de datos de vídeo incluidos en la caja MOOV 154, si los hubiera. En el contexto de los datos de vídeo de emisión en continuo, las imágenes de vídeo codificadas pueden estar incluidas en fragmentos de película 162 en lugar de en una caja MOOV 154. En consecuencia, todas las muestras de vídeo codificadas pueden estar incluidas en fragmentos de película 162, en lugar de en una caja MOOV 154.
[0096] La caja MOOV 154 puede incluir un número de cajas MVEX 160 igual al número de fragmentos de película 162 en el archivo de vídeo 150. Cada una de las cajas MVEX 160 puede describir características de uno correspondiente de los fragmentos de película 162. Por ejemplo, cada caja MVEX puede incluir una caja de cabecera de extensión de película (MEHD) que describe una duración temporal para el correspondiente uno de los fragmentos de película 162.
[0097] Como se ha indicado anteriormente, la unidad de encapsulación 30 puede almacenar un conjunto de datos de secuencia en una muestra de vídeo que no incluye datos de vídeo codificados reales. Una muestra de vídeo puede corresponder en general a una unidad de acceso, que es una representación de una imagen codificada a una hora concreta específica. En el contexto de la AVC, la imagen codificada incluye una o más unidades VCL NAL que contienen la información para crear todos los píxeles de la unidad de acceso y otras unidades no VCL NAL asociadas, tales como unos mensajes SEI. En consecuencia, la unidad de encapsulación 30 puede incluir un conjunto de datos de secuencia, que puede incluir mensajes 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 unos mensajes SEI de nivel de secuencia que están presentes en uno de los fragmentos de película 162 dentro de la una de las cajas MVEX 160 correspondiente al uno de los fragmentos de película 162.
[0098] 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 un número 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 una caja de cabecera de fragmento de película (MFHD, no mostrada en la FIG.3). La caja MFHD puede describir características del fragmento de película correspondiente, tal como un número de secuencia para el fragmento de película. Los fragmentos de película 162 pueden estar incluidos por orden de número de secuencia en el archivo de vídeo 150.
[0099] La caja MFRA 164 puede describir los puntos de acceso aleatorio de los fragmentos de película 162 del archivo de vídeo 150. Esto puede ayudar a realizar modos de reproducción no estándar, tales como los que realizan búsquedas en ubicaciones temporales particulares dentro del archivo de vídeo 150. La caja MFRA 164 es opcional en general y no es necesario incluirla en los archivos de vídeo, en algunos ejemplos. Del mismo modo, un dispositivo cliente, tal como un dispositivo cliente 40, no necesariamente tiene que hacer referencia a una caja MFRA 164 para descodificar y visualizar correctamente los datos de vídeo del archivo de vídeo 150. La caja MFRA 164 puede incluir un número de cajas de acceso aleatorio de fragmento de pista (TFRA) (no mostradas) igual al número de pistas del archivo de vídeo 150 o, en algunos ejemplos, igual al número de pistas de medios (por ejemplo, pistas sin indicación) del archivo de vídeo 150.
[0100] En algunos ejemplos, los fragmentos de película 162 pueden incluir una o más imágenes IDR y/u ODR. Del mismo modo, la caja MFRA 164 puede proporcionar indicaciones de ubicaciones dentro del archivo de vídeo 150 de las imágenes IDR y o Dr . En consecuencia, se puede formar una subsecuencia temporal del archivo de vídeo 150 a partir de imágenes IDR y ODR del archivo de vídeo 150. La subsecuencia temporal también puede incluir otras imágenes, como tramas P y/o tramas B que dependen de imágenes IDR y/u ODR. Las tramas y/o los sectores de la subsecuencia temporal pueden estar dispuestos dentro de los segmentos, de modo que las tramas/sectores de la subsecuencia temporal que dependen de otras tramas/sectores de la subsecuencia puedan descodificarse correctamente. Por ejemplo, en la disposición jerárquica de los datos, los datos usados para la predicción para otros datos también pueden estar incluidos en la subsecuencia temporal. Por otro lado, los datos pueden estar dispuestos en una subsecuencia continua, de modo que se puede especificar un solo intervalo de bytes en una petición GET parcial para recuperar todos los datos de un segmento particular usado para la subsecuencia temporal. Un dispositivo cliente, tal como el dispositivo cliente 40, puede extraer una subsecuencia temporal del archivo de vídeo 150 determinando intervalos de bytes de fragmentos de película 162 (o partes de fragmentos de película 162) correspondientes a imágenes IDR y/u ODR. Como se explica con mayor detalle a continuación, los archivos de vídeo tales como el archivo de vídeo 150 pueden incluir una caja de índice de subfragmento y/o una caja de fragmento de subpista, cualquiera de las cuales o ambas pueden incluir datos para extraer una subsecuencia temporal del archivo de vídeo 150.
[0101] La FIG. 4 es un diagrama conceptual que ilustra un ejemplo de contenido multimedia 200 que incluye una MPD 202 y unos grupos de representaciones 210-220. Un contenido multimedia 200 puede corresponder a un contenido multimedia 64 (FIG. 1) o a otro contenido multimedia almacenado en la memoria 62. En este ejemplo, las representaciones de contenido multimedia 200 están dispuestas por grupo de representaciones. Es decir, las representaciones con un conjunto común de características pueden formarse como un grupo de representaciones, que permite una adaptación de ancho de banda de red simplificada.
[0102] En este ejemplo, la MPD 202 incluye unas características de representación comunes 204A que incluyen información que describe unas características comunes del grupo de representaciones 210 y unas características de representación comunes 204B que describen unas características comunes del grupo de representaciones 220. Las características comunes pueden incluir características de codificación y/o renderización de las representaciones, tales como un códec, perfil y nivel de códec a los que se ajustan las representaciones del grupo de representaciones, resolución de píxeles, velocidad de tramas u otras características de las representaciones.
[0103] De acuerdo con las técnicas de la presente 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 analizadas anteriormente. El valor del tipo de texto puede describir unas características del texto que se debe visualizar con los datos de vídeo (por ejemplo, texto de subtítulos ocultos). El valor de tipo de texto puede describir, por ejemplo, un idioma del texto, una ubicación en la pantalla en la que se debe visualizar el texto, la fuente y/o el tamaño del texto u otras características del texto.
[0104] El valor de ángulo de cámara puede describir una posición de cámara horizontal real para una cámara usada (ya sea de forma física o conceptual) para generar datos de vídeo codificados de representaciones correspondientes. Usando los ángulos de cámara, un dispositivo cliente puede seleccionar datos de dos o más representaciones que se deben visualizar sustancialmente de forma simultánea, por ejemplo, para producir un efecto de reproducción de vídeo tridimensional. Las ubicaciones de cámara horizontales reales pueden permitir al dispositivo cliente seleccionar representaciones para aumentar o disminuir la cantidad relativa de profundidad en la reproducción tridimensional de los datos de vídeo.
[0105] La calificación puede describir la idoneidad del contenido para audiencias particulares. Por ejemplo, en Estados Unidos, la Asociación Cinematográfica de Estados Unidos define unas calificaciones que incluyen G, PG, PG-13, R y NC17. En otro ejemplo, en Reino Unido, el Consejo Británico de Clasificación Cinematográfica define unas calificaciones que incluyen U, PG, 12A, 12, 15, 18 y R18. En otro ejemplo más, en la República de China (Taiwán), las categorías de películas incluyen una categoría de audiencias generales una categoría protegida, una categoría de orientación parental y una categoría restringida.
[0106] Al proporcionar características comunes 204 de los grupos de representaciones respectivos, por ejemplo, los grupos de representaciones 210-220, un dispositivo cliente (por ejemplo, el dispositivo cliente 40) puede seleccionar uno apropiado de los grupos de representaciones 210-220, basándose al menos en parte en las correspondientes características de representación comunes 204. En el ejemplo de la FIG. 4, la MPD 202 también incluye unas 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 unas respectivas de las representaciones 212A, 212B, 222A, 222B.
[0107] Las representaciones de un grupo de representaciones pueden considerarse mutuamente excluyentes, ya 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 representaciones 210­ 220, por ejemplo, las características de representación comunes 204. Esta información puede incluir información indicativa de si un cliente puede descodificar y renderizar una representación dada. De esta manera, el dispositivo cliente puede dejar de tomar en consideración las representaciones de consideración que el dispositivo cliente es incapaz de descodificar y/o renderizar. En consecuencia, el dispositivo cliente 40 puede seleccionar un grupo de representaciones adecuado que puede descodificarse y renderizarse y, a continuación, seleccionar una representación del grupo basándose, por ejemplo, en la disponibilidad de ancho de banda de red.
[0108] El dispositivo cliente 40 también puede estar configurado con las preferencias del usuario, por ejemplo, para calificación, idioma y/o profundidad. En consecuencia, el dispositivo cliente 40 también puede seleccionar uno o más grupos de representaciones de modo que los grupos seleccionados se ajusten a las preferencias de usuario. El dispositivo cliente 40 puede seleccionar, a continuación, un subconjunto de grupos de representaciones disponibles que se pueden reproducir simultáneamente. Cuando el dispositivo cliente 40 solo es capaz de visualizar una vista, el dispositivo cliente 40 puede elegir recuperar datos solo de una representación. Por otro lado, cuando el dispositivo cliente 40 tiene capacidad de visión estéreo o multivisión, el dispositivo cliente 40 puede recuperar datos de dos o más representaciones.
[0109] Después de seleccionar uno o más grupos de representaciones, el dispositivo cliente 40 puede seleccionar representaciones de los grupos de representaciones basándose, por ejemplo, en el ancho de banda de red disponible. Cuando el ancho de banda de red disponible cambia (por ejemplo, aumenta o disminuye), el dispositivo cliente 40 puede ajustar las selecciones de representaciones de los grupos de representaciones para adaptarse a las condiciones cambiantes del ancho de banda de red. Por supuesto, el dispositivo cliente 40 también puede cambiar selecciones de representaciones si las preferencias del usuario o las capacidades del dispositivo (por ejemplo, las capacidades de descodificación y renderización) cambian.
[0110] Las características de representación comunes 204 pueden corresponder a elementos XML RepresentationGroup de la MPD 202, en algunos ejemplos. Las características de representación individuales pueden corresponder a subelementos de elementos RepresentationGroup correspondientes de la MPD 202, en algunos ejemplos.
[0111] Agrupando características comunes de las representaciones, se pueden lograr diversas optimizaciones. Por ejemplo, muchas representaciones pueden tener los mismos valores para diversos parámetros. Por lo tanto, la señalización individual de características en la MPD puede dar por resultado una duplicación sustancial en la MPD al señalizar características individualmente. Muchos dispositivos cliente están configurados para descartar la mayor parte de la MPD que se recibe. Por consiguiente, podría haber optimización en la parte de la MPD que el dispositivo cliente recibe. Por otro lado, si se descarta un grupo de representaciones, es posible que el dispositivo cliente no tenga necesidad de acceder a la información actualmente presente en la MPD (los URL, etc.) para la representación o el grupo de representaciones descartados. El dispositivo cliente también puede evitar actualizaciones innecesarias de los URL, que tienden a actualizarse con frecuencia, por ejemplo, durante la emisión en continuo y en tiempo real de red de datos de vídeo para acontecimientos en directo. Incluso si se eliminaran las redundancias en la MPD, el dispositivo cliente 40 seguiría teniendo que analizar la MPD completa después de la recepción y la reconstrucción, lo que podría desperdiciar una cantidad significativa de tiempo de computación.
[0112] La FIG. 5 es un diagrama conceptual que ilustra otro ejemplo de contenido multimedia 250, en el que los datos de MPD se dividen en diversas partes para diversos grupos de representaciones. Un contenido multimedia 250 puede corresponder a un contenido multimedia 64 (FIG. 1) o a otro contenido multimedia almacenado en la memoria 62. En particular, un archivo de manifiesto para contenido multimedia 250 incluye luna parte de MPD 252, que en general incluye datos relacionados con unos grupos de representaciones. En este ejemplo, la parte de MPD 252 incluye datos de grupo de representaciones 254A y 254B (datos de grupo de representaciones 254), que corresponden a unos grupos de representaciones respectivos 270-280, ilustrados mediante flechas que apuntan desde los datos de grupo de representaciones 254 hasta los grupos de representaciones respectivos 270-280.
[0113] En este ejemplo, los datos del grupo de representaciones 254A incluyen características comunes del grupo de representaciones 256A y una ubicación de la parte de MPD para el grupo de representaciones 258A. Es decir, la ubicación de la parte de MPD para el grupo de representaciones 258A indica la ubicación de la parte de MPD para el grupo de representaciones 260A. La ubicación de la parte de MPD para el grupo de representaciones 258A puede corresponder, por ejemplo, a un URI o URL de la parte de MPD para el grupo de representaciones 260A. De manera similar, los datos de grupo de representaciones 254B incluyen características comunes del grupo de representaciones 256B y una ubicación de la parte de MPD para el grupo de representaciones 258B, correspondiente a la parte de MPD para el grupo de representaciones 260B.
[0114] La parte de MPD para el grupo de representaciones 260A incluye información representativa de características de unas representaciones específicas 272A, 272B (representaciones 272) del grupo de representaciones 270. De manera similar, la parte de MPD para el grupo de representaciones 260B incluye información representativa de unas características de unas representaciones específicas 282A, 282B (representaciones 282) del grupo de representaciones 280.
[0115] De esta manera, un dispositivo cliente, tal como el dispositivo cliente 40, puede determinar un grupo de representaciones apropiado desde el cual se pueden recuperar datos, sin recibir datos de señalización específicos de representación para representaciones que el dispositivo cliente 40 no recuperaría, descodificaría ni visualizaría. En consecuencia, el dispositivo cliente 40 puede evitar recuperar más datos de la cuenta que, por otro lado, acabarían descartándose. En particular, después de seleccionar uno o más grupos de representaciones que incluyen representaciones que el dispositivo cliente 40 puede descodificar y renderizar, el dispositivo cliente 40 puede recuperar solo las partes de MPD para los grupos de representaciones seleccionados, sin recuperar las partes de MPD para grupos de representaciones que el dispositivo cliente 40 no podrían descodificar y/o renderizar adecuadamente.
[0116] Los datos de contenido multimedia 250 en general pueden corresponder sustancialmente a unos elementos respectivos de contenido multimedia 200. Sin embargo, el contenido multimedia 250 puede simplificar la descarga jerárquica de datos de MPD para el contenido multimedia 250 por los dispositivos cliente. Por ejemplo, en lugar de recuperar un archivo 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 representaciones y, a continuación, recuperar las partes de MPD correspondientes a esos grupos de representaciones, sin recuperar las partes de MPD correspondientes a otros grupos de representaciones que el dispositivo cliente no recuperaría (por ejemplo, porque el dispositivo cliente no admite procedimientos de descodificación y/o de renderizado para descodificar y visualizar las representaciones). De esta manera, los datos de contenido multimedia 250 pueden mitigar ineficacias de descarga y análisis innecesarios.
[0117] La Tabla 2 siguiente proporciona un ejemplo de elemento que se puede añadir a una MPD, tal como la MPD 202 de la FIG. 4 y/o una parte de MPD 252 de la FIG. 5, que describe las características de los grupos de representaciones. Las características de representación comunes 204 (FIG.4) y/o las características comunes del grupo de representaciones 256 pueden formatearse de acuerdo con la estructura de la Tabla 2.
TABLA 2
Figure imgf000020_0001
[0118] El XML siguiente proporciona ejemplos de elementos de Grupo de Representaciones de una estructura de datos de MPD:
<RepresentationGroup annotation="ex0" annotation2=”exl,,>
<representationListURI="http://www.example.con/representationsl.xml/>
</RepresentationGroup>
<RepresentationGroup annotation=''ex2" annotation2="ex3”>
<representationListURI=''http://www.example.con/representations2.xml/>
</RepresentationGroup>
[0119] La tabla 3 siguiente proporciona un ejemplo de conjunto de datos que pueden incluirse para representaciones. Estos datos pueden proporcionarse para representaciones individuales en algunos ejemplos, mientras que en otros ejemplos, la totalidad o una parte de los datos pueden proporcionarse para grupos de representaciones, de acuerdo con, por ejemplo, la tabla 2 anterior.
TABLA 3
Figure imgf000021_0001
[0120] En algunos ejemplos, los datos para grupos de representaciones y los datos para las representaciones individuales de dichos grupos pueden presentarse en una MPD, tal como la MPD 202, con una relación jerárquica. Es decir, las representaciones individuales pueden señalizarse como elementos hijo a un elemento del grupo de representaciones correspondiente, por ejemplo, la MPD 202. Del mismo modo, para la parte de MPD 252 y las partes de MPD para los grupos de representaciones 260, las características de representación individuales 262, 264 pueden corresponder a elementos hijo de las características comunes del grupo de representaciones 256.
[0121] La FIG. 6 es un diagrama conceptual que ilustra otro ejemplo de contenido multimedia 300 que se puede usar para admitir modos de reproducción no estándar. Un contenido multimedia 300 puede corresponder a un contenido multimedia 64 (FIG. 1) o a otro contenido multimedia almacenado en la memoria 62. En este ejemplo, la MPD 302 incluye información de representación 304, que puede incluir información de subsecuencia temporal 306. La información de representación 304 incluye características de representación 310, en este ejemplo. La representación 310 incluye unos segmentos 312A-312D (segmentos 312). En este ejemplo, cada uno de los segmentos 312 incluye una caja de índice de subfragmento respectiva 314 y datos de punto de acceso aleatorio (RAP) 316. En otros ejemplos, algunos segmentos pueden no incluir puntos de acceso aleatorio, mientras que algunos segmentos pueden incluir múltiples puntos de acceso aleatorio. Los puntos de acceso aleatorio pueden incluir imágenes IDR u ODR.
[0122] 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 representación 310. De forma alternativa, el dispositivo cliente 40 puede recuperar un subconjunto de RAP 316, 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 modo de reproducción no estándar, por ejemplo, avance rápido o retroceso. De manera similar, el dispositivo cliente 40 puede saltarse o buscar uno particular de los puntos de acceso aleatorio 316 para comenzar la reproducción desde una posición temporal solicitada.
[0123] El contenido multimedia puede incluir cualquiera o ambas de la información de la subsecuencia temporal 306 y/o las cajas SFIX 314 para indicar información para modos de reproducción no estándar. La información de subsecuencia temporal 306 puede incluir un elemento de “modo de reproducción no estándar” de la MPD 302, como el que se define en la Tabla 4 siguiente:
TABLA 4
Figure imgf000022_0001
[0124] En el ejemplo de la Tabla 4, el elemento de modo de reproducción no estándar incluye un elemento de subsecuencia temporal que especifica que una representación correspondiente contiene una subsecuencia temporal a la que se puede acceder mediante intervalos de bytes usando la información de las cajas de índice de subfragmento 314. Los RAP 316 pueden corresponder a partes de fragmentos de película, tales como los fragmentos de película 162 ilustrados en la FIG. 3.
[0125] Las cajas de índice de subfragmento 314 pueden describir en general ubicaciones de intervalos de bytes de los puntos de acceso aleatorio 316 de los segmentos correspondientes 312. En general, las cajas de índice de subfragmento 314 pueden aparecer después de una caja de índice de segmento (SIDX) (no mostrada en la FIG. 6) de los segmentos 312, y proporcionar tamaños de prefijo de fragmento de película para fragmentos de película a los que se hace referencia en la caja de índice de segmento inmediatamente anterior. La Tabla 5 siguiente proporciona las propiedades de un ejemplo de caja SFIX.
TABLA 5 - Propiedades de la Caja de Índice de Subfragmento
Figure imgf000022_0002
[0126] El seudocódigo siguiente proporciona un ejemplo de sintaxis para las Cajas de Índice de Subfragmento 314: aligned(8) class SubFragmentlndexBox
extends FullBox('strf', 0, 0) {
unsigned int(32) fragment_count;
unsigned int(8) sub_fragment_count;
for(i=0; i < fragment_count; i++)
for(j=0; j < sub_fragment_count-1; j++)
unsigned int(32) prefix_size;
>
[0127] La descripción siguiente proporciona un ejemplo de conjunto de semánticas para la sintaxis descrita anteriormente:
fragment_count especifica el número de fragmentos para los cuales se especifica información de subfragmento en esta caja. Debe ser igual al número de referencias de fragmento de la caja de índice de segmento inmediatamente anterior.
sub_fragment_count especifica el número de subfragmentos por fragmento
prefix_size especifica el tamaño del prefijo del fragmento i ocupado por el subfragmento j.
[0128] De forma adicional o alternativa, se puede incluir una caja de fragmento de subpista en los segmentos 312. Mientras que la caja de índice de subfragmento puede proporcionar información de sintaxis que el dispositivo cliente 40 puede recuperar junto con una caja de índice de segmento antes de solicitar datos de medios, la caja de índice de subfragmento puede proporcionar información para el dispositivo cliente 40 para crear peticiones de intervalos de bytes que se dirigen a subconjuntos de datos de fragmentos, por ejemplo, subcapas temporales.
[0129] La caja de fragmento de subpista puede especificar un reordenamiento de los datos de muestra del fragmento de pista, de tal modo que las muestras de cada fragmento de subpista preceden a todas las muestras que aparecen solo en fragmentos de subpista superiores. Las muestras de un fragmento de subpista que no aparecen en ningún fragmento de subpista inferior pueden colocarse de forma contigua en el archivo (por ejemplo, uno correspondiente de los segmentos 312) en el mismo orden en que aparecen en la caja de pista en ejecución. Esto puede permitir que las muestras se almacenen en el orden de la capa de escalabilidad temporal dentro del fragmento de pista. Cuando esta caja está presente, puede haber solo una caja de pista en ejecución.
[0130] La Tabla 6 describe las propiedades de la caja de fragmento de subpista:
TABLA 6 - Propiedades de la Caja de Fragmento de Subpista
Figure imgf000023_0001
[0131] El seudocódigo siguiente ilustra un ejemplo de sintaxis para la caja 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 < sample_count[i]; j++)
bit(l) cur_sub_trak_flag;
}
reserved_trailing_bits;
}
[0132] La descripción siguiente proporciona un ejemplo de semántica para el ejemplo de sintaxis de la caja de fragmento de subpista descrito anteriormente:
sub_track_count indica el número de fragmentos de subpista; cuando esta caja está presente, sub_track_count puede ser igual o mayor que 2.
sample_count[i] indica el número de muestras del 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 del fragmento de subpista 0 es equivalente al número de ceros de la primera cadena de bits del siguiente bucle. El número de muestras del fragmento de subpista con un índice de sub_track_count-1, que es sample_count [sub_track_count-1], es igual al número de muestras del Fragmento de Pista.
cur_sub_track_flag 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 indicadores sample_count[0] que indican las posiciones de las muestras en el fragmento de subpista 1 que no están también en el fragmento de subpista 0. La segunda iteración del bucle contiene indicadores sample_count[1] que indican las posiciones de las muestras en el fragmento de subpista 2 y que no están también en el fragmento de subpista 1, etc. sample_count[sub_track_count-1] se considera igual al número de muestras del Fragmento de Pista.
[0133] Los modos de reproducción no estándar pueden aplicarse a una variedad de situaciones diferentes. Por ejemplo, los modos de reproducción no estándar se pueden usar para hacer una pausa en un servicio temporalmente, reanudar el servicio después de una pausa, retroceder 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 interrumpa la reproducción o para buscar una posición temporal deseada particular).
[0134] Los modos de reproducción no estándar admitidas que usan subsecuencias temporales pueden proporcionar un número de ventajas. Por ejemplo, las subsecuencias temporales pueden admitir diversas velocidades de tramas de manera relativamente fácil. Del mismo modo, la representación que incluye una subsecuencia temporal se puede usar para una reproducción regular, ya que la representación no está limitada a la subsecuencia temporal. Además, la codificación con subsecuencias temporales puede ser muy eficiente. Las subsecuencias temporales tampoco requieren nuevos perfiles o niveles de codificación, pueden reusar las representaciones regulares, evitar la complejidad de cliente adicional, habilitar suministro de contenido simple, proporcionar ancho de banda, memoria caché y eficiencia de almacenamiento, proporcionar flexibilidad a la implementación del cliente para optimizar la experiencia del usuario, ser comunes entre diferentes operaciones de modo de reproducción no estándar, y pueden ser aplicables a un amplio espectro de implementaciones de cliente, y pueden proporcionar una experiencia de usuario relativamente buena en términos de demora de puesta en marcha después de la búsqueda, así como buenas velocidades de tramas, capacidad de reacción y otras de dichas métricas.
[0135] La FIG. 7 es un diagrama conceptual que ilustra otro ejemplo de contenido multimedia 350 en el que los segmentos 362A-362D pueden incluir cajas de actualización de MPD 364 para indicar que la MPD 352 se debe actualizar. Un contenido multimedia 350 puede corresponder a un contenido multimedia 64 (FIG. 1) o a otro contenido multimedia almacenado en la memoria 62. En general, la MPD 352 incluye información de representación 354 para la representación 360, tal como las características de la representación 360 y los URI o URL de los segmentos 362 de la representación 360. En algunos casos, la representación 360 se puede formar a partir de contenido en directo, por ejemplo, un acontecimiento deportivo, y por lo tanto, los URI de los segmentos 362 podrían no estar determinados de antemano. Por lo tanto, cuando se forman los segmentos de representación 360, uno o más de los segmentos pueden incluir cajas de actualización de MPD para indicar que la MPD 352 se debe actualizar.
[0136] Por ejemplo, en la FIG. 7, el segmento 362A incluye la caja de actualización de MPD 364 y los datos de segmento 366A. Los datos de segmento 366A pueden formarse en general de acuerdo con el archivo de vídeo 150 (FIG. 3). Sin embargo, el segmento 362A también incluye la caja de actualización de MPD 364A. De esta manera, el dispositivo cliente 40 puede actualizar la MPD 352 basándose en los datos de la caja de actualización de MPD 364A. La caja 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á entenderse que los datos de las cajas de actualización de MPD 364 no están necesariamente incluidos en cajas explícitas. Por ejemplo, los datos que se ajustan sustancialmente a los datos de las cajas de actualización de MPD 364 pueden estar incluidos en otras cajas de segmentos 362, o en una parte de cabecera 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 cabecera, una caja de actualización de MPD similar a las cajas de actualización de MPD 364, o datos incluidos en una o más cajas de segmentos 362 diferentes.
[0137] De esta manera, después de recuperar los datos del segmento 362A, el dispositivo cliente 40 puede analizar la caja de actualización de MPD 364A para actualizar la MPD 352. El dispositivo cliente 40 a continuación puede usar la versión actualizada de la MPD 352 para recuperar los segmentos 362B y 362C. Los segmentos 362B y 362C incluyen unos datos de segmento 366B, 366C, que de nuevo pueden formatearse de acuerdo con el archivo de vídeo 150 de la FIG. 3. El dispositivo cliente 40 también puede recuperar datos del segmento 362D. En este ejemplo, el segmento 362D incluye la caja de actualización de MPD 364B, que el dispositivo cliente 40 puede usar para realizar otra actualización de MPD 352, de una manera que se ajusta sustancialmente a la primera actualización. En consecuencia, 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 de la caja de actualización de MPD 364B.
[0138] Una caja de actualización de MPD, tal como las cajas de actualización de MPD 364A, 364B, puede incluir propiedades de acuerdo con la Tabla 7 siguiente:
TABLA 7 - Propiedades de la Caja de Actualización de MPD
Figure imgf000025_0001
[0139] La sintaxis siguiente se puede usar para definir una caja 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;
/// The following are optional fields
string mpd_location
}
[0140] A continuación, se proporciona un ejemplo de conjunto de semánticas para el ejemplo de sintaxis de caja de actualización de MPD:
Los indicadores de información mpd contienen la O lógica 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 próxima
0x02 Fin-de-presentación
0x03-0x07 reservados
new_location_flag si se establece en 1, entonces la nueva Descripción de Presentación de Medios está disponible en una nueva ubicación especificada en la ubicación de mpd.
latest_mpd_update_time especifica la hora en ms para cuando la actualización de MPD es necesaria en relación con la hora de emisión de la MPD de la última MPD. El cliente puede elegir actualizar la MPD en cualquier momento desde el actual.
mpd_location está presente si y solo si se establece new_location_flag y proporciona un Localizador de Recursos Uniforme para la nueva Descripción de Presentación de Medios.
[0141] De esta manera, la señalización en banda de nivel de segmento se puede usar para indicar actualizaciones de MPD 302. Las actualizaciones pueden proporcionarse en los límites del segmento, en algunos ejemplos. Es decir, las cajas de actualización de MPD 364 pueden aparecer solo al principio o al final de los segmentos respectivos, en diversos ejemplos. En algunos ejemplos, si surge algún problema de ancho de banda de las actualizaciones de MPD, el dispositivo servidor 60 (FIG. 1) puede ofrecer unas MPD para determinadas capacidades del dispositivo, de modo que solo se actualizan estas partes. Por otro lado, un elemento MPD de la MPD 302 puede proporcionar una hora de publicación en tiempo de reloj de la MPD 302. Esto puede proporcionar una hora de publicación de MPD única, que puede proporcionar un identificador único para la MPD e indicar cuándo se ha emitido 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 actualizaciones de MPD usando 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.
[0142] La inserción de publicidad, tal como la inserción de publicidad dirigida, también se puede realizar usando cajas de actualización de MPD similares a las de la FIG. 7. Es decir, se puede proporcionar una caja de actualización de MPD para dirigir el dispositivo cliente 40 para recuperar datos del contenido multimedia de publicidad. Esto puede ocurrir durante tiempos de espera u otras acciones en acontecimientos deportivos que retrasan el juego, y de igual manera, en los tiempos de espera o retardos por acciones que generan interés para reproducción de vídeo. Debido a que dichos acontecimientos pueden ocurrir de manera un tanto aleatoria, los tiempos en los que se van a insertar los anuncios podrían no conocerse a priori.
[0143] La actualización de la MPD 302 puede ser factible de manera asíncrona con la distribución de segmentos. El dispositivo servidor 60 puede proporcionar garantías al dispositivo cliente 40 de que una MPD no se actualizará durante una cantidad de tiempo determinado. Sin embargo, el dispositivo servidor 60 no necesita señalizar explícitamente cuándo se actualiza la MPD 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 cliente pueden intervenir en diferentes casos de actualización de MPD. Por lo tanto, los clientes pueden experimentar un desplazamiento. El dispositivo de servidor 60 y/o el dispositivo de preparación de contenido 20 pueden permitir visión en diferido.
[0144] La FIG. 8 es un diagrama de flujo que ilustra un ejemplo de procedimiento para proporcionar indicaciones de grupos de representaciones mediante un dispositivo servidor, y para seleccionar grupos de representaciones mediante un dispositivo cliente, así como una representación individual dentro del grupo de representaciones seleccionado. Aunque el procedimiento de la FIG.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 FIG. 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 o la totalidad de las funciones atribuidas al dispositivo servidor 60.
[0145] 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 multimedia, donde las representaciones del conjunto tienen una o más características comunes, así como un archivo de manifiesto para el contenido multimedia. El conjunto de representaciones puede corresponder a un grupo de representaciones. El dispositivo servidor 60 puede proporcionar indicaciones de grupos de representaciones al dispositivo cliente 40 (400). Por ejemplo, el dispositivo servidor 60 puede proporcionar la Mp D 202 (FIG. 4) o la parte de MpD 252 (FIG. 5) al dispositivo cliente 40. Otros ejemplos de MPD de las FIG. 2, 6 y 7 también pueden incluir indicaciones de grupos de representaciones, tales como elementos XML de grupo de representaciones. En cualquier caso, el dispositivo cliente 40 puede recibir información que describe características de grupo de representaciones (402), por ejemplo, del archivo MPD o la parte del archivo MPD recibido desde el dispositivo servidor 60.
[0146] El dispositivo cliente 40 puede analizar a continuación las características de grupo de representaciones para eliminar grupos de representaciones que el dispositivo cliente 40 no puede o no elegiría recuperar, descodificar o renderizar. Por ejemplo, el dispositivo cliente 40 puede comparar las capacidades de descodificación y renderización con las características de los grupos de representaciones para determinar grupos de representaciones inapropiados. En otro ejemplo, el dispositivo cliente 40 puede comparar las preferencias del usuario en cuanto al idioma, la calificación y la cantidad de profundidad (por ejemplo, como las proporcionadas por dos o más vistas que tienen ángulos de cámara particulares), para eliminar grupos de representaciones no deseados. El dispositivo cliente 40 puede seleccionar a continuación un grupo de representaciones apropiado basándose al menos en parte en las capacidades de descodificación y renderización del dispositivo cliente 40 (404). Por supuesto, debe entenderse que esta selección también podría hacerse (de forma adicional o alternativa) basándose en las preferencias del usuario, como se ha analizado anteriormente. De esta manera, el dispositivo cliente 40 puede seleccionar un conjunto de representaciones basándose en unas características comunes para el conjunto de representaciones.
[0147] Después de seleccionar un grupo de representaciones, el dispositivo cliente 40 puede solicitar datos para una parte de MPD que describe específicamente las representaciones del grupo de representaciones. Como 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 representaciones seleccionado al dispositivo cliente 40 (406). Por ejemplo, el dispositivo servidor 60 puede enviar datos para una específica de las partes de MpD para los grupos de representaciones 260 (FIG. 5) al dispositivo cliente 40. En otros ejemplos, el dispositivo cliente 40 puede haber recibido ya una MPD completa para el contenido multimedia (por ejemplo, la MPD 202 de la FIG. 4), pero puede analizar en particular unas partes de la MPD que corresponden específicamente al grupo de representaciones seleccionado. De esta manera, en algunos ejemplos, la etapa 406 de la FIG. 8 puede producirse antes que la etapa 402 y/o que la etapa 404.
[0148] En cualquier caso, después de recibir las características específicas de las representaciones del grupo de representaciones seleccionado, que incluyen las velocidades de bits para las representaciones (408), el dispositivo cliente 40 puede determinar una cantidad disponible actualmente de ancho de banda de red (410). El dispositivo cliente 40 puede seleccionar a continuación una representación del grupo de representaciones (412) seleccionado, de modo que la representación seleccionada tiene una velocidad de bits que se puede acomodar a la cantidad determinada de ancho de banda de red disponible actualmente. Las velocidades de bits de las representaciones representan ejemplos de características de codificación de las representaciones individuales del grupo de representaciones. El dispositivo cliente 40 puede solicitar a continuación datos de la representación seleccionada (414). Por ejemplo, el dispositivo cliente 40 puede crear (por ejemplo, generar y enviar) una petición HTTP GET para solicitar un segmento de la representación seleccionada. De forma alternativa, el dispositivo cliente 40 puede crear una petición HTTP GET parcial que especifica un intervalo de bytes de un segmento de la representación seleccionada. En cualquier caso, el dispositivo cliente 40 puede presentar la petición al dispositivo servidor 60.
[0149] El dispositivo servidor 60 puede recibir la petición y, como 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 de 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 incluyen los datos solicitados y enviar los datos solicitados al dispositivo cliente 40, por ejemplo, con destino a la dirección IP determinada del dispositivo cliente 40.
[0150] Después de recibir los datos solicitados, el dispositivo cliente 40 puede empezar a descodificar y a visualizar los datos recibidos (418). Mientras recibe los datos solicitados, el dispositivo cliente 40 puede continuar analizando el ancho de banda de red disponible actualmente y enviando peticiones de representaciones que tienen velocidades de bits que pueden acomodarse a la cantidad de ancho de banda de red (410-414) disponible actualmente. Si la cantidad de ancho de banda de red cambia, el dispositivo cliente 40 puede cambiar de forma adaptativa a una representación diferente del grupo de representaciones 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 solicitado de una representación anterior del grupo de representaciones y, a continuación, solicitar el segmento determinado (o una parte del mismo) de la nueva representación.
[0151] En algunos ejemplos, el dispositivo servidor 60 puede proporcionar una MPD correspondiente a una inserción de publicidad dirigida al dispositivo cliente 40 durante el procedimiento de la FIG. 8. La MPD puede hacer que el dispositivo cliente 40 recupere datos multimedia de publicidad dirigida 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 de publicidad al usuario del dispositivo cliente 40. La información de usuario puede incluir preferencias de usuario, información de identificación de usuario (tal como un ID de usuario), información demográfica de usuario u otra información similar. La inserción de publicidad dirigida puede tener lugar, por ejemplo, antes de la etapa 400 de la FIG. 8, o después de la etapa 418 y antes de seleccionar una representación subsiguiente, por ejemplo, para un período subsiguiente del contenido multimedia.
[0152] De esta manera, el procedimiento de la FIG. 8 representa un ejemplo de procedimiento que incluye analizar al menos una parte de un archivo de manifiesto para contenido multimedia, en el que la parte del archivo de manifiesto incluye información indicativa de conjuntos de representaciones del contenido multimedia 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 uno de los conjuntos de representaciones, seleccionar una de las representaciones del uno seleccionado de los conjuntos de representaciones basándose en una o más características de codificación de la una de las representaciones del uno de los conjuntos, y generar una petición de datos de una de la una de las representaciones basándose en la selección.
[0153] Asimismo, el procedimiento de la FIG.8 representa un ejemplo de procedimiento que incluye obtener un conjunto de representaciones de contenido multimedia que tiene una o más características comunes, en el que cada una de las representaciones del conjunto tiene características de codificación individuales separadas de las características comunes, obtener un archivo de manifiesto para el contenido multimedia, en el que el archivo de manifiesto incluye información indicativa de las representaciones del 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 del conjunto, y enviar al menos una parte del archivo de manifiesto a un dispositivo cliente.
[0154] La FIG.9 es un diagrama de flujo que ilustra un ejemplo de procedimiento para proporcionar datos representativos de un modo de reproducción no estándar mediante un dispositivo servidor, y para usar los datos mediante un dispositivo cliente para recuperar y reproducir en modo de reproducción no estándar datos de contenido multimedia. Aunque el procedimiento de la FIG.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 FIG. 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 o la totalidad de las funciones atribuidas al dispositivo servidor 60. Por otro lado, la selección de un modo de reproducción no estándar puede realizarse junto con la selección de un grupo de representaciones y una representación del grupo de representaciones, como se describe con respecto a la FIG. 8 anterior.
[0155] 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 multimedia, donde al menos una de las representaciones incluye una subsecuencia temporal, así como un archivo de manifiesto para el contenido multimedia. El archivo de manifiesto puede indicar que la representación incluye una subsecuencia temporal. El dispositivo servidor 60 puede proporcionar indicaciones de representaciones de contenido multimedia, 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 archivo MPD para el contenido multimedia, que indica que hay subsecuencias temporales disponibles para una o más representaciones del contenido multimedia. Por ejemplo, el dispositivo servidor 60 puede proporcionar al menos una parte de una MPD que incluye un elemento de modo de reproducción no estándar que tiene un subelemento de subsecuencia temporal al dispositivo cliente 40, como se ha descrito con respecto a la FIG. 6 anterior.
[0156] El dispositivo cliente 40 puede seleccionar una representación basándose en las características de las representaciones del contenido multimedia (434). Aunque el dispositivo cliente 40 no tiene que seleccionar necesariamente una representación con una subsecuencia temporal, para propósitos de análisis ilustrativo de estas técnicas, se supone que, a modo de ejemplo, el dispositivo cliente 40 selecciona una representación para la cual está disponible una subsecuencia temporal. El dispositivo cliente 40 puede recibir a continuación una petición para usar un modo de reproducción no estándar (436). Por ejemplo, el dispositivo cliente 40 puede recibir una selección de una ubicación temporal particular desde la cual puede comenzar a reproducir, por ejemplo, desde un usuario del dispositivo cliente 40. De forma alternativa, el dispositivo cliente 40 puede recibir una petición de avance rápido o retroceso de los datos de vídeo.
[0157] Como respuesta a la petición de uso del modo de reproducción no estándar, el dispositivo cliente 40 puede determinar si está disponible una subsecuencia temporal para la representación, y de ser así, solicitar datos para recuperar al menos una parte de la subsecuencia temporal (438). El dispositivo servidor 60 puede responder a la petición 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 multimedia puede indicar ubicaciones de los datos para la subsecuencia temporal. En otros ejemplos, el dispositivo cliente 40 puede solicitar cajas de índice de subfragmento y/o cajas de fragmento de subpista de unos segmentos de la representación correspondiente.
[0158] 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 de las ubicaciones especificadas (442). Por ejemplo, el dispositivo cliente 40 puede determinar ubicaciones (p. ej., los URL de segmentos y, posiblemente, los intervalos de bytes de los segmentos) que incluyen puntos de acceso aleatorio IDR y/o puntos de acceso aleatorio ODR. El dispositivo cliente 40 a continuación puede crear peticiones HTTP GET o GET parciales de datos de la subsecuencia temporal, a fin de reproducir datos de vídeo de acuerdo con el modo de reproducción no estándar.
[0159] Después de recibir las peticiones HTTP GET y/o GET parciales 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 como respuesta a peticiones HTTP GET o fragmentos de medios de los segmentos (o partes de fragmentos de medios) como respuesta a peticiones HTTP GET parciales. Después de recibir los datos solicitados, el dispositivo cliente 40 puede descodificar y visualizar 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 cantidad de ancho de banda de red disponible cambia).
[0160] De esta manera, el procedimiento de la FIG. 9 representa un ejemplo de procedimiento que incluye analizar información de un archivo de manifiesto para contenido multimedia, en el que la información del archivo de manifiesto indica que al menos una representación del contenido multimedia incluye una subsecuencia temporal, determinar una o más ubicaciones de datos para la subsecuencia temporal y presentar una o más peticiones de datos para la subsecuencia temporal.
[0161] Asimismo, el procedimiento de la FIG. 9 representa un ejemplo de procedimiento que incluye obtener datos para al menos una representación de contenido multimedia que incluye una subsecuencia temporal, obtener datos para un archivo de manifiesto para el contenido multimedia, en el que una información del archivo de manifiesto indica que la al menos una representación del contenido multimedia incluye la subsecuencia temporal, y enviar al menos una parte del archivo de manifiesto a un dispositivo cliente.
[0162] La FIG. 10 es un diagrama de flujo que ilustra un ejemplo de procedimiento para proporcionar, mediante un dispositivo servidor, indicaciones de que un archivo de manifiesto, tal como una MPD, se debe actualizar, y para actualizar una MPD mediante un dispositivo cliente. Aunque el procedimiento de la FIG. 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 FIG. 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 o la totalidad de las funciones atribuidas al dispositivo servidor 60. Además, la actualización de una MPD puede realizarse junto con la selección de un modo de reproducción no estándar y/o la selección de un grupo de representaciones y una representación del grupo de representaciones, como se describe con respecto a las FIG. 8 y 9 anteriores.
[0163] En algunos ejemplos, el dispositivo de preparación de contenido 20 puede codificar y encapsular datos de vídeo codificado captado durante un acontecimiento en directo, tal como un acontecimiento deportivo. De esta manera, el dispositivo cliente 40 puede recuperar datos codificados del acontecimiento casi en tiempo real a medida que se produce el acontecimiento. Inicialmente, el dispositivo servidor 60 puede recibir una o más representaciones de contenido multimedia correspondiente al acontecimiento en directo y proporcionar indicaciones de características para representaciones del contenido multimedia en una MPD (460). La MPD solo puede describir características y ubicaciones de segmentos hasta una ubicación temporal particular del contenido multimedia, debido a que el contenido multimedia se forma a medida que el acontecimiento se filma en directo.
[0164] 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. Como respuesta, el dispositivo servidor 60 puede enviar los segmentos solicitados. Sin embargo, además, el dispositivo servidor 60 puede enviar un segmento que incluye una caja de actualización de MPD u otra información que indica que la MPD se debe actualizar a partir de ese segmento (466).
[0165] Como respuesta, el dispositivo cliente 40 puede descodificar y visualizar 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 se debe actualizar (470). Por ejemplo, el dispositivo cliente 40 puede recibir el último segmento antes de la ubicación temporal a la que la MPD ya no se aplica. El dispositivo cliente 40 puede determinar que el último segmento incluye una caja de actualización de MPD, similar a las cajas de actualización de MPD descritas con respecto a la FIG. 7.
[0166] Usando la caja de actualización, el dispositivo cliente 40 puede solicitar actualizaciones de 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 desde la ubicación determinada. El dispositivo servidor 60 u otro dispositivo que almacena actualizaciones de la MPD (por ejemplo, el dispositivo de preparación de contenido 20) puede enviar información indicativa de las actualizaciones de la MPD (474), que el dispositivo cliente 40 puede usar para actualizar la MPD (476). De forma alternativa, en algunos ejemplos, la caja 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 usando la información de la caja de actualización de MPD. En cualquier caso, el dispositivo cliente 40 a continuación puede solicitar segmentos posteriores a la ubicación temporal a la que la MPD anterior ya no se aplica, usando 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 termina de reproducir el contenido multimedia.
[0167] En algunos ejemplos, se pueden usar técnicas similares al procedimiento de la FIG. 10 para realizar la inserción de publicidad dirigida. Por ejemplo, una MPD actualizada puede incluir una parte que corresponde al contenido de medios de publicidad. Se puede requerir que el dispositivo cliente 40 recupere y reproduzca datos del contenido de medios de publicidad, basándose en la MPD actualizada, a fin de recibir datos de uno o más segmentos del contenido de medios de publicidad, que pueden incluir otra MPD actualizada para recuperar datos de medios subsiguientes del contenido de medios deseado.
[0168] De esta manera, el procedimiento de la FIG. 10 representa un ejemplo de procedimiento que incluye recuperar datos de un primer segmento de una representación de contenido multimedia de acuerdo con unos datos de una copia de un archivo de manifiesto almacenada por un dispositivo cliente, recuperar una parte de un segundo segmento de la representación de acuerdo con el archivo de manifiesto, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto se debe actualizar, actualizar la copia del archivo de manifiesto almacenada por el dispositivo cliente basándose en la indicación de que el archivo de manifiesto se debe actualizar, y recuperar datos de medios del segundo segmento de acuerdo con el archivo de manifiesto actualizado.
[0169] Asimismo, el procedimiento de la FIG. 10 representa un ejemplo de procedimiento que incluye enviar datos de un archivo de manifiesto de contenido multimedia a un dispositivo cliente, en el que el archivo de manifiesto incluye información indicativa de un primer segmento de una representación del contenido multimedia, enviar al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto se debe actualizar, en el que una versión actualizada del archivo de manifiesto incluye información indicativa de un segundo segmento diferente de la representación, y enviar, como respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo manifiesto actualizado, datos del segundo segmento al dispositivo cliente.
[0170] La FIG. 11 es un diagrama de flujo que ilustra un ejemplo de procedimiento para crear y usar datos de un documento de informe de calidad de experiencia (QoE). Aunque el procedimiento de la FIG. 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 FIG. 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 o la totalidad de las funciones atribuidas al dispositivo servidor 60. Por otro lado, la provisión de un informe de QoE al dispositivo servidor 60 y/o al dispositivo de preparación de contenido 20 puede realizarse junto con cualquiera o la totalidad de la actualización de una MPD, la selección de un modo de reproducción no estándar y/o la selección de un grupo de representaciones y una representación del grupo de representaciones, como se describe con respecto a las FIG. 8, 9 y 10 anteriores.
[0171] Inicialmente, el dispositivo servidor 60 puede proporcionar indicaciones de las características de representaciones de contenido multimedia de una MPD al dispositivo cliente 40 (500). Como se ha analizado anteriormente, el dispositivo cliente 40 puede seleccionar una representación (502), por ejemplo, basándose en las capacidades de descodificación y/o renderización del dispositivo cliente 40, las preferencias de usuario, el ancho de banda de red disponible y/u otras características de las representaciones del contenido multimedia. El dispositivo cliente 40 puede solicitar a continuación uno o más segmentos de la representación seleccionada (504).
[0172] El dispositivo servidor 60 puede enviar los segmentos solicitados al dispositivo cliente 40 (506). Después de recibir los datos solicitados, el dispositivo cliente 40 puede descodificar y visualizar los datos recibidos (508). El dispositivo cliente 40 puede determinar a continuación si se han recibido todos los datos de vídeo (510). Si el último segmento de la representación (o el contenido multimedia en general) no se ha recibido (rama “NO” de 510), el dispositivo cliente 40 puede evaluar nuevamente una cantidad de ancho de banda de red disponible actualmente y seleccionar una representación basándose en este análisis (502) y solicitar segmentos de la representación (504).
[0173] En general, el dispositivo cliente 40 puede almacenar en memoria intermedia los datos e intentar evitar el desbordamiento o subdesbordamiento de la memoria intermedia solicitando datos del contenido multimedia de una representación que puede acomodarse al ancho de banda de red disponible actualmente. Sin embargo, a veces, puede producirse un desbordamiento o un subdesbordamiento de la memoria intermedia, por ejemplo, si las características de codificación reales del contenido multimedia no han coincidido con las características de codificación señalizadas o si no ha habido suficientes datos para que el dispositivo cliente 40 realizara una selección adecuada. Otros factores también pueden dar por resultado una reducción de la calidad de experiencia para un usuario del dispositivo cliente 40. Por lo tanto, una vez que el último segmento de la representación (o contenido multimedia) se ha recibido y descodificado correctamente (rama “SÍ” de 510), el dispositivo cliente 40 puede proporcionar un informe de calidad de experiencia (QoE) al dispositivo servidor 60.
[0174] Por ejemplo, el dispositivo cliente 40 puede crear el informe para incluir indicaciones de segmentos y representaciones seleccionadas (512). El dispositivo cliente 40 también puede registrar incidencias de desbordamiento/subdesbordamiento de memoria intermedia, que pueden dar como resultado pausas en la reproducción de medios. El dispositivo cliente 40 puede formar un informe que incluye una secuencia de elementos PeriodReport, que representan los períodos que se han reproducido. Un elemento de período puede incluir una secuencia de elementos RepresentationReport, cada uno de los cuales representa una reproducción continua de una parte de una representación y proporciona los tiempos de inicio y final tanto en tiempo real como en tiempo de presentación. El informe también puede incluir la hora de puesta en marcha inicial, que es la hora de la petición de usuario para ver el contenido y el inicio de la reproducción. De esta manera, el documento del informe puede comprender un documento electrónico con formato de lenguaje de marcado extensible (XML) indicativo de representaciones del contenido multimedia de las cuales el dispositivo cliente ha recuperado datos de medios del contenido multimedia.
[0175] El dispositivo cliente 40 puede proporcionar el informe al dispositivo servidor 60 u otro dispositivo de una red de distribución de contenido, como el dispositivo de preparación de contenido 20 o un dispositivo de recopilación de informes dedicado. 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 a continuación las indicaciones para, por ejemplo, el dispositivo de preparación de contenido 20 u otro dispositivo asociado con un proveedor de servicios o un ensamblador de medios para mejorar la preparación del contenido (516). A partir de la información proporcionada por el dispositivo cliente 40, un proveedor de servicios puede determinar con exactitud qué se ha reproducido, cuándo se han realizado pausas en la reproducción y cuándo se ha cambiado entre las representaciones. De forma alternativa o adicional, el dispositivo cliente 40 puede proporcionar información resumida en forma de duración de reproducción total y de 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 las pausas.
[0176] Usando estos datos, el proveedor de servicios puede analizar la calidad de la información de la experiencia para un nuevo contenido multimedia para emitir en continuo mediante emisión en continuo HTTP adaptativa. El proveedor de servicios puede hacer que un número de representaciones diferentes a velocidades de bits diferentes estén disponibles, y proporcionar una infraestructura de servicio HTTP para alojar los archivos de medios y, a continuación, recopilar la retroalimentación para determinar la calidad de las experiencias de visión de los usuarios. El proveedor de servicios puede usar estos datos para mejorar la calidad del servicio para este o un futuro alojamiento de contenido de medios. Las métricas de calidad de experiencia pueden referirse a la visión real experimentada por un usuario y pueden ser independientes de los algoritmos de cliente usados para planificar las peticiones HTTP, decisiones de selección de representación y similares. De esta manera, el proveedor de servicios puede obtener una imagen relativamente precisa de la calidad de la experiencia de visión del usuario para una sesión de visión específica.
[0177] De esta manera, el procedimiento de la FIG. 11 representa un ejemplo de procedimiento que incluye crear un documento que incluye información indicativa de representaciones de contenido multimedia de las cuales se han recuperado los datos de medios, y enviar el documento creado a un servidor a partir del cual se han recuperado los datos de medios. El procedimiento de la FIG. 11 también representa un ejemplo de procedimiento que incluye recibir información indicativa de datos recuperados por un dispositivo cliente, que comprende recibir un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia de las cuales el dispositivo cliente ha recuperado datos de medios del contenido multimedia.
[0178] 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, o 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 corresponden a unos medios tangibles tal como unos medios de almacenamiento de datos o medios de comunicación que incluyen cualquier medio que facilita la transferencia de un programa informático de un lugar a otro, por ejemplo, de acuerdo con un protocolo de comunicación. De esta manera, los medios legibles por ordenador pueden corresponder en general a (1) unos medios de almacenamiento legibles por ordenador tangibles que son 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 unos medios disponibles cualesquiera a los que se puede 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 la presente divulgación. Un producto de programa informático puede incluir un medio legible por ordenador.
[0179] A modo de ejemplo, y no de limitación, dichos medios de almacenamiento legibles por ordenador pueden comprender RAM, ROM, EEPROM, CD-ROM u otro tipo de 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 un 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 debidamente la denominación de medio legible por ordenador. Por ejemplo, si las instrucciones se transmiten desde una página web, un servidor u otra fuente remota usando un cable coaxial, un cable de fibra óptica, un par trenzado, una línea de abonado digital (DSL) o unas 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 discos compactos (CD), discos láser, discos ópticos, discos versátiles digitales (DVD), discos flexibles y discos Blu-ray, de los cuales los discos flexibles habitualmente reproducen los datos magnéticamente, mientras que el resto de discos reproducen los datos ópticamente con láseres. Las combinaciones de los anteriores también deberían incluirse dentro del alcance de los medios legibles por ordenador.
[0180] 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), matrices de puertas programables in situ (f Pg A) u otros circuitos de lógica integrada o discreta 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 descodificació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.
[0181] Las técnicas de la presente divulgación se pueden implementar en una amplia variedad de dispositivos o aparatos, incluidos un terminal inalámbrico, un circuito integrado (CI) o un conjunto de CI (por ejemplo, un conjunto de chips). Aunque en la presente divulgación se describen diversos componentes, módulos o unidades para destacar aspectos funcionales de los dispositivos configurados para realizar las técnicas divulgadas, no se requiere necesariamente su realización mediante diferentes unidades de hardware. En su lugar, como se ha descrito anteriormente, diversas unidades se pueden combinar en una unidad de hardware de códec o proporcionar mediante un grupo de unidades de hardware interoperativas, incluidos uno o más procesadores como los descritos anteriormente, conjuntamente con software y/o firmware adecuados.
[0182] Las siguientes cláusulas son solo descripciones a modo de ejemplo, en tanto que la presente invención se define únicamente en las reivindicaciones adjuntas. Otros ejemplos pueden definirse por medio de las siguientes cláusulas numeradas, donde las características preferidas de la presente invención se exponen en cláusulas dependientes:
1. Un procedimiento de recuperación de datos multimedia, comprendiendo el procedimiento:
recuperar datos de un primer segmento de una representación de contenido multimedia de acuerdo con datos de una copia de un archivo de manifiesto almacenado por un dispositivo cliente;
recuperar una parte de un segundo segmento de la representación de acuerdo con el archivo de manifiesto, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto se debe actualizar;
actualizar la copia del archivo de manifiesto almacenado por el dispositivo cliente basándose en la indicación de que el archivo de manifiesto se debe actualizar; y
recuperar datos de medios del segundo segmento de acuerdo con el archivo de manifiesto actualizado.
2. El procedimiento de la cláusula 1, en el que la actualización del archivo de manifiesto comprende actualizar el archivo de manifiesto usando datos de la parte del segundo segmento.
3. El procedimiento de la cláusula 1, en el que actualizar el archivo de manifiesto comprende recuperar datos para actualizar el archivo de manifiesto desde una ubicación indicada en la parte del segundo segmento.
4. El procedimiento de la cláusula 1, en el que actualizar el archivo de manifiesto comprende:
determinar uno o más elementos del archivo de manifiesto que se deben actualizar; y
actualizar solo el uno o más elementos determinados del archivo de manifiesto.
5. El procedimiento de la cláusula 1, que comprende además:
recuperar datos de medios de una segunda representación diferente del contenido multimedia; y
enviar información indicativa de los datos recuperados de la primera representación y la segunda representación.
6. El procedimiento de la cláusula 5, que comprende además:
crear un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia, incluidas la primera y la segunda representaciones, de las cuales se han recuperado datos de medios,
en el que enviar la información indicativa de los datos recuperados comprende enviar el documento creado a un servidor a partir del cual se han recuperado los datos de medios.
7. Un dispositivo para recuperar datos multimedia, comprendiendo el dispositivo uno o más procesadores configurados para recuperar datos de un primer segmento de una representación de contenido multimedia de acuerdo con datos de una copia de un archivo de manifiesto almacenado por el dispositivo, recuperar una parte de un segundo segmento de la representación de acuerdo con el archivo de manifiesto, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto se debe actualizar, actualizar la copia del archivo de manifiesto almacenada por el dispositivo basándose en la indicación de que el archivo de manifiesto se debe actualizar, y recuperar datos de medios del segundo segmento de acuerdo con el archivo de manifiesto actualizado.
8. El dispositivo de la cláusula 7, en el que para actualizar el archivo de manifiesto, el uno o más procesadores están configurados para actualizar el archivo de manifiesto usando datos de la parte del segundo segmento.
9. El dispositivo de la cláusula 7, en el que para actualizar el archivo de manifiesto, el uno o más procesadores están configurados para recuperar datos para actualizar el archivo de manifiesto desde una ubicación indicada en la parte del segundo segmento.
10. El dispositivo de la cláusula 7, en el que para actualizar el archivo de manifiesto, el uno o más procesadores están configurados para determinar uno o más elementos del archivo de manifiesto que se deben actualizar, y actualizar solo el uno o más elementos determinados del archivo de manifiesto.
11. El dispositivo de la cláusula 7, en el que el uno o más procesadores están configurados además para recuperar datos de medios de una segunda representación diferente del contenido multimedia, y enviar información indicativa de los datos recuperados de la primera representación y la segunda representación.
12. El dispositivo de la cláusula 11, en el que el uno o más procesadores están configurados además para crear un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia, incluidas la primera y la segunda representaciones, de las cuales se han recuperado datos de medios, y en el que para enviar información indicativa de los datos recuperados, el uno o más procesadores están configurados para enviar el documento creado a un servidor del cual se han recuperado los datos de medios.
13. El dispositivo de la cláusula 7, en el que el dispositivo comprende al menos uno de:
un circuito integrado;
un microprocesador; y
un dispositivo de comunicación inalámbrica que incluye el uno o más procesadores.
14. Un dispositivo para recuperar datos multimedia, comprendiendo el dispositivo:
medios para recuperar datos de un primer segmento de una representación de contenido multimedia de acuerdo con datos de una copia de un archivo manifiesto almacenada por el dispositivo;
medios para recuperar una parte de un segundo segmento de la representación de acuerdo con el archivo de manifiesto, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto se debe actualizar;
medios para actualizar la copia del archivo de manifiesto almacenada por el dispositivo basándose en la indicación de que el archivo de manifiesto se debe actualizar; y
medios para recuperar datos de medios del segundo segmento de acuerdo con el archivo de manifiesto actualizado.
15. El dispositivo de la cláusula 14, en el que actualizar el archivo de manifiesto comprende actualizar el archivo de manifiesto usando datos de la parte del segundo segmento.
16. El dispositivo de la cláusula 1, en el que actualizar el archivo de manifiesto comprende recuperar datos para actualizar el archivo de manifiesto desde una ubicación indicada en la parte del segundo segmento.
17. El dispositivo de la cláusula 14, en el que los medios para actualizar el archivo de manifiesto comprenden:
medios para determinar uno o más elementos del archivo de manifiesto que se deben actualizar; y
medios para actualizar solo el uno o más elementos determinados del archivo de manifiesto.
18. El dispositivo de la cláusula 14, que comprende además:
medios para recuperar datos de medios de una segunda representación diferente del contenido multimedia; y medios para enviar información indicativa de los datos recuperados de la primera representación y la segunda representación.
19. El dispositivo de la cláusula 18, que comprende además:
medios para crear un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia, incluidas la primera y la segunda representaciones, de las que se han recuperado datos de medios,
en el que los medios para enviar la información indicativa de los datos recuperados comprenden medios para enviar el documento creado a un servidor a partir del cual se han recuperado los datos de medios.
20. Un producto de programa informático que comprende un medio legible por ordenador que tiene almacenadas en él instrucciones que, cuando se ejecutan, hacen que un procesador de un dispositivo para recuperar datos multimedia: recupere datos de un primer segmento de una representación de contenido multimedia de acuerdo con datos de una copia de un archivo de manifiesto almacenada por el dispositivo;
recupere una parte de un segundo segmento de la representación de acuerdo con el archivo de manifiesto, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto se debe actualizar;
actualice la copia del archivo de manifiesto almacenada por el dispositivo basándose en la indicación de que el archivo de manifiesto se debe actualizar; y
recupere datos de medios del segundo segmento de acuerdo con el archivo de manifiesto actualizado.
21. El producto de programa informático de la cláusula 20, en el que las instrucciones que hacen que el procesador actualice el archivo de manifiesto comprenden instrucciones que hacen que el procesador actualice el archivo de manifiesto usando datos de la parte del segundo segmento.
22. El producto de programa informático de la cláusula 20, en el que las instrucciones que hacen que el procesador actualice el archivo de manifiesto comprenden instrucciones que hacen que el procesador recupere datos para actualizar el archivo de manifiesto desde una ubicación indicada en la parte del segundo segmento.
23. El producto de programa informático de la cláusula 20, en el que las instrucciones que hacen que el procesador actualice el archivo de manifiesto comprenden instrucciones que hacen que el procesador:
determine uno o más elementos del archivo de manifiesto que se deben actualizar; y
actualice solo el uno o más elementos determinados del archivo de manifiesto.
24. El producto de programa informático de la cláusula 20, que comprende además instrucciones que hacen que el procesador:
recupere datos de medios de una segunda representación diferente del contenido multimedia; y
envíe información indicativa de los datos recuperados de la primera representación y la segunda representación.
25. El producto de programa informático de la cláusula 24, que comprende además instrucciones que hacen que el procesador:
cree un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de las representaciones del contenido multimedia, incluidas la primera y la segunda representaciones, de las cuales se han recuperado datos de medios,
en el que las instrucciones que hacen que el procesador envíe la información indicativa de los datos recuperados comprenden instrucciones que hacen que el procesador envíe el documento creado a un servidor a partir del cual se han recuperado los datos de medios.
26. Un procedimiento de envío de información para datos multimedia, comprendiendo el procedimiento:
enviar datos de un archivo de manifiesto de contenido multimedia a un dispositivo cliente, en el que el archivo de manifiesto incluye información indicativa de un primer segmento de una representación del contenido multimedia; enviar al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto se debe actualizar, en el que una versión actualizada del archivo de manifiesto el archivo incluye información indicativa de un segundo segmento diferente de la representación; y
enviar, como respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento al dispositivo cliente.
27. El procedimiento de la cláusula 26, en el que la parte del primer segmento incluye información indicativa de las actualizaciones del archivo de manifiesto.
28. El procedimiento de la cláusula 26, en el que la parte del primer segmento incluye información indicativa de una ubicación de datos indicativa de actualizaciones del archivo de manifiesto.
29. El procedimiento de la cláusula 26, que comprende además recibir información indicativa de datos del contenido multimedia recuperados por el dispositivo cliente.
30. El procedimiento de la cláusula 29, en el que recibir la información indicativa de los datos recuperados por el dispositivo cliente comprende recibir un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia de las cuales el dispositivo cliente ha recuperado datos de medios del contenido multimedia.
31. Un dispositivo para enviar información para datos multimedia, comprendiendo el dispositivo uno o más procesadores configurados para enviar datos de un archivo de manifiesto de contenido multimedia a un dispositivo cliente, en el que el archivo de manifiesto incluye información indicativa de un primer segmento de una representación del contenido multimedia, enviar al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto se debe actualizar, en el que una versión actualizada del archivo de manifiesto incluye información indicativa de un segundo segmento diferente de la representación, y enviar, como respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento al dispositivo cliente.
32. El dispositivo de la cláusula 31, en el que la parte del primer segmento incluye información indicativa de actualizaciones del archivo de manifiesto.
33. El dispositivo de la cláusula 31, en el que la parte del primer segmento incluye información indicativa de una ubicación de datos indicativa de actualizaciones del archivo de manifiesto.
34. El dispositivo de la cláusula 31, en el que el uno o más procesadores están configurados para recibir información indicativa de datos del contenido multimedia recuperados por el dispositivo cliente.
35. El dispositivo de la cláusula 34, en el que la información indicativa de los datos recuperados por el dispositivo cliente comprende recibir un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia de las cuales el dispositivo cliente ha recuperado datos de medios del contenido multimedia.
36. El dispositivo de la cláusula 31, en el que el dispositivo comprende al menos uno de:
un circuito integrado;
un microprocesador; y
un dispositivo de comunicación inalámbrica que incluye el uno o más procesadores.
37. Un dispositivo para enviar información para datos multimedia, comprendiendo el dispositivo:
medios para enviar datos de un archivo de manifiesto de contenido multimedia a un dispositivo cliente, en el que el archivo de manifiesto incluye información indicativa de un primer segmento de una representación del contenido multimedia;
medios para enviar al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto se debe actualizar, en el que una versión actualizada del archivo de manifiesto incluye información indicativa de un segundo segmento diferente de la representación; y
medios para enviar, como respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento al dispositivo cliente.
38. El dispositivo de la cláusula 37, en el que la parte del primer segmento incluye información indicativa de actualizaciones del archivo de manifiesto.
39. El dispositivo de la cláusula 37, en el que la parte del primer segmento incluye información indicativa de una ubicación de datos indicativa de actualizaciones del archivo de manifiesto.
40. El dispositivo de la cláusula 37, que comprende además medios para recibir información indicativa de datos del contenido multimedia recuperados por el dispositivo cliente.
41. El dispositivo de la cláusula 40, en el que los medios para recibir la información indicativa de los datos recuperados por el dispositivo cliente comprenden medios para recibir un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia de las cuales el dispositivo cliente ha recuperado datos de medios del contenido multimedia.
42. Un producto de programa informático que comprende un medio legible por ordenador que tiene almacenadas en él instrucciones que, cuando se ejecutan, hacen que un procesador de un dispositivo para enviar información para datos multimedia:
envíe datos de un archivo de manifiesto de contenido multimedia a un dispositivo cliente, en el que el archivo de manifiesto incluye información indicativa de un primer segmento de una representación del contenido multimedia; envíe al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto se debe actualizar, en el que una versión actualizada del archivo de manifiesto incluye información indicativa de un segundo segmento diferente de la representación; y
envíe, como respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento al dispositivo cliente.
43. El producto de programa informático de la cláusula 42, en el que la parte del primer segmento incluye información indicativa de unas actualizaciones del archivo de manifiesto.
44. El producto de programa informático de la cláusula 42, en el que la parte del primer segmento incluye información indicativa de una ubicación de datos indicativa de actualizaciones del archivo de manifiesto.
45. El producto de programa informático de la cláusula 42, que comprende además instrucciones que hacen que el procesador reciba información indicativa de datos del contenido multimedia recuperados por el dispositivo cliente.
46. El producto de programa informático de la cláusula 45, en el que las instrucciones que hacen que el procesador reciba la información indicativa de los datos recuperados por el dispositivo cliente comprenden instrucciones que hacen que el procesador reciba un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia del cual el dispositivo cliente ha recuperado datos de medios del contenido multimedia.

Claims (15)

REIVINDICACIONES
1. Un procedimiento de recuperación de datos multimedia, comprendiendo el procedimiento:
recuperar datos (366A) de un primer segmento (362A) de una representación (360) de contenido multimedia (150, 350) de acuerdo con datos de una copia de un archivo de manifiesto (66, 102, 352) almacenada por un dispositivo cliente (40), en el que los datos del primer segmento corresponden a un período del contenido multimedia; recuperar una parte de un segundo segmento (362D) de la representación de acuerdo con el archivo de manifiesto, en el que unos datos (366D) del segundo segmento corresponden al período al que corresponden los datos del primer segmento, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto está por actualizar (364, 364B); actualizar la copia del archivo de manifiesto almacenada por el dispositivo cliente basándose en la indicación (364, 364B) de que el archivo de manifiesto está por actualizar, indicando el archivo de manifiesto actualizado segmentos adicionales del período al que corresponde el primer segmento; y
recuperar datos de medios del segundo segmento y los segmentos adicionales de acuerdo con el archivo de manifiesto actualizado.
2. El procedimiento de la reivindicación 1, en el que actualizar el archivo de manifiesto (66, 102, 352) comprende actualizar el archivo de manifiesto usando datos de la parte del segundo segmento (362D).
3. El procedimiento de la reivindicación 1, en el que actualizar el archivo de manifiesto (66, 102, 352) comprende recuperar datos para actualizar el archivo de manifiesto desde una ubicación indicada en la parte del segundo segmento (362D).
4. El procedimiento de la reivindicación 1, en el que actualizar el archivo de manifiesto (66, 102, 352) comprende:
determinar uno o más elementos del archivo de manifiesto que está por actualizar; y
actualizar solo el uno o más elementos determinados del archivo de manifiesto.
5. El procedimiento de la reivindicación 1, que comprende además:
recuperar datos de medios de una segunda representación diferente del contenido multimedia (362D); y enviar información indicativa de los datos recuperados de la primera representación y la segunda representación.
6. El procedimiento de la reivindicación 5, que comprende además:
crear un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia, incluuendo la primera y la segunda representaciones, de las que se han recuperado datos de medios,
en el que enviar la información indicativa de los datos recuperados comprende enviar el documento creado a un servidor desde el cual se han recuperado los datos de medios.
7. Un procedimiento de envío de información para datos multimedia, comprendiendo el procedimiento:
enviar datos (366A) de un archivo de manifiesto (66, 102, 352) de contenido multimedia (150, 350) a un dispositivo cliente (40), en el que el archivo de manifiesto incluye información indicativa de un primer segmento (362A) de una representación del contenido multimedia, en el que datos del primer segmento corresponden a un período del contenido multimedia;
enviar al menos una parte del primer segmento de la representación al dispositivo cliente en respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto está por actualizar, en el que una versión actualizada del archivo de manifiesto incluye información (364, 364B) indicativa de un segundo segmento diferente (362D) de la representación, en el que datos (366D) del segundo segmento corresponden al período al que corresponden los datos del primer segmento, indicando la versión actualizada del archivo de manifiesto segmentos adicionales del período al que corresponde el primer segmento; y
enviar, en respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento y los segmentos adicionales al dispositivo cliente.
8. El procedimiento de la reivindicación 7, en el que la parte del primer segmento incluye información indicativa de actualizaciones del archivo de manifiesto o información indicativa de una ubicación de datos indicativa de actualizaciones del archivo de manifiesto.
9. El procedimiento de la reivindicación 7, que comprende además recibir información indicativa de datos del contenido multimedia recuperados por el dispositivo cliente.
10. El procedimiento de la reivindicación 9, en el que recibir la información indicativa de los datos recuperados por el dispositivo cliente comprende recibir un documento electrónico con formato de lenguaje de marcado extensible que incluye información indicativa de representaciones del contenido multimedia de las que el dispositivo cliente ha recuperado datos de medios del contenido multimedia.
11. Un medio legible por ordenador que tiene instrucciones almacenadas en él que, cuando se ejecutan, hacen que un procesador realice el procedimiento de cualquiera de las reivindicaciones 1 a 10.
12. Un dispositivo para recuperar datos multimedia, comprendiendo el dispositivo:
medios para recuperar datos (366A) de un primer segmento (362A) de una representación (360) de contenido multimedia (150, 350) de acuerdo con datos de una copia de un archivo de manifiesto (66, 102, 352) almacenada por un dispositivo cliente (40), en el que los datos del primer segmento corresponden a un período del contenido multimedia;
medios para recuperar una parte de un segundo segmento (362D) de la representación de acuerdo con el archivo de manifiesto, en el que datos (366D) del segundo segmento corresponden al período al que corresponden los datos del primer segmento, en el que el segundo segmento aparece después del primer segmento en la representación, y en el que la parte del segundo segmento indica que el archivo de manifiesto está por actualizar (364, 364B);
medios para actualizar la copia del archivo de manifiesto almacenada por el dispositivo cliente basándose en la indicación (364, 364B) de que el archivo de manifiesto está por actualizar, indicando el archivo de manifiesto actualizado segmentos adicionales del período al que corresponde el primer segmento; y
medios para recuperar datos de medios del segundo segmento y los segmentos adicionales de acuerdo con el archivo de manifiesto actualizado.
13. El dispositivo de la reivindicación 12 que comprende medios para llevar a cabo un procedimiento de acuerdo con cualquiera de las reivindicaciones 2 a 6.
14. Un dispositivo para enviar información para datos multimedia, comprendiendo el dispositivo:
medios para enviar datos (366A) de un archivo de manifiesto (66, 102, 352) de contenido multimedia (150, 350) a un dispositivo cliente (40), en el que el archivo de manifiesto incluye información indicativa de un primer segmento (362A) de una representación del contenido multimedia, en el que datos del primer segmento corresponden a un período del contenido multimedia;
medios para enviar al menos una parte del primer segmento de la representación al dispositivo cliente como respuesta a una petición del dispositivo cliente, en el que la parte del primer segmento indica que el archivo de manifiesto está por actualizar, en el que una versión actualizada del archivo de manifiesto incluye información (364, 364B) indicativa de un segundo segmento diferente (362D) de la representación, en el que datos (366D) del segundo segmento corresponden al período al que corresponden los datos del primer segmento, indicando la versión actualizada del archivo de manifiesto segmentos adicionales del período al que corresponde el primer segmento; y
medios para enviar, en respuesta a una petición recibida desde el dispositivo cliente y formada de acuerdo con el archivo de manifiesto actualizado, datos del segundo segmento y los segmentos adicionales al dispositivo cliente.
15. El dispositivo de la reivindicación 14 que comprende medios para llevar a cabo un procedimiento de acuerdo con cualquiera de las reivindicaciones 8 a 10.
ES11746404T 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 Active ES2730894T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US37239910P 2010-08-10 2010-08-10
US13/205,574 US8806050B2 (en) 2010-08-10 2011-08-08 Manifest file updates for network streaming of coded multimedia data
PCT/US2011/047128 WO2012021543A1 (en) 2010-08-10 2011-08-09 Manifest file updates for network streaming of coded video data

Publications (1)

Publication Number Publication Date
ES2730894T3 true ES2730894T3 (es) 2019-11-13

Family

ID=44509694

Family Applications (3)

Application Number Title Priority Date Filing Date
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
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

Family Applications Before (2)

Application Number Title Priority Date Filing Date
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

Country Status (23)

Country Link
US (3) US9456015B2 (es)
EP (3) EP2604016B1 (es)
JP (5) JP5612211B2 (es)
KR (4) KR101542310B1 (es)
CN (3) CN103141069B (es)
AR (3) AR082616A1 (es)
AU (2) AU2011289514B2 (es)
BR (2) BR112013002686B1 (es)
CA (2) CA2807157C (es)
DK (2) DK2604016T3 (es)
ES (3) ES2730896T3 (es)
HK (2) HK1181576A1 (es)
HU (3) HUE044114T2 (es)
IL (2) IL224449A (es)
MY (2) MY156640A (es)
PL (1) PL2604014T3 (es)
PT (1) PT2604014T (es)
RU (2) RU2571375C2 (es)
SG (3) SG187638A1 (es)
SI (2) SI2604014T1 (es)
TW (3) TWI479882B (es)
UA (2) UA107394C2 (es)
WO (3) WO2012021538A1 (es)

Families Citing this family (270)

* 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
EP2357732B1 (en) 2002-10-05 2022-04-06 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
KR101170629B1 (ko) 2003-10-06 2012-08-02 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러 정정 다중-스테이지 코드 생성기 및 디코더
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
EP1743431A4 (en) 2004-05-07 2007-05-02 Digital Fountain Inc SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES
US10862994B1 (en) * 2006-11-15 2020-12-08 Conviva Inc. Facilitating client decisions
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
US9270414B2 (en) * 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
EP1999883A4 (en) 2006-03-14 2013-03-06 Divx Llc FEDERATED DIGITAL RIGHTS MANAGEMENT SYSTEM COMPRISING CONFIDENCE SYSTEMS
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US20100211690A1 (en) * 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
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
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
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
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
EP4213033A1 (en) 2007-01-05 2023-07-19 DivX, LLC Video distribution system including progressive playback
AU2008298602A1 (en) 2007-09-12 2009-03-19 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
KR20100106327A (ko) 2007-11-16 2010-10-01 디브이엑스, 인크. 멀티미디어 파일을 위한 계층적 및 감소된 인덱스 구조
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
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
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
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
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
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
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
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
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
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
CA2711311C (en) 2009-08-10 2016-08-23 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
EP2507995A4 (en) 2009-12-04 2014-07-09 Sonic Ip Inc SYSTEMS AND METHODS FOR TRANSPORTING ELEMENTARY BIT TRAIN CRYPTOGRAPHIC MATERIAL
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
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
KR20120060134A (ko) * 2010-08-16 2012-06-11 삼성전자주식회사 광고 재생 방법 및 장치
CN102130936B (zh) * 2010-08-17 2013-10-09 华为技术有限公司 一种在动态http流传输方案中支持时移回看的方法和装置
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
KR101737325B1 (ko) * 2010-08-19 2017-05-22 삼성전자주식회사 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
CN103081506B (zh) 2010-09-01 2016-09-14 韩国电子通信研究院 提供串流内容的方法及装置
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流传输中应用父母控制的方法和装置
KR101620151B1 (ko) * 2010-10-05 2016-05-12 텔레폰악티에볼라겟엘엠에릭슨(펍) 클라이언트와, 콘텐트 생성기 엔티티 및 미디어 스트리밍을 위한 이들의 방법
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 한국항공대학교산학협력단 스트리밍 콘텐츠 제공 장치 및 방법
DE112011103642T5 (de) * 2010-11-02 2013-09-19 Lg Electronics Inc. Verfahren zum Senden/Empfangen von Medieninhalt und Vorrichtung zum Senden/Empfangen, die dieses verwendet
CN103299600B (zh) * 2011-01-04 2016-08-10 汤姆逊许可公司 用于传输直播媒体内容的装置和方法
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
EP2924990A1 (en) 2011-03-16 2015-09-30 Electronics and Telecommunications Research Institute Apparatus and method for providing streaming content using representations
KR101803970B1 (ko) * 2011-03-16 2017-12-28 삼성전자주식회사 컨텐트를 구성하는 장치 및 방법
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
CN107529706B (zh) 2011-06-16 2020-11-17 Ge视频压缩有限责任公司 解码器、编码器、解码和编码视频的方法及存储介质
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
CN103650451B (zh) * 2011-07-07 2016-10-19 瑞典爱立信有限公司 网络容量优化的自适应http流播
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 ДЖ.І. ВІДІЕУ КЕМПРЕШН, ЛЛСі Ініціалізація контексту в ентропійному кодуванні
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
KR101928910B1 (ko) 2011-08-30 2018-12-14 쏘닉 아이피, 아이엔씨. 복수의 최대 비트레이트 레벨들을 사용하여 인코딩된 비디오를 인코딩하고 스트리밍하기 위한 시스템들 및 방법들
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
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
US8977704B2 (en) * 2011-12-29 2015-03-10 Nokia Corporation Method and apparatus for flexible caching of delivered media
HUE036024T2 (hu) * 2011-12-29 2018-06-28 Koninklijke Kpn Nv Hálózat által kezdeményezett tartalomtovábbítás vezérlése
US10218756B2 (en) * 2012-01-06 2019-02-26 Comcast Cable Communications, Llc Streamlined delivery of video content
US8918908B2 (en) 2012-01-06 2014-12-23 Sonic Ip, Inc. Systems and methods for accessing digital content using electronic tickets and ticket tokens
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 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법
US10148716B1 (en) 2012-04-09 2018-12-04 Conviva Inc. Dynamic generation of video manifest files
US9438883B2 (en) 2012-04-09 2016-09-06 Intel Corporation Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content
US9712887B2 (en) * 2012-04-12 2017-07-18 Arris Canada, Inc. Methods and systems for real-time transmuxing of streaming media content
JP6275691B2 (ja) 2012-04-18 2018-02-07 グーグル エルエルシー 任意の時点でストリーミングメディアにコンテンツを挿入する方法及びシステム
KR101630721B1 (ko) 2012-04-25 2016-06-15 후아웨이 테크놀러지 컴퍼니 리미티드 적응 스트리밍에 대한 세그먼트 통합 및 인증을 위한 시스템 및 방법
US9628531B2 (en) * 2012-04-25 2017-04-18 Futurewei Technologies, Inc. Systems and methods for controlling client behavior in adaptive streaming
CN104380753B (zh) 2012-04-26 2018-05-18 华为技术有限公司 用于表示自适应流媒体的分段加密和密钥衍生的系统和方法
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
CN104756505B (zh) * 2012-06-28 2020-04-07 爱立信股份有限公司 用于过顶实况媒体递送中的广告插入的方法和系统
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
CN104429093B (zh) * 2012-07-09 2018-01-05 华为技术有限公司 超文本传输协议动态自适应流媒体客户端及其会话管理实施方法
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
EP3270596A1 (en) 2012-08-22 2018-01-17 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
CN104885456A (zh) 2012-09-18 2015-09-02 Vid拓展公司 使用图块和图块组的感兴趣区域视频编码
US9479774B2 (en) 2012-09-24 2016-10-25 Qualcomm Incorporated Buffering period and recovery point supplemental enhancement information messages
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
US10033777B2 (en) * 2012-10-19 2018-07-24 Interdigital Patent Holdings, Inc. Multi-hypothesis rate adaptation for HTTP streaming
ES2763998T3 (es) 2012-11-13 2020-06-01 Ericsson Telefon Ab L M Procesado de datos multimedia
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
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US10237334B2 (en) * 2013-01-07 2019-03-19 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
EP2947887A4 (en) * 2013-01-18 2016-08-24 Sony Corp CONTENT SERVICES, CONTENT PROCESSING, CONTENT PROCESSING SYSTEM, CLIENT DEVICE AND CONTENT MANAGEMENT PROCESS
KR101693584B1 (ko) * 2013-01-18 2017-01-06 후아웨이 테크놀러지 컴퍼니 리미티드 미디어 콘텐츠에 대해 적응 스트리밍을 수행하는 방법 및 장치
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
WO2014121857A1 (en) * 2013-02-06 2014-08-14 Telefonaktiebolaget L M Ericsson (Publ) Technique for detecting an encoder functionality issue
US9584847B2 (en) * 2013-02-12 2017-02-28 Ericsson Ab Rendering content for personal over-the-top network video recorder
WO2014124692A1 (en) * 2013-02-15 2014-08-21 Nec Europe Ltd. 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
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
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
KR101798741B1 (ko) 2013-04-19 2017-11-16 후아웨이 테크놀러지 컴퍼니 리미티드 하이퍼텍스트 전송 프로토콜을 통한 동적 적응 비디오 스트리밍에서의 미디어 품질 정보 시그널링
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
EP2883201A4 (en) * 2013-05-02 2016-03-09 This Technology Inc METHOD AND SYSTEM FOR EFFICIENT DIRECTORY MANIPULATION
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
US9100687B2 (en) 2013-05-31 2015-08-04 Sonic Ip, Inc. Playback synchronization across playback devices
US9380099B2 (en) 2013-05-31 2016-06-28 Sonic Ip, Inc. Synchronizing multiple over the top streaming clients
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
CN109842613B (zh) * 2013-07-12 2021-11-19 佳能株式会社 用于提供和接收媒体数据的方法和装置以及存储介质
US20150019629A1 (en) * 2013-07-15 2015-01-15 Futurewei Technologies, Inc. Just-in-Time Dereferencing of Remote Elements in Dynamic Adaptive Streaming over Hypertext Transfer Protocol
WO2015010056A1 (en) * 2013-07-19 2015-01-22 Huawei Technologies Co., Ltd. Metadata information signaling and carriage in dynamic adaptive streaming over hypertext transfer protocol
US10447746B2 (en) * 2013-07-26 2019-10-15 Futurewei Technologies, Inc. System and method for 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
US9648348B2 (en) * 2013-10-23 2017-05-09 Qualcomm Incorporated Multi-layer video file format designs
JP2017504996A (ja) 2013-11-27 2017-02-09 インターデイジタル パテント ホールディングス インコーポレイテッド メディアプレゼンテーション記述
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 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
CN105981393B (zh) 2014-02-10 2019-08-09 Lg 电子株式会社 发送广播信号的装置、接收广播信号的装置、发送广播信号的方法以及接收广播信号的方法
US9900362B2 (en) * 2014-02-11 2018-02-20 Kiswe Mobile Inc. Methods and apparatus for reducing latency shift in switching between distinct content streams
KR20160135811A (ko) * 2014-03-20 2016-11-28 삼성전자주식회사 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
WO2015156150A1 (ja) * 2014-04-11 2015-10-15 ソニー株式会社 受信装置、受信方法、送信装置、及び、送信方法
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
CN106471574B (zh) * 2014-06-30 2021-10-12 索尼公司 信息处理装置和信息处理方法
CA2953310A1 (en) * 2014-07-07 2016-01-14 Sony Corporation Reception device, reception method, transmission device, and transmission method
KR102548789B1 (ko) 2014-08-07 2023-06-29 디빅스, 엘엘씨 독립적으로 인코딩된 타일을 포함한 기본 비트스트림을 보호하는 시스템 및 방법
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
KR102390622B1 (ko) * 2014-11-26 2022-04-26 소니그룹주식회사 송신 장치, 송신 방법, 수신 장치 및 수신 방법
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
US10305955B1 (en) 2014-12-08 2019-05-28 Conviva Inc. Streaming decision in the cloud
US10178043B1 (en) * 2014-12-08 2019-01-08 Conviva Inc. Dynamic bitrate range selection in the cloud for optimized video streaming
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 深圳市大疆创新科技有限公司 固件生成系统及方法
KR102012682B1 (ko) 2015-01-06 2019-08-22 디브이엑스, 엘엘씨 디바이스들간에 콘텐트를 인코딩 및 공유하기 위한 시스템들 및 방법들
US10270823B2 (en) * 2015-02-10 2019-04-23 Qualcomm Incorporated Low latency video streaming
CN107251008B (zh) 2015-02-27 2020-11-13 帝威视有限公司 在实况视频编码和流传输中进行帧复制和帧扩展的系统和方法
US10412138B2 (en) 2015-03-02 2019-09-10 Qualcomm Incorporated Indication for partial segment
US10749930B2 (en) 2015-03-02 2020-08-18 Qualcomm Incorporated Indication for partial segment
US10659507B2 (en) * 2015-03-02 2020-05-19 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
US10356451B2 (en) * 2015-07-06 2019-07-16 Lg Electronics Inc. Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
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
WO2017038353A1 (ja) * 2015-08-28 2017-03-09 ソニー株式会社 受信装置、送信装置、およびデータ処理方法
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
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
US20190014358A1 (en) * 2016-02-12 2019-01-10 Sony Corporation Information processing apparatus and information processing method
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
US10104143B1 (en) * 2016-06-03 2018-10-16 Amazon Technologies, Inc. Manifest segmentation
US10116719B1 (en) 2016-06-03 2018-10-30 Amazon Technologies, Inc. Customized dash manifest
US10432690B1 (en) * 2016-06-03 2019-10-01 Amazon Technologies, Inc. Manifest partitioning
JP6669403B2 (ja) * 2016-06-03 2020-03-18 キヤノン株式会社 通信装置、通信制御方法および通信システム
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
EP3930234B1 (en) * 2016-08-11 2023-09-06 Telefonaktiebolaget LM Ericsson (publ) Improved adaptive bit rate streaming of live content
EP3497909B1 (en) 2016-08-11 2022-06-01 Telefonaktiebolaget LM Ericsson (publ) Improved adaptive bit rate streaming of live content with manifest update push notification or long poll
US10412412B1 (en) * 2016-09-30 2019-09-10 Amazon Technologies, Inc. Using reference-only decoding of non-viewed sections of a projected video
CN109792444B (zh) * 2016-09-30 2022-11-15 网络洞察力知识产权公司 实况内容分发系统中的播出缓冲
US10553029B1 (en) 2016-09-30 2020-02-04 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
US20190342356A1 (en) * 2017-01-02 2019-11-07 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
GB2583826B (en) * 2017-04-21 2021-05-19 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
CN110971564B (zh) * 2018-09-28 2021-03-30 华为技术有限公司 传输媒体数据的方法、客户端和服务器
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
US11825142B2 (en) 2019-03-21 2023-11-21 Divx, Llc Systems and methods for multimedia swarms
US11831879B2 (en) * 2019-09-20 2023-11-28 Comcast Cable Communications, Llc Methods, systems, and apparatuses for enhanced adaptive bitrate segmentation
US11765421B2 (en) 2020-02-28 2023-09-19 Hulu, LLC Client based storage of remote element resolutions
WO2021174219A1 (en) * 2020-02-28 2021-09-02 Hulu, LLC Identification of elements in a group for dynamic element replacement
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
US11880921B2 (en) 2022-01-27 2024-01-23 Cobalt Inc. System and method for multimedia presentation

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
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US7594250B2 (en) 1992-04-02 2009-09-22 Debey Henry C Method and system of program transmission optimization using a redundant transmission sequence
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 株式会社東芝 データ再送制御方法及びデータ再送制御システム
EP0823153A4 (en) 1995-04-27 1999-10-20 Stevens Inst Technology HIGH INTEGRITY TRANSPORT METHOD FOR TIME-CRITICAL MULTIMEDIA NETWORK 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
AU713535B2 (en) * 1995-09-29 1999-12-02 Rohm And Haas Company Wood preservative
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
US6141053A (en) 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
US6011590A (en) 1997-01-03 2000-01-04 Ncr Corporation Method of transmitting compressed information to minimize buffer space
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
EP1024672A1 (en) 1997-03-07 2000-08-02 Sanyo Electric Co., Ltd. Digital broadcast receiver and display
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
WO1998053454A1 (fr) 1997-05-19 1998-11-26 Sanyo Electric Co., Ltd. Modulation et demodulation numeriques
JP4110593B2 (ja) 1997-05-19 2008-07-02 ソニー株式会社 信号記録方法及び信号記録装置
JPH1141211A (ja) 1997-05-19 1999-02-12 Sanyo Electric Co Ltd ディジタル変調回路と変調方法、ディジタル復調回路と復調方法
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 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US6175944B1 (en) 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
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
US6163870A (en) 1997-11-06 2000-12-19 Compaq Computer Corporation Message encoding with irregular graphing
US6081918A (en) 1997-11-06 2000-06-27 Spielman; Daniel A. Loss resilient code with cascading series of redundant layers
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6195777B1 (en) 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
JP3472115B2 (ja) 1997-11-25 2003-12-02 Kddi株式会社 マルチチャンネルを用いるビデオデータ伝送方法及びその装置
US5870412A (en) 1997-12-12 1999-02-09 3Com Corporation Forward error correction system for packet based real time media
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
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
EP1110344A1 (en) 1998-09-04 2001-06-27 AT&T Corp. Combined channel coding and space-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
US7243285B2 (en) 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
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
US7157314B2 (en) 1998-11-16 2007-01-02 Sandisk Corporation 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
ES2185244T3 (es) 1998-12-03 2003-04-16 Fraunhofer Ges Forschung Aparato y procedimiento para transmitir informacion y aparato y procedimiento para recibir informacion.
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
WO2000052600A1 (fr) 1999-03-03 2000-09-08 Sony Corporation Emetteur, recepteur, systeme d'emetteur/recepteur, procede de transmission et procede de reception
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
MY130203A (en) 1999-05-06 2007-06-29 Sony Corp Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media
KR100416996B1 (ko) 1999-05-10 2004-02-05 삼성전자주식회사 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법
AU5140200A (en) 1999-05-26 2000-12-18 Enounce, Incorporated Method and apparatus for controlling time-scale modification during multi-media broadcasts
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
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
US7529806B1 (en) 1999-11-04 2009-05-05 Koninklijke Philips Electronics N.V. Partitioning of MP3 content file for emulating streaming
JP2001094625A (ja) 1999-09-27 2001-04-06 Canon Inc データ通信装置、データ通信方法及び記憶媒体
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
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6678855B1 (en) 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
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
IL140504A0 (en) 2000-02-03 2002-02-10 Bandwiz Inc Broadcast system
US7304990B2 (en) 2000-02-03 2007-12-04 Bandwiz Inc. Method of encoding and transmitting data over a communication medium through division and segmentation
WO2001057667A1 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Data streaming
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
US6510177B1 (en) 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
JP2001274776A (ja) 2000-03-24 2001-10-05 Toshiba Corp 情報データ伝送システムとその送信装置及び受信装置
WO2001076077A2 (en) 2000-03-31 2001-10-11 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
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
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
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
US7447791B2 (en) 2000-12-15 2008-11-04 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
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
US7363354B2 (en) 2001-11-29 2008-04-22 Nokia Corporation System and method for identifying and accessing network services
US7003712B2 (en) 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
JP2003174489A (ja) 2001-12-05 2003-06-20 Ntt Docomo Inc ストリーミング配信装置、ストリーミング配信方法
WO2003053040A2 (en) * 2001-12-15 2003-06-26 Thomson Licensing S.A. System and method for modifying a video stream based on a client or network environment
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
EP1670260A3 (en) 2002-01-23 2010-03-03 Nokia Corporation Grouping of image frames in video coding
US7483489B2 (en) 2002-01-30 2009-01-27 Nxp B.V. Streaming multimedia data over a network having a variable bandwith
US7249291B2 (en) 2002-02-15 2007-07-24 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
EP1495566A4 (en) 2002-04-15 2005-07-20 Nokia Corp RLP LOGIC LAYER OF A COMMUNICATION STATION
US6677864B2 (en) 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
JP3689063B2 (ja) 2002-04-19 2005-08-31 松下電器産業株式会社 データ受信装置及びデータ配信システム
JP3629008B2 (ja) 2002-04-19 2005-03-16 松下電器産業株式会社 データ受信装置及びデータ配信システム
US7529400B2 (en) 2002-04-25 2009-05-05 Sharp Kabushiki Kaisha Image encoder, image decoder, record medium, and image recorder
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
WO2003103212A2 (en) 2002-06-04 2003-12-11 Qualcomm Incorporated System for multimedia rendering in a portable device
PE20040139A1 (es) * 2002-06-04 2004-04-15 Qualcomm Inc Metodo y aparato para reproducir contenido multimedia en un dispositivo portatil que tiene un procesador incorporado
US20040083015A1 (en) 2002-06-04 2004-04-29 Srinivas Patwari System for multimedia rendering in a portable device
WO2003105484A1 (en) 2002-06-11 2003-12-18 Telefonaktiebolaget L M Ericsson (Publ) Generation of mixed media streams
ES2445761T3 (es) 2002-06-11 2014-03-05 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena mediante inactivación
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 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
CN101232616B (zh) 2002-07-16 2015-07-22 诺基亚有限公司 用于在视频编码中随机存取和逐步更新图像的方法
AU2003252347A1 (en) 2002-07-31 2004-03-11 Sharp Kabushiki Kaisha Data communication device, its intermittent communication method, program describing its method, and recording medium on which program is recorded
JP2004070712A (ja) 2002-08-07 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム
AU2002319335B2 (en) 2002-08-13 2008-12-04 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 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
EP2357732B1 (en) 2002-10-05 2022-04-06 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
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
US8320301B2 (en) 2002-10-25 2012-11-27 Qualcomm Incorporated MIMO WLAN system
US7289451B2 (en) 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
WO2004040831A1 (en) 2002-10-30 2004-05-13 Koninklijke Philips Electronics N.V. Adaptative forward error control scheme
JP2004165922A (ja) 2002-11-12 2004-06-10 Sony Corp 情報処理装置および方法、並びにプログラム
ATE410029T1 (de) 2002-11-18 2008-10-15 British Telecomm Videoübertragung
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
US7293222B2 (en) 2003-01-29 2007-11-06 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
JP2004343701A (ja) 2003-04-21 2004-12-02 Matsushita Electric Ind Co Ltd データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム
US7408486B2 (en) 2003-04-21 2008-08-05 Qbit Corporation System and method for using a microlet-based modem
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エンコード装置
US8161116B2 (en) 2003-05-23 2012-04-17 Kirusa, Inc. Method and system for communicating a data file over a network
JP2004362099A (ja) 2003-06-03 2004-12-24 Sony Corp サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
MXPA05013237A (es) 2003-06-07 2006-03-09 Samsung Electronics Co Ltd Aparato y metodo para la organizacion e interpretacion de datos multimedia en un medio de grabacion.
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 三洋電機株式会社 映像表示装置
JP4988346B2 (ja) 2003-09-15 2012-08-01 ザ・ディレクティービー・グループ・インコーポレイテッド ビデオネットワークにおける適応トランスコーディング及び速度変換のための方法及びシステム
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
KR101170629B1 (ko) 2003-10-06 2012-08-02 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러 정정 다중-스테이지 코드 생성기 및 디코더
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
WO2005036811A2 (en) 2003-10-14 2005-04-21 Matsushita Electric Industrial Co., Ltd. Data converter
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
JP4787167B2 (ja) 2003-12-01 2011-10-05 デジタル ファウンテン, インコーポレイテッド サブシンボル・ベース符号を使用する消去からのデータの保護
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
US20050207392A1 (en) 2004-03-19 2005-09-22 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
WO2005096301A1 (en) 2004-03-30 2005-10-13 Koninklijke Philips Electronics 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
US7633970B2 (en) 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
EP1743431A4 (en) 2004-05-07 2007-05-02 Digital Fountain Inc SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES
US20050254526A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Parameter sets update in streaming applications
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
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
US7590922B2 (en) 2004-07-30 2009-09-15 Nokia Corporation Point-to-point repair request mechanism for point-to-multipoint transmission systems
US7376150B2 (en) 2004-07-30 2008-05-20 Nokia Corporation Point-to-point repair response 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
BRPI0518304A2 (pt) 2004-11-22 2008-11-11 Thomson Res Funding Corp mÉtodo e aparelho para mudar canal em sistema dsl
EP1817859A1 (en) 2004-12-02 2007-08-15 THOMSON Licensing Adaptive forward error correction
KR20060065482A (ko) 2004-12-10 2006-06-14 마이크로소프트 코포레이션 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
JP2006174032A (ja) 2004-12-15 2006-06-29 Sanyo Electric Co Ltd 画像データ伝送システム、画像データ受信装置及び画像データ送信装置
JP2006174045A (ja) 2004-12-15 2006-06-29 Ntt Communications Kk 画像配信装置、プログラム及び方法
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 株式会社第一興商 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置
CN101116306A (zh) 2005-02-08 2008-01-30 艾利森电话股份有限公司 在分组交换网络上的按需多频道流会话
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
CN101120593A (zh) 2005-04-13 2008-02-06 诺基亚公司 可扩展性信息的编码、存储和信号发送
JP4515319B2 (ja) 2005-04-27 2010-07-28 株式会社日立製作所 コンピュータシステム
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US7961700B2 (en) 2005-04-28 2011-06-14 Qualcomm Incorporated Multi-carrier operation in data transmission systems
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
MX2007014744A (es) 2005-05-24 2008-02-14 Nokia Corp Metodo y aparatos para transmision/recepcion jerarquica en transmision digital.
US7644335B2 (en) 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
US7676735B2 (en) 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
JP2007013436A (ja) 2005-06-29 2007-01-18 Toshiba Corp 符号化ストリーム再生装置
JP2007013675A (ja) 2005-06-30 2007-01-18 Sanyo Electric Co Ltd ストリーミング配信システム及びサーバ
US20070006274A1 (en) 2005-06-30 2007-01-04 Toni Paila Transmission and reception of session packets
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
US8879856B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using content information
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
CN100442858C (zh) 2005-10-11 2008-12-10 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
EP2375749B1 (en) 2005-10-11 2016-11-23 Nokia Technologies Oy System and method for efficient scalable stream adaptation
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
CN101390399B (zh) 2006-01-11 2010-12-01 诺基亚公司 可伸缩视频编码中的图片的后向兼容聚合
US7817865B2 (en) 2006-01-12 2010-10-19 Lg Electronics Inc. Processing multiview 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
EP1985022B1 (en) 2006-02-08 2011-06-08 Thomson Licensing Decoding of raptor codes
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
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
WO2007127741A2 (en) 2006-04-24 2007-11-08 Sun Microsystems, Inc. Media server system
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
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US7525993B2 (en) 2006-05-24 2009-04-28 Newport Media, Inc. Robust transmission system and method for mobile television applications
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
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
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
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
JP2008011404A (ja) 2006-06-30 2008-01-17 Toshiba Corp コンテンツ処理装置及びコンテンツ処理方法
JP4392004B2 (ja) 2006-07-03 2009-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション パケット回復のための符号化および復号化技術
EP2044528A4 (en) 2006-07-20 2013-03-06 Sandisk Technologies Inc CONTENT DISTRIBUTION SYSTEM
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
KR101021831B1 (ko) 2006-08-24 2011-03-17 노키아 코포레이션 미디어 파일에서 트랙 관계를 표시하는 시스템 및 방법
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
WO2008061164A2 (en) 2006-11-14 2008-05-22 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
EP4213033A1 (en) 2007-01-05 2023-07-19 DivX, LLC Video distribution system including progressive playback
US20080168516A1 (en) 2007-01-08 2008-07-10 Christopher Lance Flick Facilitating Random Access In Streaming Content
EP2122874A1 (en) 2007-01-09 2009-11-25 Nokia Corporation Method for supporting file versioning in mbms file repair
US20080172430A1 (en) 2007-01-11 2008-07-17 Andrew Thomas Thorstensen Fragmentation Compression Management
MX2009000619A (es) 2007-01-11 2009-04-16 Panasonic Corp Metodo para la reproduccion de truco de datos multimedia en flujo y encriptados.
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
US9344362B2 (en) 2007-01-12 2016-05-17 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPV6 label switching using the format
US8135071B2 (en) 2007-01-16 2012-03-13 Cisco Technology, Inc. Breakpoint determining for hybrid variable length coding using relationship to neighboring blocks
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
MX2009012361A (es) 2007-05-16 2009-12-01 Thomson Licensing Aparato y metodo para codificar y descodificar señales.
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
EP2153670A4 (en) 2007-06-11 2011-03-09 Samsung Electronics Co Ltd METHOD AND DEVICE FOR GENERATING HEADLINE INFORMATION ON A STEREOSCOPIC IMAGE
WO2008156390A1 (en) 2007-06-20 2008-12-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for improved media session management
EP2174502A2 (en) 2007-06-26 2010-04-14 Nokia Corporation System and method for indicating temporal layer switching points
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
AU2008298602A1 (en) 2007-09-12 2009-03-19 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
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
KR101446359B1 (ko) 2007-10-09 2014-10-01 삼성전자주식회사 이동 통신 시스템에서 맥 프로토콜 데이터 유닛의 생성과 분리 장치 및 방법
US8635360B2 (en) 2007-10-19 2014-01-21 Google Inc. Media playback point seeking using data range requests
US8706907B2 (en) 2007-10-19 2014-04-22 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
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
EP2215595B1 (en) 2007-11-23 2012-02-22 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
US8543720B2 (en) 2007-12-05 2013-09-24 Google 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
EP2263341B1 (en) 2008-04-14 2018-09-19 Amazon Technologies, 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
US8855199B2 (en) 2008-04-21 2014-10-07 Nokia Corporation Method and device for video coding and decoding
EP2286585A4 (en) 2008-05-07 2015-06-17 Digital Fountain Inc FAST CHANNEL CHANGE AND HIGH QUALITY CONTINUOUS FLOW BROADCAST PROTECTION ON 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 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
US8370887B2 (en) 2008-05-30 2013-02-05 Microsoft Corporation Media streaming with enhanced seek operation
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
KR101019634B1 (ko) 2008-09-04 2011-03-07 에스케이 텔레콤주식회사 미디어 전송 시스템 및 방법
EP2329404B1 (en) 2008-09-05 2018-04-04 Thomson Licensing DTV Method and system for dynamic play list modification
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
CN102308547B (zh) 2008-12-31 2014-11-19 苹果公司 通过非流化协议流化多媒体数据的方法
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
BRPI1007163A2 (pt) 2009-01-26 2018-09-25 Thomson Licensing compactação de quadro para codificação de vídeo
CN105376549B (zh) 2009-01-29 2017-08-11 杜比实验室特许公司 视频编码方法及解码视频信号的方法
US8909806B2 (en) 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
JP2012523804A (ja) 2009-04-13 2012-10-04 リアルディー インコーポレイテッド 向上した解像度の立体ビデオのエンコード、デコード、および配信
US9807468B2 (en) 2009-06-16 2017-10-31 Microsoft Technology Licensing, Llc Byte range caching
US8903895B2 (en) 2009-07-22 2014-12-02 Xinlab, 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
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US20120151302A1 (en) 2010-12-10 2012-06-14 Qualcomm Incorporated Broadcast multimedia storage and access using page maps when asymmetric memory is used
WO2012037635A1 (en) 2009-09-02 2012-03-29 Nortel Networks Limited Mac packet data unit construction for wireless systems
US20110096828A1 (en) 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
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
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
CN107911332B (zh) 2009-11-04 2021-01-08 阿莫泰克有限公司 媒体内容流播的方法、系统和计算机可读介质
KR101786050B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 전송 방법 및 장치
KR101786051B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치
CN101729857A (zh) 2009-11-24 2010-06-09 中兴通讯股份有限公司 一种接入视频服务的方法及视频播放系统
CN102687518B (zh) 2009-12-11 2016-06-01 诺基亚技术有限公司 用于流媒体文件内表示的描述和定时的装置及方法
KR101624013B1 (ko) 2010-02-19 2016-05-24 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
WO2011102791A1 (en) 2010-02-19 2011-08-25 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for representation switching in http streaming
EP3783822A1 (en) 2010-03-11 2021-02-24 Electronics and Telecommunications Research Institute Method and apparatus for transceiving data in a mimo system
US9497290B2 (en) 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
WO2011160741A1 (en) * 2010-06-23 2011-12-29 Telefonica, 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
US9131033B2 (en) 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
KR20120010089A (ko) 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
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
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups 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
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
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
US8806050B2 (en) 2014-08-12
AU2011289514A1 (en) 2013-02-28
MY156640A (en) 2016-03-15
RU2013110285A (ru) 2014-09-20
JP5559432B2 (ja) 2014-07-23
EP2604015B1 (en) 2019-03-13
HUE044114T2 (hu) 2019-09-30
EP2604016A1 (en) 2013-06-19
ES2726772T3 (es) 2019-10-09
AU2011289514B2 (en) 2014-08-14
AR082614A1 (es) 2012-12-19
AR082616A1 (es) 2012-12-19
AU2011289511A1 (en) 2013-02-28
DK2604016T3 (da) 2019-05-13
UA107394C2 (en) 2014-12-25
EP2604016B1 (en) 2019-03-13
CA2807156C (en) 2017-06-06
EP2604015A1 (en) 2013-06-19
US9319448B2 (en) 2016-04-19
IL224476A (en) 2016-11-30
CA2807157A1 (en) 2012-02-16
UA107125C2 (uk) 2014-11-25
JP2013538507A (ja) 2013-10-10
JP2015111898A (ja) 2015-06-18
BR112013002692B1 (pt) 2021-10-26
HK1181576A1 (zh) 2013-11-08
TWI458313B (zh) 2014-10-21
BR112013002686B1 (pt) 2021-10-26
US20120042050A1 (en) 2012-02-16
KR20130061170A (ko) 2013-06-10
EP2604014B1 (en) 2019-02-20
JP5932070B2 (ja) 2016-06-08
HUE044172T2 (hu) 2019-10-28
BR112013002686A2 (pt) 2016-05-31
WO2012021538A1 (en) 2012-02-16
JP2014209752A (ja) 2014-11-06
PT2604014T (pt) 2019-06-04
CA2807157C (en) 2016-04-19
US20120042089A1 (en) 2012-02-16
JP2013538508A (ja) 2013-10-10
SG187638A1 (en) 2013-03-28
KR20130042612A (ko) 2013-04-26
CN103141069A (zh) 2013-06-05
CA2807156A1 (en) 2012-02-16
BR112013002692A2 (pt) 2016-05-31
WO2012021540A1 (en) 2012-02-16
CN103081433A (zh) 2013-05-01
IL224449A (en) 2016-12-29
TWI501630B (zh) 2015-09-21
CN103141069B (zh) 2016-04-27
CN103069769A (zh) 2013-04-24
KR20150090279A (ko) 2015-08-05
RU2571375C2 (ru) 2015-12-20
WO2012021543A1 (en) 2012-02-16
TWI479882B (zh) 2015-04-01
US20120042090A1 (en) 2012-02-16
CN103069769B (zh) 2015-11-25
SG10201505779QA (en) 2015-09-29
WO2012021538A8 (en) 2013-02-21
HUE044113T2 (hu) 2019-09-30
AU2011289511B2 (en) 2015-01-15
JP2013538506A (ja) 2013-10-10
DK2604014T3 (da) 2019-05-20
AR082612A1 (es) 2012-12-19
MY155946A (en) 2015-12-31
HK1181577A1 (en) 2013-11-08
EP2604014A1 (en) 2013-06-19
KR101709030B1 (ko) 2017-02-21
US9456015B2 (en) 2016-09-27
CN103081433B (zh) 2016-01-20
SI2604016T1 (sl) 2019-05-31
TW201230743A (en) 2012-07-16
JP5612211B2 (ja) 2014-10-22
TW201230777A (en) 2012-07-16
TW201220826A (en) 2012-05-16
KR101542310B1 (ko) 2015-08-12
PL2604014T3 (pl) 2019-08-30
RU2558615C2 (ru) 2015-08-10
ES2730896T3 (es) 2019-11-13
SI2604014T1 (sl) 2019-05-31
RU2013110060A (ru) 2014-09-20
SG187636A1 (en) 2013-03-28
KR20130042611A (ko) 2013-04-26
KR101442999B1 (ko) 2014-09-22

Similar Documents

Publication Publication Date Title
ES2730894T3 (es) Actualizaciones de archivo de manifiesto para la emisión en continuo de red de datos de vídeo codificados
ES2854936T3 (es) Recuperación y acceso a trozos de segmento para transmisión de medios
ES2788901T3 (es) Procesamiento de contenido multiperiodo continuo
BR112020015214A2 (pt) inserção dinâmica de anúncio condicional