MX2012011623A - Establecimiento de una videoconferencia durante una llamada telefonica. - Google Patents

Establecimiento de una videoconferencia durante una llamada telefonica.

Info

Publication number
MX2012011623A
MX2012011623A MX2012011623A MX2012011623A MX2012011623A MX 2012011623 A MX2012011623 A MX 2012011623A MX 2012011623 A MX2012011623 A MX 2012011623A MX 2012011623 A MX2012011623 A MX 2012011623A MX 2012011623 A MX2012011623 A MX 2012011623A
Authority
MX
Mexico
Prior art keywords
video
image
module
videoconference
images
Prior art date
Application number
MX2012011623A
Other languages
English (en)
Inventor
Elizabeth C Cranfill
Stephen O Lemay
Joe S Abuan
Hsi-Jung Wu
Xiaosong Zhou
Roberto Garcia Jr
Hyeonkuk Jeong
Haitao Guo
Douglas Price
Dazhong Zhang
Berkat S Tung
James O Normile
Yan Yang
David A Eldred
Andrew Yanowitz
Ting Chen
David D Kuo
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of MX2012011623A publication Critical patent/MX2012011623A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/155Conference systems involving storage of or access to video conference sessions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • H04M1/026Details of the structure or mounting of specific components
    • H04M1/0264Details of the structure or mounting of specific components for a camera module assembly
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27453Directories allowing storage of additional subscriber data, e.g. metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/617Upgrading or updating of programs or applications for camera control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2624Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of whole input images, e.g. splitscreen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/142Constructional details of the terminal equipment, e.g. arrangements of the camera and the display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/50Telephonic communication in combination with video communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Library & Information Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Studio Devices (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Algunas modalidades proporcionan un método para iniciar una videoconferencia usando un primer dispositivo móvil. El método presenta, durante una llamada de audio a través de una red de comunicación inalámbrica con un segundo dispositivo, un artículo de interfaz de usuario (UI) seleccionable sobre el primer dispositivo móvil para conmutar desde la llamada de audio a la videoconferencia. El método recibe una selección del artículo de UI seleccionable. El método inicia la videoconferencia sin terminar la llamada de audio. El método termina la llamada de audio antes de permitir que el primer dispositivo móvil y el segundo dispositivo presenten datos de audio y de video intercambiados a través de la videoconferencia.

Description

ESTABLECIMIENTO DE UNA VIDEOCONFERENCIA DURANTE UNA LLAMADA TELEFÓNICA ANTECEDENTES Muchos de los dispositivos portátiles actuales, tales como teléfonos inteligentes, proporcionan funcionalidad de captura de video. Un usuario del dispositivo portátil puede capturar tanto imágenes fijas como video a través de una cámara en el teléfono. Sin embargo, para transmitir video capturado a un tercero, el usuario debe generalmente ya sea enviar el video directamente a un tercero o descargar el video a otra ubicación (por ejemplo, un sitio de alojamiento de video de Internet) después de que se hace el video que es capturado. Desafortunadamente, esto no permite a un tercero ver el flujo de video en vivo como es capturado por el dispositivo portátil.
Además, los dispositivos portátiles estándares son solamente equipados con una cámara, y el procesamiento de información a partir de esta cámara única es bastante difícil. Un dispositivo ideal tendría múltiples cámaras y podría enviar el video en vivo que es una composición del video desde por lo menos dos cámaras. Este es un problema especialmente difícil en vista de los recursos limitados disponibles para los dispositivos portátiles, tanto en términos del dispositivo que procesa múltiples flujos de video capturados como en una red a la cual se conecta el dispositivo que maneja la transmisión de los flujos de video en vivo.
BREVE DESCRIPCIÓN Algunas modalidades de la invención proporcionan un dispositivo móvil con dos cámaras que pueden tomar fotografías y videos. El dispositivo móvil de algunas modalidades tiene una pantalla de visualización para visualizar las imágenes de fotografía capturadas y las imágenes de video. También incluye un almacenamiento para almacenar las imágenes capturadas para la transmisión posterior a otro dispositivo. El dispositivo además tiene una interfaz de red que permite al dispositivo transmitir las imágenes capturadas a uno o más dispositivos durante una sesión de comunicación en tiempo real entre los usuarios de los dispositivos. El dispositivo también incluye un codificador que se puede usar para codificar las imágenes capturadas para el almacenamiento local o para la transmisión a otro dispositivo. El dispositivo móvil además incluye un descodificador que permite al dispositivo descodificar imágenes capturadas por otro dispositivo durante una sesión de comunicación en tiempo real o para descodificar imágenes almacenadas localmente.
Un ejemplo de una sesión de comunicación en tiempo real que involucra la transmisión de las imágenes de video capturadas es una videoconferencia. En algunas modalidades, el dispositivo móvil puede transmitir solamente las imágenes de video capturadas de una cámara en cualquier tiempo dado durante una videoconferencia. En otras modalidades, sin embargo, el dispositivo móvil puede transmitir las imágenes de video capturadas desde ambas de sus cámaras simultáneamente durante una videoconferencia u otra sesión de comunicación en tiempo real.
Durante una videoconferencia con otro dispositivo, el dispositivo móvil de algunas modalidades puede transmitir otros tipos de contenido junto con el video capturado por una o ambas de sus cámaras. Un ejemplo de otro contenido de tal clase incluye imágenes de fotografía de baja o alta resolución que son capturadas por una de las cámaras del dispositivo, mientras que la otra cámara del dispositivo está capturando un video que se utiliza en la videoconferencia. Otros ejemplos de otro contenido de tal clase incluyen (1 ) archivos y otro contenido almacenado en el dispositivo, (2) la visualización de pantalla del dispositivo (es decir, el contenido que es visualizado sobre la pantalla del dispositivo), (3) el contenido recibido desde otro dispositivo durante una videoconferencia u otra sesión de comunicación en tiempo real, etc.
Los dispositivos móviles de algunas modalidades emplean técnicas de ajuste en conferencia novedosas para hacer ajustes durante una videoconferencia. Por ejemplo, mientras que se transmite solamente el video capturado de una cámara durante una videoconferencia, el dispositivo móvil de algunas modalidades puede conmutar dinámicamente a la transmisión de un video capturado por su otra cámara. En tales situaciones, el dispositivo móvil de algunas modalidades notifica a cualquier otro dispositivo que participa en la videoconferencia de esta conmutación de modo que este otro dispositivo puede proporcionar una transición uniforme en su fin entre los videos capturados por las dos cámaras.
En algunas modalidades, la petición para conmutar las cámaras no solamente puede originarse en el dispositivo "local" que conmuta entre sus cámaras durante la videoconferencia, sino también puede originarse desde el otro dispositivo "remoto" que está recibiendo el video capturado por el dispositivo local. Por otro parte, la admisión de un dispositivo a dirigir otro dispositivo para conmutar las cámaras es solamente un ejemplo de una capacidad de control remoto de los dispositivos de algunas modalidades. Ejemplos de otras operaciones que pueden ser dirigidas a un dispositivo remotamente en algunas modalidades incluyen las operaciones de ajuste de exposición (por ejemplo, auto-exposición), operaciones de ajuste de enfoque (por ejemplo, auto-enfoque), etc. Otro ejemplo de un ajuste en conferencia novedoso que puede ser localmente o remotamente especificado es la identificación de una región de interés (ROI) en un video capturado, y el uso de esta identificación de ROI para modificar el comportamiento de la cámara de captura, para modificar la operación de procesamiento de imagen del dispositivo con la cámara de captura, o para modificar la operación de codificación del dispositivo con la cámara de captura.
Todavía otro ejemplo de un ajuste en conferencia novedoso de algunas modalidades involucra modificaciones en tiempo real de las visualizaciones de video compuestas, que son generadas por los dispositivos. Específicamente, en algunas modalidades, los dispositivos móviles generan visualizaciones compuestas que simultáneamente visualizan múltiples videos capturados por múltiples cámaras de uno o más dispositivos. En algunos casos, las visualizaciones compuestas colocan los videos en áreas de visualización adyacentes (por ejemplo, en ventanas adyacentes). En otros casos, la visualización compuesta es una visualización de imagen-en-imagen (PIP) que incluye por lo menos dos áreas de visualización que muestran dos videos diferentes donde una de las áreas de visualización es un área de visualización principal de fondo y la otra es un área de visualización de inserción de primer plano que se sobrepone al área de visualización principal de fondo.
Las modificaciones en tiempo real de las visualizaciones de video compuestas en algunas modalidades involucran el movimiento de una o más de las áreas de visualización dentro de una visualización compuesta en respuesta a la selección de un usuario y el movimiento de las áreas de visualización. Algunas modalidades también rotan o giran la visualización compuesta durante una videoconferencia, cuando rota la pantalla del dispositivo que proporciona esta visualización compuesta. También, el dispositivo móvil de algunas modalidades permite al usuario del dispositivo permutar los videos en una visualización PIP (es decir, hacer que el video en la visualización de inserción de primer plano aparezca en la visualización principal de fondo mientras que se hace que el video en la visualización principal de fondo aparezca en la visualización de inserción de primer plano).
La Breve Descripción precedente se propone para servir como una breve introducción a algunas modalidades de la invención. No se propone para hacer una introducción o inspección de todo el tema inventivo divulgado en este documento. La Descripción Detallada que sigue y los Dibujos que son referidos en la Descripción Detallada además describirán las modalidades descritas en la Breve Descripción, así como otras modalidades. Por consiguiente, para entender todas las modalidades descritas por este documento, es necesaria una revisión completa del Sumario de la invención, Descripción Detallada y los Dibujos.
BREVE DESCRIPCIÓN DE LOS DIBUJOS Las características novedosas de la invención se exponen en las reivindicaciones adjuntas. Sin embargo, para propósito de explicación, varias modalidades de la invención se exponen en las siguientes figuras.
La Figura 1 ilustra una visualización compuesta de algunas modalidades.
La Figura 2 ilustra otra visualización compuesta de algunas modalidades.
La Figura 3 conceptualmente ¡lustra una arquitectura de software para un módulo de procesamiento y codificación de video de un dispositivo móvil de cámara doble de algunas modalidades.
La Figura 4 conceptualmente ilustra una unidad de procesamiento de imagen capturada de algunas modalidades.
La Figura 5 conceptualmente ilustra ejemplos de diferentes frecuencias de cuadro en base a diferentes intervalos de supresión vertical (VBIs).
La Figura 6 conceptualmente ¡lustra ejemplos de diferentes frecuencias de cuadro de intercalación en base a diferentes VBIs.
La Figura 7 conceptualmente ilustra otra unidad de procesamiento de imagen capturada de algunas modalidades.
La Figura 8 conceptualmente ilustra otra unidad de procesamiento de imagen capturada de algunas modalidades.
La Figura 9 conceptualmente ilustra una arquitectura de software para un módulo de videoconferencia y procesamiento de un dispositivo móvil de cámara doble de algunas modalidades.
La Figura 10 conceptualmente ilustra una secuencia de mensajería de petición de video conferencia de ejemplo de algunas modalidades.
La Figura 11 ilustra una interfaz de usuario de algunas modalidades para una operación de instalación de videoconferencia.
La Figura 12 ilustra una interfaz de usuario de algunas modalidades para aceptar una invitación a una videoconferencia.
La Figura 13 ilustra otra interfaz de usuario de algunas modalidades para aceptar una invitación a una videoconferencia.
La Figura 14 ilustra otra interfaz de usuario de algunas modalidades para una operación de instalación de videoconferencia.
La Figura 15 conceptualmente ilustra un proceso de algunas modalidades para ajustar una velocidad de transferencia de bit para una videoconferencia.
La Figura 16 conceptualmente ilustra otra arquitectura de software para un módulo de videoconferencia y procesamiento de un dispositivo móvil de cámara doble de algunas modalidades.
La Figura 17 conceptualmente ilustra otra arquitectura software para un dispositivo móvil de cámara doble de algunas modalidades.
La Figura 18 conceptualmente ilustra un proceso realizado por un administrador de videoconferencia de algunas modalidades tal como aquella ilustrada en la Figura 16.
La Figura 19 conceptualmente ilustra una arquitectura de software para un módulo de reducción de ruido temporal de algunas modalidades.
La Figura 20 conceptualmente ilustra un proceso de algunas modalidades para reducir el ruido temporal de imágenes de un video.
La Figura 21 conceptualmente ¡lustra un proceso realizado por un administrador de procesamiento de imagen de algunas modalidades tal como aquella ilustrada en la Figura 9.
La Figura 22 ilustra una interfaz de usuario de algunas modalidades para una operación de ajuste de exposición.
La Figura 23 ilustra una interfaz de usuario de algunas modalidades para una operación de ajuste de enfoque.
La Figura 24 conceptualmente ilustra un proceso de corrección de perspectiva realizado por un administrador de procesamiento de imagen de algunas modalidades tal como aquella ilustrada en la Figura 16.
La Figura 25 conceptualmente ilustra las operaciones de corrección de perspectiva de ejemplo de algunas modalidades.
La Figura 26 conceptualmente ¡lustra una arquitectura de software para un controlador de codificador de algunas modalidades, tal como aquella ilustrada en la Figura 16.
La Figura 27 conceptualmente ¡lustra un proceso de redimensionamiento de imagen realizado por un controlador de codificador de algunas modalidades tal como aquella ilustrada en la Figura 26.
La Figura 28 conceptualmente ilustra una arquitectura de software para un controlador de descodificador de algunas modalidades tal como aquella ilustrada en la Figura 16.
La Figura 29 conceptualmente ilustra un proceso de extracción de imagen realizado por un controlador de descodificador de algunas modalidades tal como aquella ilustrada en la Figura 28.
La Figura 30 ilustra un controlador de codificador de algunas modalidades que incluye dos controladores de velocidad.
La Figura 31 conceptualmente ilustra una arquitectura de software para un administrador de red de algunas modalidades tal como aquella ilustrada en la Figura 16.
La Figura 32 ¡lustra una interfaz de usuario de algunas modalidades para una operación de definición a la esquina.
La Figura 33 ilustra otra interfaz de usuario de algunas modalidades para una operación de definición a la esquina.
La Figura 34 ilustra una interfaz de usuario de algunas modalidades para una operación de rotación de la visualización PIP.
La Figura 35 ilustra otra interfaz de usuario de algunas modalidades para una operación de rotación de la visualización PIP.
La Figura 36 ilustra otra interfaz de usuario de algunas modalidades para una operación de rotación de la visualización PIP.
La Figura 37 ilustra otra interfaz de usuario de algunas modalidades para una operación de rotación de la visualización PIP.
La Figura 38 ilustra una interfaz de usuario de algunas modalidades para redimensionar un área de visualización de inserción de primer plano en una visualización PIP.
La Figura 39 ilustra otra interfaz de usuario de algunas modalidades para redimensionar un área de visualización de inserción en una visualización PIP.
La Figura 40 ¡lustra otra interfaz de usuario de algunas modalidades para redimensionar un área de visualización de inserción en una visualización PIP.
La Figura 41 ilustra otra interfaz de usuario de algunas modalidades para redimensionar un área de visualización de inserción en una visualización PIP.
La Figura 42 ilustra una interfaz de usuario de algunas modalidades para identificar una región de interés en una visualización.
La Figura 43 ilustra otra interfaz de usuario de algunas modalidades para identificar una región de interés en una visualización.
La Figura 44 ilustra otra interfaz de usuario de algunas modalidades para identificar una región de interés en una visualización.
La Figura 45 ilustra un proceso de algunas modalidades para realizar una operación de conmutación de cámara local sobre un dispositivo móvil de cámara doble.
La Figura 46 ilustra una interfaz de usuario de algunas modalidades para una operación de conmutación de cámara.
La Figura 47 ilustra otra interfaz de usuario de algunas modalidades para una operación de conmutación de cámara.
La Figura 48 ilustra otra interfaz de usuario de algunas modalidades para una operación de conmutación de cámara.
La Figura 49 ilustra otra interfaz de usuario de algunas modalidades para una operación de conmutación de cámara.
La Figura 50 ilustra un proceso de algunas modalidades para realizar una operación de conmutación de cámara remota sobre un dispositivo móvil de cámara doble.
La Figura 51 ilustra una interfaz de usuario de algunas modalidades para una operación de conmutación de cámara de control remoto.
La Figura 52 muestra otra interfaz de usuario de algunas modalidades para una operación de conmutación de cámara de control remoto.
La Figura 53 ilustra otra interfaz de usuario de algunas modalidades para una operación de conmutación de control remoto.
La Figura 54 ilustra otra interfaz de usuario de algunas modalidades para una operación de conmutación de cámara de control remoto.
La Figura 55 conceptualmente ilustra un proceso de algunas modalidades para realizar una operación de ajuste de exposición.
La Figura 56 ilustra una interfaz de usuario de algunas modalidades para una operación de ajuste de exposición.
La Figura 57 ilustra otra interfaz de usuario de algunas modalidades para una operación de ajuste de exposición.
La Figura 58 ilustra otra interfaz de usuario de algunas modalidades para una operación de ajuste de exposición.
La Figura 59 conceptualmente ilustra un proceso de ajuste de exposición realizado por un administrador de procesamiento de imagen de algunas modalidades tal como aquella ¡lustrada en la Figura 16.
La Figura 60 conceptualmente ilustra las operaciones de ajuste de exposición de algunas modalidades.
La Figura 61 conceptualmente ilustra un proceso de algunas modalidades para realizar una operación de ajuste de enfoque.
La Figura 62 ilustra una interfaz de usuario de algunas modalidades para una operación de ajuste de enfoque.
La Figura 63 ilustra otra interfaz de usuario de algunas modalidades para una operación de ajuste de enfoque.
La Figura 64 ilustra otra interfaz de usuario de algunas modalidades para una operación de ajuste de enfoque.
La Figura 65 ilustra diferentes arreglos de visualización de algunas modalidades para los videos capturados de uno o más dispositivos móviles de cámara doble.
La Figura 66 ilustra una interfaz de usuario de algunas modalidades para sobreponer un primer plano de un video de inserción sobre un video de fondo en una visualización PIP.
La Figura 67 ilustra una técnica de algunas modalidades para determinar un primer plano de imágenes de video.
La Figura 68 ilustra una interfaz de usuario de algunas modalidades para permutar una visualización de inserción con una visualización de fondo en una visualización PIP durante una videoconferencia.
La Figura 69 ilustra una interfaz de usuario de algunas modalidades para una operación de definición a la esquina.
La Figura 70 ¡lustra una ¡nterfaz de usuario de algunas modalidades para una operación de definición a la esquina y empuje.
La Figura 71 ilustra una ¡nterfaz de usuario de algunas modalidades para una operación de rotación de la visualización PIP.
La Figura 72 ilustra otra interfaz de usuario de algunas modalidades para una operación de rotación de la visualización PIP.
La Figura 73 ilustra una interfaz de usuario de algunas modalidades para seleccionar un video desde dos videos remotos durante una videoconferencia.
La Figura 74 ilustra una interfaz de usuario de algunas modalidades para seleccionar un video desde dos videos locales durante una videoconferencia.
La Figura 75 ilustra una interfaz de usuario de algunas modalidades para una selección de pre-conferencia de un video para el uso para la videoconferencia.
La Figura 76 ilustra ejemplos de la asignación de ancho de banda entre dos videos capturados por un dispositivo móvil de cámara doble de algunas modalidades.
La Figura 77 conceptualmente ilustra un módulo arbitrador de algunas modalidades para administrar los controladores de velocidad de un dispositivo móvil de cámara doble.
La Figura 78 conceptualmente ilustra un método de algunas modalidades para codificar imágenes capturadas por cámaras de un dispositivo móvil de cámara doble.
La Figura 79 conceptualmente ¡lustra otro método de algunas modalidades para codificar imágenes capturadas por cámaras de un dispositivo móvil de cámara doble.
La Figura 80 ¡lustra compuestos de imagen de ejemplo para el método ilustrado en la Figura 79.
La Figura 81 conceptualmente ¡lustra otro método de algunas modalidades para codificar imágenes capturadas por cámaras de un dispositivo móvil de cámara doble.
La Figura 82 conceptualmente ilustra un método de algunas modalidades para descodificar imágenes capturadas por cámaras de un dispositivo móvil de cámara doble.
La Figura 83 conceptualmente ¡lustra otro método de algunas modalidades para descodificar imágenes capturadas por cámaras de un dispositivo móvil de cámara doble.
La Figura 84 conceptualmente ilustra otra arquitectura de software para un módulo de videoconferencia y procesamiento de un dispositivo móvil de cámara doble de algunas modalidades.
La Figura 85 ¡lustra una interfaz de usuario de algunas modalidades para una videoconferencia de múltiples participantes.
La Figura 86 ilustra otra interfaz de usuario de algunas modalidades para una videoconferencia de múltiples participantes.
La Figura 87 ilustra otra interfaz de usuario de algunas modalidades para una videoconferencia de múltiples participantes.
La Figura 88 conceptualmente ilustra una arquitectura de interfaz de programación de aplicación (API) de algunas modalidades.
La Figura 89 ilustra una arquitectura para un dispositivo de computación móvil de cámara doble de algunas modalidades.
La Figura 90 conceptualmente ilustra un dispositivo de entrada/salida (l/O) táctil de algunas modalidades.
La Figura 91 conceptualmente ilustra un sistema de comunicación de ejemplo de algunas modalidades.
La Figura 92 conceptualmente ilustra otro sistema de comunicación de ejemplo de algunas modalidades.
DESCRIPCIÓN DETALLADA En la siguiente descripción, numerosos detalles se exponen para el propósito de explicación. Sin embargo, uno de habilidad ordinaria en la técnica comprenderá que la invención puede ser llevada a la práctica sin el uso de estos detalles específicos. En otros casos, estructuras y dispositivos bien conocidos se muestran en forma de diagrama de bloques con el fin de no confundir la descripción de la invención con detalle innecesario.
Algunas modalidades de la invención proporcionan un dispositivo móvil con dos cámaras que pueden tomar fotografías y videos. Ejemplos de dispositivos móviles incluyen teléfonos móviles, teléfonos inteligentes, asistentes digitales personales (PDAs), computadoras portátiles, computadoras personales de tableta, o cualquier otro tipo de dispositivo de computación móvil. Como se utiliza en este documento, las fotografías se refieren a imágenes de fotografía fijas que son tomadas por la cámara una a la vez en un modo de una sola fotografía, o varias a la vez en un modo de acción rápida. El video, por otro parte, se refiere a una secuencia de imágenes de video que son capturadas por una cámara en una frecuencia particular, que es frecuentemente referida como frecuencia de cuadro. Las frecuencias de cuadros típicas para capturar video son 25 cuadros por segundo (fps), 30 fps y 60 fps. Las cámaras del dispositivo móvil de algunas modalidades pueden capturar imágenes de video (es decir, cuadros de video) en estas y otras frecuencias de cuadro.
El dispositivo móvil de algunas modalidades (1 ) puede visualizar las imágenes de fotografía e imágenes de video capturadas, (2) puede almacenar las imágenes capturadas para la transmisión posterior a otro dispositivo, (3) puede transmitir las imágenes capturadas a uno o más dispositivos durante una sesión de comunicación en tiempo real entre los usuarios de los dispositivos, y (4) puede codificar las imágenes capturadas para el almacenamiento local o para la transmisión a otro dispositivo.
Un ejemplo de una sesión de comunicación en tiempo real que involucra la transmisión de las imágenes de video capturadas es una videoconferencia. En algunas modalidades, el dispositivo móvil solamente puede transmitir las imágenes de video capturadas de una cámara en cualquier tiempo dado durante una videoconferencia. En otras modalidades, sin embargo, el dispositivo móvil puede transmitir imágenes de video capturadas desde ambas de sus cámaras simultáneamente durante una videoconferencia u otra sesión de comunicación en tiempo real.
Los dispositivos móviles de algunas modalidades generan visualizaciones compuestas que incluyen la visualización simultánea de múltiples videos capturados por múltiples cámaras en uno o más dispositivos. En algunos casos, las visualizaciones compuestas colocan los videos en áreas de visualización adyacentes (por ejemplo, en ventanas adyacentes). La Figura 1 ilustra un ejemplo tal de una visualización compuesta 100 que Incluye dos áreas de visualización adyacentes 105 y 110 que simultáneamente visualizan dos videos capturados por dos cámaras de un dispositivo o capturadas por dos cámaras de dos diferentes dispositivos que están en una videoconferencia.
En otros casos, la visualización compuesta es una visualización PIP que incluye por lo menos dos áreas de visualización que muestran dos videos diferentes, donde una de las áreas de visualización es un área de visualización principal de fondo y la otra es un área en visualización de inserción de primer plano que se sobrepone al área de visualización principal de fondo. La Figura 2 ilustra un ejemplo de tal clase de una visualización PIP compuesta 200. Esta visualización PIP compuesta 200 incluye un área de visualización principal de fondo 205 y un área de visualización de inserción de primer plano 210 que se sobrepone al área de visualización principal de fondo. Las dos áreas de visualización 205 y 210 simultáneamente visualizan los dos videos capturados por las dos cámaras de un dispositivo, o capturados por dos cámaras de dos diferentes dispositivos que están en una videoconferencla. Mientras que las visualizaciones PIP compuestas de ejemplo ilustradas y discutidas en este documento son similares a la visualización PIP compuesta 200, que muestra el área de visualización de inserción de primer plano completa 210 dentro del área visualización principal de fondo 205, son posibles otras visualizaciones PIP compuestas que tienen el área de visualización de inserción de primer plano 210 sobrepuesta a, pero no completamente dentro de, el área de visualización principal de fondo 205.
Además de transmitir el contenido de video durante una videoconferencia con otro dispositivo, el dispositivo móvil de algunas modalidades puede transmitir otros tipos de contenido junto con el contenido de la videoconferencia. Un ejemplo de otro contenido de tal clase incluye imágenes de fotografía de baja o alta resolución que son capturadas por una de las cámaras del dispositivo, mientras que la otra cámara de dispositivo está capturando un video que se utiliza en la videoconferencia. Otros ejemplos de otro contenido de tal clase incluyen (1 ) archivos y otro contenido almacenado sobre el dispositivo, (2) la visualización de pantalla del dispositivo (es decir, el contenido que es visualizado sobre la pantalla del dispositivo), (3) el contenido recibido de otro dispositivo durante una videoconferencia u otra sesión de comunicación en el tiempo real, etc.
Los dispositivos móviles de algunas modalidades emplean técnicas de ajuste en conferencia novedosas para hacer ajustes durante una videoconferencla. Por ejemplo, mientras que se transmite solamente el video capturado de una cámara durante una videoconferencia, el dispositivo móvil de algunas modalidades puede conmutar dinámicamente para transmitir el video capturado por su otra cámara. En tales situaciones, el dispositivo móvil de algunas modalidades notifica a cualquier otro dispositivo que participa en la videoconferencia de esta conmutación de modo que este otro dispositivo puede proporcionar una transición uniforme en su fin entre los videos capturados por las dos cámaras.
En algunas modalidades, la petición para conmutar las cámaras no solamente puede originarse en el dispositivo "local" que conmuta entre sus cámaras durante la videoconferencia, sino también puede originarse desde el otro dispositivo "remoto" que está recibiendo el video capturado por el dispositivo local. Por otra parte, la admisión de un dispositivo para dirigir otro dispositivo para conmutar las cámaras es solamente un ejemplo de una capacidad de control remoto de los dispositivos de algunas modalidades. Ejemplos de otras operaciones que se pueden dirigir a un dispositivo remotamente en algunas modalidades incluyen las operaciones de ajuste de exposición (por ejemplo, auto-exposición), las operaciones de ajuste de enfoque (por ejemplo, auto-enfoque), etc. Otro ejemplo de un ajuste en conferencia novedoso que puede ser localmente o remotamente especificado es la identificación de una región de interés (ROI) en un video capturado, y el uso de esta identificación de ROI para modificar el comportamiento de la cámara de captura, para modificar la operación de procesamiento de imagen del dispositivo con la cámara de captura, o para modificar la operación de codificación del dispositivo con la cámara de captura.
Todavía otro ejemplo de un ajuste en conferencia novedoso de algunas modalidades involucra modificaciones en tiempo real de las visualizaciones de video compuestas que son generadas por los dispositivos. Específicamente, en algunas modalidades, las modificaciones en tiempo real de las visualizaciones de video compuestas involucran mover una o más de las áreas de visualización dentro de una visualización compuesta en respuesta a una selección del usuario y el movimiento de las áreas de visualización. Algunas modalidades también rotan o giran la visualización compuesta durante una videoconferencia, cuando se rota la pantalla del dispositivo que proporciona esta visualización compuesta. También, el dispositivo móvil de algunas modalidades permite al usuario del dispositivo invertir el orden de los videos en una visualización PIP (es decir, hacer que el video en la visualización de inserción de primer plano aparezca en la visualización principal de fondo, mientras que hace que el video en la visualización principal de fondo aparezca en la visualización de inserción de primer plano).
Varias modalidades más detalladas se describen enseguida. La Sección I proporciona una descripción de la arquitectura de procesamiento de video de algunas modalidades. La Sección II luego describe la unidad de procesamiento de imagen capturada de algunas modalidades. En algunas modalidades, esta unidad es el componente del dispositivo que es responsable para procesar imágenes recientes capturadas por las cámaras del dispositivo.
Enseguida, la Sección III describe la arquitectura de videoconferencia de algunas modalidades. Esta sección también describe el módulo de videoconferencia de algunas modalidades, así como varias maneras para ajusfar una sola videoconferencia de cámara. La Sección IV luego describe las operaciones de ajuste y control en conferencia de algunas modalidades. La Sección V luego describe las características de videoconferencia de modalidades que transmiten y visualizan múltiples videos desde dispositivos individuales durante una videoconferencia. La Sección VI enseguida describe la transmisión de video en tiempo real junto con el contenido no en tiempo real durante una videoconferencia. Por último, la Sección VII describe la arquitectura de hardware del dispositivo de cámara doble de algunas modalidades.
I. CAPTURA DE VIDEO Y PROCESAMIENTO La Figura 3 conceptualmente ilustra un módulo de procesamiento y codificación de video 300 de un dispositivo móvil de cámara doble de algunas modalidades. En algunas modalidades, el módulo 300 procesa imágenes y codifica videos que son capturados por las cámaras del dispositivo móvil de cámara doble. Como se muestra en la Figura 3, este módulo 300 incluye una controlador de unidad de procesamiento de imagen capturada (CIPU) 305, un módulo de intercambio de medios 310, un controlador de codificador 320, y un módulo de procesamiento de video 325.
En algunas modalidades, el módulo de intercambio de medios 310 permite que los programas sobre el dispositivo que son consumidores y productores del contenido de medios que intercambien el contenido de medios e instrucciones considerando el procesamiento del contenido de medios. En el módulo de procesamiento y codificación de video 300, el módulo de intercambio de medios 310 de algunas modalidades dirige las instrucciones y el contenido de medios entre el módulo de procesamiento de video 325 y el controlador de CIPU 305, y entre el módulo de procesamiento de video 325 y el controlador de codificador 320. Para facilitar el direccionamiento de tales instrucciones y el contenido de medios, el módulo de intercambio de medios 310 de algunas modalidades proporciona un conjunto de interfaces de programación de aplicación (APIs) para los consumidores y productores del contenido de medios para el uso. En algunas de tales modalidades, el módulo de intercambio de medios 310 es un conjunto de una o más estructuras que es parte de un sistema de operación que funciona en el dispositivo móvil de cámara doble. Un ejemplo de tal módulo de intercambio de medios 310 es la estructura de Medios de Núcleo proporcionada por Apple Inc.
El módulo de procesamiento de video 325 realiza el procesamiento de imagen sobre las imágenes y/o los videos capturados por las cámaras del dispositivo. Ejemplos de tales operaciones incluyen las operaciones de ajuste de exposición, operaciones de ajuste de enfoque, corrección de perspectiva, ajuste de intervalo dinámico, redimensionamiento de imagen, composición de la imagen, etc. En algunas modalidades, algunas operaciones de procesamiento de imagen también se pueden realizar por el módulo de intercambio de medios 310. Por ejemplo, como se muestra en la Figura 3, el módulo de intercambio de medios 310 de algunas modalidades realiza una operación de reducción de ruido temporal (TNR) (por ejemplo, mediante TNR 315) que reduce el ruido en las imágenes de video capturadas por las cámaras del dispositivo. Ejemplos adicionales de tales operaciones de procesamiento de imagen del módulo de procesamiento de video 325 y el módulo de intercambio de medios 310 serán proporcionados enseguida.
A través del módulo de intercambio de medios 310, el módulo de procesamiento de video 325 se interconecta con el controlador de CIPU 305 y el controlador de codificador 320, como es mencionado en lo anterior. El controlador de CIPU 305 sirve como una interfaz de comunicación entre una unidad de procesamiento de imagen capturada (CIPU) 330 y el módulo de intercambio de medios 310. Como es descrito adicionalmente enseguida, la CIPU 330 es el componente del dispositivo de cámara doble que es responsable para procesar las imágenes capturadas durante las operaciones de captura de imagen o de captura de video de las cámaras del dispositivo. Del módulo de procesamiento de video 325 a través del módulo de intercambio de medios 310, el controlador de CIPU 305 recibe las peticiones para imágenes y/o videos de una o ambas de las cámaras del dispositivo. El controlador de CIPU 305 transmite tales peticiones a la CIPU 330, y en respuesta recibe las imágenes y/o videos solicitados de la CIPU 330, el controlador de CIPU 305 que luego envía al módulo de procesamiento de video 325 a través del módulo de intercambio de medios 310. A través del controlador de CIPU 305 y el módulo de intercambio de medios 310, el módulo de procesamiento de video 325 de algunas modalidades también envía instrucciones a la CIPU 330 con el fin de modificar algunas de sus operaciones (por ejemplo, para modificar una frecuencia de cuadro de la cámara, operación de ajuste de exposición, operación de ajuste de enfoque, etc.).
El controlador de codificador 320 sirve como una interfaz de comunicación entre el módulo de intercambio de medios 310 y un hardware de codificador 335 (por ejemplo, un chip o un microcircuito de codificador, un componente de codificación sobre un sistema en el chip, etc.). En algunas modalidades, el controlador de codificador 320 recibe las imágenes y solicita codificar las imágenes desde el módulo de procesamiento de video 325 a través del módulo de intercambio de medios 310. El controlador de codificador 320 envía las imágenes que son codificadas al codificador 335, que luego realiza la codificación de fotografía o codificación de video sobre las imágenes. Cuando el controlador de codificador 320 recibe las imágenes codificadas del codificador 335, el controlador de codificador 320 envía las imágenes codificadas nuevamente al módulo de procesamiento de video 325 a través del módulo de intercambio de medios 310.
En algunas modalidades, el módulo de procesamiento de video 325 puede realizar diferentes operaciones en las imágenes codificadas que recibe desde el codificador. Ejemplos de tales operaciones incluyen el almacenamiento de las imágenes codificadas en un almacenamiento del dispositivo, transmitir las imágenes codificadas en una videoconferencia a través de una interfaz de red del dispositivo, etc.
En algunas modalidades, algunos o todos los módulos del módulo de procesamiento y codificación de video 300 son implementados como parte de un sistema de operación. Por ejemplo, algunas modalidades implementan todos los cuatro componentes 305, 310, 320, y 325 de este módulo 300 como parte del sistema de operación del dispositivo. Otras modalidades implementan el módulo de intercambio de medios 310, el controlador de CIPU 305, y el controlador de codificador 320 como parte del sistema de operación del dispositivo, mientras que tiene el módulo de procesamiento de vídeo 325 como una aplicación que funciona en el sistema de operación. Todavía, son posibles otras implementaciones del módulo 300.
La operación del módulo de procesamiento y codificación de video 300 durante una sesión de captura de video ahora será descrita. Para iniciar una sesión de captura de video, el módulo de procesamiento de video 325 inicializa varios componentes que son necesarios para la sesión de captura de video. En algunas modalidades, estos componentes incluyen (1 ) la CIPU 330, (2) un módulo de escalación y composición (no mostrado) del módulo de procesamiento de video 325, (3) un módulo de procesamiento de imagen (no mostrado) del módulo de procesamiento de video 325, y (4) el codificador 335. También, el módulo de procesamiento de video 325 de algunas modalidades inicializa un administrador de red (no mostrado) cuando está participando en una videoconferencia.
A través del módulo de intercambio de medios 310 y el controlador de CIPU 305, el módulo de procesamiento de video envía su petición de inicialización a la CIPU 330, con el fin de tener una o ambas de las cámaras del dispositivo en inicio con captura de video. En algunas modalidades, esta petición especifica una frecuencia de cuadro particular, nivel de exposición, y tamaño de escalación para cada cámara que necesita capturar un video. En respuesta a esta petición, la CIPU 330 comienza a retornar las imágenes de video de las cámaras solicitadas en la frecuencia(s) especificada, nivel(es) de exposición y tamaño(s) de escalación. Estas imágenes de video se retornan al módulo de procesamiento de video 325 a través del controlador de CIPU 305 y el módulo de intercambio de medios 310, que, como se mencionó en lo anterior, realiza las operaciones de TNR sobre las imágenes de video antes de suministrarlas al módulo de procesamiento de video 325. En el módulo de procesamiento de video 325, las imágenes de video se almacenan en una memoria intermedia (no mostrada) para procesamiento de imagen adicional.
El módulo de procesamiento de imagen del módulo de procesamiento de video 325 recupera las imágenes de video almacenadas en la memoria intermedia para el procesamiento de video adicional. El módulo de escalación y composición luego recupera las imágenes de video procesadas con el fin de escalarlas si es necesario para la visualización en tiempo real sobre la pantalla de visualización de dispositivo. En algunas modalidades, este módulo crea imágenes compuestas a partir de las imágenes capturadas por las dos cámaras del dispositivo o a partir de imágenes capturadas por la cámara(s) del dispositivo junto con la cámara(s) de otro dispositivo durante una videoconferencia con el fin de proporcionar una visualización en tiempo real de las imágenes de video capturadas sobre el dispositivo o para crear una imagen de video compuesta para codificación.
Las imágenes de video procesadas y/o compuestas se suministran al codificador 335 a través del controlador de codificador 320 y el módulo de intercambio de medios 310. El codificador 335 luego codifica las imágenes de video. Las imágenes de video luego se retornan al módulo de procesamiento de video 325 (nuevamente a través del controlador de codificador 320 y el módulo de intercambio de medios 310) para el almacenamiento en el dispositivo o para la transmisión durante una videoconferencia. Cuando el dispositivo está participando en una videoconferencia, el administrador de red (que se inicializó por el módulo de procesamiento de video 325) luego recupera estas imágenes codificadas, las empaqueta y las transmite a uno o más de otros dispositivos a través de una interfaz de red (no mostrada) del dispositivo.
II. PROCESAMIENTO DE LA IMAGEN CAPTURADA A. Un solo Conducto o Trayecto Las imágenes capturadas por las cámaras del dispositivo móvil de cámara doble de algunas modalidades son imágenes no procesadas, recientes. Estas imágenes requieren conversión a un espacio de color particular antes de que las imágenes se puedan utilizar para otras operaciones, tal como la transmisión de las imágenes a otro dispositivo (por ejemplo, durante una videoconferencia), almacenamiento de las imágenes, o visualización de las imágenes. Además, las imágenes capturadas por las cámaras puede necesitar que sean procesadas para corregir los errores y/o distorsiones y para ajustar el color, tamaño de la imagen, etc. Por consiguiente, algunas modalidades realizan varias operaciones de procesamiento sobre las imágenes antes de almacenar, transmitir y visualizar tales imágenes. Parte del procesamiento de tales imágenes es realizada por la CIPU 330.
Un ejemplo de tal CIPU se ilustra en la Figura 4. Específicamente, esta figura conceptualmente ilustra una unidad de procesamiento de imagen capturada (CIPU) 400 de algunas modalidades. Esta CIPU 400 incluye un solo conducto o trayecto de procesamiento 485 que ya sea que procesa las imágenes de solamente una de las cámaras del dispositivo en un tiempo, o procesa las imágenes de ambas de las cámaras del dispositivo simultáneamente en un modo múltiplex de división de tiempo (es decir, en una manera intercalada en tiempo). El conducto de procesamiento 485 de la CIPU 400 se puede configurar diferentemente para dirigirse a diferenciar las características y/o ajustes de operación de las diferentes cámaras. Ejemplos de diferentes características de la cámara en algunas modalidades incluyen diferentes resoluciones, sensores de ruido, tipos de lente (lentes fijas o de zoom), etc. También, ejemplos de diferentes ajustes de operación bajo los cuales el dispositivo puede operar las cámaras en algunas modalidades incluyen el tamaño de resolución de imagen, frecuencia de cuadro, nivel de zoom, nivel de exposición, etc.
Como se muestra en la Figura 4, la CIPU 400 incluye un módulo de sensor 415, una memoria intermedia de línea/cuadro 417, un módulo de corrección de mal pixel (BPC) 420, un módulo de sombreado de lente (LS) 425, un módulo de desmosaicamiento 430, un módulo de balance de blanco (WB) 435, un módulo de gamma 440, una módulo de conversión de espacio de color (CSC) 445, un módulo de matiz, saturación y contraste (HSC) 450, un módulo de escalador 455, un módulo de filtro 460, una máquina estadística 465, dos conjuntos de registradores 470, y un módulo de controlador 475. En algunas modalidades, todos los módulos de la CIPU 400 se implementan en el hardware (por ejemplo, un ASIC, FPGA, un SOC con un microcontrolador, etc.), mientras que en otras modalidades, algunos o todos los módulos de la CIPU 400 se implementan en el software.
Como es mostrado en la Figura 4, el módulo de sensor 415 comunicativamente se acopla a dos arreglos de pixeles 410a y 410b y dos conjuntos de sensores 405a y 405b de las dos cámaras del dispositivo. En algunas modalidades, este acoplamiento comunicativo se facilita a través de cada ¡nterfaz de procesador industrial móvil (MIPI) del sensor de cámara.
A través de este acoplamiento comunicativo, el módulo de sensor 415 puede adelantar las instrucciones a las cámaras para controlar varios aspectos de cada unas de las operaciones de la cámara, tal como su nivel de potencia, nivel de zoom, enfoque, nivel de exposición, etc. En algunas modalidades, cada cámara tiene cuatro modos de potencia de operación. En el primer modo de potencia de operación, la cámara se apaga. Para el segundo modo de potencia de operación, la cámara se enciende, pero todavía no está configurada. En el tercer modo de potencia de operación, la cámara se enciende, el sensor de cámara se configura, y los pixeles del sensor de cámara están recolectando fotones y convirtiendo los fotones recolectados a valores digitales. Sin embargo, el sensor de cámara todavía no está enviando imágenes al módulo de sensor 415. Finalmente, en el cuarto modo de potencia de operación, la cámara está en el mismo modo de potencia de operación como el tercer modo de potencia excepto que la cámara ahora está enviando imágenes al módulo de sensor 415.
Durante la operación del dispositivo, las cámaras pueden conmutar de un modo de potencia de operación a otro cualquier número de veces. Cuando se conmutan los modos de potencia de operación, algunas modalidades requieren que las cámaras conmuten los modos de potencia de operación en el orden descrito en lo anterior. Por lo tanto, en esas modalidades, una cámara en el primer modo de potencia de operación solamente puede conmutar al segundo modo de potencia de operación. Cuando la cámara está en el segundo modo de potencia de operación, esta puede conmutar al primer modo de potencia de operación o al tercer modo de potencia de operación. De manera similar, la cámara puede conmutar desde el tercer modo de potencia de operación al segundo modo de potencia de operación o al cuarto modo de potencia de operación. Cuando la cámara está en cuarto modo de potencia de operación, ésta solamente puede conmutar nuevamente al tercer modo de potencia de operación.
Por otra parte, la conmutación de un modo de potencia de operación al siguiente o al modo de potencia de operación previo toma una duración de tiempo particular. Así, la conmutación entre dos o tres modos de potencia de operación es más lenta que la conmutación entre un modo de potencia de operación. Los diferentes modos de potencia de operación también consumen diferentes cantidades de potencia. Por ejemplo, el cuarto modo de potencia de operación consume la misma cantidad de potencia, el tercer modo de potencia de operación consume más potencia que el primero y el segundo, y el segundo modo potencia de operación consume más que el primero. En algunas modalidades, el primer modo de potencia de operación no consume algo de potencia.
Cuando una cámara no está en el cuarto modo de potencia de operación capturando imágenes, la cámara puede ser dejada en uno de los otros modos de potencia de operación. La determinación del modo de operación en el cual dejar la cámara no utilizada depende de cuanta potencia la cámara se deja consumir y que tan rápido la cámara puede necesitar responder a una petición para iniciar la captura de imágenes. Por ejemplo, una cámara configurada para operar en el tercer modo de potencia de operación (por ejemplo modo de reserva) consume más potencia que una cámara configurada para estar en el primer modo de potencia de operación (es decir, apagada). Sin embargo, cuando la cámara se instruye para capturar imágenes, la cámara que opera en el tercer modo de potencia de operación puede conmutar al cuarto modo de potencia de operación más rápido que la cámara que está operando en el primer modo de potencia de operación. Como tal, las cámaras se pueden configurar para operar en los diferentes modos de potencia de operación cuando no están capturando imágenes en base a diferentes requerimientos (por ejemplo, tiempo de respuesta a una petición para capturar imágenes, consumo de potencia).
A través de su acoplamiento comunicativo con cada cámara, el módulo de sensor 415 puede dirigir uno o ambos conjuntos de sensores de la cámara para iniciar la captura de imágenes cuando el módulo de procesamiento de video 325 solicita a una o ambas cámaras para iniciar la captura de imágenes y el módulo de sensor 415 recibe esta petición a través del módulo de controlador 475, como es descrito adicionalmente enseguida. Los filtros de Bayer se sobreponen sobre cada uno de los sensores de la cámara y de esta manera cada sensor de cámara hace salir imágenes de patrón de Bayer, que se almacenan en el arreglo de pixeles asociado con cada sensor de cámara. Una imagen de patrón de Bayer es una imagen donde cada pixel solamente almacena un valor de color: rojo, azul o verde.
A través de su acoplamiento con los arreglos de pixeles 410a y 410b, el módulo de sensor 415 recupera las imágenes de patrón de Bayer recientes almacenadas en los arreglos de pixeles de la cámara 410a y 410b. Al controlar la frecuencia en la cual el módulo de sensor 415 recupera las imágenes de un arreglo de pixeles de la cámara, el módulo de sensor 415 puede controlar la frecuencia de cuadro de las imágenes de video que están siendo capturadas por una cámara particular. Al controlar la frecuencia de su recuperación de imagen, el módulo de sensor 415 también puede intercalar el atractivo de las imágenes capturadas por las diferentes cámaras con el fin de intercalar el procesamiento de imagen del conducto de procesamiento de CIPU 485 de las imágenes capturadas desde las diferentes cámaras. El control del módulo de sensor 415 de su recuperación de imagen además es descrito enseguida en las sub-secciones II.A-1 y II.A.2.
El módulo de sensor 415 almacena las líneas de imagen (es decir, hileras de pixeles de una imagen) en la memoria intermedia de línea/cuadro 417, el módulo de sensor 415 que se recupera de los arreglos de pixeles 410a y 410b. Cada línea de imagen en la memoria intermedia de línea/cuadro 417 se procesa a través del conducto de procesamiento de CIPU 485. Como se muestra en la Figura 4, el conducto de procesamiento de CIPU 485 se forma por el módulo de BPC 420, el módulo de LS 425, el módulo de desmosaicamiento 430, el módulo de WB 435, el módulo de gamma 440, el módulo de CSC 445, el módulo de HSC 450, el módulo de escalador 455, y el módulo de filtro 460. En algunas modalidades, el conducto procesamiento de CIPU 485 procesa las imágenes de la memoria intermedia de línea/cuadro 417 en una base de linea por línea (es decir, hilera por hilera) mientras que en otras modalidades, el conducto de procesamiento de CIPU 485 procesa las imágenes completas desde la memoria intermedia de línea/cuadro 417 en una base de cuadro por cuadro.
En el conducto ejemplar ilustrado en la Figura 4, el módulo de BPC 420 es el módulo que recupera las imágenes desde la memoria intermedia de línea/cuadro 417. Este módulo realiza una operación de remoción de pixel malo que intenta corregir los pixeles malos en las imágenes recuperadas que podrían haber resultado de uno o más de los sensores de la cámara que son defectuosos (por ejemplo, los sensores de fotografía defectuosos no detectan las luz en todo, detectan la luz incorrectamente, etc.). En algunas modalidades, el módulo de BPC 420 detecta los pixeles malos al comparar un pixel particular en una imagen con uno o más pixeles vecinos en la imagen. Si la diferencia entre el valor del pixel particular y los valores de los pixeles vecinos es mayor que una cantidad de umbral, el valor del pixel particular es remplazado por el promedio de varios valores de pixeles vecinos que son del mismo color (es decir, rojo, verde y azul) como el pixel particular.
La operación del módulo de BPC 420 es en parte controlada por los valores almacenados para este módulo en dos conjuntos de registros 470 de la CIPU 400. Específicamente, para procesar las imágenes capturadas por las dos diferentes cámaras del dispositivo, algunas modalidades configuran el conducto de procesamiento de CIPU 485 diferentemente para cada cámara, como es mencionado en lo anterior. El conducto de procesamiento de CIPU 485 se configura para las dos cámaras diferentes al almacenar dos conjuntos diferentes de valores en los dos diferentes conjuntos de registros 470a (Ra) y 470b (Rb) de la CIPU 400. Cada conjunto de registros 470 incluye un registro (Ra o Rb) para cada uno de los módulos 420-460 dentro del conducto de procesamiento de CIPU 485. Cada registro en cada conjunto de registros almacena un conjunto de valores que define una operación del módulo del conducto de procesamiento. Por consiguiente, como se muestra en la Figura 4, el conjunto de registro 470a está para indicar el modo de operación de cada módulo de conducto de procesamiento para una cámara (cámara A) del dispositivo móvil de cámara doble, mientras que el conjunto de registros 470b está para indicar el modo de operación de cada módulo para la otra cámara (cámara B) del dispositivo móvil de cámara doble.
Un ejemplo de configuración del conducto de procesamiento de CIPU 485 diferentemente para cada cámara es configurar los módulos del conducto de procesamiento de CIPU 485 para procesar diferentes imágenes dimensionadas. Por ejemplo, si el sensor de cámara 405a es de 640x480 pixeles y el sensor de cámara 405b es 2048x1536 pixeles, el conjunto de registros 470a se configura para almacenar valores que instruyen a los módulos del conducto de procesamiento de CIPU 485 para procesar imágenes de 640x480 pixeles y el conjunto de registros 470b se configura para almacenar valores que instruyen a los módulos del conducto de procesamiento de CIPU 485 para procesar imágenes de 2048x1536 pixeles.
En algunas modalidades, diferentes configuraciones de conducto de procesamiento (es decir, valores de registro) se almacenan en diferentes ajustes de perfil. En algunas de tales modalidades, un usuario del dispositivo móvil se deja seleccionar uno de los ajustes de perfil (por ejemplo, a través de una interfaz de usuario visualizada en el dispositivo móvil) para ajustar la operación de una cámara(s). Por ejemplo, el usuario puede seleccionar un ajuste de perfil para configurar una cámara para capturar video de alta resolución, un ajuste de para configura la misma cámara para capturar video de baja resolución, o un ajuste de perfil para configurar ambas cámaras para capturar imágenes fijas de alta resolución. Diferentes configuraciones son posibles, que se pueden almacenar en muchos ajustes de perfil diferentes. En otra de tales modalidades, en lugar de permitir al usuario seleccionar un ajuste de perfil, un ajuste de perfil se selecciona automáticamente en base a que aplicación o actividad selecciona el usuario. Por ejemplo, si el usuario selecciona una aplicación de videoconferencia, un perfil que configura ambas cámaras para capturar video se selecciona automáticamente, si el usuario selecciona una aplicación de fotografía, un perfil que configura una de las cámaras para capturar imágenes fijas se selecciona automáticamente, etc.
Después del módulo de BPC 420, el módulo de LS 425 recibe las imágenes corregidas en pixeles malos. El módulo de LS 425 realiza una operación de corrección de sombreado de lente para corregir los defectos de imagen que son causados por las lentes de la cámara que producen efectos de declinación de luz (es decir, la luz se reduce hacia los bordes del sensor de cámara). Tales efectos causan que las imágenes sean iluminadas no uniformemente (por ejemplo, más oscuras en las esquinas y/o bordes). Para corregir estos defectos de la imagen, el módulo de LS 425 de algunas modalidades estima un modelo matemático de una declinación de iluminación de la lente. El modelo estimado se utiliza para compensar la declinación de lente de la imagen para iluminar uniformemente las porciones no igualmente iluminadas de la imagen. Por ejemplo, si una esquina de la imagen está a la mitad de la brillantez del centro de la imagen, el módulo de LS 425 de algunas modalidades multiplica el valor de pixeles de la esquina por dos con el fin de producir una imagen uniforme.
El módulo de desmosaicamiento 430 realiza una operación de desmosaicamiento para generar imágenes de color completas a partir de imágenes de colores muestreados. Como es mencionado en lo anterior, los sensores de la cámara hacen salir imágenes de patrón de Bayer, que son incompletas debido a que cada pixel de una imagen de patrón de Bayer almacena solamente un valor de color. El módulo de desmosaicamiento 430 reconstruye una imagen roja, verde, azul (RGB) a partir de una imagen de patrón de Bayer al interpolar los valores de color para cada conjunto de colores en la imagen de patrón de Bayer.
El módulo de WB 435 realiza una operación de balance de blanco sobre las imágenes RGB recibidas del módulo de desmosaicamiento 430 de modo que los colores del contenido de las imágenes son similares a los colores de tal contenido percibido por el ojo humano en la vida real. El módulo de WB 435 ajusta el balance de blanco al ajustar los colores de las imágenes para volver los colores neutros (por ejemplo, gris, blanco, etc.) correctamente. Por ejemplo, una imagen de una pieza de papel blanco bajo una luz incandescente puede aparecer amarilla, mientras que el ojo humano percibe la pieza de papel como blanca. Para tener en cuenta la diferencia entre el color de las imágenes que el sensor captura y lo que el ojo humano percibe, el módulo de WB 435 ajusta los valores de color de la imagen de modo que la imagen capturada apropiadamente refleja los colores percibidos por el ojo humano.
La máquina estadística 465 recolecta los datos de imagen en varias etapas del conducto de procesamiento de CIPU 485. Por ejemplo, la Figura 4 muestra que la máquina estadística 465 recolecta los datos de imagen después del módulo de LS 425, el módulo de desmosaicamiento 430, y el módulo de WB 435. Diferentes modalidades recolectan datos de cualquier número de diferentes etapas del conducto de procesamiento de CIPU 485. La máquina estadística 465 procesa los datos recolectados, y, en base a los datos procesados, ajusta las operaciones de los sensores de las cámaras 405a y 405b a través del módulo de controlador 475 y el módulo de sensor 415. Ejemplos de tales operaciones incluyen la exposición y el enfoque. Aunque la Figura 4 muestra la máquina estadística 465 que controla los sensores de las cámaras 405a y 405b a través del módulo de controlador 475, otras modalidades de la máquina estadística 465 controlan de los sensores de la cámara a través de solo el módulo de sensor 415.
Los datos procesados también se pueden utilizar para ajustar las operaciones de varios módulos de la CIPU 400. Por ejemplo, la máquina estadística 465 de algunas modalidades ajusta las operaciones del módulo de WB 435 en base a los datos recolectados después del módulo de WB 435. En algunas de tales modalidades, la máquina estadística 465 proporciona una función de balance de blanco automática (AWB) a utilizar los datos procesados para ajustar la operación de balance de blanco del módulo de WB 435. Otras modalidades pueden utilizar datos procesados recolectados de cualquier número de etapas del conducto de procesamiento de CIPU 485 para ajustar las operaciones de cualquier número de módulos dentro del conducto de procesamiento de CIPU 485. Además, la máquina estadística 465 también puede recibir instrucciones del módulo de controlador 475 para ajustar las operaciones de uno o más módulos del conducto de procesamiento de CIPU 485.
Después de recibir las imágenes desde el módulo de WB 435, el módulo de gamma 440 realiza una operación de corrección de gamma sobre la imagen para codificar y descodificar los valores de luminiscencia o triestímulo del sistema de la cámara. El módulo de gamma 440 de algunas modalidades corrige la gamma al convertir una señal lineal de 10-12 bit en una codificación no lineal de 8 bit con el fin de corregir la gamma de la imagen. Algunas modalidades corrigen la gamma al utilizar una tabla de consulta.
El módulo de CSC 445 convierte la imagen recibida desde el módulo de gamma 440 de un espacio de color a otro espacio de color. Específicamente, el módulo de CSC 445 convierte la imagen desde un espacio de color RGB a un espacio de color de luminancia y crominancia (YUV). Sin embargo, otras modalidades del módulo de CSC 445 pueden convertir las imágenes desde y hacia cualquier número de espacios de color.
El módulo de HSC 450 puede ajustar el matiz, saturación, contraste, o cualquier combinación de los mismos de las imágenes recibidas desde el módulo de CSC 445. El módulo de HSC 450 puede ajustar estas propiedades para reducir el ruido o mejorar las imágenes, por ejemplo. Para este caso, la saturación de imágenes capturadas por un sensor de cámara de bajo ruido se puede incrementar para hacer que las imágenes aparezcan más vividas. En contraste, la saturación de las imágenes capturadas por un sensor de cámara de alto ruido se puede disminuir para reducir el ruido de color de tales imágenes.
Después del módulo de HSC 450, el módulo de escalador 455 puede redimensionar las imágenes para ajustar la resolución de pixeles de la imagen o para ajustar el tamaño de datos de la imagen. El módulo de escalador 455 también puede reducir el tamaño de la imagen con el fin de ajustar una visualización más pequeña, por ejemplo. El módulo de escalador 455 puede escalar la imagen en un número de diferentes maneras. Por ejemplo, el módulo de escalador 455 puede escalar las imágenes hacia arriba (es decir, agrandar) y hacia abajo (es decir, contraer). El módulo de escalador 455 también puede escalar las imágenes proporcionalmente o escalar las imágenes anamórficamente.
El módulo de filtro 460 aplica una o más operaciones de filtro a las imágenes recibidas desde el módulo de escalador 455 para cambiar uno o más atributos de algunos o todos los pixeles de una imagen. Ejemplos de filtros incluyen un filtro de bajo paso, un filtro de alto paso, un filtro de banda de paso, un filtro bilateral, un filtro Gaussiano, entre otros ejemplos. Como tal, el módulo de filtro 460 puede aplicar cualquier número de filtros diferentes a las imágenes.
El módulo de controlador 475 de algunas modalidades es un microcontrolador que controla la operación de la CIPU 400. En algunas modalidades, el módulo de controlador 475 controla (1 ) la operación de los sensores de la cámara (por ejemplo, nivel de exposición) a través del módulo de sensor 415, (2) la operación del conducto de procesamiento de CIPU 485, (3) la sincronización del conducto de procesamiento de CIPU 485 (por ejemplo, cuando se conmutan los sensores de la cámara, cuando se conmutan los registradores, etc.), y (4) una luz instantánea/estroboscópica (no mostrada), que es parte del dispositivo móvil de cámara doble de algunas modalidades.
Algunas modalidades del módulo de controlador 475 procesan las instrucciones recibidas de la máquina estadística 465 y el controlador de CIPU 480. En algunas modalidades, las instrucciones recibidas desde el controlador de CIPU 480 son instrucciones del dispositivo móvil de cámara doble (es decir, recibidos del dispositivo local), mientras que en otras modalidades de las instrucciones recibidas del controlador de CIPU 480 son instrucciones desde otro dispositivo (por ejemplo, control remoto durante una videoconferencia). En base a las instrucciones procesadas, el módulo de controlador 475 puede ajustar la operación de la CIPU 400 al programar los valores de los registros 470. Por otra parte, el módulo de controlador 475 puede reprogramar dinámicamente los valores de los registradores 470 durante la operación de la CIPU 400.
Como es mostrado en la Figura 4, la CIPU 400 incluye un número de módulos en el conducto de procesamiento de CIPU 485. Sin embargo, uno de habilidad ordinaria comprenderá que la CIPU 400 se puede implementar con solamente unos cuantos de los módulos ilustrados o con módulos adicionales y diferentes. Además, el procesamiento realizado por los diferentes módulos se puede aplicar a imágenes en secuencias diferentes de la secuencia ilustrada en la Figura 4.
Una operación de ejemplo de la CIPU 400 ahora será descrita por referencia a la Figura 4. Para propósitos de explicación, el conjunto de registros Ra se utiliza para procesar las imágenes capturadas por el sensor de cámara 405a del dispositivo móvil de cámara doble y el conjunto de registros Rb se utiliza para procesar las imágenes capturadas por el sensor de cámara 405b del dispositivo móvil de cámara doble. El módulo de controlador 475 recibe instrucciones del controlador de CIPU 480 para producir imágenes capturadas por una de las cámaras del dispositivo móvil de cámara doble.
El módulo de controlador 475 luego inicializa varios módulos del conducto de procesamiento de CIPU 485 para procesar las imágenes capturadas por una de las cámaras del dispositivo móvil de cámara doble. En algunas modalidades, esto incluye que el módulo de controlador 475 verifique que se utilice el conjunto correcto de registros de los registros 470. Por ejemplo, si el controlador de CIPU 480 instruye al módulo de controlador 475 para producir imágenes capturadas por el sensor de cámara 405a, el módulo de controlador 475 verifica que el conjunto de registros Ra sea el conjunto de registros desde el cual se leen los módulos de la CIPU 400. Si no es así, el módulo de controlador 475 conmuta entre los conjuntos de registros de modo que los conjuntos de registros Ra es el conjunto que es leído por los módulos de la CIPU 400.
Para cada módulo en el conducto de procesamiento de CIPU 485, el modo de operación es indicado por los valores almacenados en el conjunto de registros Ra. Como se mencionó previamente, los valores en el conjunto de registros 470 se pueden reprogramar dinámicamente durante la operación de la CIPU 400. Así, el procesamiento de una imagen puede diferir del procesamiento de la siguiente imagen. Mientras que la discusión de esta operación de ejemplo de la CIPU 400 describe cada módulo en los valores de lectura de CIPU 400 almacenados en registros para indicar el modo de operación de los módulos, en algunas modalidades implementadas en software, los parámetros se pasan en cambio a los diversos módulos de la CIPU 400.
En algunas modalidades, el módulo de controlador 475 inicializa el módulo de sensor 415 al instruir al módulo de sensor 415 para retardar una cantidad de tiempo particular después de la recuperación de una imagen del arreglo de pixeles 410a. En otras palabras, el módulo de controlador 475 instruye al módulo de sensor 415 para recuperar las imágenes del arreglo de pixeles 410a en una frecuencia particular.
Enseguida, el módulo de controlador 475 instruye al sensor de cámara 405a a través del módulo de sensor 415 para capturar imágenes. En algunas modalidades, el módulo de controlador 475 también proporciona exposición y otros parámetros de operación de la cámara al sensor de cámara 405a. En otras modalidades, el sensor de cámara 405a utiliza valores de error para los parámetros de operación del sensor de cámara. En base a los parámetros, el sensor de cámara 405a captura una imagen reciente, que es almacenada en el arreglo de pixeles 410a. El módulo de sensor 415 recupera la imagen reciente del arreglo de pixeles 410a y envía la imagen a la memoria intermedia de línea/cuadro 417 para el almacenamiento antes de que el conducto de procesamiento de CIPU 485 procese la imagen.
Bajo ciertas circunstancias, las imágenes pueden ser bajadas por la memoria intermedia de línea/cuadro 417. Cuando los sensores de cámara 405a y/o 405b están capturando imágenes en una alta frecuencia, el módulo de sensor 415 pueden recibir y almacenar imágenes en la memoria intermedia de línea/cuadro 417 más rápido que el módulo de BPC 420 que puede recuperar las imágenes desde la memoria intermedia de línea/cuadro 417 (por ejemplo, capturando video de alta frecuencia de cuadro), y la memoria intermedia de línea/cuadro 417 llegará a ser completa. Cuando esto sucede, la memoria intermedia de línea/cuadro 417 de algunas modalidades deja caer las imágenes (es decir, cuadros) basado en una base de primero dentro, primero fuera. Esto es, cuando la memoria intermedia de línea/cuadro 417 deja caer una imagen, la memoria intermedia de línea/cuadro 417 deja caer la imagen que se recibió antes de todas las otras imágenes en la memoria intermedia de línea/cuadro 417.
El procesamiento de la imagen mediante el conducto de procesamiento de CIPU 485 inicia mediante el módulo de BPC 420 que recupera la imagen desde la memoria intermedia de línea/cuadro 417 para corregir cualquiera de los pixeles malos en la imagen. El módulo de BPC 420 luego envía la imagen al módulo de LS 425 para corregir cualquier iluminación no uniforme en la imagen. Después de que se corrige la iluminación de la imagen, el módulo de LS 425 envía la imagen al módulo de desmosaicamiento 430 donde procesa la imagen reciente para generar una imagen RGB a partir de la imagen reciente. Enseguida, el módulo de WB 435 recibe la imagen de RGB desde el módulo de desmosaicamiento 430 y ajusta el balance de blanco de la imagen RGB.
Como es mencionado en lo anterior, la máquina estadística 465 puede tener algunos datos recolectados en varios puntos del conducto de procesamiento de CIPU 485. Por ejemplo, la máquina estadística 465 recolecta los datos después del módulo de LS 425, el módulo de desmosaicamiento 430, y el módulo de WB 435 como es ¡lustrado en la Figura 4. En base a los datos recolectados, la máquina estadística 465 puede ajustar la operación del sensor de cámara 405a, la operación de uno o más módulos en el conducto de procesamiento de CIPU 485, o ambos, con el fin de ajustar la captura de imágenes subsecuentes a partir del sensor de cámara 405a. Por ejemplo, en base a los datos recolectados, la máquina estadística 465 puede determinar que el nivel de exposición de la imagen actual es muy bajo y, así instruir al sensor de cámara 405a a través del módulo de sensor 415 a incrementar el nivel de exposición para las imágenes subsecuentemente capturadas. Así, la máquina estadística 465 de algunas modalidades opera como un circuito de retroalimentación para algunas operaciones de procesamiento.
Después de que el módulo de WB 435 ajusta el balance de blanco de la imagen, éste envía la imagen al módulo de gamma 440 para corrección de gamma (por ejemplo, ajustar la curva de gamma de la imagen). El módulo de CSC 445 recibe la imagen corregida en gamma del módulo de gamma 440 y realiza la conversión de espacio de color. En este ejemplo, el módulo de CSC 445 convierte la imagen RGB a una imagen de YUV. En otras palabras, el módulo CSC 445 convierte una imagen que es representada en un espacio de color RGB a una imagen que es representada en un espacio de color de YUV. El módulo de HSC 450 recibe la imagen de YUV desde el módulo de CSC 445 y ajusta el matiz, saturación y atributos de contraste de varios pixeles en la imagen. Después del módulo de HSC 450, el módulo de escalador 455 luego redimensiona la imagen (por ejemplo, agrandamiento o contracción de la imagen). El módulo de filtro 460 aplica uno o más filtros sobre la imagen después de recibir la imagen desde el módulo de escalador 455. Finalmente, el módulo de filtro 460 envía la imagen procesada al controlador de CIPU 480.
En este ejemplo de la operación de la CIPU 400 descrito en lo anterior, cada módulo en el conducto de procesamiento de CIPU 485 procesó la imagen de alguna manera. Sin embargo, otras imágenes procesada por la CIPU 400 no pueden requerir procesamiento por todos los módulos del conducto de procesamiento de CIPU 485. Por ejemplo, una imagen no puede requerir ajuste de balance de blanco, corrección de gamma, escalación o filtración. Como tal, la CIPU 400 puede procesar imágenes de cualquier número de manera en base a una variedad de la entrada recibida, tal como instrucciones del controlador de CIPU 480 o los datos recolectados por la máquina estadística 465, por ejemplo.
Diferentes modalidades controlan la frecuencia en la cual se procesan las imágenes (es decir, frecuencia de cuadro) diferentemente. Una manera de controlar la frecuencia de cuadro es a través de la manipulación de los intervalos de supresión verticales (VBI). Para algunas modalidades que recuperan las líneas de imagen para procesar imágenes en una base de línea por línea, un VBI es la diferencia de tiempo entre la recuperación de la última línea de una imagen de un video capturado por una cámara del dispositivo móvil de cámara doble desde un arreglo de pixeles y la recuperación de la primera línea de la siguiente imagen del video desde el arreglo de pixeles. En otras modalidades, un VBI es la diferencia de tiempo entre la recuperación de una imagen de un video capturado por una cámara del dispositivo móvil de cámara doble desde un arreglo de pixeles y la recuperación de la siguiente imagen del video del arreglo de pixeles.
Un ejemplo donde VBI se puede utilizar está entre el módulo de sensor 415 y los arreglos de pixeles 410a y 410b. Por ejemplo, algunas modalidades del módulo de sensor 415 recuperan las imágenes de los arreglos de pixeles 410a y 410b en una base de línea por linea y otras modalidades del módulo de sensor 415 recuperan las imágenes de los arreglos de pixeles 410a y 410b en una base de imagen por imagen. Así, la frecuencia de cuadro se puede controlar al ajustar el VBI del módulo de sensor 415: al incrementar el VBI se reduce la frecuencia de cuadro y al disminuir el VBI se incrementa la frecuencia de cuadro. 1. Uso de VBI para una sola cámara: Control de Frecuencia de Cuadro La Figura 5 conceptualmente ilustra ejemplos de diferentes frecuencias de cuadro 505, 510, y 515 en base a diferentes VBIs. Cada secuencia muestra una imagen, que es capturada por una de las cámaras del dispositivo móvil de cámara doble, de una persona que sostiene una guitarra en varios casos de tiempo 525-555 a lo largo de la línea de tiempo 520. Además, el tiempo entre cada caso de tiempo 525-555 es el mismo y será referido como una unidad de tiempo. Para propósitos de explicación, la Figura 5 ahora será descrita con referencia al módulo de sensor 415 y el arreglo de pixeles 410a de la Figura 4. Como tal, cada imagen representa un caso de tiempo a lo largo de la línea de tiempo 520 en la cual el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410a.
En la frecuencia de cuadro de ejemplo 505, el VBI del módulo de sensor 415 para el arreglo de pixeles 410a se ajusta a tres unidades de tiempo (por ejemplo, por el módulo de controlador 475). Esto es, el módulo de sensor 415 recupera una imagen del arreglo de pixeles 410a cada tercer caso de tiempo a lo largo de la línea de tiempo 520. Como se muestra en la frecuencia de cuadro de ejemplo 505, el módulo de sensor 415 recupera una imagen en los casos de tiempo 525, 540, y 555. Así, la frecuencia de cuadro de ejemplo 505 tiene una frecuencia de cuadro de una imagen por tres unidades de tiempo.
La frecuencia de cuadro de ejemplo 510 es similar a la frecuencia de cuadro de ejemplo 505, excepto que el VBI se ajusta a dos unidades de tiempo. Así, el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410a cada segundo caso de tiempo a lo largo de la línea de tiempo 520. La frecuencia de cuadro de ejemplo 510 muestra el módulo de sensor 415 que recupera una imagen del arreglo de pixeles 410a en los casos de tiempo 525, 535, 545, y 555. Puesto que el VBI de la frecuencia de cuadro de ejemplo 510 es menor que VBI de la frecuencia de cuadro de ejemplo 505, la frecuencia de cuadro de la frecuencia de cuadro de ejemplo 510 es más alta que la frecuencia de cuadro de la frecuencia de cuadro de ejemplo 505.
La frecuencia de cuadro de ejemplo 515 también es similar a la frecuencia de cuadro de ejemplo 505, excepto que el VBI del módulo de sensor 415 para el arreglo de pixeles 410a se ajusta a una unidad de tiempo. Por lo tanto, el módulo de sensor 415 se instruye para recuperar una imagen del arreglo de pixeles 410a cada caso de tiempo a lo largo de la línea de tiempo 520. Como es ilustrado, el módulo de sensor 415 recupera una imagen del arreglo de pixeles 410a en los casos de tiempo 525-555. El VBI de la frecuencia de cuadro de ejemplo 515 es menor que los VBIs de las frecuencias de cuadro de ejemplo 505 y 510. Por lo tanto, la frecuencia de cuadro de la frecuencia de cuadra de ejemplo 515 es más alta que las frecuencias de cuadro de ejemplo 505 y 510. 2. Uso de VBI para dos cámaras Algunas modalidades pueden desear operar ambas cámaras del dispositivo móvil de cámara doble al mismo tiempo (por ejemplo, transmitir videos desde ambas cámaras durante una videoconferencia). Diferentes modalidades del dispositivo móvil de cámara doble que incluyen una solo conducto de procesamiento proporcionan diferentes mecanismos para operar simultáneamente ambas cámaras del dispositivo móvil de cámara doble.
Un mecanismo de tal clase es intercalar el procesamiento de imágenes capturadas por ambas cámaras al controlar cada VBI de la cámara. Esto es, una o más imágenes capturadas por una imagen son capturadas y procesadas durante el VBI de la otra cámara y viceversa. Puesto que la CIPU 400 descrita en lo anterior tiene un solo conducto de procesamiento 485, este mecanismo se puede implementar en la CIPU 400 de algunas modalidades. En tales modalidades, el módulo de sensor 415 recupera una imagen desde uno de los arreglos de pixeles 410a y 410b y la imagen recuperada se procesa mediante la CIPU 400 durante el VBI del módulo de sensor 415 para el otro arreglo de pixeles.
El BVI del módulo sensor 415 para cada arreglo de pixeles se puede ajustar a un valor particular. Sin embargo, en algunas modalidades, el VBI no se ajusta a un valor que es menor que el tiempo que toma para la CIPU 400 recuperar y procesar una imagen. Algunas modalidades ajustan la VBI del módulo de sensor 415 para cada arreglo de pixeles al mismo valor. Por ejemplo, cuando el VBI del módulo de sensor 415 para cada arreglo de pixeles se ajusta al mismo valor, el módulo de sensor 415 alternativamente recupera las imágenes de los arreglos de pixeles 410a y 410b. Otras modalidades ajustan el BVI del módulo de sensor 415 para cada arreglo de pixeles a diferentes valores. En algunas de tales modalidades, el VBI del módulo de sensor 415 para un arreglo de pixeles se ajusta a un múltiplo del VBI de módulo de sensor 415 para el otro arreglo, de pixeles. Por ejemplo, el VBI del módulo de sensor 415 para un arreglo de pixeles se ajusta a 2 unidades de tiempo, y el VBI del módulo de sensor 415 para otro arreglo de pixeles se ajusta a 4 unidades de tiempo. En este ejemplo, el módulo de sensor 415 recupera las dos imágenes de un arreglo de pixeles para cada imagen que el módulo de sensor 415 recupera desde el otro arreglo de pixeles.
La Figura 6 conceptualmente ilustra ejemplos de diferentes frecuencias de cuadro de intercalación 605, 610, y 615 en base a diferentes VBIs. La Figura 6 es similar a la Figura 5, excepto que la Figura 6 incluye trece casos de tiempo 625-685 a lo largo de la línea de tiempo 620. Además, la imagen de una persona que sostiene la guitarra representa un caso de tiempo a lo largo de la línea de tiempo 620 en la cual la imagen se recupera de un arreglo de pixeles, mientras que la imagen de la persona que usa gorra académica (es decir, un capirote de doctor) representa un caso de tiempo a lo largo de la línea de tiempo 620 en la cual la imagen se recupera desde el otro arreglo de pixeles.
Para propósitos de explicación, la imagen de la persona que sostiene la guitarra se asume que ha sido capturada por el sensor de cámara 405a desde el dispositivo móvil de cámara doble, y la imagen de la persona que usa la gorra académica se asume que se ha capturado por el sensor de cámara 405b del dispositivo móvil de cámara doble. Por otra parte, la Figura 6 ahora será descrita por referencia al módulo de sensor 415 y los arreglos de pixeles 410a y 410b de la Figura 4.
En la frecuencia de cuadro de intercalación de ejemplo 605, el VBI de módulo de sensor 415 para tanto el arreglo de pixeles 410a como el arreglo de pixeles 410b se ajusta a dos unidades de tiempo. Como es ilustrado en la frecuencia de cuadro de intercalación de ejemplo 605, el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410a en los casos de tiempo 625, 635, 645, 655, 665, 675, y 685 a lo largo de la línea de tiempo 620, y el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410b en los casos de tiempo 630, 640, 650, 660, 670, y 680 a lo largo de la línea de tiempo 620. Esto es, el módulo de sensor 415 alternativamente recupera una imagen desde un arreglo de pixeles cada unidad de tiempo.
La frecuencia de cuadro de intercalación de ejemplo 610 es similar a la frecuencia de cuadro de intercalación de ejemplo 605, excepto que el VBI del módulo sensor 415 para tanto el arreglo de pixeles 410a como el arreglo de pixeles 410b se ajusta a cuatro unidades de tiempo. La frecuencia de cuadro de intercalación de ejemplo 610 muestra el módulo de sensor 415 que recupera una imagen desde el arreglo de pixeles 410a en los casos de tiempo 625, 645, 665, y 685 a lo largo de la línea de tiempo 620, y el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410b en los casos de tiempo 635, 655, y 675 a lo largo de la línea de tiempo 620. Debido a que el VBI de la frecuencia de cuadro de intercalación de ejemplo 610 es más grande que el VBI de la frecuencia de cuadro de intercalación de ejemplo 605, la frecuencia de cuadro de la frecuencia de cuadro de intercalación de ejemplo 610 es menor que la frecuencia de cuadro de la frecuencia de cuadro de intercalación de ejemplo 605.
La frecuencia de cuadro de intercalación de ejemplo 615 también es similar a la frecuencia de cuadro de intercalación de ejemplo 605 excepto que el VBI del módulo de sensor 415 para tanto el arreglo de pixeles 410a como el arreglo de pixeles 410b se ajusta a seis unidades de tiempo. Como se muestra en la Figura 6, el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410a en los casos de tiempo 625, 655, y 685 a lo largo de la línea de tiempo 620, y el módulo de sensor 415 recupera una imagen desde el arreglo de pixeles 410b en los casos de tiempo 640 y 670 a lo largo de la línea de tiempo 620. El VBI de la frecuencia de cuadro de intercalación de ejemplo 615 es más grande que los VBIs de las frecuencias de cuadro de intercalación de ejemplo 605 y 610. Así, la frecuencia de cuadro de la frecuencia de cuadro de intercalación de ejemplo 615 es menor que las frecuencias de cuadro de intercalación de ejemplo 605 y 610.
B. Múltiples Conductos o Trayectos La Figura 7 conceptualmente ilustra otra unidad de procesamiento de imagen capturada (CIPU) 700 de algunas modalidades. La CIPU 700 realiza las mismas funciones como la CIPU 400 descrita en lo anterior, excepto que la CIPU 700 es implementada por dos conductos de procesamiento frontales, un almacenamiento, y un conducto de procesamiento posterior en lugar de un solo conducto de procesamiento. Como tal, la descripción de las funciones de la CIPU 700 será descrita por referencia a los módulos de la CIPU 400.
Como es mostrado, la CIPU 700 incluye un conducto de procesamiento frontal 715 para el sensor de cámara 405a y el arreglo de pixeles 410a, una conducto de procesamiento frontal 720 para el sensor de cámara 405b y el arreglo de pixeles 410b, un almacenamiento 725, un módulo de controlador 730, y un conducto de procesamiento posterior 735. Los sensores de cámara 405a y 405b de algunas modalidades son sensores de las cámaras del dispositivo móvil de cámara doble.
Los conductos de procesamiento frontales 715 y 720 de algunas modalidades realizan una porción del procesamiento de imagen de la CIPU 400. Como tal, diferentes modalidades pueden incluir un diferente número de módulos de la CIPU 400. Por ejemplo, cada uno de los conductos de procesamiento frontales 7 5 y 720 de algunas modalidades incluye el módulo de sensor 415, el módulo de BPC 420, el módulo de LS 425, el módulo de desmosaicamiento 430, el módulo de WB 435, y la máquina estadística 465 de la CIPU 400.
Aunque los conductos de procesamiento frontales 715 y 720 realizan el mismo tipo de procesamiento de imagen en virtud de tener los mismos módulos, cada módulo de cada uno de los conductos de procesamiento frontales 715 y 720 se pueden configurar de manera diferente a través de diferentes valores de registro como es descrito en lo anterior para la CIPU 400. Por otra parte, puesto que cada uno de los sensores de cámara 405a y 405b tiene su propio conducto de procesamiento frontal, los conductos de procesamiento frontales 715 y 720 pueden procesar imágenes independientemente entre sí. Por ejemplo, los conductos de procesamiento frontales 715 y 720 pueden procesar imágenes en paralelo (es decir, al mismo tiempo), en diferentes tiempos, y en frecuencias diferentes.
En algunas modalidades, cada uno de los conductos de procesamiento frontales 715 y 720 puede recuperar imágenes de su sensor de cámara correspondiente y arreglo de pixeles. Por ejemplo, el conducto de procesamiento frontal 715 recupera las imágenes capturadas por el sensor de cámara 405a desde el arreglo de pixeles 410a y el conducto de procesamiento frontal 720 recibe las imágenes capturadas por el sensor de cámara 405b desde el arreglo de pixeles 410b. Cuando uno de los conductos de procesamiento frontales 715 y 720 recupera una imagen de su sensor de cámara correspondiente y arreglo de pixeles, ese conducto de procesamiento frontal procesa la imagen y envía la imagen procesada al almacenamiento 725. También, cada uno de los conductos de procesamiento frontales 715 y 720 comunica con el módulo de controlador 730 como es descrito en lo anterior (por ejemplo, a través de la máquina estadística de cada conducto de procesamiento frontal).
El almacenamiento 725 de algunas modalidades almacena imágenes parcialmente procesadas para el conducto de procesamiento posterior 735 para finalizar el procesamiento. En estas modalidades, el almacenamiento 725 recibe las imágenes parcialmente procesadas desde los conductos de procesamiento frontales 715 y 720 y envía las imágenes parcialmente procesadas al conducto de procesamiento posterior 735. Algunas modalidades implementan el almacenamiento 725 como almacenamiento volátil (por ejemplo, memoria de acceso aleatorio (RAM)), mientras que otras modalidades implementan el almacenamiento 725 como almacenamiento no volátil (por ejemplo, memoria flash, disco duro, disco óptico, etc.). Además, el almacenamiento 725 de algunas modalidades es almacenamiento interno (por ejemplo, RAM), mientras que el almacenamiento 725 de otras modalidades es almacenamiento externo (por ejemplo, una tarjeta flash compacta (CF), una tarjeta digital segura (SD), etc.).
Algunas modalidades del conducto de procesamiento posterior 735 realizan una porción del procesamiento de imagen de la CIPU 700. En algunas modalidades, el conducto de procesamiento posterior 735 incluye los módulos de la CIPU 400 que no incluyen los conductos de procesamiento frontales 715 y 720. Por ejemplo, con referencia al ejemplo anterior, el conducto de procesamiento posterior 735 incluiría el módulo de CSC 445, el módulo de gamma 440, el módulo de HSC 450, el módulo de escalador 455, y el módulo de filtro 460 de la CIPU 400. Como tal, el conducto de procesamiento posterior 735 de tales modalidades realiza el procesamiento de imagen restante de la CIPU 400 que no realizan los conductos de procesamiento frontales 715 y 720. Por consiguiente, el conducto de procesamiento posterior 735 recupera las imágenes parcialmente procesadas desde el almacenamiento 725 y realiza el procesamiento de imagen restante sobre las imágenes parcialmente procesadas. Después del procesamiento de las imágenes, el conducto de procesamiento posterior 735 envía las imágenes procesadas al controlador de CIPU 480.
El módulo de controlador 730 realiza las mismas funciones descritas en lo anterior por referencia a la Figura 4. Como se muestra en la Figura 7, el módulo de controlador 730 interactúa con los conductos de procesamiento frontales 715 y 720 y el conducto de procesamiento posterior 735. En algunas modalidades, el módulo de controlador 730 se incluye en el conducto de procesamiento posterior 735, mientras que en otras modalidades, el módulo de controlador 730 se incluye en uno de los conductos de procesamiento frontales 715 y 720.
La operación de la CIPU 700 ahora será descrita por referencia a los sensores de cámara 405a y 405b, los arreglos de pixeles 410a y 410b, los conductos de procesamiento frontales 715 y 720, el almacenamiento 725, y el conducto de procesamiento posterior 735 que son ¡lustrados en la Figura 7. Cuando uno de los conductos de procesamiento frontales 715 y 720 recupera una imagen de su sensor de cámara correspondiente y arreglo de pixeles, el conducto de procesamiento frontal procesa la imagen y envía la imagen parcialmente procesada al almacenamiento 725. Por ejemplo, el conducto de procesamiento frontal 715 puede recuperar una imagen capturada por el sensor de cámara 405a desde el arreglo de pixeles 410a o el conducto de procesamiento frontal 720 puede recuperar una imagen capturada por el sensor de cámara 405b desde el arreglo de pixeles 410b. Como es mencionado en lo anterior, cada conducto de procesamiento frontal 715 y 720 puede procesar imágenes en paralelo.
El conducto de procesamiento posterior 735 recupera la imagen parcialmente procesada desde el almacenamiento 725 y procesa la imagen parcialmente procesada para completar el procesamiento de imagen. En algunas modalidades, el conducto de procesamiento posterior 735 recupera y procesa las imágenes almacenadas en el almacenamiento 725 en una base de primero dentro, primero fuera. En otras palabras, una imagen particular en el almacenamiento 725 se procesa después de que todas las imágenes fueron recibidas y almacenadas en el almacenamiento 725 antes de la imagen particular, pero la imagen particular se procesa antes de que las imágenes fueran recibidas y almacenadas en el almacenamiento 725 después de la imagen particular. Después el conducto de procesamiento posterior 735 procesa la imagen, envía la imagen procesada al controlador de CIPU 480.
La Figura 8 conceptualmente ilustra otra unidad de procesamiento de imagen capturada (CIPU) 800 de algunas modalidades. La CIPU 800 realiza las mismas funciones como la CIPU 400 descrita en lo anterior, excepto que la CIPU 800 se implementa por dos conductos de procesamiento separados con cada sensor de cámara que tiene su propio conducto de procesamiento separado. Como tal, la descripción de las funciones de la CIPU 800 será descrita por referencia a los módulos de la CIPU 400.
Como es mostrado, la CIPU 800 incluye un conducto de procesamiento 815 para el sensor de cámara 405a y el arreglo de pixeles 410a y un conducto de procesamiento 820 para el sensor de cámara 405b y el arreglo de pixeles 410b. Cada uno de los conductos de procesamiento 815 y 820 de algunas modalidades incluye todos los módulos incluidos en la CIPU 400. Por lo tanto, la operación de cada uno de los conductos de procesamiento 815 y 820 de estas modalidades es la misma como la operación de la CIPU 400.
Puesto que cada uno de los sensores de cámara 405a y 405b tiene su propio conducto de procesamiento, los conductos de procesamiento 815 y 820 pueden procesar imágenes independientemente entre sí. Por ejemplo, los conductos de procesamiento 815 y 820 pueden procesar imágenes en paralelo (es decir, al mismo tiempo), en tiempo diferentes, y en diferentes frecuencias. Además, cada uno de los conductos de procesamiento 815 y 820 de algunas modalidades se puede configurar de manera diferente a través de diferentes valores de registro como es descrito en lo anterior con referencia a la CIPU 400.
En algunas modalidades, un número de módulos de la CIPU 400 incluyen una o más memorias intermedias de línea/cuadro para realizar algunas o todas las operaciones del módulo. Por ejemplo, un módulo de filtración 460 de algunas modalidades se implementa para realizar una filtración de bajo paso de 3x3. En tales modalidades, los procesos de filtro de bajo paso 3x3 procesa tres líneas consecutivas en la imagen con el fin de aplicar el filtro de bajo paso 3x3 en la línea media de las tres líneas consecutivas. Así, el módulo de filtración 460 de tales modalidades requiere por lo menos tres memorias intermedias de línea/cuadro con el fin de realizar la filtración de bajo paso 3x3. Otros módulos en la CIPU 400 también incluyen una o más memorias intermedias de línea/cuadro similares al módulo de BPC 420 y el módulo de LS 425, por ejemplo.
Los conductos de procesamiento de la CIPU 800 cada uno pueden tener diferentes tamaños de memoria intermedia de línea/cuadro con el fin de ajusfar el procesamiento de imagen a las características de su cámara correspondiente. Por ejemplo, si una cámara del dispositivo móvil de cámara doble tiene un sensor de 2048x1500 pixeles, el conducto de procesamiento del sensor de 2048x1500 pixeles pueden incluir menorías intermedias de línea/cuadro que son de ancho de 2048 pixeles. De manera similar, si la otra cámara del dispositivo móvil de cámara doble tiene un sensor de 640x480 pixeles, el conducto de procesamiento del sensor de 640x480 pixeles puede incluir memorias intermedias de línea/cuadro que son de ancho de 640 pixeles. Esto es, el tamaño de las memorias intermedias de línea/cuadro incluidas en los módulos de un conducto de procesamiento puede ser diferente del tamaño de las memorias intermedias de línea/cuadro incluidas en los módulos de otro conducto de procesamiento.
III. VIDEOCONFERENCIA A. Arquitectura de Videoconferencia La Figura 9 conceptualmente ilustra una arquitectura de software para un módulo de videoconferencia y procesamiento 900 de un dispositivo móvil de cámara doble de algunas modalidades. El módulo de videoconferencia y procesamiento 900 incluye un controlador de CIPU 905, un módulo de intercambio de medios 910, y un controlador de codificador 920 que son similares a los módulos correspondientes y controladores 305, 310 y 320 descritos en lo anterior con referencia a la Figura 3. El módulo de videoconferencia y procesamiento 900 también incluye un módulo de videoconferencia 925, un cliente de videoconferencia 945, y una interfaz de red 950 para realizar una variedad de funciones de videoconferencia. Similar al módulo de procesamiento y codificación de video 300, el módulo de videoconferencia y procesamiento 900 procesa y codifica imágenes que son capturadas desde las cámaras del dispositivo móvil de cámara doble.
Como es descrito en lo anterior por referencia a la Figura 3, el módulo de intercambio de medios 910 permite a los consumidores y productores del contenido de medios en el dispositivo intercambiar el contenido de medios y las instrucciones que conciernen el procesamiento del contenido de medios, el controlador de CIPU 905 sirve como una interfaz de comunicación con la unidad de procesamiento de imagen capturada (CIPU) 955, y el controlador de codificador 920 sirve como una interfaz de comunicación con el hardware de codificador 960 (por ejemplo, un chip o microcircuito de codificador, un componente de codificación sobre un sistema en chip, etc.).
El módulo de videoconferencia 925 de algunas modalidades maneja varias funciones de videoconferencia, tal como el procesamiento de imagen, administración de conferencia y la aplicación de red. Como se muestra, el módulo de videoconferencia 925 interactúa con el módulo de intercambio de medios 910, el cliente de videoconferencia 945, y la interfaz de red 950. En algunas modalidades, el módulo de videoconferencia 925 recibe las instrucciones desde y envía las instrucciones al cliente de videoconferencia 945. El módulo de videoconferencia 925 de algunas modalidades también envía datos hacia y recibe datos desde las redes (por ejemplo, una red de área local (LAN), una red de área local inalámbrica (WLAN), una red de área amplia (WAN), una red de redes, una red de acceso múltiple de división de código (CDMA), una red GSM, etc.) a través de la interfaz de red 950.
El módulo de videoconferencia 925 incluye una capa de procesamiento de imagen 930, una capa de administración 935, y una capa de red 940. En algunas modalidades, la capa de procesamiento de imagen 930 realiza las operaciones de procesamiento de imagen sobre las imágenes para la videoconferencia. Por ejemplo, la capa de procesamiento de imagen 930 de algunas modalidades realiza el ajuste de exposición, redimensionamiento de imagen, corrección de perspectiva y ajuste del intervalo dinámico como es descrito en detalle adicional enseguida. La capa de procesamiento de imagen 930 de algunas modalidades envía las peticiones a través del módulo de intercambio de medios 910 para imágenes de la CIPU 955.
La capa de administración 935 de algunas modalidades controla la operación del módulo de videoconferencia 925. Por ejemplo, en algunas modalidades, la capa de administración 935 inicializa una cámara/cámaras del dispositivo móvil de cámara doble, procesa las imágenes y audio para transmitir a un dispositivo remoto, y procesa las imágenes y audio recibidos desde el dispositivo remoto. En algunas modalidades, la capa de administración 935 genera visualizaciones compuestas (por ejemplo, PIP) para el dispositivo. Por otra parte, la capa de administración 935 puede cambiar la operación del módulo de videoconferencia 925 en base a los reportes de la red recibidos desde la capa de red 940.
En algunas modalidades, la capa de red 940 realiza algunas o todas funcionalidades de red para la videoconferencia. Por ejemplo, la capa de red 940 de algunas modalidades establece una conexión de red (no mostrada) entre el dispositivo móvil de cámara doble y un dispositivo remoto de una videoconferencia, transmite las imágenes al dispositivo remoto, y recibe las imágenes desde el dispositivo remoto, entre otras funcionalidades, como es descrito enseguida. Además, la capa de red 940 recibe los datos de red, tal como pérdida de paquete, latencia de una vía, y tiempo de retardo de conducto redondo, entre otros tipos de datos, procesa tales datos, y reporta los datos a la capa de administración 935.
El cliente de videoconferencia 945 de algunas modalidades es una aplicación que puede utilizar las funciones de videoconferencia del módulo de videoconferencia 925 tal como una aplicación de videoconferencia, una aplicación de voz-sobre-IP (VOIP) (por ejemplo, Skype), o una aplicación de mensajes instantáneos. En algunas modalidades, el cliente de videoconferencia 945 es una aplicación independiente, mientras que en otras modalidades, el cliente de videoconferencia 945 está integrado en otra aplicación.
En algunas modalidades, la interfaz de red 950 es una interfaz de comunicación que permite al módulo de videoconferencia 925 y al cliente de videoconferencia 945 enviar datos y recibir datos sobre una red (por ejemplo, una red celular, una red de área local, una red inalámbrica, una red de redes, la Internet, etc.) a través de la interfaz de red 950. Por ejemplo, si el módulo de videoconferencia 925 desea enviar datos (por ejemplo, imágenes capturadas por las cámaras del dispositivo móvil de cámara doble) a otro dispositivo en la Internet, el módulo de videoconferencia 925 envía las imágenes al otro dispositivo a través de la interfaz de red 950.
B. Instalación de Videoconferencia La Figura 10 conceptualmente ilustra una secuencia de traspaso de mensaje de petición de videoconferencia de ejemplo 1000 de algunas modalidades. Esta figura muestra la secuencia de traspaso de mensaje de petición de videoconferencia 1000 entre un cliente de videoconferencia 1010 que funciona en un dispositivo 1005, un servidor de videoconferencia 1015, y un cliente de videoconferencia 1025 que funciona en un dispositivo 1020. En algunas modalidades, los clientes de videoconferencia 1010 y 1025 son los mismos como el cliente de videoconferencia 945 mostrado en la Figura 9. Como se muestra en la Figura 10, un dispositivo (es decir, el dispositivo 1005) hace la petición de una videoconferencia y otro dispositivo (es decir, el dispositivo 1020) responde a tal petición. El dispositivo móvil de cámara doble descrito en la presente solicitud puede realizar ambas operaciones (es decir, hacer una petición y responder a una petición).
El servidor de videoconferencia 1015 de algunas modalidades dirige los mensajes entre los clientes de videoconferencia. Mientras que algunas modalidades implementan el servidor de videoconferencia 1015 en un dispositivo de computación, otras modalidades implementan el servidor de videoconferencia 1015 en múltiples dispositivos de computación. En algunas modalidades, el servidor de videoconferencia es un servidor públicamente accesible que puede manejar y dirigir los mensajes para numerosas conferencias a la vez. Cada uno de los clientes de videoconferencia 1010 y 1025 de algunas modalidades comunica con el servidor de videoconferencia 1015 sobre una red (por ejemplo, una red celular, una red de área local, una red inalámbrica, una red de redes, la Internet, etc.) a través de una interfaz de red, tal como la interfaz de red 950 descrita en lo anterior.
La secuencia de traspaso de mensaje de petición de videoconferencia 1000 de algunas modalidades inicia cuando el cliente de videoconferencia 1010 recibe (en la operación 1 ) una petición desde un usuario del dispositivo 1005 para iniciar una videoconferencia con el dispositivo 1020. El cliente de videoconferencia 1010 de algunas modalidades recibe la petición para iniciar la videoconferencia cuando el usuario del dispositivo 1005 selecciona un artículo de interfaz de usuario (Ul) de una interfaz de usuario visualizada en el dispositivo 1005. Ejemplos de tales interfaces de usuario se ilustran en la Figura 11 y la Figura 14, que son descritas enseguida.
Después de que el cliente de videoconferencia 1010 recibe la petición, el cliente de videoconferencia 1010 envía (en la operación 2) una petición de videoconferencia, indica el dispositivo 1020 como el recipiente en base a la entrada del usuario, al servidor de videoconferencia 1015. El servidor de videoconferencia 1015 adelanta (en la operación 3) la petición de videoconferencia al cliente de videoconferencia 1025 del dispositivo 1020. En algunas modalidades, el servidor de videoconferencia 1015 adelanta la petición de videoconferencia al cliente de videoconferencia 1025 utilizando tecnología de presión. Esto es, el servidor de videoconferencia 1015 inicia la transmisión de la petición de videoconferencia al cliente de videoconferencia 1025 en la recepción del cliente de videoconferencia 1010, antes que esperar al cliente 1025 para enviar una petición para cualquiera de los mensajes.
Cuando el cliente de videoconferencia 1025 de algunas modalidades recibe la petición de videoconferencia, una interfaz de usuario es visualizada sobre el dispositivo 1020 para indicar al usuario del dispositivo 1020 que el usuario del dispositivo 1005 envíe una petición para iniciar una videoconferencia y para apresurar al usuario del dispositivo 1020 a aceptar o rechazar la petición de videoconferencia. Un ejemplo de tal interfaz de usuario se ilustra en la Figura 12, que es descrita enseguida. En algunas modalidades, cuando el cliente de videoconferencia 1025 recibe (en la operación 4) una petición para aceptar la petición de videoconferencia desde el usuario del dispositivo 1005, el cliente de videoconferencia 1025 envía (en la operación 5) una aceptación de videoconferencia al servidor de videoconferencia 1015. El cliente de videoconferencia 1025 de algunas modalidades recibe la petición para aceptar la petición de videoconferencia cuando el usuario del dispositivo 1020 selecciona un artículo de interfaz de usuario de una interfaz de usuario como se ilustra en la Figura 12, por ejemplo.
Después de que el servidor de videoconferencia 1015 recibe la aceptación de videoconferencia desde el cliente de videoconferencia 1025, el servidor de videoconferencia 1015 adelanta (en la operación 6) la aceptación de videoconferencia al cliente videoconferencia 1010. Algunas modalidades del servidor de videoconferencia 1015 adelantan la aceptación de videoconferencia al cliente de videoconferencia 1010 utilizando la tecnología de presión descrita en lo anterior.
En la recepción de la aceptación de videoconferencia, algunas modalidades establecen (en la operación 7) una videoconferencia entre el dispositivo 1005 y el dispositivo 1020. Diferentes modalidades establecen la videoconferencia de manera diferente. Por ejemplo, el establecimiento de videoconferencia de algunas modalidades incluye la negociación de una conexión entre el dispositivo 1005 y el dispositivo 1020, para determinar una velocidad de transferencia de bit a la cual codificar el vídeo, e intercambiar el vídeo entre el dispositivo 1005 y el dispositivo 1020.
En el ejemplo anterior, el usuario del dispositivo 1020 acepta la petición de videoconferencia. En algunas modalidades, el dispositivo 1020 se puede configurar (por ejemplo, a través de los ajustes de preferencia del dispositivo) para aceptar automáticamente las peticiones de videoconferencia entrantes sin visualización de una Ul. Por otra parte, el usuario del dispositivo 1020 también puede rechazar (en la operación 4) la petición de videoconferencia (por ejemplo, al seleccionar un artículo de interfaz de usuario de una interfaz de usuario visualizada en el dispositivo 1020). En lugar de enviar una aceptación de videoconferencia, el cliente de videoconferencia 1025 envía un rechazo de videoconferencia al servidor de videoconferencia 1015, que adelanta el rechazo de videoconferencia al cliente de videoconferencia 1010. La videoconferencia por lo tanto nunca es establecida. 1. Interfaz de Usuario de la Instalación de Videoconferencia En algunas modalidades, una videoconferencia se inicia en base a una llamada telefónica en curso. Esto es, mientras que el usuario de un dispositivo móvil se enlaza a una llamada telefónica con un segundo usuario, el usuario puede devolver la llamada telefónica en una videoconferencia con el permiso de un tercero. Para algunas modalidades de la invención, la Figura 11 ilustra el inicio de tal videoconferencia mediante un dispositivo móvil manual de cámara doble 1100. Esta figura ilustra el inicio de la videoconferencia en términos de cinco etapas de operación 1110, 1115, 1120, 1125 y 1130 de una interfaz de usuario ("Ul") 1105 del dispositivo 1100.
Como se muestra en la Figura 11, la Ul 1105 incluye un campo de nombre 1135, un menú de selección 1140, y un artículo de Ul seleccionable 1145. El campo de nombre 1135 visualiza el nombre de la persona en el otro extremo de la llamada telefónica, con quien un usuario le gustaría hacer una petición de videoconferencia. En este ejemplo, el artículo de Ul seleccionable 1145 (que puede ser implementado como un botón seleccionable) proporciona una opción de fin de llamada seleccionable al usuario para finalizar la llamada telefónica. El menú de selección 1140 visualiza un menú de artículos Ul seleccionares, tal como un artículo de Altavoz 1142, un artículo de Silencio 1144, un artículo de Teclado numérico 1146, un artículo de Directorio 1 148, un artículo de Sostenimiento 1152, un artículo de Videoconferencia 1154, etc. Diferentes modalidades visualizan el menú de selección de manera diferente. Para las modalidades ilustradas en la Figura 11, el menú de selección 1140 incluye varios iconos igualmente dimensionados, cada uno de los cuales representa una operación diferente. Otras modalidades proporcionan un menú desplazable, o dan prioridad a artículos particulares (por ejemplo, al hacer los artículos más grandes).
La operación de la Ul 1105 ahora será descrita con referencia al estado de esta Ul durante las cinco etapas, 1110, 1115, 1120, 1125 y 1130 que se ilustran en la Figura 11. En la primera etapa 1 110, una llamada telefónica se ha establecido entre el usuario del dispositivo móvil portátil y Jones Nancy. La segunda etapa 1115 visualiza la Ul 1105 después de que el usuario selecciona la opción de videoconferencia seleccionable 1 154 (por ejemplo, a través de un solo golpe suave mediante el dedo 1150) para activar una herramienta de videoconferencia. En este ejemplo, la opción Videoconferencia 1154 (que puede ser implementada como un icono seleccionable) permite al usuario iniciar una videoconferencia durante la llamada telefónica. En la segunda etapa, la opción de videoconferencia 1154 es resaltada para indicar que la herramienta de videoconferencia se ha activado. Diferentes modalidades pueden indicar tal selección de diferentes maneras (por ejemplo, al alumbrar con intensidad el borde o el texto del artículo).
La tercera etapa 1 120 visualiza la Ul 1105 después de que el dispositivo 1100 ha iniciado el proceso de videoconferencia con la selección de la opción de la Videoconferencia 1154. La tercera etapa es una etapa de sostenimiento transicional mientras que el dispositivo espera para que sea establecida la videoconferencia (por ejemplo, mientras que el dispositivo espera para el dispositivo en el otro extremo de la llamada para aceptar o rechazar la videoconferencia). En la tercera etapa 1120, el usuario del dispositivo 1100 todavía puede hablar al usuario del otro dispositivo (es decir, Nancy Jones) mientras que la conexión de videoconferencia está siendo establecida. Además, algunas modalidades permiten al usuario del dispositivo 1100 cancelar la petición de videoconferencia en la tercera etapa 1120 al seleccionar un artículo de Ul seleccionable visualizado sobre la Ul 1105 (no mostrada) para cancelar la petición de videoconferencia. Durante esta etapa de sostenimiento, diferentes modalidades usan diferentes visualizaciones en la Ul 1105 para indicar el estado de espera.
Como se muestra en la Figura 11 , en algunas modalidades, el estado de espera de la tercera etapa se ilustra en términos de una visualización de pantalla completa de un vídeo que es capturado por el dispositivo 1100 junto con una notación de "Vista Previa" en el fondo de este vídeo. Específicamente, en la Figura 11 , la tercera etapa 1 120 ilustra el inicio del proceso de videoconferencia al visualizar en un área de visualización 1 60 de la Ul 1105 una presentación de pantalla completa del vídeo que es capturado por la cámara del dispositivo. En algunas modalidades, la cámara frontal es la cámara de omisión seleccionada por el dispositivo en el inicio de una videoconferencia. Frecuentemente, esta cámara frontal apunta al usuario del dispositivo en el inicio de la videoconferencia. Por consiguiente, en el ejemplo ilustrado en la Figura 11 , la tercera etapa 1120 ilustra el dispositivo 1100 como que presenta un vídeo de pantalla completa del usuario del dispositivo 1100. El estado de espera del dispositivo es además resaltado por la designación de "Vista Previa" 1165 abajo el vídeo que aparece en el área de visualización 1 160 durante la tercera etapa 1120.
La tercera etapa de sostenimiento transicional 1 120 se puede representar de manera diferente en algunas modalidades. Por ejemplo, algunas modalidades permiten al usuario del dispositivo 1 100 seleccionar la cámara trasera como la cámara para iniciar la videoconferencia. Para permitir esta selección, algunas modalidades permiten al usuario especificar (por ejemplo, a través de un ajuste de preferencia del menú) la cámara trasera como la cámara de omisión para el inicio de una videoconferencia, y/o permitir al usuario seleccionar la cámara trasera de un menú que exhibe las cámaras trasera y frontal después de que el usuario selecciona la opción de Videoconferencia 1154. En cualquiera de estas situaciones, la Ul 1105 (por ejemplo, el área de visualización 1160) visualiza un video capturado por la cámara trasera durante la tercera etapa de sostenimiento 1120.
También, otras modalidades podrían indicar la activación de la herramienta de videoconferencia, al visualizar la versión más pequeña del vídeo capturado por el dispositivo 1100, al visualizar una imagen fija que es almacenada en el dispositivo 1100, al proporcionar un mensaje para resaltar el estado de espera del dispositivo (por ejemplo, al mostrar "La Conferencia que es Establecida"), al no visualizar la designación de "Vista Previa", etc. También, en la tercera etapa 1120, la Ul 1105 de algunas modalidades proporciona un botón de Fin (no mostrado) para permitir al usuario cancelar la entrada de la videoconferencia y revertir nuevamente a la llamada telefónica si él decide no entrar a la videoconferencia en esta etapa (por ejemplo, mientras que el usuario está esperando para que el usuario remoto responda a su petición).
La cuarta etapa 1125 ilustra la Ul 1105 en un estado transicional después de que el usuario remoto ha aceptado la petición de videoconferencia y se ha establecido una conexión de videoconferencia. En este estado transicional, el área de visualización 1 160 que visualiza el vídeo del usuario local (que está siendo capturado por la cámara frontal en este ejemplo) gradualmente disminuye el tamaño (es decir, gradualmente se contrae), como es indicado por las flechas 1175. El área de visualización 1 160 (es decir, el vídeo del usuario local) se contrae de modo que la Ul 1105 puede visualizar un área de visualización 1170 (por ejemplo, una ventana de visualización 1170) que contiene el vídeo de una cámara del dispositivo remoto detrás del área de visualización 1160. En otras palabras, la contracción del vídeo del usuario local 1160 crea una visualización PIP 1180 que tiene una visualización de inserción de primer plano 1 160 del vídeo del usuario local y una visualización principal de fondo 1170 del usuario remoto. En este ejemplo, la visualización principal de fondo 1170 presenta un vídeo de una dama cuyo vídeo está siendo capturado por la cámara frontal del dispositivo remoto (por ejemplo, Nancy Jones, el usuario del dispositivo remoto) o una dama cuyo vídeo está siendo capturado por la cámara trasera del dispositivo remoto (por ejemplo, una dama cuyo video está siendo capturado por Nancy Jones). Uno de habilidad ordinaria comprenderá que la cuarta etapa transicional mostrada en la Figura 11 es simplemente un procedimiento ejemplar utilizado por algunas modalidades, y que otras modalidades podrían animar la cuarta etapa transicional de manera diferente.
La cuarta etapa 1125 también ilustra un artículo de Ul seleccionable 1132 en un área de visualizacion inferior 1 155. El artículo de Ul seleccionable 1 132 (que puede ser implementado como un botón seleccionable) proporciona una opción de Fin de Conferencia seleccionable 1132 abajo de la visualizacion PIP 1180. El usuario puede seleccionar esta opción de Fin de Conferencia 1 132 para finalizar la videoconferencia (por ejemplo, a través de un solo golpe suave con el dedo). Diferentes modalidades pueden permitir al usuario finalizar la conferencia en diferentes maneras, tal como al tocar un conmutador en el dispositivo móvil, al dar mandos de voz, etc. Por otra parte, diferentes modalidades puede permitir a la opción de Fin de Conferencia 1132 apagarse durante la videoconferencia, para de esta manera permitir a la visualizacion PIP 1180) tomar el área de visualizacion completa 1185. La opción Fin de Conferencia 1132 luego puede reaparecer en un solo toque suave con el dedo en el fondo de área de visualizacion 1185, dando al usuario acceso a la opción de Fin de Conferencia 1132. En algunas modalidades, el arreglo del área de visualizacion 1155 es el mismo como el área de visualizacion 1155 descrito en detalle adicional enseguida.
La quinta etapa 1130 ilustra la Ul 1 105 después de que ha finalizado la animación del cuarto estado transicional 1125. Específicamente, la quinta etapa 1130 ilustra una visualización PIP 1180 que es presentada por la Ul 1 105 durante la videoconferencia. Como es mencionado en lo anterior, esta visualización PIP 1180 incluye dos visualizaciones de vídeo: una visualización de fondo más grande 1170 desde la cámara remota y una visualización de inserción de primer plano más pequeña 1160 desde la cámara local.
Esta visualización PIP 1180 es solamente una manera de presentar una vista compuesta de los videos que son capturados por los dispositivos remoto y local. Además de esta vista compuesta, los dispositivos de algunas modalidades proporcionan otras vistas compuestas.
Por ejemplo, en lugar de tener una visualización de fondo más grande 1 170 del usuario remoto, la visualización de fondo más grande 1170 puede ser del usuario local y la visualización de inserción de primer plano más pequeña 1160 del usuario remoto. Como es descrito adicionalmente enseguida, algunas modalidades permiten a un usuario conmutar durante una videoconferencia entre las cámaras locales y/o cámaras remotas conforme las cámaras para las vistas de inserción y principal en la visualización PIP 1180.
También, algunas de las modalidades permiten a los vídeos locales y remotos aparecer en la Ul 1105 en dos áreas de visualización de lado por lado (por ejemplo, ventanas de visualización izquierda y derecha, o ventanas de visualización superior y de fondo) o dos área de visualización diagonalmente alineadas. La manera de la visualización PIP o un modo de visualización de omisión puede ser especificada por el usuario en algunas modalidades a través de los ajustes de preferencia del dispositivo o a través de los controles que el usuario puede seleccionar durante una videoconferencia, como es descrito adicionalmente enseguida.
Cuando el usuario del dispositivo 1100 de la Figura 11 invita al usuario remoto a una videoconferencia, el usuario remoto puede aceptar o rechazar la invitación. La Figura 12 ilustra una Ul 1205 del dispositivo del usuario remoto 1200 en seis diferentes etapas 1210, 1215, 1220, 1225, 1230 y 1235 que muestran la secuencia de operaciones para presentar y aceptar una invitación de videoconferencia en el dispositivo del usuario remoto. La descripción de la Ul 1205 enseguida se refiere al usuario del dispositivo 1200 (es decir, el dispositivo que recibe la petición de videoconferencia) como el destinatario invitado, y el usuario del dispositivo 1100 (es decir, el dispositivo que envía la petición de videoconferencia) como el solicitante invitador. También, en este ejemplo, se asume que el dispositivo del destinatario invitado 1200 es un dispositivo de cámara doble, similar a aquel del solicitante invitador. Sin embargo, en otros ejemplos, uno o ambos de estos dispositivos son dispositivos de una sola cámara.
La primera etapa 1210 ilustra la Ul 1205 cuando el destinatario invitado recibe una invitación a una videoconferencia desde el invitador, John Smith. Como se muestra en la Figura 12, la Ul 1205 en esta etapa incluye un campo de nombre 1235, un campo de mensaje 1240, y dos artículos de Ul seleccionares 1245 y 1250. El campo de nombre 1235 visualiza el nombre de la persona quien está solicitando una videoconferencia. En algunas modalidades, el campo de nombre 1235 visualiza un número telefónico de la persona que está solicitando una videoconferencia en lugar del nombre de la persona. El campo de mensaje 1240 visualiza una invitación del invitador al destinatario invitado. En este ejemplo, la "Invitación de Videoconferencia" en el campo 1240 indica que el invitador está solicitando una videoconferencia con el destinatario invitado. Los artículos de Ul seleccionares 1245 y 1250 (que pueden ser implementados como botones seleccionares) proporcionan opciones de Negar la Petición y Aceptar la Petición seleccionares 1245 y 1250 para el destinatario invitado para el uso para rechazar o aceptar la invitación. Diferentes modalidades pueden visualizar estas opciones de manera diferente y/o visualizar otras opciones.
En la observación de la notación de "Invitación de Videoconferencia" visualizada en el campo de mensaje 1240, el destinatario invitado puede negar o aceptar la petición al seleccionar la opción de Negar la Petición 1245 u opción de Aceptar la Petición 1250 en la Ul, respectivamente. La segunda etapa 1215 ¡lustra que en el ejemplo mostrado en la Figura 12, el usuario selecciona la opción de Aceptar la Petición 1250. En este ejemplo, esta selección se hace mediante el toque suave con el dedo del usuario en la opción de Aceptar la Petición 1250, y esta selección es indicada a través del resaltado de esta opción 1250. Otras técnicas se proporcionan en algunas modalidades para seleccionar las opciones de Aceptar o Negar la Petición 1245 y 1250 (por ejemplo, doble toque suave, etc.) para indicar la selección (por ejemplo, al resaltar el borde o texto del artículo de Ul).
La tercera etapa 1220 visualiza la Ul 1205 después de que el destinatario invitado ha acordado unirse a la videoconferencia. En esta etapa, la Ul 1205 entra en un modo de vista previa que muestra una presentación de pantalla completa del vídeo de la cámara frontal del dispositivo remoto en un área de visualización 1244. La cámara frontal en este caso es apuntada al usuario del dispositivo remoto (es decir, Nancy Jones en este ejemplo). Por consiguiente, su imagen se muestra en este modo de vista previa. Este modo de vista previa permite al destinatario invitado asegurarse de que su video es visualizado apropiadamente y que ella está feliz con su apariencia antes de que la videoconferencia comience (por ejemplo, antes de que comience la transmisión real del vídeo). En algunas modalidades, una notación, tal como una notación de "vista previa", puede ser visualizada abajo del área de visualización 1244 para indicar que el destinatario invitado está en el modo de vista previa.
Algunas modalidades permiten al destinatario invitado seleccionar la cámara trasera como la cámara de omisión para el inicio de la videoconferencia, o seleccionar la cámara frontal o trasera en el comienzo de la videoconferencia, como es descrito adicionalmente enseguida. También, otras modalidades visualizan la visualización de vista previa del destinatario invitado diferentemente (por ejemplo, en una imagen más pequeña colocada en la esquina en el área de visualización 1244). Todavía otras modalidades no incluyen este modo de vista previa, sino más bien inician la videoconferencia inmediatamente después de que el destinatario invitado acepta la petición.
En la tercera etapa, la Ul 1205 muestra dos artículos de Ul seleccionares 1275 y 1246, uno de los cuales se sobrepone al área visualización 1244 mientras que el otro está abajo de esta área de visualización 1244. El artículo de Ul seleccionable 1275 es un botón de Aceptación 1275 que el usuario puede seleccionar para iniciar la videoconferencia. El artículo de Ul seleccionable 1246 es un botón de Fin 1246 que el destinatario invitado puede seleccionar si él decide no unirse a la videoconferencia en esta etapa.
La cuarta etapa 1225 visualiza la Ul 1205 después de que el destinatario invitado selecciona el botón de Aceptación 1275. En este ejemplo, el botón de Aceptación 1275 es resaltado para indicar que el destinatario invitado está listo para iniciar la videoconferencia. Tal selección se puede indicar en diferentes maneras en otras modalidades.
La quinta etapa 1230 ilustra la Ul 1205 en un estado transicional después de que el destinatario invitado ha aceptado la petición de videoconferencia. En esta etapa transicional, el área de visualización 1244 que visualiza el vídeo del destinatario invitado (que 'está siendo capturado por la cámara frontal en este ejemplo) gradualmente disminuye en tamaño (es decir, gradualmente se contrae), como es indicado por la flechas 1260. El video del destinatario invitado se contrae de modo que la Ul 1205 puede visualizar un área de visualización 1265 (por ejemplo, una ventana de visualización 1265) que contiene el vídeo desde una cámara del destinatario invitado detrás del área de visualizacion 1244. En otras palabras, la contracción del vídeo del destinatario invitado crea una visualizacion PIP 1280 que tiene un área de visualizacion de inserción de primer plano 1244 del vídeo del destinatario invitado y una visualización principal de fondo 1265 del invitador.
En este ejemplo, la visualización principal de fondo 1265 presenta un vídeo de un hombre cuyo video está siendo capturado por la cámara frontal del dispositivo local (es decir, John Smith, el usuario del dispositivo local, 1100). En otro ejemplo, este video podría haber sido aquel de un hombre cuyo video está siendo capturado por la cámara trasera del dispositivo local (por ejemplo, un hombre cuyo video está siendo capturado por John Smith). Diferentes modalidades pueden animar esta quinta etapa transicional de manera diferente.
La Ul en la quinta etapa 1230 también visualiza un área de visualización 1 155 (por ejemplo, una barra de herramientas o una barra de menús) que incluye el artículo de Ul seleccionare 1285 (por ejemplo, botón de silencio 1285) para silenciar el audio del otro usuario durante la videoconferencia, el artículo de Ul seleccionare 1287 (por ejemplo, el botón de final de conferencia 1287) para finalizar la videoconferencia, y el artículo de Ul seleccionare 1289 (por ejemplo, el botón de conmutación de la cámara 289) para conmutar las cámaras, que es descrito en detalle adicional enseguida. Como tal, el destinatario invitado puede seleccionar cualquiera de los artículos de Ul seleccionabas 1285-1289 (por ejemplo, a través de un solo toque suave con el dedo) para realizar la operación deseada durante la videoconferencia. Diferentes modalidades pueden permitir al destinatario invitado realizar cualquiera de las operaciones en diferentes maneras, por ejemplo, al activar un conmutador sobre el dispositivo móvil, al dar mandos de voz, etc.
Aunque la Figura 12 muestra un arreglo de ejemplo para el área de visualización 1155, algunas modalidades proporcionan diferentes arreglos del área de visualización 1155 tal como el arreglo del área de visualización 1155 de la Figura 11, que incluye solamente un artículo de Ul de Fin de Conferencia seleccionable 1132 para finalizar la videoconferencia. Otros arreglos del área de visualización 1155 pueden incluir cualquier número de diferentes artículos de Ul seleccionares para realizar diferentes funciones. Por otra parte, la quinta etapa 1230 muestra el área de visualización 1155 visualizada en el fondo de la Ul 1205. Diferentes modalidades del área de visualización 1155 pueden ser visualizadas en diferentes ubicaciones dentro de la Ul 1205 y/o definida como diferentes formas.
La Figura 12 muestra el área de visualización 1155 como un área de visualización estática (es decir, el área de visualización 1155 siempre es visualizada). Sin embargo, en algunas modalidades, el área de visualización 1155 es un área de visualización dinámica. En algunas de tales modalidades, el área de visualización 1155 no es ordinariamente visualizada. Más bien, el área de visualización 1155 es visualizada cuando se recibe un evento de activación (por ejemplo, una selección del usuario, tal como el toque suave del área de visualización 1280 una vez, un mando de voz, etc.). El área de visualización 1 155 desaparece después de que se recibe una selección del usuario (por ejemplo, al seleccionar el artículo de Ul de silencio seleccionable 1285) o una cantidad definida de tiempo (por ejemplo, 3 segundos), que se puede especificar por el usuario a través de los ajustes de preferencia de dispositivo móvil o la aplicación de videoconferencia. En algunas de tales modalidades, el área de visualización 1155 es visualizado automáticamente después que la videoconferencia comienza y desaparece de la misma manera como es mencionada en lo anterior.
La sexta etapa 1235 ilustra la Ul 1205 después de que la animación de la quinta etapa transicional ha finalizado. Específicamente, la sexta etapa ilustra una visualización PIP 1280 que es presentada por la Ul 1205 durante la videoconferencia. Como es mencionado en lo anterior, esta visualización PIP 1280 incluye dos visualizaciones de vídeo: una visualización de fondo más grande 1265 desde la cámara local y una visualización de inserción de primer plano más pequeña 1244 desde la cámara remota. Esta visualización PIP 1280 es solamente una manera de presentar una vista compuesta de los videos que son capturados por los dispositivos remoto y local. Además de esta vista compuesta, los dispositivos de algunas modalidades proporcionan otras vistas compuestas. Por ejemplo, en lugar de tener una visualización de fondo más grande del destinatario invitado, la visualización de fondo más grande puede ser del invitador y la visualización de inserción de primer plano más pequeño del destinatario invitado. Como es descrito adicionalmente enseguida, algunas modalidades permiten a un usuario controlar las vistas de inserción y principal en una visualización PIP para visualizar conmutablemente las cámaras local y remota. También, algunas modalidades permiten a los vídeos locales y remotos aparecer en la Ul 1205 en dos áreas de visualización de lado por lado (por ejemplo, ventanas de visualización izquierda y derecha, o ventajas de visualización superior y de fondo) o dos área de visualización diagonalmente alineadas. La manera de la visualización PIP o en un modo de visualización de omisión puede ser especificada por el usuario en algunas modalidades a través de los ajustes de preferencia del dispositivo o a través de los controles que el usuario puede seleccionar durante una videoconferencia, como es descrito adicionalmente enseguida.
Aunque la Figura 12 muestra la secuencia de operaciones para presentar y aceptar una invitación de videoconferencia en términos de seis diferentes etapas de operación, algunas modalidades pueden implementar la operación en menos etapas. Por ejemplo, algunas de tales modalidades pueden omitir la presentación de la tercera y cuarta etapa 1220 y 1225 e ir desde la segunda etapa 1215 a la quinta etapa 1230 después de que el usuario selecciona la opción de Aceptar la Petición 1250. Otras modalidades que implementan esa operación (es decir, presentación y aceptación de una invitación de videoconferencia) en menos etapas pueden omitir la primera y la segunda etapa 1210 y 1215 y presentan al usuario con la tercera etapa 1220 cuando el destinatario invitado recibe una invitación a una videoconferencia desde el invitador.
La Figura 13 ilustra un ejemplo para realizar la operación ilustrada en la Figura 12 en menos etapas al combinar la primera y tercera etapa en una etapa y la segunda y cuarta etapa en una etapa. En particular, esta figura ilustra una Ul 1205 del dispositivo del usuario remoto 1200 en cinco diferentes etapas 1390, 1392, 1394, 1230 y 1235. La primera etapa 1390 es similar a la etapa 1110, excepto que el campo de nombre 1235 visualiza el nombre "John Smith" para indicar el nombre de la persona en el otro extremo de la llamada telefónica. Esto es, una llamada telefónica se ha establecido entre el usuario del dispositivo móvil remoto y el usuario del dispositivo local (es decir, John Smith, en este ejemplo). Las segunda y tercera etapa 1392 y 1394 son similares a la primera y segunda etapa 1210 y 1215 de la Figura 12 excepto que la segunda y tercera etapa 1392 y 1394 también muestran una vista previa del usuario del dispositivo móvil remoto (es decir, Nancy Jones en este ejemplo). La cuarta y la quinta etapa 1230 y 1235 son las mismas que la quinta y sexta etapa 1230 y 1235 de la Figura 12.
Además de activar la herramienta de videoconferencia a través de una opción seleccionable durante una llamada telefónica, algunas modalidades permiten a un usuario de un dispositivo de cámara doble iniciar una videoconferencia directamente sin tener que hacer primero una llamada telefónica. La Figura 14 ilustra otro método alternativo de tal clase para iniciar una videoconferencia. Esta figura ilustra la Ul 1405 en siete etapas diferentes 1410, 1415, 1420, 1425, 1430, 1435 y 1440 que muestra una secuencia alternativa de operaciones para iniciar una videoconferencia.
En la primera etapa 1410, un usuario está buscando a través de una lista de contactos en este dispositivo móvil para la persona con quien desea establecer una videoconferencia, similar a como encontraría un contacto para la llamada. En la segunda etapa 1415, el usuario selecciona la persona 1455 con la cual le gustaría tener una videoconferencia (por ejemplo, a través de un solo toque suave con el dedo 1460 sobre el nombre de la persona 1455). Esta selección activa la Ul 1405 para visualizar la información del contacto y varias opciones seleccionares del usuario. En este ejemplo, el nombre de Jason 1455 es resaltado para indicar que es la persona con la cual el usuario le gustaría tener una videoconferencia. Diferentes modalidades pueden indicar tal selección de diferentes maneras. Mientras que la segunda etapa 1415 permite al usuario del dispositivo 1400 seleccionar una persona con la cual el usuario le gustaría tener una videoconferencia a través de una lista de contactos, algunas modalidades permiten al usuario seleccionar a la persona a través de una historia de llamada "Recientes" que lista un número particular o el nombre de una persona con la cual el usuario del dispositivo 1400 recientemente ha tenido una videoconferencia o una llamada telefónica.
En la tercera etapa 1420, la Ul 1405 visualiza la información de la persona seleccionada 1462 y varios artículos de Ul seleccionares 1468, 1472 y 1470 después de que se ha seleccionado el nombre de la persona 1455. En este ejemplo, uno de los diversos artículos de Ul seleccionares 1472 (que puede ser implementado como un ¡cono o botón seleccionable) proporciona una herramienta de videoconferencia. La opción de Videoconferencia 1472 permite al usuario invitar a la persona identificada por el contacto 1466 a una videoconferencia. Diferentes modalidades visualizan la información 1462 y los artículos Ul seleccionabas 1468, 1472 y 1470 de manera diferente (por ejemplo, en un arreglo diferente).
La cuarta etapa 1425 muestra al usuario seleccionando la opción de Videoconferencia 1472 (por ejemplo, a través de un solo toque suave con el dedo). En este ejemplo, la opción de Videoconferencia 1472 se ha resaltado para indicar que la herramienta de videoconferencia 1472 se ha activado. Tales selecciones pueden ser indicadas de manera diferente en modalidades diferentes (por ejemplo, al resaltar el texto o borde del icono seleccionado).
La quinta, sexta y séptima etapa 1430, 1435 y 1440 son similares a la tercera, cuarta y quinta etapa 1120, 1125 y 1130 ilustradas en la Figura 11 y puede ser entendido por referencia a la discusión de esas etapas. En breve, la quinta etapa 1430 ilustra una etapa de sostenimiento transicional que espera para que el usuario remoto responda a la invitación a una videoconferencia. La sexta etapa 1435 ilustra que después de que el usuario remoto ha aceptado la petición de videoconferencia, el área de visualización 1480 (que visualiza el vídeo del usuario local) gradualmente disminuye el tamaño al Ul 1405 que puede mostrar un área de visualización 1492 que contiene el vídeo desde una cámara del usuario remoto detrás del área de visualización 1480. En la séptima etapa 1440, la visualización PIP 1447 se presenta por la Ul 1405 durante la videoconferencia. En algunas modalidades, el arreglo del área de visualización 1155 en la sexta etapa 1435 y la séptima etapa 1440 es similar al arreglo del área de visualización 1155 de la Figura 12, descrito en lo anterior.
Las Figuras 10, 11 , 12, 13 y 14 muestran varias maneras para establecer una videoconferencia. En algunas modalidades, durante una llamada telefónica, datos de audio (por ejemplo, voz) se transmiten a través de un canal de comunicación (sobre una red de comunicación similar a una red de conmutación de circuito conmutado o una red de conmutación de paquete conmutado) y, durante una videoconferencia, los datos de audio se transmiten a través de otro canal de comunicación. Así, en tales modalidades, los datos de audio (por ejemplo, voz) se transmiten a través de un canal de comunicación antes de que se establezca la videoconferencia, y una vez que se establece la videoconferencia, el audio se transmite a través de un canal de comunicación diferente (en lugar del canal de comunicación utilizado durante la llamada telefónica).
Con el fin de proporcionar una transición integrada (por ejemplo, transferencia) de datos de audio desde la llamada telefónica a la videoconferencia, algunas modalidades no terminan la llamada telefónica antes de establecer la videoconferencia. Por ejemplo, algunas modalidades establecen una conexión de videoconferencia de usuario a usuario (por ejemplo, después de completar la secuencia de mensajes ilustrada en la Figura 10) antes de terminar la llamada telefónica e inicia a transmitir datos de audio/vídeo a través de la sesión de comunicación de usuario a usuario. Alternativamente, otras modalidades establecen una conexión de videoconferencia de usuario a usuario (por ejemplo, después de completar la secuencia de mensajes ilustrada en la Figura 10) e iniciar la transmisión de datos de audio/video a través de la sesión de comunicación de usuario a usuario, antes de terminar la llamada telefónica y comenzar a presentar los datos de audio/vídeo recibidos.
Una conexión de videoconferencia de usuario a usuario de algunas modalidades permite a los dispositivos móviles en la videoconferencia comunicarse directamente entre sí (en lugar de la comunicación a través de un servidor central, por ejemplo). Algunas modalidades de una videoconferencia de usuario a usuario permiten a los dispositivos móviles en las videoconferencias compartir recursos entre sí. Por ejemplo, a través de un canal de comunicación de control de una videoconferencia, un dispositivo móvil puede controlar remotamente las operaciones de otro dispositivo móvil en la videoconferencia al enviar las instrucciones de un dispositivo móvil al otro dispositivo móvil para dirigir el otro dispositivo móvil para procesar imágenes de manera diferente (es decir, compartir su recurso de procesamiento de imagen) tal como una operación de ajuste de exposición, una operación de ajuste de enfoque y/o una operación de conmutación de cámara, descrita en detalle adicional enseguida. 2. Instalación de la Velocidad de Transferencia de bit Dinámica Típicamente, los dispositivos móviles en una videoconferencia comunican los datos (por ejemplo, audio e imágenes de video) entre sí a través de canales de comunicación de diferentes tipos de redes de comunicación tal como diferentes redes de comunicación inalámbricas privadas y públicas (por ejemplo, redes de celular similares a GSM, UMTS, etc.). Ejemplos de tales redes de comunicaciones inalámbricas serán explicados por referencia a las Figuras 91 y 92, después en la presente.
Un ancho de banda disponible de la red de comunicación para conducir una videoconferencia difiere en diferentes tiempos debido al número variante de dispositivos móviles que accesan a la red de comunicación en un tiempo dado. El ancho de banda disponible aun puede cambiar durante la videoconferencia. Además, la inundación de la red de comunicación con altas velocidades de transferencia de bit durante la videoconferencia o grandes cantidades de señalización en un intento para figurar una velocidad de transferencia de bit de videoconferencia óptima es deseable.
Debido a estas razones, algunas modalidades emplean un método novedoso para especificar la velocidad de transferencia de bit óptima inicial para la videoconferencia. Para identificar la velocidad de transferencia de bit óptima inicial para la videoconferencia, este método inicia una videoconferencia en una velocidad de transferencia de bit particular e incrementadamente aumenta la velocidad de transferencia de bit en intervalos particulares si estas modalidades no detectan las condiciones de la red que degradarían la calidad de la videoconferencia.
Un ejemplo de tales modalidades se ilustra en la Figura 15. Esta figura conceptualmente ilustra un proceso 1500 de algunas modalidades de la invención para ajustar la velocidad de transferencia de bit para una videoconferencia. El proceso 1500 se realiza como parte de una instalación de videoconferencia (por ejemplo, como parte del establecimiento de videoconferencia ilustrado en la Figura 10) para determinar dinámicamente una velocidad de transferencia de bit para transmitir datos (por ejemplo, audio e imágenes de video) en base a varias condiciones de la red. En algunas modalidades, el proceso 1500 se realiza por la capa de administración 935 del módulo de videoconferencia 925 descrito en lo anterior por referencia a la Figura 9. Una versión más detallada del módulo de videoconferencia será descrita enseguida con referencia a la Figura 16.
Como se muestra en la Figura 15, el proceso 1500 inicia al ajustar (en 1505) una velocidad de transferencia de bit en una velocidad de transferencia de bit inicial. En algunas modalidades, la velocidad de transferencia de bit inicial es una velocidad de línea de base de omisión para el dispositivo. Algunas modalidades, que, permiten a un usuario especificar la velocidad de transferencia de bit inicial. En 1505, el proceso 1500 también inicia los datos de transmisión de videoconferencia (por ejemplo, audio e imágenes de vídeo) a través de uno o más canales de comunicación en la velocidad de transferencia de bit inicial a un dispositivo remoto.
Enseguida, el proceso 1500 identifica (en 1510) un conjunto de parámetros de condiciones de la red recibidos desde el dispositivo remoto en la videoconferencia. En algunas modalidades, el dispositivo local recibe el conjunto de parámetros de condiciones de la red desde el dispositivo remoto a través de una sesión de comunicación de protocolo de transporte en tiempo real (RTP) establecida en el inicio de la videoconferencia. Por ejemplo, algunas modalidades proporcionan los parámetros de condiciones de la red a través de la característica de extensión de RTP. Por otra paste, la característica de extensión de RTP de algunas modalidades se puede utilizar para transmitir cualquier tipo de información (tal como el conjunto de parámetros de condiciones de la red) al indicar la presencia de un cabezal de extensión en el cabezal de paquetes de RTP y al definir un cabezal de extensión para la información adicional.
En diferentes modalidades, los dispositivos en videoconferencia transmiten diferentes conjuntos de parámetros de condición/congestión de la red. En las modalidades descritas enseguida, el conjunto de parámetros de condición de la red incluyen la latencia de una vía y la velocidad de transferencia de bit de la estimación de ancho de banda. En otras modalidades, el conjunto de parámetros de condición de la red incluyen datos de pérdida de paquete y datos de retardo de tiempo de recorrido completo (RTT). Como tal, diferentes modalidades pueden incluir cualquier número de diferentes parámetros de condición de la red en el conjunto de parámetros de condición de la red.
En algunas modalidades, el conjunto de parámetros de condición de la red recibidos desde el dispositivo remoto de la videoconferencia está basado en los datos (por ejemplo, audio y vídeo) transmitidos desde el dispositivo móvil local (es decir, el dispositivo móvil que realiza el proceso 1500) al dispositivo remoto durante la videoconferencia en el conjunto de velocidad de transferencia de bit inicial en la operación 1505. Por ejemplo, en algunas modalidades, el dispositivo remoto puede determinar la latencia de una vía al calcular el tiempo que toma para los paquetes de audio propagarse a través de la conexión de red desde el dispositivo móvil local al dispositivo remoto al utilizar estampas de tiempo de los paquetes de audio. Específicamente, en algunas modalidades, cada paquete de audio se estampa en tiempo. En la ausencia del retardo del paquete, los dispositivos remotos deben recibir los paquetes de audio en intervalos ajustados que son ¡guales a la diferencia en las estampas de tiempo. Sin embargo, cuando hay un retardo de latencia de una vía, el dispositivo remoto recibe los paquetes de audio en intervalos mayores que la diferencia en las estampas de tiempo.
También, en algunas modalidades, el dispositivo remoto determina una velocidad de transferencia de bit de estimación de ancho de banda al examinar el tiempo en que es recibido un paquete de vídeo, el tiempo en que es recibido un paquete de video consecutivo, y el tamaño del paquete de vídeo consecutivo. Esto es, la diferencia en el tiempo entre la recepción de los dos paquetes de ídeo consecutivos y el tamaño del segundo paquete de vídeo se utiliza para estimar el ancho de banda disponible de la conexión de red. Algunas modalidades determinan una velocidad de transferencia de bit de estimación de ancho de banda al examinar múltiples pares de paquetes de video consecutivos. Los ejemplos anteriores utilizan tipos específicos de datos (es decir, datos de audio para determinar la latencia de una vía y datos de vídeo para determinar una velocidad de transferencia de bit de estimación de ancho de banda). Sin embargo, otros tipos de datos comunicados a través de la conexión de red entre el dispositivo móvil local y el dispositivo remoto se pueden utilizar también en algunas modalidades.
Después de la identificación (en 1510) del conjunto de condiciones de la red, el proceso 1500 luego determina (en 1515) si la latencia de una vía se ha deteriorado más allá de una cantidad de umbral definida. En algunas modalidades, la cantidad de umbral se define como una cantidad de latencia particular y la latencia de una vía se determina para deteriorarse más allá de la cantidad de umbral cuando la diferencia entre la latencia de una vía actual y una latencia de una vía previa excede la cantidad de latencia particular. En otras modalidades, la cantidad umbral se define como una velocidad particular de cambio de la latencia de una vía. Como tal, la latencia de una vía se determina para deteriorarse más allá de la cantidad de umbral cuando la velocidad de cambio de un conjunto de latencias de una vía (por ejemplo, la latencia de una vía actual y las latencias de una vía previa) excede la velocidad particular de cambio.
Cuando la latencia de una vía se determina que se deteriora más allá de la cantidad de umbral, el proceso 1500 termina. De otra manera, el proceso 1500 determina (en 1520) si la velocidad de transferencia de bit actual ha alcanzado la velocidad de transferencia de bit de estimación de ancho de banda. En algunas modalidades, la velocidad de transferencia de bit de estimación de ancho de banda indica una cantidad de ancho de banda disponible (por ejemplo, 15 kilobit/seg (kbps)) para la conexión de red. Cuando el proceso 1500 determina que la velocidad de transferencia de bit actual excede la velocidad de transferencia de bit de estimación de ancho de banda, el proceso 1500 termina. Cuando el proceso 1500 determina que la velocidad de transferencia de bit actual no excede la velocidad de transferencia de bit de estimación de ancho de banda, el proceso 1500 procede a la operación 1525.
En 1525, el proceso 1500 determina si la velocidad de transferencia de bit actual ha alcanzado una velocidad de transferencia de bit máxima definida. Cuando el proceso 1500 determina que la velocidad de transferencia de bit actual excede la velocidad de transferencia de bit máxima definida, el proceso 1500 termina. De otra manera, el procedimiento 1500 procede a la operación 1530 para incrementar la velocidad de transferencia de bit actual por una cantidad definida. Diferentes modalidades definen la cantidad para incrementar la velocidad de transferencia de bit de manera diferente. Ejemplos de una cantidad definida para incrementar la velocidad de transferencia de bit actual incluyen 32 kbps, 64 kbps, entre cualquier número de otras cantidades para incrementar la velocidad de transferencia de bit.
Enseguida, el proceso determina (en 1535) si ha transcurrido una cantidad definida de tiempo. La cantidad definida de tiempo puede ser 1 segundo, 2 segundos, 5 segundos, o cualquiera de otras cantidades posibles de tiempo puesto que diferentes modalidades definen la cantidad de tiempo de manera diferente. El proceso 1500 espera para que la cantidad definida de tiempo transcurra con el fin de que el dispositivo remoto reciba los datos (por ejemplo, audio e imágenes de vídeo) transmitidos desde el dispositivo móvil local en la velocidad de transferencia de bit recientemente incrementada (en la operación 1530) y determina los parámetros de condición de la red en base a la velocidad de transferencia de bit recientemente incrementada. Si el proceso 1500 determina que la cantidad definida de tiempo no ha transcurrido, el proceso 1500 regresa la operación 1535 hasta que ha transcurrido la cantidad definida de tiempo. Cuando el proceso 1500 determina que la cantidad definida de tiempo ha transcurrido, el proceso 1500 regresa la operación 1510. La operación del proceso 1500 desde 1510 en adelante procede como es descrito en lo anterior hasta que el proceso 1500 termina.
Cuando el proceso 1500 termina (es decir, después de la operación 1515, 1520 o 1525), la instalación de una velocidad de transferencia de bit para la videoconferencia se completa y una velocidad de transferencia de bit óptima se ha determinado. Puesto que el ancho de banda disponible para la videoconferencia puede cambiar durante la videoconferencia, algunas modalidades continúan ajusfando la velocidad de transferencia de bit en base al conjunto de parámetros de condición de la red (es decir, la latencia de una vía y la velocidad de transferencia de bit de estimación de ancho de banda) que son recibidos desde el dispositivo remoto. La velocidad de transferencia de bit se puede ajustar durante la videoconferencia al incrementar la velocidad de transferencia de bit. Por ejemplo, si el proceso 1500 terminó debido a que la latencia de una vía se deterioró más allá de la cantidad de umbral definida y, durante la videoconferencia, la latencia de una vía mejora, algunas modalidades al incrementar la velocidad de transferencia de bit. De manera similar, si el proceso 1500 terminó debido a que la velocidad de transferencia de bit excedió la velocidad de transferencia de bit de estimación de ancho de banda, durante la videoconferencia, la velocidad de transferencia de bit de estimación de ancho de banda se incrementa, algunas modalidades incrementan la velocidad de transferencia de bit.
En contraste, la velocidad de transferencia de bit se puede ajustar durante la videoconferencia al disminuir la velocidad de transferencia de bit. Por ejemplo, si la latencia de una vía continúa deteriorándose más allá de la cantidad de umbral definida durante la videoconferencia, algunas modalidades disminuyen la velocidad de transferencia de bit. También, si la velocidad de transferencia de bit continua excediendo la velocidad de transferencia de bit de estimación de ancho de banda (por ejemplo, la velocidad de transferencia de bit de estimación de ancho de banda continua disminuyendo) durante la videoconferencia, algunas modalidades disminuyen la velocidad de transferencia de bit.
Por otra parte, la descripción del proceso 1500 utiliza la latencia de una vía y una velocidad de transferencia de bit de estimación de ancho de banda para determinar si se incrementa la velocidad de transferencia de bit. Sin embargo, uno de habilidad ordinaria comprenderá que cualquier número de parámetros de condición de la red se puede utilizar para determinar si se incrementa la velocidad de transferencia de bit en diferentes modalidades. Por ejemplo, la determinación de si se incrementa la velocidad de transferencia de bit se puede basar en solamente los datos de retardo de RTT o datos de pérdida de paquete.
C. Arquitectura de Videoconferencia Como es mencionado en lo anterior, la Figura 16 conceptualmente ilustra una arquitectura de software para un módulo de videoconferencia y procesamiento 1600 de un dispositivo móvil de cámara doble de algunas modalidades. Como se muestra, el módulo de videoconferencia y procesamiento 1600 incluye una aplicación de cliente 1665, un módulo de videoconferencia 1602, un módulo de intercambio de medios 1620, una memoria intermedia 1625, un controlador de unidad de procesamiento de imagen capturada (CIPU) 1630, un controlador de codificador 1635, y un controlador de descodificador 1640. En algunas modalidades, la memoria intermedia 1625 es una memoria intermedia de cuadro que almacena imágenes de un vídeo para la visualización en un dispositivo visualizador 1645 del dispositivo móvil de cámara doble.
En algunas modalidades, la aplicación de cliente 1665 es la misma como el cliente de videoconferencia 945 de la Figura 9. Como es mencionado en lo anterior, la aplicación de cliente 1665 se puede integrar en otra aplicación o implementar como una aplicación independiente. La aplicación de cliente 1665 puede ser una aplicación que utiliza las funciones de videoconferencia del módulo de videoconferencia 1602, tal como una aplicación de videoconferencia, una aplicación de voz sobre IP (VOIP) (por ejemplo, Skype), o una aplicación de traspaso de mensaje instantánea.
La aplicación de cliente 1665 de algunas modalidades envía las instrucciones al módulo de videoconferencia 1602, tal como instrucciones para iniciar una conferencia y terminar una conferencia, recibe las instrucciones del módulo de videoconferencia 1602, dirige las instrucciones de un usuario del dispositivo móvil de cámara doble al módulo de videoconferencia 1602, y genera interfaces de usuario que son visualizadas en el dispositivo móvil de cámara doble y permiten a un usuario interactuar con la aplicación.
D. Administrador de Videoconferencia Como se muestra en la Figura 16, el módulo de videoconferencia 1602 incluye un administrador de videoconferencia 1604, un administrador de procesamiento de imagen 1608, un administrador de red 1614, y memorias intermedias 1606, 1610, 1612, 1616 y 1618. En algunas modalidades, el módulo de videoconferencia 1602 es el mismo como el módulo de videoconferencia 925 ilustrado en la Figura 9 y de esta manera realiza algunas o todas las mismas funciones descritas en lo anterior para el módulo de videoconferencia 925.
En algunas modalidades, el administrador de videoconferencia 1604 es responsable para inicializar algunos o todos de los otros módulos del módulo de videoconferencia 1602 (por ejemplo, el administrador de procesamiento de imagen 1608 y el administrador de red 1614) cuando una videoconferencia está iniciando, para controlar la operación del módulo de videoconferencia 1602 durante la videoconferencia, y detener la operación de algunos o todos los otros módulos del módulo de videoconferencia 1602 cuando la videoconferencia está terminando.
El administrador de videoconferencia 1604 de algunas modalidades también procesa las imágenes recibidas de uno o más dispositivos en la videoconferencia e imágenes capturadas por una de ambas cámaras del dispositivo móvil de cámara doble para la visualización sobre el dispositivo móvil de cámara doble. Por ejemplo, el administrador de videoconferencia 1604 de algunas modalidades recupera imágenes descodificadas, que fueron recibidas de otro dispositivo que participa en la videoconferencia, de la memoria intermedia 1618 y recupera las imágenes procesadas por CIPU 1650 (es decir, imágenes capturadas por el dispositivo móvil de cámara doble) desde la memoria intermedia 1606. En algunas modalidades, el administrador de videoconferencia 1604 también escala y compone las imágenes antes de visualizar las imágenes sobre el dispositivo móvil de cámara doble. Esto es, el administrador de videoconferencia 1604 genera la PIP u otras vistas compuestas para la visualización sobre el dispositivo móvil en algunas modalidades. Algunas modalidades escalan las imágenes recuperadas de las memorias intermedias 1606 y 1618, mientras que otras modalidades solamente escalan las imágenes recuperadas de una de las memorias intermedias 1606 y 1618.
Aunque la Figura 16 ilustra el administrador de videoconferencia 1604, como parte del módulo de videoconferencia 1602, algunas modalidades del administrador de videoconferencia 1604 se implementan como un componente separado del módulo de videoconferencia 1602. Como tal, un solo administrador de videoconferencia 1604 se puede utilizar para administrar y controlar varios módulos de videoconferencia 1602. Por ejemplo, algunas modalidades funcionaran en un módulo de videoconferencia separado en el dispositivo local para interactuar con cada parte interesada o abonado en una conferencia de múltiples partes interesadas, y cada uno de estos módulos de videoconferencia sobre el dispositivo local se administran y se controlan por el administrador de videoconferencia.
El administrador de procesamiento de imagen 1608 de algunas modalidades procesa las imágenes capturadas por las cámaras del dispositivo móvil de cámara doble antes de que las imágenes sean codificadas por el codificador 1655. Por ejemplo, algunas modalidades del administrador de procesamiento de imagen 1608 realizan uno o más del ajuste de exposición, ajuste de enfoque, corrección de perspectiva, ajuste de intervalo dinámico, y redimensionamiento de imagen sobre las imágenes procesadas por la CIPU 1650. En algunas modalidades, el administrador de procesamiento de imagen 1608 controla la frecuencia de cuadro de las imágenes codificadas que son transmitidas al otro dispositivo en la videoconferencia.
Algunas modalidades del administrador de red 1614 manejan una o más conexiones entre el dispositivo móvil de cámara doble y otro dispositivo que participa en la videoconferencia. Por ejemplo, el administrador de red 1614 de algunas modalidades establece las conexiones entre el dispositivo móvil de cámara doble y el otro dispositivo de la videoconferencia en el inicio de la videoconferencia y separa estas conexiones al final de la videoconferencia.
Durante la videoconferencia, el administrador de red 1614 transmite las imágenes codificadas por el codificador 1655 a otro dispositivo de la videoconferencia y dirige las imágenes recibidas desde el otro dispositivo de la videoconferencia al descodificador 1660 para la descodificación. En algunas modalidades, el administrador de red 1614, antes que el administrador de procesamiento de imagen 1608, controla la frecuencia de cuadro de las imágenes que son transmitidas al otro dispositivo de la videoconferencia. Por ejemplo, algunas de tales modalidades del administrador de red 1614 controlan la frecuencia de cuadro al descender (es decir, no transmitir) algunos de los cuadros codificados que se supone que son transmitidos al otro dispositivo de la videoconferencia.
Como se muestra, el módulo de intercambio de medios 1620 de algunas modalidades incluye un módulo de fuente de cámara 1622, un módulo compresor de vídeo 1624, y un módulo descompresor de vídeo 1626. El módulo de intercambio de medios 1620 es el mismo como el módulo de intercambio de medios 310 mostrado en la Figura 3, con más detalle proporcionado. El módulo de fuente de cámara 1622 dirige los mensajes y el contenido de medios entre el módulo de videoconferencia 1602 y las CIPU 1650 a través del controlador de CIPU 1630, el módulo compresor de vídeo 1624 dirige los mensajes y el contenido de medios entre el módulo de videoconferencia 1602 y el codificador 1655 a través del controlador de codificador 1635, y el módulo descompresor de vídeo 1626 dirige los mensajes y el contenido de medios entre el módulo de videoconferencia 1602 y el descodificador 1660 a través del controlador de descodificador 1640. Algunas modalidades implementan el módulo TNR 315 incluido en el módulo de intercambio de medios 310 (no mostrado en la Figura 16) como parte del módulo de fuente de cámara 1622 mientras que otras modalidades implementan el módulo TNR 315 como parte del módulo compresor de vídeo 1624.
En algunas modalidades, el controlador de CIPU 1630 y el controlador de codificador 1635 son los mismos como el controlador de CIPU 305 y el controlador de codificador 320 ilustrados en la Figura 3. El controlador de descodificador 1640 de algunas modalidades actúa como una interfaz de comunicación entre el módulo descompresor de vídeo 1626 y el descodificador 1660. En tales modalidades, el descodificador 1660 descodifica las imágenes recibidas desde el otro dispositivo de la videoconferencia a través del administrador de red 1614 y las dirige a través del módulo descompresor de vídeo 1626. Después de que se descodifican las imágenes, ellas se envían nuevamente al módulo de videoconferencia 1602 a través del controlador de descodificador 1640 y el módulo descompresor de vídeo 1626.
Además de realizar el procesamiento del vídeo durante una videoconferencia, el módulo de videoconferencia y procesamiento 1600 para el dispositivo móvil de cámara doble de algunas modalidades también realiza operaciones de procesamiento de audio durante la videoconferencia. La Figura 17 ilustra tal arquitectura de software. Como se muestra, el módulo de videoconferencia y procesamiento de 1600 incluye el módulo de videoconferencia 1602 (que incluye el administrador de videoconferencia 1604, el administrador de procesamiento de imagen 1608, y el administrador de red 1614), el módulo de intercambio de medios 1620, y la aplicación de cliente 1665. Otros componentes y módulos del módulo de videoconferencia y procesamiento 1600 mostrados en la Figura 16 son omitidos en la Figura 17 para simplificar la descripción. El módulo de videoconferencia y procesamiento 1600 también incluye memorias intermedias de cuadro 1705 y 1710, administrador de procesamiento de audio 1715 y controlador de audio 1720. En algunas modalidades, el administrador de procesamiento de audio 1715 se implementa como un módulo de software separado, mientras que en otras modalidades el administrador de procesamiento de audio 1715 se implementa como parte del módulo de intercambio de medios 1620.
El administrador de procesamiento de audio 1715 procesa los datos de audio capturados por el dispositivo móvil de cámara doble para la transmisión al otro dispositivo en la videoconferencia. Por ejemplo, el administrador de procesamiento de audio 1715 recibe los datos de audio a través del controlador de audio 1720, que es capturado por el micrófono 1725, y codifica los datos de audio antes de almacenar los datos de audio codificados en la memoria intermedia 1705 para la transmisión a otro dispositivo. El administrador de procesamiento de audio 1715 también procesa los datos de audio capturados por y recibidos desde el otro dispositivo en la videoconferencia. Por ejemplo, el administrador de procesamiento de audio 1715 recupera los datos de audio desde la memoria intermedia 1710 y descodifica los datos de audio, que luego se transmiten a través del controlador de audio 1720 al altavoz 1730.
En algunas modalidades, el módulo de videoconferencia 1602 junto con el administrador de procesamiento de audio 1715 y sus memorias intermedias asociadas son parte de un módulo de conferencia más grande. Cuando se conduce una conferencia de audio de múltiples participantes entre varios dispositivos sin intercambio de contenido de vídeo, este módulo de videoconferencia y procesamiento 1600 solamente utiliza el administrador de red 1614 y el administrador de procesamiento de audio 1715 para facilitar el intercambio de audio sobre una capa de Protocolo de Internet (IP).
La operación del administrador de videoconferencia 1604 de algunas modalidades ahora será descrita por referencia a la Figura 18. La Figura 18 conceptualmente ilustra un proceso 1800 realizado por un administrador de videoconferencia de algunas modalidades, tal como administrador de videoconferencia 1604 ilustrada en la Figura 16. Esto puede ser equivalente a la que es realizado por la capa de administración 935 de la Figura 9. En algunas modalidades, el administrador de videoconferencia 1604 realiza el proceso 1800, cuando un usuario del dispositivo móvil de cámara doble acepta (por ejemplo, a través de una interfaz de usuario visualizada sobre el dispositivo móvil de cámara doble) una petición de videoconferencia o cuando un usuario de otro dispositivo acepta una petición enviada por el usuario del dispositivo móvil de cámara doble.
El proceso 1800 comienza a recibir (en 1805) instrucciones para iniciar una videoconferencia. En algunas modalidades, las instrucciones son recibidas de la aplicación de cliente 1665 o son recibidas desde un usuario a través de una interfaz de usuario visualizada sobre dispositivo móvil de cámara doble y adelantada al administrador de videoconferencia 1604 por la aplicación de cliente 1665. Por ejemplo, en algunas modalidades, cuando un usuario de dispositivo móvil de cámara doble acepta una petición de videoconferencia, las instrucciones son recibidas a través de la interfaz de usuario y adelantadas por la aplicación de cliente. Por otra parte, cuando un usuario del otro dispositivo acepta una petición enviada desde el dispositivo local, algunas modalidades reciben las instrucciones de la aplicación de cliente sin interacción de interfaz de usuario (aunque puede haber interacción de la interfaz del usuario previa para enviar la petición inicial).
Enseguida, el proceso 1800 inicializa (en 1810) un primer módulo que interactúa con el administrador de videoconferencia 1604. Los módulos de algunas modalidades que interactúan con el administrador de videoconferencia 1604 incluyen la CIPU 1650, el administrador de procesamiento de imagen 1608, el administrador de procesamiento de audio 1715, y el administrador de red 1614.
En algunas modalidades, la inicialización de la CIPU 1650 incluye la instrucción de la CIPU 1650 para iniciar el procesamientos de las imágenes capturadas por una o ambas cámaras del dispositivo móvil de cámara doble. Algunas modalidades inicializan el administrador de procesamiento de imagen 1608 al instruir al administrador de procesamiento de imagen 1608 para iniciar la recuperación de imágenes de la memoria intermedia 1610 y procesar y codificar las imágenes recuperadas. Para inicializar el administrador de procesamiento de audio 1715, algunas modalidades instruyen al administrador de procesamiento de audio 1715 para comenzar la codificación de los datos de audio capturados por el micrófono 1725 y descodificar los datos de audio almacenados en la memoria intermedia 1710 (que se recibió desde el otro dispositivo) con el fin de mandárselos al altavoz 1730. La inicialización del administrador de red 1614 de algunas modalidades incluye instruir al administrador de red 1614 para establecer una conexión de red con el otro dispositivo en la videoconferencia.
El proceso 1800 luego determina (en 1815) si hay algunos módulos sin inicializar. Cuando hay módulos sin inicializar, el proceso 1800 retorna a la operación 1810 para inicializar otros de los módulos. Cuando todos los módulos requeridos se han inicializado, el proceso 1800 genera (en 1820) imágenes compuestas para la visualización sobre el dispositivo móvil de cámara doble (es decir, visualización local). Estas imágenes compuestas pueden incluir aquellas mostradas en la Figura 65, descritas enseguida (es decir, PIP y otras visualizaciones compuestas), y pueden incluir varias combinaciones de imágenes desde las cámaras del dispositivo móvil de cámara doble local e imágenes desde las cámaras del otro dispositivo que participa en la videoconferencia.
Enseguida, el proceso 1800 determina (en 1825) si se ha hecho un cambio a la videoconferencia. Algunas modalidades reciben los cambios a la videoconferencia a través de las interacciones del usuario con una interfaz de usuario visualizada sobre el dispositivo móvil de cámara doble, mientras que otras modalidades reciben los cambios a la videoconferencia desde el otro dispositivo a través del administrador de red 1614 (es decir, control remoto). Los cambios a los ajustes de videoconferencia también se pueden recibir desde la aplicación de cliente 1665 u otros módulos en el módulo de videoconferencia 1602 en algunas modalidades. Los ajustes de videoconferencia también pueden cambiar debido a los cambios en las condiciones de la red.
Cuando se ha hecho un cambio, el proceso 1800 determina (en 1830) si el cambio a la videoconferencia es un cambio al ajuste de la red. En algunas modalidades, los cambios son ya sea cambios de ajuste de la red o cambios de ajuste de captura de imagen. Cuando el cambio a la videoconferencia es un cambio a un ajuste de la red, el proceso modifica (en 1840) el ajuste de la red y, luego prosigue hacia la operación 1845. Los cambios de ajuste de la red de algunas modalidades incluyen cambiar la velocidad de transferencia de bit en las cuales las imágenes son codificadas o la frecuencia de cuadro en las cuales las imágenes se transmiten a otro dispositivo.
Cuando el cambio a la videoconferencia no es un cambio a un ajuste de la red, el proceso 1800 determina que el cambio es un cambio a un ajuste de captura de imagen y, luego procede a la operación 1835. El proceso 1800 luego realiza (en 1835) el cambio al ajuste de captura de imagen. En algunas modalidades, el cambio a los ajustes de captura de imagen pueden incluir la conmutación de las cámaras (es decir, la conmutación de la cámara en el dispositivo móvil de cámara doble que capturará el vídeo), ajuste de enfoque, ajuste de exposición, visualización o no visualización de imágenes de una o ambas cámaras del dispositivo móvil de cámara doble, y acercamiento o zoom dentro o fuera de las imágenes visualizadas sobre el dispositivo móvil de cámara doble, entre otros cambios de ajuste.
En la operación 1845, el proceso 1800 determina si se finaliza la videoconferencia. Cuando el proceso 1800 determina no finalizar la videoconferencia, el proceso 1800 retorna a la operación 1820. Cuando el proceso 1800 determina que la videoconferencia terminará, termina el proceso 1800. Algunas modalidades del proceso 1800 determinan finalizar la videoconferencia cuando el proceso 1800 recibe las instrucciones desde la aplicación de cliente 1665 para finalizar la videoconferencia (es decir, debido a instrucciones recibidas a través de la interfaz de usuario del dispositivo móvil de cámara doble local o recibidas desde el otro dispositivo que participa en la videoconferencia).
En algunas modalidades, el administrador de videoconferencia 1604 realiza varias operaciones cuando la videoconferencia termina que no son mostradas en el proceso 1800. Algunas modalidades instruyen a la CIPU 1650 para detener la producción de imágenes, el administrador de red 1614 se separa de la conexión de red con el otro dispositivo en la videoconferencia, y el administrador de procesamiento de imagen 608 detiene el procesamiento y codificación de imágenes.
E. Reducción de Ruido Temporal Algunas modalidades incluyen un módulo de reducción de ruido temporal específico para procesar imágenes de vídeo para reducir el ruido en el vídeo. El módulo de reducción de ruido temporal de algunas modalidades compara las imágenes subsecuentes en una secuencia de vídeo para identificar y eliminar el ruido indeseado desde el vídeo.
La Figura 19 conceptualmente ilustra una arquitectura de software para tal módulo de reducción de ruido temporal (TNR) 1900 de algunas modalidades. Algunas modalidades implementan el módulo de TNR 1900 como parte de una aplicación (por ejemplo, como parte del módulo de intercambio de medios, como es mostrada en la Figura 3) mientras que otras modalidades implementan el módulo de TNR 1900 como una aplicación independiente que se utiliza por otras aplicaciones. Todavía otras modalidades implementan el módulo de TNR 1900 como parte de un sistema de operación que funciona en el dispositivo móvil de cámara doble. En algunas modalidades, el módulo de TNR 1900 se implementa como un conjunto de API que proporciona algunas o todas las funcionalidades del módulo de TNR 1900 a otras aplicaciones.
Como se muestra en la Figura 19, el módulo de TNR 1900 incluye un administrador de TNR 1905, un módulo de diferencia 1910, un módulo de promediado de pixeles 1915, y un módulo de historia de movimiento 1920. Mientras que la Figura 19 muestra los tres módulos 1910, 1915 y 1920 como módulos separados, algunas modalidades implementan las funcionalidades de estos módulos, descritos enseguida, en un solo módulo. El módulo de TNR 1900 de algunas modalidades recibe como entrada una imagen de entrada, una imagen de referencia, y una historia de movimiento. En algunas modalidades, la imagen de entrada es la imagen que es actualmente procesada mientras que la imagen de referencia es la imagen previa en la secuencia de vídeo con la cual se compara la imagen de entrada. El módulo de TNR 1900 hace salir una imagen de salida (una versión de la imagen de entrada con ruido reducido) y una historia de movimiento de salida.
El administrador de TNR 1905 de algunas modalidades dirige el flujo de datos a través del módulo de TNR 1900. Como es mostrado, el administrador de TNR 1905 recibe la imagen de entrada, la imagen de referencia, y la historia de movimiento. El administrador de TNR 1905 también hace salir a la imagen de salida y la historia de movimiento de salida. El administrador de TNR 1905 envía la imagen de entrada y la imagen de referencia al módulo de diferencia 1910 y recibe una imagen de diferencia desde el módulo de diferencia 1910.
En algunas modalidades, el módulo de diferencia 1910 procesa los datos recibidos desde el administrador de TNR 1905 y envía los datos procesados al administrador de TNR 1905. Como es mostrado, el módulo de diferencia 1910 recibe la imagen de entrada y la imagen de referencia desde el administrador de TNR 1905. El módulo de diferencia 1910 de algunas modalidades genera una imagen de diferencia al sustraer los valores de pixeles de una imagen de los valores de pixeles de la otra imagen. La imagen de diferencia se envía al administrador de TNR 1905. La imagen de diferencia de algunas modalidades indica la diferencia entre las dos imágenes con el fin de identificar las secciones de la imagen de entrada que han cambiado y las secciones de la imagen de salida que han permanecido en las mismas como es comparado con la imagen previa.
El administrador de TNR 1905 también envía la imagen de entrada y la imagen de referencia al módulo de promedio de pixeles 1915. Como se muestra, algunas modalidades también envían la historial de movimiento al módulo de promedio de pixeles 1915 también. Otras modalidades, sin embargo, podrían enviar solamente la imagen de entrada y la imagen de referencia sin la historia de movimiento. En cualquiera de las modalidades, el administrador de TNR 1905 recibe una imagen procesada desde el módulo de promedio de pixeles 1915.
El módulo de promedio de pixeles 1915 de algunas modalidades utiliza la historia de movimiento para determinar si se toma un promedio de los pixeles desde las imágenes de entrada y de referencia para una ubicación particular en la imagen. En algunas modalidades, la historia de movimiento incluye un valor de probabilidad para cada pixel en la imagen de entrada. Un valor de probabilidad particular representa la probabilidad de que el pixel correspondiente en la imagen de entrada ha cambiado (es decir, un pixel dinámico) con respecto al pixel correspondiente en la imagen de referencia. Por ejemplo, si el valor de. probabilidad de un pixel particular en la imagen de entrada es 20, que indica una probabilidad de 20% de que el pixel particular en la imagen de entrada ha cambiado con respecto al pixel correspondiente en la imagen de referencia. Como otro ejemplo, si el valor de probabilidad de un pixel particular en la imagen de entrada es 0, indica que el pixel particular en la imagen de entrada no ha cambiado (es decir, un pixel estático) con respecto al pixel correspondiente en la imagen de referencia.
Diferentes modalidades almacenan los valores de probabilidad de la imagen de entrada de manera diferente. Algunas modalidades podrían almacenar los valores de probabilidad de cada pixel de la imagen de entrada en un arreglo de datos. Otras modalidades podían almacenar los valores de probabilidad en una matriz (por ejemplo, un arreglo de arreglos) con las mismas dimensiones como la resolución de las imágenes del vídeo. Por ejemplo, si la resolución de las imágenes del vídeo es 320x240, entonces la matriz también es 320x240.
Cuando el módulo de promedio de pixeles 1915 recibe la historia de movimiento, además de la imagen de entrada y la imagen de referencia desde el administrador de TNR 905, el módulo de promedio de pixeles 1915 lee los valores de probabilidad de cada pixel en la imagen de entrada. Si el valor de probabilidad para un pixel particular en la imagen de entrada está por abajo de un umbral definido (por ejemplo, 5%, 20%), el módulo de promedio de pixeles 1915 promedia el valor de pixel particular con el valor de pixel correspondiente en la imagen de referencia en base a la premisa de que no hay probabilidad que sea movimiento en el pixel particular, y así las diferencias entre las imágenes en ese pixel pueden ser atribútales al ruido.
Sí la probabilidad para el pixel particular en la imagen de entrada no está abajo del umbral definido, el módulo de promedio de pixeles 1915 no modifica el pixel particular de la imagen de entrada (es decir, el valor de pixel en ese pixel permanece el mismo como en la imagen de entrada). Esto es debido a que el movimiento está más probablemente en el pixel particular, de modo que las diferencias entre las imágenes son más probables que no sean el resultado del ruido. En algunas modalidades, cuando la historia de movimiento no se envía al módulo de promedio de pixeles 1915, el módulo de promedio de pixeles 1915 promedia cada pixel en la imagen de entrada con el pixel correspondiente en la imagen de referencia. La imagen procesada que se hace salir por el módulo de promedio de pixeles 1915 y envía al administrador de TNR 1905 incluye los valores de pixel de imagen de entrada para cualquiera de los pixeles que no se promediaron y los valores de pixel promediados para cualquiera de los pixeles que se promediaron por el módulo de promedio de pixeles 1915.
En algunas modalidades, el módulo de historia de movimiento 1920 procesa los datos recibidos del administrador de TNR 1905 y envía los datos de resultado nuevamente al administrador de TNR 1905. El módulo de historia de movimiento 1920 de algunas modalidades recibe la imagen de entrada y la historia de movimiento desde el administrador de TNR 1905. Algunas modalidades introducen estos datos en un estimador de Bayes con el fin de generar una nueva historia de movimiento (es decir, un ajuste de valores de probabilidad) que se puede utilizar en el promedio de pixeles para la siguiente imagen de entrada. Otras modalidades utilizan otros estimadores para generar la nueva historia de movimiento.
La operación del módulo de TNR 1900 ahora será descrita por referencia a la Figura 20. Esta figura conceptualmente ilustra un proceso 2000 de algunas modalidades para reducir el ruido temporal de imágenes de un vídeo. El proceso 2000 inicia por el administrador de TNR 1905 que recibe (en 2005) una imagen de entrada, una imagen de referencia, y una historia de movimiento. La imagen de entrada es la imagen que es actualmente procesada para la reducción del ruido. En algunas modalidades, la imagen de referencia es la imagen previa de una secuencia de imágenes del video como son recibidas desde la CIPU. En otras modalidades, sin embargo, la imagen de referencia es la imagen de salida generada del procesamiento de imagen de entrada previa (es decir, la salida del módulo de TNR 1900). La historia de movimiento es la historia de movimiento de salida generada del procesamiento de la imagen de entrada previa.
Cuando la imagen de entrada es la primera imagen del vídeo, el módulo de TNR 1900 de algunas modalidades no procesa (es decir, aplica TNR a) la primera imagen. En otras palabras, el administrador de TNR 1905 recibe la primera imagen y solamente hace salir la primera imagen. En otras modalidades, cuando la imagen de entrada es la primera imagen del vídeo, la primera imagen se utiliza como la imagen de entrada y la imagen de referencia y el módulo de TNR 1900 produce la imagen como es descrita enseguida. Además, cuando la imagen de entrada es la primera imagen del vídeo, la historia de movimiento está vacía (por ejemplo, nula, completa de ceros, etc.) y el administrador de TNR 1905 solamente hace salir una historia de movimiento vacía como la historia de movimiento de salida.
El administrador de TNR 1905 luego determina (en 2010) si la imagen de entrada es estática. Con el fin de hacer esta determinación, algunas modalidades envían la imagen de entrada y la imagen de referencia al módulo de diferencia 910 y reciben una imagen de diferencia desde el módulo de diferencia 1910. Cuando la diferencia entre las dos imágenes está abajo de un umbral definido (por ejemplo, 5% de diferencia, 10% de diferencia, etc.), algunas modalidades clasifican la imagen de entrada como estática.
Cuando la imagen de entrada es una imagen estática, el administrador de TNR 1905 envía la imagen de entrada y la imagen de referencia al módulo de promedio de pixeles 1915 para promediar (en 2015) los pixeles de la imagen de entrada con los pixeles de la imagen de referencia con el fin de reducir cualquier ruido de la imagen estática. El proceso luego procede a 2040, que es descrito enseguida.
Cuando la imagen de entrada no es una imagen estática, el administrador de TNR envía la imagen de entrada, imagen de referencia, e historia de movimiento al módulo de promedio de pixeles 1915 para el procesamiento. El módulo de promedio de pixeles 1915 selecciona (en 2020) un pixel en la imagen de entrada. Utilizando la historia de movimiento, el módulo de promedio de pixeles 1915 determina (en 2025) si la probabilidad de movimiento de los pixeles está abajo de un umbral particular, como es descrito en lo anterior.
Si la probabilidad de pixel seleccionado está abajo del umbral particular, el módulo de promedio de pixeles 1915 promedia (en 2030) el pixel de la imagen de entrada con el pixel correspondiente en la imagen de referencia. De otra manera, el pixel no se promedia y la imagen de salida será la misma como la imagen de entrada en ese pixel particular. El módulo de promedio de pixeles 1915 luego determina (en 2035) si hay cualquiera de los pixeles no seleccionados dejados en la imagen de entrada. Si cualquiera de los pixeles todavía no han sido procesados, el proceso retorna a la operación 2020 para seleccionar el siguiente pixel. El módulo de promedio de pixeles 1915 realiza las operaciones 2020-2030 hasta que se han evaluado todos los pixeles.
El proceso luego actualiza (en 2040) la historia de movimiento. Como se muestra en la Figura 19 y descrita en lo anterior, el módulo de historia de movimiento 1920 actualiza la historia de movimiento en base a la imagen de entrada. La nueva historia de movimiento se hace salir por el administrador de TNR junto con la imagen procesada desde el módulo de promedio de pixeles.
F. Administrador de Procesamiento de Imagen y Codificador Además de la reducción de ruido temporal y las operaciones de procesamiento de imagen realizadas por la CIPU y/o el controlador de CIPU, algunas modalidades realizan una variedad de operaciones de procesamiento de imagen en la capa de procesamiento de imagen 930 del módulo de videoconferencia 925. Estas operaciones de procesamiento de imagen pueden incluir el ajuste de exposición, el ajuste de enfoque, corrección de perspectiva, ajuste de intervalo dinámico, y redimensionamiento de la imagen, entre otros.
La Figura 21 conceptualmente ilustra un proceso 2100 para realizar tales operaciones de procesamiento de imagen. En algunas modalidades, algunas o todas de las operaciones del proceso 2100 se realizan mediante una combinación del administrador de procesamiento de imagen 1608 y el controlador de codificador 1635 de la Figura 16. En algunas de tales modalidades, el administrador de procesamiento de imagen 1608 realiza el procesamiento en base a pixeles (por ejemplo, redimensionamiento, ajuste de intervalo dinámico, corrección de perspectiva, etc.). Algunas modalidades realizan el proceso 2100 durante una videoconferencia sobre las imágenes que van a ser transmitidas a otro dispositivo que participa en la videoconferencia.
El proceso 2100 ahora será descrito por referencia a la Figura 16. El proceso se inicia al recuperar (en 2105) una imagen desde la memoria intermedia 1606. En algunas modalidades, la imagen recuperada es una imagen de un vídeo (es decir, una imagen en una secuencia de imágenes). Este video puede haber sido capturado por una cámara de un dispositivo sobre la cual se realiza el proceso 2100.
Enseguida, el proceso 2100 realiza (en 21 10) el ajuste de exposición en la imagen recuperada. Algunas modalidades realizan los ajustes de exposición a través de una interfaz de usuario que es visualizada sobre el dispositivo móvil de cámara doble. La Figura 22 ilustra una operación de ajuste de exposición de ejemplo de tales modalidades.
Esta figura ilustra la operación de ajuste de exposición por referencia a tres etapas 2210, 2215, y 2220 de una Ul 2205 de un dispositivo 2200. La primera etapa 2210 ilustra la Ul 2205, que incluye un área de visualización 2225 y un área de visualización 1155. Como es mostrado, el área de visualización 2225 visualiza una imagen 2230 de un sol y un hombre con una cara oscura y cuerpo. La cara oscura y cuerpo indica que el hombre no está apropiadamente expuesto. La imagen 2230 podría ser una imagen de video capturada por una cámara del dispositivo 2200. Como es mostrado, el área de visualización 1155 incluye un articulo de Ul seleccionable 2250 para finalizar la videoconferencia. En algunas modalidades, el arreglo del área de visualización 1155 es el mismo como el arreglo del área de visualización 1155 de la Figura 12, descrita en lo anterior.
La segunda etapa 2215 ilustra un usuario del dispositivo 2200 que inicia una operación de ajuste de exposición al seleccionar un área del área de visualización 2225. En este ejemplo, una selección se hace al colocar un dedo 2235 en cualquier parte dentro del área de visualización 2225. En algunas modalidades, un usuario selecciona el ajuste de exposición desde un menú de posibles ajustes de arreglo de imagen.
La tercera etapa 2220 muestra una imagen 2240 de un hombre después de que se completa la operación de ajuste de exposición. Como es mostrado, la imagen 2240 es similar a la imagen 2230, pero el hombre de la imagen 2240 se expone apropiadamente. En algunas modalidades, la imagen apropiadamente expuesta es una imagen que es capturada después de la imagen inapropiadamente expuesta. La operación de ajuste de exposición iniciada en la segunda etapa 2215 ajusta la exposición de imágenes subsecuentes capturadas por la cámara del dispositivo 2200.
Regresando a la Figura 21 , el proceso 2100 enseguida realiza (en 2115) el ajuste de enfoque sobre la imagen. Algunas modalidades realizan el ajuste de enfoque a través de una interfaz de usuario que es visualizada sobre el dispositivo móvil de cámara doble. La Figura 23 conceptualmente ilustra un ejemplo de tales operaciones de ajuste de enfoque.
La Figura 23 ilustra una operación de ajuste de enfoque por referencia a tres diferentes etapas 2310, 2315, y 2320 de una Ul 2305 de un dispositivo 2300. La primera etapa 2310 ilustra la Ul 2305 incluye un área de visualizacion 2325 y un área de visualización 1155. El área de visualización 2325 presenta una imagen borrosa 2330 de un hombre capturado por una cámara del dispositivo 2300. La borrosidad indica que la imagen 2330 del hombre está fuera del enfoque. Esto es, la lente de la cámara no fue enfocada en el hombre cuando la imagen 2330 del hombre se capturó por la cámara. También, la imagen 2330 podría ser una imagen de video capturada por una cámara del dispositivo 2300. Como es mostrado, el área de visualización 1155 incluye un artículo de Ul seleccionare 2350 para finalizar la videoconferencia. En algunas modalidades, el arreglo del área de visualización 1155 es el mismo como el arreglo del área de visualización 1155 de la Figura 12, descrita en lo anterior.
La segunda etapa 2315 ilustra un usuario del dispositivo 2300 que inicia una operación de ajuste de enfoque al seleccionar un área del área de visualización 2325. En este ejemplo, una selección se hace al colocar un dedo 2335 en cualquier parte dentro del área de visualización 2325. En algunas modalidades, un usuario selecciona el ajuste de enfoque desde un menú de posibles ajustes de arreglo de imagen.
La tercera etapa 2320 muestra una imagen 2340 del hombre después de que se completa la operación de ajuste de enfoque. Como es mostrado, la imagen 2340 es la misma como la imagen 2330, pero el hombre en la imagen 2340 aparece más afinado. Esto indica que la lente de la cámara se enfoca apropiadamente sobre el hombre. En algunas modalidades, la imagen apropiadamente enfocada es una imagen que es capturada después de la imagen inapropiadamente enfocada. La operación de ajuste de enfoque iniciada en la segunda etapa 2315 ajusta el enfoque de imágenes subsecuentes capturadas por la cámara del dispositivo 2300.
Nuevamente en la Figura 21 , el proceso 2100 realiza (en 2120) el redimensionamiento de imagen sobre la imagen. Algunas modalidades realizan redimensionamiento de la imagen sobre la imagen para reducir el número de bit utilizados para codificar la imagen (es decir, es menor la velocidad de transferencia de bit). En algunas modalidades, el proceso de 2100 realiza el redimensionamiento de imagen como es descrito enseguida por referencia a la Figura 26.
El proceso 2100 enseguida realiza (en 2125) la corrección de perspectiva sobre la imagen. En algunas modalidades, el proceso 2100 realiza la corrección de perspectiva como es descrita en la Figura 24 enseguida. Tal corrección de perspectiva involucra la utilización de los datos tomados por uno o más sensores de acelerómetro y/o giroscopio que identifica la orientación y el movimiento del dispositivo móvil de cámara doble. Estos datos luego se utilizan para modificar la imagen para corregir que la perspectiva sea completa.
Después de que se realiza la corrección de perspectiva sobre la imagen, el proceso 2100 ajusta (en 2130) el intervalo dinámico de la imagen. En algunas modalidades, el intervalo dinámico de una imagen es el intervalo de valores posibles que puede tener cada pixel en la imagen. Por ejemplo, una imagen con un intervalo dinámico de 0-255 se puede ajustar a un intervalo de 0-128 o cualquier otro intervalo de valores. El ajuste de intervalo dinámico de una imagen puede reducir la cantidad de bit que será utilizada para codificar la imagen (es decir, es menor la velocidad de transferencia de bit) y de esta manera la calidad de uniforme de la imagen.
El ajuste de intervalo dinámico de una imagen también se puede utilizar para otros diversos propósitos. Un propósito es reducir el ruido de la imagen (por ejemplo, la imagen se capturó por un sensor de cámara ruidosa). Para reducir el ruido, el intervalo dinámico de la imagen se puede ajustar de modo que los niveles de negro se redefinen para incluir negros más claros (es decir, negros nubosos). De esta manera, el ruido de la imagen se reduce. Otro propósito del ajuste de intervalo dinámico es ajustar uno o más colores o intervalo de colores con el fin de mejorar la imagen. Por ejemplo, algunas modalidades pueden asumir que la imagen capturada por la cámara frontal es una imagen de la cara de una persona. Por consiguiente, el intervalo dinámico de la imagen se puede ajustar para crear los colores rojo y rosa para hacer que las mejillas de la persona aparezcan rosadas/de color más rosa. La operación de ajuste de intervalo dinámico se puede utilizar para otros propósitos también.
Finalmente, el proceso 2100 determina (en 2135) uno o más parámetros del controlador de velocidad que se utilizan para codificar la imagen. Tales parámetros del controlador de velocidad pueden incluir un parámetro de cuantificación y un tipo de cuadro (por ejemplo, predictivo, bi-direccional, intra-codificado) en algunas modalidades. El proceso luego termina.
Mientras que las diversas operaciones del proceso 2100 se ilustran como que son realizadas en un orden específico, uno de habilidad ordinaria reconocerá que muchas de estas operaciones (ajuste de exposición, ajuste de enfoque, corrección de perspectiva, etc.) se pueden realizar en cualquier orden y no son dependientes entre sí. Esto es, el proceso de algunas modalidades podría realizar el ajuste de enfoque antes del ajuste de exposición, o modificaciones similares al proceso ilustrado en la Figura 21. 1. Corrección de Perspectiva Como es mencionado en lo anterior, algunas modalidades realizan la corrección de perspectiva sobre una imagen antes de la visualización o transmisión de la imagen. En algunos casos, una o más de las cámaras en un dispositivo móvil de cámara doble no serán orientadas apropiadamente con su sujeto y el sujeto aparecerá distorsionado en una imagen no corregida. La corrección de perspectiva se puede utilizar para procesar las imágenes de modo que las imágenes reflejarán más estrechamente como los objetos en las imágenes que aparecen en persona.
La Figura 24 conceptualmente ilustra un proceso de corrección de perspectiva 2400 realizado por un administrador de procesamiento de imagen de algunas modalidades tal como aquella ilustrada en la Figura 16. El proceso 2400 de algunas modalidades se realiza por la capa de procesamiento de imagen 930 mostrada en la Figura 9 (que puede contener un administrador de procesamiento de imagen 1608). Algunas modalidades realizan el proceso 2400 en la operación 2125 del proceso 2100, con el fin de corregir la perspectiva de las imágenes de vídeo recientemente capturadas antes de la visualización o transmisión de las imágenes.
El proceso 2400 inicia al recibir (en 2405) los datos desde un sensor de aceleró-metro, que es una parte del dispositivo móvil de cámara doble en algunas modalidades. El sensor de acelerómetro de algunas modalidades mide la tasa de cambio de la velocidad del dispositivo (es decir, la aceleración del dispositivo) a lo largo de uno o más ejes. El proceso también recibe (en 2410) los datos de un sensor de giroscopio, que también puede ser una parte del dispositivo móvil de cámara doble en algunas modalidades. Los sensores de giroscopio y de acelerómetro de algunas modalidades se pueden utilizar individualmente o en combinación para identificar la orientación del dispositivo móvil de cámara doble.
Enseguida, el proceso 2400 determina (en 2415) la cantidad de corrección de perspectiva para realizar en base a los datos obtenidos desde los sensores de acelerómetro y de giroscopio. Generalmente, cuando la orientación está además fuera del eje, más corrección de perspectiva será requerida para producir una imagen óptima. Algunas modalidades calculan un parámetro de envoltura para representar la cantidad de corrección de perspectiva en base a la orientación del dispositivo.
Después de determinar la cantidad de corrección de perspectiva para llevar a cabo, el proceso 2400 recibe (en 2420) una imagen capturada por una cámara del dispositivo móvil de cámara doble. Este proceso se puede realizar para cada imagen en la secuencia de vídeo capturada por la cámara. Algunas modalidades pueden realizar cálculos separados para las imágenes que provienen de cada una de las dos cámaras en el dispositivo móvil de cámara doble.
El proceso luego modifica (en 2425) la imagen en base a la cantidad determinada de corrección de perspectiva. Algunas modalidades también usan una imagen de línea de base u otra información (por ejemplo, un punto introducido por el usuario alrededor del cual debe realizada la corrección), además del parámetro de envoltura u otra representación de la cantidad de corrección de perspectiva. Después de modificar la imagen, termina el proceso 2400.
La Figura 25 conceptualmente ilustra las operaciones de procesamiento de imagen de ejemplo de algunas modalidades. Esta figura ilustra una primera operación de procesamiento de imagen 2505 realizada por un primer módulo de procesamiento de imagen 2520 que no usa la corrección de perspectiva y una segunda operación de procesamiento de imagen 2550 realizada por un segundo módulo de procesamiento de imagen 2565 que utiliza la corrección de perspectiva.
Como es mostrado, la primera operación de procesamiento de imagen 2505 se realiza en una primera imagen 2510 de un bloque 2515 desde una perspectiva aérea que mira hacia abajo en un ángulo hacia el bloque. Desde de esa perspectiva, la parte superior del bloque 2515 está más cercana que el fondo del bloque. Como tal, el bloque 2515 aparece para ser inclinado hacia la cámara que capturó la primera imagen 2510. La Figura 25 también muestra la primera imagen procesada 2525 después del procesamiento por el primer módulo de procesamiento de imagen 2520. Como es mostrado, el bloque 2515 en la primera imagen procesada 2525 aparece del mismo post-procesamiento, ya que el primer módulo de procesamiento de imagen 2520 no realizó cualquier corrección de perspectiva.
La segunda operación de procesamiento de imagen 2550 se realiza sobre una segunda imagen 2555 de un bloque 2560. El bloque 2560 es el mismo como el bloque 2515 en la primera imagen 2510. La Figura 25 también muestra una segunda imagen procesada 2575 después del procesamiento de la segunda imagen 2555 por el corrector de perspectiva 2570 del segundo módulo de procesamiento de imagen 2565. El corrector de perspectiva 2570 puede utilizar el proceso 2400 con el fin de corregir la perspectiva de la segunda imagen 2555. En base a los datos de un acelerómetro y giroscopio que indican que la cámara que capturó la segunda imagen 2555 está inclinándose en un ángulo hacia abajo (y posiblemente en base a otros datos), el corrector de perspectiva 2570 es capaz de corregir la segunda imagen de modo que el bloque aparece para ser visualizado rectamente en la segunda imagen procesada 2575. 2. Redimensionamiento y Manipulación del Flujo de Bit Entre las funciones descritas en lo anterior por referencia a la Figura 21 que se realizan por la capa de procesamiento de imagen 930 de algunas modalidades, están en el redimensionamiento de la imagen y la manipulación del flujo de bit. El redimensionamiento de imagen (realizado en la operación 2130) involucra la escalación hacia arriba o hacia abajo de una imagen en algunas modalidades (es decir, la modificación del número de pixeles utilizados para representar la imagen). En algunas modalidades, la manipulación del flujo de bit involucra insertar datos en el flujo de bit que indica el tamaño de la imagen después del redimensionamiento. Este redimensionamiento y manipulación de flujo de bit se realiza por un controlador de codificador (por ejemplo, controlador 1635) en algunas modalidades.
La Figura 26 conceptualmente ilustra una arquitectura de software para tal controlador de codificador 2600 de algunas modalidades, y muestra un redimensionamiento de ejemplo y operaciones de manipulación de flujo de bit realizadas por el controlador de codificador 2600 sobre una imagen de ejemplo 2605. En algunas modalidades, la imagen 2605 es una imagen de un vídeo capturado por una cámara del dispositivo móvil de cámara doble para la transmisión a otro dispositivo(s) en una videoconferencia. Con referencia a la Figura 16, en algunas modalidades la imagen de vídeo tendrá que ser desplazada desde la CIPU 1650 a través del controlador de CIPU 1630 y el módulo de fuente de cámara 1622 a la memoria intermedia 1606, de la cual se recupera mediante el administrador de procesamiento de imagen 1608. Después de llevar a cabo el procesamiento de imagen (por ejemplo, ajuste de enfoque, ajuste de exposición, corrección de perspectiva) en el administrador de procesamiento de imagen 1608, la imagen se envía a través de memoria intermedia 1610 y el módulo compresor de vídeo 1624 al controlador de codificador 1635.
Como es mostrado, el controlador de codificador 2600 incluye una capa de procesamiento 2610 y un controlador de velocidad 2645. Ejemplos del control de velocidad de algunas modalidades se ilustran en la Figura 30 descrita enseguida. La capa de procesamiento 2610 incluye un redimensionador de imagen 2615 y un administrador de flujo de bit 2625. En algunas modalidades, estos módulos realizan varias operaciones sobre las imágenes tanto antes como después de que se codifican las imágenes son. Mientras que en este ejemplo el redimensionador de imagen se muestra como parte de la capa de procesamiento 2610 del controlador de codificador 2600, algunas modalidades implementan el redimensionador de imagen como parte del administrador de procesamiento de imagen 1608 antes que el controlador de codificador 2600 (es decir, el redimensionamiento de la imagen se hace antes de enviar la imagen y los datos de tamaño al controlador de codificador).
Como es mostrado, el redimensionador de imagen 2615 redimensiona las imágenes antes de que las imágenes se envíen al codificador 2650 a través del controlador de velocidad 2645. La imagen de 2605 se envía a través del redimensionador 2615 y se escala hacia abajo en la imagen de 2630. Además de la escalación hacia abajo de una imagen, algunas modalidades también puede escalar hacia arriba una imagen.
Como se muestra en la Figura 26, algunas modalidades escalan hacia abajo la imagen entrante (por ejemplo, la imagen 2605) y luego sobreponen la imagen escalada hacia abajo (por ejemplo, imagen 2630) sobre una imagen espacialmente redundante (por ejemplo, imagen 2635) que es del mismo tamaño (en pixeles) como la imagen entrante (es decir, el número de hileras y columnas de pixeles de la imagen 2605 son los mismos como el número de hileras y columnas de los pixeles de la imagen espacialmente redundante 2635). Algunas modalidades sobreponen la imagen escalada hacia abajo 2630 en la esquina izquierda superior de la imagen espacialmente redundante (como es mostrado, para producir la imagen compuesta 2640), mientras que otras modalidades sobreponen la imagen escalada hacia abajo en una sección diferente de la imagen espacialmente redundante (por ejemplo, el centro, derecho superior, centro superior, centro inferior, derecho inferior, etc.).
En algunas modalidades, una imagen espacialmente redundante es una imagen que es sustancialmente toda de un color (por ejemplo, negro, azul, rojo, blanco, etc.) o tiene un patrón repetitivo (por ejemplo, diseños de cuadros, franjas, etc.). Por ejemplo, la imagen espacialmente redundante 2635 mostrada en la Figura 26 tiene un patrón de red de líneas cruzadas. La porción espacialmente redundante de la imagen compuesta 2640 se puede comprimir fácilmente por el codificador en una cantidad pequeña de datos, debido a la naturaleza repetitiva. Además, si una secuencia de imágenes son todas escaladas hacia abajo y la imagen espacialmente redundante utilizada es la misma para cada imagen en la secuencia, entonces se puede utilizar la compresión temporal para aun reducir adicionalmente la cantidad de datos necesarios para representar la imagen codificada.
Algunas modalidades del redimensionador de imagen 2615 también generan datos de tamaño 2620 que indica el tamaño de la imagen redimensionada (por ejemplo, el tamaño de la imagen escalada hacia abajo 2630) y envía estos datos de tamaño generados 2620 al administrador de flujo de bit 2625. Los datos de tamaño 2620 de algunas modalidades indica el tamaño de la imagen redimensionada 2630 en términos del número de hileras de pixeles y el número de columnas de pixeles (es decir, altura y ancho) de la imagen redimensionada 2630. En algunas modalidades, los datos de tamaño 2620 también indican la ubicación de la imagen redimensionada 2630 en la imagen compuesta 2640.
Después de que se redimensiona la imagen, la imagen compuesta 2640 se envía a través del controlador de velocidad 2645 al codificador 2650. El controlador de velocidad 2645, como es descrito en detalle adicional enseguida, controla la velocidad de transferencia de bit (es decir, el tamaño de datos) de las imágenes que salen por el codificador 2650 en algunas modalidades. El codificador 2650 de algunas modalidades comprime y codifica la imagen. El codificador 2650 puede utilizar la codificación H.264 u otro método de codificación.
El administrador de flujo de bit 2625 de algunas modalidades recibe un flujo de bit de una o más imágenes codificadas desde el codificador 2650 e inserta los datos de tamaño en el flujo de bit. Por ejemplo, en algunas modalidades, el administrador de flujo de bit 2625 recibe los datos de tamaño 2620 desde el redimensionador de imagen 2615 e inserta los datos de tamaño 2620 en un flujo de bit 2655 de la imagen compuesta codificada 2640 que es recibida desde el codificador 2650. La salida del administrador de flujo de bit 2625 en este caso es un flujo de bit modificada 2660 que incluye los datos de tamaño 2620. Diferentes modalidades insertan los datos de tamaño 2620 en diferentes posiciones del flujo de bit 2655. Por ejemplo, el flujo de bit 2660 muestra los datos de tamaño 2620 insertados en el inicio del flujo de bit 2660. Sin embargo, otras modalidades insertan los datos de tamaño 2620 al final del flujo de bit 2655, en la parte media del flujo de bit 2655, o en cualquier otra posición dentro del flujo de bit 2655.
En algunas modalidades, el flujo de bit 2655 es un flujo de bit de una secuencia de una o más imágenes codificadas que incluyen la imagen compuesta 2640. En algunas de tales modalidades, las imágenes en la secuencia todas son redimensionadas al mismo tamaño y los datos de tamaño 2620 indican el tamaño de esas imágenes redimensionadas. Después de que las imágenes se transmiten a un dispositivo en el otro extremo de la videoconferencia, el dispositivo de recepción puede extraer la información de tamaño desde el flujo de bit y utilizar la información de tamaño para descodificar apropiadamente las imágenes recibidas.
La Figura 27 conceptualmente ilustra un proceso de redimensionamiento de imagen 2700 realizado por un controlador de codificador de un dispositivo móvil de cámara doble, tal como el controlador 2600. El proceso 2700 comienza al recibir (en 2705) una imagen (por ejemplo, la imagen 2605) capturada por una cámara del dispositivo móvil de cámara doble. Cuando el dispositivo de cámara doble está capturando imágenes con ambas cámaras, algunas modalidades realizan el proceso 2700 sobre las imágenes de ambas cámaras.
Enseguida, el proceso 2700 redimensiona (en 2710) la imagen recibida. Como es mencionado en lo anterior, diferentes modalidades redimensionan la imagen 2605 de manera diferente. Por ejemplo, la imagen 2605 en la Figura 26 se escala hacia abajo y se sobrepone en la imagen espacialmente redundante 2635 para producir la imagen compuesta 2640.
El proceso 2700 luego envía (en 2715) la imagen redimensionada (por ejemplo, la imagen compuesta 2640, que incluye la imagen redimensionada 2630) al codificador 2650 para la codificación. Algunas modalidades del proceso 2700 envían la imagen redimensionada 2630 (incluida en la imagen compuesta 2640) al codificador 2650 a través de un controlador de velocidad que determina una velocidad de transferencia de bit para el codificador que codifica la imagen. El codificador 2650 de algunas modalidades comprime y codifica la imagen (por ejemplo, utilizando la transformación de coseno discreta, cuantificación, codificación de entropía, etc.) y retorna un flujo de bit con la imagen codificada al controlador de codificador 2600.
Enseguida, el proceso 2700 envía (en 2720) los datos que indican el tamaño de la imagen redimensionada (por ejemplo, los datos de tamaño 2620) a un administrador de flujo de bit. Como se muestra en la Figura 26, esta operación se realiza dentro del controlador de codificador 2600 en algunas modalidades (es decir, un módulo en el controlador de codificador 2600 envía los datos de tamaño a otro módulo en el controlador de codificador 2600).
Después de que se codifica la imagen redimensionada por el codificador 2650, el proceso 2700 recibe (en 2725) el flujo de bit desde el codificador. Como es mostrado, algunas modalidades reciben el flujo de bit en el administrador de flujo de bit, que también ha recibido los datos de tamaño. El flujo de bit recibida incluye la imagen compuesta codificada y también puede incluir una o más imágenes adicionales en una secuencia de vídeo.
El proceso 2700 luego inserta (en 2730) los datos que indican el tamaño de la imagen redimensionada (por ejemplo, los datos de tamaño 2620) en el flujo de bit, y termina. Como se muestra en la Figura 26, esta operación también se realiza por el administrador de flujo de bit en algunas modalidades. Como es mencionado en lo anterior, diferentes modalidades insertan los datos de tamaño en diferentes partes del flujo de bit. En el ejemplo ilustrado, los datos de tamaño 2620 se insertan en el comienzo del flujo de bit 2655 como se muestran en el flujo de bit 2660 resultante. El flujo de bit ahora puede transmitida a otro dispositivo que está participando en la videoconferencia, donde puede ser descodificada y visualizada.
En algunas modalidades, el controlador de codificador (por ejemplo, controlador 1640) realiza las funciones opuestas del controlador de codificador. Esto es, el controlador de codificador extrae los datos de tamaño desde un flujo de bit recibida, pasa el flujo de bit a un descodificador, y redimensiona una imagen descodificada utilizando los datos de tamaño. La Figura 28 conceptualmente ilustra una arquitectura de software para tal controlador del descodificador 2800 de algunas modalidades y muestra la manipulación de flujo de bit de ejemplo y operaciones de redimensionamiento realizadas por el controlador de descodificador 2800 en un flujo de bit de ejemplo 2825.
En algunas modalidades, el flujo de bit 2825 es un flujo de bit que incluye una imagen codificada de un vídeo capturado por una cámara de un dispositivo en una videoconferencia (por ejemplo, un flujo de bit desde un controlador de codificador, tal como el controlador 2600) y transmitida al dispositivo en el cual opera el controlador de descodificador 2800. Con referencia a la Figura 16, en algunas modalidades, el flujo de bit habrá sido recibido por el administrador de red 1614 y enviada a la memoria intermedia 1616, de la cual se recupera por el módulo descompresor de video 1626 y se envía al controlador de descodificador 1640.
Como es mostrado, el controlador de descodificador 2800 incluye una capa de procesamiento 2805. La capa de procesamiento 2805 incluye una redimensionador de imagen 2810 y un administrador de flujo de bit 2820. En algunas modalidades, estos módulos 2810 y 2820 realizan varias operaciones sobre las imágenes recibidas tanto antes como después de que se decodifican las imágenes. Mientras que en este ejemplo el redimensionador de imagen 2810 se muestra como parte de la capa de procesamiento 2805 del controlador de descodificador 2800, algunas modalidades implementan el redimensionador de imagen como parte del administrador de procesamiento de imagen 1608 antes que el controlador de descodificador (es decir, el redimensionamiento de imagen se hace después de enviar la imagen desde el controlador de descodificador 2800).
Como es mostrado, el administrador de flujo de bit 2820 de algunas modalidades recibe un flujo de bit de una o más imágenes codificadas (es decir, imágenes en una secuencia de vídeo) y extrae los datos de tamaño del flujo de bit antes de enviar el flujo de bit al descodificador 2835 para la decodificación. Por ejemplo, como es ilustrado en la Figura 28, el administrador de flujo de bit 2820 recibe un flujo de bit 2825 de una imagen codificada, extrae datos de tamaño 2815 del flujo de bit 2825, y envía el flujo de bit resultante 2830 (sin los datos de tamaño 2815) al descodificador 2835 para la descodificación. Como es mostrado, el administrador de flujo de bit 2820 envía los datos de tamaño extraídos 2815 al redimensionador de imagen 2810 en algunas modalidades.
Los datos de tamaño 2815 de algunas modalidades son los mismos como los datos de tamaño 2620 insertados en el flujo de bit por el controlador de codificador 2600. Como es descrito en lo anterior en la descripción de la Figura 26, los datos de tamaño 2815 de algunas modalidades indican el tamaño de una sub-imagen 2845 en término del número de hileras de pixeles y el número de columnas de pixeles de la sub-imagen 2845. Los datos de tamaño 2815 también pueden indicar la ubicación de la sub-imagen 2845 dentro de la imagen espacialmente redundante más grande 2840. En este ejemplo, el flujo de bit 2825 muestra los datos de tamaño 2815 insertados en el comienzo del flujo de bit 2825. Sin embargo, como es mencionado en lo anterior, diferentes modalidades insertan los datos de tamaño 2815 en diferentes posiciones del flujo de bit 2825.
El redimensionador de imagen 2810 de algunas modalidades extrae las sub-imágenes a partir de las imágenes utilizando datos de tamaño recibidos del administrador de flujo de bit de 2820. Por ejemplo, la Figura 28 ilustra el redimensionador de imagen 2810 recibiendo una imagen 2840 que incluye una sub-imagen 2845 desde el descodificador 2835. Como es mostrado, el redimensionador de imagen 2810 de algunas modalidades extrae la sub-imagen 2845 desde la imagen 2840. Esta imagen extraída luego puede ser visualizada sobre el dispositivo móvil de cámara doble.
La Figura 29 conceptualmente ilustra un proceso de extracción de imagen 2900 de algunas modalidades realizado por un controlador de descodificador de un dispositivo que participa en una videoconferencia, tal como el controlador 2800. El proceso comienza al recibir (en 2905) un flujo de bit (por ejemplo, flujo de bit 2825) de una imagen codificada. El flujo de bit se puede enviar desde un dispositivo que participa en una videoconferencia con el dispositivo en el cual el controlador de descodificador está operando o se puede almacenar en un almacenamiento del dispositivo. Cuando el dispositivo está recibiendo imágenes desde múltiples fuentes, algunas modalidades realizan el proceso 2900 sobre imágenes de cada fuente.
Enseguida, el proceso 2900 extrae (en 2910) los datos de tamaño del flujo de bit. Como es mencionado en lo anterior, estos datos de tamaño se pueden encontrar en diferentes ubicaciones en el flujo de bit. Algunas modalidades saben donde buscar los datos de tamaño, mientras que otras modalidades buscan una señal particular que indica donde está localizada el flujo de bit recibida de los datos de tamaño. En algunas modalidades, los datos de tamaño indican el tamaño (por ejemplo, el número de pixeles en cada hilera y número de pixeles en cada columna) y la ubicación de una sub-imagen en la imagen codificada.
El proceso 2900 luego envía (en 2915) los datos de tamaño extraídos a un redimensionador de imagen. Como es mostrado en la Figura 28, esta operación se realiza dentro del controlador del descodificador en algunas modalidades (es decir, un módulo en el controlador de descodificador envía los datos de tamaño a otro módulo en el controlador de descodificador).
El proceso 2900 también envía (en 2920) el flujo de bit al descodificador para la decodificación. El descodificador, en algunas modalidades descomprime y descodifica el flujo de bit (por ejemplo, utilizando la transformación de coseno discreta inversa, cuantificación inversa, etc.) y retorna una imagen reconstruida al controlador de descodificador.
Después de que se descodifica el flujo de bit por el descodificador, el proceso 2900 recibe (en 2925) la imagen descodificada desde el descodificador. Como es mostrado, algunas modalidades reciben la imagen en el redimensionador de imagen, que también ha recibido los datos de tamaño desde el administrador de flujo de bit. El proceso luego extrae (en 2930) una sub-imagen desde la imagen descodificada utilizando los datos de tamaño recibidos. Como es mostrado, la sub-imagen 2845 se extrae desde la parte izquierda superior de la imagen decodificada 2840, como es indicado en datos de tamaño 2815. Esta sub-imagen extraída ahora puede ser visualizada sobre un dispositivo de visualización (por ejemplo, una pantalla del dispositivo móvil de cámara doble). 3. Controladores de Velocidad En algunas modalidades, las dos cámaras del dispositivo tienen diferentes conjuntos de características. Por ejemplo, en algunas modalidades, la cámara frontal es una cámara de menor resolución optimizada para la captura de imágenes de video en movimiento, mientras que la cámara trasera es una cámara de mayor resolución optimizada para la captura de imágenes fijas. Por razones tal como el costo, funcionalidad y/o geometría del dispositivo, otras modalidades pueden utilizar diferentes combinaciones de cámaras de características diferentes.
Las cámaras con características diferentes pueden introducir diferentes artefactos. Por ejemplo, las cámaras de mayor resolución pueden revelar más ruido que las cámaras de menor resolución. Las imágenes capturadas por las cámaras de mayor resolución pueden exhibir niveles más alto de complejidad espaciales o temporales que las imágenes capturadas por las cámaras de menor resolución. También, diferentes cámaras con diferentes propiedades ópticas pueden introducir valores de gamma diferentes a las imágenes capturadas. Diferentes mecanismos de detección de luz utilizadas por diferentes cámaras para capturar imágenes también puede introducir diferentes artefactos.
Algunos de estos artefactos específicos de la cámara ocultan los artefactos generados desde otras fuentes. Por ejemplo, en una imagen capturada por una cámara de alta resolución con un alto nivel de ruido, los artefactos que son el subproducto del proceso de codificación de vídeo llegan a ser menos visibles. Cuando se codifica el ruido (por ejemplo, tal como la distorsión de cuantifícación) para ocultar atrás los artefactos específicos de la cámara, el proceso de codificación de vídeo puede utilizar tamaños de etapa de cuantificación más grande para lograr menores velocidades de transferencia de bit. Por otra parte, cuando una cámara introduce menos artefactos (tal como, en el caso de una cámara de menor resolución), el proceso de codificación de vídeo puede utilizar tamaños de etapa de cuantificación más finos con el fin de evitar niveles inaceptables de distorsión visual debido a la cuantificación. Así, un proceso de codificación de video que se optimiza para tomar ventaja de o para compensar estas características específicas de la cámara puede realizar mejor intercambio de distorsión de velocidad que el proceso de codificación de vídeo que es obvio a estas características específicas de la cámara.
Con el fin de utilizar estas características específicas de la cámara para realizar los intercambios de distorsión de velocidad, algunas modalidades implementan dos procesos de codificación de vídeo, cada proceso optimizado a cada una de las dos cámaras. La Figura 30 ilustra un ejemplo de un sistema con dos procesos de codificación de vídeo para dos cámaras 3060 y 3070. Como es mostrado en la Figura 30, el sistema 3000 incluye el controlador de codificador 3010, controladores de velocidad 3020 y 3040, y un codificador de vídeo 3030. El codificador 3030 codifica las imágenes de vídeo capturadas desde las cámaras de video 3060 y 3070 en difusiones de bit 3080 y 3090.
En algunas modalidades, el controlador de codificador de vídeo 3010 es un módulo de software que funciona en una o más unidades de procesamiento. Éste proporciona una interfaz entre el codificador de vídeo 3030 y otros componentes del sistema, tales como cámaras de vídeo, módulos de procesamiento de imagen, módulos de administración de red y memorias intermedias de almacenamiento. El controlador de codificador 3010 controla el flujo de la imagen de vídeo capturada desde las cámaras y los módulos de procesamiento de imagen al codificador de vídeo 3030, y también proporciona el conducto para las difusiones de bit codificadas 3080 y 3090 a las memorias intermedias de almacenamiento y los módulos de administración de red.
Como es mostrado en la Figura 30, el controlador de codificador 3010 incluye dos diferentes casos 3020 y 3040 de controladores de velocidad. Estos múltiples casos pueden ser dos controladores de velocidad diferentes para las dos diferentes cámaras, o un controlador de velocidad que está configurado en dos maneras diferentes para dos diferentes cámaras. Específicamente, en algunas modalidades, los dos controladores de velocidad 3020 y 3040 representan dos controladores de velocidad separados. Alternativamente, en otras modalidades, los dos controladores de velocidad 3020 y 3040 son dos configuraciones diferentes en un solo controlador de velocidad.
La Figura 30 también muestra el controlador de codificador 3010 para incluir una memoria intermedia de estado 3015 que almacena la información de estado de codificación para las operaciones de control de velocidad para el uso durante una videoconferencia. Específicamente, en algunas modalidades, los dos controladores de velocidades diferentes, o las dos configuraciones diferentes del mismo controlador de velocidad, comparten durante una videoconferencia la misma información de estado de codificación que es almacenada en la memoria intermedia de estado 3015. Tal compartimiento de la información de estado permite las operaciones uniformes del controlador de velocidad en videoconferencias de captura de vídeo dobles. Este compartimiento también permite la codificación de vídeo óptima durante una operación de conmutación de cámara en una sola videoconferencia de captura de vídeo (es decir, permite la operación de control de velocidad para la codificación del vídeo capturado por la cámara actual para usar la información de estado de codificación que se mantuvo por la operación de control de velocidad para la codificación del video capturado por la cámara previa). La Figura 30 muestra la memoria intermedia de estado 3015 como que es parte del controlador de codificador 3010, pero otras modalidades implementan la memoria de estado 3015 fuera del controlador de codificador 3010.
En la memoria intermedia de estado 3015, diferentes modalidades almacenan diferentes tipos de datos (por ejemplo, diferentes tipos de parámetros de codificación) para representar la información de estado de codificación. Un ejemplo de tal información de estado de codificación es la velocidad de transferencia de bit objetivo actual para la videoconferencia. Una manera para identificar la velocidad de transferencia de bit objetivo es descrita en lo anterior en la Sección III. B. Otros ejemplos de tal información de estado de codificación incluyen llenura de la memoria intermedia, llenura de la memoria intermedia máxima, velocidad de transferencia de bit de una o más cuadros recientemente codificados, entre otra información de estado de codificación.
Un controlador de velocidad luego puede utilizar la velocidad de transferencia de bit objetivo (u otro parámetro de estado de codificación almacenado en la memoria intermedia de estado) para calcular uno o más parámetros utilizados en su operación de control de velocidad. Por ejemplo, como es descrito adicionalmente enseguida, un controlador de velocidad de algunas modalidades utiliza el bitio objetivo actual para calcular un parámetro de cuantificación QP para un macrobloque o un cuadro. A manera de ejemplo, algunas modalidades utilizan la velocidad de transferencia de bit objetivo actual para calcular un parámetro de ajuste de cuantificación o cuantificación del cual se deriva el parámetro de cuantificación QP para el macrobloque y/o el cuadro. Por consiguiente, durante una operación de conmutación de cámara en una videoconferencia, el compartimiento de la velocidad de transferencia de bit objetivo entre dos operaciones de control de velocidad (o dos controladores de velocidad o de dos configuraciones diferentes de un controlador de velocidad) permite la operación de control de velocidad para codificar el video capturado por la cámara actual para obtener el beneficio de los datos de estado de codificación de la operación de control de velocidad previa para codificar el video capturado por la cámara previa.
La Figura 30 ¡lustra el controlador de codificador 3010 para incluir los dos diferentes casos de controlador de velocidad 3020 y 3040. Sin embargo, en otras modalidades, estos casos de controlador de velocidad 3020 y 3040 se construyen en el codificador de video 3030. El codificador de video 3030 codifica las imágenes de video capturadas por las cámaras 3060 y 3070 en flujos de bit digitales 3080 y 3090. En algunas modalidades, el codificador de video produce flujos de bit que están conforme a los estándares de codificación de video convencionales (por ejemplo, H.264 MPEG-4). En algunas de estas modalidades, el codificador de video realiza las operaciones de codificación que incluyen la estimación de movimiento, transformación de coseno discreta ("DCT"), cuantificación y codificación de entropía. El codificador de video también realiza operaciones de descodificación que son las funciones inversas de las operaciones de codificación.
En algunas modalidades, el codificador 3030 incluye un módulo cuantificador 3032 para realizar la cuantificación. El módulo cuantificador se controla por un parámetro de cuantificación 3022 o 3042 desde un controlador de velocidad 3020 o 3040. En algunas modalidades, cada parámetro de cuantificación se ajusta por un controlador de velocidad correspondiente y es una función de uno o más atributos de la cámara asociada con el controlador de velocidad, como es descrito adicionalmente enseguida. El controlador de velocidad puede reducir el número de bit utilizados para la codificación mediante el ajuste de los tamaños de etapa de cuantificación más gruesos o incrementar el número de bit utilizados al ajustar tamaños de etapas de cuantificación más finos. Al controlar el tamaño de etapa de cuantificación, el controlador de velocidad también determina cuanta distorsión se introduce en la imagen de video codificada. Así, el controlador de velocidad puede realizar intercambios entre la velocidad de transferencia de bit y la calidad de imagen. Al realizar un intercambio de distorsión de velocidad, el controlador de velocidad monitorea la velocidad de transferencia de bit con el fin de no inundar las memorias intermedias de memoria, sub-inundar las memorias intermedias de memoria, o exceder la capacidad de canal de transmisión. El controlador de velocidad también debe controlar la velocidad de transferencia de bit con el fin de proporcionar la mejor calidad de imagen posible y para evitar la distorsión inaceptable de la calidad de imagen debido a la cuantificación. En algunas modalidades, cada controlador de velocidad almacena los datos monitoreados en términos de un conjunto de valores de datos de estado en la memoria intermedia de estado 3015. En algunas modalidades, los controladores de velocidad 3020 y 3040 utilizan los atributos específicos de la cámara para optimizar el intercambio de distorsión de velocidad.
En algunas modalidades, cada controlador de velocidad optimiza el intercambio de distorsión de velocidad al aplicar directamente un factor de modificación a su parámetro de cuantificación. En algunas de estas modalidades, los factores de modificación son predeterminados y construidos en el dispositivo junto con la cámara, el dispositivo no necesita calcular dinámicamente estos factores de modificación. En otras modalidades, el sistema utiliza la imagen entrante capturada por la cámara para determinar dinámicamente el factor de modificación apropiado específico para la cámara. En algunas de estas modalidades, el sistema analiza una secuencia de imágenes de video entrantes capturadas por la cámara en múltiples pasos de codificación con el fin de recolectar cierta estadística alrededor de la cámara. El sistema luego utiliza esta estadística para derivar los factores de modificación al parámetro de cuantificación que es optimizado para la cámara.
En algunas modalidades, estos factores de modificación específicas de la cámara se aplican al parámetro de cuantificación por la vía de atributos de enmascaramiento visuales de las imágenes de video. El atributo de enmascaramiento visual de una imagen o una porción de la imagen es una indicación de cuantos artefactos de codificación pueden ser tolerados en la imagen o porción de imagen. Algunas modalidades calculan un atributo de enmascaramiento visual que cuantifica la energía de brillantez de la imagen o la porción de imagen mientras que otras modalidades calculan un atributo de enmascaramiento visual que cuantifica la energía de actividad o complejidad de la imagen o la porción de imagen. Sin considerar de cómo se calcula un atributo de enmascaramiento visual, algunas modalidades utilizan los atributos de enmascaramiento visuales para calcular un parámetro de cuantificación modificado o enmascarado para un cuadro de video. Algunas de estas modalidades calculan el parámetro de cuantificación enmascarado como una función de un atributo de enmascaramiento visual de nivel de cuadro ( CUadro y un atributo de enmascaramiento visual de referencia cpR. En algunas modalidades, el parámetro de cuantificación modificado por los atributos de enmascaramiento visuales < Cuadro y <P se expresa como: QPcuadro = QPnom + Pcuadro*(<Pcuadro " PR)/<PR (1 ) donde MQPcuadro es el parámetro de cuantificación enmascarado o modificado para el cuadro, QPnom es un valor de cuantificación inicial o nominal, y Pcuadro es una constante adaptada a la estadística local. En algunas modalidades, el atributo de enmascaramiento visual de referencia <pR y el parámetro de cuantificación nominal QPnom son predeterminados desde una estimación inicial o periódica de las condiciones de red.
En algunas modalidades, el atributo de enmascaramiento visual ( cuadro en la ecuación (1 ) se calcula como <Pcuadro = C · (E»avgFramel_uma)p · (D»avgFrameSAD)a (2) donde avgFrameLuma es el valor de luminancia promedio del cuadro y avgFrameSAD es la suma promedio de la diferencia absoluta del cuadro. Las constantes a, ß, C, D, y E están adaptadas a la estadística local. Estas constantes están adaptas a las características específicas de la cámara en algunas modalidades.
Algunas modalidades también calculan un parámetro de cuantificación enmascarado para una porción de una imagen de video, tal como un macrobloque. En esos casos, el parámetro de cuantificación enmascarado se calcula como una función del atributo de enmascaramiento visual de macrobloque <p B: QPMB = MQPcuadro + ß??*(f ? " <Pcuadro)/<Pcuadro (3) donde ß?? es una constante adaptada a la estadística local, y MQPcuadro se calcula utilizando las ecuaciones (1 ) y (2) en algunas modalidades. En algunas modalidades, el atributo de enmascaramiento visual f?? en la ecuación (3) se calcula como <pMB = A.(Cavg BLuma)p'(B.MBSAD)Q (4) donde avgMBLuma es el valor de luminancia promedio del macrobloque y avgMBSAD es la suma promedio de la diferencia absoluta del macrobloque. Las constantes a, ß, A, B y C están adaptadas a la estadística local. Estas constantes están adaptadas a las características específicas de la cámara en algunas modalidades.
Antes que utilizar las múltiples constantes especificas a la cámara para calcular los parámetros de cuantificación modificados como es discutido en lo anterior, algunas modalidades realizan el control de velocidad específico de la cámara al calcular los parámetros de cuantificación utilizando solamente un solo coeficiente específico de la cámara. Por ejemplo, dados los atributos de enmascaramiento visuales <pcuadro y F?? y el parámetro de cuantificación QPCUadro. algunas modalidades utilizan un solo coeficiente específico de la cámara µ para calcular el parámetro de cuantificación de un macrobloque como: QPMB = »(lpcuadro " <PMB) + QPcuadro (5) para calcular la ecuación (5), algunas modalidades utilizando medidas de complejidad del cuadro y del macrobloque como atributos de enmascaramiento visuales q>CUadro y <PMB> respectivamente.
Algunas modalidades aplican un coeficiente específico de la cámara diferente en el cálculo de QPMB- Por ejemplo, en algunas modalidades, QPMB se calcula como Q MB = P · (1 " <PMB/<Pcuadro) · QPcuadro + QPcuadro (6) donde p es un coeficiente afinado a las características específicas de la cámara.
Como es mencionado en lo anterior, la memoria intermedia de estado 3015 almacena la información de estado de codificación de modo que los dos casos de controlador de velocidad diferentes 3020 y 3040 pueden compartir durante una videoconferencia con el fin de obtener resultados de codificación a partir de sus operaciones de control de velocidad. La velocidad de transferencia de bit objetivo RT es un ejemplo de tal información de estado compartida en algunas modalidades. Esta velocidad es una velocidad de transferencia de bit deseada para codificar una secuencia de cuadros. Típicamente, esta velocidad de transferencia de bit se expresa en unidades de bit/segundo, y se determina en base a los procesos similares a aquellos descritos en lo anterior en la Sección III. B.
Como es descrito en lo anterior, un controlador de velocidad de algunas modalidades utiliza la velocidad de transferencia de bit objetivo para calcular el parámetro(s) de cuantificación de cuadro y/o macrobloque QP que se hace salir al codificador de video 3030. Por ejemplo, algunas modalidades utilizan la velocidad de transferencia de bit objetivo actual para calcular un parámetro de ajuste de cuantificación del cual se derivan el parámetro de cuantificación QP para el macrobloque y/o el cuadro. En algunas modalidades, el parámetro de ajuste de cuantificación se expresa en términos de una fracción que se calcula al dividir ya sea la velocidad de transferencia de bit del cuadro previo, o un promedio de funcionamiento de la velocidad de transferencia de bit de los cuadros previos, con la velocidad de transferencia de bit objetivo actual. En otras modalidades, este parámetro de ajuste no es exactamente calculado de esta manera, sino más bien es más generalmente (1 ) proporcional a ya sea la de transferencia de bit del cuadro previo o un promedio de funcionamiento de la velocidad de transferencia de bit de los cuadros previos, y (2) inversamente proporcional a la velocidad de transferencia de bit objetivo actual.
Después de computar o calcular tal parámetro de ajuste de cuantificación, el controlador de velocidad de algunas modalidades utiliza este parámetro para ajustar el parámetro(s) de cuantificación de macrobloque y/o cuadro que éste calcula. Una manera de hacer tal ajuste es multiplicar el parámetro(s) de cuantificación de macrobloque y/o cuadro calculado por el parámetro de ajuste de cuantificación. Otra manera de hacer este ajuste es calcular un valor de parámetro de cuantificación desviado del parámetro de ajuste de cuantificación y luego aplicar (por ejemplo, sustraer) este parámetro desviado al parámetro(s) de cuantificación de macrobloque y/o cuadro calculado. El controlador de velocidad de estas modalidades luego hace salir el parámetro(s) de cuantificación de macrobloque y/o cuadro ajustado al codificador de video 3030.
En otras modalidades, el controlador de velocidad utiliza la velocidad de transferencia de bit objetivo para calcular otros parámetros que se utilizan en su operación de control de velocidad. Por ejemplo, en algunas modalidades, el controlador de velocidad utiliza esta velocidad de transferencia de bit para modificar la intensidad de enmascaramiento visual para un macrobloque o un cuadro.
G. Administrador de Red La Figura 31 conceptualmente ilustra la arquitectura de software de un administrador de red 3100 de algunas modalidades, tal como el administrador de red 1614 ilustrado en la Figura 16. Como es descrito en lo anterior, el administrador de red 3100 administra las conexiones de red (por ejemplo, establecimiento de conexión, monitoreo de conexión, ajustes de conexión, rompimiento de conexión, etc.) entre un dispositivo móvil de cámara doble sobre el cual opera y un dispositivo remoto en una videoconferencia. Durante la videoconferencia, el administrador de red 3100 de algunas modalidades también procesa los datos para la transmisión al dispositivo remoto y procesa los datos recibidos desde el dispositivo remoto.
Como es mostrado en la Figura 31 , el administrador de red 3100 incluye un administrador de negociación de sesión 3105, un módulo de transmisor 3115, una memoria intermedia de transmisión universal 3120, un administrador de memoria intermedia de transmisión universal 3122, un administrador de protocolo de transporte virtual (VTP) 3125, un módulo de receptor 3130, y un administrador de transporte de medios 3135.
El administrador de negociación de sesión 3105 incluye un administrador de protocolo 3110. El administrador de protocolo 3110 asegura que el módulo transmisor 3115 utilice un protocolo de comunicación correcto para transmitir los datos a un dispositivo remoto durante la videoconferencia que impone que se utilicen las reglas de protocolo de comunicación. Algunas modalidades del administrador de protocolo 3110 soportan un número de protocolos de comunicación, tal como un protocolo de transporte en tiempo real (RTP), un protocolo control de transmisión (TCP), un protocolo de datagrama de usuario (UDP), y un protocolo de transferencia de hipertexto (HTTP), entre otros.
El administrador de negociación de sesión 3105 es responsable para establecer conexiones entre el dispositivo móvil de cámara doble y uno o más dispositivos remotos que participan en la videoconferencia, así como desconectar estas conexiones después de la conferencia. En algunas modalidades, el administrador de negociación de sesión 3105 también es responsable para establecer sesiones de comunicación de multimedia (por ejemplo, para transmitir y recibir difusiones de video y/o audio) entre el dispositivo móvil de cámara doble y los dispositivos remotos en la videoconferencia (por ejemplo, utilizando un protocolo de iniciación de sesión (SIP).
El administrador de negociación de sesión 3105 también recibe datos de retroalimentación desde el administrador de transporte de medios 3135 y, en base a los datos de retroalimentación, determina la operación de la memoria intermedia de transmisión universal 3120 (por ejemplo, si transmite o elimina paquetes/cuadros) a través del administrador de memoria intermedia de transmisión universal 3 22. Esta retroalimentación, en algunas modalidades, puede incluir la latencia de una vía y velocidad de transferencia de bit de estimación de ancho de banda. En otras modalidades, la realimentación incluye la información de pérdida de paquete y tiempo de retardo de ida y vuelta (por ejemplo, determinado en base a los paquetes enviados al dispositivo remoto en la videoconferencia y la recepción de reconocimiento de ese dispositivo). En base a la información del administrador de transporte de medios 3135, el administrador de negociación de sesión 3105 puede determinar si demasiados paquetes están siendo enviados e instruir al administrador de memoria intermedia de transmisión universal 3122 para tener que la memoria intermedia de transmisión universal 3120 transmita menos paquetes (es decir, ajustar la velocidad de transferencia de bit como es descrito en la Figura 15).
El módulo de transmisor 3115 recupera las imágenes codificadas (por ejemplo, como un flujo de bit) desde una memoria intermedia de video (por ejemplo, la memoria intermedia 1612 de la Figura 16) y empaqueta las imágenes para la transmisión a un dispositivo remoto en la videoconferencia a través de la memoria intermedia de transmisión universal 3120 y administrador de protocolo de transporte virtual 3125. La manera en la cual se crean las imágenes codificadas y se envían al módulo de transmisor 31 15 se puede basar en las instrucciones o datos recibidos del administrador de transporte de medios 3135 y/o el administrador de negociación de sesión 3105. En algunas modalidades, el empaquetamiento de las imágenes involucra romper el flujo de bit recibido en un grupo de paquetes cada uno que tiene un tamaño particular (es decir, un tamaño especificado por el administrador de negociación de sesión 3105 de acuerdo con un protocolo particular) y adicionar cualquiera de los encabezados requeridos (por ejemplo, encabezados de dirección, encabezados de especificación de protocolo, etc.).
El administrador de memoria intermedia de transmisión universal 3122 controla la operación de la memoria intermedia de transmisión universal 3120 en base a los datos y/o instrucciones recibidas del administrador de negociación de sesión 3105. Por ejemplo, el administrador de memoria intermedia de transmisión universal 3122 se puede instruir para dirigir la memoria intermedia de transmisión universal 3120 para transmitir datos, detener la transmisión de datos, eliminar datos, etc. Como es descrito en lo anterior, en algunas modalidades, cuando un dispositivo remoto que participa en la conferencia aparece para estar eliminando paquetes, será reconocido en base a los reconocimientos recibidos desde el dispositivo remoto. Para reducir la eliminación de paquetes, el administrador de memoria intermedia de transmisión universal 3122 se puede instruir para transmitir paquetes a una velocidad más lenta al dispositivo remoto.
La memoria intermedia de transmisión universal 3120 almacena los datos recibidos desde el módulo de transmisión 31 15 y transmite los datos al dispositivo remoto a través del administrador de VTP 3125. Como es mencionado en lo anterior, la memoria intermedia de transmisión universal 3120 puede eliminar datos (por ejemplo, imágenes del video) en base a las instrucciones recibidas del administrador de memoria intermedia de transmisión universal 3122.
En algunas modalidades, RTP se utiliza para comunicar los paquetes de datos (por ejemplo, paquetes de audio y paquetes de video) sobre UDP durante una videoconferencia. Otras modalidades usan RTP para comunicar los paquetes de datos sobre el TCP durante la videoconferencia. Otros protocolos de capa de transporte se pueden utilizar también en diferentes modalidades.
Algunas modalidades definen un canal de comunicación particular entre dos dispositivos móviles mediante un par de números de puerto (es decir, número de puerto de fuente y número de puerto de destino). Por ejemplo, un canal de comunicación entre los dispositivos móviles se puede definir por un par de números de puerto (por ejemplo, el puerto de fuente 50 y puerto de destino 100) y otro canal de comunicación diferente entre los dispositivos móviles se puede definir por otro par diferente de números de puerto (por ejemplo, puerto de fuente 75 y puerto de destino 150). Algunas modalidades también utilizan un par de protocolo de Internet (IP) en la definición de canales de comunicación. Diferentes canales de comunicación se utilizan para transmitir diferentes tipos de paquetes de datos en algunas modalidades. Por ejemplo, los paquetes de datos de video, y los paquetes de datos de audio, y paquetes de datos de señalización de control se pueden transmitir en canales de comunicación separados. Como tal, un canal de comunicación de video transporta los paquetes de datos de video y un canal de comunicación de audio transporta los paquetes de datos de audio.
En algunas modalidades, un canal de comunicación de control es para transmitir mensajes entre el dispositivo móvil local y un dispositivo remoto durante una videoconferencia. Ejemplos de tal transmisión de mensajes incluyen enviar y recibir peticiones, notificaciones y reconocimientos a tales peticiones y notificaciones. Otro ejemplo de transmisión de mensaje incluye enviar mensajes de instrucción de control remoto desde un dispositivo a otro. Por ejemplo, las operaciones de control remoto descritas enseguida (por ejemplo, la instrucción de un dispositivo para solamente enviar imágenes desde una cámara particular o solamente capturar imágenes con una cámara particular) se puede realizar al enviar instrucciones desde un dispositivo local a un dispositivo remoto a través del canal de comunicación de control para el dispositivo local para controlar remotamente las operaciones del dispositivo de remoto. Diferentes modalidades implementan la comunicación de control utilizando diferentes protocolos similares a un protocolo de control de transporte en tiempo real (RTCP), una extensión de RTP, SIP, etc. Por ejemplo, algunas modalidades utilizan la extensión de RTP para retardar un conjunto de mensajes de control entre dos dispositivos móviles en una videoconferencia y utilizan paquetes de SIP para retardar otro conjunto de mensajes de control entre los dispositivos móviles durante la videoconferencia.
El administrador de VTP 3125 de algunas modalidades permite que diferentes tipos de paquetes de datos sean especificados para ser transmitidos a través de diferentes canales de comunicación (por ejemplo, utilizando pares diferentes de números de puerto) para ser transmitidos a través de un solo canal de comunicación (por ejemplo, utilizando el mismo par de números de puerto). Una técnica para hacer esto involucra identificar los tipos de paquetes de datos, identificar el canal de comunicación a través del cual los paquetes de datos son especificados para ser transmitidos al extraer el par especificado de números de puerto de los paquetes de datos, y especificar los paquetes de datos para ser transmitidos a través del único canal de comunicación al modificar el par de números de puerto de los paquetes de datos para ser el par de números de puerto del único canal de comunicación (es decir, todos los paquetes de datos se transmiten a través del mismo par de números de puertos).
Para mantener el rastreo del par original de números de puerto para cada tipo de paquete de datos, algunas modalidades almacenan un mapeo del par original de números de puerto para el tipo de paquete de datos. Algunas de estas modalidades que utilizan el paquete tipo campo del protocolo para diferenciar los diferentes paquetes que están siendo multiplexados en un canal de comunicación. Por ejemplo, algunas modalidades que tienen el audio de múltiplex de administrador de VTP, paquetes de video y de control en una difusión de RTP, utilizan el campo de tipo paquete de RTP para diferenciar entre los paquetes de audio, video y de control que son transmitidos en el único canal de RTP al otro dispositivo en la videoconferencia. En algunas de estas modalidades, el administrador de VTP también dirige la transmisión de mensajes de control en paquetes SIP a otro dispositivo.
Algunas modalidades identifican el examen de las firmas de paquetes de datos (es decir, formatos de encabezado de paquetes) para distinguir entre diferentes paquetes que son comunicados utilizando diferentes protocolos (por ejemplo, para diferenciar entre paquetes transportados utilizando RTP y paquetes transportados utilizando SIP). En tales modalidades, después de que se determinan los paquetes de datos de los diferentes protocolos, los campos de los paquetes de datos que utilizan el mismo protocolo (por ejemplo, datos de audio y datos de video utilizando RTP) se examinan como es descrito en lo anterior para identificar los diferentes tipos de datos. De esta manera, el administrador de VTP 3125 transmite diferentes paquetes de datos, que se proponen para ser transmitidos a través de diferentes canales de comunicación, a través de un solo canal de comunicación.
Aunque una manera de combinar diferentes tipos de datos a través de un solo canal de comunicación es descrita en lo anterior, otras modalidades utilizan otras técnicas para tipos de paquetes diferentes de múltiplex en una difusión de comunicación. Por ejemplo, una técnica de algunas modalidades involucra mantener el rastreo del par original de números de puerto de los paquetes de datos y almacenar el par original de números de puerto en el paquete de datos mismo para ser extraído posteriormente. Existen todavía otras maneras para combinar diferentes tipos de datos entre dos participantes de videoconferencía en un canal de par de puertos.
Cuando el administrador de VTP 3125 recibe los paquetes de datos desde el dispositivo remoto a través de un canal de comunicación virtualizado, el administrador de VTP 3125 examina las firmas de los paquetes de datos para identificar los diferentes paquetes que son enviados utilizando los diferentes protocolos. Tales firmas se pueden utilizar para diferenciar los paquetes de SIP de los paquetes de RTP. El administrador de VTP de algunas modalidades también utiliza el campo de tipo paquete de algunos o todos los paquetes para desmultiplexar los diferentes tipos diversos de paquetes (por ejemplo, paquetes de audio, video y de control) que se multiplexaron en un solo canal virtualizado. Después de identificar estos tipos diferentes de paquetes, el administrador de VTP asocia cada tipo diferente de paquete con sus números de pares de puertos correspondientes en base a un mapeo de los números de pares de puertos y los tipos de paquete que este conserva. El administrador de VTP 3125 luego modifica el par de números de puerto de los paquetes de datos con el par identificado de números de puerto y dirige los paquetes de datos para ser desempaquetados. En otras modalidades que utilizan diferentes técnicas para multiplexar diferentes tipos de paquetes en el único canal, el administrador de VTP utiliza diferentes técnicas para analizar los paquetes.
Al utilizar tales técnicas para multiplexar y des-multiplexar los diferentes paquetes, el administrador de VTP 3125 crea un solo canal de comunicación virtualizado (por ejemplo, un solo par de números de puertos), transmite los datos de video, datos audio, y datos de señalización de controla través del único canal de comunicación virtualizado, y recibe los paquetes de audio, de video y de control desde el dispositivo remoto a través del único canal de comunicación virtualizado. Así, desde la perspectiva de la red, los datos se transmiten a través de este único canal de comunicación virtualizado, mientras que, desde la perspectiva del administrador de negociación de sesión 3105 y el administrador de protocolo 3110, los datos de video, datos de audio, y datos de señalización de control se transmiten a través diferentes canales de comunicación.
Similar a las imágenes que son transmitidas en el dispositivo remoto en la videoconferencia, las imágenes transmitidas desde el dispositivo remoto en la videoconferencia son recibidas en formato de paquete. El módulo de receptor 3130 recibe los paquetes y los desempaqueta con el fin de reconstruir las imágenes antes de almacenar las imágenes en una memoria intermedia de video (por ejemplo, la memoria intermedia 1616 de la Figura 16) para ser decpdificada. En algunas modalidades, el desempaquetamiento de las imágenes involucra remover cualquiera de los encabezados y reconstruir un flujo de bit que solamente tiene datos de imagen (y potencialmente datos de tamaño) de los paquetes.
El administrador de transporte de medios 3135 procesa los datos de retroalimentación (por ejemplo, la latencia de una vía, la velocidad de transferencia de bit de estimación de ancho de banda, los datos de pérdida de paquete, los datos de tiempo de retardo de ida y vuelta, etc.) recibidos de la red para ajustar dinámica y adaptativamente la velocidad de transmisión de datos (es decir, la velocidad de transferencia de bit). El administrador de transporte de medios 3135 también controla la residencia de error en base a los datos de retroalimentación procesados en algunas otras modalidades, y también puede enviar los datos de retroalimentación al administrador de videoconferencia 1604 con el fin de ajustar otras operaciones del módulo de videoconferencia 1602 tal como escalación, redimensionamiento y codificación. Además de tener la memoria intermedia de transmisión universal que elimina los paquetes cuando un dispositivo remoto en la conferencia no es capaz de procesar todos los paquetes, el módulo de videoconferencia y el codificador pueden utilizar una menor velocidad de transferencia de bit para codificar las imágenes, de modo que menos paquetes serán enviados para cada imagen.
En algunas modalidades, el administrador de transporte de medios 3135 también puede monitorear otras variables del dispositivo tal como el consumo de potencia y los niveles térmicos que pueden afectar como se configuran los modos de potencia de operación de las cámaras, como es discutido en lo anterior. Estos datos también se pueden utilizar como entradas adicionales en los datos de retroalimentación (por ejemplo, si el dispositivo se está calentando demasiado, el administrador de transporte de medios 3135 puede tratar tener el procesamiento alentado).
Varias operaciones de ejemplo de administrador de red 3100 ahora serán descritas por referencia a la Figura 16. La transmisión de imágenes capturadas por una cámara del dispositivo móvil de cámara doble a un dispositivo remoto en la videoconferencia será descrita primero, seguido por la descripción la recepción de imágenes desde el dispositivo remoto. El módulo de transmisor 3115 recupera las imágenes codificadas desde la memoria intermedia 1612, que van a ser transmitidos al dispositivo remoto en la videoconferencia.
El administrador de protocolo 3110 determina el protocolo apropiado para utilizarse (por ejemplo, RTP para transmitir audio y video) y administrador de negociación de sesión 3105 informa al módulo de transmisor 3115 de tal protocolo. Enseguida, el módulo de transmisor 3115 empaqueta las imágenes y envía las imágenes empaquetadas a la memoria intermedia de transmisión universal 3120. El administrador de memoria intermedia de transmisión universal 3122 recibe las instrucciones desde el administrador de negociación de sesión 3105 para dirigir la memoria intermedia de transmisión universal 3120 para transmitir o eliminar las imágenes. El administrador de VTP 3125 recibe los paquetes desde la memoria intermedia de transmisión universal 3120 y procesa los paquetes con el fin de transmitir los paquetes a través de un solo canal de comunicación al dispositivo remoto.
Cuando se reciben las imágenes desde el dispositivo remoto, el administrador de VTP 3125 recibe las imágenes empaquetadas desde el dispositivo remoto a través del único canal de comunicación virtualizado y procesa los paquetes con el fin de dirigir las imágenes al módulo de receptor 3130 a través de un canal de comunicación que es asignado para recibir las imágenes (por ejemplo, un canal de comunicación de video).
El módulo de receptor 3130 desempaqueta los paquetes para reconstruir las imágenes y envía las imágenes a la memoria intermedia 1616 para la decodificación por el descodificador 1660. El módulo de receptor 3130 también adelanta los mensajes de señalización de control al administrador de transporte de medios 3135 (por ejemplo, reconocimiento de paquetes recibidos desde el dispositivo remoto en la videoconferencia).
Varias operaciones de ejemplo del administrador de red 3100 se describieron en lo anterior. Hay solamente ejemplos ilustrativos, ya que otras diversas modalidades realizaran estas o diferentes operaciones utilizando diferentes módulos o con funcionalidades dispersadas de manera diferente entre los módulos. Además, las operaciones adicionales, tal como el ajuste de velocidad de transferencia de bit dinámica se puede realizar por los módulos del administrador de rede 3100 u otros módulos.
IV. OPERACIONES DE AJUSTE Y CONTROL EN CONFERENCIA A. Modificaciones de Imagen en Imagen 1. Definición a la Esquina Algunas modalidades de la invención permiten a un usuario de un dispositivo móvil de cámara doble modificar una visualización compuesta visualizada sobre el dispositivo al moverse al alrededor de una o más áreas de visualización que forman la visualización compuesta. Un ejemplo de tal clase es el movimiento alrededor de un área de visualización de inserción de una visualización PIP. La Figura 32 ilustra un ejemplo de tal clase que se realiza durante una videoconferencia. En una videoconferencia, el usuario puede desear mover un área de visualización de inserción de primer plano por una variedad de razones, tal como cuando esta área está bloqueando un área de interés del área de visualización de fondo.
La Figura 32 ilustra el movimiento de un área de visualización de inserción 3240 en una Ul 3205 de un dispositivo, por referencia a cinco etapas diferentes 3210, 3215, 3220, 3225 y 3230 de esta Ul. La primera etapa 3210 ilustra la Ul 3205 durante una videoconferencia entre el usuario local del dispositivo y un usuario remoto de un dispositivo remoto. La Ul 3205 en la Figura 32 muestra una visualización PIP que es la misma visualización PIP mostrada en la quinta etapa de la Figura 11 después de que ha iniciado la videoconferencia. En este ejemplo, el video capturado por el dispositivo del usuario local es visualizado en el área de visualización de inserción 3240 y el video capturado por el dispositivo del usuario remoto es visualizado en el área de visualización de fondo 3235. Como es mostrado, el área de visualización 1155 incluye un artículo de Ul seleccionable 3245 para finalizar la videoconferencia. En algunas modalidades, el arreglo del área de visualización 1155 es el mismo como el arreglo del área de visualización 1155 de la Figura 12, descrita en lo anterior.
La segunda etapa 3215 ilustra al usuario iniciando una operación de definición a la esquina al seleccionar el área de visualización de inserción 3240. En este ejemplo, se hace una selección al colocar un dedo 3255 en cualquier parte dentro del área de visualización de inserción 3240. Como es mostrado, esta selección es visualizada en términos de un borde grueso 3260 para el área de visualización de inserción 3240. Diferentes modalidades pueden indicar tal selección de diferentes maneras, tal como al resaltar el área de visualización 3240, al causar que vibre el área de visualización 3240, etc.
La tercera etapa 3220 ilustra la Ul 3205 después de que el usuario comienza a mover el área de visualización de inserción 3240 de la visualización PIP 3250 desde un área en la visualización PIP 3250 a otra área en esta visualización. En este ejemplo, el área de visualización de inserción 3240 ha comenzado a moverse desde la esquina izquierda inferior de la visualización PIP 3250 a la esquina derecha inferior de esta visualización, como es indicado por la flecha 3265. En este ejemplo, el área de visualización de inserción 3240 se mueve por el usuario que arrastra su dedo 3255 hacia la esquina derecha inferior de la visualización PIP 3250 después de seleccionar la visualización de inserción en la segunda etapa 3215. Algunas modalidades proporcionan otras técnicas para mover el área de visualización de inserción 3240 alrededor de la visualización PIP 3250.
La cuarta etapa 3225 ilustra la Ul 3205 en un estado después de que el usuario ha removido su dedo 3255 de la pantalla de dispositivo 3200. En este estado, el área de visualización de inserción 3240 está todavía moviéndose hacia la esquina derecha inferior de la visualización PIP 3250 que se identificó en base al movimiento del dedo del usuario en la tercera etapa 3220. En otras palabras, después de que el dedo 3255 comienza el movimiento del área de visualización de inserción 3240 hacia la esquina derecha inferior de la visualización PIP 3250, la Ul 3205 mantiene este movimiento uniforme aun después de que se remueve el dedo 3255. Para mantener este movimiento, la Ul 3205 de algunas modalidades requiere la operación de arrastre del usuario para ser más grande que una cantidad de umbral particular (por ejemplo, más larga que de una distancia particular o más larga que una duración particular de tiempo) antes de que el usuario remueva su dedo 3255; de otra manera, estas modalidades mantienen el área de visualización de inserción 3240 en su posición de esquina izquierda original después de mover esta área de visualización 3240 ligeramente o no moverla en ninguna parte.
Sin embargo, mientras que algunas modalidades permiten que el área de visualización de inserción se mueva aun después de que el usuario detiene su operación de arrastre antes de que el área de visualización de inserción ha alcanzado su nueva ubicación, otras modalidades requieren que el usuario mantenga su operación de arrastre hasta que el área de visualización de inserción alcanza su nueva ubicación. Algunas modalidades proporcionan todavía otras técnicas para mover el área de visualización de inserción. Por ejemplo, algunas modalidades puede requerir al usuario especifique donde dirigir el área de visualización de inserción 3240 antes de que el área de visualización de inserción 3240 realmente comience a moverse, etc. Algunas modalidades también pueden permitir a las áreas de visualización deslizarse y difundirse a las esquinas al simplemente inclinar el dispositivo móvil en diferentes ángulos.
La quinta etapa 3230 ilustra la Ul 3205 después de que el área de visualización de inserción 3240 ha alcanzando su nueva ubicación en la esquina derecha de fondo de la visualización PIP 3250. La remoción del borde grueso 3260 en la quinta etapa 3230 indica que se completa la operación de difusión a la esquina.
Para facilitar el movimiento ilustrado en la tercera, cuarta y quinta etapa 3220, 3225 y 3230 descritos en lo anterior, la Ul 3205 de algunas modalidades emplean reglas de definición que pérmiten al área de visualización de inserción definirse rápidamente a una esquina de la visualización PIP 3250 una vez que el usuario causa que área de visualización de inserción se mueva hacia esa esquina. Por ejemplo, cuando el usuario arrastra el área de visualización de inserción 3240 por más de una cantidad de umbral hacia una esquina particular, la Ul 3205 de algunas modalidades identifica la dirección del movimiento del área de visualización de inserción 3240, determina que el movimiento ha excedido una cantidad de umbral y, luego subsecuentemente mueve el área de visualización de inserción 3240 automáticamente sin la entrada del usuario adicional al siguiente punto de rejilla en la Ul 3205 a la cual puede ser definida el área de visualización de inserción 3240. En algunas modalidades, los únicos puntos de rejilla que son proporcionados para definir el área de visualización de inserción 3240 son los puntos de rejilla en las cuatro esquinas de la visualización PIP 3250. Otras modalidades proporcionan otros puntos de rejilla en la Ul 3205 (por ejemplo, en la visualización PIP 3250) a la cual puede definirse el área de visualización de inserción 3240 (es decir, a la cual los lados o vértices del área 3240 se pueden colocar sobre o alinear con).
Todavía otras modalidades no pueden no emplear puntos de rejilla de modo que el área de visualización de inserción se puede posicionar en cualquier punto en la visualización PIP 3250. Todavía otras modalidades proporcionan una característica que permite al usuario encender o apagar la definición a la característica de punto de rejilla de Ul. Por otra parte, además del video capturado desde los dispositivos, diferentes modalidades pueden permitir al usuario realizar la operación de definición a la esquina con varios artículos, tales como iconos, etc.
La Figura 33 ¡lustra otros dos ejemplos 3330 y 3335 de una operación de definición a la esquina en la Ul 3205. Estas otras operaciones de definición a la esquina muestran el área de visualización de inserción 3240 que es movida verticalmente o diagonalmente en la visualización PIP 3250, en base a las operaciones de arrastre verticales o diagonales del usuario.
Aunque las Figuras 32 y 33 ilustran el movimiento del área de visualización inserción dentro de una visualización PIP, uno de habilidad ordinaria comprenderá que otras modalidades utilizan técnicas similares para mover áreas de visualización en otros tipos de visualización PIP u otros tipos de visualizaciones compuestas. Por ejemplo, como es descrito adicionalmente enseguida, la visualización PIP de algunas modalidades tiene dos o más visualizaciones de inserción de primer plano y estas visualizaciones de inserción se puede mover en la visualización PIP utilizando técnicas similares a aquellas descritas en lo anterior por referencia a las Figuras 32 y 33. También, algunas modalidades utilizan técnicas similares para mover alrededor las áreas de visualización en visualizaciones compuestas (por ejemplo, para mover un área de visualización de un lado izquierdo de la pantalla al lado derecho de la pantalla a través de un movimiento de arrastre del usuario). Además, el movimiento de un área(s) de visualización de una visualización compuesta puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal como causar que el administrador de videoconferencia 1604 recomponga el área de visualización en la visualización compuesta en respuesta a la entrada del usuario. Como es descrito adicionalmente enseguida, algunas modalidades emplean técnicas de presión y empuje que empujan una primera área de visualización desde una primera ubicación cuando una segunda área de visualización se mueve a la primera ubicación desde una tercera ubicación. 2. Rotación Algunas modalidades rotan la visualización PIP que se presenta durante una videoconferencia cuando un usuario del dispositivo móvil utilizado para la videoconferencia rota el dispositivo durante la conferencia. La Figura 34 ilustra la rotación de una Ul 1105 de un dispositivo 3400 cuando el dispositivo se rota desde una posición vertical a una posición horizontal. El dispositivo 3400 se mantiene verticalmente cuando el lado largo de la pantalla está vertical mientras que el dispositivo 3400 se mantiene horizontalmente cuando el lado largo de la pantalla está horizontal. En el ejemplo ¡lustrado en la Figura 34, la Ul 1105 rota desde una vista de retrato que es optimizada para una contención vertical del dispositivo a una vista de paisaje que es optimizada para contención horizontal del dispositivo 3400. Esta funcionalidad de rotación permite al usuario visualizar la Ul 1105 visualizada en una posición vertical cuando el dispositivo móvil 3400 se mantiene ya sea verticalmente u horizontalmente.
La Figura 34 ilustra la rotación de la Ul 1105 en términos de seis diferentes etapas de operación 3410, 3415, 3420, 3425, 3430 y 3435. La primera etapa 3410 ilustra la Ul 1105 durante una videoconferencia entre el usuario local del dispositivo y un usuario remoto de un dispositivo remoto. La Ul 1105 en la Figura 34 muestra una visualización PIP 1180 que es la misma visualización PIP mostrada en la quinta etapa de la Figura 11 después de que se ha establecido la videoconferencia. En este ejemplo, el video capturado por el dispositivo del usuario local es visualizado en el área de visualización de inserción 1160 y el video capturado por el dispositivo del usuario remoto es visualizado en el área de visualización de fondo 1170. En el área de visualización 1155 a bajo de la visualización PIP 1180 se incluye un artículo Ul seleccionable 3485 (por ejemplo, un botón de Fin de Conferencia 3485), que el usuario puede seleccionar para finalizar la videoconferencia (por ejemplo, a través de un solo golpe suave con el dedo).
La segunda etapa 3415 ilustra la Ul 1105 después de que el usuario comienza a inclinar el dispositivo 3400 a los lados. En este ejemplo, el usuario ha comenzado a inclinar el dispositivo 3400 de ser mantenido verticalmente a ser mantenido horizontalmente, como es indicado por la flecha 3460. La aparición de la Ul 1105 no ha cambiado. En otras situaciones, el usuario puede desear inclinar el dispositivo 3400 de ser mantenido horizontalmente a ser mantenido verticalmente en cambio, y en estas situaciones, la Ul 1105 conmuta de una vista horizontalmente optimizada a una vista verticalmente optimizada.
La tercera etapa 3420 ilustra la Ul 1105 en un estado después de que el dispositivo 3400 se ha inclinado de ser mantenido verticalmente a ser mantenido horizontalmente. En este estado, la aparición de la Ul 1105 todavía no ha cambiado. En algunas modalidades, la operación de rotación se activa después de que el dispositivo 3400 se inclina más allá de una cantidad de umbral y se mantiene más allá de este punto por una duración de tiempo. En el ejemplo ilustrado en la Figura 34, se asume que la cantidad de umbral y la velocidad de la rotación no causarán que la Ul 1105 rote hasta un intervalo de tiempo corto después de que el dispositivo se ha colocado en la posición horizontal. Diferentes modalidades tienen diferentes cantidades de umbral y períodos de espera para activar la operación de rotación. Por ejemplo, algunas modalidades pueden tener tal umbral bajo para activar la operación de rotación para hacer que la Ul 1105 aparezca como si estuviera siempre visualizada en una posición vertical, no importando la orientación del dispositivo 3400. En otras modalidades, el usuario del dispositivo 3400 puede especificar cuando la operación de rotación puede ser activada (por ejemplo, a través de un ajuste de preferencia de menú). También, algunas modalidades no pueden retardar la rotación después de que el dispositivo se inclina más allá de la cantidad de umbral. Por otra parte, diferentes modalidades pueden permitir que la operación de rotación sea activada de diferentes maneras, tal como al activar una conmutación sobre el dispositivo móvil, al dar mandos de voz, en la selección a través de un menú, etc.
La cuarta etapa 3425 ilustra la Ul 1105 después de que ha iniciado la operación de rotación. Algunas modalidades animan las áreas de visualización de rotación para proporcionar retroalimentación al usuario que corisidera la operación de rotación. La Figura 34 ilustra un ejemplo de tal animación. Específicamente, ésta muestra en su cuarta etapa 3425 el inicio de la rotación de las áreas de visualización 1180 y 1 155 conjuntamente. Las áreas de visualización 1180 y 1155 rotan alrededor de un eje 3465 que va a través del centro de la Ul 1105 (es decir, el eje z). Las áreas de visualización 1180 y 1155 se rotan la misma cantidad pero en la dirección opuesta de la rotación del dispositivo 3400 (por ejemplo, a través de la inclinación del dispositivo 3400). En este ejemplo, puesto que el dispositivo 3400 ha rotado noventa grados en una dirección de las manecillas del reloj (al ir de ser mantenido verticalmente a ser mantenido horizontalmente) la operación de rotación podría causar que las áreas de visualización 1180 y 1155 roten noventa grados en una dirección contraria a las mancillas del reloj. A medida que rotan las áreas de visualización 1180 y 1155, las áreas de visualización 1180 y 1155 se contraen proporcionalmente para ajustar la Ul 1105 de modo que las áreas de visualización 1180 y 1155 todavía pueden aparecer completamente sobre la Ul 1105. Algunas modalidades pueden proporcionar un mensaje para indicar el estado de este dispositivo 3400 (por ejemplo, al visualizar la palabra "Rotación").
La quinta etapa 3430 ilustra la Ul 1 105 después de que las áreas de visualización 1180 y 1155 han rotado noventa grados contrario a las manecillas del reloj desde la vista de retrato a la vista de paisaje. En esta etapa, las áreas de visualización 1180 y 1155 se han rotado pero todavía no se han expandido a través del ancho completo de la Ul 1105. Las flechas 3475 indican que al final de la quinta etapa, las áreas de visualización 1180 y 1551 comenzarán a expandirse lateralmente para ajustar el ancho completo de la Ul 1105. Diferentes modalidades no pueden incluir esta etapa puesto que la expansión podría ser realizada simultáneamente con la rotación en la cuarta etapa 3425.
La sexta etapa 3435 ilustra la Ul 1105 después de que las áreas de visualización 1180 y 1155 se han expandido para ocupar la visualización completa de la Ul 1105. Como es mencionado en lo anterior, otras modalidades pueden implementar esta rotación de manera diferente. Para algunas modalidades, simplemente la rotación de la pantalla de un dispositivo más allá de una cantidad de umbral puede activar la operación de rotación, no importando la orientación del dispositivo 3400.
También, otras modalidades podrían proporcionar una animación diferente para indicar la operación de rotación. La operación de rotación realizada en la Figura 34 involucra las áreas de visualización 1180 y 1155 que rotan alrededor del centro de la Ul 1105. Alternativamente, las áreas de visualización pueden ser individualmente rotadas alrededor del eje central de sus áreas de visualización individuales. Uno procesamiento de tal clase se muestra en la Figura 35. La Figura 35 muestra un método alternativo para animar la rotación de las áreas de visualización 1170 y 1160 de la visualización PIP 1180 de una Ul 1105. La visualización PIP 1180 ¡lustrada en la Figura 35 es la misma visualización PIP mismo 1180 ilustrada en la Figura 11.
La Figura 35 ilustra la rotación de la visualización PIP 1180 en términos de seis diferentes etapas de operación 3410, 3415, 3420, 3525, 3530 y 3535. Las primeras tres etapas de operación de la Ul 1105 son idénticas a las primeros tres etapas de operación como es descrito en la Ul 1 105 en la Figura 34. En la tercera etapa para ambas de la Figuras 34 y 35, el dispositivo 3500 ha ido de ser mantenido verticalmente a ser mantenido horizontalmente y todavía no ha comenzado la rotación de la Ul 1105.
La cuarta etapa 3525 ilustra el método alternativo para animar la rotación. En esta etapa, ha iniciado la operación de rotación. Específicamente, la cuarta etapa muestra en 3235 el inicio de la rotación de las áreas de visualización 1170 y 1160. Las áreas de visualización 1170 y 1160 cada una rotan alrededor de los ejes 3567 y 3565, respectivamente, yendo a través del centro de cada una de las áreas de visualización (es decir, el eje z). Las áreas de visualización 1170 y 1160 se rotan la misma cantidad pero en la dirección opuesta de la rotación del dispositivo 3500 (por ejemplo, a través de la inclinación del dispositivo 3500). Similar a aquellos ilustrado en la cuarta etapa 3425 de la Figura 34 anterior, puesto que el dispositivo 3500 ha rotado noventa grados en una dirección de las manecillas del reloj (al ir de ser mantenido verticalmente a ser mantenido horizontalmente) la operación de rotación causaría que las áreas de visualización 1170 y 1 160 roten noventa grados en una dirección contraria a las manecillas del reloj. A medida que rotan las áreas de visualización 1170 y 1 160, las áreas de visualización 1170 y 1160 se contraen proporcionalmente para ajustar la Ul 1105 de modo que las áreas de visualización 1170 y 1160 todavía pueden aparece completamente sobre la Ul 1105.
La quinta etapa 3530 muestra la Ul 1105 después de que las áreas de visualización 1170 y 1 160 han rotado noventa grados en el sentido contrario de las manecillas del reloj desde la vista de retrato a la vista de paisaje. En esta etapa, las áreas de visualización 1170 y 1160 se han rotado pero todavía no se han expandido a través del ancho completo de la Ul 1105. Por otra parte, el área de visualización 1 160 no se ha movido a su posición final. La posición final del área de visualización de inserción 1160 en la visualización PIP 1180 se determina por la posición del área de visualización de inserción 1160 en la visualización PIP 1180 como es mostrado en la primera etapa 3410 (por ejemplo, la área de visualización de inserción 1 160 en la esquina izquierda inferior de la visualización PIP 1180). En esta etapa, el área de visualización de inserción 1160 está todavía en la esquina izquierda superior de la Ul 1105.
Las flechas 3580 indican que en el final de la quinta etapa 3530, las áreas de visualización 1170 y 1160 comenzarán a expandirse lateralmente hasta que el área de visualización principal 1 170 se ajusta al ancho completo de la Ul 1105 para un dispositivo que es mantenido horizontalmente. Por otra parte, la flecha 3575 indica que el área de visualización de inserción 1160 se deslizará a la esquina izquierda inferior de la visualización PIP 1180.
Diferentes modalidades pueden implementar esto de manera diferente. En algunas modalidades, el movimiento del área de visualización de inserción 1 160 puede ocurrir simultáneamente como la expansión del área de visualización del área principal 1170 o secuencialmente. Por otra parte, algunas modalidades pueden redimensionar las áreas de visualización de inserción 1160 antes, durante o después de la expansión del área de visualización principal 1 170 para crear la nueva visualización PIP 1180. En este ejemplo, el área de visualización 1155 desaparece, mientras que están rotando las áreas de visualización 1160 y 1170. Sin embargo, el área de visualización 1155 puede permanecer sobre la Ul 1105 durante la rotación y rotar junto con las áreas de visualización 1160 y 1170 en algunas modalidades.
La sexta etapa 3535 ilustra la Ul 1105 después de que el área de visualización de inserción 1160 ha alcanzado su nueva ubicación y las áreas de visualización 1160 y 1170 se han expandido apropiadamente para ajustarse al ancho completo de la Ul 1105. En este ejemplo, el área de visualización de inserción 1160 está ahora en la esquina izquierda inferior de la visualización PIP 1180, sobreponiendo el área de visualización principal 1170. La visualización PIP 1180 ahora tiene el mismo arreglo de visualización como la visualización PIP 1180 de la primera etapa 3410. La aparición del área de visualización 1155 abajo de la visualización PIP 1180 en la sexta etapa indica que se completa la operación de rotación. Como es mencionado en lo anterior, simplemente la rotación de la pantalla de un dispositivo más allá de una cantidad de umbral puede activar la operación de rotación, no importando la orientación del dispositivo 3500.
En los ejemplos descritos en lo anterior por referencia a las Figuras 34 y 35, la orientación del área de visualización 1170 también cambia (es decir, de retrato a paisaje). Esto es, después de que se rota el área de visualización 1170 en la tercera etapa 3420, la orientación del área de visualización 1170 cambia de retrato a paisaje al expandir horizontalmente la visualización PIP 1180 de modo que llena la Ul 1105 completa. En algunas modalidades, cuando se rota el dispositivo 3500, de video capturado por el dispositivo remoto rota pero la orientación del área de visualización que visualiza el video capturado por el dispositivo remoto permanece sin cambio. Un ejemplo de tal clase se ilustra en la Figura 36. Esta figura es similar a la Figura 35, excepto que el video visualizado en el área de visualización 1170 rota pero el área de visualización 1170 permanece visualizada en la orientación de retrato.
La Figura 36 también ilustra un ejemplo de una operación de rotación en la cual el área de visualización 1 155 permanece en la misma posición (en lugar de rotar y expandirse horizontalmente para llenar la visualización PIP 1180 como se muestra en la Figura 35). Por otra parte, esta figura incluye un arreglo del área de visualización 1155 que es el mismo como el arreglo del área de visualización 1155, descrito en lo anterior en la Figura 12. Como es mostrado, el área de visualización 1155 permanece en la misma posición a medida que el dispositivo 3500 rota en las etapas 3640, 3645, 3650, 3655, 3685 y 3690.
Algunas modalidades proporcionan una operación de rotación en la cual la orientación del área de visualización que visualiza el video capturado por el dispositivo local cambia (en lugar de permanecer en la misma orientación como es mostrado en la Figura 35) para reflejar la orientación del dispositivo local después de que se realiza la operación de rotación sobre el dispositivo local. La Figura 36 ilustra un ejemplo de tal operación de rotación de una Ul 1105 por referencia a seis etapas diferentes 3640, 3645, 3650, 3655, 3685 y 3690. En esta figura, la primera etapa 3640 muestra el área de visualización de inserción 1160, que visualiza el video capturado por una cámara del dispositivo 3500, en una orientación de retrato. La segunda y tercera etapa 3645 y 3650 son similares a la segunda y tercera etapa 3415 y 3420 de la Figura 35, ya que muestran la inclinación del dispositivo 3500 en varias etapas de la operación de rotación. En este punto, la cámara del dispositivo 3500 está capturando imágenes en una orientación de paisaje. Para indicar esta transición, algunas modalidades proporcionan una animación como es mostrada en la cuarta y quinta etapa 3655 y 3685 mientras que otras modalidades no proporcionan alguna animación en todo.
En la cuarta etapa 3655, la imagen visualizada en el área de visualización de inserción 1160 es rotada, pero no el área de visualización de inserción 1160 misma puesto que la inclinación del dispositivo 3500 en la segunda y tercera etapa 3445 y 3650 ha rotado el área de visualización de inserción 1160 a una orientación de paisaje. En la quinta etapa 3685, la imagen rotada en el área de visualización de inserción 1160 se expande horizontalmente para llenar el área de visualización de inserción 1160 y el área de visualización de inserción 1160 comienza a moverse hacia el área izquierda inferior de la visualización PIP 1180 para posicionar el área de visualización de inserción 1160 en la misma posición relativa como el área de visualización de inserción 1160 en la visualización PIP de la primera etapa 3640.
En algunas modalidades, la orientación del área de visualización que visualiza el video capturado por el dispositivo remoto también cambia para reflejar la orientación del dispositivo remoto después de que se realiza la operación de rotación sobre el dispositivo remoto. La Figura 37 ¡lustra cuatro etapas diferentes de una Ul 1 105 del dispositivo 3500 en las cuales (1) la orientación del área de visualización que visualiza el video capturado por el dispositivo local (área de visualización 1160 en este ejemplo) cambia para reflejar la orientación del dispositivo local después de que se realiza una operación de rotación sobre el dispositivo local y (2) la orientación del área de visualización que visualiza el video capturado por el dispositivo remoto (área de visualización 1 170 en este ejemplo) cambia para reflejar la orientación del dispositivo remoto después de que se realiza una operación de rotación sobre el dispositivo remoto.
En la primera etapa 3705, la Ul 1105 es la misma como la Ul 1105 en la Figura 36. Específicamente, la primera etapa 3705 muestra las áreas de visualización 1160 y 1 170 en una orientación de retrato debido a que el dispositivo 3500 se muestra en una orientación de retrato y el dispositivo remoto está en una orientación de retrato (no mostrado). Desde la primera etapa 3705 a la segunda etapa 3710, se realiza una operación de rotación sobre el dispositivo local al rotar el dispositivo 3500 noventa grados desde una posición vertical a una posición lateral. La segunda etapa 3710 muestra la Ul 1105 después de que se completa la operación de rotación del dispositivo 3500. En esta etapa, los videos visualizados en las áreas de visualización 1 170 y 1601 han rotado a una posición vertical. Sin embargo, solamente el área de visualización 1 160 del video localmente capturado ha rotado desde una orientación de retrato a una orientación de paisaje puesto que la operación de rotación solamente es realizada sobre el dispositivo local (es decir, el dispositivo 3500). El área de visualización 1170 permanece en la orientación de retrato.
Desde la segunda etapa 3710 a la tercera etapa 3715, se realiza una operación de rotación sobre el dispositivo remoto al rotar el dispositivo remoto desde una posición vertical a una posición lateral (no mostrada). La tercera etapa 3715 muestra la Ul 1105 después de que se completa la operación de rotación del dispositivo remoto. En esta etapa, el video visualizado en el área de visualización 1170 y el área de visualización 1 170 del video remotamente capturado ha rotado desde una orientación de retrato a una orientación de paisaje puesto que la operación de rotación solamente se realiza sobre el dispositivo remoto. Así, esta etapa de la Ul 1 105 visualiza las áreas de visualización 1 170 y 1 160 de los videos localmente y remotamente capturados ambos en orientación de paisaje.
Desde la tercera etapa 3715 a la cuarta etapa 3720, se realiza una operación de rotación sobre el dispositivo local al rotar el dispositivo 3500 noventa grados desde una posición lateral a una posición vertical. La cuarta etapa 3720 muestra la Ul 1 105 después de la terminación de esta operación de rotación. En esta cuarta etapa 3720, los videos visualizados en las áreas de visualización 1160 y 1 170 han rotado a una posición vertical. Sin embargo, solamente el área de visualización 1160 del video localmente capturado ha rotado desde una orientación de paisaje a una orientación de retrato puesto que la operación de rotación se realiza solamente sobre dispositivo local (es decir, el dispositivo 3500). El área de visualización 1 170 permanece en la orientación de paisaje.
Desde la cuarta etapa 3720 a la primera etapa 3705, se realiza una operación de rotación sobre el dispositivo remoto al rotar el dispositivo remoto noventa grados desde una posición lateral a una posición vertical (no mostrada). En este caso, la primera etapa 3705 muestra el área de visualización 1 170 después de la terminación de esta operación de rotación. Por lo tanto, la Ul 1 105 de esta etapa muestra las áreas de visualización 1 160 y 1 170 en una orientación de retrato. Aunque la Figura 37 ilustra una secuencia de diferentes operaciones de rotación, otras modalidades pueden realizar cualquier número de operaciones de rotación en cualquier número de secuencias diferentes.
Las Figuras 34, 35, 36 y 37 describen operaciones de rotación realizadas sobre dispositivos locales y remotos durante una videoconferencia. Cuando se realiza una operación de rotación sobre el dispositivo móvil local, algunas modalidades notifican el dispositivo remoto de la operación de rotación con el fin de que el dispositivo remoto realice cualquier de las modificaciones al video del dispositivo local (tal como la rotación del área de visualización que está visualizando el video del dispositivo local). De manera similar, cuando se realiza una operación de rotación sobre el dispositivo remoto, el dispositivo remoto notifica al dispositivo local de esta operación para permitir que el dispositivo local realice cualquier de las modificaciones del video del dispositivo remoto. Algunas modalidades proporcionan un canal de comunicación de control para comunicar la notificación de las operaciones de rotación entre los dispositivos local y remoto durante la videoconferencia.
Aunque las Figuras 34, 35, 36 y 37 ilustran diferentes maneras en las cuales se puede realizar la animación de una rotación, uno de habilidad ordinaria entenderá que otras modalidades pueden visualizar la animación de la rotación a otras maneras diferentes. Además, la animación de la operación de rotación puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil local,, tal como causar al administrador de videoconferencia 1604 a recomponer el área(s) de visualizacion en diferentes ángulos en la Ul 1105 y escalar las imágenes visualizadas en el área(s) de visualizacion. 3. Ajuste del Tamaño de Ventana Algunas modalidades permiten a un usuario de un dispositivo móvil ajustar el tamaño de un área de visualizacion de inserción de una visualización PIP presentada durante una videoconferencia. Diferentes modalidades proporcionan diferentes técnicas para redimensionar un área de visualización de inserción. La Figura 38 ilustra un procedimiento para redimensionar el área de visualización de inserción. En este procedimiento, el usuario del dispositivo móvil, ajusta el tamaño del área de visualización de inserción al seleccionar una esquina del área de visualización de inserción y, luego al expandir o contraer el área de visualización de inserción.
En la Figura 38, una Ul 3800 de un dispositivo móvil 3825 presenta una visualización PIP 3865 durante una videoconferencia con un usuario remoto de otro dispositivo móvil. Esta visualización PIP 3865 incluye dos visualizaciones de video: un área de visualización principal de fondo 3830 y un área de visualización de inserción de primer plano 3835. El área de visualización principal de fondo 3830 capta una mayoría de la visualización PIP 3865 mientras que el área de visualización de inserción de primer plano 3835 es más pequeña y se sobre pone al área de visualización principal de fondo 3830. En este ejemplo, el área de visualización principal de fondo 3830 presenta un video de una persona sosteniendo una guitarra, que se asume que es una persona cuyo video está siendo capturado por la cámara frontal del dispositivo remoto, o una persona cuyo video está siendo capturado por la cámara trasera del dispositivo remoto. El área de visualización de inserción de primer plano 3835 presenta un video de una persona con un sombrero, que, en este ejemplo, se asume que es una persona cuyo video está siendo capturado por la cámara frontal del dispositivo local o una persona cuyo video está siendo capturado por cámara trasera del dispositivo local. Abajo de la visualización PIP 3865 está un área de visualización 1155, que incluye un artículo de Ul seleccionare 3860 etiquetado "Fin de Conferencia" (por ejemplo, un botón 3860) que permite al usuario finalizar la videoconferencia al seleccionar el artículo.
Esta visualización PIP 3865 es solamente una manera de presentar una vista compuesta de los videos que son capturados por los dispositivos remoto y local. Algunas modalidades pueden proporcionar otras vistas compuestas. Por ejemplo, en lugar de tener una visualización de fondo más grande para el video del dispositivo remoto, la visualización de fondo más grande puede ser del video desde del dispositivo local y la visualización de inserción de primer plano más pequeña puede ser del video del dispositivo remoto. También, algunas modalidades permiten que los videos local y remoto aparezcan en la Ul 3800 en dos áreas de visualización de lado por lado (por ejemplo, ventas de visualización izquierda y derecha, o ventas de visualización superior y de fondo) o dos área de visualización diagonalmente alineadas. La manera de la visualización PIP o un modo de visualización de omisión puede ser especificada por el usuario en algunas modalidades. En otras modalidades, la visualización PIP también puede contener una visualización de fondo más grande y dos visualizaciones de inserción de primera plano más pequeñas.
La Figura 38 ilustra la operación de redimensionamiento en términos de cuatro etapas de operación de la Ul 3800. En la primera etapa 3805, la visualización de inserción de primer plano 3835 es sustancialmente más pequeña que el área de visualización principal de fondo 3830. También en este ejemplo, el área de visualización de inserción de primer plano 3835 está ubicada en la esquina derecha inferior de la visualización PIP 3865. En otros ejemplos, el área de visualización de inserción de primer plano 3835 puede ser de un tamaño diferente o ubicado en un área diferente en la visualización PIP 3865.
En la segunda etapa 3810, se inicia la operación de redimensionamiento. En este ejemplo, la operación se inicia al seleccionar una esquina del área de visualización de inserción 3835 que el usuario desea redimensionar (por ejemplo, al sostener un dedo 3840 hacia abajo en la esquina izquierda inferior del área de visualización de inserción 3835). La segunda etapa 3810 de la Ul 3800 indica esta selección en términos de un borde grueso 3845 para el área de visualización de inserción 3835. En esta etapa, el usuario puede expandir o contraer el área de visualización de inserción 3835 (por ejemplo, al arrastrar su dedo 3840 sobre la visualización PIP 3865 lejos del área de visualización de inserción 3835 o hacia el área de visualización de inserción 3835).
La tercera etapa 3815 ilustra la Ul 3800 después de que el usuario ha iniciado a expandir el área de visualización de inserción 3835 al mover su dedo 3840 lejos del área de visualización de inserción 3835 (es decir, al mover su dedo diagonalmente hacia la esquina izquierda superior de la Ul 3800 en este ejemplo), como es indicado por una flecha 3850. También como es indicado por la flecha 3855, el movimiento del dedo 3840 ha expandido el área de visualización de inserción 3835 proporcionalmente tanto en altura como en ancho. En otros ejemplos, el usuario puede contraer el área de visualización de inserción 3835 utilizando la misma técnica (por ejemplo, al arrastrar el dedo hacia el área de visualización de inserción 3835).
La cuarta etapa 3820 visualiza la Ul 3800 después de que se ha completado el redimensionamiento del área de visualización de inserción 3835. En este ejemplo, el usuario completa el redimensionamiento del área de visualización de inserción 3835 al detener el arrastre de su dedo 3840 y al remover su dedo de la visualización PIP 3865 una vez que el área de visualización de inserción 3835 ha alcanzado el tamaño deseado. Como un resultado de este procedimiento, el área de visualización de inserción redimensionado 3835 es más grande que su tamaño original en la primera etapa 3805. La remoción del borde grueso 3845 indica que ahora se ha completado la operación de redimensionamiento del área de visualización de inserción.
Algunas modalidades proporcionan otras técnicas para permitir a un usuario redimensionar un área de visualización de inserción 3835 en una visualización PIP 3865 durante una videoconferencia. La Figura 39 ilustra una de otra técnica tal. Esta figura ¡lustra una técnica para redimensionar el área de visualización de inserción 3835 al seleccionar un borde del área de visualización de inserción 3835 (es decir, sobre uno de los lados de esta área de visualización 3835) y luego al expandir o contraer de área de visualización de inserción 3835.
La Figura 39 ilustra esta operación de redimensionamiento en términos de cuatro etapas de operación de la Ul 3800 de la Figura 38. La primera etapa 3805 en la Figura 39 es la misma como la primera etapa 3805 en la Figura 38. Específicamente en esta etapa, la Ul 3800 del dispositivo 3925 ilustra la visualización PIP 3865 con un área de visualización principal de fondo más grande 3830 y un área en visualización de inserción de primer plano más pequeña 3835 en la esquina derecha del fondo de la visualización PIP 3865. Aunque las Figuras 38 y 39 ilustran dos técnicas diferentes para redimensionar un área de visualización de inserción 3835 en la misma Ul 3800, uno de habilidad ordinaria comprenderá que algunas modalidades no ofrecen ambas de estas técnicas del mismo Ul.
La segunda etapa 3910 ilustra el inicio de una operación de redimensionamiento. En este ejemplo, el usuario inicia la operación al seleccionar un lado del área de visualización de inserción 3835 que el usuario desea redimensionar (por ejemplo, al colocar un dedo 3840 hacia abajo sobre borde superior o el borde lateral del área de visualización de inserción 3835). En este ejemplo, un usuario coloca su dedo 3840 en el borde superior del área de visualización de inserción 3835 con el fin de hacer esta selección. La segunda etapa 3910 indica esta selección en términos de un borde más grueso 3845 para el área de visualización de inserción 3835.
La tercera etapa 3915 ilustra la Ul 3800 después de que el usuario ha iniciado a expandir el área de visualización de inserción 3835 al mover su dedo 3840 lejos del área de visualización de inserción 3835 (es decir, verticalmente hacia la parte de arriba de la visualización PIP 3865), como es indicado por una flecha 3950. También como es indicado por la flecha 3955, el movimiento del dedo 3840 ha expandido el área de visualización de inserción 3835 proporcionalmente tanto en la altura como en ancho. En otros ejemplos, el usuario puede contraer el área de visualización 3835 utilizando la misma técnica (por ejemplo, al arrastrar el dedo 3840 hacia el área de visualización de inserción 3835).
La cuarta etapa 3920 visualiza la Ul 3800 después de que se ha completado el redimensionamiento del área de visualización de inserción 3835. En este ejemplo, el usuario completa el redimensionamiento del área de visualización de inserción 3835 al detener el arrastre de su dedo 3840 y al remover su dedo 3840 de la pantalla de visualización del dispositivo una vez que el área de visualización de inserción 3835 ha alcanzado el tamaño deseado. Como un resultado de este procedimiento, el área de visualización de inserción redimensionada 3835 es más grande que su tamaño original en la primera etapa 3805. La remoción de borde grueso 3845 indica que ahora se ha completado la operación de redimensionamiento del área de visualización de inserción.
En respuesta a una operación de arrastre, algunas modalidades ajustan el tamaño del área de visualización de inserción 3835 proporcionalmente en altura y ancho, como es ilustrado por las Figuras 38 y 39. Otras modalidades pueden permitir al usuario ajustar la altura y/o ancho del área de visualización de inserción 3835 sin afectar el otro atributo. La Figura 40 ilustra un ejemplo de tal procedimiento de redimensionamiento.
Específicamente, la Figura 40 ilustra una Ul 3800 de un dispositivo móvil 4025 que es similar a la Ul 3800 de la Figura 38, excepto la Ul 3800 de la Figura 40 permite que el área de visualización de inserción 3835 sea expandida en dirección horizontal y/o dirección vertical cuando uno de los bordes del área de visualización de inserción 3835 se selecciona y se mueve horizontalmente o verticalmente. Para simplificar la descripción de la Ul 3800, la Figura 40 ¡lustra una visualización PIP 3865 en la Ul 3800 que es similar a la visualización PIP 3865 de la Figura 38 excepto que ahora el área de visualización de inserción 3835 está en la esquina derecha superior de la visualización PIP 3865. La visualización PIP 3865 incluye dos visualizaciones de video: un área de visualización principal de fondo 3830 y un área visualización de inserción de primer plano 3835. En este ejemplo, el área de de visualización principal de fondo 3830 presenta un video que está siendo capturado por la cámara frontal o cámara trasera del dispositivo remoto. El área de visualización de inserción de primer plano 3835 presenta un video que está siendo capturado por la cámara frontal o cámara trasera del dispositivo local.
Similar a la Figura 38, la Figura 40 ilustra la operación de redimensionamiento en términos de cuatro etapas de operación de la Ul 3800. La primera etapa 4005 es similar a la primera etapa 3805 de la Figura 38 excepto que ahora el área de visualización de inserción 3835 está en la esquina derecha superior. Las otras tres etapas 4010, 4015 y 4020 son similares a las tres etapas 3910, 3915 y 3920, excepto que la selección y movimiento del borde de fondo del área de visualización de inserción 3835 ha causado que el área de visualización de inserción 3835 solamente se expanda en la dirección vertical sin afectar el ancho del área de visualización de inserción 3835.
Las Figuras 38, 39 y 40 proporcionan modalidades de ejemplo que permiten al usuario redimensionar un área de visualización de inserción 3835 de una visualización PIP 3865 al seleccionar una esquina o un lado del área de visualización de inserción 3835. Algunas modalidades proporcionan otras técnicas para redimensionar una ventana de inserción 3835. Por ejemplo, la Figura 41 ilustra que algunas modalidades permiten que el área de visualización de inserción 3835 sea redimensionada al seleccionar el interior del área de visualización de inserción 3835. En este procesamiento, el usuario ajusta el tamaño del área de visualización de inserción 3835, al colocar dos dedos 4155 y 4156 sobre la pantalla y al arrastrar los dedos, ya sea lejos de o uno hacia el otro.
En la Figura 41 , una Ul 3800 de un dispositivo móvil 4140 proporciona una visualización PIP 3865 durante una videoconferencia con un usuario remoto de otro dispositivo móvil. Para simplificar la descripción de la Ul 3800, la Figura 41 ilustra una visualización PIP 3865 en esta Ul 3800 que es similar a la visualización PIP 3865 de la Figura 38.
La Figura 41 ilustra la operación de redimensionamiento en términos de siete etapas de operación de la Ul 3800. Las primeras cuatro etapas 3805, 4110, 4115 y 4120 muestran la expansión de un área de visualización de inserción 3835, mientras que las últimas tres etapas muestran la contracción del área de visualización de inserción 3835. La primera etapa 3805 en la Figura 41 es la misma como la primera etapa 3805 en la Figura 38. Específicamente, en esta etapa, la Ul 3800 ilustra la visualización PIP 3865 con un área de visualización principal de fondo más grande 3830 y un área en visualización de inserción de primer plano más pequeña 3835. En este ejemplo, el área de visualización principal de fondo 3830 presenta un video que está siendo capturado por la cámara frontal o cámara trasera del dispositivo remoto. El área de visualización de inserción de primer plano 3835 presenta un video que está siendo capturado por la cámara frontal o cámara trasera del dispositivo local.
La segunda etapa 4110 ilustra la Ul 3800 después de que se inicia la operación de redimensionamiento. En este ejemplo, el usuario inicia la operación al seleccionar el área de visualización de inserción 3835 que el usuario desea redimensionar (por ejemplo, al colocar dos dedos 4155 y 4156 hacia abajo dentro del área de visualización de inserción 3835). La segunda etapa 4110 de la Ul 3800 indica esta selección en términos de un borde grueso 4190 para el área de visualización de inserción 3835.
La tercera etapa 4115 ilustra la Ul 3800 después de que el usuario ha comenzado a expandir el área de visualización de inserción 3835 al mover sus dedos 4155 y 4156 lejos entre si (es decir, al mover el dedo 4155 hacia la esquina izquierda superior de la visualización PIP 3865 y al mover el dedo 4156 hacia la esquina derecha inferior de la visualización PIP 3865), como es indicado por las flechas 4160. Como es indicado por una flecha 4165, el movimiento de los dedos 4155 y 4156 ha expandido el área de visualización de inserción 3835 proporcionalmente tanto en altura como en ancho.
La cuarta etapa 4120 visualiza la Ul 3800 después de que se ha completado el redimensionamiento del área de visualización de inserción 3835. En este ejemplo, el usuario completa el redimensionamiento del área de visualización de inserción 3835 al detener el arrastre de sus dedos 4155 y 4156 y al remover sus dedos 4155 y 4156 de la pantalla de visualización del dispositivo. Como un resultado de este procedimiento, el área de visualización de inserción redimensionada 3835 es más grande que su tamaño original en la primera etapa 3805. La remoción de borde grueso 4190 indica que ahora es terminada la operación de redimensionamiento del área de visualización de inserción.
En la quinta etapa 4125, el usuario re-selecciona el área de visualización de inserción 3835 al colocar hacia abajo dos dedos 4155 y 4156 sobre el área de visualización de inserción 3835. La sexta etapa 4130 ¡lustra la Ul 3800 después de que el usuario ha comenzado a contraer el área de visualización de inserción 3835 al mover sus dedos 4155 y 4156 más cercanos conjuntamente, como es indicado por las flechas 4170. Como es indicado por una flecha 4175, el movimiento de los dedos 4155 y 4156 ha contraído la visualización de inserción 3835 proporcionalmente tanto en altura como en ancho.
La séptima etapa 4135 es similar a la cuarta etapa 4 20 en la Figura 41 , excepto que el área de visualización de inserción 3835 se ha contraído en tamaño como un resultado de la operación. La remoción del borde grueso 4190 indica que ahora se termina la operación de redimensionamiento del área de visualización de inserción.
La descripción anterior de las Figuras 38-41 ilustra varias interfaces de usuario de ejemplo que permiten a un usuario redímensionar un área de visualización de inserción de una visualización PIP. En algunas modalidades, el redimensionamiento de un área de visualización de inserción causa cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal que causa que el administrador de videoconferencia 1604 cambie la escalación y composición del área de visualización de inserción en la visualización PIP en respuesta a la entrada del usuario. Además, en algunas modalidades, el arreglo del área de visualización 1155 en las Figuras 38-41 es el mismo como el arreglo del área de visualización 1155 de la Figura 12, descrita en lo anterior. 4. Identificación de Regiones de Interés Algunas modalidades permiten a un usuario identificar una región de interés (ROI) en un video visualizado durante una videoconferencia con el fin de modificar el procesamiento de imagen (por ejemplo, el administrador de procesamiento de imagen 1608 en la Figura 16), la codificación (por ejemplo, el codificador 1655 en la Figura 16), el comportamiento de los dispositivos móviles y sus cámaras durante la videoconferencia, o una combinación de los mismos. Diferentes modalidades proporcionan diferentes técnicas para identificar tal región de interés en un video. La Figura 42 ilustra una interfaz de usuario de algunas modalidades para identificar una región de interés en un video con el fin de mejorar la calidad de imagen del video.
En la Figura 42, una Ul 4200 de un dispositivo móvil 4225 presenta una visualización PIP 4265 durante una videoconferencia con un usuario remoto de otro dispositivo móvil. La visualización PIP en la Figura 42 es sustancialmente similar a aquella de la Figura 41.
Específicamente, la visualizacion PIP en la Figura 42 incluye dos visualizaciones de video: una visualizacion principal de fondo 4230 y una visualizacion de inserción de primer plano 4235. En este ejemplo, la visualizacion principal de fondo 4230 presenta un video de un árbol y una persona con un sombrero, que se supone que son un árbol y una persona cuyo video está siendo capturado por la cámara frontal del dispositivo remoto o un árbol y una persona cuyo video está siendo capturado por la cámara trasera del dispositivo remoto. La visualizacion de inserción de primer plano 4235 presenta un video de un hombre, que en este ejemplo se supone que es un hombre cuyo video está siendo capturado por la cámara frontal del dispositivo local o una persona cuyo video está siendo capturado por la cámara trasera del dispositivo local. Abajo de la visualización PIP está un área de visualización 1 155 que incluye un artículo Ul seleccionable 4260 etiquetado "Fin de Conferencia" (por ejemplo, un botón 4260) que permite al usuario finalizar la videoconferencia al seleccionar el artículo.
Esta visualización PIP es solamente una manera de presentar una vista compuesta de los videos que son capturados por los dispositivos remoto y local. Algunas modalidades pueden proporcionar otras vistas compuestas. Por ejemplo, en lugar de tener una visualización de fondo más grande para el video del dispositivo remoto, la visualización de fondo más grande puede ser del video del dispositivo local y la visualización de inserción de primer plano más pequeña puede ser del video del dispositivo remoto. También, algunas modalidades permiten que los videos locales y remotos a aparezcan en la Ul en dos áreas de visualización de lado por lado (por ejemplo, ventanas de visualización izquierda y derecha, o ventanas de visualización superior y de fondo) o dos áreas de visualización diagonalmente alineadas. En otras modalidades, la visualización PIP también puede contener una visualización de fondo más grande y visualizaciones de inserción de primer plano más pequeñas. La manera de la visualización PIP o un modo de visualización de omisión puede ser especificada por el usuario en algunas modalidades.
La Figura 42 ilustra la operación de identificación de ROI en términos de cuatro etapas de operación de Ul 4200. Como es mostrado en la primera etapa 4205, el video presentado en la visualización de fondo 4230 tiene una calidad muy baja (es decir, las imágenes de video están borrosas). En este ejemplo, un usuario de un dispositivo móvil 4225 de manera similar identificaría el área en la visualización de fondo 4230, donde la cara de la persona 4270 aparece como la región de interés.
En la segunda etapa 4210, se inicia la operación de identificar una región de interés. En este ejemplo, la operación se inicia al seleccionar un área del video presentada en la visualización de fondo 4230 que el usuario desea identificar como la región de interés (por ejemplo, al tocar suavemente con un dedo 4250 sobre la pantalla del dispositivo en una ubicación alrededor de la cara de la persona visualizada 4270 en la visualización de fondo 4230).
Como es mostrado en la tercera etapa 4215, la selección del usuario del área causa que la Ul 4200 dibuje un encerramiento 4275 (por ejemplo, un cuadrado de puntos 4275) que circunda el área de la selección del usuario. La cuarta etapa 4220 visualiza la Ul 4200 después de que se ha completado la identificación de la región de interés. Como un resultado de este proceso, la calidad del video dentro de la región de interés se ha mejorado sustancialmente de aquella en la primera etapa 4205. La remoción del encerramiento 4275 indica que ahora se ha completado la operación de selección de ROI. En algunas modalidades, el proceso de identificación de ROI también causa los mismos cambios al mismo video visualizado sobre el dispositivo remoto como lo hace el dispositivo local 4225. En este ejemplo para este caso, la calidad de fotografía dentro de la región de interés del mismo video visualizado en el dispositivo remoto también se ha mejorado sustancialmente.
En algunas modalidades, el usuario puede agrandar o contraer el encerramiento 4275 en la tercera etapa 4215 (por ejemplo, al mantener el dedo 4250 hacia abajo sobre la visualización y al mover el dedo 4250 hacia la esquina derecha superior de la pantalla para agrandar el encerramiento 4275 o al mover el dedo 4250 hacia la esquina izquierda inferior de la pantalla para contraer el encerramiento 4275). Algunas modalidades también permite al usuario reubicar el encerramiento 4275 en la tercera etapa 4215 (por ejemplo, al mantener el dedo 4250 hacia abajo sobre la visualización y al mover el dedo 4250 horizontalmente o verticalmente sobre la visualización). En algunas de otras modalidades, la selección del área no puede causar que la Ul 4200 dibuje el encerramiento 4275 en todo en la tercera etapa 4215.
Otras modalidades proporcionan diferentes técnicas para permitir a un usuario a identificar una región de interés en un video. La Figura 43 ilustra otra técnica de tal clase. En la Figura 43, el usuario identifica una región de interés al dibujar una forma que limita la región. La forma en este ejemplo es un rectángulo, pero puede ser de otras formas (por ejemplo, cualquier otro polígono, un círculo, una elipse, etc.). Algunas modalidades proporcionan esta técnica alternativa de la Figura 43 en un dispositivo Ul que también proporciona la técnica ilustrada en la Figura 42. Otras modalidades, sin embargo, no proporcionan ambas técnicas en la misma Ul.
La Figura 43 ilustra esta operación de identificación de ROI en términos de cinco etapas de operación de una Ul 4200. La primera etapa 4205 en la Figura 43 es idéntica a la primera etapa 4205 en la Figura 42. Específicamente, en esta primera etapa 4205, la Ul 4200 ilustra una visualización PIP 4265 con una visualización principal de fondo más grande 4230 y una visualización de inserción de primer plano más pequeña 4235 en la esquina izquierda del fondo de la visualización PIP 4265.
En la segunda etapa 4310, se inicia la operación de identificación de una región de interés. En este ejemplo, la operación se inicia al seleccionar durante una duración de tiempo una primera posición para definir la región de interés en un video presentado en el área de visualización de fondo 4230 (por ejemplo, al mantener un dedo 4350 hacia abajo en la pantalla del dispositivo en una ubicación alrededor de la cara de la persona visualizada 4270 en la visualización de fondo 4230 por una duración de tiempo). En la tercera etapa 4315, la Ul 4200 indica que la primera posición 4370 se ha selecciona en términos de un punto 4355 enseguida a la primera posición seleccionada sobre el área de visualización de fondo 4230.
La cuarta etapa 4320 ilustra la Ul 4200 después de que el usuario ha seleccionado una segunda posición 4375 para definir la región de interés. En este ejemplo, el usuario selecciona esta segunda posición 4375 al arrastrar el dedo 4350 a través de la pantalla del dispositivo desde la primera ubicación después del punto 4355 que aparece y al detener una ubicación entre el sombrero visualizado y el árbol visualizado en el área de visualización de fondo 4230, como es indicado por una flecha 4360. Como es mostrado en la cuarta etapa, este arrastre causó que la Ul 4200 dibuje un borde rectangular 4365 para la región de área de interés que tiene la primera y segunda posición 4370 y 4375 en sus vértices opuestos.
La quinta etapa 4325 ilustra la Ul 4200 después de que se ha completado la identificación de la región de interés. En este ejemplo, el usuario completa la identificación de la región de interés al detener el arrastre del dedo 4350 y al remover el dedo 4350 de la pantalla de visualización del dispositivo una vez que se ha identificado la región deseada de área de interés. La quinta etapa 4325 ilustra que como un resultado del proceso de dibujo, la calidad del video dentro de la región de interés se ha mejorado sustancialmente de aquella en la primera etapa 4205. En algunas modalidades, el proceso de dibujo también causa que los mismos cambios a la visualización sobre el dispositivo remoto como lo hace al dispositivo local 4225. En este ejemplo para este caso, la calidad de fotografía dentro de la región de interés del mismo video visualizado sobre el dispositivo remoto será sustancialmente mejorada.
La descripción de las Figuras 42 y 43, anteriores, ilustra diferentes maneras de identificar una región de interés en un video con el fin de mejorar la calidad de imagen de la región identificada. En algunas modalidades, el mejoramiento de la calidad de imagen de la región identificada de interés causa cambios a las operaciones de codificación del dispositivo móvil de cámara doble tal como la asignación de más bit a la región identificada cuando se codifica el video.
Algunas modalidades permiten al usuario identificar una región de interés en un video para hacer diferentes cambios a los dispositivos móviles o sus cámaras. Por ejemplo, la Figura 44 ilustra un ejemplo de identificación de una región de interés en un video para expandir o contraer el área de región de interés sobre la visualización. En este procedimiento, el usuario identifica una región de interés en un video al seleccionar un área sobre la visualización como el centro de la región de interés y, luego al expandir o contraer la región de área de interés.
En la Figura 44, una Ul 4400 de un dispositivo móvil 4425 presenta visualización PIP 4265 durante una videoconferencia con un usuario remoto de otro dispositivo móvil. La visualización PIP 4265 en la Figura 44 es sustancialmente similar a la visualización PIP 4265 de la Figura 42, pero la visualización de inserción de primer plano 4235 de la Figura 44 está ubicado en la esquina izquierda inferior de la visualización PIP 4265.
La Figura 44 ilustra la operación de selección de ROI en términos de cuatro etapas de operación de la Ul 4400. Como se muestra en la primera etapa 4405, la visualización de fondo 4430 presenta un video con un hombre en la parte izquierda y un árbol 4440 en la parte derecha de la visualización 4430. Por otra parte, el árbol 4440 es relativamente pequeño y ocupa solamente el lado derecho del área de visualización de fondo 4430. En este ejemplo, un usuario de un dispositivo móvil 4425 de manera similar identificaría el área donde el árbol 4440 aparece sobre la visualización 4430 como la región de interés.
En la segunda etapa 4410, se inicia la operación de identificación de una región de interés. En este ejemplo, la operación se inicia al seleccionar un área 4440 en el video presentado en la visualización de fondo 4430 que el usuario desea identificar como la región de interés (por ejemplo, al mantener los dos dedos 4445 y 4446 hacia abajo sobre el área de visualización de fondo 4430 donde el árbol 4440 es visualizado). En esta etapa 4410, el usuario puede hacer que la región de área de interés 4440 se expanda y tome una porción más grande del área de visualización de fondo 4430 al arrastrar sus dedos 4445 y 4446 más lejos entre sí. El usuario también puede hacer que la región de interés 4440 se contraiga para tomar una porción más pequeña del área de visualización de fondo 4430, al arrastrar sus dedos 4445 y 4446 más cercanos conjuntamente.
La tercera etapa 4415 ilustra la Ul 4400 después de que el usuario ha comenzado a hacer la región de interés 4440 que se expanda para tomar una porción más grande del área de visualización de fondo 4430, al mover sus dedos 4445 y 4446 más lejos entre sí (es decir, el dedo 4445 se mueve hacia la esquina izquierda superior del área de visualización de fondo 4430 y el dedo 4446 se mueve hacia la esquina derecha inferior de la visualización 4430), como es indicado por las flechas 4450. En algunas modalidades, el movimiento del dedo también causa los mismos cambios a la visualización del dispositivo remoto como lo hace al dispositivo local. En este ejemplo para este caso, la región de interés del mismo video se expandirá y tomará una porción más grande del área de visualización de fondo 4430 del dispositivo remoto. En algunas modalidades, la expansión de la región de interés en la visualización local y/o visualización remota causa que uno o ambos de los dispositivos móviles o sus cámaras modifiquen una o más de sus otras operaciones, como es descrito adicionalmente enseguida.
La cuarta etapa 4420 visualiza la Ul 4400 después de que se ha completado la identificación de la región de interés. En este ejemplo, el usuario completa la identificación de la región de interés al detener el arrastre de sus dedos 4445 y 4446 y al remover los dedos 4445 y 4446 desde la pantalla de visuaiización del dispositivo una vez que la región de interés ha alcanzado la proporción deseada en el área de visuaiización de fondo 4430. Como un resultado de este proceso, la región de interés ha tomado una mayoría de la visuaiización de fondo 4430. Ahora se completa la identificación de la operación de región de interés.
Algunos de los ejemplos anteriores ilustran como un usuario puede identificar una región de interés en un video para mejorar la calidad de imagen dentro de la región de interés seleccionada en el video (por ejemplo, al incrementar la velocidad de transferencia de bit para codificar la porción de interés del video). En algunas modalidades, la identificación de una región de interés en el video causa cambios a las operaciones de procesamiento de imagen del dispositivo móvil tal como exposición, escalación, enfoque, etc. Por ejemplo, la identificación de una región de interés en el video puede causar que el administrador de videoconferencia 1604 se escale y componga las imágenes del video de manera diferente (por ejemplo, la identificación de una región de interés a la cual se aplica zoom).
En otras modalidades, la identificación de una región de interés en el video causa cambios a la operación de la cámara(s) del dispositivo móvil (por ejemplo, frecuencia de cuadro, zoom, exposición, escalación, enfoque, etc.). En todavía otras modalidades, la identificación de una región de interés en el video causa cambios a las operaciones de codificación del dispositivo móvil similar a la asignación de más bit a la región identificada, escalación, etc. Además, mientras que las operaciones de identificación de ROI de ejemplo descritas en lo anterior puede causar solamente una de las modificaciones descritas en lo anterior al dispositivo móvil o sus cámaras, en algunas otras modalidades la operación de identificación de ROI puede causar más de una de las modificaciones a la operación del dispositivo móvil o sus cámaras. Además, en algunas modalidades, el arreglo del área de visuaiización 1155 en las Figuras 42-44 es el mismo como el arreglo del área de visuaiización 1155 de la Figura 12, descrita en lo anterior.
B. Conmutación de la cámara Algunas modalidades proporcionan procedimientos para conmutar cámaras (es decir, cambiar la cámara mediante la cual se capturan las imágenes) durante una videoconferencia. Diferentes modalidades proporcionan diferentes procedimientos para realizar la operación de conmutación de la cámara. Algunas modalidades proporcionan procedimientos realizados por un dispositivo móvil de cámara doble para conmutar las cámaras del dispositivo (es decir, conmutación local) mientras que otras modalidades proporcionan procedimientos para el dispositivo móvil de cámara doble para instruir a otro dispositivo móvil de cámara doble en la videoconferencia para conmutar las cámaras del otro dispositivo (es decir, conmutación remota). Todavía otras modalidades proporcionan procedimientos para ambos. La Sección IV.B.1 describirá un proceso para realizar una operación de conmutación de cámara local sobre un dispositivo móvil de cámara doble. La Sección IV.B.2 describirá un proceso para realizar una operación de conmutación de cámara remota sobre el dispositivo móvil de cámara doble. 1. Conmutación de Cámara Local La Figura 45 ilustra un proceso 4500 que algunas modalidades realizan en un dispositivo móvil de cámara doble local para conmutar entre las dos cámaras del dispositivo durante una videoconferencia con un dispositivo móvil remoto que incluye por lo menos una cámara. En algunas modalidades, el proceso 4500 se realiza por el administrador de videoconferencia 1604 mostrado en la Figura 16. Para propósitos de explicación, la discusión se referirá a una cámara del dispositivo móvil de cámara doble local como cámara 1 y la otra cámara del dispositivo móvil de cámara doble local como cámara 2.
El proceso 4500 comienza al iniciar (en 4505) una videoconferencia entre el dispositivo móvil de cámara doble local y el dispositivo móvil remoto. Enseguida, el proceso 4500 envía (en 4510) una imagen de video de la cámara actualmente seleccionada (por ejemplo, la cámara 1 ) del dispositivo móvil de cámara doble local al dispositivo móvil remoto para la visualización sobre el dispositivo móvil remoto. En 4510, el proceso también genera y visualiza una visualización compuesta en base a esta imagen de video y la imagen de video que se recupera del dispositivo móvil remoto.
El proceso 4500 luego determina (en 4515) si se recibe una petición para finalizar la videoconferencia. Como es descrito en lo anterior, una videoconferencia puede finalizar en algunas modalidades en la petición de un usuario del dispositivo móvil de cámara doble local (por ejemplo, a través de una interfaz de usuario del dispositivo móvil de cámara doble local) o un usuario del dispositivo móvil remoto (por ejemplo, a través de una interfaz de usuario del dispositivo móvil remoto). Cuando el proceso 4500 recibe una petición para finalizar la videoconferencia, termina el proceso 4500.
Cuando el proceso 4500 no recibe una petición para finalizar la videoconferencia, el proceso 4500 luego determina (en 4520) si el usuario del dispositivo móvil de cámara doble local ha dirigido el dispositivo para conmutar las cámaras para la videoconferencia. El proceso 4500 retorna la operación 4510 cuando el proceso 4500 determina (en 4520) que no se ha dirigido para conmutar las cámaras. Sin embargo, cuando el proceso 4500 determina (en 4520) que ha sido asi dirigido, el proceso 4500 transiciona a 4525.
En 4525, el proceso 4500 envía una notificación al dispositivo móvil remoto para indicar que el dispositivo móvil de cámara doble local está conmutando las cámaras. En algunas modalidades, el proceso 4500 envía la notificación a través del canal de control de videoconferencia que es multiplexado con los canales de audio y video mediante el Administrador de VTP 3125 como es descrito en lo anterior.
Después de enviar su notificación, el proceso 4500 realiza (en 4530) una operación de conmutación de cámara. En algunas modalidades, la realización (en 4530) de la operación de conmutación de cámara incluye instruir a la CIPU para detener la captura de imágenes de video con la cámara 1 y a iniciar la captura de imágenes de video con la cámara 2. Estas instrucciones pueden simplemente dirigir el CIPU para conmutar la captura de imágenes desde el arreglo de pixeles asociado con la cámara 2 y para iniciar el procesamiento de estas imágenes. Alternativamente, en algunas modalidades, las instrucciones a la CIPU son acompañadas por un conjunto de parámetros de inicialización, que dirigen la CIPU (1 ) para operar la cámara 2 en base a un conjunto de ajustes particulares, (2) para capturar el video generado por la cámara 2 en una frecuencia de cuadro particular, y/o (3) para procesar imágenes de video de la cámara 2 en base a un conjunto de ajustes particulares (por ejemplo, resolución, etc.).
En algunas modalidades, la instrucción de conmutación de cámara (en 4530) también incluye instrucciones para conmutar la cámara no utilizada al cuarto modo de potencia de operación como es descrito en lo anterior. En este ejemplo, las instrucciones de conmutación de cámara incluyen instrucciones para que la cámara 2 conmute a su cuarto modo de potencia de operación. Además, las instrucciones de conmutación de cámara también incluyen instrucciones para la cámara 1 para conmutar de su cuarto modo de potencia de operación a otro modo de potencia de operación, tal como el primer modo de operación para conservar la potencia o al tercer modo de potencia de operación de modo que puede conmutar rápidamente al cuarto modo de potencia de operación e iniciar la captura de imágenes cuando son solicitadas de esta manera. La operación de conmutación de la cámara 4530 también involucra componer las imágenes capturadas por la cámara 2 del dispositivo móvil de cámara doble local (en lugar de las imágenes capturadas por la cámara 1 ) con imágenes recibidas desde el dispositivo móvil remoto para la visualización sobre el dispositivo móvil de cámara doble local.
Después de dirigir la conmutación de la cámara 4530, el proceso 4500 realiza (en 4535) una animación de conmutación de cámara sobre el dispositivo móvil de cámara doble local para visualizar una transición entre la visualización de imágenes de la cámara 1 y la visualización de imágenes de la cámara 2. Después de la animación de conmutación de cámara sobre el dispositivo móvil de cámara doble local, el proceso 4500 regresa nuevamente a través de las operaciones 4510-4520 hasta que se recibe una petición de videoconferencia final o una nueva petición de conmutación de cámara.
La Figura 46 ilustra un ejemplo de como algunas modalidades permiten que sea solicitada una operación de conmutación la cámara a través de una Ul 1105 de un dispositivo de cámara doble y como estas modalidades animan la operación de conmutación de cámara. Esta figura ilustra la operación de conmutación de cámara en términos de ocho diferentes etapas de operación 4610, 4615, 4620, 4625, 4630, 4635, 4640 y 4645 de la Ul 1105 del dispositivo. Las primeras cuatro etapas 4610, 4615, 4620 y 4625 de la Ul 1 105 ilustran un ejemplo para recibir una petición del usuario para conmutar las cámaras. El usuario del dispositivo tiene otros mecanismos para hacer tal petición en algunas modalidades de la invención.
La primera etapa 4610 es la misma como la quinta etapa 1130 de la Ul 1105 de la Figura 11 , que muestra la Ul 1105 después de se instala una videoconferencia. En esta etapa, la Ul 1105 visualiza una visualización PIP que incluye dos visualizaciones de video: una visualización de fondo más grande desde la cámara remota y una visualización de inserción de primer plano más pequeña desde la cámara local. En este ejemplo, el área de visualización principal de fondo 1170 presenta un video de una dama que en este ejemplo se asume que es una dama cuyo video está siendo capturado por el dispositivo remoto, mientras que el área de visualización de inserción de primer plano 1160 presenta un video de un hombre, que en este ejemplo se supone que es un hombre cuyo video está siendo capturado por la cámara frontal del dispositivo local.
La segunda etapa 4615 luego muestra la iniciación de la operación de conmutación de cámara a través de la selección del área de visualización de PIP 1180 de la Ul 1105. Como es mostrado, se hace una selección al colocar el dedo del usuario 4670 sobre la visualización PIP 1180. La tercera etapa 4620 muestra la Ul 1105 que incluye un artículo de Ul seleccionable 4675 (por ejemplo, botón de conmutación de cámara 4675) para solicitar una conmutación entre las cámaras del dispositivo local 4600 durante la videoconferencia. La cuarta etapa 4625 ilustra la Ul 1105 después de que el usuario del dispositivo local 4600 selecciona (por ejemplo, a través de un solo toque suave con el dedo) el artículo de Ul seleccionable 4675, y después esta selección es indicada a través del resaltamiento del artículo de Ul seleccionable 4675. Al seleccionar este artículo de Ul seleccionable 4675, el usuario está dirigiendo el dispositivo 4600 para conmutar de la cámara frontal del dispositivo 4600 a la cámara trasera del dispositivo 4600 durante la videoconferencia. En otros ejemplos donde la cámara trasera del dispositivo 4600 está capturando video, la selección del usuario del artículo de Ul seleccionable 4675 dirige el dispositivo 4600 para conmutar de la cámara trasera del dispositivo 4600 a la cámara frontal del dispositivo 4600. Después de la cuarta etapa, el administrador de videoconferencia envía instrucciones a la CIPU y el dispositivo remoto para iniciar la operación de conmutación de cámara.
Las últimas cuatro etapas 4630, 4635, 4640 y 4645 de la Ul 1105 ilustran un ejemplo de una animación de conmutación de cámara en el dispositivo local. Esta animación se propone para proporcionar una impresión de que el video capturado de las cámaras frontal y trasera del dispositivo local están siendo concurrentemente visualizados en dos lados opuestos de un cristal de visión que puede tener solamente uno de sus lados visualizados por el usuario en cualquier tiempo dado. Cuando se solicita una conmutación de cámara en la parte media de una videoconferencia, este cristal de visión se hace para aparecer rotando alrededor del eje vertical tal que la presentación del video de una cámara sobre un lado del cristal de visión que estuvo previamente mostrando el video de una cámara al usuario rota lejos del usuario hasta que se remplaza por el otro lado del cristal de visión, que muestra el video de la otra cámara. Esta animación y aparición de rotación de cristal de visión percibida se logra al (1 ) contraer gradualmente y aplicar operaciones de corrección de perspectiva sobre la imagen de video desde una cámara en el área de visualización de esa cámara, seguido por (2) una expansión gradual y reducción en la operación de corrección de perspectiva a la imagen de video desde la otra cámara en el área de visualización.
Por consiguiente, la quinta etapa 4630 ilustra el inicio de la "rotación del cristal de visión" alrededor del eje vertical 4682. Para dar una apariencia de la rotación del cristal de visión, la Ul 1105 ha reducido el tamaño de la imagen de video de la cámara frontal en el área de visualización de video 1160, y ha aplicado operaciones de perspectiva para hacerla parecer que el lado derecho de la imagen de video está más lejos del usuario que el lado izquierdo de la imagen de video.
La sexta etapa 4635 ilustra que el cristal de visión ha rotado por 90 grados tal que el usuario solamente puede ver el borde de este cristal, como es representado por la línea delgada 4686 visualizada en la parte media del área de visualización 1160. La séptima etapa 4640 ilustra que el cristal de visión ha continuado girando tal que el lado trasero del cristal de visión 4688 ahora está gradualmente apareciendo al usuario con el fin de mostrar el video capturado con la cámara trasera del usuario. Nuevamente, esta representación de la animación de rotación se logra en algunas modalidades al reducir el tamaño de la imagen de video de la cámara trasera en el área de visualización de video 4688, y al aplicar operaciones de perspectiva para hacer aparecer que el lado izquierdo de la imagen de video está más alejada del usuario que el lado derecho de la imagen de video.
La octava etapa 4645 ¡lustra la terminación de la animación que muestra la operación de conmutación de cámara. Específicamente, esta visualiza en el área de visualización 1160 la imagen de video de un carro que está siendo capturado por la cámara trasera del dispositivo 4600.
El ejemplo descrito en lo anterior por referencia a la Figura 46 invoca una operación de conmutación de cámara a través de una interfaz de usuario de conmutación de cámara. Otras modalidades invocan una operación de conmutación de cámara de manera diferente. Por ejemplo, algunas modalidades invocan la operación de conmutación de cámara al tener un artículo de Ul seleccionable de conmutación de cámara permanentemente visualizado sobre un Ul durante una videoconferencia tal como la Ul 1105 de la Figura 47. En la Figura 47, se muestra un botón de conmutación de cámara 1289 en un área de visualización 1155 junto con un botón de silencio 1285 y un botón de fin de conferencia 1287. El arreglo del área de visualización 1155 es el mismo arreglo del área de visualización 1155, descrito en lo anterior por referencia a la Figura 12.
La Figura 47 ilustra la operación de conmutación de cámara de una Ul 1105 en términos de seis etapas: 4610, 4790, 4630, 4635, 4640 y 4645. La primera etapa 4610 de la Figura 47 es similar a la primera etapa 4610 de la Figura 46, excepto que el arreglo del área de visualización 1155 muestra un botón de silencio 1285, un botón de fin de conferencia 1287, y un botón de conmutación de cámara 1289 en lugar de un solo botón de fin de conferencia. La segunda etapa 4790 ilustra la Ul 1105 después de que el usuario del dispositivo local 4600 selecciona (por ejemplo, a través de un solo toque suave dactilar utilizando un dedo 4670) el artículo de Ul seleccionable de conmutación de cámara 1289. En este ejemplo, al seleccionar este artículo de Ul seleccionable 1289, el usuario dirige el dispositivo 4600 para conmutar de la cámara frontal del dispositivo 4600 a la cámara trasera del dispositivo 4600 durante la videoconferencia. Las últimas cuatro etapas de la Figura 47 son similares a los últimas cuatro etapas de la Figura 46, excepto que el arreglo del área de visualización 1155 es el mismo como el arreglo descrito en lo anterior en la primera etapa 4610 y por lo tanto no será descrito adicionalmente con el fin de no obstaculizar la descripción de la invención con detalle innecesario.
En algunas modalidades, cuando el dispositivo móvil remoto recibe imágenes desde una cámara diferente del dispositivo móvil de cámara doble local (es decir, el dispositivo móvil de cámara doble local conmuto las cámaras), el dispositivo móvil remoto también realiza una animación de conmutación de cámara para visualizar una transición entre la visualización de imagen desde una cámara del dispositivo móvil de cámara doble local y la exhibición de imágenes desde la otra cámara del dispositivo móvil de cámara doble local. La Figura 48 ilustra un ejemplo de una de tal animación de conmutación de cámara en términos de cinco etapas de operación 4810, 4815, 4820, 4825 y 4830 de una Ul 4805. Esta figura muestra una animación de conmutación de cámara de ejemplo sobre el dispositivo móvil remoto 4800. Las etapas de operación son las mismas como la animación de ejemplo de la Figura 46 excepto que la animación se realiza sobre imágenes visualizadas en el área de visualización 4835, que es donde las imágenes del dispositivo móvil de cámara doble local se visualizan sobre el dispositivo móvil remoto 4800. Como tal, la imagen del hombre visualizada en el área de visualización 4835 es animada para aparecer rotando 180 grados en un eje vertical 4855 localizada en la parte media del área de visualización 4850 para mostrar la transición entre la visualización de la imagen del hombre en el área de visualización 4835 y la visualización de la imagen de un carro 4870. La implementación de la animación de conmutación de cámara de algunas modalidades es la misma como la implementación de la animación descrita en lo anterior.
El ejemplo anterior ilustra una animación de conmutación de cámara sobre un dispositivo remoto con un arreglo de interfaz de usuario particular. Otras modalidades podrían realizar esta animación de conmutación de cámara sobre un dispositivo remoto con un arreglo de interfaz de usuario diferente. Por ejemplo, la Figura 49 ilustra un ejemplo de tal clase de un dispositivo remoto 4800 que tiene un arreglo de interfaz de usuario diferente 4805. En particular, la Ul 4805 de la Figura 49 tiene un botón de silencio 1285, un botón de fin de conferencia 1287, y un botón de conmutación de cámara 1289 incluido en un área de visualización 1155, que es permanentemente visualizada sobre un lado de la visualización compuesta 4850 durante una videoconferencia. El arreglo de los tres botones es descrito en lo anterior con referencia a la Figura 48. Diferente al arreglo de interfaz de usuario, las cinco etapas 4810, 4815, 4820, 4825 y 4830 de la Figura 49 son idénticas a las cinco etapas 4810, 4815, 4820, 4825 y 4830 de la Figura 48. 2. Conmutación de Cámara Remota La Figura 50 ilustra un proceso 5000 para conmutar entre dos cámaras de un dispositivo de cámara doble remoto durante una videoconferencia. Este proceso 5000 se realiza mediante un administrador de videoconferencia de un dispositivo que incluye por lo menos una cámara. En la siguiente discusión, el dispositivo a través del cual un usuario dirige una conmutación de cámara remota es referido como el dispositivo local mientras que el dispositivo que conmuta entre sus dos cámaras es referido como el dispositivo remoto. También, en la discusión enseguida, el dispositivo remoto se dice que conmuta entre su cámara frontal (o cámara 1 ) y cámara trasera (o cámara 2).
El proceso 5000 de la Figura 50 será descrito por referencia a las Figuras 51, 52, 53 y 54. La Figura 51 ilustra una Ul 5105 de un dispositivo local 5100 a través del cual un usuario solicita una conmutación de dispositivo remoto entre sus dos cámaras durante una videoconferencia. Esta figura ilustra ocho diferentes etapas de operación 5110, 5115, 5120, 5125, 5130, 5135, 5140 y 5145 de esta Ul 5105. La Figura 54 ilustra una Ul 5405 de un dispositivo remoto 5400 que recibe la petición de conmutación de cámara del dispositivo local 5100. La Figura 54 ilustra seis diferentes etapas de operación 5410, 5415, 5420, 5425, 5430 y 5435 de la Ul 5405.
Como se muestra en la Figura 50, el proceso 5000 comienza al iniciar (en 5005) una videoconferencia entre los dispositivos local y remoto. El proceso 5000 luego (en 5010) recibe las imágenes de una cámara de cada dispositivo (por ejemplo, desde la cámara frontal de cada dispositivo) y genera una vista compuesta para la videoconferencia en base a estas imágenes. En 5010, el proceso 5000 también envía una imagen de video desde el dispositivo local al dispositivo remoto.
Enseguida, el proceso 5000 determina (en 5015) si se ha recibido una petición para finalizar la videoconferencia. Como es descrito en lo anterior, una videoconferencia puede finalizar en algunas modalidades, en la petición de un usuario del dispositivo local o remoto.
Cuando el proceso 5000 recibe una petición para finalizar la videoconferencia, termina el proceso 5000.
Cuando el proceso 5000 no recibe una petición para finalizar la videoconferencia, el proceso 5000 luego determina (en 5020) si el usuario del dispositivo en el cual está ejecutando el proceso 5000 (es decir, el usuario del dispositivo local) ha dirigido el dispositivo para solicitar que la conmutación del dispositivo remoto entre sus cámaras para la videoconferencia. El proceso 5000 retorna a la operación 5010, cuando el proceso 5000 determina (en 5020) que no se ha dirigido para iniciar una conmutación de cámara remota. Cuando el proceso 5000 determina (en 5020) que ha sido así dirigido, el proceso 5000 transiciona a 5025, que será descrito adicionalmente enseguida.
Las primeras cuatro etapas 5110, 5115, 5120, 5125 y 5105 de la Ul de la Figura 51 ilustran un ejemplo de recibir una petición del usuario para conmutar las cámaras del dispositivo remoto. La primera y segunda etapa 5110 y 1551 son las mismas como la primera y segunda etapa 4610 y 4615 de la Figura 46. La tercera etapa 5 20 es la misma como la tercera etapa 4620, excepto la tercera etapa 5120 incluye un articulo de Ul seleccionable 5180 para una petición al dispositivo remoto 5100 para conmutar las cámaras, además del artículo de Ul seleccionable 5175 para la petición del dispositivo local 5100 para conmutar las cámaras. La cuarta etapa 5125 ilustra el usuario del dispositivo local 5100 seleccionando el artículo de Ul 5180 (por ejemplo, a través de un solo toque suave con el dedo 5170 del artículo de Ul seleccionable 5180) para solicitar al dispositivo remoto conmutar las cámaras. La selección es indicada por el resaltamiento del artículo de Ul seleccionable 5180. La Figura 51 muestra un ejemplo para realizar esta operación, pero otras modalidades se pueden realizar de manera diferente la operación para solicitar al dispositivo remoto para conmutar las cámaras.
El ejemplo descrito en lo anterior por referencia a la Figura 51 invoca una operación de conmutación de cámara remota a través de una interfaz de usuario de conmutación de cámara remota. Otras modalidades invocan una operación de conmutación de cámara remota de manera diferente. Por ejemplo, algunas modalidades invocan la operación de conmutación de cámara al tener un artículo de Ul seleccionable de conmutación de cámara permanentemente visualizados sobre una Ul durante una videoconferencia tal como la Ul 5105 de la Figura 52. En la Figura 52, se muestra un botón de conmutación de cámara remota 5288 en un área de visualización 1155 junto con un botón de silencio 5282, un botón de fin de conferencia 5284, y un botón de conmutación de cámara local 5286.
La Figura 52 ¡lustra la operación de conmutación de cámara remota de la Ul 5105 del dispositivo 5100 en términos de seis diferentes etapas 5110, 5290, 5130, 5135, 5140 y 5145. La primera etapa 5110 de la Figura 52 es similar a la primera etapa 51 10 de la Figura 51 , excepto que el arreglo del área de visualización 1155 muestra un botón de silencio 5282, un botón de conmutación de cámara local 5286, un botón de conmutación de cámara remota 5288, y un botón de fin de conferencia 5284. La segunda etapa 5290 ilustra la Ul 1105 después de que el usuario del dispositivo local 5100 selecciona (por ejemplo, a través de un solo toque suave con el dedo 5170) el artículo de Ul seleccionare de conmutación de cámara remota 5288. Las últimas cuatro etapas de la Figura 52 son similares a las últimas cuatro etapas de la Figura 51 , excepto que el arreglo del área de visualización 1155 es el mismo como el arreglo descrito en lo anterior en la primera etapa 5110 y por lo tanto no será descrito adicionalmente con el fin de no obstaculizar la descripción de la invención con detalle innecesario.
Algunas modalidades proporcionan un arreglo similar como el ilustrado en la Figura 52, excepto que el artículo de Ul seleccíonable de conmutación de cámara remota es visualizado en la visualización PIP 5165 en lugar del área de visualización 1 155. La Figura 53 ilustra tal arreglo 5105. En particular, la figura muestra la visualización PIP con el artículo de Ul seleccíonable de conmutación de cámara remota 5180 y el área de visualización 1155 con solamente un botón de silencio 5282, un botón de conmutación de cámara local 5286, y un botón de fin de conferencia 5284.
Como es mencionado en lo anterior, el proceso 5000 transiciona 5025 cuando el usuario solicita una conmutación de cámara remota. En 5025, el proceso 5000 envía la petición para conmutar las cámaras al dispositivo remoto. En algunas modalidades, esta petición se envía a través del canal de control de videoconferencia que se multiplexa con los canales de audio y de video mediante el Administrador de VTP 3125 como es descrito en lo anterior.
Después de que se recibe la petición para conmutar las cámaras, el proceso 5000 determina (en 5030) si el dispositivo remoto ha respondido a la petición para conmutar las cámaras. En algunas modalidades, el dispositivo remoto automáticamente envía una respuesta de aceptación (es decir, envía un reconocimiento) al dispositivo local a través del canal de control de videoconferencia. En otras modalidades, sin embargo, el usuario del dispositivo remoto tiene que aceptar esta petición a través de la interfaz de usuario del dispositivo remoto.
Las primeras dos etapas 5410 y 5415 de la Ul 5405 de la Figura 54 ilustran un ejemplo de que el usuario remoto que acepta una petición para conmutar . las cámaras del dispositivo remoto 5400. Las primera etapa 5410 muestra (1 ) un área de visualización 5440 para visualizar el texto que notifica al usuario remoto de la petición, (2) un artículo de Ul seleccionare 5465 (por ejemplo, botón de asignación 5465) para aceptar la petición para conmutar las cámaras del dispositivo remoto, y (3) un artículo de Ul seleccionare 5470 (por ejemplo, botón de rechazo 5470) para rechazar la petición para conmutar las cámaras del dispositivo remoto. La segunda etapa 5415 luego ilustra la Ul 5405 después de que el usuario del dispositivo remoto ha seleccionado (por ejemplo, a través de un solo toque suave con el dedo 5480) el artículo de Ul 5465 para aceptar la petición para conmutar las cámaras, como es indicado por el resaltamiento del artículo Ul seleccionable 5465.
Cuando el proceso 5000 determina (en 5030) que todavía no se ha recibido una respuesta desde el dispositivo remoto, el proceso 5000 determina (en 5035) si ha recibido una petición para finalizar la videoconferencia. Si es así, el proceso 5000 termina. De otra manera, el proceso recibe (en 5040) las imágenes de las cámaras actualmente utilizadas de los dispositivos remoto y local, genera una vista compuesta para la videoconferencia en base a estas imágenes, transmite la imagen de video del dispositivo local al dispositivo remoto, y luego transiciona nuevamente a 5030.
Cuando el proceso 5000 determina (en 5030) que ha recibido una respuesta desde el dispositivo remoto, éste determina (en 5045) si el dispositivo remoto aceptó la petición para conmutar las cámaras. Si no es así, el proceso 5000 retorna la operación 5010 para continuar recibiendo las imágenes desde la cámara del otro dispositivo. De otra manera, el proceso recibe (en 5050) las imágenes desde la otra cámara del dispositivo remoto y luego realiza (en 5055) una animación de conmutación de cámara sobre el dispositivo local para visualizar una transición entre el video de la cámara remota previamente utilizada y el video de la cámara remota actualmente utilizada (es decir, las imágenes recibidas en la operación 5050). Después de 5055, el proceso transiciona a 5010, que fue descrito en lo anterior.
Las últimas cuatro etapas de operación 5130, 5135, 5140 y 5145 que son ilustradas para la Ul 5105 en la Figura 51 ilustran un ejemplo de tal animación de conmutación de cámara remota sobre el dispositivo local 5100. La animación de ejemplo es similar a la animación de ejemplo ilustrada en las etapas 4815, 4820, 4825 y 4830 de la Figura 48, excepto que la Figura 51 muestra en el área de visualización 5150 una animación que reemplaza el video de una mujer que es capturada por la cámara frontal del dispositivo remoto con el video de un árbol que es capturado por la cámara trasera del dispositivo remoto. Las últimas cuatro etapas de la Figura 52 y la Figura 53 ilustran la misma animación como aquella en la Figura 51, excepto que el área de visualización 1155 de las Figuras 52 y 53 contiene diferentes artículos de Ul seleccionables que el área de visualización 1155 en la Figura 51.
En algunas modalidades, cuando el dispositivo remoto conmuta las cámaras, la Ul del dispositivo remoto también realiza una animación de conmutación de cámara para visualizar una transición entre las dos cámaras. Las últimas cuatro etapas de operación 5420, 5425, 5430 y 5435 que son ilustradas para la Ul 5405 en la Figura 54 ilustra un ejemplo de una animación de conmutación de cámara que es visualizada sobre el dispositivo remoto 5400 cuando el dispositivo remoto 5400 conmuta entre las cámaras. Esta animación es similar a la animación ilustrada en las etapas 4630, 4635, 4640 y 4645 de la Figura 46, excepto que la animación en el área de visualización 5445 reemplaza el video de una mujer que es capturado por la cámara frontal del dispositivo remoto 5400 con el video de un árbol que es capturado por la cámara trasera del dispositivo remoto 5400.
Como es mencionado en lo anterior, las Figuras 46, 47, 48, 49, 51, 52, 53 y 54 muestran varios ejemplos de animaciones de conmutación de cámara realizadas sobre una interfaz de usuario. En algunas modalidades, la animación de conmutación de cámara causa cambios a las operaciones de procesamiento de imagen desde dispositivo móvil de cámara doble respectivo tal como escalación, composición y distorsión de perspectiva, que se pueden realizar por el administrador de videoconferencia 1604 y el administrador de procesamiento de imagen 1608, por ejemplo.
C. Ajuste de Exposición Durante una videoconferencia entre un dispositivo móvil de cámara doble y otro dispositivo móvil, diferentes modalidades proporcionan diferentes técnicas para ajustar la exposición de las imágenes capturadas por las cámaras de cualquier dispositivo móvil. Algunas modalidades proporcionan técnicas para un usuario del dispositivo móvil de cámara doble para ajustar la exposición de imágenes capturadas por una cámara desde otro dispositivo mientras que otras modalidades proporcionan técnicas para el usuario para ajustar la exposición de imágenes capturadas por una cámara del dispositivo móvil de cámara doble. Varias técnicas de ejemplo serán descritas en detalle enseguida.
La Figura 55 ilustra un proceso 5500 para realizar una operación de ajuste de exposición remota sobre un dispositivo móvil de cámara doble de algunas modalidades durante una videoconferencia. En la siguiente discusión, el dispositivo a través del cual un usuario dirige un dispositivo remoto para ajustar su nivel de exposición es referido como el dispositivo local. En algunas modalidades, el proceso 5500 se realiza por el administrador de videoconferencia del dispositivo local. Además, el proceso 5500 será descrito por referencia a las Figuras 56, 57 y 58, que ilustran varias maneras para el usuario del dispositivo local para solicitar el dispositivo remoto para realizar una operación de ajuste de exposición.
Como es mostrado en la Figura 55, el proceso 5500 comienza al iniciar (en 5505) una videoconferencia entre los dispositivos local y remoto. El proceso 5500 luego recibe (en 5510) un video desde el dispositivo remoto para la visualización sobre la pantalla de visualización del dispositivo local. Enseguida, el proceso 5500 determina (en 5515) si se ha recibido una petición para finalizar la videoconferencia recibido. Como es descrito en lo anterior, algunas modalidades pueden recibir una petición para finalizar la videoconferencia desde un usuario del dispositivo local o remoto. Cuando el proceso 5500 recibe una petición para finalizar la videoconferencia, termina el proceso 5500.
Sin embargo, cuando el proceso 5500 no recibe una petición para finalizar la videoconferencia, el proceso 5500 luego determina (en 5520) si se ha recibido una petición para ajustar la exposición de la cámara del dispositivo remoto. Cuando el proceso 5500 determina que no se ha recibido una petición para ajustar la exposición de la cámara del dispositivo remoto, el proceso 5500 retorna nuevamente la operación 5510 para recibir el video adicional capturado desde el dispositivo remoto. Las Figuras 56, 57 y 58 ilustran tres ejemplos diferentes de proporcionar una manera para que un usuario haga tal petición. En las Figuras 56, 57 y 58, las primeras etapas 5610, 5710 y 5810 también muestran visualizaciones PIP 5625, 5750 y 5835 desde los dispositivos locales 5600, 5700 y 5800 que visualizan dos videos: uno capturado por una cámara del dispositivo local y el otro capturado por una cámara del dispositivo remoto. En las primeras etapas 5610, 5710 y 5810 el hombre en la visualización de fondo 5635, 5760 y 5845 está oscuro, indicando que el hombre no es apropiadamente expuesto.
La segunda etapa 5615 de la Figura 56 ilustra una manera para que el usuario del dispositivo local 5600 solicite al dispositivo remoto realizar un ajuste de exposición al seleccionar el video del dispositivo remoto (por ejemplo, a través de un solo toque suave sobre la visualización de fondo 5635). De esta manera, la Ul 5605 automáticamente asocia la selección del usuario de una región de interés definida por un cuadro 5645 con el deseo del usuario para dirigir el dispositivo remoto para realizar un ajuste de exposición sobre la región de interés y de esta manera dirige el administrador de videoconferencia del dispositivo local para hacer contacto con el dispositivo remoto para realizar una operación de ajuste de exposición. La región de interés definida se utiliza por el dispositivo remoto en el cálculo del ajuste de exposición.
Similar a la segunda etapa 5615 de la Figura 56, la segunda etapa 5715 de la Figura 57 muestra la selección del usuario local de video del dispositivo remoto excepto que esta selección dirige la Ul 5705 para visualizar un artículo de Ul seleccionable 5770 como es mostrado en la tercera etapa 5720. La cuarta etapa 5725 ilustra el usuario del dispositivo local que selecciona el artículo de Ul seleccionares 5770 para dirigir el dispositivo remoto para realizar una operación de ajuste de exposición como es descrito en lo anterior.
En la segunda etapa 5815 de la Figura 58 es similar a la segunda etapa 5715 de la Figura 57, pero en lugar de la selección del usuario de video del dispositivo remoto que dirige la Ul para visualizar un solo artículo de Ul seleccionable, la selección del usuario dirige la Ul 5805 para visualizar un menú artículos de Ul seleccionables 5855, 5860, 5865 y 5870, como es mostrado en la tercera etapa 5820. Los artículos de Ul seleccionables incluyen un artículo de autoenfoque 5855, como un artículo de Autoexposición 5860, un artículo de conmutación de cámara de 5865, y un artículo de Cancelación 5870. En algunas modalidades, el artículo de Ul seleccionable de conmutación de cámara 5865 se utiliza para solicitar una operación de conmutación de cámara local, mientras que en otras modalidades el artículo de Ul seleccionable de conmutación de cámara 5865 se utiliza para solicitar una operación de conmutación de cámara remota. La cuarta etapa 5825 ilustra el usuario que selecciona el artículo de Autoexposición 5860 para dirigir el dispositivo remoto para realizar una operación de ajuste de exposición como es descrita en lo anterior.
Cuando el proceso 5500 determina (en 5520) que el usuario local dirigió el dispositivo local para solicitar una operación de ajuste de exposición, el proceso 5500 envía (en 5525) un mando al dispositivo remoto a través del canal de control de videoconferencia para ajustar la exposición del video capturado por la cámara que está actualmente capturando y permitiendo video al dispositivo local. Después de la operación 5525, el proceso 5500 transiciona nuevamente la operación 5510, que es descrita en lo anterior.
En algunas modalidades, el usuario de un dispositivo remoto es requerido para proporcionar permiso antes de que el dispositivo remoto realice una operación de ajuste de exposición, mientras que en otras modalidades el dispositivo remoto realiza la operación de ajuste de exposición automáticamente al recibir la petición desde el dispositivo local. Por otra parte, en algunas modalidades, algunas de las funcionalidades de videoconferencia se implementan por el administrador de videoconferencia 1604. En algunas de estas modalidades, el administrador de videoconferencia 1604 realiza la operación de ajuste de exposición, al instruir la CIPU 1650 para ajustar el arreglo de exposición del sensor de la cámara del dispositivo remoto que es utilizada.
Las últimas etapas 5620, 5730 y 5830 de las Figuras 56, 57 y 58 muestran el video del dispositivo más claro, lo cual indica que el hombre está apropiadamente expuesto. Aunque las Figuras 56, 57 y 58 proporcionan ejemplos de la recepción de una petición de ajuste de exposición para corregir la exposición de un dispositivo remoto, algunas modalidades proporcionan maneras para el usuario del dispositivo local para solicitar que el dispositivo local ajuste la exposición de una cámara del dispositivo local. Tal petición se puede hacer similar a las maneras ilustradas en las Figuras 56, 57 y 58 para solicitar un dispositivo remoto para ajustar la exposición de su cámara.
Las Figuras 56-58 descritas en lo anterior muestran varias interfaces de usuario para realizar las operaciones de ajuste de exposición. En algunas modalidades, la operación de ajuste de exposición puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal como la invocación del proceso de ajuste de exposición 5900, que es descrito en detalle adicional enseguida. La operación de ajuste de exposición también puede causar cambios a la operación de cámara del dispositivo móvil de cámara doble que está capturando el video similar al cambio del ajuste de nivel de exposición de la cámara, por ejemplo. 1. Metodología de Ajuste de Exposición La Figura 59 conceptualmente ilustra un proceso de ajuste de exposición 5900 realizado por un administrador de procesamiento de imagen de algunas modalidades tal como aquella ilustrada en la Figura 16. En algunas modalidades, el proceso 5900 es parte de las operaciones de ajuste de exposición descritas en lo anterior por referencia a las Figuras 55, 56, 57 y 58. En algunas de tales modalidades, el administrador de procesamiento de imagen 1608 realiza el proceso 5900 y ajusta un arreglo de exposición de cámara al enviar instrucciones al administrador de videoconferencia 1604, que instruye a la CIPU 1650 para ajustar el sensor de cámara 405a o 405b, como es mencionado en lo anterior.
En algunas modalidades, el proceso 5900 se realiza por la capa de procesamiento de imagen 930 mostrado en la Figura 9, mientras que en otras modalidades, el proceso 5900 se realiza por la máquina estadística 465 mostrada en la Figura 4. Algunas modalidades realizan el proceso 5900 en imágenes capturadas por las cámaras de dispositivo (local o remoto) en una videoconferencia, mientras que otras modalidades realizan el proceso 5900, como parte del proceso 2100 (por ejemplo, operación 2110) ilustrada en la Figura 21. Algunas modalidades realizan una operación de ajuste de exposición para exponer las imágenes capturadas por las cámaras del dispositivo móvil de cámara doble que no sean demasiado claras y no demasiado oscuras. En otras palabras, el proceso 5900 se realiza para capturar imágenes de una manera que maximiza la cantidad de detalles como sea posible.
El proceso 5900 comienza a recibir (en 5905) una imagen capturada por una cámara del dispositivo móvil de cámara doble. En algunas modalidades, cuando la imagen recibida que es una primera imagen capturada por una cámara de un dispositivo en una videoconferencia, el proceso 5900 no se realiza sobre la primera imagen (es decir, no hubo imagen antes de la primera imagen de la cual determina una valor de exposición). El proceso 5900 luego lee (en 5910) los valores de pixel de una región definida de imagen recibida. Diferentes modalidades definen regiones de manera diferente. Algunas de tales modalidades, definen regiones diferentemente agudas, tal como un cuadrado, un rectángulo, un triángulo, un círculo, etc, mientras que otras de tales modalidades definen las regiones en diferentes ubicaciones en la imagen, tal como el centro, centro superior, centro inferior, etc.
Enseguida, el proceso 590 calcula (en 5915) un promedio de los valores de pixel en la región definida de la imagen. El proceso 5900 determina (en 5920) si el promedio calculado de los valores de pixel es igual a un valor definido particular. Diferentes modalidades definen diferentes valores particulares. Por ejemplo, algunas modalidades definen el valor particular como el valor de pixel medio del intervalo dinámico de la imagen. En algunas modalidades, un intervalo de valores se define en lugar de un solo valor. En tales modalidades, el proceso 5900 determina (en 5920) si el promedio calculado de los valores de pixel está dentro del rango definido de valores.
Cuando el promedio calculado de los valores de pixel no es igual al valor definido particular, el proceso 5900 ajusta (en 5925) el valor de exposición en base al promedio calculado. Cuando el promedio calculado de los valores de pixel es igual al valor definido particular, termina el proceso 5900. En algunas modalidades, un valor de exposición representa una cantidad de tiempo que un sensor de cámara está expuesta a la luz. En algunas modalidades, el valor de exposición ajustado se utiliza para exponer la siguiente imagen que es capturada por la cámara a aquellas capturada de la imagen recibida. Después de que se ajusta el valor de exposición en base al promedio calculado, termina el proceso 5900.
En algunas modalidades, el proceso 5900 se realiza repetidamente hasta que el promedio calculado de valores de pixel es igual al valor definido particular (o se encuentra dentro del intervalo definido de valores). Algunas modalidades constantemente realizan el proceso 5900 durante una videoconferencia mientras que otras modalidades realizan el proceso de 5900 en intervalos definidos (por ejemplo, 5 segundos, 10 segundos, 30 segundos, etc) durante la videoconferencia. Además, durante la videoconferencia, el proceso 5900 de algunas modalidades redefine dinámicamente el valor de pixel particular antes de realizar el proceso 5900.
La Figura 60 conceptualmente ilustra ejemplos de operaciones de ajuste de exposición de algunas modalidades. Cada uno de los ejemplos 6000, 6010 y 6015 muestra una imagen 6020 capturada por una cámara del dispositivo móvil de cámara doble en el lado izquierdo. Específicamente, la imagen 6020 muestra una persona oscura enfrente de un sol. La persona oscura indica que el nivel de exposición de la imagen no es bastante alto para exponer la cara o cuerpo de la persona. El lado derecho de cada ejemplo 6000, 6010 y 6015 muestra una imagen 6025, 6030 y 6035, respectivamente, capturada después de la imagen 6020. En algunas modalidades, la imagen 6020 y las imágenes en el lado derecho son imágenes de un video capturado por la cámara del dispositivo móvil de cámara doble. En otras modalidades, la imagen 6020 y la imagen en el lado derecho son imágenes fijas capturadas por la cámara del dispositivo móvil de cámara doble en diferentes casos en el tiempo.
El primer ejemplo 6000 ilustra una operación sin ajuste de exposición. Como tal, la imagen 6025 aparece la misma como la imagen 6020. Puesto que no se realizó ajuste de exposición, la persona en la imagen 6025 permanece oscura similar a la persona en la imagen 6020.
En el segundo ejemplo 6010, se realiza una operación de ajuste de exposición sobre la imagen 6020. En algunas modalidades, se realiza la operación de ajuste de exposición mediante el proceso 5900 utilizando la región definida 6040. En base a la operación de ajuste de exposición, el nivel de exposición de la cámara se ajusta y la cámara captura la imagen 6030 utilizando el nivel de exposición ajustado. Como es mostrado en la Figura 60, la persona en la imagen 6030 no es tan oscura como la imagen 6025. Sin embargo, la cara y el cuerpo de la persona en la imagen 6030 todavía no están claros.
El tercer ejemplo 6015 muestra una operación de ajuste de exposición realizada sobre la imagen 6020. Similar al segundo ejemplo 6010, la operación de ajuste de exposición del ejemplo 6015 de algunas modalidades se realiza mediante el proceso 5900 utilizando la región definida 6045. En base a la operación de ajuste de exposición, el nivel de exposición de cámara se ajusta y la cámara captura la imagen 6035 utilizando el nivel de exposición ajustado. Como se observa en la Figura 60, la persona en la imagen 6035 está perfectamente expuesta puesto que la cara y el cuerpo de la persona están visibles.
En algunas modalidades, la selección de la región definida se puede hacer por el usuario del dispositivo móvil de cámara doble. El dispositivo mismo también puede ajustar automáticamente su región definida para la operación de ajuste de exposición a través del circuito de realimentación para el ajuste de exposición mencionado en lo anterior en la CIPU 400. La máquina estadística 465 en la Figura 4 puede recolectar datos para determinar si el nivel de exposición es apropiado para las imágenes capturadas y ajustar los sensores de cámara (por ejemplo, a través de una conexión directa al módulo de sensor 415) por consiguiente.
D. Ajuste del Enfoque La Figura 61 ilustra un proceso 6100 para ajustar el enfoque del dispositivo móvil de cámara doble durante una videoconferencia. En la siguiente discusión, el dispositivo a través del cual un usuario dirige un dispositivo remoto para ajustar su enfoque de la cámara es definido como el dispositivo local. El proceso 6100 de la Figura 61 es en algunas modalidades realizado por el administrador de videoconferencia 1604 del dispositivo local. También, este proceso será descrito enseguida por referencia a las Figuras 62 y 63, que proporcionan dos maneras ejemplares para el usuario del dispositivo local para solicitar una operación de ajuste de enfoque que sea realizada por el dispositivo remoto.
Como se muestra en la Figura 61 , el proceso 6100 comienza al iniciar (en 6105) una videoconferencia entre los dispositivos local y remoto. El proceso 6100 luego recibe (en 61 10) un video desde el dispositivo remoto para la visualización sobre la pantalla de visualización del dispositivo local. Enseguida, en 6115, el proceso 6100 determina si se ha recibido una petición para finalizar la videoconferencia. Como es descrito en lo anterior, una videoconferencia puede finalizar en algunas modalidades, en la petición de un usuario del dispositivo local o remoto. Cuando el proceso 6100 recibe una petición para finalizar la videoconferencia, termina el proceso 6100.
De otra manera, el proceso determina (en 6120) si ha recibido una petición para ajustar el enfoque de la cámara remota del dispositivo remoto. Cuando el proceso 6100 determina que no ha recibido una petición para ajustar el enfoque de la cámara remota del dispositivo remoto, el proceso 6100 retorna a la operación 6110 para recibir video adicional del dispositivo remoto. Las Figuras 62, 63 y 64 ilustran tres maneras diferentes que diferentes modalidades proporcionan a un usuario para hacer tal petición. En las Figuras 62, 63 y 64, las primeras etapas 6210, 6310 y 6472 también permiten una visualización PIP 6225, 6335 y 6482 del dispositivo local 6200, 6300 y 6471 que visualiza dos videos, uno capturado por el dispositivo local, y el otro capturado por el dispositivo remoto. Las áreas de visualización 1155 y 1 155 en las Figuras 62 y 63 muestran un botón de fin de conferencia. Sin embargo, en la Figura 64, el arreglo del área de visualización 1155 es el mismo como el arreglo del área de visualización 1155 de la Figura 12, descrita en lo anterior. Por otra parte, el botón de conmutación cámara 6488 mostrado en el área de visualización 1155 puede ser seleccionado para invocar una operación de conmutación de cámara local en algunas modalidades o una operación de conmutación de cámara remota en otras modalidades. Como es mostrado en las primeras etapas 6210, 6310 y 6472, el video del dispositivo remoto que es visualizado en la visualización de fondo 6235, 6345 y 6480 está borroso.
La segunda etapa 6215 de la Figura 62 ilustra un procedimiento mediante el cual el usuario del dispositivo local solicita un ajuste de enfoque desde el dispositivo remoto al seleccionar simplemente el video del dispositivo remoto (por ejemplo, a través de un solo toque suave 6240 sobre el video del dispositivo remoto). Bajo este procedimiento, la Ul 6205 automáticamente asocia la selección del usuario de una región de interés definida por un cuadro 6245 con el deseo del usuario para dirigir el dispositivo remoto para realizar una operación (tal como enfoque) sobre la región de interés y por lo tanto dirige el administrador de videoconferencia 1604 del dispositivo local 6200 para contactar el dispositivo remoto para realizar una operación de ajuste (tal como una operación de ajuste de enfoque). La región definida de interés se utiliza por el dispositivo remoto en el cálculo del ajuste de enfoque.
La segunda etapa 6315 de la Figura 63 de manera similar muestra la selección del usuario local del video remoto (por ejemplo, a través del toque suave del usuario del video del dispositivo remoto). Sin embargo, distinto al ejemplo ilustrado en la Figura 62, esta selección en la Figura 63 dirige la Ul 6305 para visualizar un menú de artículos Ul seleccionares 6355, 6360, 6365 y 6370 (que se puede implementar como botones seleccionares), como se muestra en la tercera etapa 6320. Estos artículos de Ul seleccionares incluyen un artículo de Autoenfoque 6360, un artículo de Autoexposición 6365, un artículo de Conmutación de cámara 6370 y un artículo de Cancelación 6355. En algunas modalidades, el artículo de Ul seleccionare de Conmutación de Cámara 6370 se utiliza para solicitar una operación de conmutación de cámara local, mientras que en otras modalidades el artículo de Ul seleccionare de Conmutación de Cámara 6370 se utiliza para solicitar una operación de conmutación de cámara remota. La cuarta etapa 6325 luego ilustra al usuario local seleccionando el artículo de autoenfoque 6360.
La segunda etapa 6474 de la Figura 64 nuevamente de manera similar muestra la selección del usuario local del video remoto (por ejemplo, a través del toque suave del usuario del video del dispositivo remoto). Sin embargo, distinto al ejemplo ilustrado en la Figura 63, esta selección en la Figura 64 dirige la Ul 6478 para solicitar una operación de ajuste de enfoque (es decir, en la segunda etapa 6474). Después que se completa la operación de ajuste de enfoque, la Ul 6478 visualiza un menú de artículos Ul seleccionares 6484 y 6486 (es decir, en la tercera etapa 6476), que se puede implementar como botones seleccionares. Estos artículos de Ul seleccionares incluyen un artículo de Autoexposición 6486 y un artículo de Cancelación 6484.
Cuando el proceso determina (en 6120) que el usuario local dirigió el dispositivo local para solicitar una operación de ajuste de enfoque, el proceso 6100 envía (en 6140) un mando al dispositivo remoto a través del canal de control de videoconferencia para ajustar el enfoque de la cámara cuyo video del dispositivo remoto está actualmente capturando y transmitiendo. Después de 6140, el proceso transiciona nuevamente a 6110, que fue descrito en lo anterior.
En algunas modalidades, el usuario del dispositivo remoto tiene que proporcionar permiso antes que el dispositivo remoto realice esta operación, mientras que en otras modalidades el dispositivo remoto realiza esta operación automáticamente en la recepción de la petición para el dispositivo local. También, en algunas modalidades, la operación de ajuste de enfoque ajusta las instalaciones de enfoque de la cámara del dispositivo remoto que está siendo utilizado durante la videoconferencia. En algunas de tales modalidades, algunas de las funcionalidades de videoconferencia son implementadas por el módulo de videoconferencia 1602 como se discutido en lo anterior. En estas modalidades, el administrador de videoconferencia 1604 instruye a la CIPU 1650 para ajustar el sensor de la cámara del dispositivo remoto que es utilizada.
Las últimas etapas 6220, 6330 y 6476 de las Figuras 62, 63 y 64 muestran el video del dispositivo remoto apropiadamente enfocado. Aunque las Figuras 62, 63 y 64 proporcionan ejemplos de recibir una petición de ajuste de enfoque para corregir el enfoque de un dispositivo remoto, algunas modalidades permiten al usuario del dispositivo local solicitar que el dispositivo local ajuste el enfoque de una cámara del dispositivo local. Esta petición se puede hacer similar a los procedimientos mostrados en las Figuras 62, 63 y 64 para solicitar a un dispositivo remoto que ajuste su enfoque de la cámara.
Las Figuras 62, 63 y 64 ilustran tres ¡nterfaces de usuario de ejemplo que permiten a un usuario realizar una operación de ajuste de enfoque. En algunas modalidades, la operación de ajuste de enfoque causa cambios a la operación de la cámara del dispositivo móvil de cámara doble que está capturando el video visualizado en las Ul tal como el cambio del enfoque de la cámara.
Como es discutido en lo anterior en las Figuras 56 y 62, la región definida de interés se utilizó por el dispositivo móvil remoto en la computación para el ajuste de exposición y ajuste de enfoque de los videos, respectivamente. Sin embargo, en algunas otras modalidades, la selección del usuario de una región de interés se puede utilizar para dirigir que el dispositivo remoto realice una o más operaciones. Por ejemplo, en algunas modalidades, tanto el ajuste de exposición como el ajuste de enfoque se pueden realizar en base a la región definida de interés, para de esta manera dirigir el dispositivo remoto que realiza ambas operaciones.
E. Control de Frecuencia de Cuadro Durante una videoconferencia, algunas modalidades pueden desear ajustar o mantener la frecuencia en la cual las imágenes de un video capturadas por una cámara de dispositivo móvil de cámara doble se transmiten (es decir, frecuencia de cuadro) al otro dispositivo en la videoconferencia. Por ejemplo, suponiendo un ancho de banda fijo, algunas de tales modalidades reducen la frecuencia de cuadro del video para incrementar la calidad de fotografía de las imágenes del video, mientras que otras de tales modalidades incrementan la frecuencia de cuadro del video para nivelar el video (es decir, reducir la inestabilidad).
Diferentes modalidades proporcionan diferentes técnicas para controlar la frecuencia de cuadro de imágenes de un video durante la videoconferencia. Un ejemplo previamente descrito en lo anterior ajusta el VBI del módulo de sensor 415 para una cámara con el fin de controlar la frecuencia en la cual se procesan las imágenes capturadas por la cámara. Como otro ejemplo, algunas modalidades de la capa de administración 935 del módulo de videoconferencia 925 mostradas en la Figura 9 controlan la frecuencia de cuadro al suprimir imágenes. De manera similar, algunas modalidades de la capa de procesamiento de imagen 930 controlan la frecuencia de cuadro al suprimir imágenes. Algunas modalidades proporcionan todavía otras técnicas para controlar las frecuencias de cuadro, tal como la supresión de cuadros en la memoria intermedia de transmisión universal 3120.
V. CÁMARA DOBLE A. Vistas combinadas 1. Imagen en Imagen: Visualización de Dos Cámaras Remotas Algunas modalidades permiten a un dispositivo móvil de cámara doble visualizar videos capturados desde el dispositivo móvil y videos capturados desde otro dispositivo móvil de cámara doble durante una videoconferencia en cualquiera de varios arreglos de visualización. La Figura 65 ilustra ejemplos de diferentes arreglos de visualización para videos capturados desde uno o más dispositivos móviles de cámara doble. En la Figura 65, un usuario de un dispositivo móvil de cámara doble 6500 (Dispositivo A) y un segundo usuario de un segundo dispositivo móvil de cámara doble 6505 (Dispositivo B) están teniendo una videoconferencia entre si.
La Figura 65 muestra cuatro ejemplos de arreglos de visualización para el Dispositivo A en el lado izquierdo. Los cuatro arreglos de visualización para el Dispositivo A son la Primera Vista 6510, la Segunda Vista 6515, la Tercera Vista 6520, y la Cuarta Vista 6525. Además, la Figura 65 también muestra cuatro ejemplos de arreglos de visualización para el Dispositivo B en la parte derecha. Los cuatro arreglos de visualización para el Dispositivo B son la Primera Vista 6565, la Segunda Vista 6570, la Tercera Vista 6575, y la Cuarta Vista 6580. En este ejemplo, el Dispositivo A solamente visualiza los dos videos capturados de las cámaras del Dispositivo A mientras que el Dispositivo B visualiza los dos videos capturados desde las cámaras del Dispositivo A, asi como uno o ambos de los videos capturados desde las cámaras del Dispositivo B.
En la primera vista 6510, una Ul 6585 del Dispositivo A proporciona una visualización compuesta 6512. La visualización compuesta 6512 incluye dos áreas de visualización: un área de visualización 6530 para visualizar el video capturado desde la cámara trasera del Dispositivo A y un área de visualización 6535 para visualizar el video capturado desde cámara frontal del Dispositivo A. En este ejemplo, el área de visualización 6530 está ubicada en la parte media superior de la visualización compuesta 6512 mientras que el área de visualización 6535 está ubicada en la parte media inferior de la visualización compuesta 6512. Las dos áreas de visualización son de igual tamaño en la primera vista 6510. El área de visualización superior 6530 está visualizando un video de una montaña, que se supone que es una montaña que está siendo capturada por cámara trasera del Dispositivo A. El área de visualización 6535 está visualizando un árbol y un hombre con un sombrero, que se supone que son un árbol y un sombrero que están siendo capturados por la cámara frontal del Dispositivo A.
La Ul 6585 en la segunda vista 6515 proporciona una visualización compuesta 6517 que incluye las mismas dos áreas de visualización de la primera vista 6510, excepto que el área de visualización 6535 (visualizando el video capturado de la cámara frontal del Dispositivo A) ahora está ubicada en la parte media superior de la visualización compuesta 6517 y el área de visualización 6530 (visualizando el video capturado de la cámara trasera del Dispositivo A) está ubicada en la parte media inferior de la visualización compuesta 6517.
En la tercera vista 6520, la Ul 6585 proporciona una visualización PIP 6595. La visualización PIP 6595 incluye dos áreas de visualización: el área de visualización 6535 visualizando el video capturado de la cámara frontal del Dispositivo A como una visualización de fondo y el área de visualización 6530 visualizando el video capturado de la cámara frontal del Dispositivo A como un área de visualización de inserción de primer plano. En esta vista, el área de visualización de fondo 6535 toma una mayoría de la visualización PIP 6595 mientras que el área de visualización de inserción 6530 es más pequeña y se sobrepone a una porción del área de visualización de fondo 6535.
La Ul 6585 en la cuarta vista 6525 también presenta una visualización PIP 6598 que incluye las áreas de visualización 6530 y 6535 como es mostrado en la tercera vista 6520. Distinta a la visualización PIP 6595, la visualización PIP 6598 incluye el área de visualización 6530 (capturada desde la cámara trasera del Dispositivo A) como la visualización principal de fondo y el área de visualización 6535 (capturada desde la cámara frontal del Dispositivo A), como la visualización de inserción de primer plano. Además, la visualización PIP 6598 se presenta en vista de paisaje (es decir, el ancho de la visualización PIP 6598 es más largo que la altura).
Los ejemplos anteriores ilustran cuatro vistas compuestas posibles para la Ul del Dispositivo A - dos en las cuales las dos áreas de visualización 6530 y 6535 para visualizar las dos cámaras del primer dispositivo se apilan verticalmente y dos vistas PIP. Otras vistas también son posibles para la Ul del Dispositivo A. Por ejemplo, las dos áreas de visualización podían ser apiladas horizontalmente o diagonalmente, o podían ser utilizadas diferentes vistas PIP.
Las diversas vistas ilustradas para el Dispositivo B muestran que las diferentes vistas para la Ul del Dispositivo B son posibles. Estas vistas incluyen video capturado desde ambas cámaras del Dispositivo A, así como una o más cámaras del Dispositivo B. En la primera vista 6565 del Dispositivo B, una Ul 6590 del Dispositivo B proporciona una visualización PIP 6568. La visualización PIP 6568 incluye un área de visualización compuesta 6569 que es idéntica a la visualización compuesta 6512 visualizada en el Dispositivo A, así como un área de visualización de inserción 6550 que visualiza el video capturado por una de las cámaras del Dispositivo de B (por ejemplo, la cámara frontal). El área de visualización compuesta 6569 incluye un área de visualización 6531 para visualizar el video capturado desde la cámara trasera del Dispositivo A y un área de visualización 6536 para visualizar el video capturado desde la cámara frontal del Dispositivo B. La visualización compuesta 6569 que visualiza el video del Dispositivo A toma la mayoría de la visualización PIP 6568 mientras que el área de visualización de inserción 6550 es más pequeña y se sobrepone a la visualización compuesta 6569. El área de visualización 6550 está visualizando un video de una cara sonriente, que se supone que es una sonriente cuyo video está siendo capturado por la cámara frontal del Dispositivo B.
La Ul 6590 del Dispositivo B en la segunda vista 6570 proporciona visualización PIP 6572. La visualización PIP 6572 incluye el área de visualización 6550 (visualizando el video capturado desde la cámara frontal del Dispositivo B) y una visualización compuesta 6573 con las áreas de visualización 6531 y 6536 visualizando el video capturado desde las cámaras del Dispositivo A. La visualización compuesta 6573 es idéntica a la visualización compuesta 6517 en la segunda vista 6515 para el Dispositivo A y toma una mayoría de la visualización PIP 6572. Similar a la visualización PIP 6568 en la primera vista 6565, el área de visualización 6550 es más pequeña y se sobrepone a la visualización compuesta 6573. Específicamente, en ambas vistas el área de visualización se sobrepone a una porción del área de visualización 6531 que visualiza el video capturado desde la cámara trasera del Dispositivo A.
En la tercera vista 6575, la Ul 6590 proporciona una visualización PIP 6577 que es similar a la visualización PIP 6595 en la tercera vista 6520 para el Dispositivo A. La visualización PIP 6577 también incluye el área de visualización adicional 6550 como una segunda área de visualización de inserción que se sobrepone el área de visualización de fondo 6536. Las dos áreas de visualización de inserción 6531 y 6550 se inclinan horizontalmente en el fondo del área de visualización primaria de fondo 6536.
La Ul 6590 en la cuarta vista 6580 proporciona visualización compuesta 6582. La visualización compuesta 6582 incluye tres visualizaciones: una visualización PIP 6583, el área de visualización 6550, y un área de visualización 6540 (por ejemplo, para visualizar el video capturado por la cámara trasera del Dispositivo B). La visualización PIP 6583 es idéntica a la visualización PIP 6598 en la cuarta vista 6525 para el Dispositivo A y toma una mayoría del área de visualización compuesta 6582. Las visualizaciones 6540 y 6550 son más pequeñas e inclinadas horizontalmente abajo del área de visualización PIP 6583.
Mientras que la Figura 65 ilustra cuatro posibles vistas para el Dispositivo B, muchas otras vistas son posibles. La visualización compuesta de fondo del video desde el Dispositivo A podría ser inclinado horizontalmente antes que verticalmente, la inserción podría sobreponerse al área de visualización de la cámara frontal de Dispositivo A antes que el área de visualización de la cámara trasera, las áreas de visualización más grandes podrían estar visualizando la cámara(s) del Dispositivo B antes que aquellas del Dispositivo a, las inserciones podrían ser ubicadas de manera diferente, etc.
Cada conjunto de flechas 6560 proviene de cada vista del Dispositivo A que demuestra que no hay requerimiento de una correlación entre la visualización mostrada en el Dispositivo A y la visualización mostrada en el Dispositivo B. Por ejemplo, aun si el Dispositivo A está visualizando su video en el arreglo de vista 6510 (por ejemplo, de acuerdo con una selección de ese arreglo por el usuario del Dispositivo A), el dispositivo B podría esta visualizando el video en cualquiera de las cuatro arreglos ilustrados o en cualquiera de un número de otros arreglos no mostrados en la Figura 65 (por ejemplo, de acuerdo con una selección de ese arreglo por el usuario del Dispositivo B). Puesto de otra manera, el arreglo de presentación para el Dispositivo A es independiente del arreglo de visualización del Dispositivo B. Algunas modalidades del no transmiten áreas de visualización desde un dispositivo a otro, sino más bien solo transmiten el video (por ejemplo, en forma codificada), que es visualizado en su área de visualización correspondiente por el dispositivo. 2. PIPs Especializadas Algunas modalidades permiten a un usuario de un dispositivo móvil de cámara doble sobreponer un primer plano de un video sobre otro video en una visualización PIP durante una videoconferencia. En algunas modalidades, el primer plano de un video se mezcla en el otro video de tal que aparece como una visualización de un solo video capturado por una sola cámara. La Figura 66 ilustra un ejemplo de tal sobreposición de un primer plano de un video de inserción sobre un fondo en una visualización PIP.
La Figura 66 muestra esta operación de sobreposición de video en términos de siete etapas de operación 6620, 6625, 6630, 6635, 6640, 6660 y 6665 de una Ul 6670. La primera etapa 6620 ilustra la Ul 6670 de un dispositivo móvil de cámara doble 6600 con una visualización PIP 6682 durante una videoconferencia con un dispositivo remoto. Como es mostrado en la primera etapa 6620, la visualización PIP 6682 incluye dos visualizaciones de video: una visualización principal de fondo 6610 y una visualización de inserción de primer plano 6605. La visualización principal de fondo 6610 toma una mayoría de la Ul 6670, mientras que la visualización de inserción de primer plano 6605 es más pequeña y se sobrepone a la visualización principal de fondo 6610.
En este ejemplo, el área de visualización de fondo 6610 está visualizando un video de una montaña, que se supone que es una montaña que está siendo capturada por una de las cámaras del dispositivo remoto. El área de visualización de inserción de primer plano 6605 está visualizando un video de una persona con un sombrero, que en este ejemplo se supone que es una persona cuyo video está siendo capturado por una de las cámaras del dispositivo local. Abajo de la visualización PIP 6682 está un artículo de Ul seleccionable 6685 etiquetado "Fin de Conferencia" (por ejemplo, un botón 6685) que permite al usuario finalizar la videoconferencia con una selección del artículo (por ejemplo, mediante solo o doble toque suave del botón).
La segunda etapa 6625 ilustra la invocación de un menú seleccionable 6675. En algunas modalidades, el menú de artículos Ul seleccionabas 6675 puede ser invocado al seleccionar (por ejemplo, mediante el tocamiento) el área de visualización PIP 6682. En lugar de, o en conjunción con, tal operación de invocación, algunas modalidades también permiten al usuario invocar el menú de artículos de Ul seleccionables 6675 a través de otras operaciones, tal como a través de diferentes operaciones de pantalla táctil o al utilizar una o más de otras entradas físicas del dispositivo.
La tercera etapa 6630 muestra visualiza la Ul 6670 con el conjunto invocado de artículos Ul seleccionables para seleccionar la operación de sobreposición de video. En este ejemplo, un menú emergente 6675 con varios artículos Ul seleccionables es visualizado sobre la visualización PIP 6682. El menú de artículos Ul seleccionables 6675 incluye un artículo de Ul seleccionare de "PIP de Cambio Rápido" 6640 (por ejemplo botón 6640), un artículo de Ul seleccionare de "PIP Especializada" 6645 (por ejemplo botón 6645), y un articulo de Ul seleccionare de "Cancelación" 6690 (por ejemplo, botón 6690). En este ejemplo, la selección del botón "PIP de Cambio Rápido" 6640 causaría que la Ul 6670 permute la visualización de fondo 6610 con la visualización de inserción 6605 (como será discutido en detalle en la siguiente sección), la selección del botón "PIP Especializada" 6645 causaría que la Ul 6670 comience la operación de sobreposición de video y la selección del botón de "Cancelación" 6690 removería el menú emergente 6675 de la visualización PIP 6682. Otras modalidades incluyen diferentes o más artículos en el menú emergente de PIP 6675.
La cuarta etapa 6635 ilustra la Ul 6670 después de que el usuario ha seleccionado el botón de "PIP Especializada" 6645 (por ejemplo, mediante el toque suave sobre el botón 6645 con su dedo 6695). Esta selección es indicada por el resaltamiento del botón 6645 en la visualización Ul 6670. Algunas modalidades utilizan diferentes visualizaciones de indicación (por ejemplo, el resaltamiento del borde del artículo seleccionado o el texto del artículo seleccionado).
La quinta etapa 6640 muestra la Ul 6670 después de que ha comenzado la operación de sobreposición de video. En esta etapa, al Ul 6670 permite al usuario elegir desde cual video él desea extraer como un primer plano y que video él desea usar como un fondo en el video sobrepuesto. La Ul 6670 proporciona las opciones a través de un menú emergente 6680 con varios artículos de Ul seleccionables visualizados sobre la visualización PIP 6682. El menú emergente 6680 de los artículos de Ul seleccionables incluye un artículo de Ul seleccionare de "Selección de Inserción" 6655 (por ejemplo botón 6655), un artículo de Ul seleccionable de "Selección Principal" 6650 (por ejemplo, botón 6650), y articulo de Ul seleccionable de "Cancelación" 6692 (por ejemplo, botón 6692).
La selección del botón de "Selección de Inserción" 6655 causaría que la Ul 6670 sobreponga el primer plano del video de inserción 6605 desde la cámara del dispositivo local (es decir, el hombre con un sombrero) sobre el video principal de fondo 6610 desde la cámara del dispositivo remoto. Por otra parte, la selección del botón de "Seleccionar Principal" 6650 causaría la Ul 6670 sobreponga el primer plano del video principal de fondo 6610 desde la cámara del dispositivo remoto (es decir, la montaña) sobre el video de inserción 6605 desde la cámara del dispositivo local. En algunas modalidades, esto causa una conmutación de las dos alimentaciones de video tal que el video actualmente en el área de visualización de inserción 6605 ocupará la mayoría de la Ul 6670 y el video actualmente en el área de visualización principal 6610 será sobrepuesto sobre video ahora primario. La selección del botón "Cancelación" 6692 abortaría la operación de sobreposición de video y removería el menú emergente 6680 del área de visualización PIP 6682.
La sexta etapa 6660 ilustra la Ul 6670 después de que el usuario ha seleccionado el botón "Selección de Inserción" 6655 (por ejemplo, mediante el toque suave sobre el botón 6655 con su dedo 6695). Esta selección es indicada por el resaltamiento del botón 6655 sobre la visualización de Ul 6670. Algunas modalidades utilizan diferentes visualizaciones de indicación (por ejemplo, el resaltamiento del borde del artículo seleccionado o el texto en el artículo seleccionado).
La séptima etapa 6665 ilustra la Ul 6670 después de que se completa la operación de sobreposición de video. Como es mostrado en la Ul 6670, el primer plano del área de visualización de inserción 6605 (es decir, el hombre con un sombrero) se extrae del área de visualización 6605. El cuadro de ventana y el fondo (es decir, cualquier otra cosa diferentes del fondo) de la visualización de inserción 6605 también se remueven de la pantalla. Finalmente, el primer plano (es decir, el hombre con un sombrero) se mezcla en el vídeo de fondo 6610 de tal manera que aparece como un solo video. Varias técnicas diferentes se pueden utilizar para remover el fondo del video de inserción. Algunas modalidades identifican pixeles que no están moviéndose con relación a otros píxeles, buscan patrones o colores que son constantes, utilizan una imagen de línea de base comparada con la imagen que incluye el primer plano y sustraen la diferencia, o usan una técnica diferente.
Mientras que el ejemplo de la Figura 66 ilustra el primer plano del área de visualización de inserción 6605 permaneciendo en el mismo lugar en la Ul 6670 cuando se sobrepone sobre el área de visualización de fondo 6610, esto es solamente un ejemplo de como puede trabajar la sobreposición. Algunas modalidades mueven el video de primer plano a una ubicación particular en la Ul 6670 (por ejemplo, el centro, una de las esquinas, etc.). Similar a las características mostradas en las Secciones IV.A.1 y IV.A.3, algunas modalidades permiten al usuario del dispositivo local arrastrar el video de primer plano sobrepuesto alrededor de la Ul o cambiar el tamaño del video de primer plano sobrepuesto.
Diferentes técnicas se pueden utilizar para determinar qué porción(es) de imágenes de video es el "primer plano" para la operación de sobreposición de video descrita en lo anterior. Uno método de tal clase de algunas modalidades determina que porción(es), si la hay, de las imágenes de video es dinámica. La porción dinámica se considera el "primer plano", debido a que el fondo de las imágenes de video es generalmente estático (es decir, sin movimiento). En tales modalidades, las imágenes de video se analizan sobre un periodo de tiempo particular. Si la diferencia entre los valores de píxel particular sobre el período particular no es más grande que un valor de umbral definido (por ejemplo, 5%, 10%, 15%), el píxel particular se considera un píxel estático. Después de que se analiza cada píxel en las imágenes de video, los píxeles dinámicos (es decir, no estáticos) de las imágenes de video se consideran el "primer plano" de las imágenes de video.
La Figura 67 ¡lustra un ejemplo de tal técnica para determinar el primer plano de imágenes de video que se pueden realizar por el administrador de videoconferencia 1604 o el administrador de procesamiento de imagen 1608, por ejemplo. Específicamente, la Figura 67 ilustra una secuencia de seis imágenes 6705-6730 de un video que muestra una persona con un sombrero y un árbol. En este ejemplo, se supone que la persona no está permaneciendo completamente estática y puede estar hablando. Como es descrito en lo anterior, cada píxel en las imágenes de video se analiza para determinar si el píxel es dinámico o estático. Por ejemplo, la diferencia entre el valor del píxel 6735 en las imágenes 6705-6730 se determina si es más grande que un umbral definido. Aquí, puesto que el pixel 6735 representa una parte del suelo antes que la persona, el pixel 6735 se considera estático. Después de que todos los píxeles en las imágenes 6705-6730 son analizados, se determina que la persona de las imágenes es dinámica y la porción restante de las imágenes es estática. Como tal, la persona es el "primer plano" que será extraído por la operación descrita con referencia a la Figura 66, anterior. 3. Permuta de Videos en una Visualización de Imagen en Imagen Algunas modalidades permiten al usuario de un dispositivo móvil de cámara doble permutar las dos áreas de visualización en una visualización PIP (es decir, el área de visualización de inserción llega a ser el área de visualización de fondo, y el área de visualización de fondo llega a ser el área de visualización de inserción de la visualización PIP) durante una videoconferencia. La Figura 68 ilustra un ejemplo de permutación de un área de visualización de inserción 6605 con un área de visualización de fondo 6610 en una visualización PIP 6682 durante una videoconferencia.
La Figura 68 ilustra la operación de permutación de PIP en términos de ocho etapas de operación de una Ul 6670 del dispositivo 6800 en la Figura 66. Las tres primeras etapas de la Figura 68 son idénticas a las primeros tres etapas en la Figura 66. En estas etapas, el usuario ha originado el menú 6675 dentro de la Ul 6670 a través de una selección utilizando la pantalla táctil del dispositivo local.
La cuarta etapa 6840 en la Figura 68 ilustra la Ul 6670 después de que el usuario ha seleccionado el botón de "PIP de Cambio Rápido" 6640 (por ejemplo, mediante el toque suave sobre el botón 6640 con su dedo 6695). Esta selección es indicada por el resaltamiento del botón 6640 sobre la visualización de Ul 6670. Algunas modalidades utilizan diferentes visualizaciones de indicación (por ejemplo, el resaltamiento del borde del artículo seleccionado o el texto en el artículo seleccionado).
La quinta etapa 6845 ilustra la Ul 6670 después de que ha iniciado la operación de permutación de PIP. Algunas modalidades animan la permutación de la visualización de inserción y de fondo 6605 y 6610 a través de un movimiento de cambio rápido. La Figura 68 ilustra un ejemplo de tal animación. En este ejemplo, la animación puede ser descrita a través del cambio rápido de un cristal de visión del cual la visualización PIP 6682 (antes de que se realice la operación de permutación) está en un lado y la nueva visualización PIP 6684 (después de que se realiza la operación de permutación) está en el otro lado. El cristal de visión rota 180 grados alrededor de un eje vertical 6686 localizado en el centro de la visualización PIP 6682. En esta quinta etapa 6845, el cristal de visión comienza a rotar alrededor del eje vertical 6686.
En la sexta etapa 6850, el cristal o panel de visión se muestra que ha rotado aproximadamente 90 grados. Esto es indicado por la línea delgada 6688 (es decir, el borde del cristal de visión) visualizado en el centro de la pantalla. La séptima etapa 6855 ilustra la rotación del cristal de visión cercano a la terminación. Una nueva visualización PIP 6684 comienza a aparecer desde el otro lado del cristal de visión y se expande horizontalmente para llenar la pantalla del dispositivo. La visualización PIP 6684 incluye dos áreas de visualización 6605 y 6610 después de que se realiza la operación de permutación. El área de visualización 6605 que presenta el video de un hombre con un sombrero (desde la cámara del dispositivo local) está ahora en el fondo de la visualización PIP 6684 y la visualización 6610 que presenta el video de una montaña (desde la cámara del dispositivo remoto) es ahora el primer plano de la visualización PIP 6684que se sobrepone a la visualización 6605. La octava etapa 6860 muestra la terminación de la animación de permutación de visualizaciones.
Uno de habilidad ordinaria reconocerá que la animación mostrada en la Figura 68 es solamente una de las muchas posibles animaciones de la operación de permutación de inserción/fondo de PIP. Por ejemplo, diferentes modalidades podrían rotar los paneles de visualización a lo largo de un eje horizontal, permutar instantánea las dos áreas de visualización, expandir un área de visualización mientras que se contrae la otra, etc. Algunas modalidades proporcionan una animación que siempre es utilizada para las operaciones de permutación, mientras que otras modalidades permiten a un usuario elegir de varias animaciones o utilizar diferentes animaciones (por ejemplo, a través de la selección aleatoria). Además, la operación de permutación puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal como causar que el administrador de videoconferencia 1604 cambie la escalación y composición de los videos en respuesta a la entrada del usuario. 4. Definición a la Esquina Algunas modalidades de la invención permiten a un usuario de un dispositivo móvil de cámara doble modificar la visualización compuesta al moverse alrededor de una o más áreas de visualización que forman la visualización compuesta. Un ejemplo de tal movimiento es descrito en lo anterior en la Sección IV.A.1. Tal movimiento de las visualizaciones de inserción también es posible cuando una visualización PIP incluye más de un área de visualización de inserción.
La Figura 69 ilustra un ejemplo de tal clase que se realiza durante una videoconferencia. En este ejemplo ilustrado en la Figura 69 es similar al ejemplo ilustrado en la Figura 3, excepto que la Figura 69 ilustra el movimiento alrededor de un área de visualización de inserción 6910 de una visualización PIP 6965 que incluye dos áreas de visualización de inserción 6905 y 6910 antes que solamente un área de visualización de inserción.
En la Figura 69, una Ul 6960 de un dispositivo móvil 6900 presenta una visualización PIP 6965 durante una videoconferencia con un usuario remoto de otro dispositivo. La visualización PIP 6965 en la Figura 69 incluye tres visualizaciones de video: una visualización principal de fondo 6915 y dos visualizaciones de inserción de primer plano 6905 y 6910. En este ejemplo, la visualización principal de fondo 6915 presenta un video de una persona cantando y tocando una guitarra, que se supone que es el video capturado por la cámara trasera del dispositivo remoto. La visualización de inserción de primer plano 6905 presenta un video de una persona sosteniendo una raqueta, que en este ejemplo se supone que es el video capturado por la cámara trasera del dispositivo local. La otra visualización de inserción de primer plano 6910 presenta un video de una persona con un sombrero, que en este ejemplo se supone que es una persona cuyo video está siendo capturado por la cámara frontal del dispositivo local. Enseguida la visualización PIP 6965 es un artículo de Ul seleccionable 6970 marcado "Fin de Conferencia" (por ejemplo, un botón 6970) que permite al usuario finalizar la videoconferencia al seleccionar el artículo.
Esta visualización PIP 6965 es solamente una manera de presentar una vista compuesta de los videos que son capturados por los dispositivos remoto y local. Algunas modalidades pueden proporcionar otras vistas compuestas. Por ejemplo, en lugar de tener una visualización de fondo más grande 6915 para el video del dispositivo remoto, la visualización de fondo más grande 6915 puede ser del video del dispositivo local y las visualizaciones de inserción de primer plano más pequeñas 6905 y 6910 pueden ser de los videos del dispositivo remoto. También, algunas modalidades permiten a los videos locales y remotos aparecer en la Ul 6960 con las visualizaciones de inserción 6905 y 6910 a un lado y la visualización de fondo 6915 en el otro lado o todos los tres lado por lado. En otras modalidades, la visualización PIP 6965 puede contener una visualización de fondo más grande 6915 y/o una visualización de inserción de primer plano más pequeña. La manera de la visualización PIP 6965 o un modo de visualización de omisión puede ser especificada por el usuario en algunas modalidades.
La Figura 69 ¡lustra el movimiento de una de las dos áreas de visualización de inserción de una Ul 6960 de un dispositivo 6900, por referencia a cinco etapas de operación diferentes 6920, 6925, 6930, 6935 y 6940. La primera etapa 6920 ilustra la Ul 6960 durante una videoconferencia entre el usuario local del dispositivo 6900 y el usuario remoto del dispositivo remoto.
La segunda etapa 6925 ilustra al usuario iniciar una operación de definición a la esquina al seleccionar un área de visualización de inserción 6910. En este ejemplo, se hace una selección al colocar un dedo 6950 en cualquier parte dentro del área de visualización de inserción 6910. Como es mostrado, esta selección se visualiza en términos de un borde grueso 6962 para la visualización de inserción 6910. Diferentes modalidades pueden indicar tal selección de diferentes maneras, tal como al resaltar la visualización de inserción 6910, al causar que la visualización de inserción 6910 vibre, etc.
La tercera etapa 6930 ilustra la Ul 6960 después de que el usuario comienza a mover el área de visualización de inserción 6910 de la visualización PIP 6965 desde un área en la visualización PIP 6965 a otra área en esta visualización PIP 6965. En este ejemplo, el área de visualización de inserción 6910 ha comenzado a moverse de la esquina derecha inferior de la visualización PIP 6965 a la esquina derecha superior de esta visualización, como es indicado por la flecha 6955. La visualización de inserción 6910 se mueve por el usuario que arrastra su dedo 6950 hacia la esquina derecha superior de la visualización PIP 6965 después de seleccionar la visualización de inserción 6910. Algunas modalidades proporcionan otras técnicas para mover la visualización de inserción 6910 alrededor de la visualización PIP 6965.
La cuarta etapa 6935 ilustra la Ul 6960 en un estado después de que el usuario ha removido su dedo 6950 de la pantalla del dispositivo 6900. En este estado, el área de visualización de inserción 6910 está todavía moviéndose hacia la esquina derecha superior de la visualización PIP 6965 que se identificó en base al movimiento del dedo del usuario en la tercera etapa. En otras palabras, después de que el dedo 6950 inicia el movimiento de la visualización de inserción 6910 hacia la esquina derecha superior de la visualización PIP 6965, la Ul 6960 mantiene este movimiento, aun después de que se remueve el dedo 6950. Para mantener este movimiento, la Ul 6960 de algunas modalidades requiere la operación de arrastre del usuario que sea más grande que una cantidad de umbral particular (por ejemplo, más largo que una distancia particular o más largo que una duración de tiempo particular) antes de que el usuario remueva su dedo, de otra manera, estas modalidades mantienen el área de visualización de inserción en su posición de esquina derecha del fondo original después de mover esta área de visualización ligeramente o al no moverla en todo.
Sin embargo, mientras que algunas modalidades permitan que el área de visualización de inserción se mueva aun después de que el usuario detiene su operación de arrastre antes de que el área de visualización de inserción ha alcanzado su nueva ubicación, otras modalidades requieren que el usuario mantenga su operación de arrastre hasta que el área de visualización de inserción alcanza su nueva ubicación. Tales modalidades proporcionan todavía otras técnicas para mover el área de visualización de inserción. Por ejemplo, algunas modalidades pueden requerir que el usuario especifique donde dirigir el área de visualización 6910 antes de que el área de visualización 6910 realmente comience a moverse, etc. Algunas modalidades también pueden permitir que las áreas de visualización se deslicen y se definan a las esquinas al simplemente inclinar del dispositivo móvil en diferentes ángulos.
La quinta etapa 6940 ilustra la Ul 6960 después de que el área de visualización de inserción 6910 ha alcanzado su nueva ubicación en la esquina derecha superior del área de visualización PIP 6965. La remoción del borde grueso 6962 en la quinta etapa indica que se completa la operación de definición a la esquina.
Para facilitar el movimiento ilustrado en la tercera, cuarta y quinta etapa 6930, 6935 y 6940 descritas en lo anterior, la Ul 6960 de algunas modalidades emplea reglas de definición que permiten al área de visualización de inserción 6910 definirse rápidamente a una esquina de la visualización PIP 6965. Una vez que el usuario causa que el área de visualización de inserción 6910 se mueva hacia esa esquina. Por ejemplo, cuando el usuario arrastra el área de visualización de inserción 6910 por más de una cantidad de umbral hacia una esquina particular, la Ul 6960 de algunas modalidades identifica la dirección de movimiento de la visualización de inserción 6910, determina que el movimiento ha excedido una cantidad de umbral, y, subsecuentemente mueve el área de visualización de inserción 6910 automáticamente sin entrada al usuario adicional al siguiente punto de rejilla en la Ul 6960 a la cual la visualización de inserción 6910 puede ser definida. En algunas modalidades, los únicos puntos de rejilla que se proporcionan para la definición de la visualización de inserción 6910 son los puntos de rejilla en las cuatro esquinas de la visualización PIP 6965. Otras modalidades proporcionan otros puntos de rejilla en la Ul 6960 (por ejemplo, en la visualización PIP 6965) a la cual puede definirse la visualización de inserción 6910.
Todavía otras modalidades no pueden emplear puntos de rejilla de modo que el área de visualización de inserción 6910 puede ser posicionada en cualquier punto en la visualización PIP. Todavía otras modalidades proporcionan una característica que permite al usuario activar o desactivar la definición a la característica de punto de rejilla de la Ul. Por otra parte, además del video capturado desde los dispositivos, diferentes modalidades pueden permitir al usuario realizar las operaciones de definición a la esquina con varios artículos, tales como iconos, etc. Como es mencionado en lo anterior, el movimiento de un área(s) de visualización de una visualización compuesta puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal como causar que el administrador de videoconferencia 1604 recomponga el área de visualizacíón en la visualizacíón compuesta en respuesta a la entrada del usuario. 5. Empuje y Definición El ejemplo en la Figura 69 ilustra una operación de definición a la esquina que permite a un usuario de un dispositivo móvil de cámara doble mover una de las dos áreas de visualizacíón de inserción desde una esquina de la visualizacíón PIP a otra esquina que no está ocupada por una visualizacíón de inserción. Algunas modalidades permiten a una característica de empuje que mueva una primera inserción a una ubicación de una segunda inserción y también empuje la segunda inserción a una nueva ubicación. La Figura 70 ilustra un ejemplo de tal clase que se realiza durante una videoconferencia.
La Figura 70 ilustra el movimiento de una visualizacíón de inserción desde una esquina de la visualizacíón PIP a otra esquina de la visualizacíón PIP que está ocupada por otra visualizacíón de inserción, por referencia a seis diferentes etapas 7020, 7025, 7030, 7035, 7040 y 7045 de esta IU 6960. La primera etapa 7020 ¡lustra la Ul 6960 durante una videoconferencia entre un usuario local del dispositivo y un usuario remoto de un dispositivo remoto. La Ul 6960 en la Figura 70 muestra una visualizacíón PIP 6965 que es la misma visualizacíón PIP mostrada en la primera etapa de la Figura 69 después de ha iniciado la videoconferencia. En este ejemplo, el video capturado por el dispositivo del usuario local es visualizado en las áreas de visualizacíón de inserción 6905 y 6910 y el video capturado por el dispositivo del usuario remoto es visualizado en el área de visualizacíón de fondo 6915.
La segunda etapa 7025 ilustra el usuario iniciando la operación de definición a la esquina al seleccionar el área de visualizacíón de inserción 6905. En este ejemplo, se hace una selección al colocar un dedo 7055 en cualquier parte dentro del área de visualizacíón de inserción 6905. Como es mostrado, esta selección es visualizada en términos de un borde grueso 7065 para la visualizacíón de inserción 6905. Diferentes modalidades pueden indicar tal selección en diferentes maneras, tal como al resaltar el área de visualizacíón 6905, al causar que vibre el área de visualización 6905, etc.
La tercera etapa de 7030 ilustra la Ul 6960 después de que el usuario comienza a mover el área de visualización de inserción 6905 desde la esquina izquierda inferior de la visualización PIP 6965 a la esquina derecha inferior de la visualización PIP 6965 (al arrastrar su dedo 7055 hacia la esquina derecha inferior de la visualización PIP 6965 después de seleccionar la visualización de inserción 6905 en la tercera etapa), como es indicado por la flecha 7050. Algunas modalidades proporcionan otras técnicas para mover el área de visualización de inserción 6905 alrededor de la visualización PIP 6965.
La cuarta etapa 7035 ¡lustra la Ul 6960 después de que el área de visualización de inserción 6905 ha entrado en contacto con el área de visualización de inserción 6910. En el contacto, el área de visualización de inserción 6910 se mueve hacia la siguiente esquina más cercana. En este ejemplo, el área de visualización de inserción 6910 comienza a moverse a la dirección (como es indicada por la flecha 7075) de la esquina derecha superior de la visualización PIP 6965. La activación de esta operación de empuje se visualiza en términos de un borde grueso 7070 para la visualización de inserción 6910. Diferentes modalidades pueden indicar tal activación en diferentes maneras, tal como al resaltar la visualización 6910, etc.
La quinta etapa 7040 ilustra la Ul en un estado después de que el área de visualización de inserción 6905 se ha definido a la esquina derecha inferior que fue previamente ocupada por el área de visualización de inserción 6910. En este estado, el área de visualización de inserción todavía esta moviéndose hacia la esquina derecha superior de la visualización PIP 6965. También, el borde grueso 7065 no es visualizado por más tiempo. Mientras que la operación de arrastre del usuario desde la tercera etapa 7030 es más grande que un umbral que causa que el área de visualización de inserción 6905 se defina a la esquina derecha, el área de visualización de inserción 6910 se remueve desde su esquina y se define todo por la vía de la siguiente esquina más cercana.
Algunas modalidades incluyen un conjunto de reglas para determinar de que manera empujar la segunda área de visualización de inserción 6910. En el caso ilustrado en la Figura 70, algunas modalidades intentan continuar la rotación de las áreas de visualización de inserción. Esto es, debido a que el área de visualización 6905 se mueve en una dirección contraria a las manecillas del reloj, el área de visualización 6910 también se mueve contrario a las manecillas del reloj. Algunas modalidades proporcionan una jerarquía de ubicaciones posibles a las cuales el área de visualización de inserción empujada 6910 puede moverse y seleccionar la primera ubicación no ocupada sobre la lista. Por ejemplo, la esquina derecha superior podría ser la primera ubicación en tal lista cuando un área de visualización de inserción en la parte derecha del fondo se empuja por un área de visualización de inserción que viene de la parte izquierda del fondo. Sin embargo, si una tercera área de visualización de inserción ya estuvo presente en la esquina derecha superior, algunas modalidades moverían a la siguiente opción sobre la lista (por ejemplo, la esquina izquierda superior, el centro o la esquina izquierda inferior). Otras modalidades empujarían la tercera área de visualización de inserción con la segunda área de visualización de inserción tal que el dispositivo necesitaría determinar una nueva ubicación para la tercera área de visualización de inserción.
La sexta etapa 7045 ilustra la Ul 6960 después de que el área de visualización de inserción 6910 ha alcanzado su nueva ubicación en la esquina derecha superior del área de visualización PIP 6965. La remoción del borde grueso 7070 en esta etapa indica que se completa la operación de empuje de definición a la esquina. Similar a la operación de empuje hacia la esquina descrito por referencia a la Figura 68, el movimiento de un área(s) de visualización de una visualización compuesta puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal como causar que el administrador de videoconferencia 1604 re-componga el área de visualización en la visualización compuesta en respuesta a la entrada del usuario. 6. Rotación Algunas modalidades rotan una visualización PIP que se presenta durante una videoconferencia cuando un usuario de un dispositivo móvil utilizado para la videoconferencia rota el dispositivo durante la conferencia. La Figura 71 ¡lustra la rotación de una visualización de Ul 7175 de un dispositivo 7100 cuando el dispositivo es rotado de una posición vertical a una posición horizontal. El dispositivo 7100 se mantiene verticalmente cuando el lado largo de la pantalla está vertical, mientras que el dispositivo 7100 se mantiene horizontalmente cuando el lado largo de la pantalla está horizontal. En el ejemplo ilustrado en la Figura 71 , la visualización de Ul 7175 rota desde una vista de retrato que es optimizada para un sostenimiento vertical del dispositivo a una vista de paisaje que es optimizada para el sostenimiento horizontal del dispositivo 7100. Esta funcionalidad de rotación permite al usuario ver la Ul 7175 visualizada en una posición vertical cuando el dispositivo móvil 7100 se mantiene ya sea verticalmente u horizontalmente. Este ejemplo ilustrado en la Figura 71 es similar al ejemplo ilustrado en la Figura 34, excepto que la Figura 71 ilustra la rotación de una visualización PIP que incluye dos áreas de visualización de inserción antes que solamente una.
En la Figura 71, la Ul 7175 del dispositivo móvil 7100 presenta la visualización PIP 7180 durante una videoconferencia con un usuario remoto de otro dispositivo móvil. La visualización PIP 7180 en la Figura 71 incluye tres visualizaciones de video: una visualización principal de fondo 71 15 y dos visualizaciones de inserción de primer plano 7110 y 7160. En este ejemplo, la visualización principal de fondo 7115 presenta un video de una montaña, que se asume que es el video capturado por la cámara frontal o cámara trasera del dispositivo remoto. La visualización de inserción de primera plano 71 10 presenta un video de una cara sonriente en un cuarto, que se asume que es capturado por la cámara frontal o cámara trasera del dispositivo local. La otra visualización de inserción de primer plano 7160 presenta un video de un guitarrista cantando, que se asume que es un guitarrista cuyo video está siendo capturado por la otra cámara del dispositivo local. Abajo de la visualización PIP 7180 está un botón de Fin de Conferencia 7155, que el usuario puede seleccionar para finalizar la videoconferencia (por ejemplo, a través de un solo toque suave con el dedo). Esta visualización PIP es solamente una manera de presentar una vista compuesta de los videos que son capturados por los dispositivos remoto y local. Algunas modalidades pueden proporcionar otras vistas compuestas, tales como vistas inclinadas o diferentes visualizaciones PIP.
La Figura 71 ilustra la rotación de la Ul 7175 en términos de seis diferentes etapas de operación 7120, 7125, 7130, 7135, 7140 y 7145. La primera etapa 7120 ilustra la Ul 7175 durante una videoconferencia entre el usuario local del dispositivo y el usuario remoto del dispositivo remoto.
La segunda etapa 7125 ilustra la Ul 7175 después de que el usuario comienza a inclinar el dispositivo 7100 al lado. En este ejemplo, el dispositivo 7100 ha comenzado a inclinar el dispositivo 7100 de ser mantenido verticalmente a ser mantenido horizontalmente, como es indicado por la flecha 7185. La apariencia de la Ul 7175 no ha cambiado. En otras situaciones, el usuario puede desear inclinar el dispositivo 7100 de ser mantenido horizontalmente a ser mantenido verticalmente en lugar de esto, y en estas situaciones la visualización de Ul 7175 conmuta de una vista horizontalmente optimizada a una vista verticalmente optimizada.
La tercera etapa 7130 ilustra la Ul 7175 en un estado después de que el dispositivo 7100 se ha inclinado de ser mantenido verticalmente a ser mantenido horizontalmente. En este estado, la apariencia de la visualización de Ul 7175 todavía no tiene cambio. En algunas modalidades, la operación de rotación es activada después de que el dispositivo 7100 se inclina más allá de una cantidad de umbral y se mantiene más allá de este punto durante una duración de tiempo. En el ejemplo ilustrado en la Figura 71 , se asume que la cantidad de umbral y la velocidad de rotación no causan que la visualización de Ul 7175 rote hasta un intervalo de tiempo real después de que el dispositivo se ha colocado en la posición horizontal. Diferentes modalidades tienen diferentes cantidades de umbral y períodos de espera para activar la operación de rotación. Por ejemplo, algunas modalidades pueden tener tal umbral bajo para activar la operación de rotación para hacer que la Ul 7175 aparezca como si siempre estuviera visualizada en una posición vertical, no importando la orientación del dispositivo 7100. En otras modalidades, el usuario del dispositivo 7100 puede especificar cuando la operación de rotación puede ser activada (por ejemplo, a través de un ajuste de preferencia de menú). También, algunas modalidades no pueden retardar la rotación después de que el dispositivo se inclina más allá de la cantidad de umbral. Por otra parte, diferentes modalidades pueden permitir que la operación de rotación sea activada de diferentes maneras, tal como al activar una conmutación sobre el dispositivo móvil, al dar mandos de voz, en la selección a través de un menú, etc.
La cuarta etapa 7135 ilustra la Ul 7175 después de que ha iniciado la operación de rotación. Algunas modalidades animan las áreas de visualización de rotación para proporcionar retroalimentación al usuario que considera la operación de rotación. La Figura 71 ilustra un ejemplo de cada animación. Específicamente, esta muestra en su cuarta etapa 7135 el inicio de la rotación de las áreas de visualización 7110, 71 15 y 7160 conjuntamente. Las áreas de visualización 7110, 71 5 y 7160 rotan alrededor de un eje 7165 que va a través del centro de la visualización de Ul 7175 (es decir, el eje z). Las áreas de visualización 7110, 7115 y 7160 se rotan la misma cantidad pero en la dirección opuesta de la rotación del dispositivo 7100 (por ejemplo, a través de la inclinación del dispositivo 7100). En este ejemplo, puesto que el dispositivo 7100 ha rotado noventa grados en una dirección de las manecillas del reloj (al ir de ser mantenido verticalmente a ser mantenido horizontalmente) la operación de rotación causaría que las áreas de visualización 7110, 7115 y 7160 roten noventa grados en una dirección contraria a las manecillas del reloj. A medida que rotan las áreas de visualización 7110, 7115 y 7160, las áreas de visualización 7110, 7115 y 7160 se contraen proporcionalmente para ajustar la visualización de Ul 7175 de modo que las áreas de visualización 71 10, 7115 y 7160 todavía pueden aparecer completamente dentro de la Ul 7175. Algunas modalidades pueden proporcionar un mensaje para indicar el estado de este dispositivo 7100 (por ejemplo, al visualizar la palabra "rotación").
La quinta etapa 7140 ilustra la Ul 7175 después de que las áreas de visualización 7110, 7115 y 7160 han rotado noventa grados en la dirección contraria a las manecillas del reloj desde la vista de retrato a la vista de paisaje. En esta etapa, las áreas de visualización 7110, 7115 y 7160 se han rotado pero todavía no se han expandido a través del ancho completo de la Ul 7175. Las flechas 7170 indican que al final de la quinta etapa, las áreas de visualización 7110, 7115, 7160 comenzarán a expandirse lateralmente para ajustarse al ancho completo de la Ul 7175. Diferentes modalidades pueden no incluir esta etapa puesto que la expansión podría ser realizada simultáneamente con la rotación en la cuarta etapa 7135.
La sexta etapa 7145 ¡lustra la Ul 7175 después de que las áreas de visualización 7110, 7115 y 7160 se han expandido para ocupar la visualización completa de la Ul 7175. Como es mencionado en lo anterior, otras modalidades pueden implementar esta rotación de manera diferente. Para algunas modalidades, simplemente la rotación de la pantalla de un dispositivo más allá de una cantidad de umbral puede activar la operación de rotación, no importando la orientación del dispositivo 7100.
También, otras modalidades podrían proporcionar una animación diferente para indicar la operación de rotación. La operación de rotación realizada en la Figura 71 involucra la visualización de Ul 7175 que rota alrededor del centro de la visualización de Ul 7175. Alternativamente, las áreas de visualización pueden ser rotadas individualmente alrededor del eje central de sus áreas de visualización individuales. Un procedimiento de tal clase se muestra en la Figura 72, que muestra un método alternativo para animar la rotación del área de visualización PIP 7180 de la Ul 7175. La visualización PIP ilustrada en la Figura 72 es la misma visualización PIP 7180 ilustrada en la Figura 71.
La Figura 72 ilustra la rotación de la visualización PIP 7180 en términos de seis diferentes etapas de operación 7120, 7125, 7130, 7220, 7225 y 7230. Las primeras tres etapas de operación de la Ul 7175 son idénticas a las primeras tres etapas de operación como es descrito en la Ul 7175 en la Figura 71. En la tercera etapa para ambas de las Figuras 71 y 72, el dispositivo ha ido de ser mantenido verticalmente a ser mantenido horizontalmente y todavía no ha comenzado la rotación de la Ul 7175.
La cuarta etapa 7220 ilustra un método alternativo para animar la rotación. En esta etapa, ha iniciado la operación de rotación. Específicamente, la cuarta etapa 7220 muestra el inicio de la rotación de las áreas de visualización 7110, 7115 y 7160. Las áreas de visualización 7110, 7115 y 7160 cada una rota alrededor de los ejes 7250 que van a través del centro de cada una de las áreas de visualización (es decir, el eje z). Las áreas de visualización 71 10, 71 15 y 7160 se rotan la misma cantidad pero en la dirección opuesta de la rotación del dispositivo 7100 (por ejemplo, a través de la inclinación del dispositivo 7100). En este ejemplo, puesto que el dispositivo 7100 ha rotado noventa grados en una dirección de las manecillas del reloj (al ir de ser mantenido verticalmente a ser mantenido horizontalmente) la operación de rotación causaría que las áreas de visualización 7115, 7110 y 7160 roten noventa grados en una dirección contraria a las manecillas del reloj. A medida que rotan las áreas de visualización 71 15, 7110 y 7160, ellas también se contraen proporcionalmente para ajustar la visualización de Ul 7175 de modo que las áreas de visualización 7115, 7110 y 7160 todavía pueden aparecer totalmente sobre la Ul 7175.
La quinta etapa 7225 ilustra la Ul 7175 después de que las áreas de visualización 7115, 7110 y 7160 han rotado noventa grados contrario a las manecillas del reloj desde la vista de retrato a la vista de paisaje. En esta etapa, las áreas de visualización 7115, 7110 y 7160 se han rotado pero todavía no se han expandido a través del ancho completo de la Ul 7175 o alcanzado sus posiciones finales. Las posiciones finales de las áreas de visualización en la visualización PIP 7115 se determinan por las posiciones de las áreas de visualización en la visualización PIP como se muestra en la primera de etapa de 7120 (por ejemplo, la visualización de inserción 7110 en la esquina izquierda inferior y la visualización de inserción 7160 en la esquina derecha inferior de la visualización PIP 7180).
Las flechas 7170 indican que al final de la quinta etapa, las áreas de visualización 7115, 7110 y 7160 comenzarán a expandirse lateralmente hasta que el área de visualización principal 7115 ajusta el ancho completo de la Ul 7175. Por otra parte, la flecha 7255 indica que las áreas de visualización de inserción 7110 y 7160 se moverán para alcanzar sus posiciones finales en la visualización PIP 7180. En otras palabras, el área de vis alización de inserción 7110 se moverá hacia abajo hacia la esquina izquierda inferior de la visualización PIP 7180 mientras que la otra área de visualización de inserción 7160 se mueve a la esquina derecha inferior de la visualización PIP 7180. Diferentes modalidades pueden realizar esta animación de manera diferente, por ejemplo, al utilizar la operación de definición y empuje ¡lustrada en la Figura 71. La sexta etapa 7230 ilustra la Ul 7175 después de que las áreas de visualización 7110, 7115 y 7160 se han expandido para ocupar la visualización completa de la Ul 7175 y se han movido a sus posiciones finales.
Como es mencionado en lo anterior, otras modalidades pueden implementar esta rotación de manera diferente. Por ejemplo, como es ilustrado de manera similar en las Figuras 36 y 37, algunas modalidades proporcionan una operación de rotación en la cual la orientación del área de visualización que visualiza el video capturado por el dispositivo local cambia para reflejar la orientación del dispositivo local después de que se realiza una operación de rotación sobre el dispositivo local, algunas modalidades proporcionan una operación de rotación en la cual la orientación del área de visualización que visualiza el video capturado por el dispositivo remoto cambia para reflejar la orientación del dispositivo remoto después de que se realiza una operación de rotación sobre el dispositivo remoto, algunas modalidades proporcionan una operación de rotación en la cual el área de visualización 1155 permanece en la misma posición, algunas modalidades proporcionan un arreglo diferente en el área de visualización (por ejemplo, el arreglo del área de visualización 1155 de la Figura 12), o una combinación de los mismos.
Para algunas modalidades, simplemente la rotación de la pantalla de un dispositivo más allá de una cantidad de umbral puede activar la operación de rotación, no importando la orientación del dispositivo 7100. También como es mencionado en lo anterior, los dispositivos local y remoto notifican entre sí las operaciones de rotación realizadas sobre uno de los dispositivos a través de un canal de comunicación de control con el fin de permitir que el otro dispositivo realice cualquiera de las modificaciones correspondientes al video de un dispositivo. También, la animación de la operación de rotación puede causar cambios en la operación de las cámaras o las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble tal como causar que el administrador de videoconferencia 1604 recomponga el área(s) de visualización en diferentes ángulos en la Ul e 1105 y escalar las imágenes visualizadas en el área(s) de visualización. 7. Selección de vista a vista remota Como es mencionado en lo anterior, algunas modalidades permiten a un usuario en un dispositivo móvil de cámara doble seleccionar que cámara utilizar para una videoconferencia antes del inicio de la videoconferencia o en el inicio de la videoconferencia. En lugar de, o en conjunción con esta capacidad, algunas modalidades permiten al usuario del dispositivo seleccionar entre dos videos que están siendo visualizados en la videoconferencia, y que son ya sea de dos cámaras de video de un dispositivo remoto o son de dos cámaras de video del dispositivo local del usuario. La Figura 73 ilustra una selección en videoconferencia de un video desde de dos videos remotos, mientras que la Figura 74 ilustra una selección en videoconferencia de un video desde dos de videos locales.
La Figura 73 ilustra la selección del video remoto en términos de seis etapas de operación 7335, 7340, 7345, 7350, 7355 y 7360 de una Ul 7375 visualizada sobre un dispositivo local 7300. La primera etapa 7335 ilustra la Ul 7375 con una visualización PIP inicial 7390 que está siendo presentada durante una videoconferencia con un usuario remoto de un dispositivo móvil que tiéne dos cámaras.
Como es mostrado en la primera etapa 7335, la visualización PIP inicial 7390 incluye tres visualizaciones: una visualización principal de fondo 7315 y dos visualizaciones de inserción de primer plano 7305 y 7310. La visualización de fondo 7315 toma una mayoría del área de visualización PIP 7390, mientras que las visualizaciones de inserción de primer plano 7305 y 7310 se sobreponen a porciones de la visualización de fondo 7315 sobre la Ul 7375. En este ejemplo, la visualización de fondo 7315 presenta un video de una persona enfrente de un micrófono, que se asume que es el video capturado por la cámara trasera del dispositivo remoto. La primera visualización de inserción de primer plano 7305 presenta un video de una cara del hombre, que en este ejemplo se asume que es el video capturado por una de las cámaras del dispositivo local 7300. La segunda visualización de inserción de primer plano 7310 presenta un video de una persona con un sombrero, que en este ejemplo se asume que es el video capturado por la cámara frontal del dispositivo remoto.
La visualización PIP inicial 7390 es solamente una manera de presentar una vista compuesta de los videos que son capturados por las cámaras del dispositivo local y el dispositivo remoto. Algunas modalidades pueden proporcionar otras vistas compuestas. Por ejemplo, la visualización de fondo puede presentar el video de una de las cámaras del dispositivo local, y las visualizaciones de inserción de primer plano más pequeñas pueden presentar los videos de la cámara frontal y trasera del dispositivo remoto. También, en algunos casos, la visualización PIP solamente incluye una visualización de video de fondo y una visualización de video de primer plano, ambas de las cuales provienen del dispositivo remoto. La manera de la visualización PIP o un modo de visualización omisión puede ser especificada por el usuario en algunas modalidades.
La segunda etapa 7340 ilustra el inicio de la operación de selección de video. En este ejemplo, esta operación se inicia al invocar un conjunto de artículos de Ul seleccionares para ser visualizados sobre la visualización PIP 7390. El conjunto de artículos de Ul seleccionabas presenta opciones para seleccionar el video remoto para la visualización. En algunas modalidades, el conjunto de artículos de Ul seleccionares puede ser invocado al seleccionar (por ejemplo, al tocar) cualquier área de visualización que está reproduciendo un video remoto sobre la Ul 7375. En otras modalidades, los artículos pueden ser invocados al seleccionar (por ejemplo, al tocar) cualquier parte de la Ul 7375. En lugar de o en conjunción con tales operaciones de invocación, algunas modalidades también permiten al usuario invocar el conjunto de artículos de Ul seleccionares a través de otras operaciones, tal como a través de diferentes operaciones en pantalla táctil o la utilización de unas o más entradas físicas del dispositivo.
La tercera etapa 7345 visualiza la Ul 7375 con el conjunto invocado de artículos de Ul seleccionares 7380 para seleccionar los videos remotos. En este ejemplo, el conjunto de artículos de Ul seleccionares 7380 en la forma de un menú emergente es visualizado en el área de visualización PIP 7390 y éste se sobrepone a la visualización PIP. El conjunto de artículos de Ul seleccionares 7380 (que puede ser implementado como botones seleccionares) incluye un artículo de Ul seleccionable de "Selección de R1" 7320 (por ejemplo, botón 7320), un artículo de Ul seleccionable de "Selección de R2" 7325 (por ejemplo, botón 7325), un artículo de Ul seleccionable de "Selección de Ambos" 7330 (por ejemplo, botón 7330), y un artículo de Ul seleccionable de "Cancelación" 7385 (por ejemplo, botón 7385). En este ejemplo, la selección del botón de "Selección de R1" 7320 causaría que la Ul 7375 exhiba solamente el video capturado por la cámara trasera del dispositivo remoto (que es presentado en la visualización de fondo 7315). La selección del botón de "Selección de R2" 7325 causaría que la Ul 7375 exhiba solamente el video capturado por la cámara frontal del dispositivo remoto (que es presentado en la visualización de inserción de primer plano 7310). La selección del botón de "Selección de Ambos" 7330 causaría que la Ul 7375 continúe visualizando ambos videos capturados por las cámaras frontal y trasera del dispositivo remoto. La selección del botón de "Cancelación" 7385 cancelaría la operación. En algunas modalidades, el video capturado por el dispositivo local no es afectado por la selección hecha sobre este menú.
La cuarta etapa 7350 ilustra la Ul 7375 después de que el usuario ha seleccionado el botón de "Selección de R1" 7320 (por ejemplo, mediante el toque suave sobre el botón 7320 con su dedo 7365). Esta selección es indicada por el resaltamiento del botón 7320 sobre la Ul 7375. Algunas modalidades utilizan diferentes visualizaciones de indicación (por ejemplo, resaltamiento del borde del artículo seleccionado o el texto del artículo seleccionado).
La quinta etapa 7355 ilustra la animación de la Ul 7375 después de que el usuario ha seleccionado el video de la R1 para visualización. En este ejemplo, la Ul 7375 remueve el área de visualización de inserción de primer plano indeseada 7310, al inclinarla fuera del borde derecho de la visualización PIP 7390 como es indicado por las flechas 7370. Otras modalidades utilizan diferentes animaciones para remover el área de visualización de inserción indeseada, tal como el sombreamiento o disolución de la inserción, moviéndola en una diferente dirección, o al simplemente removerla instantáneamente.
La sexta etapa 7360 visualiza la Ul 7375 durante la videoconferencia después de que se ha completado la operación de selección de video. El área de visualización de video 7310 no es por más tiempo visualizada sobre la Ul 7375. En esta etapa, la Ul 7375 presenta una nueva visualización PIP 7395 que incluye el área de visualización de video 7315 como la visualización principal de fondo y el área de visualización de video 7305 como la visualización de inserción.
En algunas modalidades, esta operación de selección de video también causará que el dispositivo remoto solamente visualice el video seleccionado, aunque en otras modalidades la operación no tiene efecto sobre el dispositivo remoto. En algunas modalidades, esta operación de selección de video causará que el dispositivo remoto detenga la transmisión del video indeseado al dispositivo local. De hecho, esta operación de selección de video causará que la cámara del dispositivo remoto detenga la captura de video indeseado en algunas modalidades. En algunas modalidades, estos efectos sobre el dispositivo remoto pueden ser omitidos por el usuario del dispositivo remoto.
El ejemplo anterior ilustra el caso donde la vista remota seleccionada es aquella que ya es visualizada en la visualización principal de fondo. En algunas modalidades, cuando el usuario selecciona la vista remota que es visualizada en una de las visualizaciones de inserción, la vista remota seleccionada es visualizada en la visualización principal de fondo. Algunas de tales modalidades utilizan una animación similar a aquella visualizada en la Figura 68 en este caso. Por otra parte, la selección del video(s) remoto puede causar cambios a las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble local tal como causar que el administrador de videoconferencia 1604 componga solamente el video(s) remoto seleccionado en la visualizacion compuesta en respuesta a la entrada del usuario. 8. Selección de la vista a vista local La Figura 74 ilustra la selección del video local en términos de seis etapas de operación 7435, 7440, 7445, 7450, 7455 y 7460 de una Ul 7475 visualizada sobre un dispositivo local 7400. La primera etapa 7435 ¡lustra la Ul 7475 con una visualización PIP inicial 7490 que está siendo presentada durante una videoconferencia con un usuario remoto de un dispositivo móvil que tiene por lo menos una cámara. La visualización PIP 7490 es similar como aquella en la primera etapa 7335 en la Figura 73, excepto que distinto a la Figura 73, la visualización de fondo 7415 presenta un video de un hombre que es capturado por una cámara de dispositivo remoto, la visualización de inserción de primer plano izquierda 7410 presenta un video de una persona con una guitarra que es capturado por la cámara trasera del dispositivo móvil local, y la visualización de inserción de primer plano derecha 7405 presenta un video de un hombre con un sombrero que es capturado por la cámara frontal del dispositivo móvil local 7400. Así, solamente un video remoto es visualizado, mientras que dos videos locales son visualizados.
La segunda etapa 7440 ilustra el inicio de la operación de selección de video. En este ejemplo, esta operación se inicia al invocar un conjunto de artículos de Ul seleccionabies para ser visualizados sobre la visualización PIP 7490 para seleccionar el video remoto para la visualización. En algunas modalidades, el conjunto de artículos de Ul seleccionabies puede ser invocado al seleccionar (por ejemplo, al tocar) cualquier área de visualización que está reproduciendo un video local sobre la visualización de Ul 7475. En otras modalidades, los artículos pueden ser invocados al seleccionar (por ejemplo, al tocar) cualquier parte sobre la visualización de Ul 7475. En lugar de, o en conjunción con tales las operaciones de invocación, algunas modalidades también permiten al usuario invocar el conjunto de artículos de Ul seleccionabies a través de otras operaciones, tal como a través de diferentes operaciones de pantalla táctil o la utilización de una o más entradas físicas del dispositivo.
La tercera etapa 7445 visualiza la Ul 7475 con el conjunto invocado de artículos de Ul seleccionares 7480 para seleccionar los videos locales. En este ejemplo, el conjunto de artículos de Ul seleccionabas 7480 en la forma de un menú emergente es visualizado en el área de visualización PIP 7490 que sobrepone a la visualización PIP. El conjunto de artículos de Ul seleccionares 7480 incluye un artículo de Ul seleccionare de "Selección de L1" 7420 (por ejemplo botón 7420), un artículo de Ul seleccionare de "Selección de L2" 7425 (por ejemplo, botón 7425), un artículo de Ul seleccionare de "Selección de Ambos" 7430 (por ejemplo, botón 7430), y un articulo de Ul seleccionare de "Cancelación" 7485 (por ejemplo, botón 7485) para cancelar la operación. En este ejemplo, la selección del botón de "Selección de L1" causaría que la Ul 7475 visualice solamente el video capturado por la cámara tercera del dispositivo local (que es presentado en la visualización de inserción de primer plano 7410). La selección del botón de "Selección de L2" 7425 causaría que la Ul 7475 visualice solamente el video capturado por la cámara frontal del dispositivo local (que es presentado en la visualización de inserción de primer plano 7405). La selección del botón de "Selección de Ambos" 7430 causaría que la Ul 7475 continúe visualizando ambos videos capturados por ambas cámaras sobre el dispositivo local y la selección del botón de "Cancelación" 7485 cancelaría la operación. En algunas modalidades, el video capturado por el dispositivo remoto no es afectado por la selección hecha a través de este menú.
La cuarta etapa 7450 ilustra la Ul 7475 después de que el usuario ha seleccionado el botón de "Selección de L2" 7425 (por ejemplo, mediante el toque suave sobre el botón 7425 con su 7465). Esta selección es indicada por el resaltamiento del botón 7425 sobre la visualización de Ul 7475. Algunas modalidades utilizan diferentes visualizaciones de indicación (por ejemplo, resaltamiento del borde del artículo seleccionado o el texto en el artículo seleccionado).
La quinta etapa 7455 visualiza la animación de la Ul 7475 después de que el usuario ha seleccionado el video desde L2 para la visualización. En este ejemplo, la Ul 7475 remueve la visualización de inserción de primer plano ¡ndeseado 7410, al inclinarlo fuera del borde izquierdo de la visualización PIP 7490 como es indicado por las flechas 7470. Otras modalidades utilizan diferentes animaciones para remover el área de visualización de inserción indeseada, tal como el sombreado o disolución de la inserción, moviéndola en una dirección diferente, o al removerla simplemente de manera instantánea.
La sexta etapa visualiza la Ul 7475 durante una videoconferencia después de que se ha completado la operación de selección de video. El área de visualización de video 7410 no está por más tiempo sobre la Ul 7425. En esta etapa, la Ul 7475 presenta una nueva visualización PIP 7495 que incluye la visualización de video remoto 7415 como la visualización principal de fondo y la visualización de video local 7405 como una visualización de inserción. En algunas modalidades, esta operación de selección de video solamente afecta a la visualización local, ya que ambas capturas de video todavía son transmitidas al dispositivo remoto. Otras modalidades detienen la captura de la cámara removida.
El ejemplo anterior ilustra el caso donde la vista local seleccionada es aquella que ya es visualizada en la visualización principal de fondo. En algunas modalidades, cuando el usuario selecciona la vista local que es visualizada en una de las visualizaciones de inserción, la vista local seleccionada es visualizada en la visualización de fondo principal. Algunas de tales modalidades utilizan una animación similar a aquella visualizada en la Figura 68 en este caso. Otras modalidades utilizarán una vista remota de inserción cuando la vista local en la visualización principal de fondo es removida.
Similar a la operación de selección de vista remota descrita en lo anterior con referencia a la Figura 73, la selección del video(s) local puede causar cambios en las operaciones de procesamiento de imagen del dispositivo móvil de cámara doble local tal como causar que el administrador de videoconferencia 1604 componga solamente el video(s) remoto seleccionado en la visualización compuesta en respuesta a la entrada del usuario. La selección del video(s) local también puede causar cambios en la operación de una cámara(s) del dispositivo local. Por ejemplo, algunas modalidades, causan que la cámara de un video no seleccionado detenga la transmisión del video indeseado al dispositivo remoto mientras que otras modalidades causan que la cámara detenga la captura del video indeseado. 9. Selección de ia vista local para transmisión Las sub-secciones anteriores ilustran modificaciones en conferencia a las visualizaciones de video. Algunas modalidades también permiten a un usuario de un dispositivo móvil de cámara doble seleccionar que cámara utilizar para una videoconferencia antes del inicio de la videoconferencia. La Figura 75 ilustra una selección de pre-conferencia de un video a partir de dos videos capturados por el dispositivo móvil de cámara doble del usuario para el uso para la videoconferencia.
La Figura 75 ilustra la selección del video local para el uso para la videoconferencia en términos de ocho etapas de operación de una Ul 7500. La primera etapa 7502 ilustra la Ul 7500 de un dispositivo móvil de cámara doble 7518 con una visualización PIP inicial 7542 que está siendo presentada después de que un usuario ha solicitado iniciar una videoconferencia con un usuario remoto de un dispositivo móvil.
Como es mostrado en la primera etapa 7502, la visualización PIP inicial 7542 incluye dos visualizaciones de video: una visualización principal de fondo 7520 y una visualización de inserción de primer plano 7522. La visualización principal de fondo 7520 capta la mayoría de la pantalla de visualización del dispositivo, mientras que la visualización de inserción de primer plano 7522 es más pequeña y se sobrepone a la visualización principal de fondo. En este ejemplo, la visualización de fondo 7520 presenta un video de una persona que sostiene una guitarra, que se supone que es el video capturado por la cámara trasera del dispositivo. La visualización de inserción de primer plano 7522 presenta un video de una persona con un sombrero, que en este ejemplo se supone que es el video capturado por la cámara frontal del dispositivo.
La visualización PIP inicial 7542 es solamente una manera de presentar una vista compuesta de los videos que son capturados por las cámaras del dispositivo local. Algunas modalidades pueden proporcionar otras vistas compuestas. Por ejemplo, la visualización de fondo puede presentar el video de la cámara frontal del dispositivo, y la visualización de inserción de primer plano más pequeña puede presentar el video de la cámara trasera del dispositivo. También, algunas modalidades permiten a los dos videos aparecer en la Ul 7500 en dos áreas de visualización de lado por lado (por ejemplo, ventanas de visualización izquierda y derecha, o ventajas de visualización superior y de fondo) o dos áreas de visualización diagonalmente alineadas. La manera de la visualización PIP o un modo de visualización de omisión de puede especificar por el usuario en algunas modalidades. Abajo de la visualización PIP está un artículo de Ul seleccionare 7540 etiquetado "Fin de Conferencia" (por ejemplo, un botón 7540) que permite al usuario finalizar la videoconferencia al seleccionar el artículo.
En la primera etapa 7502, el usuario del dispositivo móvil 7518 ha solicitado tener una videoconferencia con un usuario remoto y está esperando que responda el usuario remoto. Este período de espera es ilustrado por la notación "Vista Previa, esperando para respuesta ..." en el fondo de la visualización.
La segunda etapa 7504 ilustra el inicio de la operación de selección de video. En este ejemplo, la operación se inicia al invocar un conjunto de artículos de Ul seleccionables para ser visualizados sobre la visualización PIP 7542. El conjunto de artículos de Ul seleccionables presenta opciones para seleccionar el video local para transmitir al dispositivo remoto para la videoconferencia. En algunas modalidades, el conjunto de artículos de Ul seleccionables puede ser invocado al seleccionar (por ejemplo, al tocar) cualquier parte sobre la visualización de Ul 7500 durante el tiempo de pre-conferencia mientras que espera que responda el usuario remoto. En lugar de, o en conjunción con tales operaciones de invocación, algunas modalidades también permiten al usuario invocar el conjunto de artículos de Ul seleccionables a través de otras operaciones, tal como a través de diferentes operaciones de pantalla táctil o la utilización de una o más de otras entradas físicas del dispositivo.
La tercera etapa 7506 ilustra la Ul 7500 con el conjunto invocado de artículos de Ul seleccionables 7526 para que el usuario seleccione los videos. En este ejemplo, el conjunto de artículos de Ul seleccionables 7526 en la forma de un menú emergente se visualiza en el área de visualización PIP 7542 y se sobrepone a la visualización PIP. En este ejemplo, el conjunto de artículos de Ul seleccionables incluye: un artículo de "Transmisión de L1 " 7528 (por ejemplo, botón 7528), un artículo de "Transmisión de L2" 7530 (por ejemplo, botón 7530), un artículo de "Transmisión de Ambos" 7532 (por ejemplo, botón 7532) y un artículo de "Cancelación" 7534 (por ejemplo, botón 7534). En este ejemplo, la selección del botón de "Transmisión de L1 " 7528 causaría que Ul 7500 transmita solamente el video capturado por la cámara trasera del dispositivo al dispositivo remoto durante la videoconferencia. La selección del botón de "Transmisión de L2" 7530 causaría que la Ul 7500 transmita solamente el video capturado por la cámara frontal del dispositivo al dispositivo remoto durante la videoconferencia. La selección del botón de "Transmisión de Ambos" 7532 causaría que la Ul 7500 transmita ambos videos capturados por la cámara frontal y trasera del dispositivo al usuario para la videoconferencia, y la selección del botón de "Cancelación" 7534 cancelaría la operación.
La cuarta etapa 7508 ilustra la Ul 7500 después de que el usuario ha seleccionado el botón de "Transmisión de L1 " de 7528 (por ejemplo, mediante el toque suave sobre el botón 7528 con su dedo 7524). Esta selección es indicada por el resaltamiento del botón 7528 sobre el área de visualización PIP 7542. Algunas modalidades utilizan diferentes visualizaciones de indicación (por ejemplo, resaltamiento del borde del artículo seleccionado o el texto del artículo seleccionado).
La quinta etapa 7510 ilustra la animación de la Ul 7500 después de que el usuario ha seleccionado el video de la cámara trasera del video para transmitir al dispositivo remoto. En este ejemplo, la Ul 7500 remueve la visualización de inserción de primer plano indeseada 7522, al inclinarlo fuera del borde derecho de una visualización PIP 7542 como es indicado por las flechas 7536. En la sexta etapa 7512, la visualización de inserción 7522 se ha removido completamente del área de visualización PIP 7542. Diferentes modalidades utilizan diferentes animaciones para remover el área de visualización indeseada, tal como el sombreado o disolución del área de visualización, moviéndola en una dirección diferente, o simplemente removiéndola instantáneamente.
La séptima etapa 7514 ilustra la animación de la Ul 7500 después de que el usuario remoto ha aceptado la petición de videoconferencia. La aceptación de la petición de videoconferencia es resaltada por la remoción de la notación "Vista Previa, esperando para respuesta ..." sobre la visualización. En esta etapa, el área de visualización de fondo 7520, que es un video de la cámara trasera del dispositivo, gradualmente disminuye el tamaño a la esquina izquierda inferior del área de visualización PIP 7542, como es indicado por las flechas 7538. La visualización de fondo 7520 se contrae de modo que la Ul 7500 puede mostrar detrás el área de visualización 7520, un área de visualización 7544 que contiene el video desde una cámara del usuario remoto. Algunas modalidades contraen la cámara local a una ubicación diferente, utilizan una visualización compuesta inclinada de os dos videos visualizados, o hacen la vista remota del área de visualización de inserción de una visualización PIP.
La octava etapa 7516 muestra la Ul 7500 después de que se ha completado la operación de selección de video. La Ul 7500 presenta una nueva visualización PIP 7546 que incluye una visualización de inserción 7520 del video capturado del dispositivo local y una visualización de fondo 7544 del video transmitido del dispositivo remoto.
B. Ancho de Banda y Frecuencia de Cuadro En algunas modalidades, los ajustes al tamaño de las áreas de visualización de un dispositivo móvil remoto durante una videoconferencia pueden causar que un dispositivo móvil local reasigne el ancho de banda asignado a cada video capturado por las dos cámaras (es decir, una cámara frontal y una cámara trasera) del dispositivo móvil local. La Figura 76 ilustra dos ejemplos de tal reasignación de ancho de banda entre las dos cámaras del dispositivo local.
Cada uno de los ejemplos de la Figura 76 involucra un sensor de cámara trasera 7605 de un dispositivo local, un sensor de cámara frontal 7610 del dispositivo local, un módulo de videoconferencia 7615 del dispositivo local, y una Ul 7635 de un dispositivo móvil remoto 7620. El sensor de cámara trasera 7605 y el sensor de cámara frontal 7610 captura videos desde las cámaras trasera y frontal respectivas del dispositivo local. Los videos capturados se envían al módulo de videoconferencia 7615, que los procesa y los transmite al dispositivo remoto para la visualización en la Ul 7635.
En la Figura 76, la Ul 7635 del dispositivo remoto presenta una visualización compuesta. La visualización compuesta muestra videos que son capturados por la cámara frontal y trasera del dispositivo local. El video de la cámara frontal captura un árbol y un hombre con un sombrero, mientras que el video de la cámara trasera captura un paisaje montañoso. Como es ¡lustrado en la Figura 76, los dos videos pueden ser visualizados en la Ul 7635 en muchas maneras diferentes en base al arreglo de las áreas de visualizacion para visualizar los videos y también el tamaño de las áreas de visualizacion. En cada ejemplo, el módulo de videoconferencia 7615 inicialmente asigna el ancho de banda de salida total entre cada uno de videos de acuerdo con los tamaños relativos de las áreas de visualizacion en el dispositivo remoto. Específicamente, el video que es visualizado en un área de visualizacion más grande en la Ul 7635 se asigna con porción más grande del ancho de banda total, y el video que es visualizado en un área de visualizacion más pequeña en la Ul 7635 se asigna con una porción más pequeña del ancho de banda. En algunas modalidades, cuando los videos son visualizados en el área de visualización del mismo tamaño, el ancho de banda de salida total se asigna igualmente entre los dos videos.
La cantidad de ancho de banda asignada a cada uno de los dos videos puede impactar la manera en la cual se procesa cada video. Por ejemplo, un video puede requerir un ancho de banda más alto que lo que se asigna al video. En tal caso, la frecuencia de cuadro del video se ajusta o el tamaño de las imágenes del video se escalan hacia abajo con el fin de ajustar el ancho de banda inferior. La reducción de la frecuencia de cuadro de un video causa que el video aparezca "discontinuo", mientras que la escalación hacia abajo del tamaño de las imágenes del video reduce el área en la cual es visualizado el video. Por lo tanto, cuando a un video se asigna una cantidad de ancho de banda, algunas modalidades ajustan la frecuencia de cuadro del video, escalan hacia abajo el tamaño de las imágenes del video, o realiza una combinación de ambos con el fin de asegurar que el video puede ser transmitido dentro del ancho de banda asignado. Uno de habilidad en la técnica comprenderá que el ajuste de la frecuencia de cuadro y el tamaño de cuadro promedio puede variar para obtener una calidad de video total óptima, mientras que probaría ser segura que el video pueda ser transmitido dentro del ancho de banda asignado.
El Ejemplo (1 ) de la Figura 76 ilustra un escenario de la reasignación del ancho de banda en dos etapas de operación de la Ul 7635. La Ul 7635 del dispositivo remoto 7620 en la primera etapa 7670 presenta una visualización compuesta que contiene dos visualizaciones - una en la parte superior y la otra en la parte del fondo de la Ul 7635. En este ejemplo, el área de visualización superior 7625 muestra un video que está siendo capturado por la cámara frontal del dispositivo local, y el área de visualizacion de fondo 7630 muestra un video que está siendo capturado por la cámara trasera del dispositivo local. Como es ilustrado en la primera etapa 7670, el área de visualización superior 7625 es más grande que el área visualización de fondo 7630. Así, el video de la cámara frontal del dispositivo local se asigna con 80% del ancho de banda, y el video de la cámara trasera del dispositivo local se asigna con 20% del ancho de banda. Con el fin de asegurar que el video de la cámara trasera del dispositivo local pueda ser transmitido desde el dispositivo local al dispositivo remoto dentro del ancho de banda asignado, se ajustan la frecuencia de cuadro o tamaño de escalación del video, o ambos.
La segunda etapa 7675 ilustra la Ul 7635 después de que el usuario del dispositivo remoto ha incrementado el área de visualización de fondo tal que los tamaños del área de visualización superior 7625 y el área de visualización de fondo 7630 son aproximadamente los mismos. Como un resultado, cada uno de los videos se reasigna con 50% del ancho de banda total mediante el módulo de videoconferencia 7615.
El Ejemplo (2) de la Figura 76 ilustra otro escenario para la reasignación de ancho de banda en dos etapas de operación de la Ul 7635. En la primera etapa 7680 del Ejemplo (2), la Ul 7635 presenta una visualización PIP. La visualización PIP contiene dos visualizaciones: un área de de visualización principal de fondo 7650 y un área de visualización de inserción de primer plano 7655. El área de visualización de fondo 7650 toma una mayoría de la visualización PIP, mientras que el área de visualización de inserción de primer plano 7655 es más pequeña y se sobrepone al área de visualización principal de fondo 7650. En este ejemplo, el área de visualización de fondo 7650 presenta un video que está siendo capturado por la cámara frontal del dispositivo. El área de visualización de inserción 7655 presenta un video que está siendo capturado por la cámara frontal del dispositivo. Como es ilustrado en esta etapa, el área de visualización de fondo 7650 es más grande que el área de visualización de inserción 7655. Así, el video de la cámara frontal del dispositivo se asigna con 80% el ancho de banda, y el video de la cámara trasera del dispositivo se asigna con 20% del ancho de banda. Con el fin de asegurar que el video de la cámara trasera del dispositivo local se pueda transmitir desde el dispositivo local al dispositivo remoto con el ancho de banda asignado, se ajustan la frecuencia de cuadro y tamaño de escalación del video, o ambos.
La segunda etapa 7685 ilustra la Ul 7635 después de que el usuario del dispositivo remoto ha permutado las visualizaciones de los dos videos. Específicamente, el área de visualización de fondo 7660 ahora presenta un video que está siendo capturado por la cámara trasera del dispositivo, y el área de visualización de inserción 7665 ahora presenta un video que está siendo capturado por la cámara frontal del dispositivo. Puesto que los tamaños de las áreas de visualización para los dos videos han cambiado, el video de la cámara trasera del dispositivo se asigna con 80% del ancho de banda, y el video de la cámara frontal del dispositivo se asigna con 20% del ancho de banda. Como tal, la frecuencia de cuadro o tamaño de escalación, o ambos, del video de la cámara frontal del dispositivo local será reducido. Uno de habilidad ordinaria en la técnica comprenderá que las distribuciones de ancho de banda descritas en la Figura 76 son solamente ejemplos y otras técnicas para asignar el ancho de banda entre dos cámaras durante una videoconferencia son posibles. 1. Control de Frecuencia de Cuadro Similar a las operaciones de control de frecuencia de cuadro en conferencia descritas en lo anterior, algunas modalidades pueden desear ajustar por separado o mantener la frecuencia en la cual las imágenes de un video capturadas por cada cámara del dispositivo móvil de cámara doble son transmitidas a otro dispositivo en la videoconferencia. Algunas de estas modalidades proporcionan técnicas similares descritas en lo anterior. Por ejemplo, algunas modalidades controlan la frecuencia de cuadro de cada cámara al ajustar el VBI del módulo de sensor 415 de cada cámara. Otras modalidades proporcionan técnicas adicionales, también tal como supresión de cuadro, que puede ser realizada por el módulo de sensor 415 de cada cámara y/o la memoria intermedia de transmisión universal 3120, por ejemplo. 2. Control de Ancho de Banda Través de la Escalación Como es discutido en lo anterior, durante una videoconferencia entre un dispositivo móvil de cámara doble y otro dispositivo, una cantidad de datos de imagen que puede ser transmitida sobre una o más conexiones de red en una cantidad de tiempo particular (es decir, ancho de banda de conexión de red) puede ser limitada. Para maximizar y mantener el rendimiento de la conexión de red, diferentes modalidades del dispositivo móvil de cámara doble proporcionan diferentes maneras para controlar la cantidad de datos de imagen transmitidos sobre la conexión de red en la cantidad de tiempo particular. En algunas modalidades, el rendimiento es la tasa promedio del suministro de mensaje exitoso sobre un canal de comunicación (por ejemplo, una conexión de red).
Cuando se transmiten imágenes capturadas por ambas cámaras del dispositivo móvil de cámara doble, una manera tal redimensiona las imágenes de una o ambas cámaras del dispositivo móvil de cámara doble para controlar la cantidad de datos de imagen transmitidos sobre la conexión de red. Algunas modalidades escalan hacia abajo el tamaño de las imágenes capturadas por el dispositivo móvil de cámara doble para reducir la cantidad de datos de imagen transmitidos sobre la conexión de red, mientras que otras modalidades escalan hacia arriba el tamaño de las imágenes para incrementar la cantidad de datos de imagen transmitidos sobre la conexión de red.
Algunas modalidades mantienen la relación de altura a ancho de las imágenes cuando se escalan (es decir, escalación uniforme). Otras modalidades escalan las imágenes tal que la relación de altura a ancho de las imágenes escaladas son diferentes que las imágenes originales (es decir, escalación anamórfica).
Además, la escalación se puede realizar en diferentes etapas del proceso de procesamiento de imagen. La escalación de algunas modalidades se puede realizar por el sensor de cámara. En tales modalidades, el sensor de cámara puede suprimir hileras o columnas de datos de una imagen (es decir, valores de pixel). En algunas de tales modalidades, los datos de imagen restantes se interpolan para nivelar la apariencia de la imagen.
La escalación de otras modalidades se realiza por el módulo de escalador 455 de la CIPU 400. En algunas modalidades, la escalación se realiza por el administrador de videoconferencia 1604, como es descrito en lo anterior, y en otras modalidades, el escalador se realiza por el codificador. Como tal, diferentes modalidades del dispositivo móvil de cámara doble realizan la escalación de manera diferente. 3. Control de Velocidad de Transferencia de bit Algunas modalidades proporcionan un mecanismo diferente para administrar la velocidad de transferencia de bit en la cual los videos capturados por las cámaras de un dispositivo móvil de cámara doble son codificados. En algunas modalidades, el dispositivo móvil de cámara doble incluye un controlador de velocidad para cada cámara. Algunas modalidades proporcionan un esquema de administración de velocidad de transferencia de bit fija. Bajo este esquema, cada uno de los controladores de velocidad se ajusta a una velocidad de transferencia de bit fija de modo que la velocidad de transferencia de bit total de los videos de ambas cámaras sobre el dispositivo móvil es constante. Otras modalidades proporcionan un esquema de prioridad en el cual uno de los dos videos de las cámaras del dispositivo siempre obtendrá prioridad sobre el otro cuando se requiere que sea reducida la velocidad de transferencia de bit total.
En algunas modalidades, un módulo arbitrador administra los dos controladores de velocidad de las dos cámaras. La Figura 77 ilustra un ejemplo de tal módulo arbitrador. Como se muestra en la Figura 77, un controlador de velocidad 7700 ajusta la velocidad de transferencia de bit para la cámara frontal y un controlador de velocidad 7705 ajusta la velocidad de transferencia de bit de la cámara trasera. Los controladores de velocidad envían las imágenes desde los sensores de cámara al codificador 7715. Un módulo arbitrador 7710 se conecta a ambos controladores de velocidad y controla el ajuste de la velocidad de transferencia de bit para cada controlador de velocidad 7700 y 7705 cualquier número de maneras que en base a la información, tal como el ancho de banda disponible, tamaño de video para cada uno de los dos videos, etc, para asegurar que ambos videos puedan ser transmitidos a un dispositivo remoto bajo el ancho de banda disponible. Además, el arbitrador 7710 se puede configurar para implementar el esquema de velocidad fija o el esquema de prioridad mencionado en lo anterior.
En algunas otras modalidades, los dos controladores de velocidad para las dos cámaras pueden comunicarse entre sí. Bajo este esquema, los controladores de velocidad pueden intercambiar información de sus videos respectivos y ajustar las velocidades de transferencia de bit de los videos por consiguiente. Se proporcionan varios ejemplos de mecanismos de administración de velocidad del controlador. Sin embargo, muchos de otros mecanismos diferentes son posibles. 4. Procesamiento de Video Algunas modalidades del dispositivo móvil de cámara doble procesan las imágenes capturadas por ambas cámaras del dispositivo móvil de cámara doble de manera diferente en diferentes situaciones. Por ejemplo, cuando se procesa una imagen compuesta PIP que incluye imágenes capturadas por ambas cámaras del dispositivo móvil de cámara doble, algunas modalidades selectivamente realizan el proceso TNR 2000 sobre la imagen compuesta PIP. Algunas de estas modalidades realizan el proceso TNR 2000 sobre solamente la imagen principal en la imagen compuesta PIP mientras que otra de estas modalidades realizan el proceso TNR 2000 en solamente la imagen de inserción en la imagen compuesta PIP.
Como otro ejemplo de procesamiento de imágenes capturadas por ambas cámaras del dispositivo móvil, algunas modalidades escalan las imágenes capturadas por ambas cámaras del dispositivo móvil de cámara doble en base a varios cambios a la videoconferencia tales como ajustes del usuario a las áreas de visualización (por ejemplo, agrandamiento de inserción de una visualización PIP, definición de una región de interés en un video visualizada, permutación principal/ inserción de una visualización PIP, etc) de modo que la visualización de los videos, cambia al ancho de banda disponible total, etc. Algunas de estas modalidades escalan las imágenes en las maneras descritas en lo anterior. Esto es, las imágenes pueden ser escaladas por el codificador 1655, el administrador de videoconferencia 1604, el módulo de escalador 455, y los sensores de cámara (es decir, 405a o 405b) mediante los cuales se capturaron las imágenes, por ejemplo. 5. Codificación Como es mencionado en lo anterior, algunas modalidades transmiten el video desde ambas cámaras de un dispositivo móvil de cámara doble. Como tal, estas modalidades pueden codificar los videos capturados por ambas cámaras para la transmisión a un dispositivo remoto durante una videoconferencia. Diferentes modalidades proporcionan diferentes maneras para codificar los videos para la transmisión. La Figura 78 ilustra un procedimiento que utiliza un multiplexor (MUX) 7815, un módulo de codificador 7825, un memoria intermedia 7830 y un módulo de combinación 7835 para procesar los videos para transmisión.
En base a la señal de selección, el MUX 7815 toma una señal de entrada y suministra la señal de entrada seleccionada al codificador 7825. Por ejemplo, si la señal de selección indica que el MUX 7815 toma la señal de entrada del C1 , el MUX 7815 selecciona esa señal de entrada y la suministra. La señal de selección se puede proporcionar de muchas maneras, tal como a través de instrucciones del administrador de videoconferencia 1604. A través del MUX 7815, el codificador 7825 alternativamente codifica las imágenes recibidas desde el MUX 7815 en un formato de flujo de bit y almacena las imágenes codificadas en la memoria intermedia 7830. El módulo de combinación 7835 combina (es decir, multiplexa) uno o más flujos de bit almacenados en la memoria intermedia 7830 y suministra un solo flujo de bit.
La operación de este procedimiento de codificación ahora será descrita en términos de tres etapas 7860, 7865 y 7870. En la primera etapa 7860, el MUX 7815 se configura para recibir y suministrar las imágenes 7805 capturadas por la cámara C1 al codificador 7825 para la codificación. El codificador 7825 codifica las imágenes recibidas y genera un flujo de bit 7850, que luego se almacena en la memoria intermedia 7830. La segunda etapa 7865 es similar a la primera etapa 7860, excepto que el MUX 7815 se configura para recibir y suministrar las imágenes 7810 capturadas por la cámara C2 al codificador 7825 para la codificación. Nuevamente, el codificador codifica las imágenes recibidas y genera un flujo de bit 7855, que se almacena en la memoria intermedia 7830. En la tercera etapa 7870, el módulo de combinación 7835 recupera los flujos de bit 7850 y 7855 desde la memoria intermedia 7830 y los combina en un flujo de bit para la transmisión al dispositivo remoto.
La Figura 79 ilustra otro procedimiento para codificar dos videos de un dispositivo móvil de cámara doble para la transmisión a un dispositivo remoto durante una videoconferencia. En este procedimiento, un cuadro de video (es decir, una imagen) de una primera cámara del dispositivo móvil y otro cuadro de video de una segunda cámara del dispositivo móvil se componen en cuadro de video antes de que el cuadro de video compuesto sea codificado en un flujo de bit que se envía al dispositivo remoto. Como es mostrado en la Figura 79, este procedimiento incluye un componedor 7915, un memoria intermedia 7920, y un codificador 7925.
Como es mostrado, el componedor 7915 compone una imagen 7905 de la primera cámara y una imagen 7910 de la segunda cámara para formar una imagen compuesta 7955. Diferentes modalidades componen las imágenes 7905 y 7910 de manera diferente. Por ejemplo, el componedor 7915 de algunas modalidades puede componer las imágenes al alinear las dos imágenes adyacentes una a la otra como se muestra en la Figura 80. Las imágenes compuestas 8030 y 8035 ilustran dos imágenes compuestas de ejemplo utilizando esta técnica. En la imagen compuesta 8030, la imagen 7905 de la primera cámara se alinea en la parte superior de la imagen 7910 de la segunda cámara. Mientras tanto, la imagen compuesta 8035 muestra la imagen 7905 alineada a la izquierda de la imagen 7910.
En algunas otras modalidades, el componedor 7915 puede componer las dos imágenes 7905 y 7910 al sobreponer las dos imágenes 7905 y 7910 sobre la parte superior de una imagen de fondo más grande. Una imagen compuesta 8040 de la Figura 80 ilustra una imagen compuesta de ejemplo utilizando esta técnica. En la imagen compuesta 8040, las imágenes 7905 y 7910 se alinean diagonalmente y se sobreponen sobre la imagen de blanco (es decir, la imagen 7905 se ubica en la esquina izquierda superior y la imagen 7910 se ubica en la esquina derecha de fondo de la imagen de fondo). En algunas modalidades, los sensores de cámara pueden ser de tamaños diferentes y así capturar imágenes con diferentes resoluciones de pixel. En tales modalidades, el componedor 7915 puede componer las imágenes 7905 y 7910 de una manera similar como es ilustrado por la imagen compuesta 8045 de la Figura 80. Después de componer las dos imágenes, el componedor 7915 almacena las imágenes compuestas en la memoria intermedia 7920. El codificador 7925 recupera las imágenes compuestas desde la memoria intermedia 7920, codifica las imágenes compuestas en un flujo de bit, y la envía al dispositivo remoto de la videoconferencia.
Las operaciones ahora serán descritas por referencia al componedor 7915, la memoria intermedia 7920, y el codificador 7925 ilustrados en la Figura 79. Primero, una primera cámara envía una imagen 7905 como parte de una secuencia de imágenes en un video al componedor 7915. Al mismo tiempo, una segunda cámara envía otra imagen 7910 como parte de una secuencia de imágenes en un video al componedor 7915. El componedor 7915 luego compone las imágenes 7905 y 7910 para formar una imagen compuesta 7955 en las maneras que se describieron en lo anterior. Enseguida, el componedor 7915 envía la imagen compuesta 7955 a la memoria intermedia 7920. La memoria intermedia 7920 luego almacena las imágenes compuestas antes de enviarlas al codificador 7925. Finalmente, el codificador 7925 codifica las imágenes compuestas en una difusión o corriente de bit y las envía al dispositivo remoto de la videoconferencia.
La Figura 81 ilustra todavía otro procedimiento para codificar dos videos de un dispositivo móvil de cámara doble para la transmisión a un dispositivo remoto durante una videoconferencia. En este procedimiento, los dos videos del dispositivo se visualizan en una visualización compuesta, un disparo de pantalla de la visualización compuesta se toma y se codifica en un flujo de bit para enviar al dispositivo remoto. Como es mostrado en la Figura 81 , este procedimiento incluye un codificador 8115. En algunas modalidades, el codificador 81 15 codifica las imágenes compuestas y las envía al dispositivo remoto.
Las operaciones ahora serán descritas por referencia al codificador 8115 ilustrado en la Figura 81. Primero, los videos de las dos cámaras de un dispositivo móvil de cámara doble son visualizados en la pantalla del dispositivo en una visualización compuesta. La visualización compuesta puede presentar los videos en cualquier manera. Por ejemplo, la visualización compuesta en algunas modalidades puede presentar los dos videos en una visualización PIP tal como la visualización PIP 8105 ilustrada en la Figura 81. En otras modalidades, la visualización compuesta puede presentar los dos videos en dos áreas de visualización de lado por lado o dos áreas de visualización diagonalmente alineadas. Los disparos de pantalla de la visualización PIP 8105, tal como una imagen 8110, son tomados y enviados al codificador 81 15. El codificador luego codifica la secuencia de disparos de pantalla en un flujo de bit 8120 antes de enviarlo al dispositivo remoto de la videoconferencia. Mientras que varios procedimientos diferentes para codificar dos videos son descritos en lo anterior, otros procedimientos son todavía posibles. 6. Descodificación Algunas modalidades del dispositivo móvil de cámara doble pueden recibir flujos de bit codificados por los procedimientos descritos en lo anterior por referencia a las Figuras 78-81. En tales modalidades, el dispositivo móvil de cámara doble puede recibir (por ejemplo, a través del canal de control de videoconferencia) información que indica el procedimiento utilizado para codificar los videos. La Figura 82 ilustra un procedimiento para descodificar los flujos de bit de dos videos recibidos desde otro dispositivo a través de una red de comunicaciones para la visualización sobre el dispositivo móvil de cámara doble durante una videoconferencia. Específicamente, este procedimiento se utiliza para descodificar flujos de bit codificados por el procedimiento de codificación descrito por referencia a la Figura 78, en lo anterior.
Como es mostrado en la Figura 82, este procedimiento utiliza un módulo de separación 8235, memorias intermedias 8230 y 8290, y un módulo de descodificador 8225. El módulo de separación 8235 rompe (es decir, desmultiplexa) los flujos de bit en una o más flujos de bit y almacena los flujos de bit en la memoria intermedia 8230. El descodificador 8225 recupera los flujos de bit codificadas, las descodifica para generar videos y luego almacena los videos en la memoria intermedia 8290.
La operación de este procedimiento ahora será descrita por referencia al módulo de separación 8235, las memorias intermedias 8230 y 8290, y el módulo de descodificador 8225 ilustrado en la Figura 82. Primero, el dispositivo móvil de cámara doble recibe el flujo de bit 7845 (por ejemplo, en el administrador de red 1614) a través de la red de comunicaciones desde el otro dispositivo en la videoconferencia. El módulo de separación 8235 rompe el flujo de bit recibido en dos flujos de bit 8255 y 8260 puesto que el flujo de bit recibido es un flujo de bit multiplexado de dos flujos de bit. Cada flujo de bit codificado representa los datos de video capturados desde una de entre las dos cámaras del dispositivo. Luego, el módulo de separación 8235 almacena los flujos de bit 8255 y 8260 en la memoria intermedia 8230.
Después, el descodificador 8225 recupera un flujo de bit 8250, que es una de los dos flujos de bit 8255 y 8260, de la memoria intermedia 8230, el descodificador 8225 descodifica el flujo de bit 8250 para generar el video 8280, y almacena el video 8280 en la memoria intermedia 8290. El descodificador 8225 también descodifica el otro de los flujos de bit 8255 y 8260 y almacena el video generado en la memoria intermedia 8290. Ahora, ambos videos pueden ser recuperados de la memoria intermedia 8290 y almacenados o visualizados sobre el dispositivo móvil de cámara doble.
La Figura 83 ilustra un procedimiento para descodificar flujos de bit que son codificados por el procedimiento descrito por referencia a la Figura 79. Como es mostrado en la Figura 83, este procedimiento incluye un descodificador 8325, un memoria intermedia 8320, y un descomponedor 8315.
En algunas modalidades, el descodificador 8325 recibe un flujo de bit codificado por el procedimiento ilustrado en la Figura 79 y descodifica un flujo de bit en una o más imágenes compuestas, que luego son almacenadas en la memoria intermedia 8320. El descomponedor 8315 extrae las dos imágenes desde cada imagen compuesta. Con el fin de extraer las dos imágenes desde las imágenes compuestas, el descomponedor 8315 también recibe información que indica la ubicación de cada imagen dentro de la imagen compuesta (por ejemplo, la información recibida a través del canal de control de comunicación de videoconferencia desde dispositivo en la videoconferencia que compuso y que codificó las imágenes).
La operación de este procedimiento ahora será descrita por referencia al descodificador 8325, la memoria intermedia 8320, y el descomponedor 8315 ilustrado en la Figura 83. Primero, el descodificador 8325 recibe un flujo de bit de video, tal como uno creado por el procedimiento descrito por referencia a la Figura 79, desde otro dispositivo móvil de una videoconferencia. El descodificador 8325 descodifica el flujo de bit en una o más imágenes compuestas, que incluye la imagen compuesta 7955 y las almacena a la memoria intermedia 8320. La memoria intermedia 8320 luego almacena las imágenes compuestas antes de enviarlas al descomponedor 8315. Cuando el descomponedor recibe la imagen compuesta 7955 desde la memoria intermedia 8320, este desintegra la imagen compuesta 7955 en las dos imágenes 7905 y 7910, que son idénticas a las imágenes 7905 y 7910 en la Figura 79.
Cuando un flujo de bit se recibe desde un sistema tal como el descrito en la Figura 81, un descodificador tal como el descodificador 8325 en la Figura 83 descodifica el flujo de bit en una secuencia de disparos de pantalla. La secuencia de disparos de pantalla se visualiza sobre la pantalla del dispositivo como un video sin procesamiento adicional.
VI. MÚLTIPLES FUENTES Como es descrito en lo anterior, los videos pueden ser capturados por ambas cámaras del dispositivo móvil de cámara doble y transmitidos a otro dispositivo en una videoconferencia. Antes que transmitir el video capturado desde ambas cámaras del dispositivo móvil de cámara doble, algunas modalidades pueden transmitir diferente contenido de medios o cualquier contenido visualizado sobre el dispositivo móvil de cámara doble junto con los videos capturados desde una cámara del dispositivo móvil de cámara doble. En otras palabras, estas modalidades puede transmitir el contenido de un número de fuentes junto con el video capturado por las cámaras del dispositivo móvil de cámara doble.
La Figura 84 conceptualmente ilustra otra arquitectura de software para un módulo de videoconferencia y procesamiento de un dispositivo móvil de cámara doble de algunas modalidades. El módulo de videoconferencia y procesamiento de la Figura 84 es similar al módulo de videoconferencia y procesamiento 1600 de la Figura 16, excepto que el módulo de videoconferencia y procesamiento incluye un controlador de visualización 8485 y un almacenamiento 8475, y el módulo de intercambio de medios 1620 incluye un módulo de fuente de medios 8470 y un módulo de captura de pantalla 8480.
El módulo de fuente de medios 8470 de algunas modalidades dirige el contenido de medios entre el módulo de videoconferencia 8402 y el almacenamiento 8475. Ejemplos del contenido de medios incluyen videos, imágenes, documentos y música. Otras modalidades almacenan otros tipos de contenido de medios en el almacenamiento 8475. El almacenamiento de 8475 de algunas modalidades es almacenamiento interno (por ejemplo, RAM), mientras que el almacenamiento 8475 de otras modalidades es almacenamiento externo (por ejemplo, una tarjeta flash compacta (CF), una tarjeta digital segura (SD), etc.).
En algunas modalidades, el módulo de captura de pantalla 8480 dirige las imágenes del contenido visualizado sobre la visualización de dispositivo móvil de cámara doble a través del controlador de visual ización 8485. En algunas modalidades, el controlador de visualización 8485 es responsable para capturar el contenido sobre la visualización y convertir el contenido en una imagen. Diferentes modalidades capturan diferente contenido visualizado sobre la visualización. Por ejemplo, algunas modalidades capturan todo el contenido visualizado sobre la visualización. Otras modalidades capturan un área de visualización particular de la visualización (por ejemplo, un área de visualización de una ventana activa actual, un área de visualización de una visualización PIP, etc.).
Algunas operaciones de ejemplo del módulo de videoconferencia y procesamiento ahora serán descritas por referencia a la Figura 84. Para transmitir el contenido de medios junto con el video capturado desde una cámara del dispositivo móvil de cámara doble, el módulo de videoconferencia 8402 de algunas modalidades realiza las mismas operaciones como el módulo de videoconferencia 1602 descrito en lo anterior en la Figura 16 excepto que en lugar de recuperar las imágenes desde la CIPU 1650, el administrador de videoconferencia 1604 recupera el contenido de medios desde el almacenamiento 8475 a través del módulo de fuente de medios 8470. Para transmitir las imágenes del contenido visualizadas sobre la visualización del dispositivo móvil de cámara doble, algunas modalidades del administrador de videoconferencia 1604 recuperan las imágenes del contenido visualizado sobre la visualización del dispositivo móvil de cámara doble a través del controlador de visualización 8485. Algunas modalidades realizan un procesamiento similar para el contenido de medios o imágenes de contenido visualizadas sobre la visualización (por ejemplo, corrección de perspectiva, redimensionamiento, etc) como es realizado en las imágenes recuperadas de la CIPU 1650, mientras que otras modalidades no realizan algún procesamiento en todo.
La discusión anterior describe varios ejemplos para transmitir el contenido desde varias fuentes junto con el video capturado por una cámara del dispositivo móvil de cámara doble. Sin embargo, otras modalidades pueden transmitir otros diferentes tipos de contenido. Por ejemplo, la videoconferencia involucra múltiples participantes, algunas modalidades transmiten video recibido desde un dispositivo en la videoconferencia y el video capturado por una cámara del dispositivo móvil de cámara doble a otro dispositivo. Como tal, cualquier número de diferentes tipos de contenido de cualquier número de fuentes se pueden transmitir junto con el video capturado por una cámara del dispositivo móvil de cámara doble.
VII. VIDEOCONFERENCIA CON MÚLTIPLES PARTICIPANTES Las secciones anteriores que se relacionan a la videoconferencia describen videoconferencias con dos participantes. Sin embargo, también es posible la videoconferencia con múltiples participantes (es decir, tres o más participantes) con los dispositivos móviles de algunas modalidades. En algunas modalidades, todos los participantes en una videoconferencia de múltiples participantes pueden verse y oírse entre sí. Otras modalidades proporcionan una videoconferencia de radiodifusión de múltiples participantes en la cual un participante (por ejemplo, el radiodifusor) puede ver y oír a todos los otros participantes y todos los otros participantes pueden ver y oír el radiodifusor, pero los otros participantes no pueden verse u oírse entre sí (a menos que sea autorizado por el radiodifusor, por ejemplo).
A. Interfaz de Usuario para la Videoconferencia de Múltiples Participantes Durante una videoconferencia de múltiples participantes, algunas modalidades proporcionan una variedad de diferentes de Ul para la visualización de los participantes en la videoconferencia y la selección de participante(s) particular para verlo. Por ejemplo, algunas modalidades del dispositivo móvil proporcionan una Ul que simultáneamente visualiza todos los participantes de una videoconferencia de múltiples participantes y permite a un usuario del dispositivo móvil seleccionar uno de los participantes para verse (por ejemplo, al agrandar la imagen del participante seleccionado). La Figura 85 ilustra un ejemplo de tal Ul.
Esta figura ¡lustra una secuencia de operaciones para la visualización simultánea de todos los participantes de la videoconferencia de múltiples participantes y la selección de uno de los participantes para ver en una Ul 8530 de un dispositivo móvil 8500 por referencia a cinco diferentes etapas 8505, 8510, 8515, 8520 y 8525 de la Ul 8530. La primera etapa 8505 ilustra la Ul 8530 después de una videoconferencia de múltiples participantes entre otros usuarios de otros dispositivos que se ha establecido. Como es mostrado, la Ul 8530 incluye una visualización compuesta 8535 y un área de visualización 1155. La visualización compuesta 85.5 incluye cuatro áreas de visualización 8565, 8570, 8575 y 8580 que visualizan las imágenes capturadas por las cámaras de los participantes de la videoconferencia de múltiples participantes. En este ejemplo, el área de visualización 8565 muestra a un usuario del dispositivo móvil 8500 (es decir, el área de visualización 8565 visualiza las imágenes capturadas por la cámara frontal del dispositivo móvil 8500). El área de visualización 1155 es la misma como el área de visualización 1155 previamente descrito en lo anterior en la Figura 12.
La segunda etapa 8510 muestra el usuario del dispositivo móvil 8500 iniciando una operación de selección de participantes al seleccionar una de las áreas de visualización del área de visualización compuesta 8530. En particular, la segunda etapa 8510 muestra al usuario seleccionando el área de visualización 8570 (por ejemplo, mediante el toque suave con un dedo 8550 sobre el área de visualización 8570).
La tercera etapa 8515 de la Ul 8530 ilustra una visualización compuesta 8555 después de que se completa la operación de selección del participante. Algunas modalidades proporcionan una animación (no mostrada) para visualizar una transición entre la segunda etapa 8510 y la tercera etapa 8515. La visualización compuesta 8555 incluye una visualización PIP 8560 que muestra el área de visualización del participante seleccionado en la segunda etapa 8510 (es decir, área de visualización 8570) como el área de visualización de fondo y el área de visualización 8565 del usuario como el área de visualización de inserción de la visualización PIP 8560. En este ejemplo, la visualización PIP 8560 muestra la imagen del área de visualización seleccionada 8570 horizontalmente estirada para ajustarse a una orientación de paisaje. En algunas modalidades, la imagen no estirada y la imagen del área de visualización seleccionada mantiene su orientación de retrato (es decir, el espacio extra en cada lado del área de visualización de fondo se llena con barras negras, como es mostrado en la Figura 36). Además, la visualización compuesta 8555 también incluye una visualización compuesta 8585 que muestra las imágenes escaladas hacia abajo de las dos áreas de visualización no seleccionadas 8575 y 8580.
La cuarta etapa 8520 muestra al usuario del dispositivo móvil 8500 iniciando una operación de des-selección del participante al seleccionar la visualización PIP 8560 (por ejemplo, mediante el toque suave con un dedo 8550 sobre la visualización PIP 8560). La quinta etapa 8525 ilustra la visualización compuesta 8535 después de la terminación de la operación de desselección del participante.
La Figura 85 muestra una secuencia de ejemplo de operaciones para visualización de manera simultánea de todos los participantes de una videoconferencia de múltiples participantes, para realizar una operación de selección de participante y para realizar una operación de des-selección del participante. Otras secuencias de operaciones son posibles. Por ejemplo, después de la tercera etapa 8515, en lugar de iniciar la operación de des-selección del participante, el usuario puede seleccionar una de las áreas de visualización no seleccionadas visualizadas en la visualización compuesta 8585 para permutar el área de visualización recientemente seleccionada en el área de visualización 8585 con el área de visualización de fondo (es decir, el área de visualización previamente seleccionada) de la visualización PIP 8560. Como tal, el usuario puede permutar las áreas de visualización en el área de visualización 8585 con el área de visualización de fondo de la visualización PIP 8560 en cualquier tiempo y cualquier número de número de tiempos durante la videoconferencia de múltiples participantes. También en cualquier tiempo durante la videoconferencia de múltiples participantes, el usuario puede realizar la operación de des-selección del participante para retornar a la visualización compuesta 8535. Por otra parte, diferentes modalidades permiten al usuario seleccionar un participante particular en diferentes maneras, tal como al activar una conmutación sobre el dispositivo móvil 8500, al dar mandos de voz, etcétera.
Algunas modalidades proporcionan técnicas para seleccionar automáticamente participantes en base a la detección de conversación, por ejemplo. En tales modalidades, cuando uno de los participantes habla, el área de visualización de ese participante se selecciona automáticamente como el área de visualización de fondo de la visualización PIP 8560. Cuando un participante diferente habla, el área de visualización de ese participante se selecciona automáticamente como el área de visualización de fondo de la visualización PIP 8560. En algunas modalidades, cuando ninguno de los participantes de la videoconferencia de múltiples participantes está hablando, la visualización visualiza la visualización compuesta 8535 después de una duración de silencio definida (por ejemplo, 3 segundos). En algunas modalidades, cuando el usuario del dispositivo móvil 8500 habla, nada sucede sobre la Ul del dispositivo móvil 8500.
La Figura 86 ilustra otra secuencia de operaciones de ejemplo para la visualización simultánea de todos los participantes de la videoconferencia de múltiples participantes y la selección uno de los participantes para verlo. La Figura 86 ilustra esta operación en una Ul 8645 del dispositivo móvil 8500 por referencia a siete diferentes etapas 8505, 8605, 8610, 8615, 8620, 8625 y 8630 de la Ul 8645. La primera etapa 8505 es la misma como la primera etapa 8505 ilustrada en la Figura 85, ya que ilustra la Ul 8645 después de una videoconferencia de múltiples participantes entre tres de otros usuarios de otros dispositivos que se ha establecido.
La segunda etapa 8605 ilustra el usuario del dispositivo móvil 8500 iniciando una operación de selección de participante, al seleccionar del área de visualización 8570 (por ejemplo, al colocar dos dedos sobre el área de visualización 8570). La tercera etapa 8610 muestra una etapa de transición de la operación de selección de participante. En esta etapa, el usuario está arrastrando los dos dedos alejándose entre sí mientras que causa que el área de visualización 8570 llegue a ser más grande y llene el área de visualización de lo que se utiliza en la visualización compuesta 8535. Este ejemplo muestra el área de visualización 8570 que es seleccionada, pero cualquiera de las otras áreas de visualización 8565, 8575 y 8580 se pueden seleccionar. En algunas modalidades, el usuario del dispositivo móvil 8500 no se deja seleccionar el área de visualización del usuario (es decir, el área de visualización 8565 en este ejemplo).
La cuarta etapa 8615 de la Ul 8645 muestra una visualización PIP 8635 de la Ul 8645 después de que se completa la operación de selección de participante. Algunas modalidades requieren que el usuario continúe arrastrando los dedos lejos entre sí hasta que el área de visualización 8570 llena el área de visualización de fondo 8640 de la visualización PIP 8635, mientras que otras modalidades solamente requieren que la operación de arrastre del usuario sea más grande que una cantidad de umbral particular (por ejemplo, más larga que una distancia particular o más larga que una duración de tiempo particular) antes de que el usuario remueva los dedos. Cuando la operación de arrastre del usuario cumple o excede la cantidad de umbral determinado, la Ul 8645 continúa el agrandamiento del área de visualización 8570 hasta que llena el área de visualización de fondo 8640 de la visualización PIP 8635. De otra manera, la operación de selección de participante no se completa y la Ul 8645 se revierte nuevamente a la visualización compuesta 8535. Como es mostrado, el área de visualización seleccionada (es decir, área de visualización 8570) es el área de visualización de fondo 8640 de la visualización PIP 8635 y el área de visualización 8565 del usuario es el área de visualización de inserción de la visualización PIP 8635. Algunas modalidades proporcionan una animación (no mostrada) para visualizar una transición entre la tercera etapa 8610 y la cuarta etapa 8615.
La quinta etapa 8620 ilustra al usuario del dispositivo móvil 8500 iniciando una operación de des-selección de participante, al seleccionar del área de visualización de fondo 8640 de la visualización PIP 8635 (por ejemplo, al colocar de dos dedos sobre el área de visualización de fondo 8640). La sexta etapa 8625 muestra una etapa de transición de la operación de desselección de participante. La etapa ilustra el arrastre de los dedos del usuario uno hacia el otro para contraer el área de visualización de lo que se utiliza que es área de visualización de fondo 8640 de la visualización PIP 8635. Similar a la operación descrita en la tercera etapa 8610, algunas modalidades requieren que la operación de arrastre del usuario sea más grande que una cantidad de umbral particular (por ejemplo, más larga que una distancia particular o más larga que una duración particular de tiempo) antes de que el usuario remueva los dedos. También, la operación de des-selección de participante no es completa y la Ul 8645 se revierte nuevamente a la visualización PIP 8635. La séptima etapa 8630 de la Ul 8645 muestra la visualización compuesta 8535 después de la terminación de la operación de des-selección de participante.
La Figura 86 ilustra otra secuencia de operaciones de ejemplo para visualizar simultáneamente todos los participantes de una videoconferencia de múltiples participantes, para realizar una operación de selección de participante, y para realizar una operación de des-selección de participante. Sin embargo, algunas modalidades permiten al usuario del dispositivo móvil 8500 realizar repetidamente una operación de selección de participante y operación de des-selección de participante. La Figura 87 ilustra una modalidad de tal clase.
Específicamente, la Figura 87 ilustra una secuencia de ejemplo para realizar una operación de selección de participante y una operación de des-selección de participante múltiples veces en una Ul 8730 por referencia a siete diferentes etapas 8505, 8705, 8615, 8710, 8715, 8720 y 8725 de la Ul 8730. La primera etapa 8505 es la misma como la primera etapa 8505 de las Figuras 85 y 86, mencionadas en lo anterior. La segunda etapa 8705 es similar a la segunda etapa 8605 de la Figura 86 excepto que el usuario selecciona el área de visualización 8570 al tocar suavemente el área de visualización 8570 una vez (en lugar de colocar los dos dedos sobre el área de visualización 8570). La tercera etapa 8615 es la misma como la cuarta etapa 8615 de la Figura 86, ya que esta muestra la visualización PIP 8635 después de la terminación de la operación de selección de participante. La cuarta etapa 8710 es similar a la quinta etapa 8620 de la Figura 86, excepto que el usuario selecciona el área de visualización de fondo 8640 de la visualización PIP 8645 mediante el toque suave del área de visualización de fondo 8640 una vez (en lugar de colocar los dos dedos sobre el área de visualización de fondo 8640).
La quinta etapa 8715 es la misma como la séptima etapa 8630 de la Figura 86, puesto que muestra la visualización compuesta 8535 después de que se completa la operación de des-selección de participante. La sexta etapa 8720 se muestra similar a la segunda etapa 8510, excepto que la operación de selección de participante se realiza sobre el área de visualización 8575. De manera similar, la séptima etapa 8725 es similar a la tercera etapa 8705 ya que muestra el área de visualización seleccionada (es decir, área de visualización 8575) como el área de visualización de fondo 8640 de la visualización PIP 8635. Aunque la Figura 87 no solamente muestra un poco selección de participante y operaciones de des-selección de participante, cualquier número de tales operaciones se pueden realizar durante la videoconferencia de múltiples participantes.
Por otra parte, algunas modalidades proporcionan Uls que pueden visualizar números de manera diferente de participantes durante la videoconferencia. Por ejemplo, la Ul de algunas modalidades visualiza solamente algunos de los participantes de la videoconferencia de múltiples participantes cuando el dispositivo móvil se mantiene en una posición vertical (es decir, una orientación de retrato) y visualiza participantes adicionales cuando el dispositivo móvil se mantiene en una posición lateral (es decir, una orientación de paisaje). Otras modalidades visualizan todos los participantes cuando el dispositivo móvil se mantiene en la posición lateral. Además, algunas modalidades proporcionan una animación para indicar la transición entre diferentes posiciones y/u orientación del dispositivo móvil que son similares a aquellas ilustradas en las Figuras 34, 35, 36 y 37. También son posibles otras diferentes animaciones.
Como otro ejemplo de una Ul que visualiza diferentes números de participantes durante la videoconferencia, algunas modalidades permiten al usuario del dispositivo móvil seleccionar múltiples participantes para verse simultáneamente durante la videoconferencia. Con referencia a la primera etapa 8505 de la Figura 85 para propósitos de explicación, algunas de estas modalidades permiten al usuario del dispositivo móvil 8500 seleccionar dos o más de las áreas de visualización 8565, 8570, 8575 y 8580 (por ejemplo, mediante el toque suave de las áreas de visualización correspondientes en la visualización compuesta 8535). Las áreas de visualización seleccionadas luego se pueden visualizar en varias maneras tal como una visualización compuesta, una visualización PIP, cualquiera de los arreglos de visualización ilustrados en la Figura 65, entre otros tipos de arreglos de visualización de múltiples participantes. Además, aunque se describe un ejemplo de algunas modalidades, uno de habilidad ordinaria comprenderá que diferentes modalidades pueden seleccionar y visualizar múltiples participantes de una videoconferencia de múltiples participantes en cualquier número de diferentes maneras.
B. Interfaz de Usuario para Videoconferencia de Múltiples Participantes Como es mencionado en lo anterior, una videoconferencia de radiodifusión de múltiples participantes solamente permite que un participante oiga y vea a todos los otros participantes, mientras que los otros participantes no pueden oírse o verse entre sí. Para facilitar las videoconferencias de radiodifusión de múltiples participantes, algunas modalidades proporcionan numerosas Ul diferentes para visualizar el radiodifusor y los otros participantes de una videoconferencia de radiodifusión de múltiples participantes. Por ejemplo, algunas modalidades proporcionan un arreglo de Ul similar a estudiante-maestro similar al arreglo de la tercera etapa 8515 ilustrada en la Figura 85. Como tal, el arreglo de Ul de estudiante-maestro de algunas modalidades ahora será descrito por referencia a esta etapa.
En estas modalidades, solamente el radiodifusor es visualizado en el área de visualización completa de la visualización PIP 8560 (es decir, un área de visualización de inserción no es visualizada). Los otros participantes de la videoconferencia de radiodifusión de múltiples participantes son visualizados abajo de la visualización PIP 8560 similar a las áreas de visualización visualizadas en la visualización compuesta 8585. En algunas modalidades, un número definido de los otros participantes son visualizados en la visualización compuesta 8585 cuando el dispositivo móvil está en un modo de retrato, mientras que participantes adicionales o todos pueden ser visualizados en la visualización compuesta 8585 cuando el dispositivo móvil está en un modo de paisaje como es descrito de manera similar en lo anterior. Además, otras modalidades proporcionan diferentes Ul para visualizar el radiodifusor y los otros participantes de una videoconferencia de radiodifusión de múltiples participantes.
C. Control del Audio para la Videoconferencia de Múltiples Participantes Además, el dispositivo móvil de algunas modalidades proporciona diferentes técnicas para controlar el audio de los participantes de una videoconferencia de múltiples participantes. Por ejemplo, algunas modalidades del dispositivo móvil permiten al usuario del dispositivo móvil controlar el audio de cada participante en la videoconferencia de múltiples participantes a través de un solo conjunto de controles de volumen (por ejemplo, un deslizador de volumen) visualizado sobre la Ul de tales modalidades. En otras modalidades, el dispositivo móvil permite a un usuario del dispositivo móvil controlar por separado el volumen del audio de cada participante en la videoconferencia de múltiples participantes a través de un conjunto de controles de volumen, tal como un deslizador de volumen que es visualizado en el área de visualización de cada participante. Algunas modalidades solamente proporcionan un botón de silencio en lugar de un conjunto de controles de volumen. Como tal, en algunas de tales modalidades, el usuario del dispositivo móvil solamente puede silenciar o no silenciar a todos los participantes de la videoconferencia múltiples participantes, mientras que en otras modalidades, el usuario del dispositivo móvil puede silenciar o no silenciar por separado cada participante de la videoconferencia de múltiples participantes. Además, otras técnicas para controlar el audio de participantes de la videoconferencia de múltiples participantes son posibles tal como al activar una conmutación sobre el dispositivo móvil, al dar mandos de voz, etc.
VIII. SISTEMA ELECTRÓNICO Muchas de las características y aplicaciones descritas en lo anterior son implementadas como procesos de software que son especificados como un conjunto de instrucciones registradas en un medio de almacenamiento leíble en computadora (también referido como medio leíble en computadora). Cuando estas instrucciones son ejecutadas por una o más unidades de procesamiento (por ejemplo, uno o más procesadores, núcleos de procesadores, u otras unidades de procesamiento), ellas causan que la unidad(es) de procesamiento realice las acciones indicadas en las instrucciones. Ejemplos de medios leíbles en computadora incluyen, pero no están limitados a, CD-ROM, unidades flash, chips de RAM, unidades duras, EPROM, etc. El medio leíble en computadora no incluye ondas portadoras y señales electrónicas que pasan inalámbricamente o sobre conexiones alámbricas.
En esta especificación, el término "software" se propone para incluir la microprogramación cableada que reside en la memoria solo de lectura o aplicaciones almacenadas en el almacenamiento magnético, que se puede leer en la memoria para el procesamiento por un procesador. También, en algunas modalidades, múltiples invenciones de software se pueden implementar como sub-partes de un programa más grande, mientras que permanecen distintas invenciones de software. En algunas modalidades, múltiples invenciones de software también se pueden implementar como programas separados. Finalmente, cualquier combinación de programas separados que conjuntamente implementan una invención de software descrita en la presente está dentro del alcance de la invención. En algunas modalidades, los programas de software, cuando se instalan para operar sobre uno o más sistemas electrónicos, definen una o más implementaciones específicas de la máquina que ejecutan y realizan las operaciones de los programas de software.
Algunas modalidades se implementan como procesos de software que incluyen una o más interfaces de programación de aplicación (APIs) en un ambiente con código de programa de llamada que interactúa con otro código de programa que es llamado a través de la una o más interfaces. Varias llamadas de función, mensajes u otros tipos de invocaciones, que además pueden incluir, varias clases de parámetros, se pueden transferir por la vía de las APIs entre el programa de llamada y el código que es llamado. Además, una API puede proporcionar al código de programa de llamada la habilidad para usar los tipos o clases de datos definidos en la API e implementarse en el código de programa llamado.
Por lo menos ciertas modalidades incluyen un ambiente con un componente de software de llamada que interactúa con un componente de software llamado a través de una API. Un método para operar a través de una API en este ambiente incluye transferir uno o más llamadas de función, mensajes, otros tipos de invocaciones o parámetros por la vía de la API.
Una o más interfaces de programación de aplicación (API) se pueden utilizar en algunas modalidades. Por ejemplo, algunas modalidades del módulo de intercambio de medios 310 (o 910) proporcionan un conjunto de APIs a otros componentes de software para accesar a varias funcionalidades de procesamiento de procesamiento y de codificación de video descritas en las Figuras 3 y 9, tal como las funcionalidades del módulo de TNR 1900 descrito en la Figura 19.
Una API es una interfaz implementada por un componente de código de programa o componente de hardware (después en la presente, "componente que implementa la API") que permite a un componente de código de programa diferente o componente de hardware (después en la presente, "componente de llamada de API") accesar y utilizar una o más funciones, métodos, procedimientos, estructuras de datos, clases y/u otros servicios proporcionados por el componente que implementa API. Una API puede definir uno o más parámetros que son pasados entre el componente de llamada de API y el componente que implementa API.
Una API permite a un desarrollador de un componente de llamada de API (que puede ser un desarrollador de la tercera parte interesada) nivelar las características especificadas proporcionadas por un componente que implementa API. Puede haber un componente de llamada de API o puede haber más de un componente de tal clase. Una API puede ser una interfaz de código de fuente que un sistema de computadora o biblioteca de programas proporciona con el fin de soportar peticiones para los servicios de una aplicación. Un sistema de operación (OS) puede tener múltiples APIs para permitir que las aplicaciones funcionen sobre el OS para llamar a una o más de esas API, y un servicio (tal como una biblioteca de programas) puede tener múltiples APIs para permitir una aplicación que usa el servicio para llamar una o más de esas API. Una API puede ser especificada en términos de un lenguaje de programación que puede ser interpretado o compilado cuando se construye una aplicación.
En algunas modalidades, el componente que ¡mplementa API puede proporcionar más de una API, cada una que proporciona una vista diferente de o con aspectos diferentes que accesan aspectos diferentes de la funcionalidad implementada por el componente que ¡mplementa API. Por ejemplo, una API de un componente que implementa API puede proporcionar un primer conjunto de funciones y se puede exponer a los desarrolladores de la tercera parte interesada, y otra API del componente que implementa API puede ser obstaculizada (no expuesta) y proporcionar un subconjunto del primer conjunto de funciones y también proporcionar otro conjunto de funciones, tales como funciones de prueba o de depuración que no están en el primer conjunto de funciones. En otras modalidades, el componente que implementa API puede llamar por sí mismo uno o más de otros componentes por la vía de una API implícita y asi ser tanto un componente de llamada de API como un componente que implementa API.
Una API define el lenguaje y los parámetros que los componentes de llamada de API utilizan cuando accesan y utilizan características especificadas del componente que implementa API. Por ejemplo, un componente de llamada de API accesa a las características especificadas del componente que ¡mplementa API a través una o más llamadas o invocaciones de API (incorporadas por ejemplo mediante llamadas de función o de método) expuestas por la API y pasa la información de datos y de control utilizando los parámetros por la vía de las llamadas o invocaciones de API. El componente que implementa API puede retornar un valor a través de la API en respuesta a una llamada de API desde un componente de llamada de API. Mientras que la API define la sintaxis y el resultado de una llamada de API (por ejemplo, como invocar la llamada de API y que hace la llamada de API), la API no puede revelar como la llamada de API realiza la función especificada por la llamada de API. Varias llamadas de API son transferidas por la vía de una o más interfaces de programación de aplicación entre la llamada (componente de llamada de API) y un componente que implementa API. La transferencia de las llamadas de API puede incluir la expedición, iniciación, invocación, llamada, recepción, retorno o respuesta a las llamadas o mensajes de función; en otras palabras, la transferencia puede describir acciones mediante ya sea el componente de llamada de API o el componente que implementa API. Las llamadas de función u otras invocaciones de la API pueden enviar o recibir uno o más parámetros a través de una lista de parámetros u otra estructura. Un parámetro puede ser una constante, clave, estructura de datos, objeto, clase de objeto, variable, tipo de dato, puntero, arreglo, lista o un puntero para una función o método u otra manera para la referencia de un dato u otro artículo que es pasado por la vía de la API.
Además, tipos o clases de datos se pueden proporcionar por la API e implementar por el componente que implementa API. Así, el componente de llamada de API puede declarar variables, utilizar punteros para, uso o valores constantes de instancia de tales tipos o clases al utilizar las definiciones proporcionadas en la API.
Generalmente, una API se puede utilizar para accesar a un servicio o dato proporcionado por el componente que implementa API o para iniciar la realización de una operación o computación proporcionada por el componente que implementa API. A manera de ejemplo, el componente que implementa API y el componente de llamada de API cada uno puede ser cualquiera de un sistema de operación, una biblioteca, un controlador de dispositivo, una API, un programa de aplicación, u otro módulo (se debe entender que el componente que implementa API y el componente de llamada de API pueden ser del mismo tipo o diferente tipo de módulo entre sí). Los componentes que implementan API se pueden incorporar en algunos casos por lo menos en parte en microprogramación cableada, microcódigo, u otra lógica de hardware. En algunas modalidades, una API puede permitir a un programa de cliente utilizar los servicios proporcionados por la biblioteca de Equipo de Desarrollo de Software (SDK). En otras modalidades una aplicación u otro programa de cliente pueden utilizar una API proporcionada por una estructura de aplicación. En estas modalidades, la aplicación o programa de cliente puede incorporar llamadas a funciones o métodos proporcionados por el SDK y proporcionados por la API o utilizar tipos de datos u objetos definidos en el SDK y proporcionados por la API. Una estructura de aplicación en estas modalidades puede proporcionar un circuito de evento principal para un programa que responde a varios eventos definidos por la estructura. La API permite a la aplicación especificar los eventos y las respuestas a los eventos utilizando la estructura de aplicación. En algunas implementaciones, una llamada de API puede reportar a una aplicación las capacidades o estado de un dispositivo de hardware, incluyendo aquellos relacionados con aspectos tales como capacidades de entrada y estado, capacidades de salida y estado, capacidad de procesamiento, estado de potencia, capacidad de almacenamiento y estado, capacidad de comunicaciones, etc, y la API se puede implementar en parte por la microprogramación cableada, microcódigo, u otra lógica de bajo nivel que se ejecuta en parte sobre el componente de hardware.
El componente de llamada de API puede ser un componente local (es decir, en el mismo sistema de procesamiento de datos como el componente que implementa API) o un componente remoto (es decir, en un diferente sistema de procesamiento de datos del componente que implementa API) que comunica con el componente que implementa API a través de la API sobre una red. Se debe entender que un componente que implementa API también puede actuar como un componente de llamada de API (es decir, puede hacer llamadas de API a una API expuesta por una diferente componente que implementa API) y un componente de llamada de API también puede actuar como un componente que implementa API al implementar una API que se expone a un diferente componente de llamada de API.
La API puede permitir múltiples componentes de llamada de API escritos en diferentes lenguajes de programación para comunicar con el componente que implementa API (así, la API puede incluir características para traducir llamadas y retornos entre el componente que implementa API y el componente de llamada de API), sin embargo, la API puede ser implementada en términos de un lenguaje de programación específico. Un componente de llamada de API, en una modalidad puede llamar las API de diferentes proveedores, tal como un conjunto de APIs de un proveedor OS u otro conjunto de APIs desde un proveedor conectado u otro conjunto de APIs desde otro proveedor (por ejemplo, el proveedor de una biblioteca de software) o creador de otro conjunto de APIs.
La Figura 88 es un diagrama de bloques que ilustra una arquitectura de API ejemplar, que puede ser utilizada en algunas modalidades de la invención. Como es mostrado en la Figura 88, la arquitectura API 8800 incluye el componente que implementa API 8810 (por ejemplo, un sistema de operación, una biblioteca, un controlador de dispositivo, una API, un programa de aplicación, software u otro módulo) que implementa la API 8820. La API 8820 especifica una o más funciones, métodos, clases, objetos, protocolos, estructuras de datos, formatos y/o otras características del componente que implementa API que puede ser utilizado por el componente de llamada de API 8830. La API 8820 puede especificar por lo menos una convención de llamada que especifica como una función en el componente que implementa API 8810 recibe los parámetros desde el componente de llamada de API 8830 y como la función retorna un resultado al componente de llamada de API. El componente de llamada de API 8830 (por ejemplo, un sistema de operación, una biblioteca, un controlador de dispositivo, una API, un programa de aplicación, software u otro módulo), hace las llamadas de API a través de la API 8820 para accesar y usar las características del componente que implementa API 8810 que son especificadas por la API 8820. El componente que implementa API 8810 puede retornar un valor a través de la API 8820 al componente de llamada de API 8830 en respuesta a una llamada de API.
Será apreciado que el componente que implementa API 8810 puede incluir funciones adicionales, métodos, clases, estructuras de datos y/u otras características que no son especificadas a través de la API 8820 y no son disponibles al componente de llamada de API 8830. Se debe entender que el componente de llamada de API 8830 puede estar en el mismo sistema como el componente que implementa API 8810 o se puede ubicar remotamente y accesa al componente que implementa API 8810 utilizando la API 8820 sobre una red. Mientras que la Figura 88 ilustra un solo componente de llamada de API 8830 que interactúa con la API 8820, se debe entender que otros componentes de llamadas de API, que pueden ser escritos en diferentes lenguajes (o el mismo lenguaje) que el componente de llamada de API 8830, pueden utilizar la API 8820.
El componente que implementa API 8810, la API 8820, y el componente de llamada de API 8830 se pueden almacenar en un medio leíble en máquina, que incluye cualquier mecanismo para almacenar información en una forma leíble por una máquina (por ejemplo, una computadora u otro sistema de procesamiento de datos). Por ejemplo, un medio leíble en máquina incluye discos magnéticos, discos ópticos, memoria de acceso aleatorio; memoria solo de lectura, dispositivos de memoria flash, etc.
La Figura 89 es un ejemplo de una arquitectura del dispositivo de computación móvil de cámara doble 8900. La implementación de un dispositivo de computación móvil puede incluir una o más unidades de procesamiento 8905, interfaz de memoria 8910 y una ¡nterfaz de periféricos 8915. Cada uno de estos componentes que constituyen la arquitectura del dispositivo de computación pueden ser componentes separados o integrados en uno o más circuitos integrados. Estos diversos componentes también se pueden acoplar conjuntamente por una o más barras colectoras de comunicación o líneas de señal.
La interfaz de periféricos 8915 se puede acoplar a varios sensores y subsistemas, incluyendo un subsistema de cámara 8920, un subsistema(s) de comunicación inalámbrica 8925, subsistema de audio 8930, subsistema l/O 8935, etc. La interfaz de periféricos 8915 permite la comunicación entre los procesadores y periféricos. Los periféricos, tal como un sensor de orientación 8945 o un sensor de aceleración 8950 se pueden acoplar a la interfaz de periféricos 8915 para facilitar las funciones de orientación y aceleración.
El subsistema de cámara 8920 se puede acoplar a uno o más sensores ópticos 8940, por ejemplo, un sensor óptico de dispositivo acoplado cargado (CCD), un sensor óptico de semiconductor de óxido de metal complementario (CMOS). El subsistema de cámara 8920 acoplado con los sensores puede facilitar las funciones de la cámara, tal como la captura de datos de imagen y/o de video. Los subsistemas de comunicación inalámbrica 8925 pueden servir para facilitar las funciones de comunicación. Los subsistemas de comunicación inalámbricos 8925 pueden incluir receptores y transmisores de radio-frecuencia y receptores y transmisores ópticos. Se pueden implementar para operar una o más redes de comunicación tal como una red GSM, una red Wi-Fi, una red de Bluetooth, etc. Los subsistemas de audio 8930 se acoplan a un altavoz y un micrófono para facilitar las funciones habilitadas por voz, tal como el reconocimiento de voz, registro digital, etc.
El subsistema l/O 8935 involucra la transferencia entre los dispositivos periféricos de entrada/salida, tal como una visualización, una pantalla táctil, etc, y la barra colectora de datos de la CPU a través de la interfaz de periféricos. El subsistema 1/0 8935 puede incluir un controlador de pantalla táctil 8955 y otros controladores de entrada 8960 para facilitar estas funciones. El controlador de pantalla táctil 8955 se puede acoplar a la pantalla táctil 8965 y detectar el contacto y el movimiento sobre la pantalla utilizando cualquiera de las tecnologías de sensibilidad táctil múltiples. Otros controladores de entrada 8960 se pueden acoplar a otros dispositivos de entrada/control, tal como uno o más botones.
La interfaz de memoria 8910 se puede acoplar a la memoria 8970, que puede incluir memoria de acceso aleatorio de alta velocidad y/o memoria no volátil tal como memoria flash. La memoria puede almacenar un sistema de operación (OS) 8972. El OS 8972 puede incluir instrucciones para manejar los servicios del sistema básicos y para realizar tareas dependientes del hardware.
La memoria también puede incluir instrucciones de comunicación 8974 para facilitar la comunicación con uno o más dispositivos adicionales; instrucciones de interfaz de usuario gráficas 8976 para facilitar el procesamiento de interfaz de usuario gráfico; instrucciones de procesamiento de imagen/video 8978 para facilitar el procesamiento y funciones relacionadas con imagen/video; instrucciones telefónica 8980 para facilitar los procesos y funciones relacionadas con el teléfono; instrucciones de intercambio y procesamiento de medios 8982 para facilitar la comunicación de los medios y procesos y funciones relacionadas con el procesamiento; instrucciones de cámara 8984 para facilitar los procesos y funciones relacionadas con la cámara; e instrucciones de videoconferencia 8986 para facilitar los procesos y funciones de videoconferencia. Las instrucciones identificadas en lo anterior no necesitan ser implementadas como programas o módulos de software separados. Varias funciones de dispositivo de computación móvil se pueden implementar en el hardware y/o en el software, incluyendo en uno o más circuitos integrados específicos del procesamiento y/o aplicación de señal.
Las modalidades descritas en lo anterior pueden incluir el dispositivo l/O táctil 9001 que puede recibir la entrada táctil para interactuar con el sistema de computación 9003, como es mostrado en la Figura 90, por la vía del canal de comunicación alámbrico o inalámbrico 9002. El dispositivo l/O táctil 9001 se puede utilizar para proporcionar entrada de usuario al sistema computación 9003 en lugar de o en combinación con otros dispositivos de entrada tal como un tablero, ratón, etc. Uno o más dispositivos l/O táctiles 9001 se pueden utilizar para proporcionar entrada de usuario al sistema de computación 9003. El dispositivo l/O táctil 9001 puede ser una parte integral del sistema de computación 9003 (por ejemplo, la pantalla táctil sobre una computadora portátil) o puede ser separado del sistema de computación 9003.
El dispositivo l/O táctil 9001 puede incluir un panel sensible al tacto que es completa o parcialmente transparente, semitransparente, no transparente, opaco o cualquier combinación de los mismos. El dispositivo l/O táctil 9001 se puede incorporar como pantalla táctil, almohadilla táctil, un pantalla táctil que funciona como una almohadilla táctil (por ejemplo, una pantalla táctil que reemplaza la almohadilla táctil de una computadora portátil), una pantalla táctil o almohadilla táctil combinadas o incorporadas con cualquier otro dispositivo de entrada (por ejemplo, una pantalla táctil o almohadilla táctil dispuesta sobre un tablero) o cualquier objeto multi-dimensional que tiene superficie sensible al tacto para recibir la entrada táctil.
En un ejemplo, el dispositivo l/O táctil 9001 incorporado como una pantalla táctil puede incluir un panel sensible al tacto transparente y/o semitransparente parcial o complemente posicionado sobre por lo menos una porción de una visualización. De acuerdo con esta modalidad, dispositivo l/O táctil 9001 funciona para visualizar los datos gráficos transmitidos desde el sistema de computación 9003 (y/u otra fuente) y también funciona para recibir la entrada de usuario. En otras modalidades, el dispositivo l/O táctil 9001 puede ser incorporado como una pantalla táctil integrada donde los componentes/dispositivos sensibles al tacto están integrados con los componentes/dispositivos de visualización. En todavía otras modalidades una pantalla táctil se puede utilizar como una pantalla de visualización suplemental o adicional para la visualización suplemental o los mismos datos gráficos como una visualización primaria y recibir la entrada táctil.
El dispositivo l/O táctil 9001 puede ser configurado para detectar la ubicación de uno o más tocamientos o tocamientos cercanos sobre el dispositivo 9001 en base a mediciones capacitivas, resistivas, ópticas, acústicas, inductivas, mecánicas, químicas, o cualquier fenómeno que puede ser medido con respecto a las ocurrencias de uno o más tocamientos o tocamientos cercanos en proximidad al dispositivo 9001. El software, hardware, microprogramación cableada o cualquier combinación de los mismos- se puede utilizar para procesar las mediciones de los tocamientos detectados para identificar y rastrear una o más posturas. Una postura puede corresponder a tocamientos o tocamientos cercanos, únicos o múltiples, estacionarios o no estacionarios sobre el dispositivo l/O táctil 9001. Una postura se puede realizar al mover uno o más dedos u otros objetos en una manera particular sobre el dispositivo l/O táctil 9001 , tal como el toque suave, presionamiento, basculación, frotación, torcimiento, orientación cambiante, presionamiento con presión variante y los similares en esencialmente el mismo tiempo, contiguamente, o consecutivamente. Una postura se puede caracterizar por, pero no está limitada a un movimiento de constricción, deslizamiento, toque fuerte, rotación, flexión, arrastre, o toque suave entre o con cualquiera del otro dedo o dedos. Una sola postura se puede realizar con una o más manos, por uno o más usuarios, o cualquier combinación de los mismos.
El sistema de computación 9003 puede conducir una visualización con datos gráficos para visualizar una interfaz de usuario gráfica (GUI). La GUI se puede configurar para recibir la entrada táctil por la vía del dispositivo l/O táctil 9001. Incorporada como una pantalla táctil, el dispositivo l/O táctil 9001 puede visualizar la GUI. Alternativamente, la GUI puede ser visualizada sobre una visualización separada del dispositivo l/O táctil 9001. La GUI puede incluir elementos gráficos visualizados en ubicaciones particulares dentro de la interfaz. Los elementos gráficos pueden incluir pero no están limitados a una variedad de dispositivos de entrada virtual visualizada incluyendo ruedas en espiral virtuales, un tablero virtual, perillas virtuales, botones virtuales, cualquier Ul virtual, y los similares. Un usuario puede realizar posturas en una o más ubicaciones particulares sobre el dispositivo l/O táctil 9001 que se pueden asociar con los elementos gráficos de la GUI. En otras modalidades, el usuario puede realizar posturas en una o más ubicaciones que son independientes de las ubicaciones de los elementos gráficos de la GUI. Las posturas realizadas sobre el dispositivo l/O táctil 9001 , directamente o indirectamente pueden manipular, controlar o modificar, mover, accionar, iniciar o afectar generalmente los elementos gráficos tales como cursores, iconos, archivos de medios, listas, textos, todas o porciones de imágenes, o los similares dentro de la GUI. Por ejemplo, en el caso de una pantalla táctil, un usuario puede interactuar directamente con un elemento gráfica al realizar una postura sobre el elemento gráfica en la pantalla táctil. Alternativamente, una almohadilla táctil generalmente proporciona interacción indirecta. Las posturas también puede afectar los elementos de GUI no visualizados (por ejemplo, causar que aparezcan interfaces de usuario) o puede afectar otras acciones dentro del sistema de computación 9003 (por ejemplo, afectar un estado o modo de una GUI, aplicación o sistema de operación). Las posturas pueden o no pueden ser realizadas sobre el dispositivo l/O táctil 9001 , en conjunción con un cursor visualizado. Por ejemplo, en el caso en el cual se realizan las posturas sobre una almohadilla táctil, un cursor (o puntero) pueden ser visualizados sobre una pantalla de visualización o pantalla táctil y el cursor puede ser controlado por la vía de la entrada táctil sobre la almohadilla táctil para interactuar con los objetos gráficos sobre la pantalla de visualización. En otras modalidades en las cuales las posturas se realizan directamente sobre una pantalla táctil, un usuario puede interactuar directamente con los objetos sobre la pantalla táctil, con o sin un cursor o puntero que es visualizado sobre la pantalla táctil.
La retroalimentación se puede proporcionar al usuario por la vía del canal de comunicación 9002 en respuesta a o en base al tocamiento o tocamiento cercano sobre el dispositivo l/O táctil 9001. La retroalimentación puede ser transmitida ópticamente, mecánicamente, eléctricamente, olfatoriamente, acústicamente, o los similares, o cualquier combinación de los mismos y en una manera variable o no variable.
Estas funciones descritas en lo anterior se pueden ¡mplementar en el sistema de circuitos electrónicos digital, en el software, microprogramación cableada o hardware de la computadora. Las técnicas se pueden ¡mplementar utilizando uno o más productos de programa de computadora. Los procesadores programables y computadoras se pueden incluir o empaquetar como dispositivos móviles. Los procesos y los flujos de lógica se pueden realizar por uno o más procesadores programables y por uno o más sistemas de circuitos lógicos programables. Los dispositivos de computación de propósitos generales y especiales y los dispositivos de almacenamiento se pueden interconectar a través de redes de comunicación.
Algunas modalidades incluyen componentes electrónicos, tales como microprocesadores, almacenamiento y memoria que almacenan las instrucciones del programa de computadora en un medio leíble en máquina o leíble en computadora (alternativamente referido como medios de almacenamiento leíble en computadora, medio leíble en máquina, o medio de almacenamiento leíble en máquina. Algunos ejemplos de tales medios leíbles en computadora incluyen RAM, ROM, discos compactos solo de lectura (CD-ROM), discos compactos registrables (CD-R), discos compactos reescribibles (CD-RW), discos versátiles digitales solo de lectura (por ejemplo, DVD-ROM, DVD-ROM de capa doble), una variedad de DVD registrables/reescribibles (por ejemplo, DVD-RAM, DVD-RW, DVD + RW, etc), memoria flash (por ejemplo, tarjetas SD, minitarjetas SD, Microtarjetas SD, etc), unidades duras magnéticas y/o de estado sólido, discos Blu-Ray® de solo lectura y registrables, discos ópticos de ultra densidad, cualquier otro medio óptico o magnético y discos magnéticos flexibles. El medio leíble en computadora puede almacenar un programa de computadora que es ejecutable por al una unidad de procesamiento e incluye conjuntos de instrucciones para realizar varias operaciones. Ejemplos de programas de computadora o código de computadora incluyen código de máquina, tal como se produce por un compilador, y archivos que incluyen código de nivel más alto que son ejecutadas por una computadora, un componente electrónico, o un microprocesador utilizando un interpretador.
Mientras que la discusión anterior principalmente se refiere un microprocesador o procesadores de multinúcleos que ejecutan el software, algunas modalidades se realizan por uno o más circuitos integrados, tales como los circuitos integrados de específicos de aplicación (ASICs) o arreglos de compuerta programables de campo (FPGAs). En algunas modalidades, tales circuitos integrados ejecutan las instrucciones que son almacenadas en el circuito mismo.
Como se utiliza en esta especificación y en cualquiera de las reivindicaciones de esta solicitud, los términos "computadora", "servidor", "procesador" y "memoria" todos se refieren a dispositivos electrónicos u otros dispositivos tecnológicos. Estos términos excluyen gente o grupos de gentes. Para los propósitos de la especificación, los términos visualización o visualizando significa la visualización sobre un dispositivo electrónico. Como se usa en esta especificación y en cualquiera de las reivindicaciones de esta solicitud, los términos "medio leíble en computadora" y "medios leíbles en computadora" se restringen completamente a objetos físicos, tangibles que almacenan información en una forma que es leíble por una computadora. Esos términos excluyen cualquier de las señales inalámbricas, señales de carga alámbrica y cualquiera de otras señales efímeras.
La Figura 91 conceptualmente ilustra un sistema de comunicación de ejemplo 9100 utilizado para conectar algunos participantes de una videoconferencia de acuerdo con algunas modalidades. Como es mostrado, el sistema de comunicación 9100 incluye varios dispositivos móviles 9115, varias estaciones base de celular (o Node B) 9110, varios controladores de red de radio (RNCs) 9105, y una red de núcleo 9125. Las estaciones base de celular y RNCs son colectivamente referidas como un Sistema de Telecomunicaciones Móvil Universal (UMTS) de Red de Acceso a Radio Terrestre (UTRAN) 9130. Cada RNC 9105 es conectado a una o más estaciones base de celular 9110 que, conjuntamente, son referidas como una red de acceso de radio (RAN).
Cada estación base de celular 9110 cubre una región de servicio 9120. Como es mostrado, los dispositivos móviles 9115 en cada región de servicio se conectan inalámbricamente a la estación base de celular de servicio 91 10 de la región de servicio 9120 a través de una interfaz Uu. La interfaz Uu utiliza un apilamiento de protocolo que tiene dos planos: un plano de control y un plano de usuario. El plano de usuario soporta los flujos de datos conmutados en circuito, conmutados en paquete y radiodifundidos. El plano de control lleva los mensajes de señalización de la red.
Cada estación base de celular se conecta a un RNC a través de una interfaz lub. Cada RNC 9105 se conecta a la red de núcleo 9125 mediante las interfaces lu-cs e lu-PS. La interfaz lu-cs se utiliza para servicios conmutados de circuito (por ejemplo, voz), mientras que la interfaz lu-ps se utiliza para servicios conmutados de paquete (por ejemplo, datos). La interfaz lur se utiliza para conectar dos RNCs conjuntamente.
Por consiguiente, el sistema de comunicación 9100 sustenta tanto los servicios conmutados de circuito como los servicios conmutados de paquete. Por ejemplo, los servicios conmutados de circuito permiten que una llamada telefónica sea conducida al transmitir los datos de llamada telefónica (por ejemplo, voz) a través del equipo conmutado de circuitos del sistema de comunicación 9100. Los servicios conmutados de paquetes permiten que una videoconferencia sea conducida al utilizar una capa de protocolo de transporte tal como UDP o TCP sobre un protocolo de capa de Internet similar a IP para transmitir los datos de la videoconferencia a través del equipo conmutado de paquete del sistema de comunicación 9100. En algunas modalidades, la transición de la llamada telefónica a la videoconferencia (por ejemplo, transferencia) previamente descrita en la sección de arreglo de videoconferencia utiliza los servicios conmutados de circuito y conmutado de paquete sustentados por un sistema de comunicación similar al sistema de comunicación 9100. Esto es, en tales modalidades, la llamada telefónica se conduce a través del equipo conmutado de circuito del sistema de comunicación 9100 y la videoconferencia se conduce a través del equipo conmutado de paquete del sistema de comunicación 9100.
Aunque el sistema de comunicación de ejemplo en la Figura 91 ilustra un sistema de comunicación móvil inalámbrico UTRAN de tecnología de tercera generación (3G), se debe observar que los sistemas de comunicación de segunda generación (2G), otros sistemas de comunicación 3G tal como Optimizado en Emisión de Datos o solamente Emisión de Datos (EV-DO) de 3GPP2 y el Acceso Múltiple de División de Código 1X (CDMA 1X) del proyecto asociado 2 de 3a generación (3GPP2), sistemas de comunicación de cuarta generación (4G), red de área local inalámbrica (WLAN), y sistemas de comunicación de Interoperabilidad Mundial para Acceso a Microondas (WiMAX) se puede utilizar para conectar algunos de los participantes de una conferencia en algunas modalidades. Ejemplos de sistemas 2G incluyen el sistema global para comunicaciones móviles (GSM), Servicio de Radio de Paquetes General (GPRS), y Tasas de Datos Mejoradas para la Emisión de GSM (EDGE). Una arquitectura del sistema de comunicación 2G es similar a la arquitectura mostrada en la Figura 91 , excepto que la arquitectura del sistema de comunicación 2G utiliza estaciones transceptoras base (BTS) en lugar de Node Bs 9110 y los controladores de estación base (BSC) en lugar de RNC 9105. En un sistema de comunicaciones 2G, una interfaz A entre la BSC y la red de núcleo se utiliza para los servicios conmutados de circuito y una interfaz Gb entre la BSC y la red de núcleo se utiliza para los servicios conmutados de paquetes.
En algunas modalidades, el sistema de comunicación 9100 se opera por un portador de servicio quién inicialmente provee un dispositivo móvil 91 15 para permitir al dispositivo móvil 9115 utilizar el sistema de comunicación 9100. Algunas modalidades proporcionan un dispositivo móvil 9115 al configurar y registrar una tarjeta de módulo de identidad de suscriptor (SI ) en el dispositivo móvil 9115. En otras modalidades, el dispositivo móvil 9115 en cambio se configura y se registra utilizando la memoria del dispositivo móvil 9115. Por otra parte, servicios adicionales pueden ser provistos (después de que un cliente compra el dispositivo móvil 9115), tales como servicios de datos similares a GPRS, servicio de mensajería de multimedios (MMS) y mensajería instantánea. Una vez provisto, el dispositivo móvil 9115 se activa y de esta manera se permite utilizar el sistema de comunicación 9100 por el portador de servicio.
El sistema de comunicación 9100 es una red de comunicación privada en algunas modalidades. En tales modalidades, los dispositivos móviles 91 15 pueden comunicar (por ejemplo, conducir llamadas de voz, intercambiar datos) entre sí (por ejemplo, dispositivos móviles 9115 que son provistos para el sistema de comunicación 9100). En otras modalidades, el sistema de comunicación 9100 es una red de comunicación pública. Así, los dispositivos móviles 9115 pueden comunicarse con otros dispositivos fuera del sistema de comunicación 9100, además de los dispositivos móviles 9115 provistos para el sistema de comunicación 9100. Algunos de los otros dispositivos fuera del sistema de comunicación 9100 incluyen teléfonos, computadoras y otros dispositivos que conectan el sistema de comunicación 9100 a través de otras redes tal como una red telefónica conmutada pública u otra red de comunicación inalámbrica.
La especificación de Emisión a Largo Plazo (LTE) se utiliza para definir los sistemas de comunicación 4G. La Figura 92 conceptualmente ¡lustra un ejemplo de un sistema de comunicación 4G 9200 que se utiliza para conectar algunos participantes de una videoconferencia en algunas modalidades. Como es mostrado, el sistema de comunicación 9200 incluye varios dispositivos móviles 9115, varios Node Bs Emitidos (eNBs) 9205, una Entidad de Administración de Movilidad (MME) 9215, un Portal Servidor (S-GW) 9220, un Portal de Red de Datos de Paquete (PDN) 9225, y un Servidor de Suscriptor Doméstico (HSS) 9235. En algunas modalidades, el sistema de comunicación 9200 incluye una o más MMEs 9215, una o más S-GWS 9220, uno o más portales PDN 9525 y uno o más HSSs 9235.
Los eNBs 9205 proporcionan una interfaz aérea para los dispositivos móviles 9 15.
Como es mostrado, cada eNB 9205 cubre una región de servicio 9210. Los dispositivos móviles 9115 en cada región de servicio 9210 se conectan inalámbricamente al eNB 9205 de la región de servicio 9210 a través de una interfaz LTE-Uu. La Figura 92 también muestra los eNBs 9205 conectados entre sí a través de una interfaz X2. Además, los eNBs 9205 se conectan a la MME 9215 a través de una interfaz S1-MME y al S-GW 9220 a través de una interfaz S1-U. Los eNBs 9205 son referidos colectivamente como un UTRAN emitido (E-TRAN) 9230.
Los eNBs 9205 proporcionan funciones tal como la administración de recursos de radio (por ejemplo, control portador de radio, control de movilidad de conexión, etc), enrutamiento de los datos del plano del usuario hacia el S-GW 9220, medición de señal y reporte de medición, la selección de MME en el momento de unión del dispositivo móvil, etc. Las funciones de la MME 9215 incluyen el rastreamiento y paginación del dispositivo móvil en modo inactivo, la activación y desactivación de los portadores de radio, selección de la S-GW 9220 en el momento de la unión del dispositivo móvil, terminación de señalización del Stratum de No Acceso (ÑAS), autenticación del usuario mediante la interacción con el HSS 9235, etc.
Las funciones del S-GW 9220 incluyen (1 ) enrutamiento y adelantamiento de los paquetes de datos del usuario y (2) administración y almacenamiento de contextos de dispositivo móvil tal como parámetros del servicio portador de IP e información de enrutamiento interno de la red. Las funciones del portal PDN 9225 incluyen la provisión de conectividad desde los dispositivos móviles a las redes de datos de paquetes externas (no mostradas) al ser el punto de salida y entrada del tráfico para los dispositivos móviles. Una estación móvil puede tener conectividad simultánea con más de un Portal PDN para accesar a múltiples redes de datos de paquetes. El Portal PDN 9225 también actúa como el fijador para la movilidad entre las tecnologías 3GPP y no 3GPP, tal como WiMAX y 3GPP2 (por ejemplo, CDMA 1X y EV-DO).
Como es mostrado, la MME 9215 se conecta al S-GW 9220 a través de una interfaz S11 y al HSS 9235 a través de una interfaz S6a. El S-GW 9220 y el Portal PDN 9220 se conectan a través de una interfaz S8. La MME 9215, S-GW 9220, y el Portal PDN 9225 son referidos colectivamente como un Núcleo de Paquete Emitido (EPC). El EPC es el componente principal de una Arquitectura de Emisión de Arquitectura de Sistema (SAE), que es la arquitectura de red de núcleo del estándar de comunicación inalámbrica 3GPP LTE. El EPC es un sistema de paquetes puro. Por ejemplo, el EPC no tiene un portal de medios de voz. Los servicios, similares a voz y SMS, se enrutan conmutados en paquete y se proporcionan por las funciones de aplicación que hacen uso del servicio EPC. Así, utilizando la transición de llamada telefónica a videoconferencia previamente descrita en lo anterior como un ejemplo, tanto la llamada telefónica como la videoconferencia se conducen a través del equipo conmutado de paquetes del sistema de comunicación 9200 en algunas modalidades. En algunas de tales modalidades, el canal conmutado de paquete utilizado para la llamada telefónica se continúa siendo utilizado para los datos de audio de la videoconferencia después de que termina la llamada telefónica. Sin embargo, en otras de tales modalidades, se crea un canal conmutado de paquete diferente (por ejemplo, cuando se establece la videoconferencia) y los datos de audio se transmiten a través del canal conmutado de paquete recientemente creado en lugar del canal conmutado de paquete de la llamada telefónica cuando termina la llamada telefónica.
Por otra parte, la cantidad de ancho de banda proporcionada por estas diferentes tecnologías varía de 44 kilobit por segundo (kbps) para GPRS a arriba de 10 megabit por segundo (Mbps) para LTE. Las velocidades de descarga de 100 Mbps y las velocidades de recarga de 50 Mbps se predicen en el futuro para LTE.
Mientras que la invención se ha descrito con referencia a numerosos detalles específicos, uno de habilidad ordinaria en la técnica reconocerá que la invención se puede incorporar en otras formas específicas sin apartarse del espíritu de la invención. Además, un número de las figuras conceptualmente ilustran los procesos. Las operaciones específicas de estos procesos no pueden realizadas en el orden exacto mostrado y descrito. Las operaciones específicas no pueden realizadas en una serie continua de operaciones, y diferentes operaciones específicas se puede realizar en diferentes modalidades. Además, el proceso podría ser implementado utilizando varios sub-procesos, o como parte de un macroproceso más grande.
También, muchas modalidades se describieron en lo anterior por referencia a una videoconferencia entre dos dispositivos móviles de cámara doble. Sin embargo, uno de habilidad ordinaria en la técnica comprenderá que muchas de estas modalidades se utilizan en casos que involucran una videoconferencia entre un dispositivo móvil de cámara doble y otro dispositivo, tal como un dispositivo móvil de cámara única, una computadora, un teléfono con capacidad de videoconferencia, etc. Por otra parte, muchas de las modalidades descritas en lo anterior se pueden utilizar en dispositivos móviles de cámara única y otros dispositivos de computación con capacidades de videoconferencia. Así, uno de habilidad ordinaria en la técnica entendería que la invención no está limitada por los detalles ilustrativos anteriores, sino más bien va a ser definida por las reivindicaciones adjuntas.

Claims (20)

REIVINDICACIONES
1. Para un primer dispositivo móvil, un método para iniciar una conferencia de video durante una llamada de audio, el método caracterizado porque comprende: presentar, durante la llamada de audio a través de una red de comunicación inalámbrica con un segundo dispositivo, un artículo de interfaz de usuario (Ul) seleccionable sobre el primer dispositivo móvil para la conmutación de la llamada de audio a una videoconferencia; recibir una selección del artículo Ul seleccionable; mientras permite que los datos de audio se intercambien entre el primer dispositivo móvil y el segundo dispositivo para continuar la llamada de audio, iniciando la videoconferencia; y terminar la llamada de audio antes de permitir al primer dispositivo móvil y el segundo dispositivo presentar los datos de audio y de video intercambiados a través de la videoconferencia en el primer dispositivo móvil.
2. El método de conformidad con la reivindicación 1 , caracterizado porque presenta el artículo de Ul seleccionable que comprende presentar continuamente el artículo de Ul seleccionable dentro de un área de visualización que se visualiza sobre una pantalla de visualización del primer dispositivo móvil durante la llamada de audio.
3. El método de conformidad con la reivindicación 1 , caracterizado porque la llamada de audio se termina antes de permitir que el primero y segundo dispositivo intercambien datos de audio y de video a través de la videoconferencia.
4. El método de conformidad con la reivindicación 1 , caracterizado porque la llamada de audio se termina después de que el primer dispositivo móvil y el segundo dispositivo comienzan a intercambiar datos de audio y de video a través de la videoconferencia, pero antes de que el primer dispositivo móvil y segundo dispositivo comiencen a presentar los datos de audio y video intercambiados.
5. El método de conformidad con la reivindicación 1 , caracterizado porque además comprende establecer un canal de comunicación con un segundo dispositivo desde el primer dispositivo móvil para establecer la llamada de audio entre primer dispositivo móvil y el segundo dispositivo.
6. El método de conformidad con la reivindicación 1 , caracterizado porque el primer dispositivo móvil es un dispositivo de comunicación móvil para la comunicación con otro dispositivo en la red de comunicación inalámbrica.
7. Un sistema caracterizado porque comprende medios para implementar etapas de acuerdo a cualquiera de las reivindicaciones 1-6.
8. Un medio leíble por la máquina almacena un programa que cuando se ejecuta en un primer dispositivo móvil por al menos una unidad de procesamiento inicia una videoconferencia durante una llamada de audio, el programa comprende los conjuntos de instrucciones para: presentar, durante la llamada de audio a través de una red de comunicación inalámbrica con un segundo dispositivo, un artículo de interfaz (Ul) de usuario seleccionable en el primer dispositivo móvil para conmutar desde la llamada de audio a la videoconferencia; recibir una selección del artículo de Ul seleccionable, mientras permite que los datos de audio se intercambien entre el primer dispositivo; y el segundo dispositivo para continuar la llamada de audio, iniciando la videoconferencia; y terminar la llamada de audio antes de permitir que el primer dispositivo móvil y el segundo dispositivo presenten datos de audio y video intercambiados a través de la videoconferencia en el primer dispositivo móvil.
9. El medio leíble por la máquina de conformidad con la reivindicación 8, caracterizado porque el primer dispositivo móvil y el segundo dispositivo se colocan con la primera red comunicación inalámbrica para hacer llamadas de audio con otros dispositivos a través de la red de comunicación inalámbrica.
10. El medio leíble por la máquina de conformidad con la reivindicación 8, caracterizado porque el primer dispositivo móvil se proporciona con la red de comunicación inalámbrica para hacer llamadas de audio con otros dispositivos a través de la red de comunicación inalámbrica, mientras el segundo dispositivo no se provee para hacer llamadas de audio con otros dispositivos a través de la red de comunicación inalámbrica.
11. El medio leíble por la máquina de conformidad con la reivindicación 8, caracterizado porque la red de comunicación es una red de comunicación inalámbrica privada.
12. El medio leíble por la máquina de conformidad con la reivindicación 8, caracterizado porque la red de comunicación es una red de comunicación inalámbrica pública.
13. El medio leíble por la máquina de conformidad con la reivindicación 8, caracterizado porque la red de comunicación inalámbrica comprende equipo de conmutación de circuito para enrutar las llamadas de audio y el equipo de conmutación de paquete para enrutar datos, en donde la llamada de audio se enruta a través del equipo de conmutación de circuito de la red de comunicación mientras los datos de audio y video intercambiados durante la conferencia de video se intercambian como paquetes a través del equipo de conmutación de paquete, en donde los paquetes se transportan entre el primer dispositivo móvil y el segundo dispositivo móvil sobre un enlace de comunicación de Protocolo de Internet (IP).
14. Un primer dispositivo caracterizado porque comprende: medios para presentar en el primer dispositivo, durante una llamada telefónica entre el primer dispositivo y el segundo dispositivo, un primer diseño de interfaz de usuario (Ul) que comprende un artículo Ul para conmutar desde la llamada telefónica a una videoconferencia; medios para presentar un segundo diseño Ul que comprende un primer video capturado por el primer dispositivo en la recepción del artículo Ul seleccionable; medios para establecer la conferencia de video entre el primer dispositivo y el segundo dispositivo en la recepción de una aceptación de la solicitud de videoconferencia desde el segundo dispositivo, y medios para reducir, en el módulo de videoconferencia la recepción de la aceptación de la videoconferencia solicitada desde el segundo dispositivo, un tamaño del primer video mientras superimpone el primer video sobre un segundo video capturado por el segundo dispositivo para presentar una transición desde el segundo diseño Ul a un tercer diseño Ul, el tercer diseño Ul muestra el primer video traslapado en al menos una porción del segundo video.
15. El primer dispositivo de conformidad con la reivindicación 14, caracterizado porque el tercer diseño es un diseño de imagen en imagen (PIP) que comprende el primer video y un segundo video.
16. El primer dispositivo de conformidad con la reivindicación 14, caracterizado porque el medio para reducir el tamaño del primer video comprende medios para reducir el tamaño del primer video mientras despliega el segundo video debajo del primer video sin mover el segundo video con relación al primer video.
17. El primer dispositivo de conformidad con la reivindicación 14, caracterizado porque el medio para reducir el tamaño del primer video comprende medios para reducir el tamaño del primer video mientras despliega el segundo video sin cambiar un tamaño del segundo video.
18. El primer dispositivo de conformidad con la reivindicación 14, caracterizado porque el primer y segundo dispositivos son dispositivos movibles que se proveen para hacer llamadas telefónicas a través de al menos una red de comunicación inalámbrica pública de un portador de servicio inalámbrico.
19. El primer dispositivo de conformidad con la reivindicación 14, caracterizado porque el tercer diseño IU comprende una pantalla compuesta, la pantalla compuesta comprende una primera área de despliegue que muestra la primera y segunda pantallas que son del mismo tamaño y se sitúan lado a lado.
20. El primer dispositivo de conformidad con la reivindicación 14, caracterizado porque el primer diseño IU, el segundo diseño IU y el tercer diseño IU están en la misma área de pantalla del IU del primer dispositivo.
MX2012011623A 2010-04-07 2010-09-24 Establecimiento de una videoconferencia durante una llamada telefonica. MX2012011623A (es)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US32187110P 2010-04-07 2010-04-07
US12/794,774 US9264659B2 (en) 2010-04-07 2010-06-06 Video conference network management for a mobile device
US12/794,766 US8744420B2 (en) 2010-04-07 2010-06-06 Establishing a video conference during a phone call
US12/794,773 US8917632B2 (en) 2010-04-07 2010-06-06 Different rate controller configurations for different cameras of a mobile device
US12/794,772 US8874090B2 (en) 2010-04-07 2010-06-06 Remote control operations in a video conference
US12/794,768 US8502856B2 (en) 2010-04-07 2010-06-06 In conference display adjustments
US12/794,775 US8451994B2 (en) 2010-04-07 2010-06-06 Switching cameras during a video conference of a multi-camera mobile device
US12/794,771 US8941706B2 (en) 2010-04-07 2010-06-06 Image processing for a dual camera mobile device
PCT/US2010/050311 WO2011126511A1 (en) 2010-04-07 2010-09-24 Establishing a video conference during a phone call

Publications (1)

Publication Number Publication Date
MX2012011623A true MX2012011623A (es) 2012-11-30

Family

ID=44760640

Family Applications (3)

Application Number Title Priority Date Filing Date
MX2012011623A MX2012011623A (es) 2010-04-07 2010-09-24 Establecimiento de una videoconferencia durante una llamada telefonica.
MX2015010523A MX342799B (es) 2010-04-07 2012-10-05 Establecimiento de una videoconferencia durante una llamada telefonica.
MX2020003290A MX2020003290A (es) 2010-04-07 2012-10-05 Establecimiento de una videoconferencia durante una llamada telefonica.

Family Applications After (2)

Application Number Title Priority Date Filing Date
MX2015010523A MX342799B (es) 2010-04-07 2012-10-05 Establecimiento de una videoconferencia durante una llamada telefonica.
MX2020003290A MX2020003290A (es) 2010-04-07 2012-10-05 Establecimiento de una videoconferencia durante una llamada telefonica.

Country Status (11)

Country Link
US (14) US8917632B2 (es)
EP (2) EP2556665B1 (es)
JP (7) JP2013524684A (es)
KR (12) KR101627818B1 (es)
CN (1) CN104270597B (es)
AU (1) AU2010350749B2 (es)
BR (1) BR112012025746B1 (es)
HK (2) HK1162797A1 (es)
MX (3) MX2012011623A (es)
TW (4) TWI439133B (es)
WO (1) WO2011126511A1 (es)

Families Citing this family (707)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8593542B2 (en) 2005-12-27 2013-11-26 DigitalOptics Corporation Europe Limited Foreground/background separation using reference images
CN101496387B (zh) 2006-03-06 2012-09-05 思科技术公司 用于移动无线网络中的接入认证的系统和方法
US8797377B2 (en) 2008-02-14 2014-08-05 Cisco Technology, Inc. Method and system for videoconference configuration
US8390667B2 (en) 2008-04-15 2013-03-05 Cisco Technology, Inc. Pop-up PIP for people not in picture
US8694658B2 (en) 2008-09-19 2014-04-08 Cisco Technology, Inc. System and method for enabling communication sessions in a network environment
TWI386863B (zh) * 2008-10-03 2013-02-21 Alpha Imaging Technology Corp 多媒體處理器、手持式電子通訊裝置及其影像處理方法
US8659637B2 (en) 2009-03-09 2014-02-25 Cisco Technology, Inc. System and method for providing three dimensional video conferencing in a network environment
US8416300B2 (en) 2009-05-20 2013-04-09 International Business Machines Corporation Traffic system for enhancing driver visibility
US8659639B2 (en) 2009-05-29 2014-02-25 Cisco Technology, Inc. System and method for extending communications between participants in a conferencing environment
KR20100135145A (ko) * 2009-06-16 2010-12-24 삼성전자주식회사 원격제어장치 및 그의 디스플레이방법
US9082297B2 (en) 2009-08-11 2015-07-14 Cisco Technology, Inc. System and method for verifying parameters in an audiovisual environment
US9277021B2 (en) * 2009-08-21 2016-03-01 Avaya Inc. Sending a user associated telecommunication address
DE102009039834A1 (de) * 2009-09-03 2011-03-10 Deutsche Telekom Ag Automatisches Sprach-Chat-System in Mobilfunknetzen mit Ortsbezug
US20220129126A9 (en) * 2009-12-20 2022-04-28 Benjamin Firooz Ghassabian System for capturing event provided from edge of touch screen
US20110153768A1 (en) * 2009-12-23 2011-06-23 International Business Machines Corporation E-meeting presentation relevance alerts
US9225916B2 (en) 2010-03-18 2015-12-29 Cisco Technology, Inc. System and method for enhancing video images in a conferencing environment
US8751667B2 (en) 2010-04-07 2014-06-10 Apple Inc. Supporting hands-free services via a hands-free device for IP video calls
US8583149B2 (en) 2010-04-07 2013-11-12 Apple Inc. Registering email addresses for online communication sessions
US8704863B2 (en) 2010-04-07 2014-04-22 Apple Inc. Transitioning between circuit switched calls and video calls
US8917632B2 (en) 2010-04-07 2014-12-23 Apple Inc. Different rate controller configurations for different cameras of a mobile device
TWI439960B (zh) 2010-04-07 2014-06-01 Apple Inc 虛擬使用者編輯環境
US8606306B2 (en) 2010-04-07 2013-12-10 Apple Inc. Multiple client computing device invitations for online communication sessions
US9955209B2 (en) 2010-04-14 2018-04-24 Alcatel-Lucent Usa Inc. Immersive viewer, a method of providing scenes on a display and an immersive viewing system
US8786664B2 (en) * 2010-04-28 2014-07-22 Qualcomm Incorporated System and method for providing integrated video communication applications on a mobile computing device
US9294716B2 (en) 2010-04-30 2016-03-22 Alcatel Lucent Method and system for controlling an imaging system
US9084002B2 (en) * 2010-05-03 2015-07-14 Microsoft Technology Licensing, Llc Heterogeneous image sensor synchronization
US9313452B2 (en) 2010-05-17 2016-04-12 Cisco Technology, Inc. System and method for providing retracting optics in a video conferencing environment
US9025030B2 (en) * 2010-06-08 2015-05-05 Cheryl Garcia Video system
US20110306325A1 (en) * 2010-06-10 2011-12-15 Rajesh Gutta Streaming video/audio from mobile phone to any device
US8335991B2 (en) * 2010-06-11 2012-12-18 Microsoft Corporation Secure application interoperation via user interface gestures
US20120001999A1 (en) * 2010-07-01 2012-01-05 Tandberg Telecom As Apparatus and method for changing a camera configuration in response to switching between modes of operation
US8723912B2 (en) 2010-07-06 2014-05-13 DigitalOptics Corporation Europe Limited Scene background blurring including face modeling
US20120030595A1 (en) * 2010-07-29 2012-02-02 Seiko Epson Corporation Information storage medium, terminal apparatus, and image generation method
US8823739B2 (en) 2010-08-25 2014-09-02 International Business Machines Corporation Background replacement for videoconferencing
US8896655B2 (en) 2010-08-31 2014-11-25 Cisco Technology, Inc. System and method for providing depth adaptive video conferencing
GB201014614D0 (en) * 2010-09-02 2010-10-13 Skype Ltd Premium communication sessions
US9024997B2 (en) * 2010-09-03 2015-05-05 At&T Intellectual Property L.L.P. Virtual presence via mobile
US8599934B2 (en) 2010-09-08 2013-12-03 Cisco Technology, Inc. System and method for skip coding during video conferencing in a network environment
CN101951492A (zh) * 2010-09-15 2011-01-19 中兴通讯股份有限公司 视频通话中视频录制的方法及装置
US9078082B2 (en) * 2010-09-24 2015-07-07 Amazon Technologies, Inc. Interacting with cloud-based applications using unrelated devices
DE102010041569B4 (de) * 2010-09-28 2017-04-06 Leica Geosystems Ag Digitales Kamerasystem, Farbfilterelement für digitales Kamerasystem, Verfahren zur Bestimmung von Abweichungen zwischen den Kameras eines digitalen Kamerasystems sowie Bildverarbeitungseinheit für digitales Kamerasystem
US8754925B2 (en) 2010-09-30 2014-06-17 Alcatel Lucent Audio source locator and tracker, a method of directing a camera to view an audio source and a video conferencing terminal
US20120083314A1 (en) * 2010-09-30 2012-04-05 Ng Hock M Multimedia Telecommunication Apparatus With Motion Tracking
US20130191742A1 (en) * 2010-09-30 2013-07-25 Rakuten, Inc. Viewing device, viewing method, non-transitory computer-readable recording medium whereon program is recorded, and script program
US20120218202A1 (en) 2010-10-01 2012-08-30 Sanjiv Sirpal Windows position control for phone applications
US9372618B2 (en) 2010-10-01 2016-06-21 Z124 Gesture based application management
US9436217B2 (en) 2010-10-01 2016-09-06 Z124 Windows position control for phone applications
US20120225694A1 (en) 2010-10-01 2012-09-06 Sanjiv Sirpal Windows position control for phone applications
US9189018B2 (en) * 2010-10-01 2015-11-17 Z124 Windows position control for phone applications
US20120225693A1 (en) 2010-10-01 2012-09-06 Sanjiv Sirpal Windows position control for phone applications
US9588545B2 (en) 2010-10-01 2017-03-07 Z124 Windows position control for phone applications
US8723913B2 (en) 2010-10-07 2014-05-13 T-Mobile Usa, Inc. Rate adaptation for video calling
CN102447843A (zh) * 2010-10-11 2012-05-09 宏达国际电子股份有限公司 投影方法及其移动装置
CA2754841C (en) * 2010-10-12 2016-11-01 Research In Motion Limited Method and apparatus for image orientation indication and correction
US9294717B2 (en) * 2010-10-13 2016-03-22 At&T Intellectual Property I, L.P. System and method to enable layered video messaging
US9237305B2 (en) * 2010-10-18 2016-01-12 Apple Inc. Overlay for a video conferencing application
US20120092381A1 (en) * 2010-10-19 2012-04-19 Microsoft Corporation Snapping User Interface Elements Based On Touch Input
KR20120040410A (ko) * 2010-10-19 2012-04-27 한국전자통신연구원 통신 시스템에서 서비스 제공 서버, 서비스 제공 노드 및 서비스 제공 방법
US20120092444A1 (en) * 2010-10-19 2012-04-19 Cisco Technology, Inc. System and method for providing videomail in a network environment
KR101738105B1 (ko) * 2010-10-22 2017-05-22 삼성디스플레이 주식회사 영상 처리 장치, 영상 처리 방법 및 평판 표시장치
US8599865B2 (en) 2010-10-26 2013-12-03 Cisco Technology, Inc. System and method for provisioning flows in a mobile network environment
US8699457B2 (en) 2010-11-03 2014-04-15 Cisco Technology, Inc. System and method for managing flows in a mobile network environment
US8730297B2 (en) 2010-11-15 2014-05-20 Cisco Technology, Inc. System and method for providing camera functions in a video environment
US8902244B2 (en) * 2010-11-15 2014-12-02 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US9143725B2 (en) 2010-11-15 2015-09-22 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US9338394B2 (en) 2010-11-15 2016-05-10 Cisco Technology, Inc. System and method for providing enhanced audio in a video environment
US8542264B2 (en) 2010-11-18 2013-09-24 Cisco Technology, Inc. System and method for managing optics in a video environment
US8723914B2 (en) 2010-11-19 2014-05-13 Cisco Technology, Inc. System and method for providing enhanced video processing in a network environment
US9111138B2 (en) 2010-11-30 2015-08-18 Cisco Technology, Inc. System and method for gesture interface control
US9264664B2 (en) * 2010-12-03 2016-02-16 Intouch Technologies, Inc. Systems and methods for dynamic bandwidth allocation
US8928810B2 (en) * 2010-12-15 2015-01-06 Bernhard Fritsch System for combining video data streams into a composite video data stream
USD682854S1 (en) 2010-12-16 2013-05-21 Cisco Technology, Inc. Display screen for graphical user interface
CN102541414A (zh) * 2010-12-28 2012-07-04 英华达(上海)科技有限公司 一种能自动切换操作模式的移动终端装置
US9218316B2 (en) 2011-01-05 2015-12-22 Sphero, Inc. Remotely controlling a self-propelled device in a virtualized environment
US9429940B2 (en) 2011-01-05 2016-08-30 Sphero, Inc. Self propelled device with magnetic coupling
US10281915B2 (en) 2011-01-05 2019-05-07 Sphero, Inc. Multi-purposed self-propelled device
US8823769B2 (en) * 2011-01-05 2014-09-02 Ricoh Company, Ltd. Three-dimensional video conferencing system with eye contact
US8589509B2 (en) * 2011-01-05 2013-11-19 Cloudium Systems Limited Controlling and optimizing system latency
US9090214B2 (en) 2011-01-05 2015-07-28 Orbotix, Inc. Magnetically coupled accessory for a self-propelled device
WO2012094349A2 (en) 2011-01-05 2012-07-12 Orbotix, Inc. Self-propelled device with actively engaged drive system
KR101739379B1 (ko) * 2011-01-11 2017-05-24 삼성전자주식회사 디지털 촬영 장치 및 이의 제어 방법
TW201233156A (en) * 2011-01-26 2012-08-01 Altek Corp Method and system for controlling external lens
US20120206568A1 (en) * 2011-02-10 2012-08-16 Google Inc. Computing device having multiple image capture devices and image modes
US8692862B2 (en) 2011-02-28 2014-04-08 Cisco Technology, Inc. System and method for selection of video data in a video conference environment
US8438233B2 (en) 2011-03-23 2013-05-07 Color Labs, Inc. Storage and distribution of content for a user device group
CN103562791A (zh) * 2011-04-18 2014-02-05 眼见360股份有限公司 用于与移动计算设备一起进行全景视频成像的装置和方法
US8581958B2 (en) * 2011-04-18 2013-11-12 Hewlett-Packard Development Company, L.P. Methods and systems for establishing video conferences using portable electronic devices
KR101764372B1 (ko) 2011-04-19 2017-08-03 삼성전자주식회사 휴대용 단말기에서 영상 합성 방법 및 장치
US8670019B2 (en) 2011-04-28 2014-03-11 Cisco Technology, Inc. System and method for providing enhanced eye gaze in a video conferencing environment
US8786631B1 (en) 2011-04-30 2014-07-22 Cisco Technology, Inc. System and method for transferring transparency information in a video environment
US9191615B1 (en) * 2011-05-02 2015-11-17 Needle, Inc. Chat window
US20120290650A1 (en) * 2011-05-11 2012-11-15 Futurewei Technologies, Inc. System and Method for Peer to Peer Communications in Cellular Communications Systems
US8934026B2 (en) 2011-05-12 2015-01-13 Cisco Technology, Inc. System and method for video coding in a dynamic environment
WO2012155951A1 (en) * 2011-05-13 2012-11-22 Valeo Schalter Und Sensoren Gmbh Camera arrangement for a vehicle and method for calibrating a camera and for operating a camera arrangement
US9098611B2 (en) * 2012-11-26 2015-08-04 Intouch Technologies, Inc. Enhanced video interaction for a user interface of a telepresence network
JP5830935B2 (ja) * 2011-05-27 2015-12-09 ソニー株式会社 情報処理装置、情報処理方法およびコンピュータプログラム
US20120307989A1 (en) * 2011-06-02 2012-12-06 Hawley Michael J Method and apparatus for multimedia calls
US9600176B2 (en) * 2011-06-16 2017-03-21 Nokia Technologies Oy Method and apparatus for controlling a spatial relationship between at least two groups of content during movement of the content
US9325935B2 (en) * 2011-06-20 2016-04-26 Cisco Technology, Inc. Preview window for video communications
US20130003543A1 (en) * 2011-06-30 2013-01-03 Avistar Communications Corporation NEXT-GENERATION BANDWIDTH MANAGEMENT CONTROL SYSTEMS FOR MULTIPLE-SERVICE CALLS, SESSIONS, PACKET-LEVEL PROCESSES, AND QoS PARAMETERS - PART 1: STRUCTURAL AND FUNCTIONAL ARCHITECTURES
US20130002532A1 (en) * 2011-07-01 2013-01-03 Nokia Corporation Method, apparatus, and computer program product for shared synchronous viewing of content
US20130067331A1 (en) * 2011-09-09 2013-03-14 Screenovate Technologies Ltd. Method and System of Simultaneous Display of Multiple Screens on a Target Display
KR101314679B1 (ko) * 2011-09-14 2013-10-07 엘지전자 주식회사 이동 단말기 및 그 동작 제어 방법
US8412772B1 (en) * 2011-09-21 2013-04-02 Color Labs, Inc. Content sharing via social networking
US8907906B2 (en) 2011-09-27 2014-12-09 Z124 Secondary single screen mode deactivation
US9152970B1 (en) 2011-09-27 2015-10-06 Amazon Technologies, Inc. Remote co-browsing session management
US9383958B1 (en) * 2011-09-27 2016-07-05 Amazon Technologies, Inc. Remote co-browsing session management
US8861893B2 (en) * 2011-09-27 2014-10-14 The Boeing Company Enhancing video using super-resolution
US8823765B2 (en) * 2011-09-30 2014-09-02 Verizon Patent And Licensing Inc. Method and apparatus for device peer resource pooling
US9009341B2 (en) * 2011-10-11 2015-04-14 Avaya Inc. Video bandwidth management system and method
JP5977498B2 (ja) * 2011-10-14 2016-08-24 キヤノン株式会社 撮像装置、撮像装置の制御方法
US9448708B1 (en) 2011-10-19 2016-09-20 Google Inc. Theming for virtual collaboration
US9118801B2 (en) 2011-10-24 2015-08-25 T-Mobile Usa, Inc. Optimizing video-call quality of service
EP3429124B1 (en) * 2011-10-24 2020-10-21 T-Mobile USA, Inc. Optimizing video-call quality of service
US8490008B2 (en) 2011-11-10 2013-07-16 Research In Motion Limited Touchscreen keyboard predictive display and generation of a set of characters
TWI492629B (zh) * 2011-11-02 2015-07-11 Quanta Comp Inc 視訊會議系統、視訊會議裝置及其方法
US9715489B2 (en) 2011-11-10 2017-07-25 Blackberry Limited Displaying a prediction candidate after a typing mistake
US9310889B2 (en) 2011-11-10 2016-04-12 Blackberry Limited Touchscreen keyboard predictive display and generation of a set of characters
US9122672B2 (en) 2011-11-10 2015-09-01 Blackberry Limited In-letter word prediction for virtual keyboard
US9652448B2 (en) 2011-11-10 2017-05-16 Blackberry Limited Methods and systems for removing or replacing on-keyboard prediction candidates
US9313100B1 (en) 2011-11-14 2016-04-12 Amazon Technologies, Inc. Remote browsing session management
JP5884421B2 (ja) * 2011-11-14 2016-03-15 ソニー株式会社 画像処理装置、画像処理装置の制御方法およびプログラム
CN103108197A (zh) 2011-11-14 2013-05-15 辉达公司 一种用于3d视频无线显示的优先级压缩方法和系统
US8947493B2 (en) 2011-11-16 2015-02-03 Cisco Technology, Inc. System and method for alerting a participant in a video conference
US9557892B2 (en) * 2011-11-26 2017-01-31 Douzen, Inc. Systems and methods for organizing and displaying hierarchical data structures in computing devices
US9430119B2 (en) 2011-11-26 2016-08-30 Douzen, Inc. Systems and methods for organizing and displaying hierarchical data structures in computing devices
US9008487B2 (en) 2011-12-06 2015-04-14 Alcatel Lucent Spatial bookmarking
WO2013085546A1 (en) 2011-12-09 2013-06-13 Hewlett-Packard Development Company, Lp Modification of images based on orientation
US9246543B2 (en) * 2011-12-12 2016-01-26 Futurewei Technologies, Inc. Smart audio and video capture systems for data processing systems
US9449583B2 (en) * 2011-12-15 2016-09-20 Lenovo (Beijing) Co., Ltd. Control method and electronic apparatus
US9569752B2 (en) * 2011-12-15 2017-02-14 Cisco Technology, Inc. Providing parameterized actionable communication messages via an electronic communication
US8682087B2 (en) 2011-12-19 2014-03-25 Cisco Technology, Inc. System and method for depth-guided image filtering in a video conference environment
US9330188B1 (en) 2011-12-22 2016-05-03 Amazon Technologies, Inc. Shared browsing sessions
CA2789827C (en) 2012-01-19 2017-06-13 Research In Motion Limited Virtual keyboard providing an indication of received input
US9557913B2 (en) 2012-01-19 2017-01-31 Blackberry Limited Virtual keyboard display having a ticker proximate to the virtual keyboard
US9829715B2 (en) 2012-01-23 2017-11-28 Nvidia Corporation Eyewear device for transmitting signal and communication method thereof
EP2811739B1 (en) * 2012-02-03 2021-11-24 Samsung SDS Co., Ltd. Terminal, image communication control server, and system and method for image communication using same
US10289660B2 (en) * 2012-02-15 2019-05-14 Apple Inc. Device, method, and graphical user interface for sharing a content object in a document
US8675113B2 (en) 2012-02-24 2014-03-18 Research In Motion Limited User interface for a digital camera
EP2631756B1 (en) * 2012-02-24 2014-11-26 BlackBerry Limited User interface for a digital camera
EP2631758B1 (en) 2012-02-24 2016-11-02 BlackBerry Limited Touchscreen keyboard providing word predictions in partitions of the touchscreen keyboard in proximate association with candidate letters
US20130227149A1 (en) * 2012-02-24 2013-08-29 Intel Mobile Communications GmbH Method for providing a communication session and device
US20130222255A1 (en) * 2012-02-24 2013-08-29 Research In Motion Limited Portable electronic device including touch-sensitive display and method of controlling same
TWI499935B (zh) * 2012-08-30 2015-09-11 Realtek Semiconductor Corp 可避免非預期性互動行為發生的多媒體互動系統及相關的電腦程式產品
TWI503704B (zh) * 2012-03-02 2015-10-11 Realtek Semiconductor Corp 可過濾多媒體互動指令的多媒體互動系統及相關的電腦程式產品
US9131192B2 (en) 2012-03-06 2015-09-08 Apple Inc. Unified slider control for modifying multiple image properties
US20130239051A1 (en) 2012-03-06 2013-09-12 Apple Inc. Non-destructive editing for a media editing application
US8971623B2 (en) 2012-03-06 2015-03-03 Apple Inc. Overlaid user interface tools for applying effects to image
JP6123274B2 (ja) * 2012-03-08 2017-05-10 株式会社リコー 撮像装置
US9489827B2 (en) 2012-03-12 2016-11-08 Cisco Technology, Inc. System and method for distributing content in a video surveillance network
WO2013143058A1 (zh) 2012-03-26 2013-10-03 华为技术有限公司 一种数据传输的方法、设备及系统
US9256457B1 (en) 2012-03-28 2016-02-09 Google Inc. Interactive response system for hosted services
US9201510B2 (en) 2012-04-16 2015-12-01 Blackberry Limited Method and device having touchscreen keyboard with visual cues
US8818345B1 (en) * 2012-04-17 2014-08-26 Sprint Communications Company L.P. Enhancing conference bridge muting to save network resources
CN103379044A (zh) * 2012-04-26 2013-10-30 鸿富锦精密工业(深圳)有限公司 网络装置及其动态调整带宽的方法
KR101452038B1 (ko) 2012-04-26 2014-10-22 삼성전기주식회사 모바일 기기 및 그 화면 제어 방법
US9354805B2 (en) 2012-04-30 2016-05-31 Blackberry Limited Method and apparatus for text selection
US9292192B2 (en) 2012-04-30 2016-03-22 Blackberry Limited Method and apparatus for text selection
US10025487B2 (en) 2012-04-30 2018-07-17 Blackberry Limited Method and apparatus for text selection
KR101858604B1 (ko) * 2012-04-30 2018-05-17 엘지전자 주식회사 이동 단말기 및 그 제어방법
US9451163B2 (en) * 2012-05-11 2016-09-20 Qualcomm Incorporated Motion sensor assisted rate control for video encoding
US9827487B2 (en) 2012-05-14 2017-11-28 Sphero, Inc. Interactive augmented reality using a self-propelled device
US9292758B2 (en) * 2012-05-14 2016-03-22 Sphero, Inc. Augmentation of elements in data content
CN104428791A (zh) 2012-05-14 2015-03-18 澳宝提克斯公司 通过检测图像中的圆形物体操作计算装置
RU2012119843A (ru) * 2012-05-15 2013-11-20 Общество с ограниченной ответственностью "Синезис" Способ отображения видеоданных на мобильном устройстве
US9049349B2 (en) * 2012-05-16 2015-06-02 Cisco Technology, Inc. System and method for video recording and retention in a network
CN103428523B (zh) * 2012-05-22 2015-07-08 华为技术有限公司 评估视频质量的方法和装置
US8830295B2 (en) 2012-05-23 2014-09-09 Google Inc. Multimedia conference endpoint transfer system
US9207860B2 (en) 2012-05-25 2015-12-08 Blackberry Limited Method and apparatus for detecting a gesture
CN102724479A (zh) * 2012-05-28 2012-10-10 康佳集团股份有限公司 具有图像实时显示和放大功能的电视系统及其实现方法
US9813666B2 (en) * 2012-05-29 2017-11-07 Qualcomm Incorporated Video transmission and reconstruction
US9083844B2 (en) 2012-06-01 2015-07-14 Nintendo Co., Ltd. Computer-readable medium, information processing apparatus, information processing system and information processing method
US9325889B2 (en) 2012-06-08 2016-04-26 Samsung Electronics Co., Ltd. Continuous video capture during switch between video capture devices
US9241131B2 (en) 2012-06-08 2016-01-19 Samsung Electronics Co., Ltd. Multiple channel communication using multiple cameras
CN104508679B (zh) 2012-06-12 2019-06-18 实耐宝公司 用于自动化工具控制系统的工具塑造
US8957915B1 (en) 2012-06-14 2015-02-17 Cinemagram Inc. Method, apparatus and system for dynamic images
US20180048750A1 (en) * 2012-06-15 2018-02-15 Muzik, Llc Audio/video wearable computer system with integrated projector
US9123145B2 (en) * 2012-06-15 2015-09-01 Disney Enterprises, Inc. Temporal noise control for sketchy animation
US9438818B2 (en) * 2012-06-20 2016-09-06 Qualcomm Incorporated Device and method for multimedia communications with picture orientation information
US9014060B2 (en) * 2012-06-21 2015-04-21 Level 3 Communications, Llc System and method for integrating VoIP client for audio conferencing
US8830296B1 (en) 2012-06-26 2014-09-09 Google Inc. Endpoint device-specific stream control for multimedia conferencing
KR101992397B1 (ko) * 2012-06-27 2019-09-27 삼성전자주식회사 영상 처리 장치, 영상 중계 장치, 영상 처리 방법 및 영상 중계 방법
US9116552B2 (en) 2012-06-27 2015-08-25 Blackberry Limited Touchscreen keyboard providing selection of word predictions in partitions of the touchscreen keyboard
US9632648B2 (en) 2012-07-06 2017-04-25 Lg Electronics Inc. Mobile terminal, image display device and user interface provision method using the same
US10165245B2 (en) 2012-07-06 2018-12-25 Kaltura, Inc. Pre-fetching video content
US9911222B2 (en) * 2012-07-06 2018-03-06 Tangome, Inc. Animation in threaded conversations
US10056791B2 (en) 2012-07-13 2018-08-21 Sphero, Inc. Self-optimizing power transfer
US9876988B2 (en) * 2012-07-13 2018-01-23 Microsoft Technology Licensing, Llc Video display modification for video conferencing environments
WO2014014238A1 (en) 2012-07-17 2014-01-23 Samsung Electronics Co., Ltd. System and method for providing image
US9131143B2 (en) 2012-07-20 2015-09-08 Blackberry Limited Dynamic region of interest adaptation and image capture device providing same
US9813255B2 (en) * 2012-07-30 2017-11-07 Microsoft Technology Licensing, Llc Collaboration environments and views
US8805431B2 (en) * 2012-07-31 2014-08-12 Motorola Solutions, Inc. Apparatus and method for initiating and sharing incident information in a communication system
US10742692B2 (en) 2012-08-09 2020-08-11 Avaya Inc. Snap-in invocation for call reconstruction
US9024995B2 (en) * 2012-08-09 2015-05-05 Samsung Electronics Co., Ltd. Video calling using a remote camera device to stream video to a local endpoint host acting as a proxy
US10601880B2 (en) * 2015-07-17 2020-03-24 Avaya Inc. Conference reconstruction in SIP networks
EP2696591B1 (en) * 2012-08-09 2019-04-10 Samsung Electronics Co., Ltd Video calling using a remote camera device to stream video to a local endpoint host acting as a proxy
KR101901919B1 (ko) * 2012-08-27 2018-09-27 삼성전자주식회사 휴대 단말기 및 메신저 영상 서비스 운용 방법
US9113033B2 (en) * 2012-08-28 2015-08-18 Microsoft Technology Licensing, Llc Mobile video conferencing with digital annotation
US9063653B2 (en) 2012-08-31 2015-06-23 Blackberry Limited Ranking predictions based on typing speed and typing confidence
US9524290B2 (en) 2012-08-31 2016-12-20 Blackberry Limited Scoring predictions based on prediction length and typing speed
US8928724B2 (en) * 2012-08-31 2015-01-06 Microsoft Corporation Unified user experience for mobile calls
US9578224B2 (en) * 2012-09-10 2017-02-21 Nvidia Corporation System and method for enhanced monoimaging
GB201216210D0 (en) 2012-09-12 2012-10-24 Appeartome Ltd Augmented reality apparatus and method
US9148625B2 (en) * 2012-09-21 2015-09-29 Cisco Technology, Inc. Transition control in a videoconference
US20140085178A1 (en) * 2012-09-24 2014-03-27 3M Innovative Properties Company Method and apparatus for controlling information display areas in a mirror display
KR20140042280A (ko) * 2012-09-28 2014-04-07 엘지전자 주식회사 포터블 디바이스 및 그 제어 방법
US9007426B2 (en) 2012-10-04 2015-04-14 Blackberry Limited Comparison-based selection of video resolutions in a video call
US10154177B2 (en) * 2012-10-04 2018-12-11 Cognex Corporation Symbology reader with multi-core processor
US10552030B2 (en) * 2012-10-15 2020-02-04 Kirusa, Inc. Multi-gesture media recording system
ITTO20120907A1 (it) * 2012-10-16 2014-04-17 Selex Galileo Spa Sistema di visione esterna e/o di puntamento di un'arma per veicoli militari terrestri ed unita' navali militari
ITTO20120908A1 (it) * 2012-10-16 2014-04-17 Selex Galileo Spa Innovativo sistema di comando e controllo e di puntamento e tiro per veicoli militari terrestri equipaggiati con almeno un'arma
EP2909971B1 (en) 2012-10-18 2020-09-02 Dolby Laboratories Licensing Corporation Systems and methods for initiating conferences using external devices
US9035995B2 (en) * 2012-10-23 2015-05-19 Electronics And Telecommunications Research Institute Method and apparatus for widening viewing angle in video conferencing system
KR101960311B1 (ko) * 2012-10-29 2019-03-20 엘지전자 주식회사 이동단말기 및 그 제어방법
KR20140063125A (ko) * 2012-11-16 2014-05-27 삼성전자주식회사 영역에 따라 다른 계수를 적용하여 화질을 개선하는 영상 처리 방법 및 그 장치
US20150304239A1 (en) * 2012-11-27 2015-10-22 Oliver Solutions Ltd. Telecommunication network node supporting hybrid management using a hardware abstraction and management protocol cross-connect function
JP5974881B2 (ja) * 2012-12-14 2016-08-23 ソニー株式会社 情報処理装置およびその制御方法
CN103024342B (zh) * 2012-12-25 2016-05-18 广东威创视讯科技股份有限公司 视频会议系统中的带宽控制方法及系统
KR102000536B1 (ko) 2012-12-28 2019-07-16 삼성전자주식회사 합성 이미지를 촬영하는 촬영 장치 및 그 방법
US9615176B2 (en) * 2012-12-28 2017-04-04 Nvidia Corporation Audio channel mapping in a portable electronic device
US8953079B2 (en) * 2012-12-31 2015-02-10 Texas Instruments Incorporated System and method for generating 360 degree video recording using MVC
KR102049977B1 (ko) * 2012-12-31 2019-11-28 엘지전자 주식회사 이동 단말기
US10021431B2 (en) * 2013-01-04 2018-07-10 Omnivision Technologies, Inc. Mobile computing device having video-in-video real-time broadcasting capability
KR20140089146A (ko) 2013-01-04 2014-07-14 삼성전자주식회사 영상 통화 방법 및 그 방법을 처리하는 전자 장치
WO2014125403A2 (en) * 2013-02-12 2014-08-21 Amit Kumar Jain Amit Method of video interaction using poster view
US9509919B2 (en) * 2014-11-17 2016-11-29 Duelight Llc System and method for generating a digital image
KR102076771B1 (ko) * 2013-02-21 2020-02-12 삼성전자주식회사 다수의 이미지 동시 포착
TWI477108B (zh) * 2013-02-22 2015-03-11 Quanta Comp Inc 視訊會議建立方法
WO2014130977A1 (en) * 2013-02-25 2014-08-28 Herold Williams Nonlinear scaling in video conferencing
KR102032541B1 (ko) * 2013-02-26 2019-11-08 삼성전자주식회사 이미지 촬영장치 및 방법
KR102032347B1 (ko) * 2013-02-26 2019-10-15 삼성전자 주식회사 이미지 센서 위치를 이용한 이미지 영역 설정 장치 및 방법
US9087393B2 (en) * 2013-03-07 2015-07-21 Apple Inc. Network display support in an integrated circuit
KR20140114501A (ko) 2013-03-14 2014-09-29 삼성전자주식회사 영상 데이터 처리 방법 및 이를 지원하는 전자 장치
US20140279029A1 (en) * 2013-03-15 2014-09-18 Paschar Llc Mobile device user interface with dynamic advertising control interface area
US9792654B1 (en) * 2013-03-15 2017-10-17 United Services Automobile Association (Usaa) Insurance claim processing via streaming video
KR101978219B1 (ko) * 2013-03-15 2019-05-14 엘지전자 주식회사 이동 단말기 및 이의 제어 방법
US10187433B2 (en) 2013-03-15 2019-01-22 Swyme Ip Bv Methods and systems for dynamic adjustment of session parameters for effective video collaboration among heterogenous devices
US20140280490A1 (en) * 2013-03-15 2014-09-18 Atakan Artun Systems and methods for visual communication
KR102037930B1 (ko) * 2013-03-15 2019-10-30 엘지전자 주식회사 이동 단말기 및 이의 제어방법
US9292264B2 (en) 2013-03-15 2016-03-22 Paschar Llc Mobile device user interface advertising software development kit
US10092165B2 (en) * 2013-03-20 2018-10-09 Covidien Lp System and method for enhancing picture-in-picture display for imaging devices used for surgical procedures
JP2014192566A (ja) * 2013-03-26 2014-10-06 Sony Corp 映像処理装置、映像処理方法およびコンピュータプログラム
JP5731088B2 (ja) * 2013-03-29 2015-06-10 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 機器制御方法、及び、プログラム
CN104104898B (zh) * 2013-04-03 2017-06-27 联想(北京)有限公司 一种数据处理方法、装置和电子设备
KR20140121711A (ko) * 2013-04-08 2014-10-16 삼성전자주식회사 색 추출 기반의 영상 처리 방법, 상기 방법을 기록한 컴퓨터 판독 가능 저장매체 및 디지털 영상 장치
US10349115B2 (en) * 2013-04-12 2019-07-09 Brian Hernandez Multimedia content management system and method of displaying remotely hosted content
US9031375B2 (en) * 2013-04-18 2015-05-12 Rapt Media, Inc. Video frame still image sequences
US9407874B2 (en) 2013-04-30 2016-08-02 Esurance Insurance Services, Inc. Remote claims adjuster
US10126904B2 (en) * 2013-05-09 2018-11-13 Amazon Technologies, Inc. Mobile device gestures
KR20140133363A (ko) * 2013-05-10 2014-11-19 삼성전자주식회사 디스플레이 장치 및 이의 제어 방법
US9197853B2 (en) * 2013-05-20 2015-11-24 Ricoh Company, Ltd Switching between views using natural gestures
JP6229314B2 (ja) * 2013-05-30 2017-11-15 ソニー株式会社 情報処理装置、表示制御方法及びプログラム
US9692831B1 (en) * 2013-05-31 2017-06-27 Google Inc. Pausing interactive sessions
KR102169523B1 (ko) 2013-05-31 2020-10-23 삼성전자 주식회사 디스플레이장치 및 그 제어방법
KR102101850B1 (ko) * 2013-06-04 2020-04-17 삼성전자주식회사 전자 장치에서 이미지를 편집하기 위한 장치 및 방법
KR102064973B1 (ko) * 2013-06-04 2020-01-10 삼성전자주식회사 듀얼 이미지를 편집하는 전자 장치 및 방법
US10074400B2 (en) 2013-06-05 2018-09-11 Snakt, Inc. Methods and systems for creating, combining, and sharing time-constrained videos
US10168882B2 (en) * 2013-06-09 2019-01-01 Apple Inc. Device, method, and graphical user interface for switching between camera interfaces
US9008296B2 (en) 2013-06-10 2015-04-14 Microsoft Technology Licensing, Llc Catching up with an ongoing conference call
US9661256B2 (en) 2014-06-26 2017-05-23 Touchcast LLC System and method for providing and interacting with coordinated presentations
US10356363B2 (en) 2013-06-26 2019-07-16 Touchcast LLC System and method for interactive video conferencing
US11659138B1 (en) 2013-06-26 2023-05-23 Touchcast, Inc. System and method for interactive video conferencing
US11405587B1 (en) 2013-06-26 2022-08-02 Touchcast LLC System and method for interactive video conferencing
US10523899B2 (en) 2013-06-26 2019-12-31 Touchcast LLC System and method for providing and interacting with coordinated presentations
US11488363B2 (en) 2019-03-15 2022-11-01 Touchcast, Inc. Augmented reality conferencing system and method
US10075676B2 (en) 2013-06-26 2018-09-11 Touchcast LLC Intelligent virtual assistant system and method
US10757365B2 (en) 2013-06-26 2020-08-25 Touchcast LLC System and method for providing and interacting with coordinated presentations
US10297284B2 (en) 2013-06-26 2019-05-21 Touchcast LLC Audio/visual synching system and method
US9787945B2 (en) 2013-06-26 2017-10-10 Touchcast LLC System and method for interactive video conferencing
WO2015000085A2 (en) * 2013-07-02 2015-01-08 Unsworth Andrew Baillie A system for activating a recording device to capture the reaction of a recipient, subject, and/or sender during a media or gift exchange
US10084849B1 (en) 2013-07-10 2018-09-25 Touchcast LLC System and method for providing and interacting with coordinated presentations
TWI496109B (zh) * 2013-07-12 2015-08-11 Vivotek Inc 影像處理器及其影像合成方法
US9232177B2 (en) * 2013-07-12 2016-01-05 Intel Corporation Video chat data processing
US9104241B2 (en) * 2013-07-17 2015-08-11 Tangome, Inc. Performing multiple functions by a mobile device during a video conference
US20150022618A1 (en) * 2013-07-18 2015-01-22 Bot Home Automation Inc. Wireless Entrance Communication Device
US9113036B2 (en) * 2013-07-17 2015-08-18 Ebay Inc. Methods, systems, and apparatus for providing video communications
AU355184S (en) 2013-08-01 2014-05-01 Palantir Tech Display screen
USD781869S1 (en) 2013-08-01 2017-03-21 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD757028S1 (en) 2013-08-01 2016-05-24 Palantir Technologies Inc. Display screen or portion thereof with graphical user interface
US20150042669A1 (en) * 2013-08-08 2015-02-12 Nvidia Corporation Rotating displayed content on an electronic device
KR20150019766A (ko) * 2013-08-16 2015-02-25 삼성전자주식회사 영상 통화 방법 및 이를 지원하는 전자 장치
US9961608B2 (en) * 2013-08-19 2018-05-01 Microsoft Technology Licensing, Llc Seamless call transitions
US9681095B2 (en) 2013-08-19 2017-06-13 Microsoft Technology Licensing, Llc Seamless call transitions with pre-escalation participation confirmation
US9888210B2 (en) 2013-08-19 2018-02-06 Microsoft Technology Licensing, Llc Seamless call transitions with pinpoint call escalation
FR3009916A1 (fr) * 2013-08-26 2015-02-27 Orange Procede et dispositif d'enrichissement d'une communication
US9973722B2 (en) 2013-08-27 2018-05-15 Qualcomm Incorporated Systems, devices and methods for displaying pictures in a picture
TWI493433B (zh) * 2013-08-28 2015-07-21 Acer Inc 被遮蔽畫面投影方法及應用該方法之可攜式電子裝置
US9401938B2 (en) * 2013-08-29 2016-07-26 Citrix Systems, Inc. Efficiently accessing web conferences from a mobile device
KR102109883B1 (ko) * 2013-09-03 2020-05-12 삼성전자주식회사 컨텐츠 전송 방법 및 전자 장치
CN104469243A (zh) * 2013-09-13 2015-03-25 联想(北京)有限公司 通信方法和电子设备
KR20150043894A (ko) * 2013-10-15 2015-04-23 삼성전자주식회사 복수의 영상의 프리뷰 영역을 조정하는 전자 장치 및 방법
US9854013B1 (en) 2013-10-16 2017-12-26 Google Llc Synchronous communication system and method
GB201318658D0 (en) * 2013-10-22 2013-12-04 Microsoft Corp Controlling resolution of encoded video
US20150109532A1 (en) * 2013-10-23 2015-04-23 Google Inc. Customizing mobile media captioning based on mobile media rendering
US9179097B2 (en) * 2013-10-23 2015-11-03 Google Inc. Control of a video conference system using personal devices
JPWO2015059793A1 (ja) 2013-10-24 2017-03-09 株式会社東芝 表示装置、表示方法および表示プログラム
US10271010B2 (en) * 2013-10-31 2019-04-23 Shindig, Inc. Systems and methods for controlling the display of content
JP6426969B2 (ja) * 2013-10-31 2018-11-21 キヤノン株式会社 撮像装置及びその制御方法、システム、並びにプログラム
US9538223B1 (en) 2013-11-15 2017-01-03 Google Inc. Synchronous communication system and method
US9307191B2 (en) * 2013-11-19 2016-04-05 Microsoft Technology Licensing, Llc Video transmission
JP5877406B2 (ja) * 2013-12-06 2016-03-08 パナソニックIpマネジメント株式会社 撮像装置及び撮像システム
KR20160090373A (ko) 2013-12-06 2016-07-29 후아웨이 디바이스 컴퍼니 리미티드 듀얼 렌즈 장치를 위한 촬영 방법 및 듀얼 렌즈 장치
KR102126507B1 (ko) * 2013-12-09 2020-06-24 삼성전자주식회사 센서 데이터 스트림을 처리하는 단말기, 시스템 및 방법
US20150163410A1 (en) * 2013-12-10 2015-06-11 Semiconductor Energy Laboratory Co., Ltd. Display Device and Electronic Device
US9628538B1 (en) * 2013-12-13 2017-04-18 Google Inc. Synchronous communication
USD790584S1 (en) * 2013-12-16 2017-06-27 Fujifilm Corporation Electronic viewfinder display screen with graphical user interface
KR102187236B1 (ko) * 2013-12-17 2020-12-04 삼성전자 주식회사 프리뷰 방법 및 이를 구현하는 전자 장치
US9829882B2 (en) 2013-12-20 2017-11-28 Sphero, Inc. Self-propelled device with center of mass drive system
US9420178B2 (en) 2013-12-20 2016-08-16 Qualcomm Incorporated Thermal and power management
US9578233B2 (en) * 2013-12-26 2017-02-21 Canon Kabushiki Kaisha Imaging apparatus and method for controlling the same
JP6312426B2 (ja) * 2013-12-26 2018-04-18 キヤノン株式会社 撮像装置およびその制御方法
US9270937B2 (en) * 2013-12-26 2016-02-23 OnCam Inc. Real time stream provisioning infrastructure
US9386275B2 (en) 2014-01-06 2016-07-05 Intel IP Corporation Interactive video conferencing
JP6324079B2 (ja) * 2014-01-14 2018-05-16 キヤノン株式会社 撮像装置、その制御方法、および制御プログラム
US10935788B2 (en) 2014-01-24 2021-03-02 Nvidia Corporation Hybrid virtual 3D rendering approach to stereovision
US9282283B2 (en) 2014-01-29 2016-03-08 Microsoft Technology Licensing, Llc Detecting patterns traced on a screen of a user device
EP3103236B1 (en) * 2014-02-04 2019-05-01 Sony Corporation Media stream from sender seen on receiver side before confirming receipt of media stream
US20150237268A1 (en) * 2014-02-20 2015-08-20 Reflective Practices, LLC Multiple Camera Imaging
CN103841353B (zh) * 2014-02-24 2017-08-01 广州华多网络科技有限公司 视频交互方法、终端、服务器及系统
US9380261B2 (en) * 2014-02-25 2016-06-28 Cisco Technology, Inc. Multi-camera access for remote video access
US9888207B2 (en) 2014-03-17 2018-02-06 Microsoft Technology Licensing, Llc Automatic camera selection
US9749585B2 (en) 2014-03-17 2017-08-29 Microsoft Technology Licensing, Llc Highlighting unread messages
US10178346B2 (en) 2014-03-17 2019-01-08 Microsoft Technology Licensing, Llc Highlighting unread messages
US10284813B2 (en) * 2014-03-17 2019-05-07 Microsoft Technology Licensing, Llc Automatic camera selection
CN103970414B (zh) * 2014-03-18 2017-06-13 深圳市艾优尼科技有限公司 一种管理应用程序图标的方法及终端
US9392217B2 (en) 2014-03-20 2016-07-12 Blackberry Limited Automatically relocating picture-in-picture window in video calls
GB201404990D0 (en) 2014-03-20 2014-05-07 Appeartome Ltd Augmented reality apparatus and method
JP2015186020A (ja) * 2014-03-24 2015-10-22 オリンパス株式会社 表示機器、撮影機器及び表示方法
JP2015195477A (ja) * 2014-03-31 2015-11-05 ブラザー工業株式会社 プログラム、端末装置および方法
JP6364965B2 (ja) * 2014-03-31 2018-08-01 株式会社リコー 伝送端末、プログラム、伝送方法、伝送システム
US9196039B2 (en) 2014-04-01 2015-11-24 Gopro, Inc. Image sensor read window adjustment for multi-camera array tolerance
KR102244248B1 (ko) * 2014-04-01 2021-04-26 삼성전자주식회사 컨텐츠 운용 방법 및 이를 지원하는 전자 장치
US9075508B1 (en) 2014-04-30 2015-07-07 Grandios Technologies, Llc Next application suggestions on a user device
US8838071B1 (en) 2014-04-30 2014-09-16 Oto Technologies Llc Secure communications smartphone system
EP3099044B1 (en) * 2014-05-15 2018-12-26 Huawei Technologies Co. Ltd. Multi-frame noise reduction method and terminal
US9363426B2 (en) 2014-05-29 2016-06-07 International Business Machines Corporation Automatic camera selection based on device orientation
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
US10565219B2 (en) 2014-05-30 2020-02-18 Apple Inc. Techniques for automatically generating a suggested contact based on a received message
US9736381B2 (en) * 2014-05-30 2017-08-15 Intel Corporation Picture in picture recording of multiple regions of interest
US9553913B2 (en) 2014-05-30 2017-01-24 Apple Inc. Seamless video pipeline transition between WiFi and cellular connections for real-time applications on mobile devices
WO2015183699A1 (en) 2014-05-30 2015-12-03 Apple Inc. Predictive messaging method
EP4365725A2 (en) 2014-05-30 2024-05-08 Apple Inc. Continuity
USD771112S1 (en) * 2014-06-01 2016-11-08 Apple Inc. Display screen or portion thereof with graphical user interface
KR102146858B1 (ko) * 2014-06-03 2020-08-21 삼성전자주식회사 촬영 장치 및 촬영 장치의 비디오 생성방법
US9590984B2 (en) 2014-06-04 2017-03-07 Grandios Technologies, Llc Smartphone fingerprint pass-through system
US9509799B1 (en) 2014-06-04 2016-11-29 Grandios Technologies, Llc Providing status updates via a personal assistant
US9078098B1 (en) 2014-06-04 2015-07-07 Grandios Technologies, Llc Geo-fencing based functions
US9323421B1 (en) 2014-06-04 2016-04-26 Grandios Technologies, Llc Timer, app, and screen management
US9420477B2 (en) 2014-06-04 2016-08-16 Grandios Technologies, Llc Signal strength management
US9619159B2 (en) 2014-06-04 2017-04-11 Grandios Technologies, Llc Storage management system
US9161193B1 (en) 2014-06-04 2015-10-13 Grandios Technologies, Llc Advanced telephone management
US9294575B1 (en) 2014-06-04 2016-03-22 Grandios Technologies, Inc. Transmitting appliance-specific content to a user device
US9395754B2 (en) 2014-06-04 2016-07-19 Grandios Technologies, Llc Optimizing memory for a wearable device
US9516467B1 (en) 2014-06-04 2016-12-06 Grandios Technologies, Llc Mobile device applications associated with geo-locations
US9584645B2 (en) 2014-06-04 2017-02-28 Grandios Technologies, Llc Communications with wearable devices
US9491562B2 (en) 2014-06-04 2016-11-08 Grandios Technologies, Llc Sharing mobile applications between callers
US9538062B2 (en) 2014-06-04 2017-01-03 Grandios Technologies, Llc Camera management system
US9509789B2 (en) 2014-06-04 2016-11-29 Grandios Technologies, Llc Managing mood data on a user device
US9391988B2 (en) 2014-06-04 2016-07-12 Grandios Technologies, Llc Community biometric authentication on a smartphone
US9377939B1 (en) 2014-06-04 2016-06-28 Grandios Technologies Application player management
US9635506B1 (en) 2014-06-05 2017-04-25 ProSports Technologies, LLC Zone based wireless player communications
US10592924B1 (en) 2014-06-05 2020-03-17 ProSports Technologies, LLC Managing third party interactions with venue communications
US9711146B1 (en) 2014-06-05 2017-07-18 ProSports Technologies, LLC Wireless system for social media management
US8995972B1 (en) 2014-06-05 2015-03-31 Grandios Technologies, Llc Automatic personal assistance between users devices
US10290067B1 (en) 2014-06-05 2019-05-14 ProSports Technologies, LLC Wireless concession delivery
US9648452B1 (en) 2014-06-05 2017-05-09 ProSports Technologies, LLC Wireless communication driven by object tracking
GB201410285D0 (en) 2014-06-10 2014-07-23 Appeartome Ltd Augmented reality apparatus and method
JP2016005083A (ja) * 2014-06-16 2016-01-12 ソニー株式会社 情報処理装置、情報処理方法及び端末装置
US9471955B2 (en) * 2014-06-19 2016-10-18 Apple Inc. Multiple display pipelines driving a divided display
US10255251B2 (en) 2014-06-26 2019-04-09 Touchcast LLC System and method for providing and interacting with coordinated presentations
US10771736B2 (en) * 2014-06-30 2020-09-08 Microsoft Technology Licensing, Llc Compositing and transmitting contextual information during an audio or video call
CN105323532B (zh) * 2014-06-30 2019-10-15 中兴通讯股份有限公司 一种移动终端图像的自适应显示方法和装置
US10318361B2 (en) 2014-07-02 2019-06-11 Atheer, Inc. Methods and systems for multiple access to a single hardware data stream
US9473737B1 (en) 2014-07-03 2016-10-18 Securus Technologies, Inc. On-demand video communication for controlled-environment facility residents
US9655027B1 (en) 2014-07-11 2017-05-16 ProSports Technologies, LLC Event data transmission to eventgoer devices
US9305441B1 (en) 2014-07-11 2016-04-05 ProSports Technologies, LLC Sensor experience shirt
US9498678B2 (en) 2014-07-11 2016-11-22 ProSports Technologies, LLC Ball tracker camera
US9724588B1 (en) 2014-07-11 2017-08-08 ProSports Technologies, LLC Player hit system
US10572902B2 (en) 2014-07-11 2020-02-25 ProSports Technologies, LLC Camera-based digital content distribution
US9474933B1 (en) 2014-07-11 2016-10-25 ProSports Technologies, LLC Professional workout simulator
WO2016007970A1 (en) 2014-07-11 2016-01-14 ProSports Technologies, LLC Whistle play stopper
US9965938B1 (en) 2014-07-11 2018-05-08 ProSports Technologies, LLC Restroom queue management
WO2016007967A1 (en) 2014-07-11 2016-01-14 ProSports Technologies, LLC Ball tracker snippets
US9343066B1 (en) 2014-07-11 2016-05-17 ProSports Technologies, LLC Social network system
US9760572B1 (en) 2014-07-11 2017-09-12 ProSports Technologies, LLC Event-based content collection for network-based distribution
WO2016007962A1 (en) 2014-07-11 2016-01-14 ProSports Technologies, LLC Camera feed distribution from event venue virtual seat cameras
US9610491B2 (en) 2014-07-11 2017-04-04 ProSports Technologies, LLC Playbook processor
US9398213B1 (en) 2014-07-11 2016-07-19 ProSports Technologies, LLC Smart field goal detector
US11070457B2 (en) * 2014-07-18 2021-07-20 Arris Enterprises Llc Remedial action based on monitored wireless throughput
US9892371B1 (en) 2014-07-28 2018-02-13 ProSports Technologies, LLC Queue information transmission
US9729644B1 (en) 2014-07-28 2017-08-08 ProSports Technologies, LLC Event and fantasy league data transmission to eventgoer devices
US10057542B2 (en) 2014-08-15 2018-08-21 Thereo LLC System for immersive telepresence
GB2529454A (en) * 2014-08-20 2016-02-24 Starleaf Ltd An electronic system for forming a control channel between an electronic device and a videotelephone device
US9742894B2 (en) 2014-08-25 2017-08-22 ProSports Technologies, LLC Disposable connectable wireless communication receiver
US9607497B1 (en) 2014-08-25 2017-03-28 ProSports Technologies, LLC Wireless communication security system
KR102391772B1 (ko) * 2014-08-28 2022-04-28 삼성전자 주식회사 터치 감응 디스플레이를 포함하는 전자 장치 및 이 전자 장치를 동작하는 방법
CN104238877B (zh) 2014-09-04 2018-03-13 华为技术有限公司 控制图标的方法和终端
US9699523B1 (en) 2014-09-08 2017-07-04 ProSports Technologies, LLC Automated clip creation
US10715577B2 (en) * 2014-09-09 2020-07-14 Vmware, Inc. Virtual desktop encoding based on user input behavior
US10264175B2 (en) 2014-09-09 2019-04-16 ProSports Technologies, LLC Facial recognition for event venue cameras
US9282287B1 (en) * 2014-09-09 2016-03-08 Google Inc. Real-time video transformations in video conferences
US9417090B2 (en) 2014-09-11 2016-08-16 ProSports Technologies, LLC System to offer coupons to fans along routes to game
WO2016049882A1 (en) * 2014-09-30 2016-04-07 Tencent Technology (Shenzhen) Company Limited Device and method for capturing, sharing and watching video messages
US9560095B2 (en) * 2014-09-30 2017-01-31 Cisco Technology, Inc. Method and system for remote meetings
US9516220B2 (en) 2014-10-02 2016-12-06 Intel Corporation Interactive video conferencing
JP6471451B2 (ja) * 2014-10-16 2019-02-20 株式会社リコー 伝送システム、通信制御装置、通信制御方法、通信方法、プログラム
USD780770S1 (en) 2014-11-05 2017-03-07 Palantir Technologies Inc. Display screen or portion thereof with graphical user interface
US10147155B2 (en) * 2014-11-26 2018-12-04 Visual Supply Company Image perspective processing
US20160165128A1 (en) * 2014-12-05 2016-06-09 Facebook, Inc. Capturing and sending images and videos based on a single user interaction with a user interface element
US10021346B2 (en) 2014-12-05 2018-07-10 Intel IP Corporation Interactive video conferencing
KR20160074334A (ko) * 2014-12-18 2016-06-28 엘지전자 주식회사 이동단말기 및 그 제어방법
US11449542B2 (en) * 2015-02-11 2022-09-20 AVAST Software s.r.o. Systems and methods for identifying unwanted photos stored on a device
US9800798B2 (en) 2015-02-13 2017-10-24 Qualcomm Incorporated Systems and methods for power optimization for imaging devices with dual cameras
GB201502434D0 (en) 2015-02-13 2015-04-01 Digital Barriers Services Ltd Video encoder
US9846919B2 (en) 2015-02-16 2017-12-19 Samsung Electronics Co., Ltd. Data processing device for processing multiple sensor data and system including the same
DE102015103778A1 (de) * 2015-03-16 2016-09-22 Connaught Electronics Ltd. Verfahren zur Ausgabe eines Bilds einer Bildsequenz auf einer Anzeigeeinheit, Anzeigevorrichtung und Kraftfahrzeug
US9667871B2 (en) * 2015-03-20 2017-05-30 Motorola Mobility Llc Remote imaging in modular cellular phone
US10600169B2 (en) * 2015-03-26 2020-03-24 Sony Corporation Image processing system and image processing method
USD775648S1 (en) * 2015-04-02 2017-01-03 Snakt, Inc. Video viewing display screen with graphical user interface for rotatable display
USD791830S1 (en) * 2015-04-10 2017-07-11 Visa International Service Association Display screen or portion thereof with animated graphical user interface
US10348777B2 (en) * 2015-04-30 2019-07-09 Telemerge, Inc. Telehealth video chat mirroring of disparate video chat devices
EP3099081B1 (en) * 2015-05-28 2020-04-29 Samsung Electronics Co., Ltd. Display apparatus and control method thereof
JP6582562B2 (ja) * 2015-05-29 2019-10-02 株式会社リコー 通信端末、通信システム、通信方法、及びプログラム
CN104853136A (zh) * 2015-05-29 2015-08-19 小米科技有限责任公司 视频通信方法及装置
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
CN105100432B (zh) * 2015-06-10 2018-02-06 小米科技有限责任公司 通话界面显示方法及装置
US10531127B2 (en) * 2015-06-19 2020-01-07 Serious Simulations, Llc Processes systems and methods for improving virtual and augmented reality applications
US9906715B2 (en) 2015-07-08 2018-02-27 Htc Corporation Electronic device and method for increasing a frame rate of a plurality of pictures photographed by an electronic device
KR20170014356A (ko) 2015-07-29 2017-02-08 엘지전자 주식회사 이동 단말기 및 이의 제어방법
CN105072336A (zh) * 2015-07-31 2015-11-18 小米科技有限责任公司 调节拍摄功能的控制方法、装置和设备
US20170034470A1 (en) * 2015-08-02 2017-02-02 Cfkk, Llc Systems and methods and apparatuses for capturing concurrent multiple perspectives of a target by mobile devices
EP3342158A4 (en) * 2015-08-25 2019-04-17 Touchcast LLC SYSTEM AND METHOD FOR INTERACTIVE VIDEOCONFERENCES
CN105120099A (zh) * 2015-08-31 2015-12-02 小米科技有限责任公司 拍摄控制方法和装置
CN105163028B (zh) * 2015-09-11 2018-09-28 青岛海信移动通信技术股份有限公司 一种双摄像头的控制方法及装置
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses
US10284503B2 (en) * 2015-09-25 2019-05-07 Lg Electronics Inc. Mobile terminal and control method thereof
US10929854B2 (en) * 2015-10-02 2021-02-23 The Western Union Company Methods and systems for real-time identification and mitigation of agent risks relating to AML
WO2017061155A1 (ja) * 2015-10-08 2017-04-13 ソニー株式会社 情報処理装置、情報処理方法及び情報処理システム
KR20170042431A (ko) 2015-10-08 2017-04-19 삼성전자주식회사 디스플레이 모양에 따라 영상 데이터를 불균일하게 인코딩/디코딩하도록 구성되는 전자 장치
US20170148438A1 (en) * 2015-11-20 2017-05-25 Conexant Systems, Inc. Input/output mode control for audio processing
US11929088B2 (en) 2015-11-20 2024-03-12 Synaptics Incorporated Input/output mode control for audio processing
US10440316B2 (en) * 2015-12-03 2019-10-08 Hisense USA Corporation Device and method for displaying a video over a network
CN105554553B (zh) * 2015-12-15 2019-02-15 腾讯科技(深圳)有限公司 通过悬浮窗口播放视频的方法及装置
JP6613131B2 (ja) * 2015-12-24 2019-11-27 京セラ株式会社 電子機器、電子機器の制御方法、電子機器の制御装置、制御プログラム及び電子機器システム
US10645137B2 (en) 2015-12-28 2020-05-05 Facebook, Inc. Systems and methods to create composite videos
US20170193644A1 (en) * 2015-12-30 2017-07-06 Ebay Inc Background removal
KR20170082349A (ko) * 2016-01-06 2017-07-14 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US9681097B1 (en) 2016-01-20 2017-06-13 Global Tel*Link Corporation Secure video visitation system
US10810673B1 (en) * 2016-01-22 2020-10-20 United Services Automobile Association (Usaa) Systems and methods for automatically reallocating investment funds
KR20170091913A (ko) 2016-02-02 2017-08-10 삼성전자주식회사 영상 서비스 제공 방법 및 장치
KR102496225B1 (ko) * 2016-02-11 2023-02-07 삼성전자 주식회사 영상 인코딩 방법 및 이를 지원하는 전자 장치
US10296994B2 (en) 2016-02-11 2019-05-21 Global Tel*Link Corporation System and method for visitation management in a controlled environment
US20170237986A1 (en) 2016-02-11 2017-08-17 Samsung Electronics Co., Ltd. Video encoding method and electronic device adapted thereto
US10257393B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Devices and methods for high dynamic range video
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
KR102412283B1 (ko) 2016-02-17 2022-06-23 삼성전자 주식회사 전자 장치 및 전자 장치의 영상 공유 제어 방법
KR102467869B1 (ko) 2016-02-19 2022-11-16 삼성전자주식회사 전자 장치 및 그의 동작 방법
US9906981B2 (en) 2016-02-25 2018-02-27 Nvidia Corporation Method and system for dynamic regulation and control of Wi-Fi scans
US20170272435A1 (en) 2016-03-15 2017-09-21 Global Tel*Link Corp. Controlled environment secure media streaming system
TWI573459B (zh) * 2016-03-18 2017-03-01 聚晶半導體股份有限公司 具有多攝像模組的電子裝置及其控制的方法
KR20170110469A (ko) * 2016-03-23 2017-10-11 삼성전자주식회사 영상 통화를 제공하기 위한 방법 및 이를 위한 전자 장치
US9558523B1 (en) 2016-03-23 2017-01-31 Global Tel* Link Corp. Secure nonscheduled video visitation system
JP2017183658A (ja) * 2016-03-31 2017-10-05 ソニー株式会社 固体撮像素子、撮像装置、および電子機器
US11322261B2 (en) * 2016-04-08 2022-05-03 19Labs Inc. System and method for implementing augmented reality during telehealth sessions in a telehealth device
US11523087B2 (en) 2016-04-14 2022-12-06 Popio Mobile Video Cloud, Llc Methods and systems for utilizing multi-pane video communications in connection with notarizing digital documents
US10511805B2 (en) 2016-04-14 2019-12-17 Popio Ip Holdings, Llc Methods and systems for multi-pane video communications to execute user workflows
US10827149B2 (en) 2016-04-14 2020-11-03 Popio Ip Holdings, Llc Methods and systems for utilizing multi-pane video communications in connection with check depositing
US9699406B1 (en) * 2016-04-14 2017-07-04 Alexander Mackenzie & Pranger Methods and systems for multi-pane video communications
USD881907S1 (en) * 2016-04-22 2020-04-21 Aetna Inc. Display screen with a graphical user interface
US20170324927A1 (en) 2016-05-06 2017-11-09 Global Tel*Link Corp. Controlled Environment Media and Communication System
KR20190005208A (ko) * 2016-05-07 2019-01-15 스마트 써드-아이 리미티드 핸드헬드 디바이스 내의 에지 카메라 어셈블리를 수반하는 시스템 및 방법
JP6700959B2 (ja) * 2016-05-11 2020-05-27 キヤノン株式会社 通信装置、通信装置の制御方法、及び、プログラム
US9762729B1 (en) * 2016-05-12 2017-09-12 Google Inc. Caller preview for video calls
JP7074056B2 (ja) * 2016-05-13 2022-05-24 ソニーグループ株式会社 画像処理装置、画像処理システム、および画像処理方法、並びにプログラム
CN107422934B (zh) 2016-05-23 2020-04-28 华为终端有限公司 一种图标的设置方法及电子设备
US10103997B2 (en) * 2016-06-01 2018-10-16 At&T Intellectual Property I, L.P. Dynamic quality of service for over-the-top content
US9854156B1 (en) 2016-06-12 2017-12-26 Apple Inc. User interface for camera effects
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
USD802000S1 (en) 2016-06-29 2017-11-07 Palantir Technologies, Inc. Display screen or portion thereof with an animated graphical user interface
USD802016S1 (en) 2016-06-29 2017-11-07 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD803246S1 (en) 2016-06-29 2017-11-21 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD826269S1 (en) 2016-06-29 2018-08-21 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD858572S1 (en) 2016-06-29 2019-09-03 Palantir Technologies Inc. Display screen or portion thereof with icon
USD847144S1 (en) 2016-07-13 2019-04-30 Palantir Technologies Inc. Display screen or portion thereof with graphical user interface
USD835646S1 (en) 2016-07-13 2018-12-11 Palantir Technologies Inc. Display screen or portion thereof with an animated graphical user interface
USD811424S1 (en) 2016-07-20 2018-02-27 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
US9948888B1 (en) * 2016-08-04 2018-04-17 Google Llc Techniques for utilizing a television for a video chat session
CA3033242A1 (en) 2016-08-09 2018-02-15 Contrast, Inc. Real-time hdr video for vehicle control
USD802615S1 (en) * 2016-08-30 2017-11-14 Google Inc. Display screen with animated graphical user interface
USD802004S1 (en) 2016-08-30 2017-11-07 Google Inc. Display screen with animated graphical user interface
USD802005S1 (en) 2016-08-30 2017-11-07 Google Inc. Display screen with animated graphical user interface
US9729820B1 (en) * 2016-09-02 2017-08-08 Russell Holmes Systems and methods for providing real-time composite video from multiple source devices
US9979921B2 (en) 2016-09-02 2018-05-22 Russell Holmes Systems and methods for providing real-time composite video from multiple source devices
US10089793B2 (en) 2016-09-02 2018-10-02 Russell Holmes Systems and methods for providing real-time composite video from multiple source devices featuring augmented reality elements
WO2018045571A1 (zh) 2016-09-09 2018-03-15 深圳市大疆创新科技有限公司 图像编码方法及系统
KR102596477B1 (ko) 2016-09-23 2023-11-02 애플 인크. 아바타 생성 및 편집
RU2696767C1 (ru) * 2016-10-31 2019-08-06 Бейджин Сяоми Мобайл Софтвэре Ко., Лтд. Способ и система трансляции мультимедийной информации в режиме реального времени, устройство сбора информации и сервер проверки информации
US20180131710A1 (en) * 2016-11-07 2018-05-10 Microsoft Technology Licensing, Llc Network telephony anomaly detection images
CN108063745B (zh) * 2016-11-08 2019-03-01 视联动力信息技术股份有限公司 一种基于安卓设备的视频通话方法及其系统
US10116898B2 (en) * 2016-11-18 2018-10-30 Facebook, Inc. Interface for a video call
US10079994B2 (en) 2016-11-18 2018-09-18 Facebook, Inc. Methods and systems for displaying relevant participants in a video communication
TWI617969B (zh) 2016-11-24 2018-03-11 新加坡商雲網科技新加坡有限公司 畫面控制方法及使用者終端
CN106534695B (zh) * 2016-11-28 2021-10-22 宇龙计算机通信科技(深圳)有限公司 拍摄方法、拍摄装置和终端
USD808991S1 (en) 2016-12-22 2018-01-30 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
US10559309B2 (en) * 2016-12-22 2020-02-11 Google Llc Collaborative voice controlled devices
CN108234788A (zh) * 2016-12-22 2018-06-29 展讯通信(上海)有限公司 电话会议的管理方法、装置、终端及网络侧设备
US10477277B2 (en) * 2017-01-06 2019-11-12 Google Llc Electronic programming guide with expanding cells for video preview
US10586111B2 (en) 2017-01-13 2020-03-10 Google Llc Using machine learning to detect which part of the screen includes embedded frames of an uploaded video
CN110168630B (zh) * 2017-02-03 2021-12-28 杰创科系统有限公司 增强视频现实
US20180227502A1 (en) * 2017-02-06 2018-08-09 Qualcomm Incorporated Systems and methods for reduced power consumption in imaging pipelines
KR102557662B1 (ko) 2017-02-09 2023-07-19 삼성전자주식회사 이미지 처리 장치 및 이를 포함하는 전자 장치
USD868827S1 (en) 2017-02-15 2019-12-03 Palantir Technologies, Inc. Display screen or portion thereof with set of icons
US10038877B1 (en) * 2017-03-13 2018-07-31 Microsoft Technology Licensing, Llc Event conditioned views for teleconferencing sessions
WO2018175621A1 (en) * 2017-03-23 2018-09-27 Ring Inc. Audio/video recording and communication devices with multiple cameras having variable capture settings
KR102402096B1 (ko) * 2017-03-27 2022-05-26 삼성전자주식회사 이미지 내 오브젝트와 관련된 정보를 제공하는 전자 장치
USD834039S1 (en) 2017-04-12 2018-11-20 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
WO2018191514A1 (en) * 2017-04-12 2018-10-18 Marble Robot, Inc. Method for sensor data processing
USD839298S1 (en) 2017-04-19 2019-01-29 Palantir Technologies Inc. Display screen or portion thereof with graphical user interface
USD822705S1 (en) 2017-04-20 2018-07-10 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
US10255525B1 (en) * 2017-04-25 2019-04-09 Uber Technologies, Inc. FPGA device for image classification
USD905713S1 (en) * 2017-04-28 2020-12-22 Oshkosh Defense, Llc Display screen or portion thereof with graphical user interface
USD872736S1 (en) 2017-05-04 2020-01-14 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
US10466889B2 (en) 2017-05-16 2019-11-05 Apple Inc. Devices, methods, and graphical user interfaces for accessing notifications
US10540080B2 (en) * 2017-05-23 2020-01-21 Melissa SULLY Visual media capture and user interface animation
USD837234S1 (en) 2017-05-25 2019-01-01 Palantir Technologies Inc. Display screen or portion thereof with transitional graphical user interface
US10412139B2 (en) 2017-05-26 2019-09-10 Streamsure Solutions Limited Communication event
DK180859B1 (en) 2017-06-04 2022-05-23 Apple Inc USER INTERFACE CAMERA EFFECTS
US10896622B2 (en) 2017-06-20 2021-01-19 Global Tel*Link Corporation Educational content delivery system for controlled environments
US11265530B2 (en) * 2017-07-10 2022-03-01 Contrast, Inc. Stereoscopic camera
USD881216S1 (en) * 2017-07-14 2020-04-14 Huawei Technologies Co., Ltd. Display screen or portion thereof with graphical user interface
TWI650018B (zh) * 2017-07-18 2019-02-01 晶睿通訊股份有限公司 提供使用者介面以進行場景之監控畫面縫合之方法及其電子裝置
US11164151B2 (en) 2017-07-20 2021-11-02 Global Tel*Link Corporation System and method for providing job-specific training and employment to residents of a controlled environment facility
US10554705B2 (en) * 2017-07-26 2020-02-04 Sony Corporation System and method for controlling client electronic devices in wireless local ad hoc network
US10015546B1 (en) 2017-07-27 2018-07-03 Global Tel*Link Corp. System and method for audio visual content creation and publishing within a controlled environment
US10122825B1 (en) 2017-07-27 2018-11-06 Global Tel*Link Corporation Systems and methods for providing a visual content gallery within a controlled environment
US10405007B2 (en) 2017-07-27 2019-09-03 Global Tel*Link Corporation Systems and methods for a video sharing service within controlled environments
US10565247B2 (en) 2017-07-28 2020-02-18 Global Tel*Link Corporation Controlled environment secure media streaming system with digital video recording
USD874472S1 (en) 2017-08-01 2020-02-04 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
US9992449B1 (en) * 2017-08-10 2018-06-05 Everysight Ltd. System and method for sharing sensed data between remote users
US11213754B2 (en) 2017-08-10 2022-01-04 Global Tel*Link Corporation Video game center for a controlled environment facility
US11785180B2 (en) 2017-09-11 2023-10-10 Reelay Meetings, Inc. Management and analysis of related concurrent communication sessions
US10382722B1 (en) * 2017-09-11 2019-08-13 Michael H. Peters Enhanced video conference management
US11290686B2 (en) 2017-09-11 2022-03-29 Michael H Peters Architecture for scalable video conference management
US11122240B2 (en) 2017-09-11 2021-09-14 Michael H Peters Enhanced video conference management
US11128610B2 (en) * 2017-09-29 2021-09-21 Apple Inc. Secure multiway calling
US10372298B2 (en) * 2017-09-29 2019-08-06 Apple Inc. User interface for multi-user communication session
WO2019071287A1 (en) * 2017-10-11 2019-04-18 Liveshop Pty Ltd ONLINE SHOPPING SYSTEM
USD936671S1 (en) * 2017-10-23 2021-11-23 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US10693830B2 (en) 2017-10-26 2020-06-23 Halo Innovative Solutions Llc Methods, systems, apparatuses and devices for facilitating live streaming of content on multiple social media platforms
US11323407B2 (en) 2017-10-26 2022-05-03 Halo Innovative Solutions Llc Methods, systems, apparatuses, and devices for facilitating managing digital content captured using multiple content capturing devices
US11553216B2 (en) 2017-10-26 2023-01-10 Halo Innovative Solutions Llc Systems and methods of facilitating live streaming of content on multiple social media platforms
US10999642B1 (en) * 2017-11-03 2021-05-04 Snap Inc. Multi-video capture system
USD872121S1 (en) 2017-11-14 2020-01-07 Palantir Technologies, Inc. Display screen or portion thereof with transitional graphical user interface
CN107959965B (zh) * 2017-11-20 2021-03-19 Oppo广东移动通信有限公司 应用程序的降帧方法、装置、移动终端及可读存储介质
CN109922204A (zh) * 2017-12-13 2019-06-21 中兴通讯股份有限公司 图像处理方法及终端
US10331394B1 (en) 2017-12-21 2019-06-25 Logmein, Inc. Manipulating shared screen content
US10747411B2 (en) * 2017-12-29 2020-08-18 Facebook, Inc. Systems and methods for generating and sharing content
US11019305B2 (en) * 2018-01-12 2021-05-25 Facebook, Inc. Coordinated effects in videos
KR102552137B1 (ko) * 2018-01-22 2023-07-07 삼성디스플레이 주식회사 표시 장치 및 이의 구동 방법
US10212472B1 (en) * 2018-02-05 2019-02-19 Mcleanics Technology Corporation Record me-a-stream
US11112964B2 (en) 2018-02-09 2021-09-07 Apple Inc. Media capture lock affordance for graphical user interface
USD883997S1 (en) 2018-02-12 2020-05-12 Palantir Technologies, Inc. Display screen or portion thereof with transitional graphical user interface
USD883301S1 (en) 2018-02-19 2020-05-05 Palantir Technologies, Inc. Display screen or portion thereof with transitional graphical user interface
USD872116S1 (en) * 2018-02-22 2020-01-07 Samsung Electronics Co., Ltd. Display screen or portion thereof with transitional graphical user interface
CN108536345B (zh) * 2018-03-02 2019-09-10 Oppo广东移动通信有限公司 应用程序图标处理方法、装置以及移动终端
US10831331B2 (en) * 2018-03-09 2020-11-10 International Business Machines Corporation Window control for simultaneously running applications
CN108762652B (zh) * 2018-03-27 2020-08-21 Oppo广东移动通信有限公司 智能终端的显示控制方法、装置、存储介质及智能终端
USD888082S1 (en) 2018-04-03 2020-06-23 Palantir Technologies, Inc. Display screen or portion thereof with transitional graphical user interface
USD869488S1 (en) 2018-04-03 2019-12-10 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD886848S1 (en) 2018-04-03 2020-06-09 Palantir Technologies Inc. Display screen or portion thereof with transitional graphical user interface
USD885413S1 (en) 2018-04-03 2020-05-26 Palantir Technologies Inc. Display screen or portion thereof with transitional graphical user interface
US20190313026A1 (en) * 2018-04-09 2019-10-10 Qualcomm Incorporated Multi-context real time inline image signal processing
US11722764B2 (en) 2018-05-07 2023-08-08 Apple Inc. Creative camera
EP3659296B1 (en) * 2018-05-07 2022-01-05 Apple Inc. Multi-participant live communication user interface
DK201870364A1 (en) 2018-05-07 2019-12-03 Apple Inc. MULTI-PARTICIPANT LIVE COMMUNICATION USER INTERFACE
JP7073238B2 (ja) * 2018-05-07 2022-05-23 アップル インコーポレイテッド クリエイティブカメラ
US10375313B1 (en) 2018-05-07 2019-08-06 Apple Inc. Creative camera
DK180078B1 (en) 2018-05-07 2020-03-31 Apple Inc. USER INTERFACE FOR AVATAR CREATION
US10951888B2 (en) 2018-06-04 2021-03-16 Contrast, Inc. Compressed high dynamic range video
USD888765S1 (en) * 2018-06-05 2020-06-30 Ernieapp Ltd. Display screen or portion thereof with graphical user interface
EP3803559A4 (en) 2018-06-05 2022-04-27 T1V, Inc. VIDEO CONFERENCING DURING REAL-TIME COLLABORATION ON A VIRTUAL CANVAS
US11334960B2 (en) 2018-06-08 2022-05-17 Uatc, Llc Systems and methods for pipelined processing of sensor data using hardware
USD937857S1 (en) * 2018-06-11 2021-12-07 Patientory, Inc. Display screen or portion thereof with graphical user interface
US10594418B2 (en) * 2018-07-16 2020-03-17 Luke Gregory Stavrowsky Voice operated electronic device that blocks radio commercials and substitutes alternate audio content
USD879821S1 (en) 2018-08-02 2020-03-31 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD962953S1 (en) 2018-08-03 2022-09-06 Kilpatrick Townsend & Stockton Llp Display screen or portion thereof having an icon
USD928800S1 (en) * 2018-08-03 2021-08-24 Kilpatrick Townsend & Stockton Llp Display screen or portion thereof having an icon
CN109005377B (zh) * 2018-08-10 2020-07-17 维沃移动通信有限公司 一种视频处理方法及终端设备
TWI687102B (zh) * 2018-08-23 2020-03-01 奇勤科技股份有限公司 雙邊控制之遠端視訊系統及其方法
TWI684338B (zh) * 2018-08-29 2020-02-01 圓展科技股份有限公司 網路會議的執行方法
US10728529B2 (en) 2018-09-06 2020-07-28 Qualcomm Incorporated Synchronization of frame captures from multiple cameras with different fields of capture
DK201870623A1 (en) 2018-09-11 2020-04-15 Apple Inc. USER INTERFACES FOR SIMULATED DEPTH EFFECTS
US10674072B1 (en) 2019-05-06 2020-06-02 Apple Inc. User interfaces for capturing and managing visual media
US11770601B2 (en) 2019-05-06 2023-09-26 Apple Inc. User interfaces for capturing and managing visual media
US11128792B2 (en) 2018-09-28 2021-09-21 Apple Inc. Capturing and displaying images with multiple focal planes
US11321857B2 (en) 2018-09-28 2022-05-03 Apple Inc. Displaying and editing images with depth information
US10902761B2 (en) * 2018-09-30 2021-01-26 Chongqing Hkc Optoelectronics Technology Co., Ltd. Quality determination method of a display panel, determination system and computer readable storage medium
CN115580709A (zh) * 2018-10-26 2023-01-06 深圳市道通智能航空技术股份有限公司 航拍相机的图像处理方法、图像处理系统及无人机
CN109120869A (zh) * 2018-11-07 2019-01-01 深圳市道通智能航空技术有限公司 双光图像整合方法、整合设备及无人机
CN109525880A (zh) * 2018-11-08 2019-03-26 北京微播视界科技有限公司 视频数据的合成方法、装置、设备和存储介质
US11574476B2 (en) * 2018-11-11 2023-02-07 Netspark Ltd. On-line video filtering
WO2020095294A1 (en) 2018-11-11 2020-05-14 Netspark Ltd. On-line video filtering
US10531039B1 (en) 2018-11-13 2020-01-07 International Business Machines Corporation Dynamically switching cameras in web conference
CN109327672B (zh) * 2018-12-11 2020-09-22 维沃移动通信有限公司 一种视频通话方法及终端
USD973699S1 (en) * 2018-12-21 2022-12-27 Richard Herbst Computer screen display or portion thereof with graphical user interface
USD919645S1 (en) 2019-01-02 2021-05-18 Palantir Technologies, Inc. Display screen or portion thereof with transitional graphical user interface
US11107261B2 (en) 2019-01-18 2021-08-31 Apple Inc. Virtual avatar animation based on facial feature movement
KR20200091522A (ko) 2019-01-22 2020-07-31 삼성전자주식회사 컨텐츠의 표시 방향을 제어하기 위한 방법 및 그 전자 장치
USD916789S1 (en) 2019-02-13 2021-04-20 Palantir Technologies, Inc. Display screen or portion thereof with transitional graphical user interface
US11964202B2 (en) 2019-02-22 2024-04-23 Mursion, Inc. Peer to peer communication system and method
US11805158B2 (en) 2019-03-20 2023-10-31 Zoom Video Communications, Inc. Method and system for elevating a phone call into a video conferencing session
KR20200117695A (ko) * 2019-04-05 2020-10-14 삼성전자주식회사 외부 전자 장치를 이용하여 카메라를 제어하는 전자 장치 및 방법
USD953345S1 (en) 2019-04-23 2022-05-31 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
US10999629B1 (en) * 2019-04-23 2021-05-04 Snap Inc. Automated graphical image modification scaling based on rules
USD947240S1 (en) * 2019-04-26 2022-03-29 The Dedham Group Llc Display screen or portion thereof with graphical user interface
USD947239S1 (en) * 2019-04-26 2022-03-29 The Dedham Group Llc Display screen or portion thereof with graphical user interface
USD947221S1 (en) * 2019-04-26 2022-03-29 The Dedham Group Llc Display screen or portion thereof with graphical user interface
US11706521B2 (en) 2019-05-06 2023-07-18 Apple Inc. User interfaces for capturing and managing visual media
US11087560B2 (en) 2019-05-15 2021-08-10 Microsoft Technology Licensing, Llc Normalization of objects for a 3D environment within an authoring application
US11287947B2 (en) 2019-05-15 2022-03-29 Microsoft Technology Licensing, Llc Contextual input in a three-dimensional environment
USD894942S1 (en) 2019-05-29 2020-09-01 Apple Inc. Electronic device with graphical user interface
US11010121B2 (en) 2019-05-31 2021-05-18 Apple Inc. User interfaces for audio media control
CN117170620A (zh) 2019-05-31 2023-12-05 苹果公司 用于音频媒体控件的用户界面
US10771740B1 (en) * 2019-05-31 2020-09-08 International Business Machines Corporation Adding an individual to a video conference
US11611608B1 (en) * 2019-07-19 2023-03-21 Snap Inc. On-demand camera sharing over a network
CN112673632A (zh) * 2019-07-31 2021-04-16 西安诺瓦星云科技股份有限公司 数据处理方法、装置和系统以及系统控制器和模组控制器
TWI707339B (zh) * 2019-08-27 2020-10-11 瑞昱半導體股份有限公司 影像處理電路以及影像處理方法
CN110505428B (zh) * 2019-08-28 2021-06-15 联想(北京)有限公司 一种信息处理方法及电子设备
CN112449097A (zh) * 2019-08-29 2021-03-05 中兴通讯股份有限公司 视频通信方法、终端及存储介质
CN110650341A (zh) * 2019-09-29 2020-01-03 华为终端有限公司 视频交互方法及相关设备
CN110661993A (zh) * 2019-10-17 2020-01-07 维沃移动通信有限公司 一种视频显示内容的处理方法及终端设备
CN110856014B (zh) * 2019-11-05 2023-03-07 北京奇艺世纪科技有限公司 动态图像生成方法、装置、电子设备及存储介质
CN110896495A (zh) 2019-11-19 2020-03-20 北京字节跳动网络技术有限公司 用于目标设备的视图调整方法、装置、电子设备和介质
US11252206B2 (en) * 2019-12-03 2022-02-15 Microsoft Technology Licensing, Llc Reducing setup time for online meetings
CN111050091B (zh) * 2019-12-23 2021-04-13 联想(北京)有限公司 输出控制方法、装置及电子设备
US10924709B1 (en) * 2019-12-27 2021-02-16 Microsoft Technology Licensing, Llc Dynamically controlled view states for improved engagement during communication sessions
US10917608B1 (en) 2019-12-27 2021-02-09 Microsoft Technology Licensing, Llc Dynamically controlled aspect ratios based on a number of participants depicted in communication video streams
US11050973B1 (en) 2019-12-27 2021-06-29 Microsoft Technology Licensing, Llc Dynamically controlled aspect ratios for communication session video streams
US11006076B1 (en) * 2019-12-31 2021-05-11 Facebook, Inc. Methods and systems for configuring multiple layouts of video capture
US11064256B1 (en) 2020-01-15 2021-07-13 Microsoft Technology Licensing, Llc Dynamic configuration of communication video stream arrangements based on an aspect ratio of an available display area
US10980397B1 (en) 2020-02-21 2021-04-20 Ambu A/S Video processing device
US11166622B2 (en) 2020-02-21 2021-11-09 Ambu A/S Video processing apparatus
US10835106B1 (en) 2020-02-21 2020-11-17 Ambu A/S Portable monitor
US11109741B1 (en) 2020-02-21 2021-09-07 Ambu A/S Video processing apparatus
US11416127B2 (en) 2020-03-10 2022-08-16 Apple Inc. Devices, methods, and graphical user interfaces for interacting with user interface objects corresponding to applications
CN111246032B (zh) 2020-03-27 2021-07-30 北京小米移动软件有限公司 通话管理方法和装置
EP3913911A1 (fr) * 2020-04-02 2021-11-24 Société Anonyme Edagora Système de visiophonie simple
EP3902244B1 (en) * 2020-04-23 2022-03-23 Axis AB Controlling a pan-tilt-zoom camera
US11470300B2 (en) 2020-05-08 2022-10-11 Tencent America LLC Event-based trigger interval for signaling of RTCP viewport for immersive teleconferencing and telepresence for remote terminals
US11921998B2 (en) 2020-05-11 2024-03-05 Apple Inc. Editing features of an avatar
US11513667B2 (en) 2020-05-11 2022-11-29 Apple Inc. User interface for audio message
DK181103B1 (en) 2020-05-11 2022-12-15 Apple Inc User interfaces related to time
US11416831B2 (en) 2020-05-21 2022-08-16 HUDDL Inc. Dynamic video layout in video conference meeting
CN111641797B (zh) * 2020-05-25 2022-02-18 北京字节跳动网络技术有限公司 视频通话界面显示控制方法、装置、存储介质及设备
US11039074B1 (en) 2020-06-01 2021-06-15 Apple Inc. User interfaces for managing media
CN113938633B (zh) * 2020-06-29 2023-09-08 聚好看科技股份有限公司 一种视频通话处理方法及显示设备
KR102310577B1 (ko) * 2020-06-29 2021-10-13 주식회사 씨앤에이아이 Rtp 패킷 관리 장치 및 방법
USD944837S1 (en) * 2020-09-03 2022-03-01 PassiveLogic, Inc. Display screen or portion thereof with animated graphical user interface
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
US11212449B1 (en) 2020-09-25 2021-12-28 Apple Inc. User interfaces for media capture and management
US20220116552A1 (en) * 2020-10-08 2022-04-14 Vidiplus, Ltd System and/or Method for Enhancing Content in Live Streaming Video
US11425412B1 (en) * 2020-11-10 2022-08-23 Amazon Technologies, Inc. Motion cues for video encoding
CN112422871B (zh) * 2020-11-12 2023-05-16 广东保伦电子股份有限公司 一种基于ios平台的双流视频会议方法及处理终端
KR102408303B1 (ko) * 2020-11-17 2022-06-10 주식회사 카카오 컨텐츠 정보 제공 방법 및 컨텐츠 정보를 제공하는 사용자 단말
US11729387B1 (en) * 2020-12-03 2023-08-15 Amazon Technologies, Inc. Automatic configuration of settings for a video encoder
US11792353B2 (en) * 2020-12-07 2023-10-17 Avaya Management L.P. Systems and methods for displaying users participating in a communication session
USD992562S1 (en) * 2020-12-23 2023-07-18 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD965004S1 (en) * 2021-01-11 2022-09-27 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US11477325B2 (en) 2021-01-28 2022-10-18 Zoom Video Communications, Inc. Elevating a telephone call to a virtual meeting
US11431891B2 (en) 2021-01-31 2022-08-30 Apple Inc. User interfaces for wide angle video conference
CN116615904A (zh) * 2021-01-31 2023-08-18 苹果公司 用于广角视频会议的用户界面
US11800056B2 (en) 2021-02-11 2023-10-24 Logitech Europe S.A. Smart webcam system
CN113031839B (zh) * 2021-02-22 2022-08-16 北京字节跳动网络技术有限公司 视频通话中的图像处理方法、装置、设备和介质
US11800048B2 (en) 2021-02-24 2023-10-24 Logitech Europe S.A. Image generating system with background replacement or modification capabilities
JP7082224B1 (ja) * 2021-03-02 2022-06-07 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、及び制御方法
US11451694B1 (en) 2021-03-16 2022-09-20 International Business Machines Corporation Mitigation of obstacles while capturing media content
US11516517B2 (en) 2021-03-19 2022-11-29 Sm Tamjid Localized dynamic video streaming system
USD978179S1 (en) * 2021-03-31 2023-02-14 453I Display screen or portion thereof with a graphical user interface for a digital card
US20220337781A1 (en) * 2021-04-16 2022-10-20 Hyperconnect, Inc. Methods, Systems, and Computer Program Products for Providing Video Call Service
US11539876B2 (en) 2021-04-30 2022-12-27 Apple Inc. User interfaces for altering visual media
US11778339B2 (en) 2021-04-30 2023-10-03 Apple Inc. User interfaces for altering visual media
US11907605B2 (en) 2021-05-15 2024-02-20 Apple Inc. Shared-content session user interfaces
US20220368548A1 (en) 2021-05-15 2022-11-17 Apple Inc. Shared-content session user interfaces
US11893214B2 (en) 2021-05-15 2024-02-06 Apple Inc. Real-time communication user interface
US11776190B2 (en) 2021-06-04 2023-10-03 Apple Inc. Techniques for managing an avatar on a lock screen
US11847378B2 (en) 2021-06-06 2023-12-19 Apple Inc. User interfaces for audio routing
WO2022260654A1 (en) * 2021-06-08 2022-12-15 Hewlett-Packard Development Company, L.P. Video conference images
US11330145B1 (en) 2021-06-10 2022-05-10 Bank Of America Corporation Image processing edge device for document noise removal
US20230045610A1 (en) * 2021-08-03 2023-02-09 Dell Products, L.P. Eye contact correction in a communication or collaboration session using a platform framework
US11516434B1 (en) * 2021-08-26 2022-11-29 Motorola Mobility Llc Routing visual content from different camera systems to different applications during video call
KR102482924B1 (ko) * 2021-08-26 2022-12-29 주식회사 모노랩스 리펄시브 포스를 통한 얼굴 중심 비대면 커뮤니케이션 시스템
US11770600B2 (en) 2021-09-24 2023-09-26 Apple Inc. Wide angle video conference
JP2023058322A (ja) * 2021-10-13 2023-04-25 キヤノン株式会社 映像処理装置及びその制御方法及びプログラム
WO2023122820A1 (pt) * 2021-12-27 2023-07-06 Rosan Ismael Smartphone estereoscópico 3d
US11722767B2 (en) * 2022-01-10 2023-08-08 Motorola Mobility Llc Automatic camera selection in a communication device
US11838332B2 (en) 2022-01-10 2023-12-05 Motorola Mobility Llc Context based automatic camera selection in a communication device
TWI802258B (zh) * 2022-02-07 2023-05-11 明基電通股份有限公司 視訊會議系統
WO2023196231A1 (en) * 2022-04-04 2023-10-12 Apple Inc. User interfaces for camera sharing
CN114531554B (zh) * 2022-04-24 2022-08-16 浙江华眼视觉科技有限公司 一种快件码识别机的视频融合合成方法及装置
US11842028B2 (en) 2022-05-06 2023-12-12 Apple Inc. Devices, methods, and graphical user interfaces for updating a session region
EP4273678A1 (en) 2022-05-06 2023-11-08 Apple Inc. Devices, methods, and graphical user interfaces for updating a session region
US20230377609A1 (en) * 2022-05-23 2023-11-23 Snap Inc. Creating time-based combination videos
WO2023235519A1 (en) * 2022-06-03 2023-12-07 Datasya Ltd. Interactive multimedia collaboration platform with remote-controlled camera and annotation
JP7208689B1 (ja) 2022-06-29 2023-01-19 テレポート株式会社 情報処理プログラム
KR20240016784A (ko) * 2022-07-29 2024-02-06 삼성전자주식회사 화상통화 서비스를 제공가능한 전자 장치 및 그 제어방법
US20240089435A1 (en) * 2022-09-13 2024-03-14 Google Llc Setting a Maximum Quantization Parameter for Encoding a Video Frame
US11949923B1 (en) * 2022-12-19 2024-04-02 Adobe Inc. Trigger based digital content caching

Family Cites Families (198)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US102663A (en) * 1870-05-03 Jonathan dillen
US1279477A (en) 1918-01-10 1918-09-17 Frederick Stellar Insect gathering and destroying machine.
US4809069A (en) 1988-03-10 1989-02-28 North American Philips Corporation Multifunction memory for digital television
DE69106183T2 (de) 1990-03-15 1995-06-22 Canon Kk Gerät zur Sprach- und Videoübertragung.
US5371534A (en) 1992-07-23 1994-12-06 At&T Corp. ISDN-based system for making a video call
JPH06113297A (ja) * 1992-09-25 1994-04-22 A W New Hard:Kk テレビ電話のモニタ装置
US5717857A (en) 1993-03-19 1998-02-10 Ncr Corporation System for switching data connection to use first channel and second channel without substantial interruption of transfer of audio signals and image data between computers
JPH06276335A (ja) * 1993-03-22 1994-09-30 Sony Corp データ処理装置
JP3039186B2 (ja) 1993-03-23 2000-05-08 日本電気株式会社 テレビ会議画像制御方式
USRE43462E1 (en) * 1993-04-21 2012-06-12 Kinya (Ken) Washino Video monitoring and conferencing system
JPH07135594A (ja) 1993-11-11 1995-05-23 Canon Inc 撮像制御装置
US5896128A (en) 1995-05-03 1999-04-20 Bell Communications Research, Inc. System and method for associating multimedia objects for use in a video conferencing system
US6356555B1 (en) * 1995-08-25 2002-03-12 Terayon Communications Systems, Inc. Apparatus and method for digital data transmission using orthogonal codes
KR970031883A (ko) 1995-11-28 1997-06-26 배순훈 터치스크린을 이용한 tv 화면제어방법
JPH09247655A (ja) * 1996-03-01 1997-09-19 Tokyu Constr Co Ltd リモート制御システム
KR100281526B1 (ko) 1996-07-08 2001-02-15 윤종용 음성/화상 전화 모드 전환기능을 갖는 화상 전화 시스템 및 그 전환방법
EP0930768A4 (en) 1997-03-03 2004-12-01 Toshiba Kk TELECOMMUNICATIONS TERMINAL
DE19804564A1 (de) 1998-02-05 1999-08-12 Fraunhofer Ges Forschung Kommunikationsnetz, Verfahren zum Übertragen eines Signals, Netzverbindungseinheit und Verfahren zum Anpassen der Datenrate eines skalierten Datenstroms
US6346962B1 (en) * 1998-02-27 2002-02-12 International Business Machines Corporation Control of video conferencing system with pointing device
JP3475809B2 (ja) 1998-10-14 2003-12-10 株式会社デンソー 携帯型テレビ無線電話
US6025871A (en) * 1998-12-31 2000-02-15 Intel Corporation User interface for a video conferencing system
WO2000049570A1 (en) * 1999-02-19 2000-08-24 Unisearch Limited Method for visual optimisation of embedded block codes to exploit visual masking phenomena
JP2001054084A (ja) 1999-08-09 2001-02-23 Matsushita Electric Ind Co Ltd テレビ電話装置
FI109742B (fi) 1999-10-26 2002-09-30 Nokia Corp Matkaviestin
JP3546784B2 (ja) * 1999-12-14 2004-07-28 日本電気株式会社 携帯端末
US6473631B1 (en) * 1999-12-20 2002-10-29 Motorola, Inc. Video swivel phone
GB2370188A (en) * 2000-11-01 2002-06-19 Orange Personal Comm Serv Ltd Mixed-media telecommunication call set-up
KR100358166B1 (ko) 2000-12-19 2002-10-25 주식회사 팬택앤큐리텔 화상 휴대폰 장치
US20020093531A1 (en) * 2001-01-17 2002-07-18 John Barile Adaptive display for video conferences
JP2002251365A (ja) 2001-02-21 2002-09-06 Square Co Ltd 電子会議システム、そのクライアント、電子会議方法およびクライアント用プログラム
US6833874B2 (en) 2001-03-27 2004-12-21 Sony Corporation Ticker tape picture-in-picture system
JP2002320140A (ja) * 2001-04-20 2002-10-31 Sony Corp 画像切り換え装置
JP2002351802A (ja) * 2001-05-24 2002-12-06 Cresys:Kk 電子メールを用いたデータ配信方法及びデータ配信システム
US20030158886A1 (en) * 2001-10-09 2003-08-21 Walls Jeffrey J. System and method for configuring a plurality of computers that collectively render a display
KR100408525B1 (ko) 2001-10-31 2003-12-06 삼성전자주식회사 네트워크에 적응적인 실시간 멀티미디어 스트리밍 시스템및 방법
US7317685B1 (en) 2001-11-26 2008-01-08 Polycom, Inc. System and method for dynamic bandwidth allocation for videoconferencing in lossy packet switched networks
JP2003189168A (ja) * 2001-12-21 2003-07-04 Nec Corp 携帯電話用カメラ
JP4289153B2 (ja) * 2002-03-08 2009-07-01 三菱電機株式会社 移動体通信装置、移動体通信装置の表示制御方法、並びに、そのプログラム
JP4203246B2 (ja) * 2002-03-14 2008-12-24 京セラ株式会社 携帯通信装置
JP4208476B2 (ja) * 2002-03-29 2009-01-14 キヤノン株式会社 情報配信装置、情報配信方法、プログラム及びコンピュータ読み取り可能な記録媒体
JP4061473B2 (ja) 2002-04-26 2008-03-19 日本電気株式会社 折り畳み型携帯電話機
US7256833B2 (en) 2002-05-22 2007-08-14 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Method and apparatus for automatically optimizing optical contrast in automated equipment
JP4066714B2 (ja) * 2002-05-23 2008-03-26 ソニー株式会社 画像信号の処理装置および処理方法
KR100472470B1 (ko) 2002-08-19 2005-03-10 삼성전자주식회사 부분화면과 전체화면을 동시에 스케일링하는 장치 및 방법
JP3542587B2 (ja) * 2002-08-30 2004-07-14 キヤノン株式会社 カメラ制御装置
US6879828B2 (en) 2002-09-09 2005-04-12 Nokia Corporation Unbroken primary connection switching between communications services
US6850541B2 (en) * 2002-09-30 2005-02-01 Intel Corporation Technique to measure network path bandwidth capacity using modal analysis
JP2004165943A (ja) 2002-11-13 2004-06-10 Fujitsu Ltd 携帯電子機器及びその撮影方法
JP2004166159A (ja) 2002-11-15 2004-06-10 Nec Saitama Ltd カメラ付き携帯電話装置
JP2004193860A (ja) * 2002-12-10 2004-07-08 Canon Inc 電子機器
JP2004221738A (ja) * 2003-01-10 2004-08-05 Matsushita Electric Ind Co Ltd テレビ電話装置及びテレビ電話制御方法
TW200424767A (en) 2003-02-20 2004-11-16 Tokyo Ohka Kogyo Co Ltd Immersion exposure process-use resist protection film forming material, composite film, and resist pattern forming method
JP4053444B2 (ja) 2003-03-07 2008-02-27 シャープ株式会社 携帯可能な多機能電子機器
US7321384B1 (en) 2003-06-03 2008-01-22 Cisco Technology, Inc. Method and apparatus for using far end camera control (FECC) messages to implement participant and layout selection in a multipoint videoconference
US7907638B2 (en) 2003-06-19 2011-03-15 Sony Ericsson Mobile Communications, Ab Media stream mixing
JP4380252B2 (ja) 2003-07-22 2009-12-09 ソニー株式会社 撮像装置および撮像方法
GB2404297B (en) 2003-07-24 2007-12-05 Hewlett Packard Development Co Editing multiple camera outputs
GB0321083D0 (en) 2003-09-09 2003-10-08 British Telecomm Video communications method and system
JP4423424B2 (ja) 2003-11-19 2010-03-03 独立行政法人情報通信研究機構 無線通信システム
JP4191016B2 (ja) 2003-11-21 2008-12-03 日本電気株式会社 電話端末の通話モード切替方式
KR100595619B1 (ko) * 2003-12-05 2006-06-30 엘지전자 주식회사 이동 통신 단말기의 화상 통화 방법
KR100677303B1 (ko) 2003-12-26 2007-02-05 엘지전자 주식회사 휴대 단말기
DE102004004806B4 (de) * 2004-01-30 2012-04-19 Arnold & Richter Cine Technik Gmbh & Co. Betriebs Kg Elektronische Laufbildkamera
JP4478868B2 (ja) * 2004-03-09 2010-06-09 ソニー株式会社 画像表示装置および画像表示方法
KR100550567B1 (ko) 2004-03-22 2006-02-10 엘지전자 주식회사 무선 네트워크망을 통해 통신하는 서버 시스템 및 그동작방법
JP2005286445A (ja) * 2004-03-29 2005-10-13 Mitsubishi Electric Corp 画像伝送端末、画像伝送端末システム及び端末画像伝送方法
EP1603339A1 (en) 2004-06-01 2005-12-07 STMicroelectronics S.r.l. Method and system for communicating video data in a packet-switched network, related network and computer program product therefor
US8406293B2 (en) * 2004-06-27 2013-03-26 Apple Inc. Multi-pass video encoding based on different quantization parameters
US8005139B2 (en) * 2004-06-27 2011-08-23 Apple Inc. Encoding with visual masking
FI117843B (fi) 2004-08-02 2007-03-15 Nokia Corp Elektroninen laite ja menetelmä elektronisessa laitteessa kuvainformaation muodostamiseksi ja vastaava ohjelmatuote
KR101067774B1 (ko) 2004-09-03 2011-09-28 엘지전자 주식회사 방송 수신기 및 그의 튜너 제어 방법
US7381952B2 (en) 2004-09-09 2008-06-03 Flir Systems, Inc. Multiple camera systems and methods
FI116749B (fi) * 2004-09-14 2006-02-15 Nokia Corp Kameraelementtejä käsittävä laite
KR20060031959A (ko) * 2004-10-11 2006-04-14 가온미디어 주식회사 디지털 방송 수신기에 채널 전환 방법
JP4046721B2 (ja) 2004-11-05 2008-02-13 株式会社アイチコーポレーション 作業用車両の充電装置
JP4592551B2 (ja) * 2004-11-10 2010-12-01 シャープ株式会社 通信装置
US7430238B2 (en) 2004-12-10 2008-09-30 Micronas Usa, Inc. Shared pipeline architecture for motion vector prediction and residual decoding
WO2006067545A1 (en) 2004-12-23 2006-06-29 Nokia Corporation Multi-camera solution for electronic devices
JP4586534B2 (ja) 2004-12-28 2010-11-24 セイコーエプソン株式会社 撮像装置、手ブレ補正装置、携帯電話機および手ブレ補正方法
JP4770178B2 (ja) 2005-01-17 2011-09-14 ソニー株式会社 カメラ制御装置、カメラシステム、電子会議システムおよびカメラ制御方法
JP2006222822A (ja) 2005-02-14 2006-08-24 Hitachi Ltd ハンドオーバシステム
JP2006245732A (ja) 2005-03-01 2006-09-14 Matsushita Electric Ind Co Ltd パケットバッファ装置、パケット中継転送装置およびネットワークシステム
JP2006246019A (ja) * 2005-03-03 2006-09-14 Canon Inc マルチ画面表示におけるリモコン制御方式
US8977063B2 (en) 2005-03-09 2015-03-10 Qualcomm Incorporated Region-of-interest extraction for video telephony
JP4365800B2 (ja) * 2005-03-14 2009-11-18 パナソニック株式会社 携帯端末装置及び表示切替方法
US20060248210A1 (en) * 2005-05-02 2006-11-02 Lifesize Communications, Inc. Controlling video display mode in a video conferencing system
TW200743385A (en) 2006-05-05 2007-11-16 Amtran Technology Co Ltd Method of audio-visual communication using television and television using the same
KR100703454B1 (ko) * 2005-05-11 2007-04-03 삼성전자주식회사 다양한 화면 방식을 제공하는 휴대단말기
JP2006319742A (ja) * 2005-05-13 2006-11-24 Toshiba Corp 通信端末
US7768548B2 (en) 2005-08-12 2010-08-03 William Bradford Silvernail Mobile digital video recording system
JP4781065B2 (ja) * 2005-09-20 2011-09-28 キヤノン株式会社 撮像装置
US7724284B2 (en) 2005-09-29 2010-05-25 Aptina Imaging Corporation Multi-camera system and method having a common processing block
US7885681B2 (en) 2005-10-07 2011-02-08 Agere Systems Inc. Method of using mobile communications devices for monitoring purposes and a system for implementation thereof
US7697024B2 (en) 2005-11-03 2010-04-13 Broadcom Corp. Method and system of tracking and stabilizing an image transmitted using video telephony
US7728866B2 (en) * 2005-11-03 2010-06-01 Broadcom Corp. Video telephony image processing
JP5007782B2 (ja) 2005-11-17 2012-08-22 株式会社デンソー ナビゲーション装置および地図表示縮尺設定方法
US7876996B1 (en) * 2005-12-15 2011-01-25 Nvidia Corporation Method and system for time-shifting video
US20070147827A1 (en) 2005-12-28 2007-06-28 Arnold Sheynman Methods and apparatus for wireless stereo video streaming
JP2007201727A (ja) * 2006-01-25 2007-08-09 Nec Saitama Ltd テレビ電話機能付き携帯電話機
US8872879B2 (en) * 2006-01-26 2014-10-28 Polycom, Inc. System and method for controlling videoconference with touch screen interface
US8593502B2 (en) * 2006-01-26 2013-11-26 Polycom, Inc. Controlling videoconference with touch screen interface
US20070177025A1 (en) 2006-02-01 2007-08-02 Micron Technology, Inc. Method and apparatus minimizing die area and module size for a dual-camera mobile device
JP4916749B2 (ja) 2006-03-30 2012-04-18 京セラ株式会社 テレビ電話システム及びテレビ電話端末装置並びにテレビ電話画像表示方法
US8000747B2 (en) * 2006-04-03 2011-08-16 Research In Motion Limited Communications device and method for associating contact names with contact methods
TW200743365A (en) 2006-05-05 2007-11-16 Univ Nat Central Method of de-interlace processing by edge detection
JP2007312039A (ja) 2006-05-17 2007-11-29 Nec Saitama Ltd Tv電話機能付き携帯端末
KR20070111270A (ko) 2006-05-17 2007-11-21 삼성전자주식회사 다자간 화상통화 중 음성인식을 활용한 화면 디스플레이방법
US8004555B2 (en) 2006-05-31 2011-08-23 Motorola Mobility, Inc. Methods and devices for simultaneous dual camera video telephony
US9030968B2 (en) * 2006-06-16 2015-05-12 Alcatel Lucent System and method for processing a conference session through a communication channel
US7626612B2 (en) 2006-06-30 2009-12-01 Motorola, Inc. Methods and devices for video correction of still camera motion
KR100784971B1 (ko) 2006-07-06 2007-12-11 삼성전자주식회사 휴대 단말기 간 원격 제어 시스템과 이를 이용한업그레이드 시스템 및 방법
US20080033527A1 (en) 2006-07-07 2008-02-07 Anthony Nunez Methods and systems for monitoring an endoprosthetic implant
KR101139454B1 (ko) * 2006-07-14 2012-04-30 엘지전자 주식회사 이동통신 단말기 및 그 동작방법
US8189100B2 (en) 2006-07-25 2012-05-29 Qualcomm Incorporated Mobile device with dual digital camera sensors and methods of using the same
US20080034096A1 (en) 2006-08-01 2008-02-07 Ati Technologies Inc. Method and Apparatus for Transferring Multimedia Signals from a Handheld Device to a Computer System for Display
US8509786B2 (en) 2006-08-04 2013-08-13 At&T Intellectual Property I, L.P. Systems and methods for handling calls in a wireless enabled PBX system using mobile switching protocols
KR20080014329A (ko) 2006-08-10 2008-02-14 삼성전자주식회사 영상표시장치 및 그 제어방법과 프로그램이 기록된 기록매체
TWI321016B (en) * 2006-08-30 2010-02-21 Vibo Telecom Inc Method for transferring video data and proxy server using the same
US8165635B2 (en) 2006-09-01 2012-04-24 Vivotech, Inc. Methods, systems, and computer readable media for over the air (OTA) provisioning of soft cards on devices with wireless communications capabilities
JP4245020B2 (ja) 2006-09-04 2009-03-25 ソニー株式会社 マトリックススイッチャ装置及びマトリックススイッチャ装置の制御方法
US20080063389A1 (en) 2006-09-13 2008-03-13 General Instrument Corporation Tracking a Focus Point by a Remote Camera
US7965309B2 (en) * 2006-09-15 2011-06-21 Quickwolf Technology, Inc. Bedside video communication system
KR100817315B1 (ko) 2006-09-25 2008-03-27 삼성전자주식회사 터치 스크린을 갖는 디지털 방송 수신용 휴대 단말기 및그의 pip 화면 제어 방법
US20080080142A1 (en) 2006-09-28 2008-04-03 Mediatek Inc. Electronic devices with enhanced heat spreading
US20080084482A1 (en) 2006-10-04 2008-04-10 Sony Ericsson Mobile Communications Ab Image-capturing system and method
JP4781980B2 (ja) 2006-11-29 2011-09-28 京セラ株式会社 無線通信装置および無線通信方法
US7899489B2 (en) 2006-10-30 2011-03-01 Kyocera Corporation Wireless communication device and wireless communication method
KR100836616B1 (ko) 2006-11-14 2008-06-10 (주)케이티에프테크놀로지스 영상 합성 기능을 가지는 휴대용 단말기 및 휴대용단말기의 영상 합성 방법
CN101191878A (zh) 2006-11-28 2008-06-04 鸿富锦精密工业(深圳)有限公司 立体取像相机模组及电子装置
US20080129816A1 (en) * 2006-11-30 2008-06-05 Quickwolf Technology, Inc. Childcare video conferencing system and method
US7646972B2 (en) * 2006-12-08 2010-01-12 Sony Ericsson Mobile Communications Ab Method and apparatus for capturing multiple images at different image foci
US20080165388A1 (en) * 2007-01-04 2008-07-10 Bertrand Serlet Automatic Content Creation and Processing
US7978239B2 (en) 2007-03-01 2011-07-12 Eastman Kodak Company Digital camera using multiple image sensors to provide improved temporal sampling
US7859588B2 (en) 2007-03-09 2010-12-28 Eastman Kodak Company Method and apparatus for operating a dual lens camera to augment an image
US20080239061A1 (en) 2007-03-30 2008-10-02 Cok Ronald S First portable communication device
KR101390103B1 (ko) 2007-04-03 2014-04-28 엘지전자 주식회사 영상제어방법 및 이동단말기
KR101328950B1 (ko) 2007-04-24 2013-11-13 엘지전자 주식회사 화상 디스플레이 방법 및 이를 구현할 수 있는 화상통신용단말기
KR101460712B1 (ko) * 2007-04-26 2014-11-12 엘지전자 주식회사 이동통신 단말기 및 그 제어방법
JP4782074B2 (ja) * 2007-05-18 2011-09-28 シャープ株式会社 携帯端末、制御方法、制御プログラム、および記憶媒体
US8542266B2 (en) 2007-05-21 2013-09-24 Polycom, Inc. Method and system for adapting a CP layout according to interaction between conferees
US8154578B2 (en) 2007-05-31 2012-04-10 Eastman Kodak Company Multi-camera residential communication system
US20080303922A1 (en) 2007-06-08 2008-12-11 Imran Chaudhri Image capture
US8633962B2 (en) * 2007-06-22 2014-01-21 Lifesize Communications, Inc. Video decoder which processes multiple video streams
US7817187B2 (en) 2007-06-27 2010-10-19 Aptina Imaging Corporation Image blur correction using a secondary camera
US9954996B2 (en) * 2007-06-28 2018-04-24 Apple Inc. Portable electronic device with conversation management for incoming instant messages
KR100893206B1 (ko) * 2007-07-02 2009-04-16 주식회사 케이티프리텔 다자간 영상통화 중 화자 추가 서비스 제공 방법 및 장치
KR20090004176A (ko) * 2007-07-06 2009-01-12 주식회사 엘지텔레콤 카메라 모듈을 구비한 이동통신단말기 및 그 영상표시방법
KR101378880B1 (ko) 2007-07-13 2014-03-28 엘지전자 주식회사 카메라를 구비한 휴대 단말기
JP5031476B2 (ja) 2007-08-02 2012-09-19 キヤノン株式会社 ズームレンズ及びそれを有する撮像装置
US8095932B2 (en) 2007-08-14 2012-01-10 Intel Corporation Providing quality of service via thread priority in a hyper-threaded microprocessor
US20090047995A1 (en) 2007-08-15 2009-02-19 Sony Ericsson Mobile Communications Ab Portable communication device having a dual camera module with a common image sensor element
KR101403785B1 (ko) * 2007-08-16 2014-06-03 엘지전자 주식회사 터치 스크린을 구비한 이동통신 단말기 및 그 영상 통화제어방법
KR101403839B1 (ko) * 2007-08-16 2014-06-03 엘지전자 주식회사 터치 스크린을 구비한 이동통신 단말기 및 그 디스플레이제어방법
KR101417002B1 (ko) * 2007-08-29 2014-07-08 엘지전자 주식회사 다자 영상 통화 기능을 제공하는 이동 통신 단말기 및 다자영상 통화의 모드 전환 방법
US8046033B2 (en) 2007-09-17 2011-10-25 Lg Electronics Inc. Mobile terminal
KR101334015B1 (ko) 2007-10-09 2013-11-28 주식회사 케이티 다자간 화상 통화시 화자 구분 기능을 구비한 휴대용단말기 및 다자간 화상 통화시 화자 구분 방법
KR101433157B1 (ko) 2007-10-26 2014-08-22 삼성전자주식회사 휴대 단말기 및 그 이미지 전송 방법
KR101356167B1 (ko) 2007-11-02 2014-01-24 엘지전자 주식회사 휴대 단말기
JP2008125105A (ja) * 2007-12-14 2008-05-29 Nec Corp 通信端末装置、テレビ電話制御方法及びテレビ電話制御プログラム
JP4926034B2 (ja) * 2007-12-26 2012-05-09 京セラ株式会社 複合端末および表示制御プログラム
US8040382B2 (en) 2008-01-07 2011-10-18 Dp Technologies, Inc. Method and apparatus for improving photo image quality
JP4636139B2 (ja) 2008-01-11 2011-02-23 ソニー株式会社 テレビ会議端末装置、画像送信方法
US8259157B2 (en) 2008-01-11 2012-09-04 Sony Corporation Teleconference terminal apparatus and image transmitting method
JP2009189075A (ja) 2008-02-01 2009-08-20 Denso Corp 通信システム
US8205157B2 (en) * 2008-03-04 2012-06-19 Apple Inc. Methods and graphical user interfaces for conducting searches on a portable multifunction device
KR101012300B1 (ko) * 2008-03-07 2011-02-08 삼성전자주식회사 터치스크린을 구비한 휴대 단말기의 사용자 인터페이스장치 및 그 방법
WO2009114482A1 (en) * 2008-03-10 2009-09-17 Dilithium Holdings, Inc. Method and apparatus for video services
JP5058042B2 (ja) * 2008-03-24 2012-10-24 シャープ株式会社 画像通信システムおよび画像通信方法
KR101442112B1 (ko) 2008-05-26 2014-09-18 엘지전자 주식회사 근접센서를 이용하여 동작 제어가 가능한 휴대 단말기 및그 제어방법
US8363019B2 (en) 2008-05-26 2013-01-29 Lg Electronics Inc. Mobile terminal using proximity sensor and method of controlling the mobile terminal
US8305899B2 (en) 2008-05-28 2012-11-06 Microsoft Corporation Pull-based data transmission approach
US8548428B2 (en) * 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
CN101291379A (zh) 2008-06-05 2008-10-22 中兴通讯股份有限公司 移动终端及其可视电话实现方法
CN104216613B (zh) 2008-06-30 2018-02-09 日本电气株式会社 信息处理设备、显示控制方法和记录介质
JP4561888B2 (ja) 2008-07-01 2010-10-13 ソニー株式会社 情報処理装置、及び情報処理装置における振動制御方法
KR20100007625A (ko) 2008-07-14 2010-01-22 엘지전자 주식회사 이동 단말기 및 그 메뉴 표시 방법
JP5217724B2 (ja) 2008-07-22 2013-06-19 ブラザー工業株式会社 サーバ
NO333026B1 (no) * 2008-09-17 2013-02-18 Cisco Systems Int Sarl Styringssystem for et lokalt telepresencevideokonferansesystem og fremgangsmate for a etablere en videokonferansesamtale.
JP5410720B2 (ja) 2008-09-25 2014-02-05 日立コンシューマエレクトロニクス株式会社 ディジタル情報信号送受信装置、およびディジタル情報信号送受信方法
US20100087230A1 (en) * 2008-09-25 2010-04-08 Garmin Ltd. Mobile communication device user interface
JP4577531B2 (ja) 2008-10-28 2010-11-10 日本電気株式会社 認証サーバ、通信システム、接続装置割り当て方法およびプログラム
US20100118111A1 (en) * 2008-11-10 2010-05-13 Nokia Corporation Method and apparatus for remote camera control indications in video conferencing
US20100138797A1 (en) * 2008-12-01 2010-06-03 Sony Ericsson Mobile Communications Ab Portable electronic device with split vision content sharing control and method
US8738696B2 (en) 2009-01-29 2014-05-27 At&T Mobility Ii Llc Single subscription management for multiple devices
CN101521696B (zh) 2009-04-08 2011-06-22 候万春 一种能够选择与切换前后摄像头的移动电话终端
GB2469470B (en) * 2009-04-14 2015-02-25 Skype Transmitting and receiving data
US20100309284A1 (en) * 2009-06-04 2010-12-09 Ramin Samadani Systems and methods for dynamically displaying participant activity during video conferencing
US8471888B2 (en) * 2009-08-07 2013-06-25 Research In Motion Limited Methods and systems for mobile telepresence
KR101617289B1 (ko) 2009-09-30 2016-05-02 엘지전자 주식회사 휴대 단말기 및 그 동작 제어방법
US8457604B2 (en) 2009-11-17 2013-06-04 Hewlett-Packard Development Company, L.P. Apparatus and method for sharing content on a mobile device
US8320364B2 (en) 2009-12-15 2012-11-27 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Control of bit-rate and packet duplication in a real-time media stream
US8451312B2 (en) 2010-01-06 2013-05-28 Apple Inc. Automatic video stream selection
US8649297B2 (en) * 2010-03-26 2014-02-11 Cisco Technology, Inc. System and method for simplifying secure network setup
US9001227B2 (en) 2010-04-05 2015-04-07 Qualcomm Incorporated Combining data from multiple image sensors
AU2015201127B2 (en) 2010-04-07 2017-02-23 Apple Inc. Establishing a video conference during a phone call
US8704863B2 (en) * 2010-04-07 2014-04-22 Apple Inc. Transitioning between circuit switched calls and video calls
US8917632B2 (en) 2010-04-07 2014-12-23 Apple Inc. Different rate controller configurations for different cameras of a mobile device
CN102010622B (zh) 2010-10-27 2013-02-27 吴传仪 防腐耐磨材料及其无积灰防腐耐磨粉体输送管道

Also Published As

Publication number Publication date
BR112012025746B1 (pt) 2021-09-28
JP2018191307A (ja) 2018-11-29
KR101438988B1 (ko) 2014-10-22
KR20220029789A (ko) 2022-03-08
US9264659B2 (en) 2016-02-16
JP7194243B2 (ja) 2022-12-21
US8502856B2 (en) 2013-08-06
KR20150038707A (ko) 2015-04-08
JP6335094B2 (ja) 2018-05-30
EP3425624A1 (en) 2019-01-09
US20180160072A1 (en) 2018-06-07
US20140354759A1 (en) 2014-12-04
JP2013524684A (ja) 2013-06-17
KR102052296B1 (ko) 2019-12-04
KR20130010003A (ko) 2013-01-24
TWI439133B (zh) 2014-05-21
EP2556665B1 (en) 2018-08-15
JP2017005736A (ja) 2017-01-05
MX342799B (es) 2016-10-13
KR102079850B1 (ko) 2020-02-20
US8874090B2 (en) 2014-10-28
WO2011126511A4 (en) 2011-12-08
JP6949917B2 (ja) 2021-10-13
KR102660942B1 (ko) 2024-04-26
KR102189345B1 (ko) 2020-12-11
KR20200138841A (ko) 2020-12-10
KR101627818B1 (ko) 2016-06-08
HK1162797A1 (en) 2012-08-31
KR20160075779A (ko) 2016-06-29
KR20140138327A (ko) 2014-12-03
KR20240058968A (ko) 2024-05-07
JP6367272B2 (ja) 2018-08-01
US20110249077A1 (en) 2011-10-13
TWI499271B (zh) 2015-09-01
US20150103135A1 (en) 2015-04-16
KR20170016032A (ko) 2017-02-10
AU2010350749B2 (en) 2014-12-04
KR101564868B1 (ko) 2015-10-30
US20110249074A1 (en) 2011-10-13
US20110249075A1 (en) 2011-10-13
CN104270597A (zh) 2015-01-07
CN104270597B (zh) 2018-07-24
KR101491428B1 (ko) 2015-02-06
JP2015057894A (ja) 2015-03-26
US20110249078A1 (en) 2011-10-13
JP2023036677A (ja) 2023-03-14
US9787938B2 (en) 2017-10-10
US20200059628A1 (en) 2020-02-20
EP2556665A1 (en) 2013-02-13
US8917632B2 (en) 2014-12-23
US11025861B2 (en) 2021-06-01
US20210360192A1 (en) 2021-11-18
EP3425624B1 (en) 2020-09-09
US20110249076A1 (en) 2011-10-13
US20130265378A1 (en) 2013-10-10
MX2020003290A (es) 2020-09-07
HK1162796A1 (zh) 2012-08-31
KR20200013268A (ko) 2020-02-06
US20230262196A1 (en) 2023-08-17
US20110249086A1 (en) 2011-10-13
KR20140063646A (ko) 2014-05-27
US8941706B2 (en) 2015-01-27
JP2022008507A (ja) 2022-01-13
US8744420B2 (en) 2014-06-03
TWI547136B (zh) 2016-08-21
US10462420B2 (en) 2019-10-29
TW201143434A (en) 2011-12-01
TW201143349A (en) 2011-12-01
KR20180137616A (ko) 2018-12-27
US9055185B2 (en) 2015-06-09
BR112012025746A2 (pt) 2016-06-28
US20110249073A1 (en) 2011-10-13
US8451994B2 (en) 2013-05-28
JP2020017995A (ja) 2020-01-30
TW201136292A (en) 2011-10-16
AU2010350749A1 (en) 2012-11-08
KR20230028583A (ko) 2023-02-28
WO2011126511A8 (en) 2012-11-22
TWI462566B (zh) 2014-11-21
TW201143348A (en) 2011-12-01
WO2011126511A1 (en) 2011-10-13

Similar Documents

Publication Publication Date Title
US11025861B2 (en) Establishing a video conference during a phone call
AU2015201127B2 (en) Establishing a video conference during a phone call

Legal Events

Date Code Title Description
FG Grant or registration