MX2015000266A - Decodificacion y emision en tiempo real de video sensibles a la energia. - Google Patents
Decodificacion y emision en tiempo real de video sensibles a la energia.Info
- Publication number
- MX2015000266A MX2015000266A MX2015000266A MX2015000266A MX2015000266A MX 2015000266 A MX2015000266 A MX 2015000266A MX 2015000266 A MX2015000266 A MX 2015000266A MX 2015000266 A MX2015000266 A MX 2015000266A MX 2015000266 A MX2015000266 A MX 2015000266A
- Authority
- MX
- Mexico
- Prior art keywords
- video
- energy
- complexity
- segment
- decoding
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3212—Monitoring battery levels, e.g. power saving mode being initiated when battery voltage goes below a certain level
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/756—Media network packet handling adapting media to device capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/127—Prioritisation of hardware or computational resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/41407—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/4424—Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
- Power Sources (AREA)
Abstract
La presente invención se refiere a métodos y sistemas para que un dispositivo móvil decodifique video con base en la energía disponible. Por ejemplo, el dispositivo móvil puede recibir un archivo de descripción de multimedia (MDF - Media Description File) para un flujo de video proveniente de un servidor de video. El MDF puede incluir información de complejidad asociada a una pluralidad de segmentos de video. La información de complejidad puede estar relacionada con la cantidad de energía de procesamiento a utilizarse para decodificar el segmento en el dispositivo móvil. El dispositivo móvil puede determinar al menos un indicador de energía para el dispositivo móvil. El dispositivo móvil puede determinar un primer nivel de complejidad que será solicitado para un primer segmento de video con base en la información de complejidad derivada del MDF y del indicador de energía. El dispositivo móvil puede modificar dinámicamente el proceso de decodificación para ahorrar energía con base en el nivel detectado de energía.
Description
DECODIFICACION Y EMISION EN TIEMPO REAL DE VIDEO SENSIBLES
A LA ENERGÍA
CAMPO DE LA INVENCIÓN
A medida que la proliferación de dispositivos móviles sigue incrementándose, se están utilizando para una mayor variedad de aplicaciones. Además, los dispositivos móviles, tales como los teléfonos inteligentes, están utilizando cada vez más funcionalidad compleja. Tales incrementos en el procesamiento pueden aumentar el consumo de energía, lo cual puede afectar desfavorablemente a la experiencia del usuario en situaciones de energía limitada, tales como, cuando una batería es la fuente de alimentación para el dispositivo.
ANTECEDENTES DE LA INVENCIÓN
Se describen métodos y sistemas para que un dispositivo móvil decodifique video a base de la energía disponible. Por ejemplo, el dispositivo móvil puede recibir un archivo de descripción de medios (MDF - Media Description File) para un flujo de video proveniente de un servidor de video. El MDF puede incluir información de la complejidad asociada a una pluralidad de segmentos de video. La información de la complejidad puede estar relacionada con la cantidad de energía de procesamiento a utilizarse para decodificar el segmento en el dispositivo
móvil. El dispositivo móvil puede determinar al menos un indicador de energía para el dispositivo móvil. Por ejemplo, el indicador de energía puede ser una cantidad de energía restante para una fuente de alimentación actual tal como una batería. El dispositivo móvil puede determinar un primer nivel de complejidad que se solicitará para un primer segmento de video a base de la información de la complejidad derivada del MDF y el indicador de energía. El dispositivo móvil puede solicitar el primer segmento de video en el primer nivel de complejidad proveniente del servidor de video.
Por ejemplo, la información de la complejidad en el MDF puede proporcionarse por segmento de video. Algunos ejemplos de indicadores de energía que pueden utilizarse para determinar el nivel de complejidad adecuado a solicitar puede incluir la cantidad de energía a asignar para decodificar el resto del video, la cantidad de energía utilizada para una decodificación anterior, la estadística recolectada en el dispositivo móvil referente a segmentos decodificados con anterioridad, información de costos en forma de una relación de la energía utilizada para decodificar a la calidad del segmento, la información de costos en forma de una relación de la energía utilizada a la complejidad del segmento, y/o lo similar. El dispositivo móvil puede determinar una duración del resto del flujo de
video, y puede determinar una duración del primer segmento de video. Después, el dispositivo móvil puede determinar una cantidad de energía a asignarse al primer segmento de video a base de la cantidad de energía a asignarse para decodificar el resto del flujo de video, la duración del resto del flujo de video, y la duración del primer segmento de video. El dispositivo móvil puede tomar la determinación con base en la suposición de que a cada segmento que permanece en el flujo de video se le asignará una cantidad de energía igual para la decodificación. La suma de las energías asignadas a cada uno de los segmentos restantes puede ser menor que o igual a la energía total asignada para completar la decodificación del video.
BREVE DESCRIPCIÓN DE LA INVENCIÓN
El dispositivo móvil puede determinar el primer nivel de complejidad a solicitarse para el primer segmento de video a base de la información de la complejidad derivada del MDF y el indicador de energía mediante la determinación de un nivel de complejidad que ocasionará una decodificación del primer segmento de video utilizando aproximadamente la cantidad de energía a asignarse al primer segmento de video. Por ejemplo, los niveles de complejidad pueden cuantificarse, y el dispositivo móvil puede seleccionar ese nivel más complejo que cumple un objetivo deseado del uso de la energía. El dispositivo
móvil puede determinar el primer nivel de complejidad a solicitarse para el primer segmento de video a base de la información de la complejidad derivada del MDF y el indicador de energía mediante la selección del primer nivel de complejidad con base en una energía asignada para un segmento anterior, un nivel de complejidad utilizado para decodificar el segmento anterior, y una energía asignada para decodificar el primer segmento de video.
El dispositivo móvil puede ajustar de forma autónoma o conjuntamente con la red el proceso de decodificación a fin de ahorrar energía, limitando simultáneamente la introducción de errores de decodificación. Por ejemplo, el dispositivo móvil puede determinar si una región del primer segmento de video incluye componentes de alta frecuencia que exceden un umbral de alta frecuencia. El dispositivo móvil puede aplicar un primer filtro de interpolación durante la compensación de movimiento para la región con la condición de que los componentes de alta frecuencia superen el umbral de alta frecuencia, o el dispositivo móvil puede aplicar un segundo filtro de interpolación para la compensación de movimiento para la región con la condición de que componentes de alta frecuencia no superen el umbral de alta frecuencia. El segundo filtro de interpolación puede estar asociado a derivaciones más cortas (por ejemplo, una menor
frecuencia de corte) que el primer filtro de interpolación, limitando consecuentemente el acceso a la memoria y ahorrando energía. El dispositivo móvil puede determinar no aplicar el filtro con derivaciones más cortas ( por ejemplo, una menor frecuencia de corte), aunque existen pocos componentes de alta frecuencia con base en la determinación de que la región es una referencia para otras regiones, lo que significa que la posibilidad de propagar un error es mayor. El dispositivo móvil puede realizar el desbloqueo de imágenes de referencia en el primer segmento de video, y puede abstenerse de realizar el desbloqueo para las imágenes que no son de referencia.
Un dispositivo móvil u otra unidad de transmisión recepción inalámbrica pueden incluir uno o más componentes funcionales para modificar dinámicamente la decodificación de video a base de las condiciones de energía. Por ejemplo, el dispositivo móvil puede incluir un transceptor que puede configurarse para solicitar un MDF para un archivo de video proveniente de un servidor de video y para recibir el MDF proveniente del servidor de video, en el que el MDF puede incluir información de la complejidad para una pluralidad de segmentos de video. El dispositivo móvil puede incluir una unidad de estadística y control de complejidad que puede configurarse para almacenar la estadística para la decodificación del segmento anterior. Por ejemplo, la
estadística para la decodificación del segmento anterior puede incluir información de energía asociada a la decodificación de al menos un segmento anterior e información de la complejidad para al menos en el segmento anterior. El dispositivo móvil puede incluir un detector de energía que puede configurarse para determinar la información de nivel de energía actual. El dispositivo móvil puede incluir un controlador de adaptación sensible a la energía que puede configurarse para determinar un nivel de complejidad a solicitar para un segmento subsecuente con base en la información de la complejidad derivada del MDF, la estadística para la decodificación del segmento anterior, y la información de energía actual. El dispositivo móvil puede incluir un decodificador configurado para determinar un parámetro o método a aplicar para decodificar el segmento subsecuente con base en la información determinada por el controlador de adaptación sensible a la energía.
Por ejemplo, el decodificador se configura para determinar un filtro de interpolación a aplicar para la compensación de movimiento de una determinada región con base en un análisis de frecuencias de un muestreo de píxeles en la determinada región. El decodificador puede configurarse para utilizar un primer filtro de interpolación con derivaciones más cortas (por ejemplo, una
menor frecuencia de corte) que un segundo filtro de interpolación para una predicción temporal de capa superior para regiones con componentes de alta frecuencia por debajo de un umbral especificado, y utilizar el segundo filtro de interpolación para una predicción temporal de capa inferior, incluso si los componentes de alta frecuencia de la capa inferior se encuentran debajo del umbral. El decodificador puede configurarse para utilizar un primer filtro de interpolación con derivaciones más cortas (por ejemplo, una menor frecuencia de corte) que un segundo filtro de interpolación para las regiones con componentes de alta frecuencia por debajo de un umbral especificado, excepto para al menos los interbloques en los que un vecino no causal del interbloque comprenden uno o más bloques intracodificados. La exención de los interbloques en los que un vecino no causal del interbloque comprende uno o más bloques intracodificados puede ayudar a evitar la propagación del error en presencia de la intracodificación. El controlador de adaptación de energía puede configurarse para determinar una resolución a solicitar para el segmento subsecuente con base en la información de la complejidad derivada del DF, la estadística para la decodificación del segmento anterior, y la información de energía actual. La resolución puede solicitarse en un nivel de complejidad especificada. El nivel de complejidad puede corresponder al
nivel de detalle en el cual el codificador realiza la codificación.
Se describe un método para una unidad de transmisión recepción inalámbrica (WTRU - wireless transmit receive unit) para interactuar con un servidor de video a fin de ahorrar dinámicamente la energía durante la decodificación de video. Por ejemplo, puede actualizar dinámicamente las determinaciones referentes a la cantidad de energía restante para decodificar y determinar el nivel de complejidad adecuado a seleccionar para un segmento de video a base de las determinaciones actualizadas. A manera de ejemplo, la WTRU puede solicitar un MDF proveniente del servidor de video. La WTRU puede recibir el MDF proveniente del servidor de video. El MDF puede incluir información de la complejidad para decodificar uno o más segmentos de un flujo de video. La WTRU puede determinar una cantidad de energía a asignarse para decodificar segmentos de video del flujo de video con base al menos en parte, en una cantidad de energía restante asignada para decodificar un resto del flujo de video. La WTRU puede determinar un primer nivel de complejidad de decodificación a solicitar para un primer segmento de video del flujo de video a base de la cantidad de energía a asignarse para decodificar los segmentos de video del flujo de video. La WTRU puede solicitar el primer nivel de complejidad de decodificación para el primer
segmento de video. La WTRU puede reevaluar la cantidad de energía restante asignada para decodificar un resto del flujo de video y puede determinar que la WTRU carece de suficiente energía para completar la decodificación del flujo de video a un nivel de energía actual en cada segmento de video.
La WTRU puede determinar una nueva cantidad de energía a asignarse para decodificar los segmentos de video restantes del flujo de video a base de una nueva cantidad de energía restante asignada para decodificar el resto del flujo de video. La WTRU puede determinar un segundo nivel de complejidad de decodificación para solicitar un segundo segmento de video del flujo de video a base de la nueva cantidad de energía a asignar para la decodificación de los segmentos de video restantes del flujo de video. A cada uno de los segmentos de video restantes se le puede asignar una cantidad de energía igual con base en la nueva cantidad de energía restante asignada para decodificar el resto del flujo de video. Puede seleccionarse un nivel de complejidad correspondiente para un segmento de video respectivo con base en una cantidad de energía asignada para decodificar segmentos de video, una duración del segmento de video respectivo, y la estadística asociadas a la energía utilizada para la decodificación de al menos un segmento anterior, el nivel de complejidad para al menos un segmento
anterior, y la duración del al menos un segmento anterior. La WTRU puede informarle al servidor la estadística de uso de la energía para diversos segmentos decodificados, y la WTRU puede recibir un segmento de video de una determinada complejidad, con base en el informe.
BREVE DESCRIPCIÓN DE LAS FIGURAS
Puede obtenerse una comprensión más detallada a partir de la siguiente descripción, proporcionada a manera de ejemplo, conjuntamente con las figuras anexas en las que:
La Figura 1A es un diagrama de sistema de un sistema de comunicaciones a manera de ejemplo en la cual una o más modalidades descritas pueden ser implementadas.
La Figura IB es un diagrama de sistema de una unidad de transmisión/recepción inalámbrica (WTRU) a manera de ejemplo que puede utilizarse en el sistema de comunicaciones ilustrado en la Figura 1A.
La Figura 1C es un diagrama de sistema de una red de acceso de radio a manera de ejemplo y una red central a manera de ejemplo que pueden utilizarse en el sistema de comunicaciones ilustrado en la Figura 1A.
La Figura ID es un diagrama de sistema de otra red de acceso de radio y una red central de radio a manera de ejemplo que pueden utilizarse en el sistema de comunicaciones ilustrado en la Figura 1A.
La Figura 1E es un diagrama de sistema de otra red de acceso de radio a manera de ejemplo y una red central a manera de ejemplo que pueden utilizarse en el sistema de comunicaciones ilustrado en la Figura 1A.
La Figura 2 ilustra la tendencia del número creciente de usuarios móviles.
La Figura 3 ilustra un sistema de emisión en tiempo real de video en modo de inserción a manera de ejemplo.
La Figura 4 ilustra un sistema de emisión en tiempo real de video a base de HTTP a manera de ejemplo.
La Figura 5 ilustra una arquitectura a manera de ejemplo de una plataforma de teléfono inteligente que puede implementarse en un dispositivo móvil.
La Figura 6A ilustra un ejemplo de uso de la energía en un escenario de reproducción de video.
La Figura 6B ilustra el escalamiento dinámico de voltaje y de frecuencia.
La Figura 7 ilustra un sistema a manera de ejemplo de emisión de video en tiempo real sensible a la energía.
La Figura 8 ilustra puntos posibles de operación de conmutación a manera de ejemplo en la parte del cliente.
La Figura 9 ilustra procesos a manera de ejemplo de decodificación de HEVC.
La Figura 10 ilustra ejemplos de diferentes posiciones de píxel para proceso de MC de luminancia.
Las Figuras 11A y 11B ilustran ejemplos de perfiles de tiempo para HEVC utilizando el decodificador HM6.1 y flujos de bits codificados utilizando la configuración de acceso aleatorio (RA - random access).
La Figura 12A ilustra una forma de onda de filtro de interpolación a manera de ejemplo que puede utilizarse para regiones con una porción relativamente pequeña de los componentes de frecuencia en el intervalo de alta frecuencia.
La Figura 12B ilustra un respuesta de frecuencia a manera de ejemplo para el filtro de interpolación de la Figura 12A.
La Figura 13 ilustra un ejemplo de una estructura de codificación jerárquica en HEVC.
La Figura 14 ilustra las direcciones a manera de ejemplo utilizadas en intracodificación de HEVC.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN
En años recientes, los dispositivos móviles se han convertido en la plataforma de cómputo de elección para una amplia variedad de usuarios y aplicaciones. Por ejemplo, la rápida evolución de los circuitos integrados del práctico Sistema monochip (SoC - System on a Chip) les ha permitido a los dispositivos móviles incrementar su funcionalidad disponible conservando simultáneamente un tamaño que los hace prácticos para el uso de mano.
Recientemente, los ICs (Integrated Circuits) han aumentado enormemente la capacidad de cálculo de los dispositivos móviles, por ejemplo, en términos de frecuencia de la CPU y/o el número de núcleos de procesamiento disponibles. Además, el incremento en el ancho de banda y/o la velocidad de datos total de teenologías inalámbrica de trabajo en red (por ejemplo, 4G LTE, HSPA+, Wi-Fi, etc.) han permitido que los dispositivos móviles obtengan medios a velocidades comparables con el acceso tradicional a Internet de banda ancha.
Tales avances son algunas de las razones de la alta tasa de adopción de los dispositivos móviles, lo que ocasiona un número cada vez más grande de dispositivos de implementación. La Figura 2 ilustra cómo el número de usuarios de Internet móvil sigue incrementándose con el paso del tiempo. Por ejemplo, como se ilustra en la Figura 2, se calcula que el número de usuarios de Internet móvil puede superar pronto a la cantidad de usuarios de Internet de escritorio. Tal tendencia puede indicar que los anteriores sistemas de entrega y procesamiento de contenido que fueron optimizados para un entorno de escritorio deben ser revisados con el fin de optimizar el rendimiento para el tráfico de Internet móvil. Por ejemplo, una característica de la informática móvil que puede haber contribuido a su enorme crecimiento en años recientes puede
ser que los usuarios móviles puedan acceder a servicios y/o contenido prácticamente en cualquier momento y/o en cualquier lugar utilizando su dispositivo móvil.
La distribución y/o visualización de contenido de medios a/desde dispositivos móviles puede ocasionar o generar complejidades que pueden ser un problema en un dispositivo de escritorio tradicional. Por ejemplo, a pesar de los avances recientes, algunos dispositivos móviles aún pueden carecer de recursos para ejecutar un procesamiento complejo de manera puntual en comparación con los entornos de escritorio. Además, las restricciones de tamaño pueden producir algunos dispositivos móviles que tenqan menos capacidades de procesamiento y/o menos módulos de hardware que estén disponibles en los dispositivos tradicionales. Además, muchos tipos de dispositivos móviles pueden tener restricciones de energía ya que pueden funcionar utilizando una fuente de alimentación de baterías durante el funcionamiento normal, en comparación con una fuente de alimentación fija mediante una red eléctrica. A fin de facilitar la entrega y/o visualización del contenido de medios a dispositivos móviles de complejidad variable y/o con capacidades variables, se están desarrollando téenicas para mejorar la distribución de contenidos en plataformas móviles. A manera de ejemplo, el Lenguaje de Marcas de Hipertexto 5 (HTML5 - HyperText Markup Language 5) es un
lenguaje de marcas para las páginas web que ha sido diseñado en parte para tratar de facilitar más el acceso a los medios para dispositivos móviles. Por ejemplo, el HTML5 se ha diseñado para utilizar el soporte de diseño de distribución de páginas dinámicas, lo cual puede ayudarles a los dispositivos móviles a recuperar e interpretar el contenido de medios.
Un caso de uso a manera de ejemplo en el que los dispositivos móviles han experimentado un gran incremento en el tráfico de Internet está en la generación y entrega de contenidos de video móvil. Con objeto de generar, procesar, distribuir y/o visualizar eficaz y eficientemente el tráfico de video móvil, pueden especificarse téenicas para optimizar el procesamiento de video en dispositivos móviles. Por ejemplo, dado que el hardware incluido en el dispositivo móvil se vuelve más potente, las WTRUs pueden configurarse para realizar un procesamiento cada vez más complejo a fin de emitir en tiempo real y/o decodificar el tráfico de video.
Además, los avances en pantallas móviles también han influido en la alta tasa de adopción de dispositivos móviles para la visualización de video. Por ejemplo, la calidad de video de 720p está relativamente extendida para dispositivos móviles (por ejemplo, tales como teléfonos inteligentes y tabletas) para la visualización de contenido
de video. Algunas tabletas de desempeño superior pueden ser incluso capaces de recibir y visualizar video de 1080p y más. Además, las mejoras de LCD han permitido que los dispositivos móviles mejoren los niveles de color y/o los niveles de contraste que pueden utilizarse para la visualización de video. Otras téenicas de visualización avanzadas pueden incluir la introducción de pantallas (3d) tridimensionales (por ejemplo, 3D auto-estereoscópica) para dispositivos móviles. Cuando se utilizan en conjunto con las redes de comunicaciones inalámbricas avanzadas (por ejemplo, 4G LTE, redes inalámbricas Wi-Fi, etc.), los usuarios de dispositivos móviles puede ser capaces de acceder a los servicios de video de alta calidad con relativa facilidad.
Además, los dispositivos móviles pueden configurarse para integrar uno o más módulos funcionales conjuntamente en una sola plataforma. Por ejemplo, un dispositivo móvil típico puede incluir uno o más de entre una pantalla táctil, una cámara digital, un sistema de posicionamiento global (GPS - global positioning system), un sensor de gravedad, y/o otras características o tecnologías. Tales elementos pueden competir entre sí por los recursos de procesamiento móvil, los cuales pueden complicar la visualización del contenido de video. La utilización de una o más de estas características
prácticamente de manera simultánea puede afectar de modo desfavorable el uso de la energía en el dispositivo móvil, ocasionando una disminución en la cantidad de video que puede ser visualizado por carga de batería. Tal uso de la energía es un factor importante para los dispositivos móviles, ya que a menudo tienen energía limitada debido a la cantidad limitada de energía disponible en la batería.
Dado que los dispositivos móviles se configuran para realizar más métodos intensos en cuanto a su procesamiento para la emisión en tiempo real y/o decodificación de video, puede haber diferencias en términos de energía y el uso de recursos móviles. Los métodos y sistemas descritos en la presente tienen en cuenta el uso de la energía y/o el nivel de energía ( por ejemplo, el uso de la energía y/o el nivel de energía) durante los procesos de decodificación de video y/o de emisión en tiempo real de video con objeto de visualizar el video de una calidad adecuada en entornos con limitaciones de energía. Por ejemplo, con el fin de ofrecer servicios de video móviles de alta calidad en aquellos dispositivos móviles heterogéneos con recursos limitados, factores tales como uno o más tamaños de la pantalla, capacidades de procesamiento, condiciones de la red, niveles de la batería, y/o lo similar pueden ser considerados y utilizados para afectar el procesamiento de codificación
y/o de emisión en tiempo real de video en el dispositivo móvil y/o en una red de comunicaciones avanzada.
Por ejemplo, la emisión en tiempo real de video es un metodo a manera de ejemplo para proporcionar servicios de video a uno o más dispositivos móviles mediante redes de comunicaciones. Algunos ejemplos de modos de emisión en tiempo real de video pueden incluir modos de inserción y/o modos de extracción. Por ejemplo, un sistema de emisión en tiempo real que utiliza un modo de inserción de video puede entregar datos de video utilizando el protocolo de transporte en tiempo real (RTP - real-time transport protocol). La emisión en tiempo real de video de modo de inserción puede aplicar la funcionalidad de protocolo de control en tiempo real (RTCP - real-time control protocol) para monitorear y/o controlar la calidad de servicio (QoS - Quality of Service) asociada al video.
Se describen métodos y sistemas para proporcionar téenicas a base de cliente y/o servidor a fin de mejorar la eficiencia energética de la decodificación de video. Los métodos y sistemas pueden incluir el uso de emisión en tiempo real sensible a la energía y/o decodificación sensible a la energía. Por ejemplo, la decodificación de un video puede incluir la recepción de un archivo de descripción de medios (MDF - media description file) y/u otra información en banda o fuera de banda que indica
información de la complejidad para un flujo de video proveniente de un servidor de video. La información de la complejidad puede referirse a la cantidad relativa de recursos de procesamiento y/o a la cantidad relativa de energía de procesamiento que un decodificador utilizaría para decodificar un determinado video o segmento. Por ejemplo, un segmento más complejo puede utilizar más recursos de procesamiento y/o más energía para decodificar que un video o segmento de video menos complejo. La información de la complejidad para el flujo de video puede determinarse con base en el MDF. En un ejemplo, la información de la complejidad puede incrustarse en el flujo de video, por ejemplo, utilizando mensajería de Información de Mejora Suplementaria (SEI - Supplemental Enhancement Information) en un flujo de bits de video y/o utilizando otros metadatos incrustados. Por ejemplo, la información de la complejidad puede señalizarse utilizando Protocolo de Control RTP (RTCP). El dispositivo móvil puede decodificar el flujo de video utilizando la información de la complejidad. La información de la complejidad puede ser proporcionada por segmento de video. La decodificación del flujo de video utilizando la información de la complejidad puede incluir la decodificación del flujo de video utilizando la información de la complejidad permaneciendo simultáneamente dentro de un nivel determinado de consumo de energía.
Por ejemplo, el MDF puede ser un archivo de Descripción de Presentación de Medios (MPD - Media Presentation Description). El MDF puede incluir uno o más de entre un nivel de calidad, una tasa de bits, y/o la información de la complejidad. La información de la complejidad puede ser aplicable a una pluralidad de niveles de complejidad. La decodificación del flujo de video puede incluir la realización de la decodificación utilizando diferentes parámetros dependientes de una determinada complejidad para un determinado segmento. El método puede incluir la determinación de la asignación de energía para la futura decodificación del flujo de video a base de estadísticas anteriores de disipación de energía. El filtrado de circuito puede realizarse, por ejemplo, dependiendo de la energía disponible en el dispositivo móvil. El filtrado de circuito puede incluir uno o más de entre desbloqueo, utilizando una compensación adaptable de muestras (SAO - sample adaptive offset), y/o el filtrado de circuito adaptable (ALF - adaptive loop filtering).
En un ejemplo, puede realizarse la decodificación de atajo. Realizar la decodificación de atajo puede incluir uno o más de entre aplicación de diferentes filtros de interpolación en diferentes áreas características, omitir las operaciones de desbloqueo en una o más áreas en las que las degradaciones de bloqueo son menos visibles o en donde
la propagación del error es menos problemática, y/o la aplicación de un menor tamaño de transformada de acuerdo con la distribución del coeficiente diferente de cero. Al tomar en cuenta el nivel de energía relativo restante y/o el nivel de energía disponible en el dispositivo móvil durante la emisión en tiempo real de video y/o la decodificación de video, los dispositivos capaces de realizar una emisión en tiempo real compleja y de alto consumo de energía puede recibir de señales de video de alta calidad, de procesamiento intenso, mientras que los dispositivos con limitaciones de energía aún pueden recibir video de una calidad mínima especificada limitando simultáneamente el consumo de energía total.
La Figura 3 ilustra una arquitectura a manera de ejemplo para un sistema de emisión en tiempo real de video de modo de inserción. Por ejemplo, como se muestra en la Figura 3, el servidor de gestión 320 puede configurarse para gestionar la administración con base en las solicitudes del usuario. Los usuarios pueden realizar la solicitud utilizando dispositivos móviles tales como una o más de entre la WTRU 302, la WTRU 304, y/o la WTRU 306. El servidor de gestión 320 puede configurarse para asignar una solicitud de usuario a uno de los servidores de emisión en tiempo real (por ejemplo, el servidor de emisión en tiempo real 310, el servidor de emisión en tiempo real 312, el
servidor de emisión en tiempo real 314 etc.). Pueden distribuirse diversas solicitudes a uno o más servidores de emisión en tiempo real con objeto de equilibrar la carga del sistema (por ejemplo, el control de admisión). En un ejemplo, uno o más servidores de emisión en tiempo real pueden iniciar una sesión de emisión en tiempo real.
Un servidor de emisión en tiempo real que proporciona una sesión de video de emisión en tiempo real puede controlar uno o más aspectos o parámetros asociados a la sesión de emisión en tiempo real, por ejemplo, en términos de tasa de bits, resolución, conmutación del flujo, y/o lo similar. El(los) cliente(s) (por ejemplo, la WTRU 302, la WTRU 304, la WTRU 306, etc.) puede(n) decodificar los datos de video después de recibir los datos de video provenientes del servidor de emisión en tiempo real. El(los) cliente(s) (por ejemplo, la WTRU 302, la WTRU 304, la WTRU 306, etc.) pueden informarle periódicamente estadísticas tales como la pérdida de paquetes, retrasos, y/o lo similar al servidor de emisión en tiempo real que está proporcionando el flujo de video.
En muchos sistemas de video de inserción, la lógica de adaptación para una sesión de emisión en tiempo real de video (por ejemplo, la funcionalidad utilizada para especificar la tasa de bits, la resolución, la conmutación del flujo, etc. con base en las condiciones actuales)
pueden ubicarse en la parte del servidor (por ejemplo , el servidor de emisión en tiempo real 310, el servidor de emisión en tiempo real 312, el servidor de emisión en tiempo real 314, etc.). Por ejemplo, un servidor de emisión en tiempo real puede configurarse para realizar la adaptación de ancho de banda utilizando conmutación de flujo de bits (y/o capa) de acuerdo con un ancho de banda disponible informado por un cliente (por ejemplo, la WTRÜ 302, la WTRU 304, la WTRU 306, etc.). Tal emisión en tiempo real de video de modo de inserción en la que la adaptación se realiza en la parte del servidor puede permitir menores cargas de transmisión y/o cargas de procesamiento en el cliente, facilitando el uso de un tamaño relativamente pequeño de memoria temporal en el cliente que, dado que el servidor puede enviar datos de acuerdo con la tasa de bits determinada relativamente de manera continua y regular.
En un ejemplo, uno o más dispositivos de cliente ( por ejemplo, la WTRU 302, la WTRU 304, la WTRU 306, etc.) pueden enviarle un informe de retroalimentación al servidor. El servidor puede configurar y/o modificar los parámetros de video a base de el(los) informe(s) de retroalimentación recibido(s) proveniente(s) del(los) dispositivo(s) del cliente. Sin embargo, durante los periodos de mayor congestión de la red, el servidor puede dejar de recibir el informe (s) de realimentación. Además,
los protocolos de RTP, que se utilizan frecuentemente para la entrega de video a base de inserción, pueden ser difíciles de implementar en conjunto con los sistemas de entrega a base del protocolo de control de transmisión (TCP), y algunos cortafuegos pueden bloquear los flujos de tráfico que utilizan RTP. Con objeto de proporcionar video de una calidad especificada, los sistemas de emisión en tiempo real de video de inserción pueden implementar o utilizar servidores de emisión en tiempo real que se encuentran relativamente cerca de los usuarios, por ejemplo para proporcionar un servicio adecuado. Tales implementaciones dificultar más el proporcionar el servicio a gran escala y puede dificultar aún más la implementación con dispositivos móviles, ya que, por definición, pueden desplazarse en el transcurso de la sesión.
Un ejemplo de un sistema de emisión en tiempo real en modo de extracción puede reproducirse mientras se descarga. Por ejemplo, un dispositivo de cliente tal como una WTRU puede descargar un archivo de medios grande, por ejemplo, mediante el protocolo de transferencia de hipertexto (HTTP). El cliente puede decodificar una porción del archivo, mientras está en curso el proceso de descarga. Sin embargo, desde la perspectiva del proveedor de servicios o de video (por ejemplo, Netflix, Amazon, Google, etc.), puede ser indeseable realizar la adaptación en una
base por usuario; en cambio, tales fuentes de contenido pueden preferir la utilización de la infraestructura existente de Internet tal y como se encuentra, y pueden implementar su servicio de ajuste de excesos (OTT - over the top), lo cual puede reducir el costo y tiempo de implementación.
Un ejemplo de una teenica de emisión en tiempo real de video de extracción puede incluir la emisión en tiempo real de video a base de HTTP. Algunos ejemplos de técnicas de emisión en tiempo real de video a base de HTTP pueden incluir Smooth Emisión de Microsoft, Dynamic HTTP y HTTP Streaming de de Adobe, y HTTP Live Streaming de Apple (HLS). Pueden utilizarse métodos de muestreo adaptables en emisión en tiempo real de HTTP. Consorcios tales como el Grupo de Expertos de Imágenes en Movimiento (MPEG - Moving Picture Experts Group) de la Organización Internacional de Normalización (ISO - International Organization for Standardization)/Comisión Electrotécnica Internacional (IEC - International Electrotechnical Commission) y/o el Sector de Normalización de las Telecomunicaciones de la Unión Internacional de Telecomunicaciones (UIT-T - International Telecommunication Union Telecommunication Standardization Sector) del Proyecto de Asociación de Tercera Generación Sector (3GPP - 3rd Generation Partnership Project)) se encuentran en el proceso de normalización de los diversos
aspectos de muestreo adaptable para permitir comunicaciones operativas entre dispositivos.
Por ejemplo, la emisión en tiempo real adaptable dinámica sobre HTTP (DASH - Dynamic Adaptive Streaming over HTTP) puede ser un enfoque adaptable para la emisión en tiempo real de video que utiliza métodos de emisión en tiempo real A base de HTTP. La DASH ha recibido una gran cantidad de atención, por ejemplo, debido al hecho de que puede manejar diversas condiciones de ancho de banda. Un concepto implementado en DASH puede ser dividir un archivo de medios o flujo en segmentos que sean independientemente decodificables. Después, una porción de contenido puede codificarse en diferentes calidades o resoluciones y separarse en segmentos de igual longitud. La manera de segmentación y/o otras descripciones sobre cómo se dividió el video y/o la información referente a la calidad relativa de los segmentos puede incluirse en un archivo de manifiesto (MF - manifest file) a base de XML que debe proporcionarse al cliente. Un ejemplo de un archivo MF puede incluir un archivo de descripción de presentación de medios (MPD). Una MPD puede ser un ejemplo de archivo de descripción de medios (MDF). Con base en el archivo MF, el cliente puede acceder al contenido de video utilizando HTTP y puede seleccionar los segmentos que sean más adecuados según sus requisitos de ancho de banda y/o resolución.
La Figura 4 ilustra un sistema a manera de ejemplo de emisión en tiempo real de video a base de HTTP. Por ejemplo, uno o más dispositivos de creación de medios 430 pueden generar un archivo de medios tal como un archivo de video. El contenido de medios puede comprimirse y cortarse en segmentos pequeños, por ejemplo, uno o más dispositivos de creación de medios 430 y/o en uno o más servidores de origen de HTTP (por ejemplo, el servidor de origen de HTTP 420, el servidor de origen de HTTP 422 , el servidor de origen de HTTP 424, etc.). Por ejemplo, el período de segmento puede variar entre 2 y 10 segundos en muchos sistemas de emisión en tiempo real. Los segmentos pueden almacenarse en uno o más servidores de origen de
HTTP (por ejemplo, el servidor de origen de HTTP 420, el servidor de origen de HTTP 422, el servidor de origen de
HTTP 424, etc.) y puede distribuirse mediante una red de entrega de contenidos (CDN - content delivery network).
Por ejemplo, al inicio de una sesión de emisión en tiempo real, uno o más dispositivos de cliente ( por ejemplo, la WTRU 402, la WTRU 404, la WTRU 406, la WTRU 408, etc.) pueden solicitar el archivo de MPD para el contenido de medios y puede determinar qué segmentos utilizar. La decisión referente a qué segmentos utilizar puede basarse en las capacidades del cliente (por ejemplo, tales como uno o más de entre la resolución, el ancho de
banda disponible, y/o lo similar). Uno o más servidores de origen de HTTP (por ejemplo, el servidor de origen de HTTP 420, el servidor de origen de HTTP 422, el servidor de origen de HTTP 424, etc.) pueden enviar los segmentos solicitados a uno o más dispositivos del cliente (por ejemplo, la WTRU 402, la WTRU 404, la WTRU 406, la WTRU 408, etc.) de acuerdo con la solicitud, por ejemplo, mediante una o más memorias asociadas de HTTP ( por ejemplo, la memoria asociada de HTTP 410, la memoria asociada de HTTP 412, la memoria asociada de HTTP 414, etc.). Al utilizar uno o más servidores de memoria asociada de HTTP para almacenar y/o distribuir los segmentos de medios, el video puede distribuirse y ser utilizado por otros usuarios de modo tal que el sistema puede proporcionar servicio de emisión en tiempo real a gran escala.
En comparación con los sistemas de emisión en tiempo real en modo de inserción, los sistemas de emisión en tiempo real en modo de extracción a menudo incluyen la lógica de adaptación para seleccionar los segmentos adecuados en la parte del cliente (por ejemplo, la WTRU 402, la WTRU 404, la WTRU 406, la WTRU 408, etc.). En algunos casos, el proceso de almacenamiento en memoria asociada utilizado para la distribución de los segmentos de video puede ser diferente dependiendo de si se utiliza el modo de inserción o el modo de extracción para la
distribución del contenido. Por ejemplo, dado que pueden utilizarse diferentes protocolos de transporte para la distribución del contenido dependiendo de qué modo se utilice (por ejemplo, HTTP para el modo de extracción, RTP para el modo de inserción, etc.) el proceso utilizado de almacenamiento en memoria asociada puede variar con base en el tipo de protocolo de transporte que se utilice. Por ejemplo, el HTTP no se diseñó inicialmente para la entrega de medios en tiempo real; más bien, el HTTP se diseñó para la entrega de mejor esfuerzo de archivos y otros datos. Consecuentemente, la infraestructura relacionada con HTTP, por ejemplo, que incluye uno o más de entre memorias asociadas, CDN(s), y/o proxies, puede ser compatible bastante bien con tal transferencia, pero puede ser menos optimizada para la entrega de contenido de video en tiempo real.
Dado que la traducción de direcciones de red (NAT - network address translation) y/o el cortafuegos transversal puede o no aplicarse para el HTTP, el RTP puede ser difícil de implementar utilizando la infraestructura de HTTP existente. Además, el HTTP puede añadir una sobrecarga significativa a una sesión de emisión en tiempo real en comparación con el RTP. Con objeto de utilizar el HTTP para la emisión en tiempo real, la parte del cliente (por ejemplo, la WTRU 402, la WTRU 404, la WTRU 406, la WTRU
408, etc.) pueden utilizar tamaños relativamente grandes de memoria temporal, por ejemplo, dado que la velocidad de transmisión del HTTP puede no ser uniforme con el transcurso del tiempo. Por ejemplo, la velocidad de transmisión del HTTP puede variar mucho cuando las redes se congestionan.
En los sistemas de emisión en tiempo real, puede utilizarse codificación no escalable para generar diferentes flujos de bits con una o más diferentes tasas de bits y/o diferentes resoluciones con el fin de adaptarse a la variación del ancho de banda y/o a tamaños de pantalla variables. Además, las téenicas de codificación escalables pueden utilizarse con objeto de ahorrar ancho de banda de transmisión y/o limitar la cantidad de almacenamiento utilizado durante la transmisión y/o recepción. Por ejemplo, la codificación escalable de video (SVC) puede referirse a técnicas para codificar un flujo de bits de video de calidad relativamente alta que también puede incluir uno o más flujos de bits de subconjunto. Dichos uno o más flujos de bits de video de subconjunto pueden determinarse utilizando un subconjunto de los paquetes derivados del flujo de bits principal durante el proceso de decodificación. Al soltar los paquetes provenientes del conjunto de bits de video más grande, pueden utilizarse los conjuntos de bits de subconjunto a fin de reducir el ancho
de banda asociado con la recepción y la visualización del video. En un ejemplo, los flujos de bits del subconjunto pueden representar una menor resolución espacial (por ejemplo, pantallas más pequeñas), una menor resolución temporal ( por ejemplo, una menor frecuencia de imagen), y/o una señal de video de menor calidad que el flujo de bits principal.
La aplicación que se ejecuta en el dispositivo de cliente puede determinar cuál del flujo de bits de SVC principal y/o uno o más flujos de bits del subconjunto deben decodificarse con base en la tasa y/o la representación deseada por la aplicación. La SVC puede ahorrar ancho de banda y almacenamiento en comparación con soluciones no escalables. Las normas de video internacionales MPEG-2 Video, H.263, MPEG4 Visual, y/o H.264 pueden tener las herramientas y/o perfiles que soportan algunos modos de escalabilidad. Recientemente, se han aprobado los requisitos y casos de uso de la extensión escalable de codificación de video de alta eficiencia (HEVC). La HEVC puede actualmente desarrollarse de manera conjunta por el Grupo de Expertos de Codificación de Video ITU-T (VCEG - Video Coding Experts Group) y Grupo de Expertos de Imágenes en Movimiento ISO/IEC (MPEG). Con la teenología de codificación escalable de video, el ancho de banda puede ahorrarse para la DASH y/o casos de
multidifusión. En los sistemas de DASH un servidor de memoria asociada de HTTP puede almacenar en memoria asociada la capa base del video visto por muchos usuarios, por ejemplo, en lugar de almacenar en memoria asociada la totalidad o algunas versiones con diferentes tasas de bits.
Debido a factores tales como el tremendo incremento en el número de aplicaciones que son ejecutadas en los dispositivos móviles, resistencia de energía y/o eficiencia de energía de los dispositivos móviles se ha convertido en una preocupación fundamental para gestionar el rendimiento del dispositivo móvil. Se han realizado diversas investigaciones industriales sobre la eficiencia energética con relación al hardware de dispositivos móviles y al diseño de suministro de energía. Por ejemplo, puede analizarse el consumo de energía para una plataforma móvil a manera de ejemplo bajo diversas condiciones. La Figura 5 ilustra una arquitectura a manera de ejemplo de un dispositivo móvil de teléfono inteligente que puede utilizarse para implementar uno o más de los métodos descritos en la presente. Por ejemplo, el dispositivo móvil 500 puede incluir al procesador/CPU 502, una pantalla interna y/o externa, como el LCD 504, la memoria 520 (por ejemplo, memoria interna/externa; los ejemplos pueden incluir una memoria flash NAND 522 y/o una memoria de acceso aleatorio dinámica sincrónica (SDRAM - Synchronous
Dynamic Random Access-Memory) 522), un radio celular 506 (por ejemplo, GSM/3G/4G, LTE, HSPA+, CDMA2000, etc.), WiFi Radio 508, una tarjeta gráfica 510 (por ejemplo, con la memoria de tarjeta gráfica 514, y/o la tarjeta digital segura (SD - Secure Digital) 512), Radio Bluetooth 530 (por ejemplo, mediante un bus serie universal (USB - universal serial bus)), GPS interno y/o externo 540, códec 550, amplificador 560, y/u otros diversos componentes para recibir/decodificar flujos de video y/o comunicarse mediante una red inalámbrica.
Dependiendo de las aplicaciones, el consumo de energía utilizada por los diversos componentes del dispositivo móvil 500 puede variar. Por ejemplo, la Figura 6 ilustra un ejemplo del consumo de energía con un dispositivo móvil durante un escenario de reproducción de video. En la Figura 6 puede apreciarse que el procesamiento de la CPU, los aspectos de la visualización (por ejemplo, luz de fondo, tarjeta gráfica, etc.), y el acceso de memoria pueden ser las fuentes predominantes de consumo de energía durante la reproducción de video. Por lo tanto, la decodificación de video puede caracterizarse por aplicaciones con un consumo de energía relativamente alto, por ejemplo, debido a que la decodificación de video puede involucrar tanto cálculos intensivos, accesos frecuentes a la memoria, y/o un uso de la pantalla relativamente
constante. Además, las aplicaciones de reproducción de video pueden configurarse para visualizar la imagen en relativa luminancia a la salida de la pantalla, lo que puede provocar un mayor de consumo de energía.
Durante un proceso de codificación y/o decodificación de video, puede aplicarse compensación de movimiento. Por ejemplo, las normas de codificación de video tales como MPEG-1, MPEG-2, H.263, Codificación Avanzada de Video H.264/MPEG-4 (AVC - Advanced Video Coding), HEVC, y/o lo similar pueden utilizar la compensación de movimiento con objeto de limitar la cantidad de señalización utilizada para comunicarle la información de video a un dispositivo. La compensación de movimiento puede considerarse una téenica de compresión de video que describe una imagen en términos de una transformación o diferencia con respecto a una imagen de referencia. La imagen de referencia puede ser una trama anterior y/o una trama para ser utilizada más posteriormente. Cuando las imágenes pueden sintetizarse con precisión a partir de imágenes transmitidas/almacenadas con anterioridad, puede mejorar la eficiencia de la compresión.
La compensación de movimiento puede implementarse utilizando un proceso de filtrado lineal. Aunque un tamaño de filtro más grande puede lograr una mejor eficiencia de la compresión, los filtros más grandes también pueden
incrementar el ancho de banda del acceso a la memoria que se utiliza durante la decodificación, lo cual puede aumentar el consumo de energía (por ejemplo, los incrementos en el ancho de banda del acceso a la memoria durante la decodificación de video puede incrementar la disipación de energía en dispositivos móviles). Por lo tanto, puede diseñarse un chip decodificador de energía relativamente más baja para reducir el ancho de banda de acceso a la memoria por compresión de la memoria temporal de tramas, por ejemplo, comprimiendo los píxeles reconstruidos sin pérdidas antes de almacenar los píxeles reconstruidos en la memoria temporal de tramas. Cuando se utilizan para la compensación de movimiento, los píxeles reconstruidos pueden extraerse de la memoria temporal de tramas y descomprimirse para la compensación de movimiento.
Los métodos a manera de ejemplo para gestionar la energía para la decodificación de video pueden incluir cambiar el estado del sistema adaptablemente y/o conmutar adaptablemente la frecuencia del procesador ( por ejemplo, el escalamiento dinámico de voltaje y de frecuencia (DVFS -dynamic voltage and frequency scaling)). La Figura 6B ilustra el consumo de energía en presencia y ausencia del DVFS. El DVFS puede utilizarse para reducir la frecuencia de un procesador con objeto de conservar la energía o reducir el consumo de energía del procesador. Al utilizar
una menor frecuencia de procesamiento, el procesador puede ejecutar una determinada tarea por un determinado plazo de procesamiento (por ejemplo, decodificar una trama antes de que sea visualizada) ejecutando simultáneamente la tarea utilizando menos energía de la que se habría utilizado si el procesamiento se hubiese ejecutado a una mayor frecuencia del procesador. Por ejemplo, cuando un dispositivo móvil se encuentra inactivo, el DVFS puede utilizarse para la transición a un estado de baja energía, manteniendo simultáneamente determinados módulos en ejecución. Además, cuando disminuye la frecuencia del procesador, el voltaje correspondiente a la energía suministrada tambien puede disminuir en consecuencia. Por lo tanto, el consumo de energía puede reducirse. Por ejemplo, la energía disipada por un chip o procesador puede expresarse como:
P = CV2 f Ecuación (1) en donde C puede ser la capacitancia (por ejemplo, la capacitancia se alterna por ciclo de reloj), V puede ser el voltaje, y f puede ser la frecuencia de conmutación. Muchos CPUs/procesadores pueden proporcionar varias frecuencias en las que puede funcionar la CPU, y la aplicación puede configurar la frecuencia sobre la marcha según se desee.
La complejidad de decodificación puede ser diferente para cada imagen, y el nivel de complejidad puede
utilizarse para modificar la frecuencia del procesador. Por ejemplo, si la imagen es relativamente sencilla, la frecuencia puede reducirse con objeto de ahorrar energía. En un ejemplo, el tamaño de la imagen puede utilizarse para calcular el tiempo de decodificación asociado a la decodificación de la imagen. Cuando el tiempo de decodificación de la imagen es menor que la duración de la imagen (por ejemplo, 1 / f) , entonces la frecuencia del procesador puede disminuir sin afectar la visualización. El intervalo de energía dinámica puede ser más pequeño con los recientes avances en la teenología de procesadores y memorias, y el uso de la energía en modo inactivo/reposo puede ser más eficiente. Estos cambios tecnológicos pueden limitar el efecto del DVFS, de manera que el ahorro de energía del DVFS puede no ser tan prominente en las nuevas plataformas móviles en comparación con plataformas más viejas.
Mejorar la eficiencia del uso de la energía para prolongar la duración de la batería se está convirtiendo en un punto cada vez más crítico para el diseño de la plataforma móvil y el diseño de aplicaciones móviles. La decodificación de video de software y hardware se utiliza ampliamente en aplicaciones multimedia móviles, y puede ser computacionalmente intensa para procesar con un alto consumo de energía. La complejidad de decodificación de las
normas de compresión de video también puede incrementar gradualmente con el fin de lograr una mejor eficiencia de compresión.
Los sistemas de emisión en tiempo real como DASH se centran en la variación del ancho de banda de la red, pero pueden dejar de abordar el uso de energía en la plataforma móvil desde el punto de vista del sistema. Además, pueden utilizarse téenicas de decodificación adaptables para ahorrar energía proveniente de la parte del cliente, pero puede ser deseable el ahorro adicional de energía, particularmente durante los períodos en los que la energía adicional es limitada (por ejemplo, el nivel de energía de la batería es cercano a cero). Además, el consumo de energía para diferentes partes de una aplicación puede equilibrarse para asegurar la reproducción completa. Los métodos que se centran en el ahorro de energía en la parte del cliente pueden ser limitados y/o la experiencia del usuario puede degradarse debido a que pueden aplicarse irregularidades de la imagen cuando no hay suficiente energía para la reproducción completa. Como se describe en la presente, el uso de la energía puede ser dirigido y modificado con base en el concepto de informática sensible a la energía. Los métodos y sistemas a manera de ejemplo pueden incluir la colaboración entre el servidor y el cliente. Por ejemplo, el cliente (por ejemplo, el
dispositivo móvil) puede solicitar flujos con diferentes complejidades de acuerdo con el ancho de banda disponible y/o el estado de energía actuales.
Los clientes pueden configurarse para intentar su mejor esfuerzo para decodificar y reproducir video una vez que se ha determinado una tasa de bits adecuada de acuerdo con el ancho de banda disponible actualmente. Para muchos decodificadores de video, la decodificación y reproducción pueden ocupar porcentajes significativos de los recursos del procesador con objeto de satisfacer los requisitos de procesamiento en tiempo real. Los sistemas puros a base de cliente pueden ser incapaces de reproducir sin problemas, por ejemplo, debido a que el nivel de energía del procesador puede ser insuficiente para decodificar en tiempo real. Pueden observarse saltos de tramas y audio y video asincronos en situaciones en las que el procesador es incapaz de realizar una decodificación sin brillo durante la reproducción. Además, los sistemas a base del cliente pueden reducir la velocidad de respuesta del sistema, lo cual puede afectar la calidad de la experiencia del usuario en entornos orientados a múltiples tareas. Por ejemplo, el tiempo de respuesta del sistema para la entrada/salida de los usuarios puede reducirse debido a que la carga del procesador está llena. En tales escenarios, cambiar de tareas puede resultar más lento.
Con el fin de conservar la energía durante la decodificación de video, pueden utilizarse la emisión en tiempo real sensible a la energía, la decodificación sensible a la energía, y/o las formas de decodificación de atajo para lograr un mejor equilibrio de carga del procesador y/o ahorro de energía. Por ejemplo, la lógica de conmutación del flujo de bits o lógica inteligente en la parte del cliente de un sistema de emisión en tiempo real puede configurarse para considerar el ancho de banda disponible de la red, la carga actual del procesador, y/o la energía restante conjuntamente, por ejemplo, para asegurar una calidad mínima de la experiencia del usuario. Para dispositivos móviles que dependen principalmente de la aceleración de hardware dedicado para aplicaciones de decodificación y emisión en tiempo real de video, el ancho de banda y el estado de energía pueden ser factores importantes para monitorear y optimizar, mientras que si el dispositivo móvil se basa principalmente en el software para decodificar y emitir en tiempo real video, entonces, además del uso de ancho de banda y del nivel de energía, también pueden considerarse la carga del procesador y el uso debido a la decodificación de video.
Como se describe en la presente, las teenologías sensibles a la energía tales como la emisión en tiempo real de energía y/o la decodificación sensible a la energía
pueden utilizarse para lograr ahorros de energía para dispositivos móviles, tales como las WTRUs que utilizan la emisión en tiempo real de video. Por ejemplo, uno o más de entre la emisión en tiempo real sensible a la energía y/o la decodificación sensible a la energía pueden utilizarse para ajustar el consumo de energía por segmento y/o por imagen, por ejemplo, de acuerdo con la energía restante y/o la estadística de consumo de energía derivada de la decodificación de imágenes anteriores. Por ejemplo, el dispositivo móvil puede utilizar uno o más indicadores de energía para determinar una cantidad de energía a asignar para decodificar el resto del flujo de video y/o uno o más segmentos del resto del flujo de video. El indicador de energía puede ser de cualquier medida de consumo de energía, la ubicación de la energía, el uso de la energía, la asignación de energía, la información de la complejidad por el consumo de energía, el consumo de energía por la calidad de video, y/o similar que le permita a la WTRU calcular los recursos energéticos a utilizarse para un futuro proceso de decodificación. Como puede observarse, aunque la energía puede ser un término utilizado en la presente, el término energía puede sustituirse por energía donde corresponda como observarán aquellos expertos en la materia.
La teenología de emisión en tiempo real sensible a la energía puede implementarse mediante la colaboración entre un servidor y un cliente. La decodificación sensible a la energía puede utilizarse como una tecnología de adaptación de la parte del cliente. Por ejemplo, el cliente puede solicitar uno o más videos o segmentos de video en un determinado nivel de complejidad con base en una determinación referente al uso de la energía en el cliente y/o al nivel de energía restante que puede utilizarse para decodificar en el cliente. En un ejemplo, la decodificación sensible a la energía puede ser una colaboración entre el servidor de video. Por ejemplo, el cliente puede proporcionarle al servidor uno o más parámetros relacionados con sus usos de energía actuales ( por ejemplo, el nivel de energía actual, el nivel de energía utilizado con anterioridad durante la decodificación, la cantidad de tiempo que un nivel de energía actual puede continuar sin agotar una fuente de alimentación actual tal como una batería, el nivel de energía utilizado con anterioridad para decodificar un segmento de una complejidad especificada, la estadística de energía para uno o más sub procesos o componentes del proceso de decodificación, etc.), los niveles de energía actuales (por ejemplo, la cantidad de energía restante en una fuente de alimentación tal como una batería, la cantidad de energía utilizada con
anterioridad durante la decodificación, la cantidad de energía utilizada con anterioridad para decodificar un segmento de una complejidad específica, la estadística de uso de la energía para uno o más sub-procesos o componentes del proceso de decodificación, etc.), la información del ancho de banda, y/o lo similar. El servidor puede utilizar esta información con el fin de codificar selectivamente uno o más segmentos para su uso por el cliente y/o puede seleccionar un segmento de un nivel de complejidad adecuado con base en la información de realimentación. En un ejemplo, el servidor puede añadir estadísticas provenientes de múltiples clientes con objeto de derivar cálculos más precisos para la cantidad de energía utilizada para decodificar segmentos de los niveles de complejidad especificada.
Las teenologías de emisión en tiempo real y/o decodificación sensibles a la energía pueden integrarse en los sistemas existentes de emisión en tiempo real DASH y/u otros métodos de emisión en tiempo real de OTT. Las presentaciones de baja complejidad de decodificación pueden lograrse por codificación sensible a la complejidad, limitaciones de la herramienta de codificación, reducción de la tasa de bits, y/o reducción de la resolución. La decodificación sensible a la energía puede utilizarse para lograr un método de decodificación adaptable, de
granularidad fina. La decodificación sensible a la energía puede utilizarse con téenicas de decodificación de software (por ejemplo, una CPU de uso general o especializada y/o el procesador se configura para ejecutar la decodificación de video) y/o un chip de decodificación de hardware (por ejemplo, los módulos de hardware dedicados se configuran para ejecutar la decodificación). La emisión en tiempo real sensible a la energía puede utilizarse en combinación con tecnologías de ahorro de energía, como el DVFS; por ejemplo, el dispositivo móvil de cliente puede reducir la frecuencia a fin de ahorrar energía para los segmentos de video de baja complejidad.
La Figura 7 ilustra un sistema a manera de ejemplo de emisión en tiempo real de video sensible a la energía. Por ejemplo, la distribución de video a un dispositivo de cliente ( por ejemplo, una WTRU tal como un dispositivo móvil) puede incluir la preparación de video 710, la distribución de video 730, y/o el consumo de video 750 (por ejemplo, decodificación y visualización). El codificador de video (por ejemplo, un codificador sensible a la complejidad 712) puede codificar el archivo de video o emitir en tiempo real utilizando una pluralidad de niveles de complejidad. Por ejemplo, un nivel de baja complejidad puede consumir menos energía para decodificar en el decodificador de video, pero puede generar una versión
relativamente más distorsionada de las imágenes incluidas en el archivo de video. Un nivel de alta complejidad puede requerir más energía, pero puede generar una recreación más precisa del video original. Un nivel de complejidad intermedia puede decodificarse con menos energía que la versión de alta complejidad, pero puede requerir más energía que la versión de baja complejidad. El nivel de distorsión asociado al nivel de complejidad intermedia puede encontrarse entre el nivel de distorsión del nivel de alta complejidad y el nivel de baja complejidad.
Por ejemplo, durante la preparación de video 710, puede generarse un video fuente (por ejemplo, un MP4 o algún otro archivo de medios (MP) 720). Por ejemplo, el codificador sensible a la complejidad 712 puede generar y codificar el MF 720. El MF 720 puede comprimirse y dividirse en pequeños segmentos con duraciones relativamente cortas, por ejemplo, fragmento(s) 722, 724,
..., N, etc. La información de dirección y propiedad, por ejemplo, incluyendo la información de la complejidad para uno más fragmento(s) 722, 724, ..., N, puede describirse en un archivo de descripción de presentación de medio sensible a la complejidad (MPD) 728. El MF 720 puede codificarse utilizando una pluralidad de niveles de complejidad (por ejemplo, un nivel de alta complejidad, un nivel de complejidad intermedia, un nivel de baja complejidad, etc.)
y los fragmentos pueden generarse por versiones codificadas de MF 720 en cada nivel de complejidad. El archivo de MPD sensible a la complejidad 728 puede incluir la información de la complejidad para cada uno de los niveles de complejidad utilizados para codificar el MF 720, y/o puede haber un archivo de MPD sensible a la complejidad 728 correspondiente para cada nivel de complejidad utilizado para codificar el MF 720.
Una vez que los fragmentos 722, 724, ..., N y que el archivo de MPD sensible a la complejidad 728 se encuentran listos para su distribución, los fragmentos 722, 724, ..., N y el archivo de MPD sensible a la complejidad 728 pueden enviarse a un servidor de distribución para la distribución 730. Por ejemplo, uno o más archivos de medios 723 pueden enviarse al Servidor de HTTP 740 para su distribución. Los archivos de medios 732 pueden incluir uno o más fragmentos 722, 724, ..., N y/u otras descripciones del video. Los archivos de medios 732 pueden incluir versiones codificadas de MF 720 utilizando uno o más niveles de complejidad. El archivo de MPD 738 puede ser una copia del Archivo de MPD sensible a la complejidad 728 que se almacena en el servidor de HTTP 740. El servidor de HTTP 740 puede proporcionar una o más memorias asociadas de HTTP 742 con copias de archivos de medios 732 y/o el archivo de MPD 738 para su distribución a los dispositivos de cliente.
Durante el consumo 750, el dispositivo de cliente sensible a la energía 760 (por ejemplo, un dispositivo móvil de WTRU, y/u otro dispositivo que incluye un decodificador de video) puede solicitar el archivo de MPD 738 proveniente de uno o más servidores de HTTP 740 y/o memorias asociadas de HTTP 742. El Cliente sensible a la energía 760 puede determinar la información de descripción para los fragmentos 722, 724, ..., N con base en el archivo de MPD recibido 738. El cliente sensible a la energía 760 puede determinar los niveles de complejidad que se encuentran disponibles para el archivo con base en el archivo de MPD File 738. El cliente sensible a la energía 760 puede enviar una solicitud para uno o más segmentos de video (por ejemplo, los fragmentos 722, 724, ..., N) basados relativamente de modo continuo en el ancho de banda disponible y/o su actual estado de energía. El cliente sensible a la energía 760 puede solicitar los segmentos en un nivel de complejidad particular, por ejemplo, a base del nivel de energía actual y/o de la energía disponible restante en el cliente sensible a la energía 760 (por ejemplo, la cantidad de energía restante en la batería, la cantidad de tiempo de procesamiento restante dado el uso actual de energía, etc.). Por ejemplo, con base en el nivel actual de energía de la batería que se encuentra por encima de un primer umbral, el cliente sensible a la energía 760
puede solicitar un primer segmento a un nivel de alta complejidad. Si el nivel de energía cae debajo del primer umbral (por ejemplo, pero se encuentra por encima de un segundo umbral), el cliente sensible a la energía 760 puede solicitar un segmento subsecuente en un nivel de complejidad intermedia. Si el nivel de energía restante en la batería cae por debajo del segundo umbral, el cliente sensible a la energía 760 puede solicitar otro segmento subsecuente en el nivel de baja complejidad.
Por ejemplo, el cliente sensible a la energía 760 puede incluir uno o más de entre el detector de energía 762, el sensor de ancho de banda 764, el transceptor 766, el decodificador 768, la solicitud 770, la unidad de estadística y control de complejidad 772, el Controlador de adaptación sensible a la energía 774, y/u otros componentes para recibir y procesar flujos de video. El detector de energía 762 puede configurarse para determinar el uso de energía actual del cliente sensible a la energía 760 y/o el uso de la energía de uno o más componentes del cliente sensible a la energía 760 ( por ejemplo, el decodificador
768, una pantalla, un CPU, etc.). El detector de energía 762 puede configurarse para determinar la cantidad de energía restante disponible para el cliente sensible a la energía 760. Por ejemplo, si una batería es la fuente de alimentación para el cliente sensible a la energía 760,
entonces el detector de energía 762 puede configurarse para determinar la cantidad de energía restante de la batería en un momento determinado. El detector de energía 762 puede configurarse para determinar la cantidad de tiempo en la que el cliente sensible a la energía 760 puede seguir funcionando bajo las condiciones actuales de decodificación antes de que se agote la batería. El detector de energía 760 puede configurarse para determinar la cantidad de tiempo en la que el cliente sensible a la energía 760 puede funcionar bajo las condiciones de decodificación supuestas o seleccionadas antes de que se agote la batería.
El sensor de ancho de banda 764 puede configurarse para determinar la información relacionada con el enlace de comunicaciones entre el cliente sensible a la energía 760 y la fuente de un flujo de video (por ejemplo, el servidor de HTTP 740 y/o la(s) memoria(s) asociada(s) de HTTP 742). El sensor de ancho de banda 764 puede configurarse para determinar el ancho de banda disponible para el cliente sensible a la energía 760 (por ejemplo, con base en dichas una o más teenologías de acceso de radio asociadas al transceptor 766), la cantidad de ancho de banda disponible para el enlace de comunicaciones entre el cliente sensible a la energía 760 y la fuente de un flujo de video (por ejemplo, el servidor de HTTP 740 y/o la(s) memoria(s) asociada(s) de HTTP 742), la tasa de bits
efectiva del enlace de comunicaciones entre el cliente sensible a la energía 760 y la fuente de un flujo de video (por ejemplo, el servidor de HTTP 740 y/o la(s) memoria(s) asociada(s) de HTTP 742), la información relacionada con las tasas de bits anteriores o anchos de banda asociados al enlace de comunicaciones entre el cliente sensible a la energía 760 y la fuente de un flujo de video (por ejemplo, el servidor de HTTP 740 y/o la(s) memoria(s) asociada(s) de HTTP 742), y/u otra información relacionada con el canal de comunicaciones entre el cliente sensible a la energía 760 y la fuente de un flujo de video (por ejemplo, el servidor de HTTP 740 y/o la(s) memoria(s) asociada(s) de HTTP 742).
La unidad de estadística y control de complejidad 772 puede configurarse para almacenar información determinada por el sensor de ancho de banda 764 y/o el detector de energía 762. Por ejemplo, la unidad de estadística y control de complejidad 772 puede configurarse para almacenar la estadística de uso de la energía y asociar la estadística de uso de la energía al tipo de decodificación que se estaba realizando cuando se determinaron la estadística mediante el detector de energía 762. La unidad de estadística y control de complejidad 772 puede configurarse para mantener la estadística asociada al enlace de comunicaciones entre el cliente sensible a la energía 760 y la fuente de video (por ejemplo, el servidor
de HTTP 740 y/o la(s) memoria(s) asociada(s) de HTTP 742) como es observado por el sensor de ancho de banda 764. La estadística almacenada puede utilizarse durante la determinación de un nivel de complejidad adecuado de un video codificado a ser solicitado.
El controlador de adaptación sensible a la energía 774 puede configurarse para utilizar la estadística determinada por el sensor de ancho de banda 764 y/o el detector de energía 762 y/o la estadística almacenada por la unidad de estadística y control de de complejidad 772 con objeto de adaptar dinámicamente el proceso de decodificación que es ejecutado por el decodificador 768. El controlador de adaptación sensible a la energía 774 puede realizar la interfaz con la aplicación 770 con el fin de considerar los requisitos de aplicación y/o las propiedades de la aplicación para adaptar el proceso de decodificación. El controlador de adaptación sensible a la energía 774 puede configurarse para seleccionar un nivel de complejidad adecuado para un determinado archivo o segmento de archivo con base en el nivel actual de energía, el ancho de banda actual, y/o la estadística anterior relacionada con el uso de la energía, y/o el ancho de banda.
El codificador sensible a la complejidad 712 puede configurarse para comprimir videos de fuente durante la preparación 710. Por ejemplo, el codificador sensible a
la complejidad 712 puede configurarse para codificar el video utilizando optimización de distorsión de tasa (RDO -rate-distortion optimization). La RDO puede referirse a un método para mejorar la calidad de video en presencia de compresión de video en la que la cantidad de distorsión ( por ejemplo, la pérdida de calidad de video, la pérdida de información de video) se equilibra u optimiza contra la cantidad de bits de datos utilizados para codificar el video (por ejemplo, la tasa). El codificador sensible a la complejidad 712 puede intentar lograr la calidad de codificación más alta de codificación (por ejemplo, proporcionar la máxima cantidad de información para la decodificación) dadas las restricciones de la tasa de bits sin considerar la complejidad de decodificación. Por lo tanto, el codificador puede intentar maximizar un indicador compuesto por la desviación derivada de la fuente de video debida a las pérdidas de codificación (por ejemplo, la distorsión) contra el costo de bits para un posible resultado de decisión. La ecuación (2) puede ser un indicador de costos a manera de ejemplo utilizado para evaluar un costo para un determinado modo de codificación al ejecutar la optimización de distorsión de tasa.
CostOmodo— DÍStmo¿0 + l?a5a X Rm0io Ecuación ( 2 )
Costomodo puede representar el costo del modo de codificación. Distmodo puede representar el nivel de distorsión asociada al modo de codificación. Rm puede representar el número de bits de codificación asociados al modo de codificación, l ta puede representar la pendiente de la curva de distorsión de tasa, la cual puede estar relacionada con y/o ser aproximadamente proporcional a la tasa de bits de codificación.
El codificador sensible a la complejidad 712 puede seleccionar un modo de codificación adecuado con objeto de minimizar el indicador de costo (por ejemplo, dadas las restricciones de la tasa de bits y la complejidad, el codificador sensible a la complejidad 712 puede seleccionar el modo de codificación que logra el costo más bajo relativo a la CDO). Por ejemplo, Cmodo puede ser la complejidad del modo medido en ciclos de CPU, el acceso a la memoria, y/o lo similar. Ácomple dad puede ser la pendiente de la complejidad contra la curva de distorsión. La Ecuación (3) puede utilizarse para evaluar el costo de modo de costo en la optimización de distorsión de tasa cuando se toman en consideración tales parámetros.
— Ecuación (3)
Una mayor laop,r1b^1? ? puede corresponder a una menor complejidad de decodificación. Consecuentemente, puede
haber una pluralidad de posibles flujos de bits con diversas complejidades que pueden generarse con diferentes valores de la respectiva Acomplejidad. El codificador puede hacer cada uno de los flujos de bits con los niveles de complejidad variables disponibles para los clientes potenciales. Los clientes pueden seleccionar el flujo de bits adecuado con base en sus condiciones de energía local y/o en sus condiciones de ancho de banda local.
En un ejemplo, el codificador sensible a la complejidad 712 puede configurarse para comprimir flujos de video mientras adhiriéndose simultáneamente a uno o más límites con respecto a la cantidad de información de codificación proporcionada para diferentes herramientas de codificación para diferentes niveles de complejidad respectiva. Por ejemplo, la Tabla 1 ilustra ejemplos de herramientas de codificación y cómo el nivel en el que la herramienta de codificación puede aplicarse dependiendo del nivel de complejidad deseado del flujo de bits codificado. Con base en los parámetros seleccionados para cada herramienta de codificación, el flujo de bits codificado puede ser más complejo o menos complejo a decodificar. Con objeto de generar flujos de bits de diversos niveles de complejidad, pueden seleccionarse los parámetros para cada una de las herramientas de codificación, por ejemplo, como se indica en la Tabla 1.
La complejidad puede referirse a la cantidad de recursos de procesamiento utilizados para codificar/decodificar el segmento de video, y puede indicarse hacia el dispositivo móvil en un MDF. La información de la complejidad puede señalarse como un valor de complejidad especifica (por ejemplo, con base en un método predefinido para determinar el valor), y puede indicar una cantidad aproximada de los recursos de procesamiento en el decodificador a ser utilizado para decodificar un segmento. La información de la complejidad puede incluir parámetros específicos utilizados para llevar a cabo la codificación, tales como uno o más valores para las herramientas de codificación indicados en la Tabla 1.
Algunos ejemplos de herramientas de codificación puede incluir el nivel de precisión utilizado para codificar la información de movimiento, el tamaño del bloque de compensación de movimiento, el tamaño de la transformada de codificación, del tipo de filtros en circuito que se utilizan, el umbral para omitir la codificación de coeficiente para el bloque, y/o lo similar. Como se ilustra en la Tabla 1, los parámetros de codificación y/o la aplicación de una o más herramientas de codificación puede restringirse de acuerdo con el nivel de complejidad deseado del flujo de bits codificado.
Tabla 1: Herramientas de codificación a manera de ejemplo aplicadas de acuerdo con un nivel de complejidad deseado
En un ejemplo, la precisión de la información de movimiento y/o la precisión del vector de movimiento a utilizarse para la decodificación de video pueden modificarse. Al variar la precisión de la información de movimiento, la complejidad del esquema de decodificación puede incrementarse (por ejemplo, escenarios sin restricciones de energía) y/o reducirse (por ejemplo, escenarios con restricciones de energía). La precisión de la información de movimiento en las normas de codificación existentes (por ejemplo, HEVC, H.264) puede ser un ejemplo de precisión de la información/vector de movimiento. La precisión de la información/vector de movimiento puede ser un valor entero ( por ejemplo, especificado a un determinado
pixel), un valor de medio píxel, un valor de cuarto de pixel, y/o a alguna otra fracción de pixel. La precisión de píxel fraccionario puede ser más compleja que la información de píxel entero debido a la aplicación del filtro de interpolación y/o debido a un mayor número de pixeles de referencia que se utilizan (por ejemplo, que producen un mayor ancho de banda de acceso a la memoria y/o un incremento en el número de solicitudes de acceso a la memoria). Por lo tanto, cuando se codifica un flujo de video menos complejo, la precisión de la información de movimiento puede especificarse en una ubicación de píxel entero y cuando se codifica un flujo de video más complejo, la precisión de la información de movimiento puede especificarse en una ubicación de píxel fraccionario. En un ejemplo, para el nivel de complejidad más alta, puede no haber limitación alguna en la precisión de la información de movimiento, y el codificador puede seleccionar el nivel de la precisión de la información de movimiento con base en que nivel ocasionará la menor distorsión.
En un ejemplo, el tamaño del bloque de compensación de movimiento a utilizarse para la decodificación de video puede modificarse. Al variar el tamaño del bloque de compensación de movimiento, la complejidad del esquema de decodificación puede incrementarse o disminuir la complejidad del flujo de video
a decodificar. Al variar el tamaño del bloque de compensación de movimiento, la complejidad del esquema de decodificación puede incrementarse (por ejemplo, sin restricciones de energía) y/o reducirse (por ejemplo, escenarios con restricciones de energía). Por ejemplo, el tamaño del bloque de compensación de movimiento puede afectar la eficiencia del acceso a la memoria. Por ejemplo, un tamaño más grande de bloque de compensación de movimiento de bloque puede reducir la frecuencia de acceso a la memoria, pero puede producir una mayor distorsión. Por lo tanto, cuando se codifica un flujo de video menos complejo puede utilizarse un tamaño del bloque de compensación de movimiento relativamente grande y cuando se codifica un flujo de video más complejo la precisión de la información de movimiento puede especificarse en una ubicación de píxel fraccionario. En un ejemplo, para un mayor nivel de complejidad, puede no haber limitación alguna en el tamaño del bloque de compensación de movimiento y, el codificador puede seleccionar el tamaño del bloque de compensación de movimiento con base en qué tamaño ocasionará la menor distorsión.
En un ejemplo, el tamaño del bloque de transformada a utilizarse para la decodificación de video puede variar con objeto de lograr un nivel de complejidad deseado. La variación del tamaño del bloque de transformada
puede incrementar o reducir la complejidad del flujo de video a decodificar. Por ejemplo, la HEVC puede permitir diferentes tamaños del bloque de transformada (por ejemplo, hasta un tamaño del bloque de transformada de 32x32). Tamaños más grandes del bloque de transformada pueden mejorar la eficiencia de compresión, incrementando simultáneamente tambien la complejidad de decodificación. Por lo tanto, durante escenarios breves (por ejemplo, el nivel de energía restante se encuentra debajo de determinado umbral), un cliente sensible a la energía puede solicitar un nivel de complejidad correspondiente a un tamaño más pequeño del bloque de transformada. La Tabla 1 identifica los valores a manera de ejemplo que pueden utilizarse para el tamaño del bloque de transformada, dependiendo del nivel de complejidad solicitado. Por ejemplo, si el nivel de energía se encuentra sobre un primer umbral, puede solicitarse una alta complejidad de decodificación ( por ejemplo, un tamaño del bloque de transformada de 16*16) y/o puede no haber limitación alguna en el tamaño del bloque de transformada que se utiliza. Si el nivel de energía se encuentra por debajo del primer umbral, pero por encima de un segundo umbral, puede solicitarse un nivel de complejidad intermedia, y puede utilizarse un tamaño intermedio del bloque de transformada (por ejemplo, 8*8). Si el nivel de energía se encuentra por
debajo tanto del primer umbral como del segundo umbral, puede utilizarse un nivel de baja complejidad de decodificación, por ejemplo, utilizando tamaños del bloque de transformada que sean relativamente pequeños [por ejemplo, tal como 4*4).
En un ejemplo, los filtros en circuito a ser utilizados para la decodificación de video pueden variar con objeto de alcanzar diferentes niveles de complejidad para segmentos de video. Al variar los parámetros y/o tipos de los filtros en circuito utilizados, pueden alcanzarse diferentes niveles de energía durante la decodificación de video. Por ejemplo, el(os) filtro(s) en circuito puede(n) incluir diferentes herramientas de restauración, tales como filtro(s) de desbloqueo, compensación(es) adaptable(s) de muestra, filtro(s) de circuito adaptable, y/o lo similar. El(los) filtro(s) de desbloqueo, las compensación(es) adaptable(s) de muestra, los filtro(s) de circuito adaptable, y/o lo similar pueden estar en un circuito de compensación de movimiento. El codificador puede aplicar esos filtros en circuito en diversas combinaciones con el fin de alcanzar niveles de complejidad que afecten el consumo de energía a ser utilizado para la decodificación. Por ejemplo, el(los) filtro(s) de desbloqueo, las compensación(es) adaptable(s) de muestra, el(los) filtro(s) de circuito adaptable y/o lo similar pueden aplicarse en el
codificador de manera tal que un primer flujo produce una decodificación con bajo consumo de energía (por ejemplo, un menor nivel de complejidad) y un segundo flujo produce una decodificación con alto consumo de energía (por ejemplo, un mayor nivel de complejidad).
A manera de ejemplo, con objeto de lograr un segmento de video relativamente menos complejo, la codificación predicativa puede realizarse utilizando codificación de intrasegmentos. Por ejemplo, la codificación de intrasegmentos puede realizarse sin el uso de la codificación de intrasegmentos. Por ejemplo, si se desea un nivel de baja complejidad, el segmento puede codificarse utilizando codificación de intrasegmentos. Un intrasegmento (por ejemplo, puede denominarse segmento I o trama I) puede decodificarse sin hacer referencia a otras tramas, y por ende puede ser decodificable en niveles de energía más bajos que las tramas o segmentos que hacen referencia a otros marcos o segmentos. Si se va a codificar una complejidad relativamente más alta, el segmento puede codificarse utilizando codificación de intrasegmentos y codificación de intersegmentos. Algunos ejemplos de codificación de intrasegmentos pueden incluir el uso de segmentos P (por ejemplo, pueden denominarse segmentos P o tramas P) y/o segmentos B (por ejemplo, pueden denominarse segmentos B o tramas B) tramas de referencia. Una trama de
referencia de trama P puede referirse a que se utilizan datos provenientes de otras tramas anteriores, con objeto de descomprimir y/o decodificar la trama P actual. Una trama B puede referirse a una trama que utiliza datos provenientes de ambas tramas anteriores y siguientes (por ejemplo , futuras tramas) para descomprimir o decodificar la trama B actual. El uso de codificación de intersegmentos (por ejemplo, segmentos de P/B) puede incrementar la complejidad de procesamiento debido a las referencias a otras tramas, lo que significa que el uso de energía durante la decodificación puede incrementarse. Por lo tanto, si se logra un menor nivel de energía, el uso de tramas P y/o tramas B para la codificación de intersegmentos puede reducirse o detenerse.
El codificador puede ajustar un umbral de costos para determinar si puede omitir la codificación de coeficiente para un determinado bloque. Para un nivel de baja complejidad, el umbral de costos puede ser un valor relativamente alto, mientras que para un nivel de complejidad más alta, el umbral de costos puede ajustarse en un valor relativamente bajo. En un ejemplo, para el nivel de complejidad más alta, puede no realizarse recortes, (por ejemplo, no se realiza la omisión de la codificación de coeficiente para el nivel de complejidad más alta).
El codificador también puede determinar si codificará algunos o todos los coeficientes distintos de cero recibidos de la transformada y la cuantificación para cada bloque de video (por ejemplo, segmento o fragmento de video), por ejemplo, al considerar la calidad y complejidad de la decodificación. El costo del bloque puede medirse con base en el sistema visual humano (HVS - human visual system). El costo del bloque puede ser una suma ponderada de coeficientes distintos de cero, por ejemplo, como se ilustra en la Ecuación (4).
Ecuación (4)
W±,j puede ser una matriz de peso relacionado con la HVS. El peso en la posición de baja frecuencia puede ser mayor que en la posición de alta frecuencia. Si el costo del bloque, CostObioqae, es menor que un umbral que se ajusta para corresponder a un determinado nivel de complejidad, entonces el codificador puede omitir la codificación de coeficiente diferente de cero. El umbral para controlar si el codificador omite la codificación de coeficiente puede ajustarse dado el nivel de complejidad.
La información de la complejidad tal como l 1 complejidad y/o una indicación del nivel de complejidad asociado a un flujo codificado (por ejemplo, baja, intermedia, alta, etc.) pueden añadirse en la descripción
de medios que es solicitada por el cliente sensible a la energía. En un ejemplo, el dispositivo móvil de cliente puede considerar información del ancho de banda y/o información del estado de energía para determinar el flujo de bits a solicitar (por ejemplo, alta complejidad, complejidad intermedia, baja complejidad, etc. ) . Con el fin de determinar un nivel de complejidad adecuado a solicitar para un segmento de video subsecuente, el dispositivo móvil del cliente puede determinar la energía calculada que se asignará para la decodificación del segmento subsecuente. Después, el dispositivo móvil de cliente puede determinar el nivel de complejidad adecuado a solicitar con base en una asignación de energía para un proceso de decodificación anterior para un segmento, el nivel de complejidad para el segmento anterior y el nivel de energía asociado a la decodificación subsecuente. El dispositivo móvil de cliente puede determinar la información de asignación de energía para la futura decodificación de video, por ejemplo, con base en la estadística anterior de disipación de energía. Si la energía se asigna uniformemente, entonces la energía para el siguiente segmento puede determinarse, por ejemplo, utilizando la Ecuación (5).
P siguiente ( i's/ Pr På Ecuaci n ( 5 )
Psiguiente puede ser la energía asignada para el siguiente segmento, Ts puede ser la duración para el siguiente
segmento, y Dr puede ser la duración restante del video (por ejemplo, o la duración de un segmento actual o anterior). Pr puede ser la energía total asignada para decodificar el video restante ( por ejemplo, la cantidad de energía a asignarse para la decodificación de los r segmentos restantes). Con base en la energía asignada para un segmento subsecuente, la energía utilizada para decodificar un segmento anterior, y/o una complejidad de decodificación del segmento anterior, el dispositivo móvil puede determinar un nivel de complejidad adecuado a solicitar para un segmento subsecuente, por ejemplo, utilizando la Ecuación (6).
C siguiente ~ ( Psig/ Pant ) x Cant Ecuaci n ( 6 )
Pant puede ser la energía utilizada para el segmento anterior. CsigUiente puede ser el nivel de complejidad a solicitarse para un segmento subsecuente, y Cant puede ser la complejidad para un segmento anterior. Si la información de la complejidad es señalada por un nivel de complejidad discreta, el nivel de complejidad del siguiente segmento puede determinarse, por ejemplo, de acuerdo con la ecuación (7).
Thl puede ser el umbral para cada nivel de complejidad i. De acuerdo con el nivel de complejidad calculado, el cliente puede solicitar el segmento que tiene el nivel de complejidad más cercano como C guiente. Cuantificar los niveles de complejidad puede reducir la sobrecarga asociada con la indicación de la complejidad y/o puede simplificar el(los) procesos de codificación/ decodificación.
La Figura 12 ilustra un ejemplo de diferentes niveles de complejidad y resoluciones que pueden seleccionarse por un dispositivo de cliente (por ejemplo, dispositivo móvil, WTRU, etc.) cuando se realiza la emisión en tiempo real sensible a la energía. Por ejemplo, en términos generales, a medida que se incrementa el nivel de calidad, la energía utilizada para decodificar el segmento de video puede incrementarse. Un dispositivo de cliente puede recibir una o más de entre la información de calidad para un segmento, la información de tasa de bits para el segmento, la información de la complejidad para el segmento, y/u otra información relacionada con la codificación del segmento proveniente del archivo de metadatos de MPD. Con base en las restricciones de energía actuales (por ejemplo, y, potencialmente, con base en el ancho de banda actual), el dispositivo de cliente puede seleccionar una resolución y/o un nivel de complejidad
adecuados para un segmento subsecuente. En un ejemplo, el dispositivo de cliente puede proporcionarle al servidor la información relacionada con su nivel de energía actual, el uso actual de la energía, la cantidad de energía restante (por ejemplo, nivel de la batería), la cantidad de energía gue puede asignarse para completar la decodificación, el ancho de banda actual, la estadística referente a los segmentos decodificados anteriores (por ejemplo, la complejidad del segmento anterior y la energía utilizado para decodificar el segmento, etc.), y/u otra información y el servidor puede seleccionar el segmento adecuado para ser enviado en el flujo.
Por ejemplo, un dispositivo móvil puede solicitar un archivo de MPD para un determinado video. El archivo de MPD puede proporcionar información de la complejidad aplicable a uno o más segmentos para el video. Por ejemplo, el archivo de MPD puede indicar niveles de complejidad que pueden ser seleccionados por el dispositivo móvil y/o que pueden indicar resoluciones que pueden ser seleccionadas por el dispositivo móvil. En un ejemplo, al inicio de la sesión, el dispositivo móvil puede seleccionar el nivel de calidad 802, el cual puede corresponder a un segmento de alta resolución con un modo de alta complejidad. Por ejemplo, el dispositivo móvil puede seleccionar el nivel de calidad 802 con base en el nivel de energía restante para
el dispositivo móvil que se encuentra por encima de un primer umbral. En un ejemplo, el dispositivo móvil puede seleccionar el nivel de calidad 802 con base en una determinación de que será capaz de decodificar el video a nivel de calidad 802 sin agotar la energía, por ejemplo, suponiendo que cada uno de los segmentos subsecuentes también se envía también a nivel de calidad 802.
El dispositivo móvil puede seguir monitoreando su estadística de energía para la decodificación y/o su nivel de energía restante durante el proceso de decodificación de video. Por ejemplo, después de un período de tiempo, el nivel de energía restante del dispositivo móvil puede caer por debajo del primer umbral (por ejemplo, pero puede encontrarse por encima de un segundo umbral). Con base en el nivel de energía que se encuentra por debajo del umbral, el dispositivo móvil puede solicitar que el siguiente segmento se envíe utilizando el nivel de calidad 804. El nivel de calidad 804 puede corresponder a un segmento de alta resolución con un modo de complejidad intermedia. D1 cambiar al modo de complejidad intermedia, el ahorro de energía puede lograrse durante la decodificación del segmento. Si el nivel de energía restante cae por debajo de un segundo umbral, el dispositivo móvil puede cambiar a nivel de calidad 806, el cual puede corresponder a un segmento de alta resolución con un modo de baja
complejidad. Si el nivel de energía restante se incrementa por encima de los umbrales determinados, y/o si el dispositivo móvil se conecta a una fuente de alimentación fija (por ejemplo, un cargador o se conecta a una nueva fuente de alimentación), el dispositivo móvil puede activarse para solicitar segmentos de mayor calidad (por ejemplo, a nivel de calidad 802).
D fin de lograr ahorros adicionales de energía, además de seleccionar de un modo de complejidad adecuado con base en un nivel de energía del dispositivo móvil, la resolución puede seleccionarse con base en el nivel de energía. Por ejemplo, si el dispositivo móvil ha solicitado el nivel de calidad 806, pero desea ahorros adicionales de energía (por ejemplo, el uso actual de la energía puede ocasionar que la energía restante se utilice por completo durante la reproducción de video), el dispositivo móvil puede cambiar a una menor resolución. Por ejemplo, con base en la energía restante que cae por debajo de un tercer umbral, el dispositivo móvil puede solicitar el nivel de calidad 812, puede corresponder a un segmento de resolución intermedia con un modo de alta complejidad. Puede realizarse un análisis similar a base de umbral para los segmentos de resolución intermedia con objeto de seleccionar entre los niveles de calidad 812, 814 y/o 816. Del mismo modo, si aún se desean ahorros adicionales de
energía después de cambiar a la resolución intermedia, el dispositivo móvil puede seleccionar baja resolución, y puede realizar el análisis de nivel de energía de umbral a fin de seleccionar un nivel de complejidad adecuado en baja resolución (por ejemplo, entre los niveles de calidad 822, 824, y/o 826).
El dispositivo móvil puede seleccionar una resolución y/o nivel de complejidad adecuados con base en la energía restante, la estadísticas anteriores referente al uso de la energía, y/u otros indicadores de energía. Aunque las resoluciones de baja, intermedia y alta se muestran como ejemplos, puede haber muchos de estos niveles de resolución y las diversas combinaciones de resolución y complejidad pueden producir diversos niveles de ahorro de energía. Por lo tanto, el dispositivo móvil puede calcular el uso de energía para diversas combinaciones de resolución y la complejidad y, puede seleccionar la combinación adecuada con objeto de alcanzar un nivel deseado de uso de la energía durante la decodificación. En un ejemplo, si la resolución se cuantifica entre unos cuantos niveles distintos (por ejemplo, alto, intermedio, bajo), el cambio entre las resoluciones puede lograr mayores ahorros de energía que cambiar los niveles de complejidad (por ejemplo, aunque este no siempre puede ser el caso). En estos escenarios, el dispositivo móvil puede cambiar entre
las resoluciones para lograr magnitudes más grandes de ahorros de energía y poder alternar entre los niveles de complejidad en una resolución con objeto de alcanzar una granularidad más fina de ahorros de energía.
La decodificación sensible a la energía puede incluir la identificación de uno o más sub-procesos o módulos en el proceso de decodificación y optimizar, o bien, cambiar los parámetros y/o el modo de funcionamiento de uno o más de los sub-procesos con el fin de minimizar el uso de la energía manteniendo simultáneamente una calidad de video y/o una experiencia de usuario aceptables. A manera de ejemplo, considere la norma de compresión de video HEVC (por ejemplo, aunque las téenicas, métodos y sistemas descritos pueden ser aplicables a otras técnicas de compresión de video).
La Figura 9 ilustra un proceso a manera de ejemplo para realizar la decodificación sensible a la energía utilizando la HEVC. Por ejemplo, la decodificación de la HEVC puede incluir decodificación de entropía 902, decuantificación 904, transformada inversa 906, filtro de circuito 908, tienda de imágenes de referencia 910, predicción espacial 912, predicción temporal 914 (por ejemplo, compensación de movimiento (MC - motion compensation)), y/o lo similar. En un ejemplo, uno o más de los componentes del proceso de decodificación puede
modificar los parámetros y/o métodos que se utilizan en el componente con base en el uso de la energía y/o la información de nivel de energía restante. Por ejemplo, la predicción temporal 914 y/o el filtro de circuito 908 pueden variar a fin de lograr un equilibrio entre la calidad y el consumo de energía. Durante los períodos en los que se desea ahorros adicionales de energía, la predicción temporal 914 y/o el filtro de circuito 908 pueden modificarse con objeto de ahorrar energía.
Por ejemplo, el flujo de bits codificado 900 puede descomprimirse y/o decodificar su entropía en la unidad de decodificación de entropía 902. La complejidad de decodificación de entropía puede estar altamente relacionada con el tamaño de cada imagen comprimida. Entre más bits se utilicen para comprimir la imagen, más energía puede utilizar el proceso de decodificación de entropía. El dispositivo móvil que incluye el decodificador sensible a la energía puede solicitar un flujo de bits que se codifica utilizando menos bits con el fin de ahorrar energía durante la decodificación de entropía. El modo de codificación, la información de predicción, la información de movimiento, y/u otra información determinada en la unidad de decodificación de entropía 902 puede enviarse a la unidad de predicción espacial 912 ( por ejemplo, si está intracodificada) y/o a la unidad de predicción temporal 914
( por ejemplo, si está intercodificada) para formar el bloque de predicción. Si está intercodificada, la información de predicción puede comprender tamaños del bloque de predicción, uno o más vectores de movimiento (por ejemplo, los cuales pueden indicar la dirección y la cantidad de movimiento), y/o uno o más índices de referencia (por ejemplo, los cuales pueden indicar a partir de cuál imagen de referencia va a obtenerse la señal de predicción). La predicción por compensación de movimiento puede ser aplicada por la unidad de predicción temporal 914 para formar el bloque de predicción temporal. La predicción temporal (por ejemplo, la compensación de movimiento) puede representar una porción relativamente grande del uso de energía del decodificador, por ejemplo, debido a que la predicción temporal puede utilizar el acceso intensivo a la memoria externa para el filtrado.
Los coeficientes de transformada residual pueden enviarse a la unidad de decuantificación 904 y la unidad de transformada inversa 906 para reconstruir el bloque residual. El bloque de predicción y el bloque residual pueden añadirse conjuntamente para formar un bloque reconstruido. El bloque reconstruido puede enviarse al filtro de circuito 908 antes de almacenarse en la tienda de imágenes de referencia 910. El video reconstruido en la tienda de imágenes de referencia 910 puede utilizarse para
accionar un dispositivo de visualización (por ejemplo, el video decodificado 920) y/o se utiliza para predecir los futuros bloques de video.
Un codificador de video de capa única puede tener una sola entrada de secuencia de video y generar un solo flujo de bits comprimido transmitidos al decodificador de capa única. Puede diseñarse un códec de video para servicios de video digital (por ejemplo, tales como, pero sin limitarse a, envío de señales de TV por satélite, cable y canales de transmisión terrestres). Con aplicaciones céntricas de video implementadas en entornos heterogéneos, pueden desarrollarse teenologías de codificación de video de múltiples capas como una extensión de las normas de codificación de video a fin de habilitar diversas aplicaciones. Por ejemplo, pueden diseñarse tecnologías escalables de codificación de video para manejar más de una capa de video, en donde cada capa puede decodificarse para reconstruir una señal de video de una resolución espacial particular, resolución temporal, fidelidad, y/o vista. Aunque se describe un decodificador de capa única con referencia a la Figura 9, los conceptos descritos en la presente pueden utilizar un decodificador de múltiples capas, por ejemplo, para las tecnologías escalables de codificación de múltiples capas.
En los codees de video a manera de ejemplo tales como la HEVC, en el filtro de circuito 908 puede utilizarse un filtro de 8 derivaciones para la interpolación en la posición de medio pixel, y pueden utilizarse filtros de 7 derivaciones distintas de cero para H y H de posición de pixel. Si el tamaño del bloque de predicción es W*H (por ejemplo, donde W puede representar el ancho del bloque de predicción y H puede representar la altura del bloque de predicción), los pixeles extraídos de la memoria temporal de imágenes de referencia externa pueden ser (W+7) * (H+7) para la posición de medio pixel tanto en las dirección vertical como horizontal. La Figura 10 ilustra ejemplos de diferentes posiciones de pixel para el proceso de compensación de movimiento de luminancia que puede realizarse para la predicción temporal.
Por ejemplo, las posiciones de pixel (por ejemplo, posiciones de pixel fraccionario) pueden agruparse en una pluralidad de clases (por ejemplo, 6) sombreadas como se muestra en la Figura 10. Las posiciones de pixeles pueden agruparse en clases con base en el número de pixeles utilizados para el filtrado de interpolación en la posición de pixel respectiva (por ejemplo, fraccionario). Por ejemplo, la Tabla 2 identifica ejemplos de las clases, las posiciones de pixel respectivos asociados a las clases, el tamaño de memoria utilizado para el filtrado de
interpolación durante la compensación de movimiento para las diferentes clases, y el número de veces que se aplica la operación de filtro para cada clase. Por ejemplo, el valor más complejo puede ser la posición (½, ½) ( por ejemplo, la posición 10 en la Figura 10), dado que la posición (½, ½) puede utilizar el tamaño de memoria más grande para hacer referencia a la trama de referencia y pueden involucrar la aplicación tanto de una operación de filtro horizontal como vertical.
Si la dirección de memoria se configura horizontalmente ( por ejemplo, el cual normalmente puede ser el caso), la eficiencia de acceso a la memoria para la interpolación horizontal puede ser mayor que la interpolación vertical. El filtrado de circuito puede incluir uno o más de entre desbloqueo, utilizando un offset (SAO) adaptable de la muestra, y/o el filtrado de circuito adaptable (ALF). El desbloqueo puede utilizarse para reducir la discontinuidad en los limites del bloque de transformada, y puede tener muchas operaciones condicionales y de comparación. La SAO puede utilizarse para corregir la discontinuidad en los puntos de borde. El ALF puede ser un proceso de filtrado lineal y puede centrarse en la aparición de algunos o todos los pixeles. Estos filtros de circuito pueden ser de muy alto consumo de energía, ya que pueden utilizar un número importante de operaciones a base de pixeles.
Tabla 2: Ejemplo de tamaño de la memoria consultada por la para MC de bloque W*H
Dada la complejidad de la compensación de movimiento puede variar con base en la posición del pixel fraccionario (por ejemplo, con base en el tamaño del acceso a la memoria y el número de operaciones de filtro dependientes de la clase de ubicación de pixel fraccionario), utilizando un subconjunto de las clases puede generar una decodificación menos compleja. Por ejemplo, si se desean ahorros de energía, el codificador puede codificar un segmento de video menos complejo (por ejemplo, un segmento que puede decodificarse utilizando relativamente menos energía), absteniéndose de utilizar una o más clases. Por ejemplo, el codificador puede abstenerse de utilizar las clases en las que la exclusión del uso de la clase durante la codificación no afecta
significativamente el nivel de distorsión de tasa. Por ejemplo, si la omisión de dos clases (por ejemplo, las clases 5 y 6) ocasiona un cambio en la tasa de distorsión que es menor que un determinado umbral, el codificador puede codificar segmentos menos complejos sin utilizar de las clases omitidas.
Los subprocesos del proceso de decodificación pueden ocupar diferentes porcentajes de los recursos de los procesadores y/o requerir mucho tiempo para completarse. Por ejemplo, las Figuras, 11A y 11B ilustran ejemplos de perfiles de tiempo para la HEVC utilizando un decodificador de HM6.1 y flujos de bits codificados utilizando un ajuste de acceso aleatorio (RA - rando access). Sin el uso de datos múltiples de instrucción única (Figura 11A), la compensación de movimiento puede representar aproximadamente el 61% del tiempo de decodificación, el desbloqueo y la SAO conjuntamente pueden ocupar aproximadamente el 14% (por ejemplo, aproximadamente 9% y 5%, respectivamente), la decodificación de entropía puede representar aproximadamente el 7%, por ejemplo, dado que la tasa de bits puede ser relativamente baja en este ejemplo. Los SIMD (single instruction múltiple data datos múltiples de instrucción única) pueden acelerar enormemente la MC, por ejemplo, de hasta 2*-3* veces. Sin embargo, la MC aún puede representar el 38% del
tiempo de decodificación (por ejemplo, la Figura 11B).
En un ejemplo, la compensación de movimiento y/o funcionamiento del filtro de circuito pueden modificarse a fin de reducir el consumo de energía de manera dinámica con base en las condiciones de energía actuales y/o de la estadística de energía anterior. Por ejemplo, la Figura 12A ilustra una forma de onda de filtro de interpolación a manera de ejemplo para ahorro de energía, y la Figura 12B ilustra una forma de onda de filtro de interpolación a manera de ejemplo para ahorrar energía. El filtro puede ser un filtro de paso bajo. El proceso de filtrado de interpolación puede implementarse en el dominio de la frecuencia, por ejemplo, utilizando la ecuación (8), donde X puede ser la señal de entrada, F puede ser el filtro, e Y puede ser la señal de salida en el dominio de la frecuencia.
Y = X & F Ecuación (8)
En el dominio espacial, si la entrada x no tiene una señal grande de alta frecuencia, el filtro F puede reducirse sin generar grandes errores. Por lo tanto, la compensación de movimiento utilizada puede basarse en el análisis de frecuencias de la señal. Por ejemplo, si la región a interpolar no tiene bordes fuertes o contrastes fuertes ( por ejemplo, la respuesta de frecuencia carece de una gran proporción de componentes de frecuencia
relativamente alta), entonces el decodificador sensible a la energía a conocer en el dispositivo móvil puede determinar la aplicación de un filtro con una menor frecuencia de corte a fin de ahorrar tiempo y/o energía durante los procesos de decodificación. Por ejemplo, un filtro más corto (por ejemplo, una menor frecuencia de corte) puede reducir el ancho de banda de acceso a la memoria. El análisis de las características de la región para determinar si el filtro más corto puede aplicarse sin afectar significativamente los procesos de decodificación ( por ejemplo, determinar si los componentes de frecuencia de la región son principalmente de frecuencias más bajas) pueden realizarse utilizando una energía relativamente baja. Por ejemplo, si se desean ahorros adicionales de energía y un determinado porcentaje dado de los componentes de frecuencia asociados a la región son menos que un umbral de frecuencia especificado, el filtrado puede realizarse utilizando un filtro de frecuencia relativamente menor.
En un ejemplo, la determinación referente a si se debe aplicar el filtro de frecuencia más baja puede realizarse con base en imágenes de baja resolución (por ejemplo, el análisis se realiza en píxeles muestreados con objeto de ahorrar energía). Por ejemplo, la determinación referente a si se aplica el filtro de frecuencia más baja puede realizarse con base en un análisis de píxeles
muestreados, por ejemplo, en lugar de con base en todos los pixeles asociados a la imagen o a una porción de la imagen. Por ejemplo, cuando se analiza un bloque de 16*16, los pixeles en las posiciones (4n, 4m) pueden analizarse y considerarse, en donde n y m son enteros (por ejemplo, el análisis puede realizarse en 16 pixeles para determinar el filtro a aplicar para el bloque de 256 pixeles).
Puede haber dos temas expuestos por el proceso de compensación de movimiento de energía. En primer lugar, puede ocurrir una propagación de error a futuras imágenes debido a un error en el proceso de predicción temporal. Por ejemplo, si se introduce un error en una imagen de referencia debido al uso del filtro de frecuencia más baja, el error puede propagarse a las futuras imágenes que utilizan la referencia para la predicción temporal. Con objeto de limitar el error de propagación, en un ejemplo, el filtrado de frecuencia más baja puede aplicarse a imágenes de capas superiores, pero no a las imágenes de capas inferiores. A partir del ejemplo, en los codees de HEVC y de video, puede utilizarse una estructura de codificación jerárquica como la ilustrada en la Figura 17. Por ejemplo, puede haber cuatro capas y las imágenes en las capas inferiores pueden abstenerse de utilizar imágenes en capas superiores para la predicción temporal. Por lo tanto, en un ejemplo, al utilizar el filtro de frecuencia más baja
para capas superiores (por ejemplo, las capas más altas) y/o a las capas que no se basan en la predicción temporal por otras capas, pueden lograrse ahorros de energía limitando simultáneamente el efecto de propagación del error.
Un segundo tema que puede exponerse debido a la utilización del filtro de frecuencia más baja puede ser la propagación del error debido a la intrapredicción en la misma imagen. La HEVC, H.264, y/u otros codees pueden solicitar intrapredicción direccional a fin de mejorar la eficiencia de intracodificación. Por ejemplo, la HEVC puede utilizar intrapredicción direccional en una pluralidad de direcciones. La Figura 14 ilustra las direcciones a manera de ejemplo utilizadas en intracodificación de HEVC. Si se genera un error en el bloque de codificación actual debido al uso del filtro de frecuencia más baja, y si un bloque vecino al bloque actual se intracodifica, entonces el error en el bloque actual puede propagarse a los píxeles a lo largo de la dirección de predicción en su bloque vecino. El error puede continuar propagándose si hay varios intrabloques espacialmente adyacentes entre sí, y las degradaciones pueden ampliarse. Por lo tanto, en un ejemplo, el codificador sensible a la energía en el dispositivo móvil puede abstenerse de utilizar el filtro de frecuencia más baja de un interbloque si hay bloques de
intracodificación en sus vecinos no causales (por ejemplo, su bloque vecino de la derecha, su bloque vecino inferior, y/o su bloque vecino de la derecha inferior). Consecuentemente, el dispositivo móvil, incluso si el dispositivo móvil determina que debe utilizarse la decodificación de menor energía, aún pueden decodificarse uno o más bloques de codificación utilizando un filtro de compensación de movimiento regular si uno o más bloques de intracodificación son un vecino no casual al bloque de codificación respectivo y/o uno o más de otros bloques de codificación si un bloque vecino se intracodifica con base en la información codificada en el bloque de codificación respectivo.
El desbloqueo puede ser útil para mejorar la calidad de las áreas relativamente planas y/o relativamente lisas en términos de calidad visual, dado que las degradaciones de bloqueo normalmente son más pronunciadas en esas áreas debido a las características del sistema visual humano. Para las áreas con componentes de alta frecuencia tales como áreas de alta textura, un fenómeno llamado enmascaramiento de textura puede hacer que las degradaciones de bloqueo sean efectivamente invisibles para el ojo humano. Para áreas de interbloque de alta textura y/o de pequeños residuos, la omisión del desbloqueo también puede ahorrar un poco de energía. El error ocasionado al
omitir el desbloqueo también puede propagarse mediante compensación de movimiento, pero el error no puede propagarse por la predicción de intrabloque. Por lo tanto, en un ejemplo, si el decodificador sensible a la energía del dispositivo móvil determina que deben lograrse ahorros de energía, el desbloqueo puede omitirse para imágenes que no son de referencia, pero aún puede realizarse para imágenes de referencia.
La decodificación sensible a la energía y/o la emisión en tiempo real sensible a la energía pueden utilizarse por separado o en combinación para lograr ahorros de energía utilizando téenicas a base del cliente (por ejemplo, la decodificación sensible a la energía tal como el uso de un filtro de paso bajo con una menor frecuencia de corte durante la compensación de movimiento) y/o técnicas a base de redes de cliente común ( por ejemplo, el servidor proporciona información referente a la complejidad de diferentes flujos potenciales y el cliente solicita dinámicamente un flujo adecuado con base en la información de nivel de energía y/o información de nivel de energía).
La emisión en tiempo real sensible a la energía puede ser una colaboración entre un servidor y un cliente (por ejemplo, una WTRU tal como un dispositivo móvil). Por ejemplo, el contenido puede generarse con múltiples
versiones, y cada versión puede asociarse a una complejidad diferente y/o a una resolución diferente. La información de la complejidad puede ser solicitada por el cliente y se envia desde el servidor en un archivo de descripción de medios para el contenido. El cliente puede seleccionar un segmento de medios adecuado con base en información tal como el estado de nivel de energía para el cliente, el estado de nivel de energía del cliente, el tiempo de reproducción previsto, el estado de uso del procesador, las preferencias del usuario, una indicación recibida del usuario, el ancho de banda disponible, y/o lo similar.
Por ejemplo, un usuario configura al dispositivo móvil del cliente para funcionar en un modo de alta calidad. En el modo de alta calidad, el usuario puede preferir la calidad sobre la reducción de la energía. Cuando se opera en el modo de alta calidad, el dispositivo móvil puede configurarse para tomar en cuenta los niveles de complejidad de la decodificación y para determinar la resolución y/o el nivel de complejidad que maximiza la calidad, garantizando simultáneamente que el dispositivo móvil tenga suficiente energía restante para completar toda la reproducción del video. El dispositivo móvil puede calcular la cantidad de energía que se utilizará para el resto del video con base en la estadística de energía anterior, la información de la complejidad asociada a la
estadística de energía anterior, y la información de la complejidad asociada a los segmentos de video restantes.
En un ejemplo, el usuario puede configurar el dispositivo móvil de cliente para funcionar en un modo de ahorro de energía, en el cual el usuario puede preferir menos disipación de energía sobre la mejor calidad. En el modo de ahorro de energía, el dispositivo móvil puede configurarse para utilizar la emisión en tiempo real sensible a la energía y/o la decodificación sensible a la energía con objeto de minimizar el uso de la energía. Utilizar la estadística de consumo de energía adquirida decodificando simultáneamente imágenes anteriores asociadas a uno o más niveles de complejidad, el cliente puede asignar la potencia para el siguiente segmento de acuerdo con la energía restante. Con base en la energía asignada y/o la complejidad del segmento anterior, el cliente puede calcular la complejidad del segmento actual. Después, el cliente puede saber qué nivel de complejidad debe solicitarse en segmentos subsecuentes con base en la cantidad de energía restante.
La teenología de decodificación sensible a la energía puede basarse en el análisis de contenido de uno o más bloques a decodificarse. La decodificación sensible a la energía puede intentar lograr un equilibrio aceptable entre la complejidad de decodificación/uso de la energía y
la calidad. La decodificación sensible a la energía puede ser capaz de ahorrar el consumo de energía al introducir errores apenas perceptibles. Puede haber varios métodos para la decodificación sensible a la energía. Por ejemplo, el decodificador puede aplicar diferentes filtros de interpolación asociados a diferentes áreas características para imágenes de baja prioridad. Para regiones con muchas señales de alta frecuencia, tales como bordes o textura con bordes fuertes, el decodificador puede utilizar un filtro de interpolación adecuado o normal a fin de evitar la introducción de errores. Para regiones relativamente planas con menos componentes/señales de alta frecuencia, el decodificador puede reducir la frecuencia de corte del filtro de paso bajo a fin de reducir el ancho de banda de acceso a la memoria. En un ejemplo, el decodificador sensible a la energía puede ahorrar el consumo de energía al omitir las operaciones de desbloqueo en las áreas en donde son menos visibles las degradaciones de bloqueo y/o en áreas donde la propagación del error es menos problemática (por ejemplo, tal como en imágenes que no son de referencia o imágenes de referencia en capas temporales superiores). En un ejemplo, para una transformada inversa, el decodificador puede aplicar un tamaño más pequeño de transformada de acuerdo con la distribución del coeficiente diferente de cero, por ejemplo, porque la mayoría de los
coeficientes diferentes de cero pueden distribuirse en la esquina superior izquierda corresponde a una región de baja frecuencia.
A continuación se describirá una descripción detallada de modalidades ilustrativas con referencia a las diversas figuras. Aunque esta descripción proporciona un ejemplo detallado de posibles implementaciones, debe tenerse en cuenta que los detalles pretender ser a manera de ejemplo y de ninguna manera limitan el alcance de la aplicación.
La Figura 1A es un diagrama de un sistema de comunicaciones 100 a manera de ejemplo en el que pueden implementarse una o más modalidades descritas. El sistema de comunicaciones 100 puede ser un sistema de acceso múltiple que proporcione contenido, tal como voz, datos, video, mensajería, difusión, etc., a múltiples usuarios inalámbricos. El sistema de comunicaciones 100 puede permitir que múltiples usuarios inalámbricos accedan a tal contenido a través de la distribución de los recursos del sistema, incluyendo el ancho de banda inalámbrico. Por ejemplo, los sistemas de comunicaciones 100 pueden emplear uno o más métodos de acceso de canal, tales como acceso múltiple por división de código (CDMA - code división múltiple access), acceso múltiple por división de tiempo (TDMA - time división múltiple access), acceso múltiple por
división de frecuencia (FDMA - frequency división múltiple access), FDMA ortogonal (OFDMA - orthogonal FDMA), FDMA de portadora única (SC-FDMA), y lo similar.
Como se muestra en la Figura 1A, el sistema de comunicaciones 100 puede incluir unidades de transmisión/recepción inalámbrica (WTRUs) 102a, 102b, 102c, y/o 102d (las cuales general o colectivamente pueden denominarse WTRU 102), una red de acceso de radio (RAN) 103/104/105, una red central 106/107/109, una red telefónica pública conmutada (PSTN) 108, la Internet 110, y otras redes 112, aunque se observará que las modalidades descritas consideran cualquier número de estaciones base, WTRUs, redes, y/o elementos de red. Cada una de las WTRUs 102a, 102b, 102c, 102d puede ser cualquier tipo de dispositivo configurado para funcionar y/o comunicarse en un entorno inalámbrico. A manera de ejemplo, las WTRUs 102a, 102b, 102c, 102d pueden configurarse para transmitir y/o recibir señales inalámbricas y pueden incluir equipo de usuario (UE - user equipment), una estación móvil, una unidad de suscriptor fija o móvil, un localizador de personas, un teléfono celular, un asistente personal digital (PDA - personal digital assistant), un teléfono inteligente, una computadora portátil, una miniportátil, una computadora personal, un sensor inalámbrico, electrónica de consumo, y lo similar.
El sistema de comunicaciones 100 tambien pueden incluir una estación base 114a y una estación base 114b. Cada una de las estaciones base 114a, 114b puede ser cualquier tipo de dispositivo configurado para establecer una interfaz inalámbricamente con al menos una de la WTRUs 102a, 102b, 102c, 102d a fin de facilitar el acceso a una o más redes de comunicaciones, tales como la red central 106/107/109, la Internet 110, y/o las redes 112. A manera de ejemplo, las estaciones base 114a, 114b pueden ser una estación de transceptor base (BTS - base transceiver station), un Nodo B, un Nodo-e B, un Nodo B local, un Nodo-e B local, un controlador de sitio, un punto de acceso (AP - access point), un enrutador inalámbrico, y lo similar. Aunque cada uno de las estaciones base 114a, 114b se representan como un único elemento, se observará que las estaciones base 114a, 114b pueden incluir cualquier número de estaciones base y/o elementos de red interconectados.
La estación base 114a puede ser parte de la RAN 103/104/105, que también puede incluir otras estaciones base y/o elementos de red (no se muestran), tales como un controlador de estación base (BSC - base station controller), un controlador de red de radio (RNC - radio network controller), nodos de retransmisión, etc. La estación base 114a y/o la estación base 114b pueden configurarse para transmitir y/o recibir señales
inalámbricas dentro de una región geográfica particular, la cual puede denominarse celda (no se muestra). La celda puede dividirse además en sectores de celdas. Por ejemplo, la celda asociada a la estación base 114a puede dividirse en tres sectores. Consecuentemente, en una modalidad, la estación base 114a puede incluir tres transceptores, es decir, uno para cada sector de la celda. En otra modalidad, la estación base 114a puede emplear la teenología de múltiple entrada múltiple salida (MIMO - múltiple input múltiple output) y, por lo tanto, pueden utilizar múltiples transceptores para cada sector de la celda
Las estaciones base 114a, 114b pueden comunicarse con una o más WTRUs 102a, 102b, 102c, 102d mediante una interfaz aérea 115/116/117, que puede ser cualquier enlace adecuado de comunicaciones inalámbricas (por ejemplo, radiofrecuencia (RF), microondas, infrarrojos (IR), ultravioleta (UV), luz visible, etc.). La interfaz aérea 115/116/117 puede establecerse utilizando cualquier tecnología de acceso de radio (RAT - radio access technology) adecuada.
Más específicamente, como se indicó con anterioridad, el sistema de comunicaciones 100 puede ser un sistema de acceso múltiple y puede emplear uno o más esquemas de acceso de canal, tales como CDMA, TDMA, FDMA, OFDMA, SC-FDMA, y lo similar. Por ejemplo, la estación base
114a en la RAN 103/104/105 y las WTRUs 102a, 102b, 102c pueden implementar una teenología de radio tal como el Acceso de Radio Terrestre (UTRA - UMTS Terrestrial Radio) del Sistema Universal de Telecomunicaciones Móviles (UMTS -Universal Mobile Telecommunications System), el cual puede establecer la interfaz aérea 115/116/117 utilizando CDMA de banda ancha (WCDMA - Wideband CDMA). El WCDMA puede incluir protocolos de comunicaciones tales como Acceso de Paquetes de Alta Velocidad (HSPA - High-Speed Packet Access) y/o HSPA evolucionado (HSPA+). El HSPA puede incluir Acceso de Paquetes de Enlace Descendente de Alta Velocidad (HSDPA -High-Speed Downlink Packet Access) y/o Acceso de Paquetes de Enlace Ascendente de Alta Velocidad (HSUPA - High-Speed Uplink Packet Access).
En otra modalidad, la estación base 114a y las WTRUs 102a, 102b, 102c pueden implementar una tecnología de radio tal como el acceso de radio terrestre de UMTS evolucionado (E-UTRA - Evolved UMTS Terrestrial Radio Access), el cual puede establecer la interfaz aérea 115/116/117 utilizando evolución a largo plazo (LTE - Long Term Evolution) y/o LTE-avanzada (LTE-Advanced).
En otras modalidades, la estación base 114a y las WTRUs 102a, 102b, 102c pueden implementar tecnologías de radio, tales como la IEEE 802.16 (es decir, Interoperabilidad mundial para acceso por microondas
(WiMAX)), CDMA2000, CDMA2000 IX, CDMA2000 EV-DO, Norma Provisional 2000 (IS-2000), Norma Provisional 95 (IS-95), Norma Provisional 856 (IS-856), Sistema Global para Comunicaciones Móviles (GSM - Global System for Mobile Communications), tasas de datos mejoradas para la evolución de GSM (EDGE - Enhanced Data rates for GSM Evolution), EDGE GSM (GERAN), y lo similar.
La estación base 114b en la Figura 1A puede ser un ruteador inalámbrico, nodo local B, Nodo-e B local, o punto de acceso, por ejemplo, y puede utilizar cualquier RAT adecuada para facilitar la conectividad inalámbrica en un área localizada, tal como un negocio, una casa, un vehículo, un campus universitario, y lo similar. En una modalidad, la estación base 114b y las WTRUs 102c, 102d pueden implementar una teenología de radio tal como la norma IEEE 802.11 a fin de establecer una red de área local inalámbrica (WLAN). En otra modalidad, la estación base 114b y las WTRUs 102c, 102d pueden implementar una tecnología de radio tal como la norma IEEE 802.15 a fin de establecer una red de área personal inalámbrica (WPAN). En aún otra modalidad, la estación base 114b y las WTRUs 102c, 102d pueden utilizar una RAT a base de celular (por ejemplo, WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.) a fin de establecer una picocelda o fe tocelda. Como se muestra en la Figura 1A, la estación base 114b puede tener una
conexión directa a Internet 110. Por lo tanto, la estación base 114b puede no ser necesaria para acceder a Internet 110 mediante la red central 106/107/109.
La RAN 103/104/105 puede estar en comunicación con la red central 106/107/109, que puede ser cualquier tipo de red configurada para proporcionar servicios de voz, datos, aplicaciones, y/o protocolo de voz sobre Internet (VoIP - voice over internet protocol) a una o más WTRUs 102a, 102b, 102c, 102d. Por ejemplo, la red central
106/107/109 puede proporcionar control de llamadas, servicios de facturación, servicios a base de localización móvil, llamadas prepagadas, conectividad a Internet, distribución de video, etc., y/o ejecución de funciones de seguridad de alto nivel, tales como autenticación de usuarios. Aunque no se muestra en la Figura 1A, se observará que la RAN 103/104/105 y/o la red central 106/107/109 pueden estar en comunicación directa o indirecta con otras RANs que emplean la misma RAT que la RAN 103/104/105 o una RAT diferente. Por ejemplo, además de conectarse a la RAN 103/104/105, la cual puede estar utilizando una teenología de radio E-UTRA, la red central 106/107/109 también puede estar en comunicación con otra RAN (no se muestra) empleando una tecnología de radio GSM.
La red central 106/107/109 también puede servir como puerta de enlace para las WTRUs 102a, 102b, 102c, 102d
a fin de acceder a la PSTN 108, la Internet 110, y/u otras redes 112. La PSTN 108 puede incluir redes de telefonía conmutadas por circuitos que proporcionan servicio telefónico tradicional (FOTS - plain oíd telephone Service). La Internet 110 puede incluir un sistema mundial de redes y dispositivos de computadoras interconectadas que utilizan protocolos de comunicaciones comunes, tales como el protocolo de control de transmisión (TCP - transmission control protocol), el protocolo de datagramas de usuario (UDP - user datagram protocol) y el protocolo de Internet (IP - internet protocol) en el conjunto de protocolos de internet TCP/IP. Las redes 112 pueden incluir redes de comunicaciones cableadas o inalámbricas propiedad de y/u operadas por otros proveedores de servicios. Por ejemplo, las redes 112 pueden incluir una red central conectada a una o más RANs, la cual puede emplear la misma RAT que la RAN 103/104/105 o una RAT diferente.
Algunas o todas las WTRUs 102a, 102b, 102c, 102d en el sistema de comunicaciones 100 pueden incluir capacidades de múltiples modos, es decir, las WTRUs 102a, 102b, 102c, 102d pueden incluir múltiples transceptores para comunicarse con diferentes redes inalámbricas mediante diferentes enlaces inalámbricos. Por ejemplo, la WTRU 102c mostrada en la Figura 1A puede configurarse para comunicarse con la estación base 114a, la cual puede
emplear una teenología de radio a base de celular, y con la estación base 114b, la cual puede emplear una tecnología de radio IEEE 802.
La Figura IB es un diagrama de sistema de una WTRU 102 a manera de ejemplo. Como se muestra en la Figura IB, la WTRU 102 puede incluir un procesador 118, un transceptor 120, un elemento de transmisión/recepción 122, una bocina/micrófono 124, un teclado 126, una pantalla/superficie táctil 128, una memoria no extraíble 130, una memoria extraíble 132, una fuente de alimentación 134, un conjunto de chips del sistema de posicionamiento global (GPS) 136, y otros periféricos 138. Se observará que la WTRU 102 puede incluir cualquier subcombinación de los elementos anteriores siempre y cuando sea consistente con una modalidad. También, las modalidades consideran que las estaciones base 114a y 114b, y/o los nodos que las estaciones base 114a y 114b pueden representar, tales como, pero sin limitarse a la estación transceptora (BTS), un Nodo-B, un controlador de sitio, un punto de acceso (AP), un nodo B local, un nodo B local evolucionado (eNodeB), un nodo B evolucionado local(HeNB), una puerta de red de nodo B evolucionado local, y los nodos intermediarios, entre otros, puede incluir algunos o cada uno de los elementos representados gráficamente en la Figura IB y descritos en la presente.
El procesador 118 puede ser un procesador de uso general, un procesador de usos específicos, un procesador convencional, un procesador de señales digitales (DSP -digital signal processor), una pluralidad de microprocesadores, uno o más microprocesadores en asociación con un núcleo de DSP, un controlador, un microcontrolador, circuitos integrados de aplicación específica (ASICs - Application Specific Integrated Circuits), circuitos de Arreglos de Compuertas de Campo Programable (FPGAs - Field Programmable Gate Array), cualquier otro tipo de circuito integrado (IC - integrated circúit), una máquina de estados, y lo similar. El procesador 118 puede llevar a cabo la codificación de la señal, el procesamiento de datos, el control de potencia, el procesamiento de entrada/salida, y/o cualquier otra funcionalidad que le permita a la WTRU 102 operar en un ambiente inalámbrico. El procesador 118 puede acoplarse al transceptor 120, el cual puede acoplarse al elemento de transmisión/recepción 122. Aunque la Figura IB representa gráficamente el procesador 118 y el transceptor 120 como componentes separados, se observará que el procesador 118 y el transceptor 120 pueden integrarse conjuntamente en un paquete electrónico o chip.
El elemento de transmisión/recepción 122 puede configurarse para transmitir señales a, o recibir señales
provenientes de, una estación base (por ejemplo, la estación base 114a) mediante la interfaz aérea 115/116/117. Por ejemplo, en una modalidad, el elemento de transmisión/recepción 122 puede ser una antena configurada para transmitir y/o recibir señales de RF. En otra modalidad, el elemento de transmisión/recepción 122 puede ser un emisor/detector configurado para transmitir y/o recibir señales de IR, UV, o de luz visible, por ejemplo. En aún otra modalidad, el elemento de transmisión/recepción 122 puede configurarse para transmitir y recibir tanto señales de RF como de luz. Se observará que el elemento de transmisión/recepción 122 puede configurarse para transmitir y/o recibir cualquier combinación de señales inalámbricas.
Además, aunque el elemento de transmisión/recepción 122 se representa en la Figura IB como un elemento individual, la WTRU 102 puede incluir cualquier número de elementos de transmisión/recepción 122. Más específicamente, la WTRU 102 puede emplear teenología de MIMO. Por lo tanto, en una modalidad, la WTRU 102 puede incluir dos o más elementos de transmisión/recepción 122 (por ejemplo, múltiples antenas) para transmitir y recibir señales inalámbricas mediante la interfaz aérea
115/116/117.
El transceptor 120 puede configurarse para modular las señales que se van a transmitir por el elemento de transmisión/recepción 122 y para demodular las señales que son recibidas por el elemento de transmisión/recepción 122. Como se indicó con anterioridad, la WTRU 102 puede tener capacidades de múltiples modos. Por lo tanto, el transceptor 120 puede incluir múltiples transceptores para permitirle a la WTRU 102 comunicarse mediante múltiples RATs, tales como el UTRA y la norma IEEE 802.11, por ejemplo.
El procesador 118 de la WTRU 102 puede acoplarse a, y puede recibir datos de entrada de usuario desde, la bocina/micrófono 124, el teclado 126, y/o la pantalla/superficie táctil 128 (por ejemplo, una unidad de visualización de pantalla de cristal liquido (LCD - liquid crystal display) o una unidad de visualización de diodo orgánico emisor de luz (OLED - organic light-emitting diode)). El procesador 118 también puede entregar como salida datos de usuario a la bocina/micrófono 124, el teclado 126, y/o la pantalla/superficie táctil 128. Además, el procesador 118 puede acceder a la información proveniente de, y almacenar datos en, cualquier tipo de memoria adecuada, tal como la memoria no extraible 130 y/o la memoria extraible 132. La memoria no extraible 130 puede incluir memoria de acceso aleatorio (RAM random-access
memory), memoria de sólo lectura (ROM - read-only memory), un disco duro, o cualquier otro tipo de dispositivo de almacenamiento de memoria. La memoria extraible 132 puede incluir una tarjeta de módulo de identidad del suscriptor (SIM - suscriber identity module), una memoria portátil, una tarjeta de memoria digital segura (SD - Secure Digital), y lo similar. En otras modalidades, el procesador 118 puede acceder a información proveniente de, y almacenar datos en, una memoria que no se encuentre ubicada fisicamente en la WTRU 102, como en un servidor o una computadora casera (no se muestra).
El procesador 118 puede recibir energía de la fuente de alimentación 134, y puede configurarse para distribuir y/o controlar la energía a los demás componentes en la WTRU 102. La fuente de alimentación 134 puede ser cualquier dispositivo adecuado para la energización de la WTRU 102. Por ejemplo, la fuente de alimentación 134 puede incluir uno o más baterías de celda secas (por ejemplo, de níquel-cadmio (NiCd), níquel-cinc (NiZn), hidruro metálico de níquel (NiMH), de ion de litio (Li-ion), etc.), celdas solares, celdas de combustible, y lo similar.
El procesador 118 también puede acoplarse al conjunto de chips GPS 136, el cual puede configurarse para proporcionar información sobre la ubicación (por ejemplo, longitud y latitud) con respecto a la ubicación actual de
la WTRU 102. Además de, o en lugar de, la información del conjunto de chips GPS 136, la WTRU 102 puede recibir información sobre la ubicación mediante la interfaz aérea 115/116/117 proveniente de una estación base (por ejemplo, las estaciones base 114a, 114b) y/o determinar su ubicación con base en la temporización de las señales recibidas provenientes dos o más estaciones base cercanas. Se observará que la WTRU 102 puede adquirir información sobre la ubicación mediante cualquier método adecuado de determinación de la ubicación manteniendo la compatibilidad con una modalidad.
El procesador 118 puede acoplarse también a otros periféricos 138, los cuales pueden incluir uno o más módulos de software y/o hardware que proporcionan características, funcionalidad y/o conectividad cableada o inalámbrica adicionales. Por ejemplo, los periféricos 138 pueden incluir un acelerómetro, una brújula electrónica, un transceptor satelital, una cámara digital (para fotografías o video), un puerto de bus serie universal (USB - universal serial bus), un dispositivo de vibración, un transceptor de televisión, auriculares manos libres, un módulo de Bluetooth®, una unidad de frecuencia modulada (FM) de radio, un reproductor de música digital, un reproductor multimedia, un módulo reproductor de videojuegos, un navegador de Internet, y lo similar.
La Figura 1C es un diagrama de sistema de la RAN 103 y la red central 106 de acuerdo con una modalidad. Como se señaló con anterioridad, la RAN 103 puede emplear una teenología de radio UTRA para comunicarse con las WTRUs 102a, 102b, 102c mediante la interfaz aérea 115. La RAN 103 también puede estar en comunicación con la red central 106. Como se muestra en la Figura 13C, la RAN 103 puede incluir nodos B 140a, 140b, 140c, los cuales pueden incluir uno o más transceptores para comunicarse con las WTRUs 102a, 102b, 102c mediante la interfaz aérea 115. Los nodos B 140a, 140b, 140c pueden cada uno asociarse a una celda particular (no se muestra) dentro de la RAN 103. La RAN 103 también puede incluir las RNCs 142a, 142b. Se observará gue la RAN 103 puede incluir cualquier número de nodos B y RNCs conservando la compatibilidad con una modalidad.
Como se muestra en la Figura 13C, los Nodos B 140a, 140b pueden estar en comunicación con el RNC 142a. Además, el Nodo-B 140c puede estar en comunicación con el RNC 142b. Los Nodos B 140a, 140b, 140c pueden comunicarse con los respectivos RNC 142a, 142b mediante una interfaz Iub. Los RNCs 142a, 142b pueden estar en comunicación entre sí mediante una interfaz Iub. Cada uno de los RNC 142a, 142b puede configurarse para controlar los respectivos Nodos B 140a, 140b, 140c a los que se conecta. Además, cada uno de los RNC 142a, 142b puede configurarse para realizar
o apoyar otra funcionalidad, tal como el control de energía de circuito exterior, control de carga, control de admisión, programación de paquetes, control de transferencia, diversidad de macros, funciones de seguridad, encriptación de datos, y lo similar.
La red central 106 mostrada en la Figura 1C puede incluir una puerta de enlace de medios (MGW - media gateway) 144, un centro de conmutación móvil (MSC - mobile switching center) 146, un nodo de soporte de GPRS (SGSN -serving GPRS support node) en servicio 148, y/o un nodo de soporte de GPRS de acceso de red (GGSN - gateway GPRS support node) 150. Aunque cada uno de los elementos anteriores se representa gráficamente como parte de la red central 106, se observará que cualquiera de estos elementos puede ser propiedad de y/o ser explotados por una entidad diferente a la red central.
El RNC 142a en la RAN 103 puede conectarse a la MSG 146 en la red central 106 mediante una interfaz IuCS. El MSC 146 puede conectarse a la MGW 144. El MSC 146 y la MGW 144 puede proporcionar las WTRUs 102a, 102b, 102c con el acceso a redes conmutado por circuitos, tales como la PSTN 108, a fin de facilitar las comunicaciones entre las WTRUs 102a, 102b, 102c y los dispositivos tradicionales de comunicación de linea alámbrica.
El RNC 142a en la RAN 103 también puede conectarse a la SGSN 148 en la red central 106 mediante una interfaz IuPS. La SGSN 148 puede conectarse a la GGSN 150. La SGSN 148 y la GGSN 150 pueden proporcionar las WTRUs 102a, 102b, 102c con acceso a las redes de conmutación de paquetes, tales como la Internet 110, a fin de facilitar las comunicaciones entre las WTRUs 102a, 102b, 102c y dispositivos habilitados para IP.
Como se señaló con anterioridad, la red 106 central también puede conectarse a las redes 112, que pueden incluir otras redes cableadas o inalámbricas que son propiedad y/u operados por otros proveedores de servicios.
La Figura ID es un diagrama de tallo de la RAN 104 y la red central 107 de acuerdo con una modalidad. Como se señaló con anterioridad, la RAN 104 puede emplear una teenología de radio E-UTRA para comunicarse con las WTRUs 102a, 102b, 102c mediante la interfaz aérea 116. La RAN 104 también puede estar en comunicación con la red central 107.
La RAN 104 puede incluir Nodos-e B 160a, 160b, 160c, aunque se observará que la RAN 104 puede incluir cualquier número de Nodos-e B sin dejar de ser compatible con una modalidad. Los Nodos-e B 160a, 160b, 160c pueden incluir uno o más transceptores para comunicarse con las WTRUs 102a, 102b, 102c mediante la interfaz aérea 116. En una modalidad, los Nodos-e B 160a, 160b, 160c pueden
implementar la teenología de MIMO. Así, el Nodo-e B 160a, por ejemplo, puede utilizar múltiples antenas para transmitir señales inalámbricas a, y recibir señales inalámbricas provenientes de, la WTRU 102a.
Cada uno de los Nodos-e B 160a, 160b, 160c puede asociarse a una celda particular (no se muestra) y puede configurarse para manejar las decisiones de gestión de recursos de radio, decisiones de transferencia, la programación de los usuarios en el enlace ascendente y/o enlace descendente, y lo similar. Como se muestra en la Figura ID, los Nodos-e B 160a, 160b, 160c pueden comunicarse entre si mediante una interfaz X2.
La red central 107 mostrada en la Figura ID puede incluir una puerta de enlace de gestión de la movilidad (MME - mobility management gateway) 162, una puerta de enlace de servicio 164, y puerta de enlace de red de datos de paquete (PDN - packet data network) 166. Aunque cada uno de los elementos anteriores se representa como parte de la red central 107, se observará que cualquier de estos elementos pueden ser propiedad y/o ser explotado por una entidad diferente al operador de la red central.
La MME 162 puede conectarse a cada uno de los Nodos-e B 160a, 160b, 160c en la RAN 104 mediante una interfaz SI y puede servir como nodo de control. Por ejemplo, el MME 162 puede ser sensible para autenticar los
usuarios de las WTRUs 102a, 102b, 102c, activación/desactivación de portadora, seleccionar una puerta de enlace de servicio particular durante una conexión inicial de las WTRÜs 102a, 102b, 102c, y lo similar. La MME 162 también puede proporcionar una función de plano de control para alternar entre la RAN 104 y otras RANs (no se muestran) que emplean otras teenologías de radio, tales como GSM o WCDMA.
La puerta de enlace de servicio 164 puede conectarse a cada uno de los Nodos-e B 160a, 160b, 160c en la RAN 104 mediante la interfaz SI. La puerta de enlace de servicio 164 generalmente puede enrutar y enviarle al usuario paquetes de datos de a/desde las WTRUs 102a, 102b, 102c. La puerta de enlace de servicio 164 también puede realizar otras funciones, tales como fijar planos de usuario durante las transferencias inter-Nodo-e B, activar la localización de personas cuando los datos del enlace descendente se encuentran disponibles para las WTRUs 102a, 102b, 102c, gestionar y almacenar los contextos de las WTRUs 102a, 102b, 102c, y lo similar,
La puerta de enlace de servicio 164 también puede conectarse a la puerta de enlace de PDN 166, la cual puede proporcionarles a las WTRUs 102a, 102b, 102c acceso a las redes de conmutación de paquetes, tales como la
Internet 110, a fin de facilitar las comunicaciones entre
las WTRUs 102a, 102b, 102c y dispositivos habilitados para IP.
La red central 107 puede facilitar las comunicaciones con otras redes. Por ejemplo, la red central 107 puede proporcionarles a las WTRUs 102a, 102b, 102c acceso a las redes conmutadas por circuitos, tales como la PSTN 108, a fin de facilitar las comunicaciones entre las WTRUs 102a, 102b, 102c y los dispositivos tradicionales de comunicaciones de líneas alámbricas. Por ejemplo, la red central 107 puede incluir, o puede comunicarse con, una puerta de enlace de IP (por ejemplo, un servidor del subsistema multimedia de IP (IMS - IP multimedia subsystem)) que sirve como una interfaz entre la red central 107 y la PSTN 108. Además, la red central 107 puede proporcionarles a las WTRUs 102a, 102b, 102c, acceso a las redes 112, las cuales pueden incluir otras redes cableadas o inalámbricas que son propiedad de y/u operadas por otros proveedores de servicios.
La Figura 1E es un diagrama de sistema de la RAN 105 y la red central 109 de acuerdo con una modalidad. La RAN 105 puede ser una red de servicio de acceso (ASN -access Service network) que emplea la teenología de radio IEEE 802.16 para comunicarse con las WTRUs 102a, 102b, 102c mediante la interfaz aérea 117. Como se describirá más adelante, los enlaces de comunicación entre las diferentes
entidades funcionales de las WTRUs 102a, 102b, 102c, la RAN
105, y la red central 109 pueden definirse como puntos de referencia.
Como se muestra en la Figura 1E, la RAN 105 puede incluir estaciones base 180a, 180b, 180c, y una puerta de enlace de ASN 182, aunque se observará que la RAN 105 puede incluir cualquier número de estaciones base y puertas de enlace de ASN manteniendo simultáneamente la compatibilidad con una modalidad. Cada una de las estaciones base 180a, 180b, 180c puede estar asociada a una celda particular (no se muestra) en la RAN 105 y cada una puede incluir uno o más transceptores para comunicarse con las WTRUs 102a, 102b, 102e mediante la interfaz aérea 117. En una modalidad, las estaciones base 180a, 180b, 180c pueden implementar la teenología de MIMO. Por ende, la estación base 180a, por ejemplo, puede utilizar múltiples antenas para transmitir señales inalámbricas a, y recibir señales inalámbricas provenientes de, la WTRU 102a. Las estaciones base 180a, 180b, 180c también pueden proporcionar funciones de gestión de la movilidad, tales como activación de transferencia, establecimiento de túnel, administración de recursos de radio, clasificación de tráfico, aplicación de políticas de calidad de servicio (QoS - Quality of Service), y lo similar. La puerta de enlace de ASN 182 puede servir como un punto de acumulación de tráfico y
puede ser responsable de llamadas de localización de personas, almacenamiento en memoria temporal de perfiles de suscriptor, enrutamiento a la red central 109, y lo similar.
La interfaz aérea 117 entre las WTRUs 102a, 102b, 102c y la RAN 105 pueden definirse como un punto de referencia R1 que iplementa la especificación de la norma IEEE 802.16. Además, cada una de las WTRUs 102a, 102b, 102c puede establecer una interfaz lógica (no se muestra) con la red central 109. La interfaz lógica entre las WTRUs 102a, 102b, 102e y la red central 109 puede definirse como un punto de referencia R2, el cual puede utilizarse para la autenticación, autorización, administración de la configuración de anfitrión IP, y/o gestión de la movilidad.
El enlace de comunicaciones entre cada una de las estaciones base 180a, 180b, 180c puede definirse como un punto de referencia R8 que incluye protocolos para facilitar las transferencias de WTRU y la transferencia de datos entre las estaciones base. El enlace de comunicaciones entre las estaciones base 180a, 180b, 180c y la puerta de enlace de ASN 182 puede definirse como un punto de referencia R6. El punto de referencia R6 puede incluir protocolos para facilitar la gestión de la movilidad con base en los eventos de movilidad asociados a cada una de las WTRUs 102a, 102b, 102c.
Como se muestra en la Figura 1E, la RAN 105 puede conectarse a la red central 109. El enlace de comunicaciones entre la RAN 105 y la red central 109 puede definirse como un punto de referencia R3 que incluye protocolos para facilitar la transferencia de datos y las capacidades de gestión de la movilidad, por ejemplo. La red central 109 puede incluir un agente local de IP móvil (MIP-HA) 184, un servidor de autenticación, autorización, y estadística (AAA - authentication, authorization, accounting) 186, y una puerta de enlace 188. Aunque cada uno de los elementos anteriores se representa gráficamente como parte de la red central 109, se observará que cualquiera de estos elementos puede ser propiedad de y/o ser operado por una entidad diferente al operador de la red central.
El MIP-HA puede ser responsable de la administración de direcciones IP, y puede permitirles a las WTRUs 102a, 102b, 102c desplazarse entre diferentes ASNs y/o diferentes redes centrales. El MIP-HA 184 puede proporcionarles a las WTRUs 102a, 102b, 102c, acceso a las redes de conmutación de paquetes, tales como la Internet 110, a fin de facilitar las comunicaciones entre las WTRUs 102a, 102b, 102c y dispositivos habilitados para IP. El servidor de AAA 186 puede ser responsable de la autenticación de usuario y de apoyar los servicios del
usuario. La puerta de enlace 188 puede facilitar la interacción con otras redes. Por ejemplo, la puerta de enlace 188 puede proporcionarles a las WTRUs 102a, 102b, 102c acceso a las redes conmutadas por circuitos, como la PSTN 108, a fin de facilitar las comunicaciones entre las WTRUs 102a, 102b, 102c y los dispositivos tradicionales de comunicaciones de lineas alámbricas. Además, la puerta de enlace 188 puede proporcionarles a la WTRU 102a, 102b, 102c acceso a las redes 112, las cuales pueden incluir otras redes cableadas o inalámbricas que son propiedad de y/u que son operadas por otros proveedores de servicios.
Aunque no se muestra en la Figura 1E, se observará que la RAN 105 puede conectarse a otras ASNs y la red central 109 puede conectarse a otras redes centrales. El enlace de comunicaciones entre la RAN 105 y las demás ASNs puede definirse como un punto de referencia R4, el cual puede incluir protocolos para coordinar la movilidad de las WTRUs 102a, 102b, 102c entre la RAN 105 y las demás ASNs. El enlace de comunicaciones entre la red central 109 y las demás redes centrales puede definirse como una referencia R5, que puede incluir protocolos para facilitar la interacción entre redes centrales locales y redes centrales visitadas.
Aunque se han descrito con anterioridad características y elementos en combinaciones particulares,
aquellos expertos en la materia observarán que cada característica o elemento puede utilizarse individualmente o en cualquier combinación con las otras características y elementos. Además, los métodos descritos en la presente pueden implementarse en un programa de computadora, software, o firmware incorporado en un medio legible por computadora para su ejecución por una computadora o procesador. Algunos ejemplos de medios legibles por computadora incluyen señales electrónicas (transmitidas mediantes conexiones cableadas o inalámbricas) y medios de almacenamiento legibles por computadora. Algunos ejemplos de medios de almacenamiento legibles por computadora incluyen, pero no se limitan a, una memoria de sólo lectura (ROM), una memoria de acceso aleatorio (RAM), un registro, una memoria asociada, dispositivos de memoria de semiconductores, medios magnéticos tales como discos duros internos y discos extraíbles, medios magneto-ópticos y medios ópticos tales como discos CD-ROM y discos versátiles digitales (DVD - digital versatile disks). Puede utilizarse un procesador en asociación con software para implementar un transceptor de radio frecuencia para uso en una WTRU, UE, terminal, estación base, RNC, o cualquier computadora anfitriona.
Claims (20)
- REIVINDICACIONES 1. Un método para que un dispositivo móvil decodifique video a base de la energía disponible, el método comprende: recibir un archivo de descripción de medios (MDF) de un flujo de video proveniente de un servidor de video, en el que el flujo de video se divide en una pluralidad de segmentos de video, el MDF comprende información de la tasa de bits e información de la complejidad asociada al flujo de video, y la información de la complejidad indica una complejidad de decodificación de video relativa para diferentes niveles de complejidad en los cuales puede solicitarse la pluralidad de segmentos de video; determinar al menos un indicador de energía para el dispositivo móvil; y determinar un primer nivel de complejidad a solicitar para un primer segmento de video con base en el indicador de energía y la información de la complejidad comprendida en el MDF; y solicitar el primer segmento de video en el primer nivel de complejidad proveniente del servidor de video. 2 . El método de conformidad con la reivindicación 1, caracterizado porque la información de la complejidad recibida en el MDF indica al menos una complejidad de decodificación de video relativa de una versión de mayor complejidad del primer segmento de video a una determinada tasa de bits y una complejidad de decodificación de video relativa de una versión de menor complejidad del primer segmento de video a la tasa de bits determinada. 3. El método de conformidad con la reivindicación 1, caracterizado porque comprende además determinar una tasa de bits a solicitar para el primer segmento de video en el primer nivel de complejidad con base en la información de tasa de bits comprendida en el MDF. . El método de conformidad con la reivindicación 1, caracterizado porque el indicador de energía comprende la cantidad de energía a asignar para decodificar el resto del video. 5. El método de conformidad con la reivindicación 4, caracterizado porque comprende además: determinar una duración del resto del flujo de video: determinar una duración del primer segmento de video; determinar una cantidad de energía a asignarle al primer segmento de video con base en la cantidad de energía a asignar para decodificar el resto del flujo de video, la duración del resto del flujo de video, y la duración del primer segmento de video. 6. El método de conformidad con la reivindicación 5, caracterizado porque a cada uno de los segmentos de video restantes del resto del flujo de video se le asigna aproximadamente la misma cantidad de energía para la decodificación. 7. El método de conformidad con la reivindicación 6, caracterizado porque la determinación del primer nivel de complejidad a solicitar para el primer segmento de video con base en la información de la complejidad derivada del MDF y el indicador de energía comprende determinar un nivel de complejidad que producirá la decodificación del primer segmento de video utilizando aproximadamente la cantidad de energía a asignar al primer segmento de video. 8. El método de conformidad con la reivindicación 1, caracterizado porque la información de la complejidad adicional se incorpora en el flujo de video, y la información de la complejidad adicional se proporciona por segmento de video. 9. El método de conformidad con la reivindicación 1, caracterizado porque comprende además la determinación de si una región del primer segmento de video comprende componentes de alta frecuencia que exceden un umbral de alta frecuencia, y aplicar un primer filtro de interpolación durante la compensación de movimiento para la región a condición de que los componentes de alta frecuencia excedan el umbral de frecuencia alta o aplicar un segundo filtro de interpolación para la compensación de movimiento para la región con la condición de que los componentes de alta frecuencia no excedan el umbral de alta frecuencia, en el que el segundo filtro de interpolación se asocia a una frecuencia de corte menor que el primer filtro de interpolación. 10. El método de conformidad con la reivindicación 1, caracterizado porque comprende además realizar el desbloqueo para las imágenes de referencia en el primer segmento de video, y abstenerse de realizar el desbloqueo de las imágenes que no son de referencia. 11. Un dispositivo móvil para modificar dinámicamente la decodificación de video con base en las condíclones de energía, el dispositivo móvil comprende: un transceptor configurado para solicitar un archivo de descripción de medios (MDF) para un archivo de video proveniente de un servidor de video y recibir el MDF proveniente del servidor de video, carazterizado porque el archivo de video se divide en una pluralidad de segmentos de video, el MDF comprende información de la tasa de bits e información de la complejidad asociadas al archivo de video, y la información de la complejidad indica una complejidad de decodificación de video relativa para diferentes niveles de complejidad que pueden seleccionarse para uno o más de la pluralidad de segmentos de video; una unidad de estadística y control de complejidad configurada para almacenar la estadística para la decodificación del segmento anterior, en donde la estadística para la decodificación del segmento anterior comprende información de energía asociada a la decodificación de al menos un segmento anterior e información de la complejidad para al menos el segmento anterior; un detector de energía configurado para determinar la información del nivel de energía actual; y un controlador de adaptación sensible a la energía configurado para determinar un nivel de complejidad a solicitar para un segmento subsecuente con base en la información de la complejidad proveniente del MDF, la estadística para decodificar el segmento anterior, y la información de energía actual. 12. El dispositivo móvil de conformidad con la reivindicación 11, caracterizado porque comprende además un decodificador configurado para determinar un parámetro o método a aplicar para decodificar el segmento subsecuente con base en la información determinada por el controlador de adaptación sensible a la energía. 13. El dispositivo móvil de conformidad con la reivindicación 12, caracterizado porque el decodificador se configura para determinar un filtro de interpolación a aplicar para la compensación de movimiento de una determinada región con base en un análisis de frecuencias de un muestreo de píxeles en la región determinada. 14. El dispositivo móvil de conformidad con la reivindicación 13, caracterizado porque el decodificador se configura para utilizar un primer filtro de interpolación con una frecuencia de corte menor que un segundo filtro de interpolación para la predicción temporal de capas superiores para regiones con componentes de alta frecuencia por debajo de un umbral especificado, y el uso del segundo filtro de interpolación para la predicción temporal de capas inferiores, incluso si los componentes de alta frecuencia de la capa inferior se encuentran por debajo del umbral. 15. El dispositivo móvil de conformidad con la reivindicación 13, caracterizado porque el decodificador se configura para utilizar un primer filtro de interpolación con una frecuencia de corte menor que un segundo filtro de interpolación para regiones con componentes de alta frecuencia por debajo de un umbral especificado, excepto para al menos los interbloques en los que un vecino no causal del interbloque comprende uno o más bloques intracodificados. 16. El dispositivo móvil de conformidad con la reivindicación 11, caracterizado porque el controlador de adaptación sensible a la energía se configura además para determinar una resolución a solicitar para el segmento subsecuente con base en la información de la complejidad del MDF, la estadística para decodificar el segmento anterior y la información de energía actual. 17. Un método para una unidad de transmisión/recepción inalámbrica (WTRU) para interactuar con un servidor de video a fin de ahorrar dinámicamente la energía durante la decodificación de video, el método comprende: la WTRU solicita un archivo de descripción de medios (MDF) proveniente del servidor de video; la WTRU recibe el MDF proveniente del servidor de video, el MDF comprende información de la complejidad para decodificar uno o más segmentos de un flujo de video; la WTRU determina una cantidad de energía a asignar para decodificar segmentos de video del flujo de video con base al menos, en parte, en una cantidad de energía restante asignada para decodificar un resto del flujo de video; la WTRU determina un primer nivel de complejidad de decodificación a solicitar para un primer segmento de video del flujo de video con base en la cantidad de energía a asignar para decodificar segmentos de video del flujo de video; la WTRU solicita el primer nivel de complejidad de decodificación para el primer segmento de video; la WTRU reevalúa la cantidad de energía restante asignada para decodificar un resto del flujo de video y determinar que la WTRU carece de suficiente energía para completar la decodificación del flujo de video en un nivel de energía actual por cada segmento de video; la WTRU determina una nueva cantidad de energía a asignar para decodificar los segmentos de video restantes del flujo de video con base en una nueva cantidad de energía restante asignada para decodificar el resto del flujo de video; y la WTRU determina un segundo nivel de complejidad de decodificación a solicitar para un segundo segmento de video del flujo de video con base en la nueva cantidad de energía a asignar para decodificar los segmentos de video restantes del flujo de video. 18. El método de conformidad con la reivindicación 17, caracterizado porque a cada uno de los segmentos de video restantes se le asigna una cantidad de energía igual con base en la nueva cantidad de energía restante asignada para decodificar el resto del flujo de video. 19. El método de conformidad con la reivindicación 18, caracterizado porque un nivel de complejidad respectivo para un segmento de video respectivo se selecciona con base en una cantidad de energía asignada para decodificar segmentos de video, una duración del segmento de video respectivo, y la estadística asociada a la energía utilizada para decodificar al menos un segmento anterior, el nivel de complejidad para al menos un segmento anterior, y la duración de al menos un segmento anterior. 20. El método de conformidad con la reivindicación 17, caracterizado porque comprende además la WTRU que informa la estadística de uso de energía para diversos segmentos descodificados al servidor, y la WTRU recibe un segmento de video de una determinada complejidad con base en e] informe.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201261669581P | 2012-07-09 | 2012-07-09 | |
| PCT/US2013/049706 WO2014011622A2 (en) | 2012-07-09 | 2013-07-09 | Power aware video decoding and streaming |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| MX2015000266A true MX2015000266A (es) | 2015-08-14 |
| MX345571B MX345571B (es) | 2017-02-03 |
Family
ID=48833073
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| MX2015000266A MX345571B (es) | 2012-07-09 | 2013-07-09 | Decodificacion y emision en tiempo real de video sensibles a la energia. |
Country Status (9)
| Country | Link |
|---|---|
| US (5) | US10154258B2 (es) |
| EP (2) | EP4250745A3 (es) |
| JP (4) | JP6180524B2 (es) |
| KR (2) | KR101836035B1 (es) |
| CN (2) | CN108614633B (es) |
| AU (2) | AU2013288859B2 (es) |
| MX (1) | MX345571B (es) |
| TW (2) | TWI558183B (es) |
| WO (1) | WO2014011622A2 (es) |
Families Citing this family (85)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2553433C2 (ru) | 2010-01-18 | 2015-06-10 | Телефонактиеболагет Лм Эрикссон (Пабл) | Способ и компоновка для поддержки воспроизведения контента |
| TWI558183B (zh) * | 2012-07-09 | 2016-11-11 | Vid衡器股份有限公司 | 功率知覺視訊解碼及串流 |
| CA2884710A1 (en) * | 2012-09-12 | 2014-03-20 | Rigel Pharmaceuticals, Inc. | Treatment for vitiligo |
| CN104604286B (zh) * | 2012-09-28 | 2018-10-09 | 英特尔公司 | 用于流式传输和对话服务的能量感知多媒体自适应 |
| KR101748505B1 (ko) | 2012-10-18 | 2017-06-16 | 브이아이디 스케일, 인크. | 모바일 멀티미디어 스트리밍에 대한 디코딩 복잡도 |
| FR2999373B1 (fr) * | 2012-12-12 | 2018-04-06 | Harmonic Inc. | Procede d'adaptation dynamique du codage d'un flux audio et/ou video transmis a un dispositif |
| US9185742B2 (en) | 2012-12-13 | 2015-11-10 | Google Technology Holdings LLC | System and methods for a cloud based wireless personal area network service enabling context activity handoffs between devices |
| US9098177B2 (en) | 2012-12-13 | 2015-08-04 | Google Technology Holdings LLC | Apparatus and methods for facilitating context handoff between devices in a cloud based wireless personal area network |
| US9037682B2 (en) | 2012-12-13 | 2015-05-19 | Google Technology Holdings LLC | System and methods for preventing interruptions due to battery drain during streaming media sessions between devices |
| TW201503667A (zh) | 2013-03-06 | 2015-01-16 | Interdigital Patent Holdings | 視訊串流功率知覺適應 |
| US10063921B2 (en) | 2013-03-06 | 2018-08-28 | Interdigital Patent Holdings, Inc. | Power aware adaptation for video streaming |
| WO2014138331A2 (en) * | 2013-03-06 | 2014-09-12 | Interdigital Patent Holdings, Inc. | Power aware adaptation for video streaming |
| GB2551674B (en) * | 2013-07-12 | 2018-04-11 | Canon Kk | Adaptive data streaming method with push messages control |
| CN109842613B (zh) | 2013-07-12 | 2021-11-19 | 佳能株式会社 | 用于提供和接收媒体数据的方法和装置以及存储介质 |
| FR3008838B1 (fr) * | 2013-07-19 | 2016-12-16 | France Brevets | Procede de diffusion adaptative de flux multimedia en utilisant un indice d'energie |
| EP2979458A4 (en) * | 2013-07-25 | 2016-03-02 | Huawei Tech Co Ltd | SYSTEM AND METHOD FOR EFFICIENTLY CONTROLLING CLIENT BEHAVIOR IN ADAPTIVE FLOW DIFFUSION |
| EP2838268B1 (en) * | 2013-07-31 | 2019-02-20 | Axis AB | Method, device and system for producing a merged digital video sequence |
| US20150039680A1 (en) * | 2013-08-02 | 2015-02-05 | Avvasi Inc. | Methods and systems for video quota management |
| US20150181208A1 (en) * | 2013-12-20 | 2015-06-25 | Qualcomm Incorporated | Thermal and power management with video coding |
| US9501808B2 (en) | 2014-01-06 | 2016-11-22 | Microsoft Technology Licensing, Llc | Division of processing between systems based on business constraints |
| US9608876B2 (en) | 2014-01-06 | 2017-03-28 | Microsoft Technology Licensing, Llc | Dynamically adjusting brand and platform interface elements |
| US9483811B2 (en) | 2014-01-06 | 2016-11-01 | Microsoft Technology Licensing, Llc | Division of processing between systems based on external factors |
| US20150193275A1 (en) * | 2014-01-06 | 2015-07-09 | Microsoft Corporation | Building interactive, data driven apps |
| US10129773B2 (en) | 2014-03-24 | 2018-11-13 | Google Technology Holdings LLC | Methods and apparatus for managing data use |
| US20150281303A1 (en) * | 2014-03-26 | 2015-10-01 | Mohamed Yousef | Adaptive media streaming |
| US10079906B2 (en) | 2014-07-16 | 2018-09-18 | Comcast Cable Communications, Llc | Device mode settings to provide an enhanced user experience |
| US9363673B2 (en) | 2014-08-04 | 2016-06-07 | Google Technology Holdings LLC | Subscriber identity module control in a portable communication device |
| EP3202145B1 (en) * | 2014-09-30 | 2018-12-12 | Telefonaktiebolaget LM Ericsson (publ) | Encoding and decoding a video frame in separate processing units |
| US10264269B2 (en) | 2014-10-13 | 2019-04-16 | Apple Inc. | Metadata hints to support best effort decoding for green MPEG applications |
| FR3027480B1 (fr) * | 2014-10-17 | 2020-10-23 | Institut Nat Des Sciences Appliquees De Rennes | Decodeur, procede et systeme de decodage de flux multimedia |
| US10880357B2 (en) * | 2014-12-23 | 2020-12-29 | Adobe Inc. | Reducing requests for media segments in streaming of multimedia content |
| US9860294B2 (en) * | 2014-12-24 | 2018-01-02 | Intel Corporation | Media content streaming |
| US9900604B2 (en) * | 2015-03-11 | 2018-02-20 | Kabushiki Kaisha Toshiba | Semiconductor integrated circuit, image transmission apparatus and image transmission system |
| CN106162316A (zh) * | 2015-04-15 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 一种视频流的数据处理方法、装置和系统 |
| US10567816B2 (en) | 2015-04-30 | 2020-02-18 | Comcast Cable Communications, Llc | Delivering content |
| WO2016192079A1 (en) * | 2015-06-04 | 2016-12-08 | Intel Corporation | Adaptive batch encoding for slow motion video recording |
| EP3351003B1 (en) * | 2015-09-15 | 2021-07-14 | InterDigital Madison Patent Holdings, SAS | Method and apparatus for providing power saving media content |
| WO2017048887A1 (en) * | 2015-09-15 | 2017-03-23 | Thomson Licensing | Methods, systems and apparatus for playing back power saving media content |
| CN105208440B (zh) * | 2015-09-22 | 2019-03-12 | 暴风集团股份有限公司 | 一种mp4格式视频在线播放的方法及系统 |
| CN105228001B (zh) * | 2015-09-26 | 2018-11-06 | 暴风集团股份有限公司 | 一种flv格式视频在线播放的方法及系统 |
| US10805875B2 (en) * | 2015-09-29 | 2020-10-13 | Huawei Technologies Co., Ltd. | Method and apparatus for automatically selecting network according to tariff, server, and terminal |
| TWI594607B (zh) | 2015-11-27 | 2017-08-01 | 鴻海精密工業股份有限公司 | 動態控制多個視頻下載之系統及方法 |
| WO2017100769A1 (en) * | 2015-12-11 | 2017-06-15 | Vid Scale, Inc. | Scheduling multiple-layer video segments |
| WO2017143522A1 (en) | 2016-02-23 | 2017-08-31 | Intel Corporation | Graphics processor workload acceleration using a command template for batch usage scenarios |
| JP6466870B2 (ja) * | 2016-02-29 | 2019-02-06 | Kddi株式会社 | クライアント装置および方法 |
| US10805643B2 (en) * | 2016-03-30 | 2020-10-13 | Advanced Micro Devices, Inc. | Adaptive error-controlled dynamic voltage and frequency scaling for low power video codecs |
| WO2017194134A1 (en) * | 2016-05-12 | 2017-11-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Control of media transcoding during a media session |
| JP6752080B2 (ja) * | 2016-08-10 | 2020-09-09 | キヤノン株式会社 | 情報処理装置及びその制御方法、コンピュータプログラム |
| US10116957B2 (en) * | 2016-09-15 | 2018-10-30 | Google Inc. | Dual filter type for motion compensated prediction in video coding |
| US10341659B2 (en) * | 2016-10-05 | 2019-07-02 | Qualcomm Incorporated | Systems and methods of switching interpolation filters |
| US10484308B2 (en) | 2017-03-31 | 2019-11-19 | At&T Intellectual Property I, L.P. | Apparatus and method of managing resources for video services |
| US10819763B2 (en) | 2017-03-31 | 2020-10-27 | At&T Intellectual Property I, L.P. | Apparatus and method of video streaming |
| KR102307447B1 (ko) * | 2017-05-02 | 2021-09-30 | 삼성전자주식회사 | 네트워크 환경 모니터링에 기반하는 http 적응적 스트리밍 서버, 방법, 및 클라이언트 단말 |
| CN107256078B (zh) * | 2017-05-05 | 2020-06-23 | 浙江大华技术股份有限公司 | 一种动态电压频率调整方法及装置 |
| US11991235B2 (en) * | 2017-09-27 | 2024-05-21 | Comcast Cable Communications, Llc | Adaptive energy system utilizing quality of service and quality of experience metrics |
| FR3073112B1 (fr) * | 2017-11-02 | 2021-04-02 | Ateme | Procede et systeme de traitement d'un contenu multimedia dans un reseau de zone metropolitaine |
| US12069115B2 (en) * | 2017-11-29 | 2024-08-20 | Comcast Cable Communications, Llc | Video streaming delivery |
| CN108235096A (zh) * | 2018-01-18 | 2018-06-29 | 湖南快乐阳光互动娱乐传媒有限公司 | 移动终端硬解码智能切换软解码播放视频的方法 |
| US11240685B2 (en) | 2018-01-29 | 2022-02-01 | Samsung Electronics Co., Ltd. | Devices and methods of selecting signal processing algorithm based on parameters |
| CN112771569A (zh) * | 2018-09-20 | 2021-05-07 | 瑞典爱立信有限公司 | 图片的分辨率 |
| US10917636B2 (en) | 2018-12-03 | 2021-02-09 | Tencent America LLC | Method and apparatus for video coding |
| US11044185B2 (en) | 2018-12-14 | 2021-06-22 | At&T Intellectual Property I, L.P. | Latency prediction and guidance in wireless communication systems |
| US11381867B2 (en) * | 2019-01-08 | 2022-07-05 | Qualcomm Incorporated | Multiple decoder interface for streamed media data |
| CN111510790B (zh) * | 2019-01-30 | 2021-10-15 | 上海哔哩哔哩科技有限公司 | 视频请求方法、系统、计算机设备及计算机可读存储介质 |
| CN113711615B (zh) | 2019-02-15 | 2025-09-16 | 北京字节跳动网络技术有限公司 | 视频压缩中的非二次幂分割树 |
| CN109862322B (zh) * | 2019-02-19 | 2020-12-08 | 深圳市研诺达科技有限公司 | 一种基于uvc数据传输的4g影音采集设备 |
| JP7403115B2 (ja) * | 2019-07-10 | 2023-12-22 | 株式会社 インターコム | 映像送信装置、アプリケーションプログラム及び映像送信方法 |
| KR102195460B1 (ko) * | 2019-08-14 | 2020-12-28 | 한국과학기술원 | 엣지 컴퓨팅을 이용하는 모바일 증강 현실 장비 및 그의 에너지 효율적인 해상도 및 송신 파워 제어 방법 |
| WO2021036979A1 (en) | 2019-08-24 | 2021-03-04 | Beijing Bytedance Network Technology Co., Ltd. | Residual coefficients coding |
| EP4038883B1 (en) * | 2019-10-02 | 2023-12-13 | V-Nova International Limited | Use of transformed coefficients to provide embedded signalling for watermarking |
| US12236902B2 (en) | 2020-04-02 | 2025-02-25 | Dolby Laboratories Licensing Corporation | Metadata-based power management |
| JPWO2022004412A1 (es) | 2020-07-01 | 2022-01-06 | ||
| US11438670B2 (en) * | 2020-11-20 | 2022-09-06 | At&T Intellectual Property I, L.P. | Video complexity detection for network traffic management |
| JP2024504672A (ja) * | 2021-02-03 | 2024-02-01 | インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ | 復号プロセスのエネルギー消費を表す情報をシグナリングするためのメタデータ |
| JP7494765B2 (ja) | 2021-03-12 | 2024-06-04 | トヨタ自動車株式会社 | 連系インバータおよび連系インバータの製造方法 |
| US11726949B2 (en) | 2021-05-28 | 2023-08-15 | Samsung Electronics Co., Ltd. | System and method for selectively reprocessing video streams based on system resources and stream status |
| CN117280378A (zh) | 2021-07-13 | 2023-12-22 | 三星电子株式会社 | 用于在图形显示器上渲染差分视频的系统和方法 |
| EP4424015A4 (en) * | 2021-10-26 | 2025-09-24 | Op Solutions Llc | VIDEO CODING SYSTEMS AND METHODS |
| CN113766230B (zh) * | 2021-11-04 | 2022-04-01 | 广州易方信息科技股份有限公司 | 媒体文件编码方法、装置、计算机设备和存储介质 |
| US11503101B1 (en) | 2021-12-15 | 2022-11-15 | Motorola Solutions, Inc. | Device and method for assigning video analytics tasks to computing devices |
| US20230281875A1 (en) * | 2022-02-23 | 2023-09-07 | Intel Corporation | Decision-specific lambda modulation |
| US20250168364A1 (en) * | 2022-02-25 | 2025-05-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Computational complexity indicator |
| WO2023184113A1 (zh) | 2022-03-28 | 2023-10-05 | 京东方科技集团股份有限公司 | 图像显示方法、显示装置及车辆 |
| US12079896B2 (en) | 2022-05-03 | 2024-09-03 | Qualcomm Incorporated | Dynamic clock and voltage scaling (DCVS) lookahead bandwidth voting using feedforward compression ratio |
| TWI865901B (zh) * | 2022-08-09 | 2024-12-11 | 緯創資通股份有限公司 | 功率控制方法及其通訊裝置 |
Family Cites Families (51)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5949484A (en) * | 1995-03-08 | 1999-09-07 | Hitachi, Ltd. | Portable terminal apparatus for multimedia communication |
| JP3161599B2 (ja) * | 1998-07-10 | 2001-04-25 | 日本電気株式会社 | 移動電話システム |
| JP4724351B2 (ja) * | 2002-07-15 | 2011-07-13 | 三菱電機株式会社 | 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置 |
| WO2005020565A1 (en) * | 2003-08-11 | 2005-03-03 | Warner Bros. Entertainment Inc. | Digital media distribution device |
| US8625680B2 (en) * | 2003-09-07 | 2014-01-07 | Microsoft Corporation | Bitstream-controlled post-processing filtering |
| KR100770842B1 (ko) * | 2003-12-10 | 2007-10-26 | 삼성전자주식회사 | 이동통신 시스템에서 이동국의 역방향 채널 정보 전송장치 및 방법 |
| GB0400658D0 (en) | 2004-01-13 | 2004-02-11 | Koninkl Philips Electronics Nv | Portable device for receiving media content |
| JP2006197186A (ja) * | 2005-01-13 | 2006-07-27 | Sharp Corp | 画像符号化装置及び電池駆動復号器 |
| JP2007306538A (ja) * | 2006-04-12 | 2007-11-22 | Matsushita Electric Ind Co Ltd | 画像復号装置及び方法 |
| US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
| US7456760B2 (en) * | 2006-09-11 | 2008-11-25 | Apple Inc. | Complexity-aware encoding |
| US9883202B2 (en) * | 2006-10-06 | 2018-01-30 | Nxp Usa, Inc. | Scaling video processing complexity based on power savings factor |
| US9445128B2 (en) | 2006-12-08 | 2016-09-13 | Freescale Semiconductor, Inc. | System and method of determining deblocking control flag of scalable video system for indicating presentation of deblocking parameters for multiple layers |
| US8315466B2 (en) * | 2006-12-22 | 2012-11-20 | Qualcomm Incorporated | Decoder-side region of interest video processing |
| US20080216125A1 (en) * | 2007-03-01 | 2008-09-04 | Microsoft Corporation | Mobile Device Collaboration |
| US20090017860A1 (en) * | 2007-07-09 | 2009-01-15 | Sony Ericsson Mobile Communications Ab | Intelligent Power-Aware Downloading for Mobile Communication Devices |
| KR101459147B1 (ko) * | 2008-02-04 | 2014-11-10 | 엘지전자 주식회사 | 무선통신 시스템에서 전송 파워 제어 명령 전송 방법 |
| US8948822B2 (en) * | 2008-04-23 | 2015-02-03 | Qualcomm Incorporated | Coordinating power management functions in a multi-media device |
| JP5318943B2 (ja) * | 2008-05-02 | 2013-10-16 | トムソン ライセンシング | スタガーキャスティングにおける省電力化のための方法および装置 |
| US8973057B2 (en) * | 2008-06-05 | 2015-03-03 | Telefonaktiebolaget L M Ericsson (Publ) | Method and equipment for providing unicast preparation for IPTV |
| US8392312B2 (en) | 2008-09-24 | 2013-03-05 | Netapp, Inc. | Adaptive scheduling of storage operations based on utilization of a multiple client and server resources in a distributed network storage system |
| US8068438B2 (en) * | 2008-11-05 | 2011-11-29 | Motorola Solutions, Inc. | Method for cooperative relaying within multi-hop wireless communication systems |
| US20100166060A1 (en) * | 2008-12-31 | 2010-07-01 | Texas Instruments Incorporated | Video transcoder rate control |
| US8958485B2 (en) * | 2010-06-04 | 2015-02-17 | Broadcom Corporation | Method and system for providing selected layered video service via a broadband gateway |
| CN102450014B (zh) | 2009-03-31 | 2017-07-14 | 茨特里克斯系统公司 | 用于质量感知视频优化的方法和视频优化器 |
| KR101719382B1 (ko) | 2009-06-22 | 2017-03-23 | 톰슨 라이센싱 | 이미지 시퀀스에 대한 비디오 데이터의 일치 추적 기반 코딩을 위한 프로세스 |
| US8942208B2 (en) * | 2009-06-22 | 2015-01-27 | Qualcomm Incorporated | Wireless communication having reduced feedback delay |
| US20120127003A1 (en) | 2009-08-06 | 2012-05-24 | Youji Shibahara | Coding method, decoding method, coding apparatus, and decoding apparatus |
| US9015564B2 (en) * | 2009-08-19 | 2015-04-21 | Qualcomm Incorporated | Content delivery system with allocation of source data and repair data among HTTP servers |
| JP2011078182A (ja) | 2009-09-29 | 2011-04-14 | Panasonic Electric Works Co Ltd | 電力監視システム |
| JP5381571B2 (ja) * | 2009-09-29 | 2014-01-08 | 株式会社Jvcケンウッド | 画像符号化装置、画像復号化装置、画像符号化方法、及び画像復号化方法 |
| US9124642B2 (en) * | 2009-10-16 | 2015-09-01 | Qualcomm Incorporated | Adaptively streaming multimedia |
| US8914835B2 (en) * | 2009-10-28 | 2014-12-16 | Qualcomm Incorporated | Streaming encoded video data |
| EP3145189B1 (en) * | 2010-01-06 | 2019-06-19 | Dolby Laboratories Licensing Corporation | Complexity-adaptive scalable decoding and streaming for multi-layered video systems |
| EP2526671B1 (en) | 2010-01-18 | 2016-11-16 | Telefonaktiebolaget LM Ericsson (publ) | Methods and arrangements for http media stream distribution |
| US20110194602A1 (en) * | 2010-02-05 | 2011-08-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for sub-pixel interpolation |
| JP5742117B2 (ja) | 2010-06-03 | 2015-07-01 | 日産自動車株式会社 | 車両用の情報提示装置 |
| WO2012004638A1 (en) * | 2010-07-08 | 2012-01-12 | Manipal Institute Of Technology | Delivery of multimedia service in mobile network |
| JP5592730B2 (ja) | 2010-08-26 | 2014-09-17 | パナソニック株式会社 | 電気料金可視化装置 |
| US9043797B2 (en) * | 2010-10-26 | 2015-05-26 | Qualcomm Incorporated | Using pause on an electronic device to manage resources |
| US9002826B2 (en) * | 2010-10-27 | 2015-04-07 | Qualcomm Incorporated | Media file caching for an electronic device to conserve resources |
| EP3382992B1 (en) * | 2011-04-01 | 2021-12-01 | Intel Corporation | Cross-layer optimized adaptive http streaming |
| CN102907030A (zh) * | 2011-05-27 | 2013-01-30 | 华为技术有限公司 | 语音信号处理方法、装置和接入网系统 |
| US9374406B2 (en) * | 2012-02-27 | 2016-06-21 | Qualcomm Incorporated | Dash client and receiver with a download rate estimator |
| US20140136653A1 (en) * | 2012-02-27 | 2014-05-15 | Qualcomm Incorporated | Dash client and receiver with download rate acceleration |
| US9450997B2 (en) * | 2012-02-27 | 2016-09-20 | Qualcomm Incorporated | Dash client and receiver with request cancellation capabilities |
| US9246842B2 (en) * | 2012-04-27 | 2016-01-26 | Intel Corporation | QoE-aware radio access network architecture for http-based video streaming |
| US9241166B2 (en) * | 2012-06-11 | 2016-01-19 | Qualcomm Incorporated | Technique for adapting device tasks based on the available device resources |
| TWI558183B (zh) * | 2012-07-09 | 2016-11-11 | Vid衡器股份有限公司 | 功率知覺視訊解碼及串流 |
| US9432664B2 (en) * | 2012-09-28 | 2016-08-30 | Qualcomm Incorporated | Signaling layer identifiers for operation points in video coding |
| US10063921B2 (en) * | 2013-03-06 | 2018-08-28 | Interdigital Patent Holdings, Inc. | Power aware adaptation for video streaming |
-
2013
- 2013-07-09 TW TW102124531A patent/TWI558183B/zh active
- 2013-07-09 US US13/937,678 patent/US10154258B2/en active Active
- 2013-07-09 WO PCT/US2013/049706 patent/WO2014011622A2/en not_active Ceased
- 2013-07-09 TW TW105131397A patent/TW201717650A/zh unknown
- 2013-07-09 EP EP23172555.7A patent/EP4250745A3/en active Pending
- 2013-07-09 KR KR1020167036772A patent/KR101836035B1/ko active Active
- 2013-07-09 JP JP2015521739A patent/JP6180524B2/ja active Active
- 2013-07-09 AU AU2013288859A patent/AU2013288859B2/en active Active
- 2013-07-09 CN CN201810443292.4A patent/CN108614633B/zh active Active
- 2013-07-09 MX MX2015000266A patent/MX345571B/es active IP Right Grant
- 2013-07-09 CN CN201380036450.XA patent/CN104604241B/zh active Active
- 2013-07-09 EP EP13739906.9A patent/EP2870770A2/en not_active Ceased
- 2013-07-09 KR KR1020157003454A patent/KR101692516B1/ko active Active
-
2016
- 2016-08-18 AU AU2016216674A patent/AU2016216674B2/en active Active
-
2017
- 2017-07-18 JP JP2017139415A patent/JP6609598B2/ja active Active
-
2018
- 2018-11-20 US US16/196,227 patent/US10536707B2/en active Active
-
2019
- 2019-10-28 JP JP2019195107A patent/JP6803443B2/ja active Active
- 2019-11-27 US US16/698,512 patent/US11039151B2/en active Active
-
2020
- 2020-11-30 JP JP2020198444A patent/JP7212025B2/ja active Active
-
2021
- 2021-05-18 US US17/323,139 patent/US11516485B2/en active Active
-
2022
- 2022-11-28 US US18/070,255 patent/US12058351B2/en active Active
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12058351B2 (en) | Power aware video decoding and streaming | |
| US11695991B2 (en) | Power aware adaptation for video streaming | |
| US10063921B2 (en) | Power aware adaptation for video streaming | |
| KR20150128848A (ko) | 비디오 스트리밍을 위한 전력 인식 적응 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FG | Grant or registration |