JP2020017995A - Establishment of video conference during call - Google Patents

Establishment of video conference during call Download PDF

Info

Publication number
JP2020017995A
JP2020017995A JP2019182484A JP2019182484A JP2020017995A JP 2020017995 A JP2020017995 A JP 2020017995A JP 2019182484 A JP2019182484 A JP 2019182484A JP 2019182484 A JP2019182484 A JP 2019182484A JP 2020017995 A JP2020017995 A JP 2020017995A
Authority
JP
Japan
Prior art keywords
video
camera
storage medium
display
mobile device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019182484A
Other languages
Japanese (ja)
Other versions
JP6949917B2 (en
Inventor
エリザベス, シー. クランフィル,
C Cranfill Elizabeth
エリザベス, シー. クランフィル,
ステファン, オー. ルメイ,
Stephen O Lemay
ステファン, オー. ルメイ,
ジョー, エス. アブアン,
S Abuan Joe
ジョー, エス. アブアン,
シー−ジュン ウー,
Hsi-Jung Wu
シー−ジュン ウー,
シャオソン チョウ,
Xiaosong Zhou
シャオソン チョウ,
ジュニア, ロベルト ガルシア
Roberto Garcia Jr
ジュニア, ロベルト ガルシア
ヒョンクック ジョン,
Hyeonkuk Jeong
ヒョンクック ジョン,
ハイタオ グオ,
Haitao Guo
ハイタオ グオ,
ダグラス エス. プライス,
S Price Douglas
ダグラス エス. プライス,
ダージョン チャン,
Dazhong Zhang
ダージョン チャン,
ベルカット, エス. ツン,
S Tung Berkat
ベルカット, エス. ツン,
ジェームス, オー. ノルミル,
O Normile James
ジェームス, オー. ノルミル,
ヤン ヤン,
Yan Yang
ヤン ヤン,
ディビッド, エー. エルドレッド,
A Eldred David
ディビッド, エー. エルドレッド,
アンドリュー ヤノウィッツ,
Yanowitz Andrew
アンドリュー ヤノウィッツ,
ティン チェン,
Ting Chen
ティン チェン,
ディビッド, ディー. クオ,
D Kuo David
ディビッド, ディー. クオ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
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 JP2020017995A publication Critical patent/JP2020017995A/en
Priority to JP2021154573A priority Critical patent/JP7194243B2/en
Application granted granted Critical
Publication of JP6949917B2 publication Critical patent/JP6949917B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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
    • 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)
  • General Physics & Mathematics (AREA)
  • 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)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Studio Devices (AREA)

Abstract

To provide a camera image switching process of a mobile device having a plurality of cameras used for a video conference.SOLUTION: A first mobile device transmits an image captured by a camera of a first mobile device to a second device in a video conference, and receives and displays an image captured by a camera of the second device. The first mobile device selects a graphical user interface option indicating a camera switching request, and the first mobile device transmits a command to instruct to the second device to perform a camera switching operation that adjusts a display of the image captured by the camera of the second device.SELECTED DRAWING: Figure 50

Description

スマートフォンなどの今日の携帯デバイスの多くは、ビデオ取り込み機能を提供する。携帯デバイスのユーザは、電話機のカメラを通じて静止画像及びビデオの両方を取り込むことができる。しかし、取り込まれたビデオを別の当事者に伝送するために、ユーザは一般に、ビデオの取り込みが完了した後に、そのビデオを別の当事者に直接送信するか、又はそのビデオを別の場所(例えば、インターネットのビデオホストサイト)にアップロードしなければならない。残念なことに、このようにしても、携帯デバイスによってビデオを取り込みつつ、他の当事者がライブビデオストリームを視聴することはできない。   Many of today's mobile devices, such as smartphones, provide video capture capabilities. The user of the mobile device can capture both still images and video through the phone's camera. However, to transmit the captured video to another party, the user typically sends the video directly to another party after the video capture is complete, or sends the video to another location (eg, Internet video hosting site). Unfortunately, this does not allow other parties to view the live video stream while capturing video with the mobile device.

さらに、標準的な携帯デバイスは、1つのカメラしか装備しておらず、この1つのカメラからの情報を処理することはかなり困難である。理想的なデバイスは、複数のカメラを有し、少なくとも2つのカメラからのビデオの合成であるライブビデオを送信できるだろう。これは、携帯デバイスが使用可能なリソースが限られていることを考慮すると、デバイスが複数の取り込まれたビデオストリームを処理すること、及びデバイスが接続されるネットワークがライブビデオストリームの伝送を扱うことの両方の観点から、特に困難な問題である。   Furthermore, a standard portable device is equipped with only one camera, and it is quite difficult to process information from this one camera. An ideal device would have multiple cameras and be able to transmit live video, which is a composite of video from at least two cameras. This means that the device handles multiple captured video streams, given the limited resources available to the mobile device, and that the network to which the device is connected handles the transmission of live video streams From both perspectives, it is a particularly difficult problem.

本発明の一部の実施形態は、写真及びビデオを撮影可能な2つのカメラを有する携帯デバイスを提供する。一部の実施形態の携帯デバイスは、取り込まれた写真画像及びビデオ画像を表示するための表示画面を有する。この携帯デバイスは、取り込まれた画像を後で別のデバイスに伝送する目的で格納するための記憶装置も含む。このデバイスは、デバイスのユーザ間でのリアルタイム通信セッション中に、取り込まれた画像を1つ以上のデバイスに伝送可能なネットワークインタフェースをさらに有する。このデバイスは、取り込まれた画像をローカルに格納するか又は別のデバイスに伝送する目的で符号化するために使用できるエンコーダも含む。この携帯デバイスは、リアルタイム通信セッション中に別のデバイスによって取り込まれた画像を復号すること又はローカルに格納された画像を復号することをデバイスに可能するデコーダをさらに含む。   Some embodiments of the present invention provide a portable device having two cameras capable of taking pictures and videos. The mobile device of some embodiments has a display screen for displaying captured photographic and video images. The portable device also includes storage for storing the captured image for later transmission to another device. The device further has a network interface that can transmit the captured images to one or more devices during a real-time communication session between the users of the device. The device also includes an encoder that can be used to store the captured image locally or to encode it for transmission to another device. The mobile device further includes a decoder that allows the device to decode an image captured by another device during a real-time communication session or to decode a locally stored image.

取り込まれたビデオ画像の伝送を含むリアルタイム通信セッションの一例がテレビ会議である。一部の実施形態では、携帯デバイスは、テレビ会議中の任意の所与の時間に1つのカメラの取り込まれたビデオ画像のみを伝送できる。しかし、他の実施形態では、携帯デバイスは、テレビ会議又は他のリアルタイム通信セッション中にそのカメラの両方からの取り込まれたビデオ画像を同時に伝送できる。   An example of a real-time communication session involving the transmission of a captured video image is a video conference. In some embodiments, the portable device can transmit only the captured video images of one camera at any given time during a video conference. However, in other embodiments, the portable device can simultaneously transmit captured video images from both of its cameras during a video conference or other real-time communication session.

別のデバイスとのテレビ会議中に、一部の実施形態の携帯デバイスは、そのカメラの一方又は両方によって取り込まれたビデオと共に他のタイプのコンテンツを伝送できる。このような他のコンテンツの一例は、デバイスの他のカメラがテレビ会議で使用されるビデオを取り込みながら、デバイスのカメラのうちの1つによって取り込まれた低解像度又は高解像度の写真画像を含む。このような他のコンテンツの他の例は、(1)デバイスに格納されたファイル及び他のコンテンツ、(2)デバイスの画面表示(すなわち、デバイスの画面に表示されるコンテンツ)、(3)テレビ会議又は他のリアルタイム通信セッション中に別のデバイスから受信されたコンテンツなどがある。   During a videoconference with another device, the portable device of some embodiments may transmit other types of content along with video captured by one or both of its cameras. An example of such other content includes a low-resolution or high-resolution photographic image captured by one of the device's cameras, while another camera of the device captures video used in a video conference. Other examples of such other content include (1) files and other content stored on the device, (2) device screen display (ie, content displayed on the device screen), and (3) television. Such as content received from another device during a conference or other real-time communication session.

一部の実施形態の携帯デバイスは、テレビ会議中に調整を行うための新規な会議中調整技術を採用する。例えば、一部の実施形態の携帯デバイスは、テレビ会議中に1つのカメラの取り込まれたビデオのみを伝送しながら、それの他のカメラによって取り込まれたビデオを伝送するために動的に切り換えることができる。このような状況では、一部の実施形態の携帯デバイスは、この他のデバイスが、2つのカメラによって取り込まれたビデオの間でのスムーズな移行をこのデバイス側で実現できるように、テレビ会議に参加している他の任意のデバイスにこの切り換えを通知する。   The mobile device of some embodiments employs a new in-meeting coordination technique for making adjustments during a video conference. For example, the portable device of some embodiments dynamically switches to transmit video captured by one camera while transmitting only video captured by one camera during a video conference. Can be. In such a situation, the mobile device of some embodiments may have a video conference call so that the other device can achieve a smooth transition between the video captured by the two cameras on the device side. Notify any other participating devices of this switch.

一部の実施形態では、カメラ切り換え要求は、テレビ会議中にそのカメラを切り換える「ローカル」デバイスに由来しうるだけでなく、ローカルデバイスによって取り込まれたビデオを受信している他の「リモート」デバイスからも由来しうる。さらに、1つのデバイスが別のデバイスにカメラを切り換えるように指示できることは、一部の実施形態のデバイスの遠隔制御機能の一例にすぎない。一部の実施形態においてデバイスにリモートから指示できる他の動作の例は、露出調整動作(例えば、自動露出)、焦点調整動作(例えば、オートフォーカス)などを含む。ローカル又はリモートから指定可能な新規な会議中調整の別の例は、取り込まれたビデオ内の関心領域(ROI)の指定であり、このROI識別の使用目的は、取り込んでいるカメラの挙動を変更すること、取り込んでいるカメラを有するデバイスの画像処理動作を変更すること、又は取り込んでいるカメラを有するデバイスの符号化動作を変更することである。   In some embodiments, the camera switch request may originate from a “local” device that switches its camera during a video conference, as well as other “remote” devices receiving video captured by the local device. Can also be derived from Further, the ability of one device to instruct another device to switch cameras is only one example of the remote control capabilities of the device in some embodiments. Examples of other operations that can remotely instruct the device in some embodiments include an exposure adjustment operation (eg, auto exposure), a focus adjustment operation (eg, auto focus), and the like. Another example of a new in-meeting adjustment that can be specified locally or remotely is the specification of a region of interest (ROI) in the captured video, where the purpose of the ROI identification is to change the behavior of the capturing camera. To change the image processing operation of the device having the capturing camera, or to change the encoding operation of the device having the capturing camera.

一部の実施形態の新規な会議中調整のさらに別の例は、デバイスによって生成される合成ビデオ表示のリアルタイム変更を含む。具体的には、一部の実施形態では、携帯デバイスは、1つ以上のデバイスの複数のカメラによって取り込まれた複数のビデオを同時に表示する合成表示を生成する。一部の場合では、合成表示は、隣接する表示域(例えば、隣接するウィンドウ)にビデオを置く。他の場合では、合成表示は、2つの異なるビデオを示す少なくとも2つの表示域を含むピクチャインピクチャ(PIP)表示であり、表示域の一方は背景メイン表示域であり、他方は背景メイン表示域に重なる前景挿入表示域である。   Yet another example of a new in-meeting adjustment of some embodiments includes real-time modification of a composite video display generated by a device. Specifically, in some embodiments, the portable device generates a composite display that simultaneously displays multiple videos captured by multiple cameras of one or more devices. In some cases, the composite display places the video in an adjacent display area (eg, an adjacent window). In other cases, the composite display is a picture-in-picture (PIP) display that includes at least two display areas showing two different videos, one of the display areas being a background main display area and the other being a background main display area. This is the foreground insertion display area overlapping with.

一部の実施形態では、合成ビデオ表示のリアルタイム変更は、ユーザの選択及び表示域の移動に応答して合成表示内で表示域のうちの1つ以上を移動することを含む。また、一部の実施形態は、この合成表示を提供したデバイスの画面が回転する場合に、テレビ会議中に合成表示を回転する。また、一部の実施形態の携帯デバイスにより、デバイスのユーザは、PIP表示内のビデオを入れ換えること(すなわち、背景メイン表示のビデオを前景挿入表示に表示するとともに、前景挿入表示のビデオを背景メイン表示に表示すること)が可能である。   In some embodiments, the real-time modification of the composite video display includes moving one or more of the display areas within the composite display in response to user selection and movement of the display area. Also, some embodiments rotate the composite display during a video conference if the screen of the device that provided the composite display rotates. Also, the portable device of some embodiments allows the user of the device to swap the video in the PIP display (ie, display the video in the background main display in the foreground insert display and replace the video in the foreground insert display with the background main display). Display on the display) is possible.

上記の発明の概要は、本発明の一部の実施形態の簡単な説明として役立つことを意図したものである。これは、本明細書に開示されているすべての発明の主題の説明又は概説を意味しない。以下の発明を実施するための形態及び発明を実施するための形態で参照される図面において、発明の概要で説明した実施形態だけでなく他の実施形態をさらに説明する。したがって、本明細書によって説明されるすべての実施形態を理解するために、発明の概要、発明を実施するための形態及び図面の十分な検討が必要である。   The above summary of the invention is intended to serve as a brief description of some embodiments of the invention. This does not imply a description or general description of the subject matter of any invention disclosed herein. In the following embodiments for carrying out the invention and the drawings referred to in the embodiments for carrying out the invention, not only the embodiment described in the summary of the invention but also other embodiments will be further described. Therefore, in order to understand all the embodiments described by this specification, a thorough examination of the summary of the invention, the modes for carrying out the invention, and the drawings is required.

添付の特許請求の範囲に、本発明の新規な特徴を記載する。しかし、説明の目的で、本発明の一部の実施形態を以下の図に示す。   The appended claims set forth the novel features of the invention. However, for illustrative purposes, some embodiments of the present invention are shown in the following figures.

一部の実施形態の合成表示を示す図である。FIG. 14 is a diagram illustrating a composite display according to some embodiments. 一部の実施形態の別の合成表示を示す図である。FIG. 10 is a diagram illustrating another composite display of some embodiments. 一部の実施形態のデュアルカメラ携帯デバイスのビデオ処理及び符号化モジュールのためのソフトウェアアーキテクチャを概念的に示す図である。FIG. 4 conceptually illustrates a software architecture for a video processing and encoding module of a dual camera portable device of some embodiments. 一部の実施形態の取り込み済画像処理ユニットを概念的に示す図である。FIG. 7 is a diagram conceptually illustrating a captured image processing unit according to some embodiments. 異なる垂直帰線消去期間(VBI)に基づいた異なるフレームレートの例を概念的に示す図である。FIG. 5 is a diagram conceptually illustrating an example of different frame rates based on different vertical blanking periods (VBI). 異なるVBIに基づいた異なるインタリーブフレームレートの例を概念的に示す図である。FIG. 3 is a diagram conceptually illustrating an example of different interleave frame rates based on different VBIs. 一部の実施形態の別の取り込み済画像処理ユニットを概念的に示す図である。FIG. 9 is a diagram conceptually illustrating another captured image processing unit according to some embodiments. 一部の実施形態の別の取り込み済画像処理ユニットを概念的に示す図である。FIG. 9 is a diagram conceptually illustrating another captured image processing unit according to some embodiments. 一部の実施形態のデュアルカメラ携帯デバイスのテレビ会議及び処理モジュールのためのソフトウェアアーキテクチャを概念的に示す図である。FIG. 4 conceptually illustrates a software architecture for video conferencing and processing modules of a dual camera portable device of some embodiments. 一部の実施形態の例示的なテレビ会議要求メッセージシーケンスを概念的に示す図である。FIG. 4 conceptually illustrates an example video conference request message sequence of some embodiments. テレビ会議セットアップ動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 4 illustrates a user interface of some embodiments for a video conference setup operation. テレビ会議への招待に応じるための一部の実施形態のユーザインタフェースを示す図である。FIG. 4 illustrates a user interface of some embodiments for accepting an invitation to a video conference. テレビ会議への招待に応じるための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 8 illustrates another user interface of some embodiments for accepting an invitation to a video conference. テレビ会議セットアップ動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 8 illustrates another user interface of some embodiments for a video conference setup operation. テレビ会議のビットレートを設定するための一部の実施形態のプロセスを概念的に示す図である。FIG. 4 conceptually illustrates a process of some embodiments for setting a video conference bit rate. 一部の実施形態のデュアルカメラ携帯デバイスのテレビ会議及び処理モジュールのための別のソフトウェアアーキテクチャを概念的に示す図である。FIG. 6 conceptually illustrates another software architecture for the video conferencing and processing module of the dual camera portable device of some embodiments. 一部の実施形態のデュアルカメラ携帯デバイスのための別のソフトウェアアーキテクチャを概念的に示す図である。FIG. 4 conceptually illustrates another software architecture for a dual camera portable device of some embodiments. 図16に示されるプロセスなどの、一部の実施形態のテレビ会議マネージャによって実行されるプロセスを概念的に示す図である。FIG. 17 conceptually illustrates a process performed by the video conference manager of some embodiments, such as the process illustrated in FIG. 16. 一部の実施形態の時間ノイズ低減モジュールのためのソフトウェアアーキテクチャを概念的に示す図である。FIG. 4 conceptually illustrates a software architecture for the temporal noise reduction module of some embodiments. ビデオの画像のノイズを低減させるための一部の実施形態のプロセスを概念的に示す図である。FIG. 4 conceptually illustrates a process of some embodiments for reducing noise in a video image. 図9に示されるプロセスなどの、一部の実施形態の画像処理マネージャによって実行されるプロセスを概念的に示す図である。FIG. 10 conceptually illustrates a process performed by the image processing manager of some embodiments, such as the process illustrated in FIG. 9. 露出調整動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for an exposure adjustment operation. 焦点調整動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for a focus adjustment operation. 図16に示されるプロセスなどの、一部の実施形態の画像処理マネージャによって実行されるパースペクティブ補正プロセスを概念的に示す図である。FIG. 17 conceptually illustrates a perspective correction process performed by the image processing manager of some embodiments, such as the process illustrated in FIG. 16. 一部の実施形態の例示的なパースペクティブ補正動作を概念的に示す図である。FIG. 7 conceptually illustrates an exemplary perspective correction operation of some embodiments. 図16に示されるソフトウェアアーキテクチャなどの、一部の実施形態のエンコーダドライバのためのソフトウェアアーキテクチャを概念的に示す図である。FIG. 17 conceptually illustrates a software architecture for the encoder driver of some embodiments, such as the software architecture shown in FIG. 16. 図26に示されるエンコーダなどの、一部の実施形態のエンコーダドライバによって実行される画像サイズ変更プロセスを概念的に示す図である。FIG. 27 conceptually illustrates an image resizing process performed by an encoder driver of some embodiments, such as the encoder shown in FIG. 26. 図16に示されるソフトウェアアーキテクチャなどの、一部の実施形態のデコーダドライバのためのソフトウェアアーキテクチャを概念的に示す図である。FIG. 17 conceptually illustrates a software architecture for the decoder driver of some embodiments, such as the software architecture shown in FIG. 16. 図28に示されるデコーダドライバなどの、一部の実施形態のデコーダドライバによって実行される画像抽出プロセスを概念的に示す図である。FIG. 29 conceptually illustrates an image extraction process performed by a decoder driver of some embodiments, such as the decoder driver shown in FIG. 28. 2つのレートコントローラを含む一部の実施形態のエンコーダドライバを示す図である。FIG. 4 illustrates an encoder driver of some embodiments including two rate controllers. 図16に示されるネットワークキングマネージャなどの一部の実施形態のネットワーキングマネージャのためのソフトウェアアーキテクチャを概念的に示す図である。FIG. 17 conceptually illustrates a software architecture for a networking manager of some embodiments, such as the networking manager shown in FIG. 16. コーナー向けスナップ(snap-to-corner)動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for a snap-to-corner operation. コーナー向けスナップ動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a corner snap operation. PIP表示回転動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for a PIP display rotation operation. PIP表示回転動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for a PIP display rotation operation. PIP表示回転動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for a PIP display rotation operation. PIP表示回転動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for a PIP display rotation operation. PIP表示の前景挿入表示域をサイズ変更するための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for resizing a foreground insertion display area of a PIP display. PIP表示の挿入表示域をサイズ変更するための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for resizing an insertion display area of a PIP display. PIP表示の挿入表示域をサイズ変更するための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for resizing an insertion display area of a PIP display. PIP表示の挿入表示域をサイズ変更するための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for resizing an insertion display area of a PIP display. 表示における関心領域を識別するための一部の実施形態のユーザインタフェースを示す図である。FIG. 4 illustrates a user interface of some embodiments for identifying a region of interest in a display. 表示における関心領域を識別するための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 6 illustrates another user interface of some embodiments for identifying a region of interest in a display. 表示における関心領域を識別するための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 6 illustrates another user interface of some embodiments for identifying a region of interest in a display. デュアルカメラ携帯デバイス上のローカルカメラ切り換え動作を実行するための一部の実施形態のプロセスを示す図である。FIG. 9 illustrates a process of some embodiments for performing a local camera switching operation on a dual camera portable device. カメラ切り換え動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 10 illustrates a user interface of some embodiments for a camera switching operation. カメラ切り換え動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a camera switching operation. カメラ切り換え動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a camera switching operation. カメラ切り換え動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a camera switching operation. デュアルカメラ携帯デバイス上のリモートカメラ切り換え動作を実行するための一部の実施形態のプロセスを示す図である。FIG. 9 illustrates a process of some embodiments for performing a remote camera switching operation on a dual camera portable device. 遠隔制御カメラ切り換え動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 7 illustrates a user interface of some embodiments for a remote control camera switching operation. 遠隔制御カメラ切り換え動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a remote control camera switching operation. 遠隔制御カメラ切り換え動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a remote control camera switching operation. 遠隔制御カメラ切り換え動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a remote control camera switching operation. 露出調整動作を実行するための一部の実施形態のプロセスを概念的に示す図である。FIG. 4 conceptually illustrates a process of some embodiments for performing an exposure adjustment operation. 露出調整動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for an exposure adjustment operation. 露出調整動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for an exposure adjustment operation. 露出調整動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for an exposure adjustment operation. 図16に示されるプロセスなどの、一部の実施形態の画像処理マネージャによって実行される露出調整プロセスを概念的に示す図である。FIG. 17 conceptually illustrates an exposure adjustment process performed by the image processing manager of some embodiments, such as the process illustrated in FIG. 16. 一部の実施形態の例示的な露出調整動作を概念的に示す図である。FIG. 7 is a diagram conceptually illustrating an exemplary exposure adjustment operation of some embodiments. 焦点調整動作を実行するための一部の実施形態のプロセスを概念的に示す図である。FIG. 7 conceptually illustrates a process of some embodiments for performing a focus adjustment operation. 焦点調整動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for a focus adjustment operation. 焦点調整動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a focus adjustment operation. 焦点調整動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 9 illustrates another user interface of some embodiments for a focus adjustment operation. 1つ以上のデュアルカメラ携帯デバイスから取り込まれたビデオのための一部の実施形態の異なる表示構成を示す図である。FIG. 9 illustrates different display configurations of some embodiments for video captured from one or more dual camera portable devices. PIP表示において挿入ビデオの前景を背景ビデオに重畳するための一部の実施形態のユーザインタフェースを示す図である。FIG. 7 illustrates a user interface of some embodiments for superimposing a foreground of an insertion video on a background video in a PIP display. ビデオ画像の前景を決定するための一部の実施形態の技術を示す図である。FIG. 4 illustrates a technique of some embodiments for determining a foreground of a video image. テレビ会議中にPIP表示の挿入表示を背景表示と交換するための一部の実施形態のユーザインタフェースを示す図である。FIG. 7 illustrates a user interface of some embodiments for exchanging an inserted display of a PIP display with a background display during a video conference. コーナー向けスナップ動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for a corner snap operation. コーナー向けスナップ及びプッシュ動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for corner snap and push operations. PIP表示回転動作のための一部の実施形態のユーザインタフェースを示す図である。FIG. 9 illustrates a user interface of some embodiments for a PIP display rotation operation. PIP表示回転動作のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 10 illustrates another user interface of some embodiments for a PIP display rotation operation. テレビ会議中に2つのリモートビデオから1つのビデオを選択するための一部の実施形態のユーザインタフェースを示す図である。FIG. 4 illustrates a user interface of some embodiments for selecting one video from two remote videos during a video conference. テレビ会議中に2つのローカルビデオから1つのビデオを選択するための一部の実施形態のユーザインタフェースを示す図である。FIG. 4 illustrates a user interface of some embodiments for selecting one video from two local videos during a video conference. テレビ会議に使用するべきビデオの会議前の選択のための一部の実施形態のユーザインタフェースを示す図である。FIG. 4 illustrates a user interface of some embodiments for pre-conference selection of a video to use for a video conference. 一部の実施形態のデュアルカメラ携帯デバイスによって取り込まれた2つのビデオ間の帯域幅割り当ての例を示す図である。FIG. 4 illustrates an example of a bandwidth allocation between two videos captured by a dual camera portable device of some embodiments. デュアルカメラ携帯デバイスのレートコントローラを管理するための一部の実施形態のアービトレータモジュールを概念的に示す図である。FIG. 4 conceptually illustrates an arbitrator module of some embodiments for managing a rate controller of a dual camera portable device. デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を符号化するための一部の実施形態の方法を概念的に示す図である。FIG. 4 conceptually illustrates a method of some embodiments for encoding an image captured by a camera of a dual camera portable device. デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を符号化するための一部の実施形態の別の方法を概念的に示す図である。FIG. 4 conceptually illustrates another embodiment of some methods for encoding images captured by a camera of a dual camera portable device. 図79に示される方法のための例示的な画像合成を示す図である。FIG. 80 illustrates an exemplary image composition for the method illustrated in FIG. 79. デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を符号化するための一部の実施形態の別の方法を概念的に示す図である。FIG. 4 conceptually illustrates another embodiment of some methods for encoding images captured by a camera of a dual camera portable device. デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を復号するための一部の実施形態の方法を概念的に示す図である。FIG. 4 conceptually illustrates a method of some embodiments for decoding an image captured by a camera of a dual camera portable device. デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を復号するための一部の実施形態の別の方法を概念的に示す図である。FIG. 7 conceptually illustrates another embodiment of some methods for decoding images captured by a camera of a dual camera portable device. 一部の実施形態のデュアルカメラ携帯デバイスのテレビ会議及び処理モジュールのための別のソフトウェアアーキテクチャを概念的に示す図である。FIG. 6 conceptually illustrates another software architecture for the video conferencing and processing module of the dual camera portable device of some embodiments. 複数参加者によるテレビ会議のための一部の実施形態のユーザインタフェースを示す図である。FIG. 6 illustrates a user interface of some embodiments for a multi-participant video conference. 複数参加者によるテレビ会議のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 6 illustrates another user interface of some embodiments for a multi-participant video conference. 複数参加者によるテレビ会議のための一部の実施形態の別のユーザインタフェースを示す図である。FIG. 6 illustrates another user interface of some embodiments for a multi-participant video conference. 一部の実施形態のアプリケーションプログラミングインタフェース(API)アーキテクチャを概念的に示す図である。FIG. 4 conceptually illustrates an application programming interface (API) architecture of some embodiments. 一部の実施形態のデュアルカメラモバイルコンピューティングデバイスのためのアーキテクチャを示す図である。FIG. 4 illustrates an architecture for a dual camera mobile computing device of some embodiments. 一部の実施形態のタッチ入出力(I/O)デバイスを概念的に示す図である。FIG. 4 conceptually illustrates a touch input / output (I / O) device of some embodiments. 一部の実施形態の例示的な通信システムを概念的に示す図である。1 conceptually illustrates an exemplary communication system of some embodiments. 一部の実施形態の別の例示的な通信システムを概念的に示す図である。FIG. 4 conceptually illustrates another exemplary communication system of some embodiments.

以下の説明で、多くの詳細が説明のために記載されている。しかし、本発明はこれらの特定の詳細を使用せずに実施されてもよいことが当業者に理解されよう。他の例では、不必要な詳細により本発明の説明をあいまいにしないように、よく知られている構造及びデバイスがブロック図の形式で示される。   In the following description, numerous details are set forth for explanation. However, it will be apparent to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order not to obscure the description of the present invention with unnecessary detail.

本発明の一部の実施形態は、写真及びビデオを撮影可能な2つのカメラを有する携帯デバイスを提供する。携帯デバイスの例としては、携帯電話機、スマートフォン、携帯情報端末(PDA)、ラップトップ、タブレットパーソナルコンピュータ、又は他の任意のタイプのモバイルコンピューティングデバイスがある。本明細書では、写真とは、単一写真モードで一度に1枚、又は高速実行(fast-action)モードで一度に複数枚、カメラで撮影された静止写真画像を指す。一方、ビデオとは、特定の速度でカメラによって取り込まれた一連のビデオ画像を指し、この速度は、フレームレートと呼ばれることが多い。ビデオを取り込む典型的なフレームレートは、25フレーム/秒(fps)、30fps及び60fpsである。一部の実施形態の携帯デバイスのカメラは、これら及び他のフレームレートでビデオ画像(すなわち、ビデオフレーム)を取り込むことができる。   Some embodiments of the present invention provide a portable device having two cameras capable of taking pictures and videos. Examples of a mobile device include a mobile phone, smart phone, personal digital assistant (PDA), laptop, tablet personal computer, or any other type of mobile computing device. As used herein, a photo refers to still photo images taken with a camera, one at a time in single photo mode, or multiple at once in fast-action mode. Video, on the other hand, refers to a series of video images captured by a camera at a particular speed, which is often referred to as the frame rate. Typical frame rates for capturing video are 25 frames per second (fps), 30 fps and 60 fps. The camera of the portable device of some embodiments may capture video images (ie, video frames) at these and other frame rates.

一部の実施形態の携帯デバイスは、(1)取り込まれた写真画像及びビデオ画像を表示でき、(2)取り込まれた画像を後で別のデバイスに伝送するために記憶でき、(3)デバイスのユーザ間でのリアルタイム通信セッション中に、取り込まれた画像を1つ以上のデバイスに伝送でき、(4)取り込まれた画像をローカルに格納するために又は別のデバイスに伝送するために符号化できる。   The mobile device of some embodiments can (1) display captured photographic and video images, (2) store the captured images for later transmission to another device, and (3) device The captured image can be transmitted to one or more devices during a real-time communication session between the users of the plurality of users, and (4) encoding the captured image for local storage or transmission to another device. it can.

取り込まれたビデオ画像の伝送を伴うリアルタイム通信セッションの一例がテレビ会議である。一部の実施形態では、携帯デバイスは、テレビ会議中の任意の所与の時刻に1つのカメラの取り込まれたビデオ画像のみを伝送できる。しかし、他の実施形態では、携帯デバイスは、テレビ会議中又は他のリアルタイム通信セッション中にそのカメラの両方から取り込まれたビデオ画像を同時に伝送できる。   An example of a real-time communication session involving the transmission of a captured video image is a video conference. In some embodiments, the mobile device can transmit only the captured video images of one camera at any given time during a video conference. However, in other embodiments, the portable device can simultaneously transmit video images captured from both of its cameras during a video conference or other real-time communication session.

一部の実施形態の携帯デバイスは、1つ以上のデバイスの複数のカメラによって取り込まれた複数のビデオの同時表示を含む合成表示を生成する。いくつかの場合に、合成表示は、隣接する表示域(例えば、隣接するウィンドウ)にビデオを置く。図1は、1つのデバイスの2つのカメラによって取り込まれた又はテレビ会議中の2つの異なるデバイスの2つのカメラによって取り込まれた、2つのビデオを同時に表示する2つの隣接する表示域105及び110を含む合成表示100のこのような一例を示す。   In some embodiments, the mobile device generates a composite display that includes a simultaneous display of multiple videos captured by multiple cameras of one or more devices. In some cases, the composite display places the video in an adjacent display area (eg, an adjacent window). FIG. 1 shows two adjacent display areas 105 and 110 that simultaneously display two videos captured by two cameras on one device or captured by two cameras on two different devices during a video conference. An example of such a composite display 100 is shown.

他の場合に、合成表示は、2つの異なるビデオを示す少なくとも2つの表示域を含むPIP表示であり、表示域の一方は背景メイン表示域であり、他方は、背景メイン表示域に重なる前景挿入表示域である。図2は、合成PIP表示200のこのような一例を示す。この合成PIP表示200は、背景メイン表示域205と、背景メイン表示域に重なる前景挿入表示域210とを含む。2つの表示域205及び210は、1つのデバイスの2つのカメラによって取り込まれた又はテレビ会議中の2つの異なるデバイスの2つのカメラによって取り込まれた、2つのビデオを同時に表示する。本明細書において図示し説明する例示的な合成PIP表示は、背景メイン表示域205の内部に前景挿入表示域210全体が表示される合成PIP表示200と同様であるが、背景メイン表示域205と重なるが完全にその内部にあるわけではない前景挿入表示域210を有する他の合成PIP表示が可能である。   In other cases, the composite display is a PIP display that includes at least two display areas showing two different videos, one of the display areas being a background main display area and the other being a foreground insertion overlapping the background main display area. The display area. FIG. 2 shows one such example of a composite PIP display 200. The composite PIP display 200 includes a background main display area 205 and a foreground insertion display area 210 overlapping the background main display area. The two display areas 205 and 210 simultaneously display two videos captured by two cameras on one device or by two cameras on two different devices during a video conference. The exemplary composite PIP display shown and described herein is similar to the composite PIP display 200 in which the entire foreground insert display area 210 is displayed inside the background main display area 205, except that the background main display area 205 Other composite PIP displays are possible that have a foreground insert display area 210 that overlaps but is not completely inside.

別のデバイスとのテレビ会議中にビデオコンテンツを伝送することに加えて、一部の実施形態の携帯デバイスは、会議のビデオコンテンツと共に他のタイプのコンテンツを伝送できる。このような他のコンテンツの一例として、デバイスの他のカメラがテレビ会議で使用されるビデオを取り込んでいる間に、デバイスのカメラのうちの1つによって取り込まれた低解像度又は高解像度の写真画像がある。このような他のコンテンツの他の例として、(1)デバイスに格納されたファイル及び他のコンテンツ、(2)デバイスの画面表示(すなわち、デバイスの画面に表示されるコンテンツ)、(3)テレビ会議又は他のリアルタイム通信セッション中に別のデバイスから受信されたコンテンツなどがある。   In addition to transmitting video content during a video conference with another device, the portable device of some embodiments can transmit other types of content along with the video content of the conference. An example of such other content is a low-resolution or high-resolution photographic image captured by one of the device's cameras while another camera of the device is capturing video used in a video conference. There is. Other examples of such other contents include (1) files and other contents stored in the device, (2) screen display of the device (that is, content displayed on the screen of the device), and (3) television. Such as content received from another device during a conference or other real-time communication session.

一部の実施形態の携帯デバイスは、テレビ会議中に調整を行うための新規な会議中調整技術を用いる。例えば、一部の実施形態の携帯デバイスは、テレビ会議中に1つのカメラの取り込まれたビデオのみを伝送しながら、その他のカメラによって取り込まれたビデオを伝送するために動的に切り換えることができる。このような状況で、一部の実施形態の携帯デバイスは、テレビ会議に参加している他の任意のデバイスにこの切り換えを通知し、その結果、この他のデバイスは、2つのカメラによって取り込まれたビデオの間でのスムーズな移行を、このデバイス側で実現できる。   The mobile device of some embodiments uses a novel in-conference coordination technique for making adjustments during a video conference. For example, the portable device of some embodiments can dynamically switch to transmit video captured by another camera while transmitting only video captured by one camera during a video conference. . In such a situation, the mobile device of some embodiments notifies any other device participating in the video conference of this switch, so that the other device is captured by the two cameras Smooth transitions between videos can be achieved on this device.

一部の実施形態では、カメラ切り換え要求は、テレビ会議中にそのカメラを切り換える「ローカル」デバイスで発生しうるだけでなく、ローカルデバイスによって取り込まれたビデオを受信している他の「リモート」デバイスからも発生しうる。さらに、1つのデバイスが、別のデバイスにカメラを切り換えるように指示できることは、一部の実施形態のデバイスの遠隔制御機能の一例にすぎない。一部の実施形態においてデバイスにリモートから指示できる他の動作の例として、露出調整動作(例えば、自動露出)、焦点調整動作(例えば、オートフォーカス)などがある。ローカル又はリモートから指定可能な新規な会議中調整の別の例は、取り込まれたビデオ内の関心領域(ROI)の識別であり、このROI識別の使用目的は、取り込んでいるカメラの挙動を変更すること、取り込んでいるカメラを有するデバイスの画像処理動作を変更すること、又は取り込んでいるカメラを有するデバイスの符号化動作を変更することである。   In some embodiments, a camera switch request may occur at a "local" device that switches its camera during a video conference, as well as other "remote" devices receiving video captured by the local device. Can also occur. Further, the ability of one device to instruct another device to switch cameras is only one example of the remote control functionality of some embodiments of the device. Examples of other operations that can remotely instruct the device in some embodiments include an exposure adjustment operation (eg, automatic exposure), a focus adjustment operation (eg, autofocus), and the like. Another example of a new in-meeting adjustment that can be specified locally or remotely is the identification of a region of interest (ROI) in the captured video, where the purpose of the ROI identification is to change the behavior of the capturing camera To change the image processing operation of the device having the capturing camera, or to change the encoding operation of the device having the capturing camera.

一部の実施形態の新規な会議中調整のさらに別の例は、デバイスによって生成される合成ビデオ表示のリアルタイム変更を伴う。具体的には、一部の実施形態では、合成ビデオ表示のリアルタイム変更は、ユーザの選択及び表示域の移動に応答して合成表示内で表示域のうちの1つ以上を移動させることを伴う。また、一部の実施形態では、この合成表示を提供したデバイスの画面が回転する場合に、テレビ会議中に合成表示を回転する。また、一部の実施形態の携帯デバイスにより、デバイスのユーザは、PIP表示内のビデオの順序を反転させること(すなわち、背景メイン表示のビデオを前景挿入表示に表示させつつ、前景挿入表示のビデオを背景メイン表示に表示させること)が可能である。   Yet another example of a new in-meeting adjustment of some embodiments involves real-time modification of the composite video display generated by the device. Specifically, in some embodiments, the real-time modification of the composite video display involves moving one or more of the display areas within the composite display in response to user selection and movement of the display area. . Also, in some embodiments, if the screen of the device that provided the composite display rotates, the composite display is rotated during the video conference. Also, the mobile device of some embodiments allows the user of the device to reverse the order of the videos in the PIP display (i.e., the background main display video is displayed in the foreground insert display while the foreground insert video is displayed). Is displayed in the background main display).

いくつかのより詳細な実施形態が以下で説明される。セクションIで、一部の実施形態のビデオ処理アーキテクチャの説明を提供する。その後、セクションIIで、一部の実施形態の取り込み済画像処理ユニットについて説明する。一部の実施形態では、このユニットは、デバイスのカメラによって取り込まれたRAW画像の処理を担当するデバイスのコンポーネントである。   Some more detailed embodiments are described below. Section I provides a description of the video processing architecture of some embodiments. Then, Section II describes the captured image processing units of some embodiments. In some embodiments, this unit is a component of the device that is responsible for processing RAW images captured by the device's camera.

次に、セクションIIIで、一部の実施形態のテレビ会議アーキテクチャについて説明する。このセクションで、一部の実施形態のテレビ会議モジュールだけでなく単一カメラによるテレビ会議をセットアップするためのいくつかの方式についても説明する。その後、セクションIVで、一部の実施形態の会議中調整及び制御動作について説明する。その後、セクションVで、テレビ会議中に個々のデバイスから複数のビデオを伝送及び表示する実施形態のテレビ会議機能について説明する。次に、セクションVIにおいて、テレビ会議中の非リアルタイムコンテンツと共にリアルタイムビデオを伝送することについて説明する。最後に、セクションVIIで、一部の実施形態のデュアルカメラデバイスのハードウェアアーキテクチャについて説明する。   Next, Section III describes the video conferencing architecture of some embodiments. This section describes some schemes for setting up a single camera video conference, as well as the video conference module of some embodiments. Thereafter, Section IV describes the in-meeting coordination and control operations of some embodiments. Thereafter, Section V describes the video conferencing feature of an embodiment for transmitting and displaying multiple videos from individual devices during a video conference. Next, transmission of real-time video along with non-real-time content during a video conference in section VI will be described. Finally, Section VII describes the hardware architecture of the dual camera device of some embodiments.

I.ビデオの取り込み及び処理
図3は、一部の実施形態のデュアルカメラ携帯デバイスのビデオ処理及び符号化モジュール300を概念的に示す。一部の実施形態では、モジュール300は、デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を処理し、同じくデュアルカメラ携帯デバイスのカメラによって取り込まれたビデオを符号化する。図3に示すように、このモジュール300は、取り込み済画像処理ユニット(CIPU)ドライバ305と、メディア交換モジュール310と、エンコーダドライバ320と、ビデオ処理モジュール325とを含む。
I. Video Capture and Processing FIG. 3 conceptually illustrates a video processing and encoding module 300 of a dual camera portable device of some embodiments. In some embodiments, module 300 processes images captured by the camera of the dual camera mobile device and encodes video captured by the camera of the dual camera mobile device as well. As shown in FIG. 3, the module 300 includes a captured image processing unit (CIPU) driver 305, a media exchange module 310, an encoder driver 320, and a video processing module 325.

一部の実施形態では、メディア交換モジュール310によって、メディアコンテンツの消費者兼製作者であるデバイス上のプログラムが、メディアコンテンツ及びそのメディアコンテンツの処理に関する命令を交換できる。ビデオ処理及び符号化モジュール300では、一部の実施形態のメディア交換モジュール310は、ビデオ処理モジュール325とCIPUドライバ305の間、及びビデオ処理モジュール325とエンコーダドライバ320の間で、命令及びメディアコンテンツを経路制御する。このような命令及びメディアコンテンツのルーティングを容易にするため、一部の実施形態のメディア交換モジュール310は、メディアコンテンツの消費者及び製作者が使用するアプリケーションプログラミングインタフェース(API)の集合を提供する。このような実施形態のうちのいくつかでは、メディア交換モジュール310は、デュアルカメラ携帯デバイスで動作するオペレーティングシステムの一部である1つ以上のフレームワークの集合である。このようなメディア交換モジュール310の一例は、Apple Incによって提供されるCore Mediaフレームワークである。   In some embodiments, the media exchange module 310 allows programs on devices that are consumers and producers of media content to exchange instructions regarding media content and processing of the media content. In the video processing and encoding module 300, the media exchange module 310 of some embodiments transfers instructions and media content between the video processing module 325 and the CIPU driver 305 and between the video processing module 325 and the encoder driver 320. Route control. To facilitate the routing of such instructions and media content, the media exchange module 310 of some embodiments provides a collection of application programming interfaces (APIs) used by media content consumers and producers. In some of such embodiments, media exchange module 310 is a collection of one or more frameworks that are part of an operating system running on a dual camera portable device. One example of such a media exchange module 310 is the Core Media framework provided by Apple Inc.

ビデオ処理モジュール325は、デバイスのカメラによって取り込まれた画像及び/又はビデオに対して画像処理を実行する。このような動作の例として、露出調整動作、焦点調整動作、パースペクティブ補正、ダイナミックレンジ調整、画像サイズ変更、画像合成などがある。一部の実施形態では、いくつかの画像処理動作は、メディア交換モジュール310によって実行されることもできる。例えば、図3に示すように、一部の実施形態のメディア交換モジュール310は、デバイスのカメラによって取り込まれたビデオ画像のノイズを低減する時間ノイズ低減(TNR)動作を(例えば、TNR315によって)実行する。ビデオ処理モジュール325及びメディア交換モジュール310のこのような画像処理動作のさらなる例について、以下に提供する。   Video processing module 325 performs image processing on images and / or video captured by the device's camera. Examples of such operations include exposure adjustment operation, focus adjustment operation, perspective correction, dynamic range adjustment, image size change, image synthesis, and the like. In some embodiments, some image processing operations may be performed by the media exchange module 310. For example, as shown in FIG. 3, the media exchange module 310 of some embodiments performs a temporal noise reduction (TNR) operation (eg, by the TNR 315) that reduces noise in video images captured by the device's camera. I do. Further examples of such image processing operations of the video processing module 325 and the media exchange module 310 are provided below.

上述のように、ビデオ処理モジュール325は、メディア交換モジュール310を通じて、CIPUドライバ305及びエンコーダドライバ320とやり取りする。CIPUドライバ305は、取り込み済画像処理ユニット(CIPU)330とメディア交換モジュール310の間の通信インタフェースとして機能する。以下でさらに説明するように、CIPU330は、デバイスのカメラの画像取り込み動作又はビデオ取り込み動作中に取り込まれた画像の処理を担当するデュアルカメラデバイスのコンポーネントである。CIPUドライバ305は、ビデオ処理モジュール325からメディア交換モジュール310を通じて、デバイスのカメラの一方又は両方からの画像及び/又はビデオの要求を受け取る。CIPUドライバ305は、このような要求をCIPU330に中継し、それに応答して、要求された画像及び/又はビデオをCIPU330から受け取り、CIPUドライバ305はその後、この画像及び/又はビデオを、メディア交換モジュール310を通じてビデオ処理モジュール325に送る。一部の実施形態のビデオ処理モジュール325はまた、CIPUドライバ305及びメディア交換モジュール310を通じて、自身の動作のうちの一部を変更する(例えば、カメラのフレームレート、露出調整動作、焦点調整動作などを変更する)ために、命令をCIPU330に送る。   As described above, the video processing module 325 interacts with the CIPU driver 305 and the encoder driver 320 through the media exchange module 310. The CIPU driver 305 functions as a communication interface between the captured image processing unit (CIPU) 330 and the media exchange module 310. As described further below, CIPU 330 is a component of a dual camera device that is responsible for processing images captured during an image capture operation or a video capture operation of the device's camera. The CIPU driver 305 receives image and / or video requests from one or both of the device's cameras from the video processing module 325 through the media exchange module 310. CIPU driver 305 relays such a request to CIPU 330 and, in response, receives the requested image and / or video from CIPU 330, and CIPU driver 305 then forwards the image and / or video to the media exchange module. Send to video processing module 325 through 310. The video processing module 325 of some embodiments also modifies some of its operations through the CIPU driver 305 and the media exchange module 310 (eg, camera frame rate, exposure adjustment operation, focus adjustment operation, etc.). To the CIPU 330 to change

エンコーダドライバ320は、メディア交換モジュール310とエンコーダハードウェア335の間の通信インタフェース(例えば、エンコーダチップ、システムオンチップ上の符号化コンポーネントなど)として機能する。一部の実施形態では、エンコーダドライバ320は、ビデオ処理モジュール325からメディア交換モジュール310を通じて、画像及びこの画像を符号化する要求を受け取る。エンコーダドライバ320は、符号化されるべき画像をエンコーダ335に送り、その後エンコーダ335は、ピクチャ符号化又はビデオ符号化を画像に対して実行する。エンコーダドライバ320がエンコーダ335から符号化された画像を受け取る場合に、エンコーダドライバ320は、この符号化された画像を、メディア交換モジュール310を通じてビデオ処理モジュール325に送り返す。   The encoder driver 320 functions as a communication interface between the media exchange module 310 and the encoder hardware 335 (eg, an encoder chip, an encoding component on a system-on-chip, etc.). In some embodiments, encoder driver 320 receives an image and a request to encode the image from video processing module 325 through media exchange module 310. The encoder driver 320 sends the image to be encoded to the encoder 335, which then performs picture or video encoding on the image. If the encoder driver 320 receives the encoded image from the encoder 335, the encoder driver 320 sends the encoded image back to the video processing module 325 through the media exchange module 310.

一部の実施形態では、ビデオ処理モジュール325は、エンコーダから受け取った符号化された画像に対してさまざまな動作を実行できる。このような動作の例として、符号化された画像のデバイスの記憶装置への格納、デバイスのネットワークインタフェースを通じたテレビ会議中の符号化された画像の伝送などがある。   In some embodiments, video processing module 325 may perform various operations on the encoded images received from the encoder. Examples of such operations include storing the encoded image in a storage device of the device, transmitting the encoded image during a video conference through the device's network interface, and the like.

一部の実施形態では、ビデオ処理及び符号化モジュール300のモジュールの一部又は全部がオペレーティングシステムの一部として実装される。例えば、一部の実施形態では、このモジュール300の4つのコンポーネント305、310、320及び325のすべてがデバイスのオペレーティングシステムの一部として実装される。他の実施形態では、メディア交換モジュール310、CIPUドライバ305及びエンコーダドライバ320がデバイスのオペレーティングシステムの一部として実装され、ビデオ処理モジュール325はオペレーティングシステム上で実行されるアプリケーションとして有する。さらに、モジュール300の他の実装が可能である。   In some embodiments, some or all of the modules of the video processing and encoding module 300 are implemented as part of an operating system. For example, in some embodiments, all four components 305, 310, 320 and 325 of this module 300 are implemented as part of the device operating system. In another embodiment, the media exchange module 310, CIPU driver 305, and encoder driver 320 are implemented as part of the operating system of the device, and the video processing module 325 has an application running on the operating system. Further, other implementations of module 300 are possible.

ビデオ取り込みセッション中のビデオ処理及び符号化モジュール300の動作について以下に説明する。ビデオ取り込みセッションを開始するために、ビデオ処理モジュール325は、ビデオ取り込みセッションに必要ないくつかのコンポーネントを初期化する。一部の実施形態では、これらのコンポーネントとして、(1)CIPU330、(2)ビデオ処理モジュール325の拡大縮小及び合成モジュール(不図示)、(3)ビデオ処理モジュール325の画像処理モジュール(不図示)及び(4)エンコーダ335を含む。また、一部の実施形態のビデオ処理モジュール325は、テレビ会議に参加する際に、ネットワークマネージャ(不図示)を初期化する。   The operation of the video processing and encoding module 300 during a video capture session is described below. To start a video capture session, video processing module 325 initializes several components required for the video capture session. In some embodiments, these components include (1) CIPU 330, (2) scaling and compositing module of video processing module 325 (not shown), and (3) image processing module of video processing module 325 (not shown). And (4) an encoder 335. Also, the video processing module 325 of some embodiments initializes a network manager (not shown) when joining a video conference.

ビデオ処理モジュールは、デバイスのカメラの一方又は両方にビデオ取り込みを開始させるために、メディア交換モジュール310及びCIPUドライバ305を通じて、その初期化要求をCIPU330に送る。一部の実施形態では、この要求は、ビデオを取り込む必要がある各カメラに対する、特定のフレームレート、露出レベル及び拡大縮小サイズを指定する。この要求に応答して、CIPU330は、要求されたカメラからのビデオ画像を、指定されたレート(群)、露出レベル(群)及び拡大縮小サイズ(群)で戻し始める。これらのビデオ画像は、CIPUドライバ305及びメディア交換モジュール310を通じてビデオ処理モジュール325に戻され、メディア交換モジュール310は、上述のように、ビデオ画像にTNR動作を実行してからビデオ処理モジュール325に供給する。ビデオ処理モジュール325で、ビデオ画像は、さらなる画像処理のためにバッファ(不図示)に格納される。   The video processing module sends its initialization request to CIPU 330 via media exchange module 310 and CIPU driver 305 to cause one or both of the device's cameras to begin capturing video. In some embodiments, the request specifies a particular frame rate, exposure level, and scaling size for each camera that needs to capture video. In response to this request, CIPU 330 begins returning video images from the requested camera at the specified rate (s), exposure level (s), and scaling size (s). These video images are returned to the video processing module 325 through the CIPU driver 305 and the media exchange module 310, which performs the TNR operation on the video images before supplying the video processing module 325 as described above. I do. At the video processing module 325, the video images are stored in a buffer (not shown) for further image processing.

ビデオ処理モジュール325の画像処理モジュールは、さらなるビデオ処理のためにバッファに格納されたビデオ画像を読み出す。拡大縮小及び合成モジュールは、その後、デバイスの表示画面でのリアルタイム表示に必要ならば拡大縮小するために、処理されたビデオ画像を読み出す。一部の実施形態では、このモジュールは、デバイス上での取り込まれたビデオ画像のリアルタイム表示を提供するため又は符号化のために合成ビデオ画像を作成するために、テレビ会議中に別のデバイスのカメラ(群)と共にデバイスの2つのカメラによって取り込まれた画像から又はデバイスのカメラ(群)によって取り込まれた画像から合成画像を作成する。   The image processing module of the video processing module 325 reads the buffered video image for further video processing. The scaling and compositing module then reads the processed video image for scaling if necessary for real-time display on the display screen of the device. In some embodiments, this module may be used by another device during a videoconference to provide a real-time display of the captured video image on the device or to create a composite video image for encoding. A composite image is created from images captured by two cameras of the device with the camera (s) or from images captured by the camera (s) of the device.

処理された及び/又は合成されたビデオ画像は、エンコーダドライバ320及びメディア交換モジュール310を通じてエンコーダ335に供給される。その後、エンコーダ335は、そのビデオ画像を符号化する。その後、符号化された画像は、デバイスでの格納又はテレビ会議中の伝送のために、(やはりエンコーダドライバ320及びメディア交換モジュール310を通じて)ビデオ処理モジュール325に戻される。デバイスがテレビ会議に参加している場合に、(ビデオ処理モジュール325によって初期化された)ネットワークマネージャは、その後、これらの符号化された画像を読み出し、これらの画像をパケット化してデバイスのネットワークインタフェース(不図示)を通じて1つ以上の他のデバイスに伝送する。   The processed and / or synthesized video images are provided to encoder 335 through encoder driver 320 and media exchange module 310. Thereafter, the encoder 335 encodes the video image. The encoded image is then returned to video processing module 325 (also via encoder driver 320 and media exchange module 310) for storage at the device or transmission during a video conference. If the device is participating in a video conference, the network manager (initialized by the video processing module 325) will then read these encoded images and packetize these images into the network interface of the device. (Not shown) to one or more other devices.

II.取り込まれた画像の処理
A.単一のパイプライン
一部の実施形態のデュアルカメラ携帯デバイスのカメラによって取り込まれた画像は、処理されていないRAW画像である。これらの画像は、(例えば、テレビ会議中の)別のデバイスへの画像の伝送、画像の格納又は画像の表示などの他の動作に使用されうる前に、特定の色空間への変換を必要とする。さらに、カメラによって取り込まれた画像は、誤り及び/又は歪みを補正し、画像の色、サイズなどを調整するために処理される必要がありうる。したがって、一部の実施形態では、このような画像を格納、伝送及び表示する前に、画像に対していくつかの処理動作を実行する。このような画像の処理の一部は、CIPU330によって実行される。
II. Processing of captured image Single Pipeline The image captured by the camera of the dual camera portable device of some embodiments is a raw RAW image. These images need to be converted to a specific color space before they can be used for other operations, such as transmitting the image to another device (eg, during a video conference), storing the image, or displaying the image. And Further, images captured by the camera may need to be processed to correct errors and / or distortions and adjust the color, size, etc. of the images. Thus, some embodiments perform some processing operations on images before storing, transmitting, and displaying such images. Part of the processing of such an image is executed by the CIPU 330.

このようなCIPUの一例が図4に示される。具体的には、この図は、一部の実施形態の取り込み済画像処理ユニット(CIPU)400を概念的に示す。このCIPU400は、デバイスのカメラの1つのカメラのみからの画像を一度に処理するか、又はデバイスのカメラの両方からの画像を時分割多重化方式で(すなわち、時間インタリーブ方式で)同時に処理する単一の処理パイプライン485を含む。CIPU400の処理パイプライン485は、異なるカメラの異なる特性及び/又は動作設定に対処するように異なって構成されうる。一部の実施形態における異なるカメラ特性の例として、異なる解像度、雑音センサ、レンズのタイプ(固定レンズ又はズームレンズ)などを含む。また、デバイスが一部の実施形態においてカメラを動作できる異なる動作設定の例として、画像の解像度サイズ、フレームレート、ズームレベル、露出レベルなどを含む。   An example of such a CIPU is shown in FIG. Specifically, this figure conceptually illustrates a captured image processing unit (CIPU) 400 of some embodiments. The CIPU 400 may process images from only one of the device's cameras at a time, or may simultaneously process images from both of the device's cameras in a time division multiplexed (ie, time interleaved) manner. One processing pipeline 485 is included. The processing pipeline 485 of CIPU 400 may be configured differently to accommodate different characteristics and / or operational settings of different cameras. Examples of different camera characteristics in some embodiments include different resolutions, noise sensors, lens types (fixed lens or zoom lens), and the like. Examples of different operation settings that allow the device to operate the camera in some embodiments include image resolution size, frame rate, zoom level, exposure level, and the like.

図4に示すように、CIPU400は、センサモジュール415と、ライン/フレームバッファ417と、不良画素補正(BPC)モジュール420と、レンズシェーディング(LS)モジュール425と、デモザイキングモジュール430と、ホワイトバランス(WB)モジュール435と、ガンマモジュール440と、色空間変換(CSC)モジュール445と、色相、彩度、及びコントラスト(HSC)モジュール450と、スケーラモジュール455と、フィルタモジュール460と、統計エンジン465と、2組のレジスタ470と、コントローラモジュール475とを含む。一部の実施形態では、CIPU400のモジュールのすべては、ハードウェア(例えば、ASIC、FPGA、マイクロコントローラを有するSOCなど)として実装されるが、他の実施形態では、CIPU400のモジュールの一部又はすべては、ソフトウェアとして実装される。   As shown in FIG. 4, the CIPU 400 includes a sensor module 415, a line / frame buffer 417, a bad pixel correction (BPC) module 420, a lens shading (LS) module 425, a demosaicing module 430, and a white balance ( A WB) module 435, a gamma module 440, a color space conversion (CSC) module 445, a hue, saturation, and contrast (HSC) module 450, a scaler module 455, a filter module 460, a statistics engine 465, It includes two sets of registers 470 and a controller module 475. In some embodiments, all of the modules of CIPU 400 are implemented as hardware (eg, ASICs, FPGAs, SOCs with microcontrollers, etc.), while in other embodiments, some or all of the modules of CIPU 400 are implemented. Is implemented as software.

図4に示すように、センサモジュール415は、デバイスの2つのカメラの2つの画素アレイ410a及び410b並びに2組のセンサ405a及び405bに通信可能に結合する。一部の実施形態では、この通信可能な結合は、各カメラセンサのモバイルインダストリプロセッサインタフェース(MIPI)によって容易になる。   As shown in FIG. 4, the sensor module 415 is communicatively coupled to two pixel arrays 410a and 410b and two sets of sensors 405a and 405b of the two cameras of the device. In some embodiments, this communicable coupling is facilitated by the Mobile Industry Processor Interface (MIPI) of each camera sensor.

この通信可能な結合によって、センサモジュール415は、各カメラの電力レベル、ズームレベル、フォーカス、露出レベルなどのその動作の種々の側面を制御するためにカメラに命令を転送できる。一部の実施形態では、各カメラは、4つの動作電力モードを有する。第1動作電力モードでは、カメラの電源が切れている。第2動作電力モードの場合、カメラの電源が投入されているが、まだ構成されていない。第3動作電力モードでは、カメラの電源は投入されており、カメラのセンサは構成されており、カメラセンサの画素は、光子を収集して、収集した光子をデジタル値に変換する。しかし、カメラセンサは、画像をセンサモジュール415にまだ送っていない。最後に、第4動作電力モードでは、カメラは、カメラがセンサモジュール415に画像を現在送っていることを除いて、第3電力モードと同じ動作電力モードである。   This communicable coupling allows the sensor module 415 to transfer instructions to the cameras to control various aspects of their operation, such as the power level, zoom level, focus, exposure level, etc. of each camera. In some embodiments, each camera has four operating power modes. In the first operating power mode, the camera is turned off. In the case of the second operating power mode, the camera is powered on but has not been configured. In the third operating power mode, the camera is powered on, the sensor of the camera is configured, and the pixels of the camera sensor collect photons and convert the collected photons to digital values. However, the camera sensor has not yet sent the image to the sensor module 415. Finally, in the fourth operating power mode, the camera is in the same operating power mode as the third power mode, except that the camera is currently sending an image to the sensor module 415.

デバイスの動作中に、カメラは、1つの動作電力モードから別のモードに任意の回数切り換わってもよい。動作電力モードを切り換える場合に、一部の実施形態では、カメラが、上述の順番で動作電力モードを切り換えることが必要とされる。したがって、これらの実施形態では、第1動作電力モードのカメラは、第2動作電力モードのみに切り換わることができる。カメラは、第2動作電力モードの場合に、第1動作電力モード又は第3動作電力モードに切り換わることができる。同様に、カメラは、第3動作電力モードから第2動作電力モード又は第4動作電力モードに切り換わることができる。カメラは、第4動作電力モードの場合に、第3動作電力モードに切り換わって戻ることのみができる。   During operation of the device, the camera may switch from one operating power mode to another any number of times. When switching between operating power modes, some embodiments require that the camera switch between operating power modes in the order described above. Thus, in these embodiments, a camera in the first operating power mode can switch to only the second operating power mode. The camera can switch to the first operating power mode or the third operating power mode when in the second operating power mode. Similarly, the camera can switch from the third operating power mode to the second operating power mode or the fourth operating power mode. The camera can only switch back to the third operating power mode when in the fourth operating power mode.

さらに、ある動作電力モードから次又は前の動作電力モードに切り換わるには、特定の量の時間がかかる。したがって、2つ又は3つの動作電力モードの間での切り換えは、1つ動作電力モードの切り換えよりも低速である。また、動作電力モードによって消費する電力量が異なる。例えば、第4動作電力モードは最も多くの量の電力を消費し、第3動作電力モードは、第1動作電力モード及び第2動作電力モードよりも多くの電力を消費し、第2動作電力モードは第1動作電力モードよりも多くの電力を消費する。一部の実施形態では、第1動作電力モードは、電力を全く消費しない。   Furthermore, switching from one operating power mode to the next or previous operating power mode takes a certain amount of time. Therefore, switching between two or three operating power modes is slower than switching between one operating power mode. The amount of power consumed differs depending on the operating power mode. For example, the fourth operating power mode consumes the most amount of power, the third operating power mode consumes more power than the first operating power mode and the second operating power mode, and the second operating power mode Consumes more power than the first operating power mode. In some embodiments, the first operating power mode consumes no power.

カメラは、画像を取り込む第4動作電力モードでない場合に、他の動作電力モードのうちの1つのままであってもよい。使用されていないカメラをそのままにしておくための動作モードの決定は、カメラがどれほど多くの電力を消費することを許可されているか、及びカメラが画像取り込み開始要求にどれほど迅速に応答する必要がありうるかに依存する。例えば、第3動作電力モード(例えば、スタンバイモード)で動作するように構成されたカメラは、第1動作電力モードであるように(すなわち、電源が切れているように)構成されたカメラよりも多くの電力を消費する。しかし、カメラが、画像を取り込むように命令された場合に、第3動作電力モードで動作しているカメラは、第1動作電力モードで動作しているカメラよりも迅速に第4動作電力モードに切り換わることができる。このように、カメラは、画像を取り込んでいない場合にさまざまな要件(例えば、画像の取り込み要求に対する応答時間、消費電力)に基づいて異なる動作電力モードで動作するように構成されうる。   The camera may remain in one of the other operating power modes when not in the fourth operating power mode for capturing images. Determining the mode of operation to keep an unused camera in place depends on how much power the camera is allowed to consume, and how quickly the camera must respond to a request to start capturing images. It depends. For example, a camera configured to operate in a third operating power mode (eg, a standby mode) is better than a camera configured to be in a first operating power mode (ie, powered off). Consumes a lot of power. However, if the camera is commanded to capture an image, a camera operating in the third operating power mode will enter the fourth operating power mode more quickly than a camera operating in the first operating power mode. Can be switched. In this way, the camera may be configured to operate in different operating power modes based on various requirements (eg, response time to image capture request, power consumption) when no image is captured.

以下でさらに説明するように、ビデオ処理モジュール325が一方又は両方のカメラに画像を取り込み始めるように要求し、センサモジュール415がこの要求をコントローラモジュール475を通じて受け取る場合に、センサモジュール415は、各カメラとの通信可能な結合を通じて、一方又は両方のカメラセンサの集合に、画像を取り込み始めるように指示できる。カメラセンサのそれぞれにベイヤーフィルタが重畳され、したがって、各カメラセンサは、ベイヤーパターン画像を出力し、このベイヤーパターン画像は、各カメラセンサに関連する画素アレイに格納される。ベイヤーパターン画像とは、各画素が赤色、青色又は緑色のうち1色のみを格納する画像である。   As described further below, when the video processing module 325 requests one or both cameras to begin capturing images and the sensor module 415 receives this request through the controller module 475, the sensor module 415 Through a communicable coupling with a set of one or both camera sensors, one can instruct the set of camera sensors to begin capturing images. A Bayer filter is superimposed on each of the camera sensors, so that each camera sensor outputs a Bayer pattern image, which is stored in a pixel array associated with each camera sensor. The Bayer pattern image is an image in which each pixel stores only one color among red, blue, and green.

センサモジュール415は、画素アレイ410a及び410bとの自身の結合を通じて、カメラ画素アレイ410a及び410bに格納されているベイヤーパターンRAW画像を読み出す。センサモジュール415がカメラの画素アレイから画像を読み出す速度を制御することによって、センサモジュール415は、特定のカメラによって取り込まれているビデオ画像のフレームレートを制御できる。センサモジュール415は、自身の画像読み出し速度を制御することによって、CIPU処理パイプライン485による、異なるカメラから取り込まれた画像の画像処理をインタリーブするために、異なるカメラによって取り込まれた画像のフェッチをインタリーブすることもできる。センサモジュール415の画像読み出しの制御について、以下のサブセクションII.A.1及びII.A.2でさらに説明する。   The sensor module 415 reads out the Bayer pattern RAW image stored in the camera pixel arrays 410a and 410b through its own connection with the pixel arrays 410a and 410b. By controlling the rate at which sensor module 415 reads images from the camera's pixel array, sensor module 415 can control the frame rate of video images being captured by a particular camera. The sensor module 415 interleaves the fetch of images captured by different cameras to interleave the image processing of images captured by different cameras by the CIPU processing pipeline 485 by controlling its image readout speed. You can also. Regarding the control of the image reading of the sensor module 415, the following subsection II. A. 1 and II. A. This will be further described in Section 2.

センサモジュール415は、画像ライン(すなわち、画像の画素行)をセンサモジュール415が画素アレイ410a及び410bから読み出して、ライン/フレームバッファ417に格納する。ライン/フレームバッファ417内の各画像ラインは、CIPU処理パイプライン485によって処理される。図4に示すように、CIPU処理パイプライン485は、BPCモジュール420、LSモジュール425、デモザイキングモジュール430、WBモジュール435、ガンマモジュール440、CSCモジュール445、HSCモジュール450、スケーラモジュール455及びフィルタモジュール460によって形成される。一部の実施形態では、CIPU処理パイプライン485は、ライン/フレームバッファ417からの画像を1ラインずつ(すなわち、1行ずつ)処理するが、他の実施形態では、CIPU処理パイプライン485は、ライン/フレームバッファ417からの画像全体を1フレームずつ処理する。   The sensor module 415 reads an image line (that is, a pixel row of an image) from the pixel arrays 410 a and 410 b and stores the image line in the line / frame buffer 417. Each image line in line / frame buffer 417 is processed by CIPU processing pipeline 485. As shown in FIG. 4, the CIPU processing pipeline 485 includes a BPC module 420, an LS module 425, a demosaicing module 430, a WB module 435, a gamma module 440, a CSC module 445, an HSC module 450, a scaler module 455, and a filter module 460. Formed by In some embodiments, CIPU processing pipeline 485 processes images from line / frame buffer 417 line by line (ie, line by line), while in other embodiments, CIPU processing pipeline 485 includes: The entire image from the line / frame buffer 417 is processed frame by frame.

図4に示される例示的なパイプラインでは、BPCモジュール420は、ライン/フレームバッファ417から画像を読み出すモジュールである。このモジュールは、読み出された画像中の不良画素を補正するように試みる不良画素除去動作を実行し、この不良画素は、カメラセンサの1つ以上に欠陥があったこと(例えば、欠陥のある光センサが光をまったく検知しないか、光を間違って検知するなど)によって生じる可能性がある。一部の実施形態では、BPCモジュール420は、画像中の特定の画素を画像中の隣接する1つ以上の画素と比較することによって不良画素を検出する。特定の画素の値と隣接する画素の値との差がしきい値量よりも大きいならば、特定の画素の値は、特定の画素と同じ色(すなわち、赤色、緑色及び青色)の隣接するいくつかの画素の値の平均によって置き換えられる。   In the exemplary pipeline shown in FIG. 4, the BPC module 420 is a module that reads an image from the line / frame buffer 417. This module performs a bad pixel elimination operation that attempts to correct bad pixels in the read image, the bad pixels having one or more of the camera sensors being defective (e.g., having a defect). The light sensor does not detect the light at all or detects the light incorrectly). In some embodiments, the BPC module 420 detects bad pixels by comparing a particular pixel in the image with one or more adjacent pixels in the image. If the difference between the value of a particular pixel and the value of an adjacent pixel is greater than the threshold amount, then the value of the particular pixel is adjacent to the same color (ie, red, green and blue) as the particular pixel. It is replaced by the average of the values of some pixels.

BPCモジュール420の動作は、このモジュール用にCIPU400の2組のレジスタ470に格納された値によって一部が制御される。具体的には、デバイスの2つの異なるカメラによって取り込まれた画像を処理するために、一部の実施形態では、上述のように、CIPU処理パイプライン485は、各カメラに対して異なるように構成される。CIPU処理パイプライン485は、CIPU400の2つの異なるレジスタ470a(Ra)の集合及び470b(Rb)の集合に2つの異なる値の集合を格納することによって、2つの異なるカメラについて構成される。レジスタ470の各集合は、CIPU処理パイプライン485内にモジュール420〜460のそれぞれに対して1つのレジスタ(Ra又はRb)を含む。各レジスタセット内の各レジスタは、1つの処理パイプラインモジュールの動作を定義する1セットの値を格納する。したがって、図4に示すように、レジスタセット470aは、デュアルカメラ携帯デバイスの一方のカメラ(カメラA)のための各処理パイプラインモジュールの動作のモードを示すためにあり、レジスタセット470bは、デュアルカメラ携帯デバイスの他方のカメラ(カメラB)のための各モジュールの動作のモードを示すためにある。   The operation of BPC module 420 is controlled in part by values stored in two sets of registers 470 of CIPU 400 for this module. Specifically, to process images captured by two different cameras of the device, in some embodiments, as described above, the CIPU processing pipeline 485 is configured differently for each camera. Is done. CIPU processing pipeline 485 is configured for two different cameras by storing two different sets of values in two different sets of registers 470a (Ra) and 470b (Rb) of CIPU 400. Each set of registers 470 contains one register (Ra or Rb) for each of the modules 420-460 in the CIPU processing pipeline 485. Each register in each register set stores a set of values that define the operation of one processing pipeline module. Thus, as shown in FIG. 4, register set 470a is to indicate the mode of operation of each processing pipeline module for one camera (Camera A) of a dual camera portable device, and register set 470b is This is to indicate a mode of operation of each module for the other camera (camera B) of the camera portable device.

各カメラ向けに異なるようにCIPU処理パイプライン485を構成する一例は、さまざまなサイズの画像を処理するようにCIPU処理パイプライン485のモジュールを構成することである。例えば、カメラセンサ405aが640×480画素で、カメラセンサ405bが2048×1536画素であるならば、レジスタ470aの集合は、CIPU処理パイプライン485のモジュールに640×480画素画像を処理するように命令する値を格納するように構成され、レジスタ470bの集合は、CIPU処理パイプライン485のモジュールに2048×1536画素画像を処理するように命令する値を格納するように構成される。   One example of configuring the CIPU processing pipeline 485 differently for each camera is to configure the modules of the CIPU processing pipeline 485 to process images of various sizes. For example, if the camera sensor 405a is 640 × 480 pixels and the camera sensor 405b is 2048 × 1536 pixels, the set of registers 470a instructs the module of the CIPU processing pipeline 485 to process a 640 × 480 pixel image. The set of registers 470 b is configured to store a value that instructs a module of the CIPU processing pipeline 485 to process a 2048 × 1536 pixel image.

一部の実施形態では、異なる処理パイプライン構成(すなわち、レジスタ値)は、異なるプロファイル設定に格納される。このような実施形態のうちの一部では、携帯デバイスのユーザは、カメラ(群)の動作を設定するために(例えば、携帯デバイスに表示されるユーザインタフェースによって)プロファイル設定のうちの1つを選択することを許可されている。例えば、ユーザは、高解像度ビデオを取り込むようにカメラを構成するためのプロファイル設定、低解像度ビデオを取り込むように同じカメラを構成するためのプロファイル設定、又は高解像度静止画像を取り込むように両方のカメラを構成するためのプロファイル設定を選択できる。さまざまな構成が可能であり、多数の異なるプロファイル設定に格納されうる。このような実施形態の他のものでは、ユーザにプロファイル設定を選択させる代わりに、プロファイル設定は、ユーザが選択したアプリケーション又はアクティビティに基づいて自動的に選択される。例えば、ユーザがテレビ会議アプリケーションを選択したならば、ビデオを取り込むように両方のカメラを構成するプロファイルが自動的に選択され、ユーザが写真アプリケーションを選択したならば、静止画像を取り込むようにカメラのうちの1つを構成するプロファイルが自動的に選択される、などである。   In some embodiments, different processing pipeline configurations (ie, register values) are stored in different profile settings. In some of such embodiments, the user of the mobile device configures one of the profile settings (e.g., via a user interface displayed on the mobile device) to configure the operation of the camera (s). You are allowed to choose. For example, the user may have profile settings to configure the camera to capture high-resolution video, profile settings to configure the same camera to capture low-resolution video, or both cameras to capture high-resolution still images. You can select the profile settings to configure. Various configurations are possible and can be stored in a number of different profile settings. In other such embodiments, instead of having the user select a profile setting, the profile setting is automatically selected based on the application or activity selected by the user. For example, if the user selects the video conferencing application, the profile that configures both cameras to capture video is automatically selected, and if the user selects the photo application, the camera is configured to capture still images. For example, a profile constituting one of them is automatically selected.

BPCモジュール420の後に、LSモジュール425は、不良画素補正済みの画像を受け取る。LSモジュール425は、ライトフォールオフ効果を生じる(すなわち、光がカメラセンサの端に向かって減少する)カメラレンズによって引き起こされる画像の欠陥を補正するためにレンズシェーディング補正動作を実行する。このような効果によって、画像は不均一に照らされる(例えば、隅及び/又は端の方が暗い)。これらの画像の欠陥を補正するために、一部の実施形態のLSモジュール425は、レンズの照度フォールオフの数学的モデルを推定する。その後、推定されたモデルは、画像の不均一に照らされた部分を均一に照らすように画像のレンズフォールオフを補償するために使用される。例えば、画像の隅の明度が画像の中心の半分であるならば、一部の実施形態のLSモジュール425は、均一な画像を生成するために隅の画素値に2倍にする。   After the BPC module 420, the LS module 425 receives the defective pixel corrected image. The LS module 425 performs a lens shading correction operation to correct image defects caused by a camera lens that produces a light fall-off effect (i.e., light decreases toward the edge of the camera sensor). Such an effect causes the image to be unevenly illuminated (eg, darker at corners and / or edges). To correct for these image defects, the LS module 425 of some embodiments estimates a mathematical model of the illumination falloff of the lens. The estimated model is then used to compensate for the lens falloff of the image to evenly illuminate the unevenly illuminated portion of the image. For example, if the brightness of a corner of the image is half of the center of the image, the LS module 425 of some embodiments doubles the pixel value of the corner to produce a uniform image.

デモザイキングモジュール430は、サンプリングされた色の画像からフルカラー画像を生成するためにデモザイキング動作を実行する。前述のように、カメラセンサがベイヤーパターン画像を出力するが、ベイヤーパターン画像の各画素は1色の値のみを格納するのでこのベイヤーパターン画像は不完全である。デモザイキングモジュール430は、ベイヤーパターン画像の各色集合に対する色値を補間することによって、ベイヤーパターン画像から赤色、緑色、青色(RGB)画像を再構成する。   The demosaicing module 430 performs a demosaicing operation to generate a full color image from the sampled color image. As described above, the camera sensor outputs a Bayer pattern image. However, since each pixel of the Bayer pattern image stores only one color value, the Bayer pattern image is incomplete. The demosaicing module 430 reconstructs a red, green, blue (RGB) image from the Bayer pattern image by interpolating the color values for each color set of the Bayer pattern image.

WBモジュール435は、画像のコンテンツの色が、実生活でヒトの眼に知覚されるこのようなコンテンツの色に類似するように、デモザイキングモジュール430から受け取ったRGB画像にホワイトバランス動作を実行する。WBモジュール435は、中間色(例えば、灰色、白色など)を適切にレンダリングするように画像の色を調整することによって、ホワイトバランスを調整する。例えば、白熱光下での1枚の白紙の画像は黄色に見えることがあるが、ヒトの眼は、この紙を白色と知覚する。センサが取り込んだ画像の色とヒトの眼が知覚する色との違いを考慮するために、WBモジュール435は、取り込まれた画像がヒトの眼によって知覚される色を適切に反映するように画像の色値を調整する。   The WB module 435 performs a white balance operation on the RGB images received from the demosaicing module 430 such that the color of the content of the image is similar to the color of such content as perceived by the human eye in real life. . The WB module 435 adjusts the white balance by adjusting the colors of the image to properly render neutral colors (eg, gray, white, etc.). For example, a single blank image under incandescent light may appear yellow, but the human eye perceives the paper as white. To account for differences between the color of the image captured by the sensor and the color perceived by the human eye, the WB module 435 determines the image so that the captured image appropriately reflects the color perceived by the human eye. Adjust the color value of.

統計エンジン465は、CIPU処理パイプライン485の種々の段階において画像データを収集する。例えば、図4は、統計エンジン465がLSモジュール425、デモザイキングモジュール430及びWBモジュール435の後に画像データを収集することを示す。さまざまな実施形態では、CIPU処理パイプライン485の任意の数のさまざまな段階からデータを収集する。統計エンジン465は、収集されたデータを処理し、処理されたデータに基づいて、コントローラモジュール475及びセンサモジュール415を通じてカメラセンサ405a及び405bの動作を調整する。このような動作の例としては、露出及びフォーカスがある。図4は、統計エンジン465がコントローラモジュール475を通じてカメラセンサ405a及び405bを制御することを示しているが、統計エンジン465の他の実施形態は、まさにセンサモジュール415を通じてカメラセンサを制御する。   The statistics engine 465 collects image data at various stages of the CIPU processing pipeline 485. For example, FIG. 4 illustrates that the statistics engine 465 collects image data after the LS module 425, demosaicing module 430, and WB module 435. In various embodiments, data is collected from any number of various stages of the CIPU processing pipeline 485. The statistics engine 465 processes the collected data and adjusts the operation of the camera sensors 405a and 405b through the controller module 475 and the sensor module 415 based on the processed data. Examples of such operations include exposure and focus. Although FIG. 4 shows that the statistics engine 465 controls camera sensors 405 a and 405 b through the controller module 475, other embodiments of the statistics engine 465 control camera sensors just through the sensor module 415.

処理されたデータは、CIPU400の種々のモジュールの動作を調整するために使用することもできる。例えば、一部の実施形態の統計エンジン465は、WBモジュール435の後で収集されたデータに基づいてWBモジュール435の動作を調整する。このような実施形態のうちの一部では、統計エンジン465は、処理されたデータを使用してWBモジュール435のホワイトバランス動作を調整することによって、自動ホワイトバランス(AWB)機能を提供する。他の実施形態では、CIPU処理パイプライン485の任意の数の段階から収集された処理済みのデータを使用してCIPU処理パイプライン485内の任意の数のモジュールの動作を調整できる。さらに、統計エンジン465は、CIPU処理パイプライン485の1つ以上のモジュールの動作を調整するためにコントローラモジュール475から命令を受け取ることもできる。   The processed data can also be used to coordinate the operation of various modules of CIPU 400. For example, the statistics engine 465 of some embodiments adjusts the operation of the WB module 435 based on data collected after the WB module 435. In some of such embodiments, the statistics engine 465 provides an automatic white balance (AWB) function by adjusting the white balance operation of the WB module 435 using the processed data. In other embodiments, processed data collected from any number of stages of the CIPU processing pipeline 485 can be used to coordinate the operation of any number of modules in the CIPU processing pipeline 485. Further, statistics engine 465 may also receive instructions from controller module 475 to coordinate the operation of one or more modules of CIPU processing pipeline 485.

ガンマモジュール440は、WBモジュール435から画像を受け取った後で、カメラシステムの輝度又は3刺激値を符号化し復号するために、ガンマ補正動作を画像に対して実行する。一部の実施形態のガンマモジュール440は、画像のガンマを補正するために10〜12ビットの線形信号を8ビットの非線形の符号化信号に変換することによってガンマを補正する。一部の実施形態では、ルックアップテーブルを使用することによってガンマを補正する。   After receiving the image from the WB module 435, the gamma module 440 performs a gamma correction operation on the image to encode and decode the luminance or tristimulus values of the camera system. The gamma module 440 of some embodiments corrects gamma by converting a 10- to 12-bit linear signal to an 8-bit non-linear encoded signal to correct for gamma of an image. In some embodiments, gamma is corrected by using a look-up table.

CSCモジュール445は、ガンマモジュール440から受け取った画像を、ある色空間から別の色空間に変換する。具体的には、CSCモジュール445は、RGB色空間から輝度及び色差(YUV)色空間に画像を変換する。しかし、CSCモジュール445の他の実施形態は、任意の数の色空間から、任意の数の色空間に画像を変換できる。   The CSC module 445 converts the image received from the gamma module 440 from one color space to another color space. Specifically, the CSC module 445 converts the image from the RGB color space to the luminance and color difference (YUV) color space. However, other embodiments of the CSC module 445 can convert an image from any number of color spaces to any number of color spaces.

HSCモジュール450は、CSCモジュール445から受け取った画像の色相、彩度、コントラスト又はそれらの任意の組み合わせを調整してもよい。HSCモジュール450は、例えば、これらの性質を調整して、ノイズを減少させたり画像を向上させたりできる。例えば、低ノイズカメラセンサによって取り込まれた画像の彩度は、画像をより鮮明に見えるようにするために増加できる。対照的に、高ノイズカメラセンサによって取り込まれた画像の彩度は、このような画像の色ノイズを抑えるように減少できる。   The HSC module 450 may adjust the hue, saturation, contrast, or any combination thereof of the image received from the CSC module 445. The HSC module 450 can, for example, adjust these properties to reduce noise or enhance images. For example, the saturation of an image captured by a low noise camera sensor can be increased to make the image appear sharper. In contrast, the saturation of images captured by high noise camera sensors can be reduced to reduce the color noise in such images.

HSCモジュール450の後で、スケーラモジュール455は、画像の画素解像度を調整するか又は画像のデータサイズを調整するために、画像をサイズ変更できる。スケーラモジュール455は、例えば、より小さな表示に適合させるために画像のサイズを低減してもよい。スケーラモジュール455は、いくつかの異なる方法で画像を拡大縮小できる。例えば、スケーラモジュール455は、画像を拡大したり(すなわち、引き伸ばす)縮小したり(すなわち、縮める)できる。スケーラモジュール455は、画像を比例して拡大縮小するか又は画像をアナモルフィックに拡大縮小することもできる。   After the HSC module 450, the scaler module 455 can resize the image to adjust the pixel resolution of the image or adjust the data size of the image. The scaler module 455 may, for example, reduce the size of the image to accommodate a smaller display. The scaler module 455 can scale an image in several different ways. For example, the scaler module 455 can enlarge (ie, stretch) and shrink (ie, shrink) an image. The scaler module 455 can also scale the image proportionally or scale the image anamorphically.

フィルタモジュール460は、画像の一部又は全部の画素の1つ以上の属性を変更するために、スケーラモジュール455から受け取った画像に1つ以上のフィルタ動作を適用する。フィルタの例としては、いくつかの例の中でも特に、ローパスフィルタ、ハイパスフィルタ、バンドパスフィルタ、バイラテラルフィルタ、ガウシアンフィルタがある。このようなものとして、フィルタモジュール460は、画像に任意の数の異なるフィルタを適用できる。   Filter module 460 applies one or more filtering operations to the image received from scaler module 455 to change one or more attributes of some or all pixels of the image. Examples of filters include a low-pass filter, a high-pass filter, a band-pass filter, a bilateral filter, and a Gaussian filter, among other examples. As such, the filter module 460 can apply any number of different filters to the image.

一部の実施形態のコントローラモジュール475は、CIPU400の動作を制御するマイクロコントローラである。一部の実施形態では、コントローラモジュール475は、(1)センサモジュール415を通じてカメラセンサの動作(例えば、露出レベル)、(2)CIPU処理パイプライン485の動作、(3)CIPU処理パイプライン485のタイミング(例えば、いつカメラセンサを切り換えるべきか、いつレジスタを切り換えるべきかなど)、及び(4)一部の実施形態のデュアルカメラ携帯デバイスの一部であるフラッシュ/ストロボ(不図示)を制御する。   The controller module 475 of some embodiments is a microcontroller that controls the operation of the CIPU 400. In some embodiments, the controller module 475 includes (1) operation of the camera sensor (eg, exposure level) through the sensor module 415, (2) operation of the CIPU processing pipeline 485, (3) of the CIPU processing pipeline 485. Control timing (eg, when to switch camera sensors, when to switch registers, etc.), and (4) flash / strobe (not shown) that is part of the dual camera portable device of some embodiments. .

コントローラモジュール475の一部の実施形態は、統計エンジン465及びCIPUドライバ480から受け取った命令を処理する。一部の実施形態では、CIPUドライバ480から受け取った命令は、デュアルカメラ携帯デバイスからの(すなわち、ローカルデバイスから受け取った)命令であるが、他の実施形態では、CIPUドライバ480から受け取った命令は、別のデバイス(例えば、テレビ会議中のリモート制御)からの命令である。コントローラモジュール475は、処理された命令に基づいて、レジスタ470の値をプログラミングすることによって、CIPU400の動作を調整できる。さらに、コントローラモジュール475は、CIPU400の動作中にレジスタ470の値を動的に再プログラムできる。   Some embodiments of the controller module 475 process instructions received from the statistics engine 465 and the CIPU driver 480. In some embodiments, the instructions received from CIPU driver 480 are instructions from a dual camera portable device (ie, received from a local device), while in other embodiments, the instructions received from CIPU driver 480 are Command from another device (eg, remote control during a videoconference). Controller module 475 can adjust the operation of CIPU 400 by programming the value of register 470 based on the processed instruction. Further, controller module 475 can dynamically reprogram the value of register 470 during operation of CIPU 400.

図4に示すように、CIPU400は、CIPU処理パイプライン485に複数のモジュールを含む。しかし、CIPU400はほんの数個の説明したモジュール又は異なる追加のモジュールで実装できることが当業者には理解されよう。さらに、異なるモジュールによって実行される処理は、図4に示される順序とは異なる順序で画像に適用されうる。   As shown in FIG. 4, CIPU 400 includes a plurality of modules in CIPU processing pipeline 485. However, those skilled in the art will appreciate that CIPU 400 may be implemented with only a few of the described modules or different additional modules. Further, the processing performed by the different modules may be applied to the images in a different order than the order shown in FIG.

ここで、CIPU400の例示的な動作について、図4を参照して説明する。説明のために、レジスタRaの集合は、デュアルカメラ携帯デバイスのカメラセンサ405aによって取り込まれた画像を処理するために使用され、レジスタRbの集合は、デュアルカメラ携帯デバイスのカメラセンサ405bによって取り込まれた画像を処理するために使用される。コントローラモジュール475は、デュアルカメラ携帯デバイスのカメラのうちの1つによって取り込まれた画像を生成するためにCIPUドライバ480から命令を受け取る。   Here, an exemplary operation of the CIPU 400 will be described with reference to FIG. For purposes of illustration, the set of registers Ra is used to process images captured by the camera sensor 405a of the dual camera portable device, and the set of registers Rb is captured by the camera sensor 405b of the dual camera portable device. Used to process images. Controller module 475 receives instructions from CIPU driver 480 to generate an image captured by one of the cameras of the dual camera portable device.

コントローラモジュール475は、その後、デュアルカメラ携帯デバイスのカメラのうちの1つによって取り込まれた画像を処理するためにCIPU処理パイプライン485の種々のモジュールを初期化する。一部の実施形態では、これは、レジスタ470のうちのレジスタの適切な集合が使用されていることをコントローラモジュール475が確認することを含む。例えば、CIPUドライバ480が、カメラセンサ405aによって取り込まれた画像を生成するようにコントローラモジュール475に命令するならば、コントローラモジュール475は、レジスタRaの集合が、CIPU400のモジュールの読み取るレジスタの集合であることを確認する。そうでないならば、コントローラモジュール475は、レジスタRaの集合が、CIPU400のモジュールによって読み取られる集合であるように、レジスタの集合を切り換える。   Controller module 475 then initializes various modules of CIPU processing pipeline 485 to process images captured by one of the cameras of the dual camera portable device. In some embodiments, this includes the controller module 475 confirming that an appropriate set of registers of the registers 470 is being used. For example, if the CIPU driver 480 instructs the controller module 475 to generate an image captured by the camera sensor 405a, the controller module 475 may have a set of registers Ra that is a set of registers read by the modules of the CIPU 400. Make sure that Otherwise, the controller module 475 switches the set of registers such that the set of registers Ra is the set read by the modules of the CIPU 400.

CIPU処理パイプライン485の各モジュールに対して、動作のモードが、レジスタRaの集合に格納された値によって示される。前述したように、レジスタ470の集合の値は、CIPU400の動作中に動的に再プログラムされうる。したがって、1つの画像の処理は、次の画像の処理と異なりうる。CIPU400のこの例示的な動作の説明では、CIPU400の各モジュールが、モジュールの動作のモードを示すレジスタに格納された値を読み取ることが説明されているが、いくつかのソフトウェアで実装された実施形態では、その代わりに、パラメータがCIPU400の種々のモジュールに渡される。   For each module of the CIPU processing pipeline 485, the mode of operation is indicated by the value stored in the set of registers Ra. As described above, the values of the set of registers 470 may be dynamically reprogrammed during operation of CIPU 400. Thus, processing of one image may be different from processing of the next image. Although the description of this exemplary operation of CIPU 400 describes that each module of CIPU 400 reads a value stored in a register indicating the mode of operation of the module, some software implemented embodiments Instead, parameters are passed to the various modules of CIPU 400 instead.

一部の実施形態では、コントローラモジュール475は、画素アレイ410aから画像を読み出した後で特定の量の時間だけ遅延するようにセンサモジュール415に命令することによってセンサモジュール415を初期化する。言い換えれば、コントローラモジュール475は、特定のレートで画素アレイ410aから画像を読み出すように、センサモジュール415に命令する。   In some embodiments, the controller module 475 initializes the sensor module 415 by instructing the sensor module 415 to delay a certain amount of time after reading an image from the pixel array 410a. In other words, the controller module 475 instructs the sensor module 415 to read an image from the pixel array 410a at a specific rate.

次に、コントローラモジュール475は、画像を取り込むように、センサモジュール415を通じて、カメラセンサ405aに命令する。一部の実施形態では、コントローラモジュール475は、カメラセンサ405aに、露出及び他のカメラ動作のパラメータも提供する。他の実施形態では、カメラセンサ405aは、カメラセンサ動作パラメータにデフォルト値を使用する。カメラセンサ405aは、パラメータに基づいて、画素アレイ410aに格納されたRAW画像を取り込む。センサモジュール415は、CIPU処理パイプライン485が画像を処理する前に、画素アレイ410aからRAW画像を読み出し、格納のために、この画像をライン/フレームバッファ417に送る。   Next, the controller module 475 instructs the camera sensor 405a via the sensor module 415 to capture an image. In some embodiments, controller module 475 also provides camera sensor 405a with exposure and other camera operating parameters. In another embodiment, camera sensor 405a uses default values for camera sensor operating parameters. The camera sensor 405a captures a RAW image stored in the pixel array 410a based on the parameters. The sensor module 415 reads the RAW image from the pixel array 410a and sends the image to the line / frame buffer 417 for storage before the CIPU processing pipeline 485 processes the image.

ある一定の状況では、画像は、ライン/フレームバッファ417によって破棄されうる。カメラセンサ405a及び/又は405bが高速で画像を取り込んでいる場合に、センサモジュール415は、BPCモジュール420がライン/フレームバッファ417から画像を読み出すことができる(例えば、高フレームレートビデオを取り込む)よりも高速に、画像を受け取ってライン/フレームバッファ417に格納でき、ライン/フレームバッファ417はいっぱいになるだろう。これが発生すると、一部の実施形態のライン/フレームバッファ417は、先入れ先出し方式に基づいて画像(すなわち、フレーム)を破棄する。すなわち、ライン/フレームバッファ417が画像を破棄する場合に、ライン/フレームバッファ417は、ライン/フレームバッファ417の他のすべての画像の前に受け取った画像を破棄する。   In certain circumstances, the image may be discarded by line / frame buffer 417. If the camera sensors 405a and / or 405b are capturing images at high speed, the sensor module 415 may be able to read the images from the BPC module 420 from the line / frame buffer 417 (eg, capture high frame rate video). Also, the image can be received and stored in the line / frame buffer 417 at high speed, and the line / frame buffer 417 will be full. When this occurs, the line / frame buffer 417 of some embodiments discards the image (ie, frame) on a first-in first-out basis. That is, when line / frame buffer 417 discards an image, line / frame buffer 417 discards the image received before all other images in line / frame buffer 417.

CIPU処理パイプライン485による画像の処理は、画像の不良画素を補正するためにBPCモジュール420がライン/フレームバッファ417から画像を読み出すことによって開始する。その後、BPCモジュール420は、画像の不均一な照度を補正するためにLSモジュール425に画像を送る。画像の照度が補正された後、LSモジュール425は、RAW画像を処理してRAW画像からRGB画像を生成するデモザイキングモジュール430に画像を送る。次に、WBモジュール435は、デモザイキングモジュール430からRGB画像を受け取り、RGB画像のホワイトバランスを調整する。   Processing of the image by the CIPU processing pipeline 485 begins when the BPC module 420 reads the image from the line / frame buffer 417 to correct for bad pixels in the image. After that, the BPC module 420 sends the image to the LS module 425 to correct uneven illumination of the image. After the illuminance of the image is corrected, the LS module 425 sends the image to a demosaicing module 430 that processes the RAW image and generates an RGB image from the RAW image. Next, the WB module 435 receives the RGB images from the demosaicing module 430 and adjusts the white balance of the RGB images.

前述のように、統計エンジン465は、CIPU処理パイプライン485の種々の時点で何らかのデータを収集していてもよい。例えば、統計エンジン465は、図4に示すように、LSモジュール425、デモザイキングモジュール430及びWBモジュール435の後でデータを収集する。この収集されたデータに基づいて、統計エンジン465は、カメラセンサ405aからの以後の画像の取り込みを調整するために、カメラセンサ405aの動作、CIPU処理パイプライン485の1つ以上のモジュールの動作、又は両方を調整できる。例えば、収集したデータに基づいて、統計エンジン465は、現在の画像の露出レベルが低すぎ、したがって、その後で取り込まれる画像に対する露出レベルを増加させるようにセンサモジュール415を通じてカメラセンサ405aに命令することを決定してもよい。したがって、一部の実施形態の統計エンジン465は、一部の処理動作のためのフィードバックループとして動作する。   As described above, the statistics engine 465 may have collected some data at various points in the CIPU processing pipeline 485. For example, the statistics engine 465 collects data after the LS module 425, demosaicing module 430, and WB module 435, as shown in FIG. Based on this collected data, the statistics engine 465 may operate the camera sensor 405a, the operation of one or more modules of the CIPU processing pipeline 485, to adjust subsequent image capture from the camera sensor 405a. Or both can be adjusted. For example, based on the collected data, the statistics engine 465 may instruct the camera sensor 405a through the sensor module 415 to increase the exposure level for the current image that is too low, and therefore for subsequently captured images. May be determined. Accordingly, the statistics engine 465 of some embodiments operates as a feedback loop for some processing operations.

WBモジュール435は、画像のホワイトバランスを調整した後、ガンマ補正のため(例えば、画像のガンマ曲線を調整するため)にガンマモジュール440に画像を送る。CSCモジュール445は、ガンマモジュール440からガンマ補正済みの画像を受け取り、色空間変換を実行する。この例では、CSCモジュール445は、RGB画像をYUV画像に変換する。言い換えれば、CSCモジュール445は、RGB色空間で表される画像をYUV色空間で表される画像に変換する。HSCモジュール450は、CSCモジュール445からYUV画像を受け取り、画像の種々の画素の色相属性、彩度属性及びコントラスト属性を調整する。HSCモジュール450の後で、スケーラモジュール455は、画像をサイズ変更する(例えば、画像を引き伸ばす又は縮める)。フィルタモジュール460は、スケーラモジュール455から画像を受け取った後、画像に対して1つ以上のフィルタを適用する。最後に、フィルタモジュール460は、処理された画像をCIPUドライバ480に送る。   After adjusting the white balance of the image, the WB module 435 sends the image to the gamma module 440 for gamma correction (eg, to adjust the gamma curve of the image). The CSC module 445 receives the gamma-corrected image from the gamma module 440 and performs color space conversion. In this example, the CSC module 445 converts an RGB image into a YUV image. In other words, the CSC module 445 converts an image represented in the RGB color space into an image represented in the YUV color space. HSC module 450 receives the YUV image from CSC module 445 and adjusts the hue, saturation, and contrast attributes of various pixels in the image. After HSC module 450, scaler module 455 resizes the image (eg, stretches or shrinks the image). After receiving the image from the scaler module 455, the filter module 460 applies one or more filters to the image. Finally, the filter module 460 sends the processed image to the CIPU driver 480.

上述のCIPU400の動作のこの例では、CIPU処理パイプライン485の各モジュールは、何らかの方式で画像を処理した。しかし、CIPU400によって処理される他の画像は、CIPU処理パイプライン485のすべてのモジュールによる処理を必要としなくてもよい。例えば、画像は、ホワイトバランス調整、ガンマ補正、拡大縮小又はフィルタ処理を必要としなくてもよい。したがって、CIPU400は、例えば、CIPUドライバ480からの命令などのさまざまな受け取った入力又は統計エンジン465によって収集されたデータに基づいて任意の複数の手法で画像を処理できる。   In this example of the operation of CIPU 400 described above, each module of CIPU processing pipeline 485 processed the image in some manner. However, other images processed by CIPU 400 may not require processing by all modules of CIPU processing pipeline 485. For example, an image may not require white balance adjustment, gamma correction, scaling, or filtering. Thus, CIPU 400 may process the image in any of a number of ways based on various received inputs, such as instructions from CIPU driver 480, or data collected by statistics engine 465.

異なる実施形態は、画像が処理される速度(すなわち、フレームレート)を異なるように制御する。フレームレートを制御する1つの方式は、垂直帰線消去期間(VBI)の操作によるものである。画像を1ラインずつ処理するために画像ラインを読み出す一部の実施形態では、VBIは、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオの画像の最後のラインを画素アレイから読み出すことと、ビデオの次の画像の最初のラインを画素アレイから読み出すこととの時間差である。他の実施形態では、VBIは、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオの1つの画像を画素アレイから読み出すことと、ビデオの次の画像を画素アレイから読み出すこととの時間差である。   Different embodiments control the speed at which the image is processed (ie, the frame rate) differently. One way to control the frame rate is by manipulating the vertical blanking interval (VBI). In some embodiments, reading the image lines to process the image line by line, the VBI reads the last line of the image of the video captured by the camera of the dual camera portable device from the pixel array, This is the time difference from reading the first line of the next image from the pixel array. In another embodiment, the VBI is the time difference between reading one image of the video captured by the camera of the dual camera portable device from the pixel array and reading the next image of the video from the pixel array.

VBIを使用できる1つの例は、センサモジュール415と画素アレイ410a及び410bとの間である。例えば、センサモジュール415の一部の実施形態は、画素アレイ410a及び410bから画像を1ラインずつ読み出し、センサモジュール415の他の実施形態は、画素アレイ410a及び410bから画像を1画像ずつ読み出す。したがって、フレームレートは、センサモジュール415のVBIを調整することによって制御されうる。VBIを増加させると、フレームレートが減少し、VBIを減少させると、フレームレートが増加する。   One example where VBI can be used is between the sensor module 415 and the pixel arrays 410a and 410b. For example, some embodiments of the sensor module 415 read images from the pixel arrays 410a and 410b line by line, and other embodiments of the sensor module 415 read images from the pixel arrays 410a and 410b image by image. Accordingly, the frame rate can be controlled by adjusting the VBI of sensor module 415. Increasing VBI decreases the frame rate, and decreasing VBI increases the frame rate.

1.シングルカメラのためのVBIの使用:フレームレート制御
図5は、異なるVBIに基づいた異なるフレームレート505、510及び515の例を概念的に示す。各シーケンスは、デュアルカメラ携帯デバイスのカメラのうちの1つによって取り込まれた、タイムライン520に沿った種々の時刻525〜555でのギターを持つ人の画像を示す。さらに、各時刻525〜555間の時間は同じであり、1単位時間と呼ばれる。説明のために、ここで図5について、図4のセンサモジュール415及び画素アレイ410aに関して説明する。したがって、各画像は、センサモジュール415が画素アレイ410aから画像を読み出す時刻をタイムライン520に沿って表す。
1. Using VBI for Single Camera: Frame Rate Control FIG. 5 conceptually illustrates examples of different frame rates 505, 510 and 515 based on different VBIs. Each sequence shows an image of a person with a guitar at various times 525-555 along timeline 520, captured by one of the cameras of the dual camera portable device. Further, the time between the times 525 to 555 is the same, and is called one unit time. For purposes of explanation, FIG. 5 will now be described with respect to sensor module 415 and pixel array 410a of FIG. Accordingly, each image represents the time at which the sensor module 415 reads the image from the pixel array 410a along the time line 520.

例示的なフレームレート505では、画素アレイ410aのためのセンサモジュール415のVBIは、(例えば、コントローラモジュール475によって)3単位時間に設定される。すなわち、センサモジュール415は、タイムライン520に沿って3時刻ごとに画素アレイ410aから画像を読み出す。例示的なフレームレート505に示されるように、センサモジュール415は、時刻525、540、及び555に画像を読み出す。したがって、例示的なフレームレート505は、3単位時間ごとに1画像のフレームレートを有する。   At the exemplary frame rate 505, the VBI of the sensor module 415 for the pixel array 410a is set to 3 unit times (eg, by the controller module 475). That is, the sensor module 415 reads an image from the pixel array 410a every three times along the time line 520. As shown in the example frame rate 505, the sensor module 415 reads out images at times 525, 540, and 555. Thus, the exemplary frame rate 505 has a frame rate of one image every three unit times.

例示的なフレームレート510は、VBIが2単位時間に設定されることを除いて、例示的なフレームレート505と同様である。したがって、センサモジュール415は、タイムライン520に沿って2時刻ごとに画素アレイ410aから画像を読み出す。例示的なフレームレート510は、センサモジュール415が時刻525、535、545及び555に画素アレイ410aから画像を読み出すことを示す。例示的なフレームレート510のVBIは例示的なフレームレート505のVBIよりも小さいので、例示的なフレームレート510のフレームレートは例示的なフレームレート505のフレームレートよりも高い。   Exemplary frame rate 510 is similar to exemplary frame rate 505 except that the VBI is set to two unit times. Therefore, the sensor module 415 reads an image from the pixel array 410a every two times along the time line 520. The example frame rate 510 indicates that the sensor module 415 reads an image from the pixel array 410a at times 525, 535, 545, and 555. Since the VBI of example frame rate 510 is smaller than the VBI of example frame rate 505, the frame rate of example frame rate 510 is higher than the frame rate of example frame rate 505.

例示的なフレームレート515も、画素アレイ410aのためのセンサモジュール415のVBIが1単位時間に設定されることを除いて、例示的なフレームレート505と同様である。したがって、センサモジュール415は、タイムライン520に沿って1時刻ごとに画素アレイ410aから画像を読み出すように命令される。図示のように、センサモジュール415は、時刻525〜555に画素アレイ410aから画像を読み出す。例示的なフレームレート515のVBIは、例示的なフレームレート505及び510のVBIよりも小さい。したがって、例示的なフレームレート515のフレームレートは、例示的なフレームレート505及び510よりも高い。   The example frame rate 515 is similar to the example frame rate 505, except that the VBI of the sensor module 415 for the pixel array 410a is set to one unit time. Accordingly, the sensor module 415 is instructed to read an image from the pixel array 410a at each time along the timeline 520. As illustrated, the sensor module 415 reads an image from the pixel array 410a at times 525 to 555. The VBI at the example frame rate 515 is smaller than the VBI at the example frame rates 505 and 510. Accordingly, the frame rate of example frame rate 515 is higher than example frame rates 505 and 510.

2.2つのカメラのためのVBIの使用
一部の実施形態では、デュアルカメラ携帯デバイスの両方のカメラを同時に動作する(例えば、テレビ会議中に両方のカメラからビデオを伝送する)ことが望まれうる。単一の処理パイプラインを含むデュアルカメラ携帯デバイスの異なる実施形態は、デュアルカメラ携帯デバイスの両方のカメラを同時に動作するための異なる機構を提供する。
2. Use of VBI for Two Cameras In some embodiments, it is desirable to operate both cameras of a dual camera portable device simultaneously (eg, transmitting video from both cameras during a video conference). sell. Different embodiments of a dual camera portable device that include a single processing pipeline provide different mechanisms for operating both cameras of the dual camera portable device simultaneously.

このような1つの機構は、各カメラのVBIを制御することによって、両方のカメラにより取り込まれた画像の処理をインタリーブすることである。すなわち、一方のカメラによって取り込まれた1つ以上の画像が、他方のカメラのVBI中に取り込まれて処理され、一方のカメラのVBI中に、他方のカメラによって取り込まれた1つ以上の画像が取り込まれて処理される。上述のCIPU400は単一の処理パイプライン485を有するので、この機構は一部の実施形態のCIPU400で実施されうる。このような実施形態では、センサモジュール415は、画素アレイ410a及び410bのうちの1つから画像を読み出し、読み出された画像は、センサモジュール415の他の画素アレイのためのVBI中にCIPU400によって処理される。   One such mechanism is to interleave processing of the images captured by both cameras by controlling the VBI of each camera. That is, one or more images captured by one camera are captured and processed during the VBI of the other camera, and one or more images captured by the other camera are processed during the VBI of one camera. Captured and processed. Since the CIPU 400 described above has a single processing pipeline 485, this mechanism may be implemented in the CIPU 400 in some embodiments. In such an embodiment, sensor module 415 reads an image from one of pixel arrays 410a and 410b, and the read image is read by CIPU 400 during VBI for the other pixel arrays of sensor module 415. It is processed.

各画素アレイのためのセンサモジュール415のVBIは、特定の値に設定されうる。しかし、一部の実施形態では、VBIは、CIPU400が1つの画像を読み出して処理するのにかかる時間よりも小さな値に設定されない。一部の実施形態では、各画素アレイのためのセンサモジュール415のVBIは、同じ値に設定される。例えば、各画素アレイのためのセンサモジュール415のVBIが同じ値に設定される場合に、センサモジュール415は、画素アレイ410a及び410bから交互に画像を読み出す。他の実施形態では、各画素アレイのためのセンサモジュール415のVBIは、異なる値に設定される。このような実施形態のうちの一部では、一方の画素アレイのためのセンサモジュール415のVBIは、他方の画素アレイのためのセンサモジュール415のVBIの倍数に設定される。例えば、一方の画素アレイのためのセンサモジュール415のVBIは、2単位時間に設定され、他方の画素アレイのためのセンサモジュール415のVBIは4単位時間に設定される。この例では、センサモジュール415は、センサモジュール415が他方の画素アレイから1つの画像を読み出すごとに、一方の画素アレイから2つの画像を読み出す。   The VBI of the sensor module 415 for each pixel array can be set to a specific value. However, in some embodiments, the VBI is not set to a value less than the time it takes for the CIPU 400 to read and process one image. In some embodiments, the VBI of sensor module 415 for each pixel array is set to the same value. For example, when the VBI of the sensor module 415 for each pixel array is set to the same value, the sensor module 415 reads an image alternately from the pixel arrays 410a and 410b. In another embodiment, the VBI of the sensor module 415 for each pixel array is set to a different value. In some of such embodiments, the VBI of sensor module 415 for one pixel array is set to a multiple of the VBI of sensor module 415 for the other pixel array. For example, the VBI of the sensor module 415 for one pixel array is set to 2 unit times, and the VBI of the sensor module 415 for the other pixel array is set to 4 unit times. In this example, each time the sensor module 415 reads one image from the other pixel array, the sensor module 415 reads two images from one pixel array.

図6は、異なるVBIに基づいた異なるインタリーブフレームレート605、610及び615の例を概念的に示す。図6がタイムライン620に沿って13の時刻625〜685を含むことを除いて、図6は図5と同様である。さらに、ギターを持つ人の画像は、タイムライン620に沿って、画像が一方の画素アレイから読み出される時刻を表すが、大学帽(すなわち、角帽)をかぶった人の画像は、タイムライン620に沿って、他方の画素アレイから画像が読み出される時刻を表す。   FIG. 6 conceptually illustrates examples of different interleaved frame rates 605, 610, and 615 based on different VBIs. FIG. 6 is similar to FIG. 5, except that FIG. 6 includes thirteen times 625-685 along timeline 620. Further, the image of the person with the guitar represents the time at which the image is read from one of the pixel arrays along the timeline 620, while the image of the person wearing the college cap (ie, the mortarboard) is shown on the timeline 620. Along with the time when the image is read from the other pixel array.

説明のために、ギターを持つ人の画像はデュアルカメラ携帯デバイスのカメラセンサ405aによって取り込まれたものと想定し、大学帽をかぶった人の画像は、デュアルカメラ携帯デバイスのカメラセンサ405bによって取り込まれたものと想定する。さらに、ここで図6について、図4のセンサモジュール415及び画素アレイ410a及び410bに関して説明する。   For purposes of illustration, it is assumed that the image of the person with the guitar was captured by the camera sensor 405a of the dual camera mobile device, and the image of the person wearing the college cap was captured by the camera sensor 405b of the dual camera mobile device. It is assumed that 6 will now be described with respect to the sensor module 415 and the pixel arrays 410a and 410b of FIG.

例示的なインタリーブフレームレート605では、画素アレイ410a及び画素アレイ410bの両方に対するセンサモジュール415のVBIは、2単位時間に設定される。例示的なインタリーブフレームレート605に示されるように、センサモジュール415は、タイムライン620に沿って時刻625、635、645、655、665、675及び685に画素アレイ410aから画像を読み出し、センサモジュール415は、タイムライン620に沿って時刻630、640、650、660、670及び680に画素アレイ410bから画像を読み出す。すなわち、センサモジュール415は、単位時間ごとに画素アレイから交互に画像を読み出す。   At the exemplary interleaved frame rate 605, the VBI of the sensor module 415 for both pixel array 410a and pixel array 410b is set to two unit times. As shown in the example interleave frame rate 605, the sensor module 415 reads an image from the pixel array 410a along the timeline 620 at times 625, 635, 645, 655, 665, 675, and 685, and Reads an image from the pixel array 410b along the timeline 620 at times 630, 640, 650, 660, 670, and 680. That is, the sensor module 415 alternately reads an image from the pixel array every unit time.

画素アレイ410a及び画素アレイ410bの両方に対するセンサモジュール415のVBIが4単位時間に設定されることを除いて、例示的なインタリーブフレームレート610は例示的なインタリーブフレームレート605と同様である。例示的なインタリーブフレームレート610は、センサモジュール415がタイムライン620に沿って時刻625、645、665及び685に画素アレイ410aから画像を読み出し、センサモジュール415がタイムライン620に沿って時刻635、655及び675に画素アレイ410bから画像を読み出すことを示す。例示的なインタリーブフレームレート610のVBIは例示的なインタリーブフレームレート605のVBIよりも高いので、例示的なインタリーブフレームレート610のフレームレートは例示的なインタリーブフレームレート605のフレームレートよりも小さい。   Exemplary interleave frame rate 610 is similar to exemplary interleave frame rate 605, except that the VBI of sensor module 415 for both pixel array 410a and pixel array 410b is set to 4 unit times. The exemplary interleaved frame rate 610 is such that the sensor module 415 reads an image from the pixel array 410a along the timeline 620 at times 625, 645, 665, and 685, and the sensor module 415 determines the times 635, 655 along the timeline 620. And 675 indicate that an image is read from the pixel array 410b. The exemplary interleaved frame rate 610 has a higher VBI than the exemplary interleaved frame rate 605 VBI, so the exemplary interleaved frame rate 610 has a lower frame rate than the exemplary interleaved frame rate 605.

例示的なインタリーブフレームレート615も、画素アレイ410a及び画素アレイ410bの両方に対するセンサモジュール415のVBIが6単位時間に設定されることを除いて、例示的なインタリーブフレームレート605と同様である。図6に示すように、センサモジュール415は、タイムライン620に沿って時刻625、655及び685に画素アレイ410aから画像を読み出し、センサモジュール415は、タイムライン620に沿って時刻640及び670に画素アレイ410bから画像を読み出す。例示的なインタリーブフレームレート615のVBIは、例示的なインタリーブフレームレート605及び610のVBIよりも大きい。したがって、例示的なインタリーブフレームレート615のフレームレートは、例示的なインタリーブフレームレート605及び610よりも小さい。   The exemplary interleave frame rate 615 is also similar to the exemplary interleave frame rate 605, except that the VBI of the sensor module 415 for both pixel array 410a and pixel array 410b is set to 6 unit times. As shown in FIG. 6, the sensor module 415 reads an image from the pixel array 410a at times 625, 655, and 685 along the timeline 620, and the sensor module 415 reads pixels at times 640 and 670 along the timeline 620. Read an image from array 410b. The VBI of exemplary interleave frame rates 615 is greater than the VBI of exemplary interleave frame rates 605 and 610. Accordingly, the frame rate of the exemplary interleaved frame rate 615 is less than the exemplary interleaved frame rates 605 and 610.

B.複数のパイプライン
図7は、一部の実施形態の取り込み済画像処理ユニット(CIPU)700を概念的に示す。CIPU700が単一の処理パイプラインの代わりに2つのフロントエンド処理パイプライン、記憶装置及びバックエンド処理パイプラインによって実装されることを除いて、CIPU700は上述のCIPU400と同じ機能を実行する。したがって、CIPU700の機能の説明について、CIPU400のモジュールを参照して説明する。
B. Multiple Pipelines FIG. 7 conceptually illustrates a captured image processing unit (CIPU) 700 in some embodiments. CIPU 700 performs the same functions as CIPU 400 described above, except that CIPU 700 is implemented by two front-end processing pipelines, storage and back-end processing pipelines instead of a single processing pipeline. Therefore, the description of the function of CIPU 700 will be described with reference to the module of CIPU 400.

図示のように、CIPU700は、カメラセンサ405a及び画素アレイ410aのためのフロントエンド処理パイプライン715と、カメラセンサ405b及び画素アレイ410bのためのフロントエンド処理パイプライン720と、記憶装置725と、コントローラモジュール730と、バックエンド処理パイプライン735とを含む。一部の実施形態のカメラセンサ405a及び405bは、デュアルカメラ携帯デバイスのカメラのセンサである。   As shown, CIPU 700 includes a front-end processing pipeline 715 for camera sensor 405a and pixel array 410a, a front-end processing pipeline 720 for camera sensor 405b and pixel array 410b, a storage device 725, and a controller 725. It includes a module 730 and a back-end processing pipeline 735. In some embodiments, camera sensors 405a and 405b are sensors of a camera of a dual camera portable device.

一部の実施形態のフロントエンド処理パイプライン715及び720は、CIPU400の画像処理の一部分を実行する。したがって、異なる実施形態は、CIPU400の異なる数のモジュールを含むことができる。例えば、一部の実施形態のフロントエンド処理パイプライン715及び720のそれぞれは、CIPU400のセンサモジュール415と、BPCモジュール420と、LSモジュール425と、デモザイキングモジュール430と、WBモジュール435と、統計エンジン465とを含む。   The front-end processing pipelines 715 and 720 in some embodiments perform a portion of the image processing of the CIPU 400. Thus, different embodiments may include different numbers of modules of CIPU 400. For example, each of the front-end processing pipelines 715 and 720 of some embodiments includes a CIPU 400 sensor module 415, a BPC module 420, an LS module 425, a demosaicing module 430, a WB module 435, and a statistics engine. 465.

フロントエンド処理パイプライン715及び720は、同じモジュールを有することによって同じタイプの画像処理を実行するが、フロントエンド処理パイプライン715及び720のそれぞれの各モジュールは、CIPU400に関して上述したように、異なるレジスタ値によって異なるように構成されうる。さらに、カメラセンサ405a及び405bのそれぞれがそれ自体のフロントエンド処理パイプラインを有するので、フロントエンド処理パイプライン715及び720は、互いと無関係に画像を処理できる。例えば、フロントエンド処理パイプライン715及び720は、異なる時間に異なる速度で並列に(すなわち、同時に)画像を処理できる。   The front-end processing pipelines 715 and 720 perform the same type of image processing by having the same modules, but each module of the front-end processing pipelines 715 and 720 has different registers as described above with respect to CIPU 400. It can be configured differently depending on the value. Further, since each of the camera sensors 405a and 405b has its own front-end processing pipeline, the front-end processing pipelines 715 and 720 can process images independently of each other. For example, front-end processing pipelines 715 and 720 can process images in parallel (ie, simultaneously) at different times and at different speeds.

一部の実施形態では、フロントエンド処理パイプライン715及び720のそれぞれは、その対応するカメラセンサ及び画素アレイから画像を読み出せる。例えば、フロントエンド処理パイプライン715は、カメラセンサ405aによって取り込まれた画像を画素アレイ410aから読み出し、フロントエンド処理パイプライン720は、カメラセンサ405bによって取り込まれた画像を画素アレイ410bから受け取る。フロントエンド処理パイプライン715及び720のうちの1つが画像をその対応するカメラセンサ及び画素アレイから読み出す場合に、当該フロントエンド処理パイプラインは、画像を処理し、処理された画像を記憶装置725に送る。同様に、フロントエンド処理パイプライン715及び720のそれぞれは、上述のように(例えば、各フロントエンド処理パイプラインの統計エンジンを通じて)コントローラモジュール730と通信する。   In some embodiments, each of the front-end processing pipelines 715 and 720 can read an image from its corresponding camera sensor and pixel array. For example, front-end processing pipeline 715 reads an image captured by camera sensor 405a from pixel array 410a, and front-end processing pipeline 720 receives an image captured by camera sensor 405b from pixel array 410b. When one of the front-end processing pipelines 715 and 720 reads an image from its corresponding camera sensor and pixel array, the front-end processing pipeline processes the image and stores the processed image in storage 725. send. Similarly, each of the front-end processing pipelines 715 and 720 communicate with the controller module 730 as described above (eg, through the statistics engine of each front-end processing pipeline).

一部の実施形態の記憶装置725は、バックエンド処理パイプライン735が処理を完了させるために、部分的に処理された画像を格納する。これらの実施形態では、記憶装置725は、部分的に処理された画像をフロントエンド処理パイプライン715及び720から受け取り、この部分的に処理された画像をバックエンド処理パイプライン735に送る。一部の実施形態では、記憶装置725が揮発性記憶装置(例えば、ランダムアクセスメモリ(RAM))として実施されるが、他の実施形態では、記憶装置725が不揮発性記憶装置(例えば、フラッシュメモリ、ハードディスク、光ディスクなど)として実施される。さらに、一部の実施形態の記憶装置725は、内部記憶装置(例えば、RAM)であるが、他の実施形態の記憶装置725は、外部記憶装置(例えば、コンパクトフラッシュ(登録商標)(CF)カード、セキュアデジタル(SD)カードなど)である。   The storage 725 of some embodiments stores the partially processed images for the back-end processing pipeline 735 to complete processing. In these embodiments, storage 725 receives the partially processed images from front-end processing pipelines 715 and 720 and sends the partially processed images to back-end processing pipeline 735. In some embodiments, storage 725 is implemented as volatile storage (eg, random access memory (RAM)), while in other embodiments, storage 725 is non-volatile (eg, flash memory). , Hard disk, optical disk, etc.). Further, the storage device 725 of some embodiments is an internal storage device (for example, a RAM), whereas the storage device 725 of another embodiment is an external storage device (for example, a compact flash (registered trademark) (CF)). Card, secure digital (SD) card, etc.).

バックエンド処理パイプライン735の一部の実施形態は、CIPU700の画像処理の一部分を実行する。一部の実施形態では、バックエンド処理パイプライン735は、フロントエンド処理パイプライン715及び720が含まないCIPU400のモジュールを含む。例えば、上記の例を参照すると、バックエンド処理パイプライン735は、CIPU400のCSCモジュール445と、ガンマモジュール440と、HSCモジュール450と、スケーラモジュール455と、フィルタモジュール460とを含むだろう。したがって、このような実施形態のバックエンド処理パイプライン735は、フロントエンド処理パイプライン715及び720が実行しないCIPU400の残りの画像処理を実行する。したがって、バックエンド処理パイプライン735は、記憶装置725から部分的に処理された画像を読み出し、部分的に処理された画像に関する残りの画像処理を実行する。画像を処理した後、バックエンド処理パイプライン735は、処理された画像をCIPUドライバ480に送る。   Some embodiments of the back-end processing pipeline 735 perform part of the image processing of the CIPU 700. In some embodiments, back-end processing pipeline 735 includes modules of CIPU 400 that do not include front-end processing pipelines 715 and 720. For example, referring to the above example, back-end processing pipeline 735 would include CSC module 445, gamma module 440, HSC module 450, scaler module 455, and filter module 460 of CIPU 400. Therefore, the back-end processing pipeline 735 of such an embodiment performs the remaining image processing of the CIPU 400 that is not performed by the front-end processing pipelines 715 and 720. Accordingly, the back-end processing pipeline 735 reads the partially processed image from the storage device 725 and performs the remaining image processing on the partially processed image. After processing the image, the back-end processing pipeline 735 sends the processed image to the CIPU driver 480.

コントローラモジュール730は、図4に関して上述した同じ機能を実行する。図7に示すように、コントローラモジュール730は、フロントエンド処理パイプライン715及び720並びにバックエンド処理パイプライン735と対話する。一部の実施形態では、コントローラモジュール730は、バックエンド処理パイプライン735に含まれるが、他の実施形態では、コントローラモジュール730は、フロントエンド処理パイプライン715及び720のうちの1つに含まれる。   Controller module 730 performs the same functions described above with respect to FIG. As shown in FIG. 7, controller module 730 interacts with front-end processing pipelines 715 and 720 and back-end processing pipeline 735. In some embodiments, controller module 730 is included in back-end processing pipeline 735, while in other embodiments, controller module 730 is included in one of front-end processing pipelines 715 and 720. .

ここで、CIPU700の動作について、図7に示されるカメラセンサ405a及び405b、画素アレイ410a及び410b、フロントエンド処理パイプライン715及び720、記憶装置725並びにバックエンド処理パイプライン735に関して説明する。フロントエンド処理パイプライン715及び720のうちの1つが画像をその対応するカメラセンサ及び画素アレイから読み出す場合に、そのフロントエンド処理パイプラインは、画像を処理し、部分的に処理された画像を記憶装置725に送る。例えば、フロントエンド処理パイプライン715は、カメラセンサ405aによって取り込まれた画像を画素アレイ410aから読み出してもよいし、又はフロントエンド処理パイプライン720は、カメラセンサ405bによって取り込まれた画像を画素アレイ410bから読み出してもよい。前述のように、各フロントエンド処理パイプライン715及び720は、画像を並列に処理できる。   Here, the operation of the CIPU 700 will be described with respect to the camera sensors 405a and 405b, the pixel arrays 410a and 410b, the front-end processing pipelines 715 and 720, the storage device 725, and the back-end processing pipeline 735 shown in FIG. When one of the front-end processing pipelines 715 and 720 reads an image from its corresponding camera sensor and pixel array, that front-end processing pipeline processes the image and stores the partially processed image. Send to device 725. For example, front-end processing pipeline 715 may read images captured by camera sensor 405a from pixel array 410a, or front-end processing pipeline 720 may store images captured by camera sensor 405b in pixel array 410b. May be read. As described above, each front-end processing pipeline 715 and 720 can process images in parallel.

バックエンド処理パイプライン735は、部分的に処理された画像を記憶装置725から読み出し、この部分的に処理された画像を処理して、画像の画像処理を完了させる。一部の実施形態では、バックエンド処理パイプライン735は、記憶装置725に格納された画像を先入れ先出し方式で読み出して処理する。言い換えれば、記憶装置725内の特定の画像は、特定の画像の前に受け取られて記憶装置725に格納されたすべての画像の後に処理されるが、この特定の画像は、特定の画像の後に受け取られて記憶装置725に格納された画像の前に処理される。バックエンド処理パイプライン735は、画像を処理した後、処理された画像をCIPUドライバ480に送る。   Back-end processing pipeline 735 reads the partially processed image from storage 725 and processes the partially processed image to complete image processing of the image. In some embodiments, the back-end processing pipeline 735 reads and processes images stored in the storage device 725 on a first-in, first-out basis. In other words, a particular image in storage device 725 is processed after all images received before and stored in storage device 725, but this particular image is processed after the particular image. It is processed before the images received and stored in the storage device 725. After processing the image, the back-end processing pipeline 735 sends the processed image to the CIPU driver 480.

図8は、一部の実施形態の別の取り込み済画像処理ユニット(CIPU)800を概念的に示す。CIPU800は、2つの別個の処理パイプラインによってCIPU800が実施され、各カメラセンサがそれ自体の別個の処理パイプラインを有することを除いて、上述のCIPU400と同じ機能を実行する。したがって、CIPU800の機能の説明について、CIPU400のモジュールを参照して説明する。   FIG. 8 conceptually illustrates another captured image processing unit (CIPU) 800 of some embodiments. CIPU 800 performs the same functions as CIPU 400 described above, except that CIPU 800 is implemented by two separate processing pipelines and each camera sensor has its own separate processing pipeline. Therefore, the function of CIPU 800 will be described with reference to the module of CIPU 400.

図示のように、CIPU800は、カメラセンサ405a及び画素アレイ410aのための処理パイプライン815と、カメラセンサ405b及び画素アレイ410bのための処理パイプライン820とを含む。一部の実施形態の処理パイプライン815及び820のそれぞれは、CIPU400に含まれるすべてのモジュールを含む。したがって、これらの実施形態の処理パイプライン815及び820のそれぞれの動作は、CIPU400の動作と同じである。   As shown, CIPU 800 includes a processing pipeline 815 for camera sensor 405a and pixel array 410a, and a processing pipeline 820 for camera sensor 405b and pixel array 410b. Each of the processing pipelines 815 and 820 of some embodiments includes all modules included in the CIPU 400. Therefore, the operation of each of the processing pipelines 815 and 820 of these embodiments is the same as the operation of the CIPU 400.

カメラセンサ405a及び405bのそれぞれがそれ自体の処理パイプラインを有するので、処理パイプライン815及び820は、互いと無関係に画像を処理できる。例えば、処理パイプライン815及び820は、異なる時間に異なる速度で並列に(すなわち、同時に)画像を処理できる。さらに、一部の実施形態の処理パイプライン815及び820のそれぞれは、CIPU400を参照して上述したように、異なるレジスタ値を通じて異なるように構成されうる。   Since each of the camera sensors 405a and 405b has its own processing pipeline, the processing pipelines 815 and 820 can process images independently of each other. For example, processing pipelines 815 and 820 can process images in parallel (ie, simultaneously) at different times and at different speeds. Further, each of the processing pipelines 815 and 820 of some embodiments may be configured differently through different register values, as described above with reference to CIPU 400.

一部の実施形態では、CIPU400のいくつかのモジュールは、モジュールの動作のうちの一部又は全部を実行するための1つ以上のライン/フレームバッファを含む。例えば、一部の実施形態のフィルタ処理モジュール460は、3×3のローパスフィルタを実行するために実施される。このような実施形態では、3×3のローパスフィルタは、3つの連続するラインの中央のラインに3×3のローパスフィルタを適用するように、画像内の3つの連続するラインを処理する。したがって、このような実施形態のフィルタ処理モジュール460は、3×3のローパスフィルタを実行するために少なくとも3つのライン/フレームバッファを必要とする。CIPU400の他のモジュールも、例えば、BPCモジュール420及びLSモジュール425のような1つ以上のライン/フレームバッファを含む。   In some embodiments, some modules of CIPU 400 include one or more line / frame buffers to perform some or all of the operations of the modules. For example, the filtering module 460 of some embodiments is implemented to perform a 3x3 low pass filter. In such an embodiment, the 3x3 low-pass filter processes three consecutive lines in the image such that a 3x3 low-pass filter is applied to the center line of the three consecutive lines. Thus, the filtering module 460 of such an embodiment requires at least three line / frame buffers to perform a 3x3 low pass filter. Other modules of CIPU 400 also include one or more line / frame buffers, such as, for example, BPC module 420 and LS module 425.

CIPU800の処理パイプラインはそれぞれ、その対応するカメラの特性に合わせて画像処理をカスタマイズするために、異なるライン/フレームバッファサイズを有しうる。例えば、デュアルカメラ携帯デバイスの一方のカメラが2048×1500画素センサを有するならば、2048×1500画素センサの処理パイプラインは、2048画素幅であるライン/フレームバッファを含むことができる。同様に、デュアルカメラ携帯デバイスの他方のカメラが640×480画素センサを有するならば、640×480画素センサの処理パイプラインは、640画素幅であるライン/フレームバッファを含むことができる。すなわち、1つの処理パイプラインのモジュールに含まれるライン/フレームバッファのサイズは、別の処理パイプラインのモジュールに含まれるライン/フレームバッファのサイズとは異なってもよい。   Each of the processing pipelines of CIPU 800 may have different line / frame buffer sizes to customize the image processing to the characteristics of its corresponding camera. For example, if one camera of a dual camera portable device has a 2048 × 1500 pixel sensor, the processing pipeline of the 2048 × 1500 pixel sensor can include a line / frame buffer that is 2048 pixels wide. Similarly, if the other camera of the dual camera portable device has a 640x480 pixel sensor, the processing pipeline of the 640x480 pixel sensor can include a line / frame buffer that is 640 pixels wide. That is, the size of a line / frame buffer included in a module of one processing pipeline may be different from the size of a line / frame buffer included in a module of another processing pipeline.

III.テレビ会議
A.テレビ会議アーキテクチャ
図9は、一部の実施形態のデュアルカメラ携帯デバイスのテレビ会議及び処理モジュール900のためのソフトウェアアーキテクチャを概念的に示す。テレビ会議及び処理モジュール900は、図3に関して上述した対応するモジュール及びドライバ305、310及び320と同様であるCIPUドライバ905と、メディア交換モジュール910と、エンコーダドライバ920とを含む。テレビ会議及び処理モジュール900は、テレビ会議モジュール925と、テレビ会議クライアント945と、さまざまなテレビ会議機能を実行するためのネットワークインタフェース950とも含む。ビデオ処理及び符号化モジュール300のように、テレビ会議及び処理モジュール900は、デュアルカメラ携帯デバイスのカメラから取り込まれた画像を処理して符号化する。
III. Video Conference A. Video Conferencing Architecture FIG. 9 conceptually illustrates a software architecture for a video conferencing and processing module 900 of a dual camera portable device of some embodiments. Video conferencing and processing module 900 includes a CIPU driver 905, which is similar to corresponding modules and drivers 305, 310 and 320 described above with respect to FIG. 3, a media exchange module 910, and an encoder driver 920. The video conferencing and processing module 900 also includes a video conferencing module 925, a video conferencing client 945, and a network interface 950 for performing various video conferencing functions. Like the video processing and encoding module 300, the video conferencing and processing module 900 processes and encodes the images captured from the cameras of the dual camera portable device.

図3に関して上述したように、メディア交換モジュール910を使用することによって、デバイス内のメディアコンテンツの消費者及び製作者は、メディアコンテンツの処理に関するメディアコンテンツ及び命令を交換し、CIPUドライバ905は、取り込み済画像処理ユニット(CIPU)955との通信インタフェースとして機能し、エンコーダドライバ920は、エンコーダハードウェア960(例えば、エンコーダチップ、システムオンチップ上の符号化コンポーネントなど)との通信インタフェースとして機能する。   As described above with respect to FIG. 3, by using the media exchange module 910, consumers and producers of the media content in the device exchange media content and instructions for processing the media content, and the CIPU driver 905 allows the The encoder driver 920 functions as a communication interface with the processed image processing unit (CIPU) 955, and functions as a communication interface with the encoder hardware 960 (for example, an encoder chip, an encoding component on a system-on-chip, and the like).

一部の実施形態のテレビ会議モジュール925は、画像処理、テレビ会議管理及びネットワーキングなどの種々のテレビ会議機能を扱う。図示のように、テレビ会議モジュール925は、メディア交換モジュール910、テレビ会議クライアント945及びネットワークインタフェース950と対話する。一部の実施形態では、テレビ会議モジュール925は、テレビ会議クライアント945から命令を受け取り、テレビ会議クライアント945に命令を送る。一部の実施形態のテレビ会議モジュール925はまた、ネットワークインタフェース950を通じて、ネットワーク(例えば、ローカルエリアネットワーク(LAN)、無線ローカルエリアネットワーク(WLAN)、ワイドエリアネットワーク(WAN)、ネットワークのネットワーク、符号分割多元接続(CDMA)ネットワーク、GSM(登録商標)ネットワークなど)にデータを送信し、ネットワークからデータを受信する。   The video conferencing module 925 of some embodiments handles various video conferencing functions, such as image processing, video conferencing management, and networking. As shown, video conferencing module 925 interacts with media exchange module 910, video conferencing client 945, and network interface 950. In some embodiments, video conferencing module 925 receives instructions from and sends instructions to video conferencing client 945. In some embodiments, the video conferencing module 925 may also connect to a network (eg, a local area network (LAN), a wireless local area network (WLAN), a wide area network (WAN), a network of networks, a code division Transmit data to and receive data from multiple access (CDMA) networks, GSM networks, etc.).

テレビ会議モジュール925は、画像処理層930と、管理層935と、ネットワーク層940とを含む。一部の実施形態では、画像処理層930は、テレビ会議の画像に関する画像処理動作を実行する。例えば、一部の実施形態の画像処理層930は、以下でさらに詳細に説明するように、露出調整、画像サイズ変更、パースペクティブ補正及びダイナミックレンジ調整を実行する。一部の実施形態の画像処理層930は、メディア交換モジュール910を通じて、CIPU955からの画像の要求を送信する。   The video conference module 925 includes an image processing layer 930, a management layer 935, and a network layer 940. In some embodiments, the image processing layer 930 performs image processing operations on images of the video conference. For example, the image processing layer 930 of some embodiments performs exposure adjustment, image resizing, perspective correction, and dynamic range adjustment, as described in more detail below. The image processing layer 930 of some embodiments sends a request for an image from the CIPU 955 through the media exchange module 910.

一部の実施形態の管理層935は、テレビ会議モジュール925の動作を制御する。例えば、一部の実施形態では、管理層935は、デュアルカメラ携帯デバイスの1つのカメラ/複数のカメラを初期化し、リモートデバイスに伝送するために画像及びオーディオを処理し、リモートデバイスから受け取った画像及びオーディオを処理する。一部の実施形態では、管理層935は、デバイスのための合成(例えば、PIP)表示を生成する。さらに、管理層935は、ネットワーク層940から受け取ったネットワーキング報告に基づいて、テレビ会議モジュール925の動作を変更してもよい。   The management layer 935 of some embodiments controls the operation of the video conferencing module 925. For example, in some embodiments, management layer 935 initializes one camera / multiple cameras of a dual camera portable device, processes images and audio for transmission to a remote device, and receives images from the remote device. And process audio. In some embodiments, management layer 935 generates a composite (eg, PIP) display for the device. Further, management layer 935 may change the operation of video conference module 925 based on the networking report received from network layer 940.

一部の実施形態では、ネットワーク層940は、テレビ会議のためのネットワーキング機能のうちの一部又は全部を実行する。例えば、一部の実施形態のネットワーク層940は、以下で説明するように、いくつかの機能の中でも特に、テレビ会議のデュアルカメラ携帯デバイスとリモートデバイスとの間のネットワーク接続(不図示)を確立し、リモートデバイスに画像を伝送し、リモートデバイスから画像を受信する。さらに、ネットワーク層940は、いくつかのタイプのデータの中でも特に、パケット損失、片道レイテンシ(one-way latency)及びラウンドトリップ遅延時間などのネットワーキングデータを受信し、このようなデータを処理し、このデータを管理層935に報告する。   In some embodiments, network layer 940 performs some or all of the networking functions for video conferencing. For example, the network layer 940 of some embodiments establishes a network connection (not shown) between a video conference dual camera portable device and a remote device, among other functions, as described below. Transmitting the image to the remote device and receiving the image from the remote device. In addition, the network layer 940 receives and processes networking data, such as packet loss, one-way latency, and round-trip latency, among other types of data, and processes such data. The data is reported to the management layer 935.

一部の実施形態のテレビ会議クライアント945は、テレビ会議アプリケーション、ボイスオーバーIP(VOIP)アプリケーション(例えば、スカイプ)又はインスタントメッセージングアプリケーションなどのテレビ会議モジュール925のテレビ会議機能を使用してもよいアプリケーションである。一部の実施形態では、テレビ会議クライアント945はスタンドアロンアプリケーションであるが、他の実施形態では、テレビ会議クライアント945は別のアプリケーションに統合される。   The video conferencing client 945 in some embodiments is an application that may use the video conferencing features of the video conferencing module 925, such as a video conferencing application, a voice over IP (VOIP) application (eg, Skype), or an instant messaging application. is there. In some embodiments, video conference client 945 is a stand-alone application, while in other embodiments, video conference client 945 is integrated into another application.

一部の実施形態では、ネットワークインタフェース950は、テレビ会議モジュール925及びテレビ会議クライアント945がネットワークインタフェース950を通じてネットワーク(例えば、セルラーネットワーク、ローカルエリアネットワーク、無線ネットワーク、ネットワークのネットワーク、インターネットなど)を介してデータを送信しデータを受信できるようにする通信インタフェースである。例えば、テレビ会議モジュール925がデータ(例えば、デュアルカメラ携帯デバイスのカメラによって取り込まれた画像)をインターネット上で別のデバイスに送信することを望むならば、テレビ会議モジュール925は、ネットワークインタフェース950を通じて他のデバイスに画像を送信する。   In some embodiments, the network interface 950 is configured such that the video conferencing module 925 and the video conferencing client 945 are connected via a network (eg, a cellular network, a local area network, a wireless network, a network of networks, the Internet, etc.) through the network interface 950. A communication interface for transmitting data and receiving data. For example, if video conferencing module 925 desires to transmit data (eg, images captured by a camera of a dual camera portable device) to another device over the Internet, video conferencing module 925 may transmit data to other devices via network interface 950. Send images to other devices.

B.テレビ会議のセットアップ
図10は、一部の実施形態の例示的なテレビ会議要求メッセージシーケンス1000を概念的に示す。この図は、デバイス1005上で実行されるテレビ会議クライアント1010、テレビ会議サーバ1015、及びデバイス1020上で実行されるテレビ会議クライアント1025の間のテレビ会議要求メッセージシーケンス1000を示す。一部の実施形態では、テレビ会議クライアント1010及び1025は、図9に示されるテレビ会議クライアント945と同じである。図10に示すように、1つのデバイス(すなわち、デバイス1005)がテレビ会議を要求し、別のデバイス(すなわち、デバイス1020)がこのような要求に応答する。本出願で説明するデュアルカメラ携帯デバイスは、両方の動作を実行する(すなわち、要求を行い、要求に応答する)ことができる。
B. Video Conference Setup FIG. 10 conceptually illustrates an exemplary video conference request message sequence 1000 of some embodiments. The figure shows a video conference request message sequence 1000 between a video conference client 1010 running on device 1005, a video conference server 1015, and a video conference client 1025 running on device 1020. In some embodiments, video conference clients 1010 and 1025 are the same as video conference client 945 shown in FIG. As shown in FIG. 10, one device (ie, device 1005) requests a video conference and another device (ie, device 1020) responds to such a request. The dual camera portable device described in the present application can perform both operations (ie, make a request and respond to the request).

一部の実施形態のテレビ会議サーバ1015は、複数のテレビ会議クライアントの間でメッセージを経路制御する。一部の実施形態では、1つのコンピューティングデバイス上でテレビ会議サーバ1015を実施するが、他の実施形態では、複数のコンピューティングデバイス上でテレビ会議サーバ1015を実施する。一部の実施形態では、テレビ会議サーバは、一度に多数の会議のためのメッセージを扱って経路制御できる公にアクセス可能なサーバである。一部の実施形態のテレビ会議クライアント1010及び1025のそれぞれは、上述のネットワークインタフェース950などのネットワークインタフェースを通じてネットワーク(例えば、セルラーネットワーク、ローカルエリアネットワーク、無線ネットワーク、ネットワークのネットワーク、インターネットなど)を介してテレビ会議サーバ1015と通信する。   In some embodiments, the video conference server 1015 routes messages between multiple video conference clients. In some embodiments, videoconferencing server 1015 is implemented on one computing device, while in other embodiments, videoconferencing server 1015 is implemented on multiple computing devices. In some embodiments, the video conferencing server is a publicly accessible server that can handle and route messages for many conferences at once. Each of the video conferencing clients 1010 and 1025 of some embodiments is connected via a network (eg, a cellular network, a local area network, a wireless network, a network of networks, the Internet, etc.) through a network interface such as the network interface 950 described above. It communicates with the video conference server 1015.

一部の実施形態のテレビ会議要求メッセージシーケンス1000は、テレビ会議クライアント1010が、デバイス1020とのテレビ会議開始要求をデバイス1005のユーザから(動作1で)受信した場合に開始する。一部の実施形態のテレビ会議クライアント1010は、デバイス1005のユーザがデバイス1005に表示されるユーザインタフェースのユーザインタフェース(UI)項目を選択した場合に、テレビ会議開始要求を受信する。このようなユーザインタフェースの例は、以下で説明する図11から図14に示される。   The video conference request message sequence 1000 of some embodiments starts when the video conference client 1010 receives a request to start a video conference with the device 1020 from the user of the device 1005 (operation 1). The video conference client 1010 of some embodiments receives a video conference start request when a user of the device 1005 selects a user interface (UI) item of a user interface displayed on the device 1005. Examples of such a user interface are shown in FIGS. 11 to 14 described below.

テレビ会議クライアント1010が要求を受信した後、テレビ会議クライアント1010は、ユーザからの入力に基づいてデバイス1020を受信者として示すテレビ会議要求をテレビ会議サーバ1015に(動作2で)送信する。テレビ会議サーバ1015は、テレビ会議要求をデバイス1020のテレビ会議クライアント1025に(動作3で)転送する。一部の実施形態では、テレビ会議サーバ1015は、テレビ会議要求をテレビ会議クライアント1025にプッシュ技術を使用して転送する。すなわち、テレビ会議サーバ1015は、クライアント1025が何らかのメッセージ要求を送信するのを待つのではなく、テレビ会議クライアント1010から受信すると、テレビ会議クライアント1025へのテレビ会議要求の伝送を始める。   After the video conference client 1010 receives the request, the video conference client 1010 sends (in operation 2) a video conference request indicating the device 1020 as a recipient based on input from the user. Video conference server 1015 forwards the video conference request to video conference client 1025 of device 1020 (operation 3). In some embodiments, video conference server 1015 forwards the video conference request to video conference client 1025 using push technology. That is, instead of waiting for the client 1025 to send some message request, the video conference server 1015 starts transmitting the video conference request to the video conference client 1025 upon receiving from the video conference client 1010.

一部の実施形態のテレビ会議クライアント1025がテレビ会議要求を受信した場合に、デバイス1005のユーザがテレビ会議開始要求を送信したことをデバイス1020のユーザに示し、テレビ会議要求を承諾するか又は拒否するかをデバイス1020のユーザに確認するために、ユーザインタフェースがデバイス1020に表示される。このようなユーザインタフェースの一例が、以下で説明する図12に示されている。一部の実施形態では、テレビ会議クライアント1025がテレビ会議要求承諾要求をデバイス1005のユーザから(動作4で)受信した場合に、テレビ会議クライアント1025は、テレビ会議サーバ1015にテレビ会議承諾を(動作5で)送信する。一部の実施形態のテレビ会議クライアント1025は、例えば、デバイス1020のユーザが、図12に示されるユーザインタフェースのユーザインタフェース項目を選択した場合に、テレビ会議要求承諾要求を受信する。   If video conference client 1025 of some embodiments receives the video conference request, it indicates to the user of device 1020 that the user of device 1005 has transmitted the video conference start request and accepts or rejects the video conference request. A user interface is displayed on the device 1020 to confirm with the user of the device 1020 what to do. An example of such a user interface is shown in FIG. 12 described below. In some embodiments, if videoconferencing client 1025 receives a videoconferencing request acceptance request from the user of device 1005 (at operation 4), videoconferencing client 1025 may request videoconferencing consent from videoconferencing server 1015 (operation 4). 5) Send. Video conference client 1025 of some embodiments receives a video conference request acceptance request, for example, when the user of device 1020 selects a user interface item of the user interface shown in FIG.

テレビ会議サーバ1015がテレビ会議承諾をテレビ会議クライアント1025から受信した後、テレビ会議サーバ1015は、テレビ会議クライアント1010にテレビ会議承諾を(動作6で)転送する。テレビ会議サーバ1015の一部の実施形態は、上述のようにプッシュ技術を使用してテレビ会議クライアント1010にテレビ会議承諾を転送する。   After the video conference server 1015 receives the video conference agreement from the video conference client 1025, the video conference server 1015 forwards the video conference agreement to the video conference client 1010 (operation 6). Some embodiments of the video conferencing server 1015 transfer video consent to the video conferencing client 1010 using push technology as described above.

テレビ会議承諾を受信すると、一部の実施形態では、デバイス1005とデバイス1020の間にテレビ会議を(動作7で)確立する。異なる実施形態では、テレビ会議を異なるように確立する。例えば、一部の実施形態のテレビ会議確立は、デバイス1005とデバイス1020の間の接続の交渉、ビデオを符号化するビットレートの決定、及びデバイス1005とデバイス1020の間のビデオの交換を含む。   Upon receiving the videoconference acceptance, in some embodiments, a videoconference is established between device 1005 and device 1020 (operation 7). In different embodiments, the video conference is established differently. For example, video conference establishment in some embodiments includes negotiating a connection between device 1005 and device 1020, determining a bit rate for encoding video, and exchanging video between device 1005 and device 1020.

上記の例では、デバイス1020のユーザはテレビ会議要求を承諾する。一部の実施形態では、デバイス1020は、着信するテレビ会議要求を、UIを表示せずに自動的に承諾するように(例えば、デバイスの基本設定(preference setting)によって)構成されうる。さらに、デバイス1020のユーザは、(例えば、デバイス1020に表示されるユーザインタフェースのユーザインタフェース項目を選択することによって)テレビ会議要求を(動作4で)拒否することもできる。テレビ会議承諾を送信する代わりに、テレビ会議クライアント1025は、テレビ会議拒否をテレビ会議サーバ1015に送信し、テレビ会議サーバ1015は、テレビ会議拒否をテレビ会議クライアント1010に転送する。その場合、テレビ会議は確立されない。   In the above example, the user of device 1020 accepts the videoconference request. In some embodiments, device 1020 may be configured to automatically accept incoming video conference requests without displaying a UI (e.g., via device preference settings). Further, the user of device 1020 may reject the video conference request (at operation 4) (e.g., by selecting a user interface item of a user interface displayed on device 1020). Instead of sending a videoconference acceptance, videoconference client 1025 sends a videoconference reject to videoconference server 1015, which forwards the videoconference rejection to videoconference client 1010. In that case, no video conference is established.

1.テレビ会議セットアップユーザインタフェース
一部の実施形態では、テレビ会議は、進行中の通話に基づいて始められる。すなわち、携帯デバイスのユーザが第2ユーザとの通話に関わる間に、ユーザは、他の当事者の許可を得て、通話をテレビ会議に変えることができる。本発明の一部の実施形態では、図11は、デュアルカメラハンドヘルド携帯デバイス1100によるこのようなテレビ会議の開始を示す。この図は、デバイス1100のユーザインタフェース(「UI」)1105の5つの動作段階1110、1115、1120、1125及び1130としてテレビ会議の開始を示す。
1. Video Conference Setup User Interface In some embodiments, a video conference is initiated based on an ongoing call. That is, while the user of the mobile device is engaged in a call with the second user, the user can turn the call into a video conference with the permission of the other party. In some embodiments of the present invention, FIG. 11 illustrates the initiation of such a video conference by a dual camera handheld portable device 1100. This figure shows the start of a video conference as five operational phases 1110, 1115, 1120, 1125 and 1130 of a user interface ("UI") 1105 of the device 1100.

図11に示すように、UI1105は、名前フィールド1135と、選択メニュー1140と、選択可能UI項目1145とを含む。名前フィールド1135は、ユーザがテレビ会議要求を希望するだろう、通話の相手側の人の名前を表示する。この例では、(選択可能なボタンとして実施できる)選択可能UI項目1145は、ユーザが通話を終了させるために選択可能な「通話終了」オプションを提供する。選択メニュー1140は、スピーカフォン項目1142、消音項目1144、キーパッド項目1146、電話帳項目1148、保留項目1152、テレビ会議項目1154などの、選択可能UI項目のメニューを表示する。異なる実施形態では、選択メニューを異なるように表示する。図11によって示される実施形態では、選択メニュー1140は、それぞれが異なる動作を表す、サイズの等しいいくつかのアイコンを含む。他の実施形態は、スクロール可能なメニューを提供するか、又は(例えば、項目を大きくすることによって)特定の項目を優先する。   As shown in FIG. 11, the UI 1105 includes a name field 1135, a selection menu 1140, and a selectable UI item 1145. The name field 1135 displays the name of the person on the other end of the call for which the user may wish to request a video conference. In this example, selectable UI item 1145 (which can be implemented as a selectable button) provides a "end call" option that the user can select to end the call. The selection menu 1140 displays a menu of selectable UI items such as a speakerphone item 1142, a mute item 1144, a keypad item 1146, a telephone directory item 1148, a hold item 1152, and a video conference item 1154. Different embodiments display the selection menu differently. In the embodiment illustrated by FIG. 11, the selection menu 1140 includes a number of icons of equal size, each representing a different action. Other embodiments provide a scrollable menu or prioritize certain items (eg, by making the items larger).

ここで、UI1105の動作について、図11に示されている5つの段階1110、1115、1120、1125及び1130におけるこのUIの状態に関して説明する。第1段階1110では、ハンドヘルド携帯デバイスユーザとナンシー・ジョーンズの間に通話が確立されている。第2段階1115は、ユーザが選択可能なテレビ会議オプション1154を(例えば、指1150によるシングルフィンガータップを通じて)選択してテレビ会議ツールを起動した後のUI1105を表示する。この例では、(選択可能アイコンとして実施できる)テレビ会議オプション1154によって、ユーザが通話中にテレビ会議を開始できる。第2段階では、テレビ会議オプション1154は、テレビ会議ツールが起動されたことを示すために強調表示される。異なる実施形態は、異なる仕方で(例えば、項目の境界線又はテキストを強調表示することによって)このような選択を示してもよい。   The operation of the UI 1105 will now be described with respect to the state of this UI in the five stages 1110, 1115, 1120, 1125 and 1130 shown in FIG. In a first stage 1110, a call is established between a handheld portable device user and Nancy Jones. The second step 1115 displays the UI 1105 after the user has selected a video conferencing option 1154 (eg, through a single finger tap with the finger 1150) to activate the video conferencing tool. In this example, a video conference option 1154 (which can be implemented as a selectable icon) allows a user to initiate a video conference during a call. In the second stage, the video conferencing option 1154 is highlighted to indicate that the video conferencing tool has been activated. Different embodiments may indicate such a selection in a different manner (eg, by highlighting the border or text of an item).

第3段階1120は、テレビ会議オプション1154の選択によりデバイス1100がテレビ会議プロセスを開始した後のUI1105を表示する。第3段階は、テレビ会議が確立されるのをデバイスが待つ間(例えば、通話の相手側のデバイスがテレビ会議を承諾するか又は拒否するのをデバイスが待つ間)の移行待機段階である。第3段階1120では、デバイス1100のユーザは、テレビ会議接続が確立されている間、依然として他のデバイスのユーザ(すなわち、ナンシー・ジョーンズ)と話をできる。さらに、一部の実施形態により、デバイス1100のユーザは、テレビ会議要求をキャンセルするための、UI1105に表示された選択可能UI項目(不図示)を選択することによって、第3段階1120でテレビ会議要求をキャンセルできる。この待機段階において、異なる実施形態では、待ち状態を示すためにUI1105の異なる表示を使用する。   The third stage 1120 displays the UI 1105 after the device 1100 has started the video conference process by selecting the video conference option 1154. The third stage is a transition waiting stage during which the device waits for a video conference to be established (eg, while the device waits for the device at the other end of the call to accept or reject the video conference). In a third stage 1120, the user of the device 1100 can still talk to the user of the other device (ie, Nancy Jones) while the video conference connection is established. Further, according to some embodiments, the user of device 1100 may select a selectable UI item (not shown) displayed on UI 1105 to cancel the video conferencing request, thereby causing a video conferencing in a third step 1120. Request can be canceled. During this wait phase, different embodiments use different displays on the UI 1105 to indicate the wait state.

図11に示すように、一部の実施形態では、第3段階の待ち状態は、このビデオの下部における「プレビュー」表記と共に、デバイス1100によって取り込まれたビデオの全画面表示として示されている。具体的には、図11では、第3段階1120は、デバイスのカメラによって取り込まれているビデオの全画面提示をUI1105の表示域1160に表示することによってテレビ会議処理の開始を示す。一部の実施形態では、前面カメラは、テレビ会議の開始時にデバイスによって選択されるデフォルトのカメラである。多くの場合に、この前面カメラは、テレビ会議の開始時にデバイスのユーザを指す。したがって、図11に示される例では、第3段階1120は、デバイス1100のユーザの全画面ビデオを提示するものとしてデバイス1100を示す。デバイスの待ち状態は、第3段階1120中に表示域1160に現れるビデオの下の「プレビュー」標識1165によってさらに強調表示される。   As shown in FIG. 11, in some embodiments, the third stage wait state is shown as a full screen display of the video captured by device 1100, with a "preview" notation at the bottom of the video. Specifically, in FIG. 11, the third stage 1120 indicates the start of the video conference process by displaying a full screen presentation of the video captured by the device camera in the display area 1160 of the UI 1105. In some embodiments, the front camera is the default camera selected by the device at the start of the video conference. In many cases, this front camera points to the user of the device at the start of the video conference. Thus, in the example shown in FIG. 11, the third stage 1120 shows the device 1100 as presenting a full screen video of the user of the device 1100. The waiting state of the device is further highlighted by a “preview” indicator 1165 below the video that appears in the display area 1160 during the third stage 1120.

移行期の第3待機段階1120は、一部の実施形態では異なるように表されうる。例えば、一部の実施形態により、デバイス1100のユーザは、テレビ会議を開始するためのカメラとして背面カメラを選択できる。この選択を可能にするため、一部の実施形態により、ユーザは、テレビ会議の開始のためのデフォルトのカメラとして背面カメラを(例えば、メニューの基本設定によって)指定でき、及び/又は、ユーザは、テレビ会議オプション1154を選択した後で、背面カメラ及び前面カメラを表示するメニューから背面カメラを選択できる。これらの状況のいずれにおいても、UI1105(例えば、表示域1160)は、第3待機段階1120中に背面カメラによって取り込まれたビデオを表示する。   The third waiting phase 1120 of the transition may be represented differently in some embodiments. For example, according to some embodiments, a user of device 1100 may select a rear camera as the camera for initiating a video conference. To enable this selection, some embodiments allow the user to specify the rear camera (eg, via menu preferences) as the default camera for initiating a video conference, and / or After selecting the video conference option 1154, the rear camera can be selected from a menu that displays the rear camera and the front camera. In any of these situations, UI 1105 (eg, display area 1160) displays video captured by the rear camera during third standby phase 1120.

同様に、他の実施形態では、デバイス1100によって取り込まれたビデオの小型バージョンを表示することによって、デバイス1100に格納された静止画像を表示することによって、デバイスの待ち状態を強調表示するメッセージを提供することによって(例えば、「会議の確立中」を示すことによって)、「プレビュー」標識を表示しないことなどによって、テレビ会議ツールの起動を示すことができる。同様に、第3段階1120において、一部の実施形態のUI1105は、ユーザがこの段階で(例えば、リモートユーザが要求に応答するのをユーザが待っている間に)テレビ会議に入らないことを決心したならば、テレビ会議に入るのをキャンセルして通話に戻ることを可能にするために、終了ボタン(不図示)を提供する。   Similarly, other embodiments provide a message that highlights a device's wait state by displaying a still image stored on device 1100 by displaying a small version of the video captured by device 1100. By doing so (e.g., by indicating "meeting is being established"), the activation of the video conferencing tool can be indicated, such as by not displaying a "preview" sign. Similarly, in a third stage 1120, the UI 1105 of some embodiments may indicate that the user does not enter the video conference at this stage (eg, while the user is waiting for the remote user to respond to the request). If so, an end button (not shown) is provided to allow you to cancel the video conference and return to the call.

第4段階1125は、リモートユーザがテレビ会議要求を承諾してテレビ会議接続が確立された後の移行状態のUI1105を示す。この移行状態では、矢印1175で示されるように、(この例では、前面カメラによって取り込まれている)ローカルユーザのビデオを表示する表示域1160のサイズが段階的に減少する(すなわち、段階的に縮む)。表示域1160(すなわち、ローカルユーザのビデオ)が縮んで、その結果、UI1105は、リモートデバイスのカメラからのビデオを含む表示域1170(例えば、表示ウィンドウ1170)を表示域1160の後ろに表示できる。言い換えれば、ローカルユーザのビデオ1160が縮むことによって、ローカルユーザのビデオの前景挿入表示1160とリモートユーザの背景メイン表示1170とを有するPIP表示1180が生成される。この例では、背景メイン表示1170は、リモートデバイスの前面カメラによって取り込まれている婦人(例えば、リモートデバイスのユーザであるナンシー・ジョーンズ)又はリモートデバイスの背面カメラによってビデオが取り込まれている婦人(例えば、ナンシー・ジョーンズによってビデオが取り込まれている婦人)のビデオを提示する。図11に示される移行期の第4段階が一部の実施形態によって使用される1つの例示的な手法に過ぎず、他の実施形態は移行期の第4段階を異なるようにアニメーション化できることが当業者には理解されよう。   Fourth stage 1125 shows UI 1105 in a transition state after the remote user has accepted the video conference request and a video conference connection has been established. In this transition state, as shown by arrow 1175, the size of display area 1160 displaying the local user's video (captured in this example by the front camera) decreases stepwise (ie, stepwise). Shrink). The display area 1160 (i.e., the video of the local user) shrinks, so that the UI 1105 can display a display area 1170 (e.g., display window 1170) containing video from the camera of the remote device behind the display area 1160. In other words, the shrinking of the local user's video 1160 generates a PIP display 1180 having a foreground insert display 1160 of the local user's video and a background main display 1170 of the remote user. In this example, the background main display 1170 may be a woman being captured by the front camera of the remote device (eg, Nancy Jones who is a user of the remote device) or a woman being captured by the rear camera of the remote device (eg, , A woman whose video has been captured by Nancy Jones). It is noted that the fourth stage of the transition shown in FIG. 11 is only one exemplary approach used by some embodiments, and that other embodiments can animate the fourth stage of the transition differently. Those skilled in the art will appreciate.

第4段階1125は、下部の表示域1155にある選択可能UI項目1132も示す。(選択可能なボタンとして実施されうる)選択可能UI項目1132は、PIP表示1180の下に、選択可能会議終了オプション1132を提供する。ユーザは、この会議終了オプション1132を選択して(例えば、シングルフィンガータップを通じて)、テレビ会議を終了できる。異なる実施形態により、ユーザは、携帯デバイス上のスイッチを切り換えることによって、音声コマンドを与えることによってなどの、異なる仕方で、会議を終了してもよい。さらに、異なる実施形態により、会議終了オプション1132がテレビ会議中に表示されなくなることができ、それによって、PIP表示1180が表示域1185全体を占有してもよい。その後、表示域1185の下部をシングルフィンガータップすると、会議終了オプション1132が再表示され、会議終了オプション1132へのアクセスをユーザに提供できる。一部の実施形態では、表示域1155のレイアウトは、以下でさらに詳細に説明する表示域1155と同じである。   The fourth step 1125 also shows a selectable UI item 1132 in the lower display area 1155. A selectable UI item 1132 (which may be implemented as a selectable button) provides a selectable conference end option 1132 below the PIP display 1180. The user can select this end conference option 1132 (eg, through a single finger tap) to end the video conference. According to different embodiments, the user may end the meeting in different ways, such as by flipping a switch on the mobile device, giving a voice command, and the like. Further, different embodiments may allow the end-of-conference option 1132 to disappear during a video conference, whereby the PIP display 1180 may occupy the entire display area 1185. Thereafter, a single finger tap at the bottom of the display area 1185 causes the end conference option 1132 to be redisplayed, providing access to the end conference option 1132 to the user. In some embodiments, the layout of display area 1155 is the same as display area 1155 described in more detail below.

第5段階1130は、第4移行状態1125のアニメーションが終了した後のUI1105を示す。具体的には、第5段階1130は、テレビ会議中にUI1105によって提示されるPIP表示1180を示す。上述のように、このPIP表示1180は、2つのビデオ表示、すなわちリモートカメラからの大きい方の背景表示1170と、ローカルカメラからの小さい方の前景挿入表示1160とを含む。   The fifth stage 1130 shows the UI 1105 after the animation of the fourth transition state 1125 has ended. Specifically, the fifth stage 1130 shows a PIP display 1180 presented by the UI 1105 during a video conference. As described above, this PIP display 1180 includes two video displays, a larger background display 1170 from the remote camera and a smaller foreground insert display 1160 from the local camera.

このPIP表示1180は、リモートデバイス及びローカルデバイスによって取り込まれているビデオの合成ビューを提示する1つの仕方にすぎない。この合成ビューに加えて、一部の実施形態のデバイスは、他の合成ビューを提供する。例えば、リモートユーザに関する大きい方の背景表示1170を有する代わりに、大きい方の背景表示1170は、ローカルユーザに関するものにでき、小さい方の前景挿入表示1160はリモートユーザに関するものにできる。以下でさらに説明するように、一部の実施形態により、ユーザは、PIP表示1180の挿入ビュー及びメインビュー用のカメラとしてローカルカメラ及び/又はリモートカメラをテレビ会議中に切り換えることができる。   This PIP display 1180 is just one way to present a composite view of the video being captured by the remote and local devices. In addition to this composite view, the devices of some embodiments provide other composite views. For example, instead of having a larger background display 1170 for the remote user, the larger background display 1170 can be for the local user and the smaller foreground insert display 1160 can be for the remote user. As described further below, some embodiments allow a user to switch between a local camera and / or a remote camera as a camera for the inset view and main view of the PIP display 1180 during a videoconference.

同様に、一部の実施形態により、ローカルビデオ及びリモートビデオは、UI1105内の並んだ2つの表示域(例えば、左右の表示ウィンドウ、又は上下の表示ウィンドウ)又は斜めに整列した2つの表示域に表示されうる。以下でさらに説明するように、PIP表示の仕方又はデフォルトの表示モードは、一部の実施形態では、デバイスの基本設定を通じて又はテレビ会議中にユーザが選択できる制御を通じてユーザによって指定されてもよい。   Similarly, according to some embodiments, local video and remote video are displayed in two side-by-side display areas (eg, left and right display windows or top and bottom display windows) or two diagonally aligned display areas in UI 1105. Can be displayed. As described further below, the manner of PIP display or default display mode may be specified by the user in some embodiments through device preferences or through user-selectable controls during a video conference.

図11のデバイス1100のユーザがリモートユーザをテレビ会議に招待した場合に、リモートユーザは、その招待を承諾してもよいし、拒否してもよい。図12は、リモートユーザのデバイスでテレビ会議招待を提示し承諾するための動作のシーケンスを示す6つの異なる段階1210、1215、1220、1225、1230及び1235におけるリモートユーザのデバイス1200のUI1205を示す。UI1205の以下の説明は、デバイス1200(すなわち、テレビ会議要求を受信するデバイス)のユーザを招待受信者と呼び、デバイス1100(すなわち、テレビ会議要求を送信するデバイス)のユーザを招待依頼者と呼ぶ。また、この例では、招待受信者のデバイス1200は、招待依頼者のデバイスのように、デュアルカメラデバイスであると想定される。しかし、他の例では、これらのデバイスの一方又は両方はシングルカメラデバイスである。   If the user of device 1100 of FIG. 11 invites a remote user to a video conference, the remote user may accept or reject the invitation. FIG. 12 shows the UI 1205 of the remote user's device 1200 in six different stages 1210, 1215, 1220, 1225, 1230 and 1235 showing a sequence of operations for presenting and accepting a video conference invitation at the remote user's device. The following description of UI 1205 will refer to the user of device 1200 (ie, the device that receives the video conference request) as the invitation recipient, and refer to the user of device 1100 (ie, the device that transmits the video conference request) as the invitation requester. . Also, in this example, the invitation recipient device 1200 is assumed to be a dual camera device, like the invitation requester device. However, in other examples, one or both of these devices are single camera devices.

第1段階1210は、招待受信者が招待依頼者のジョン・スミスからテレビ会議への招待を受信したときのUI1205を示す。図12に示すように、この段階のUI1205は、名前フィールド1235と、メッセージフィールド1240と、2つの選択可能UI項目1245及び1250とを含む。名前フィールド1235には、テレビ会議を要求している人の名前が表示される。一部の実施形態では、名前フィールド1235には、テレビ会議を要求している人の名前の代わりに、その人の電話番号が表示される。メッセージフィールド1240には、招待依頼者から招待受信者への招待が表示される。この例では、フィールド1240の「テレビ会議招待」は、招待依頼者が招待受信者とのテレビ会議を要求していることを示す。(選択可能ボタンとして実施されうる)選択可能UI項目1245及び1250は、招待受信者が招待を拒否するか承諾するために使用するための選択可能な要求拒否オプション1245及び要求承諾オプション1250を提供する。異なる実施形態では、これらのオプションを異なるように表示し、及び/又は他のオプションを表示できる。   The first stage 1210 shows the UI 1205 when the invitation recipient receives an invitation to a video conference from the invitation requester John Smith. As shown in FIG. 12, the UI 1205 at this stage includes a name field 1235, a message field 1240, and two selectable UI items 1245 and 1250. The name field 1235 displays the name of the person requesting the video conference. In some embodiments, the name field 1235 displays the person's telephone number instead of the name of the person requesting the video conference. In the message field 1240, an invitation from the invitation requester to the invitation recipient is displayed. In this example, the field 1240 "Video Invite" indicates that the invitation requester has requested a video conference with the invitation recipient. Selectable UI items 1245 and 1250 (which may be implemented as selectable buttons) provide selectable request reject options 1245 and request accept options 1250 for use by the invitation recipient to reject or accept the invitation. . In different embodiments, these options may be displayed differently and / or other options may be displayed.

招待受信者は、「テレビ会議招待」表記がメッセージフィールド1240に表示されているのを見たら、UIの要求拒否オプション1245又は要求承諾オプション1250をそれぞれ選択することによって、要求を拒否するか、承諾することができる。第2段階1215は、図12に示される例においてユーザが要求承諾オプション1250を選択することを示す。この例では、この選択は、ユーザの指が要求承諾オプション1250をタップすることによってなされ、この選択は、このオプション1250の強調表示によって示されている。一部の実施形態では、選択を示す(例えば、UI項目の境界線又はテキストを強調表示する)ために要求承諾オプション1245又は要求拒否オプション1250を選択する他の技術(例えば、ダブルタップなど)が提供される。   When the invitation recipient sees the "Video Invitation" notation displayed in message field 1240, the invitee rejects or accepts the request by selecting the request rejection option 1245 or the request acceptance option 1250 in the UI, respectively. can do. The second stage 1215 indicates that the user selects the request acceptance option 1250 in the example shown in FIG. In this example, the selection is made by the user's finger tapping on request acceptance option 1250, which is indicated by the highlighting of option 1250. In some embodiments, other techniques (e.g., double-tap, etc.) to select the accept request option 1245 or reject request option 1250 to indicate a selection (e.g., highlight the border or text of a UI item). Provided.

第3段階1220は、招待受信者がテレビ会議への参加に同意した後のUI1205を示す。この段階では、UI1205は、リモートデバイスの前面カメラからのビデオの全画面提示を表示域1244に示すプレビューモードに入る。前面カメラは、この場合、リモートデバイスのユーザ(すなわち、この例ではナンシー・ジョーンズ)に向けられる。したがって、このプレビューモードでは、彼女の画像が示される。このプレビューモードによって、招待受信者は、自分のビデオが適切に表示され、テレビ会議が始まる前(例えば、ビデオの実際の伝送が始まる前)に自分の外見に満足することを確認できる。一部の実施形態では、招待受信者がプレビューモードであることを示すために、「プレビュー」表記などの表記が表示域1244の下に表示されてもよい。   The third stage 1220 shows the UI 1205 after the invitation recipient has agreed to join the video conference. At this stage, the UI 1205 enters a preview mode that shows a full screen presentation of the video from the front camera of the remote device in the display area 1244. The front camera is in this case aimed at the user of the remote device (ie, Nancy Jones in this example). Thus, in this preview mode, her image is shown. This preview mode allows the invitee to ensure that their video is properly displayed and satisfied with their appearance before the video conference begins (eg, before the actual transmission of the video begins). In some embodiments, a notation, such as a “Preview” notation, may be displayed below display area 1244 to indicate that the invitation recipient is in preview mode.

以下でさらに説明するように、一部の実施形態により、招待受信者は、テレビ会議の開示時のデフォルトのカメラとして背面カメラを選択でき、又はテレビ会議の冒頭で前面カメラ又は背面カメラを選択できる。また、他の実施形態では、招待受信者のプレビュー表示が、異なるように(例えば、表示域1244の隅に置かれた小さい方の画像に)表示される。さらに他の実施形態では、このプレビューモードを含まず、招待受信者が要求を承諾した直後にテレビ会議を開始する。   As described further below, some embodiments allow an invitee to select a rear camera as a default camera when a video conference is disclosed, or to select a front camera or a rear camera at the beginning of a video conference. . Also, in other embodiments, the preview display of the invitation recipient is displayed differently (eg, on the smaller image located in the corner of display area 1244). In yet another embodiment, this preview mode is not included, and the video conference starts immediately after the invitation recipient accepts the request.

第3段階では、UI1205は、2つの選択可能UI項目1275及び1246を示し、その一方は表示域1244に重なり、他方は、この表示域1244の下にある。選択可能UI項目1275は、テレビ会議を開始するためにユーザが選択してもよい承諾ボタン1275である。選択可能UI項目1246は、招待受信者がこの段階でテレビ会議に参加しないことを決めた場合に選択できる終了ボタン1246である。   In the third stage, the UI 1205 shows two selectable UI items 1275 and 1246, one of which overlaps the display area 1244 and the other is below the display area 1244. Selectable UI item 1275 is an accept button 1275 that the user may select to start a video conference. The selectable UI item 1246 is an end button 1246 that can be selected when the invitation recipient decides not to participate in the video conference at this stage.

第4段階1225は、招待受信者が承諾ボタン1275を選択した後のUI1205を示す。この例では、承諾ボタン1275は、招待受信者がテレビ会議を開始する準備ができたことを示すように強調表示されている。このような選択は、他の実施形態では、異なる仕方で示されうる。   The fourth step 1225 shows the UI 1205 after the invitation recipient has selected the Accept button 1275. In this example, the accept button 1275 is highlighted to indicate that the invited recipient is ready to start a video conference. Such a selection may be indicated differently in other embodiments.

第5段階1230は、招待受信者がテレビ会議要求を承諾した後の移行状態であるUI1205を示す。この移行段階では、矢印1260で示されるように、(この例では、前面カメラによって取り込まれている)招待受信者のビデオを表示する表示域1244のサイズが段階的に減少する(すなわち、段階的に縮む)。招待受信者のビデオが縮んで、その結果、UI1205は、招待依頼者のカメラからのビデオを表示域1244の後ろに含む表示域1265(例えば、表示ウィンドウ1265)を表示できる。言い換えれば、招待受信者のビデオが縮むことによって、招待受信者のビデオの前景挿入表示域1244と招待依頼者の背景メイン表示1265とを有するPIP表示1280が生成される。   Fifth stage 1230 shows UI 1205, which is the transition state after the invitation recipient has accepted the video conference request. In this transition phase, as indicated by arrow 1260, the size of display area 1244 displaying the video of the invited recipient (in this example, captured by the front camera) is stepwise reduced (ie, stepped). To shrink). The invitation recipient's video shrinks so that the UI 1205 can display a display area 1265 (eg, display window 1265) that includes the video from the invitation requester's camera behind display area 1244. In other words, the shrinking of the invitation recipient's video generates a PIP display 1280 having a foreground insertion display area 1244 of the invitation recipient's video and a background main display 1265 of the invitation requester.

この例では、背景メイン表示1265は、ローカルデバイスの前面カメラによってビデオが取り込まれている男性のビデオ(すなわち、ローカルデバイス1100のユーザであるジョン・スミス)を提示する。別の例では、このビデオは、ローカルデバイスの背面カメラによってビデオが取り込まれている男性(例えば、ジョン・スミスによってビデオが取り込まれている男性)のビデオにできる。異なる実施形態では、この移行期の第5段階を異なるようにアニメーション化できる。   In this example, the background main display 1265 presents a male video (ie, John Smith who is the user of the local device 1100) whose video has been captured by the front camera of the local device. In another example, the video can be a video of a male whose video is being captured by the rear camera of the local device (eg, a male whose video is being captured by John Smith). In different embodiments, the fifth phase of this transition can be animated differently.

第5段階1230におけるUIは、以下でさらに詳細に説明する、テレビ会議中に他のユーザの音声を消音するための選択可能UI項目1285(例えば、消音ボタン1285)と、テレビ会議を終了するための選択可能UI項目1287(例えば、会議終了ボタン1287)と、カメラを切り換えるための選択可能UI項目1289(例えば、カメラ切り換えボタン1289)とを含む表示域1155(例えば、ツールバー又はメニューバー)も表示する。したがって、招待受信者は、テレビ会議中に所望の動作を実行するために、選択可能UI項目1285〜1289のいずれかを(例えば、シングルフィンガータップによって)選択できる。異なる実施形態により、招待受信者は、例えば、携帯デバイス上のスイッチを切り換えることによって、音声コマンドを与えることによってなどのような、異なる仕方の動作のいずれかを実行できる。   The UI in the fifth step 1230 includes a selectable UI item 1285 (eg, a mute button 1285) for muting other users' voices during the video conference, and a UI for terminating the video conference, as described in further detail below. A display area 1155 (eg, a toolbar or menu bar) including a selectable UI item 1287 (eg, a conference end button 1287) and a selectable UI item 1289 (eg, a camera switch button 1289) for switching cameras is also displayed. I do. Thus, the invitation recipient can select any of the selectable UI items 1285 to 1289 (e.g., by a single finger tap) to perform the desired action during the video conference. Different embodiments allow the invitation recipient to perform any of the different ways of operation, such as, for example, by flipping a switch on the mobile device, giving a voice command, and so on.

図12は、表示域1155の例示的なレイアウトを示しているが、一部の実施形態は、テレビ会議を終了するための会議終了の選択可能UI項目1132だけを含む、図11の表示域1155のレイアウトなどの表示域1155の異なるレイアウトを提供する。表示域1155の他のレイアウトは、異なる機能を実行するための任意の数の異なる選択可能UI項目を含むことができる。さらに、第5段階1230は、UI1205の下部に表示された表示域1155を示す。表示域1155の異なる実施形態は、UI1205内部の異なる位置に表示されうるか、及び/又は異なる形状として規定されうる。   Although FIG. 12 illustrates an exemplary layout of the display area 1155, some embodiments include the display area 1155 of FIG. A different layout of the display area 1155 such as the layout of the above is provided. Other layouts of display area 1155 may include any number of different selectable UI items for performing different functions. Further, a fifth step 1230 shows a display area 1155 displayed at the bottom of the UI 1205. Different embodiments of the display area 1155 may be displayed at different locations within the UI 1205 and / or may be defined as different shapes.

図12は、表示域1155を静的な表示域として示す(すなわち、表示域1155は常に表示される)。しかし、一部の実施形態では、表示域1155は動的な表示域である。いくつかのこのような実施形態では、表示域1155は、通常は表示されない。むしろ、表示域1155は、トリガになるイベント(例えば、表示域1280をこのように一回タップするユーザの選択、音声コマンドなど)が受け取られた場合に表示される。ユーザの選択が受け取られた(例えば、選択可能消音UI項目1285を選択する)又は定義された時間量(例えば、3秒)の後で、表示域1155は非表示になり、この時間量は、携帯デバイス又はテレビ会議アプリケーションの基本設定を通じてユーザによって指定されうる。一部のこのような実施形態では、表示域1155は、テレビ会議が開始した後で自動的に表示され、上述した同じ仕方で非表示になる。   FIG. 12 shows display area 1155 as a static display area (ie, display area 1155 is always displayed). However, in some embodiments, display area 1155 is a dynamic display area. In some such embodiments, display area 1155 is not normally displayed. Rather, display area 1155 is displayed when a triggering event (e.g., a user's selection of such a single tap on display area 1280, a voice command, etc.) is received. After a user selection is received (eg, selectable mute UI item 1285) or after a defined amount of time (eg, 3 seconds), display area 1155 is hidden, and this amount of time is It can be specified by the user through the preferences of the mobile device or videoconferencing application. In some such embodiments, display area 1155 is automatically displayed after a video conference has begun and is hidden in the same manner described above.

第6段階1235は、第5移行段階のアニメーションが終了した後のUI1205を示す。具体的には、第6段階は、テレビ会議中にUI1205によって提示されるPIP表示1280を示す。上述のように、このPIP表示1280は、2つのビデオ表示、すなわちローカルカメラからの大きい方の背景表示1265と、リモートカメラからの小さい方の前景挿入表示1244とを含む。このPIP表示1280は、リモートデバイス及びローカルデバイスによって取り込まれているビデオの合成ビューを提示する1つの仕方にすぎない。この合成ビューに加えて、一部の実施形態のデバイスは、他の合成ビューを提供する。例えば、招待受信者に関する大きい方の背景表示を有する代わりに、大きい方の背景表示は、招待依頼者に関するものにでき、小さい方の前景挿入表示は招待受信者に関するものにできる。以下でさらに説明するように、一部の実施形態により、ユーザは、ローカルカメラ及びリモートカメラを切り換え可能に表示するようにPIP表示の挿入ビュー及びメインビューを制御できる。同様に、一部の実施形態により、ローカルビデオ及びリモートビデオは、UI1205内の並んだ2つの表示域(例えば、左右の表示ウィンドウ、又は上下の表示ウィンドウ)又は斜めに整列した2つの表示域に表示されうる。以下でさらに説明するように、PIP表示の方式又はデフォルトの表示モードは、一部の実施形態では、デバイスの基本設定を通じて又はテレビ会議中にユーザが選択できる制御を通じてユーザによって指定されてもよい。   The sixth step 1235 shows the UI 1205 after the animation of the fifth transition step has been completed. Specifically, the sixth stage shows a PIP display 1280 presented by the UI 1205 during a video conference. As described above, this PIP display 1280 includes two video displays, a larger background display 1265 from the local camera and a smaller foreground insert display 1244 from the remote camera. This PIP display 1280 is just one way to present a composite view of the video being captured by the remote and local devices. In addition to this composite view, the devices of some embodiments provide other composite views. For example, instead of having a larger background display for the invitation recipient, the larger background display can be for the invitation requester and the smaller foreground insertion display can be for the invitation recipient. As described further below, some embodiments allow a user to control the inset view and main view of the PIP display to switchably display local and remote cameras. Similarly, according to some embodiments, local video and remote video are displayed in two side-by-side display areas (eg, left and right display windows or top and bottom display windows) or two diagonally aligned display areas in UI 1205. Can be displayed. As described further below, the manner of PIP display or default display mode may be specified by the user in some embodiments through device preferences or through user-selectable controls during a video conference.

図12は、テレビ会議招待を提示して承諾するための動作のシーケンスを、6つの異なる動作段階として示しているが、一部の実施形態では、より少ない数の段階で動作を実施できる。例えば、このような実施形態のうちの一部では、第3段階1220及び第4段階1225を提示することを省略し、ユーザが要求承諾オプション1250を選択した後で第2段階1215から第5段階1230に進むことができる。より少ない数の段階でその動作(すなわち、テレビ会議招待を提示して承諾すること)を実施する他の実施形態では、第1段階1210及び第2段階1215を省略し、招待受信者が招待依頼者からテレビ会議への招待を受信した場合に、ユーザに第3段階1220を提示できる。   Although FIG. 12 illustrates the sequence of operations for presenting and accepting a video conference invitation as six different stages of operation, in some embodiments, the operations may be performed in a smaller number of stages. For example, in some of such embodiments, presenting the third step 1220 and the fourth step 1225 may be omitted, and the second step 1215 to the fifth step 1215 may be performed after the user selects the request acceptance option 1250. Proceed to 1230. In other embodiments that implement the operation (ie, present and accept the videoconference invitation) in fewer steps, the first step 1210 and the second step 1215 may be omitted and the invitation recipient The third step 1220 can be presented to the user when an invitation to a video conference is received from the user.

図13は、第1段階と第3段階とを1つの段階に結合し、かつ第2段階と第4段階とを1つの段階に結合することによって、より少ない数の段階で図12に示される動作を実行する一例を示す。具体的には、この図は、5つの異なる段階1390、1392、1394、1230及び1235におけるリモートユーザのデバイス1200のUI1205を示す。第1段階1390は、通話の相手側の人の名前を示すために名前フィールド1235が名前「ジョン・スミス」を表示することを除いて、段階1110と同様である。すなわち、リモート携帯デバイスのユーザとローカルデバイスのユーザ(すなわち、この例ではジョン・スミス)との間に通話が確立されている。第2段階1392及び第3段階1394は、第2段階1392及び第3段階1394ではリモート携帯デバイスのユーザ(すなわち、この例ではナンシー・ジョーンズ)のプレビューも示されることを除いて、図12の第1段階1210及び第2段階1215と同様である。第4段階1230及び第5段階1235は、図12の第5段階1230及び第6段階1235と同じである。   FIG. 13 shows fewer stages in FIG. 12 by combining the first and third stages into one stage and combining the second and fourth stages into one stage. An example of performing an operation is shown. Specifically, this figure shows the UI 1205 of the remote user's device 1200 in five different stages 1390, 1392, 1394, 1230 and 1235. The first step 1390 is similar to step 1110, except that the name field 1235 displays the name "John Smith" to indicate the name of the other party in the call. That is, a call has been established between the user of the remote portable device and the user of the local device (ie, John Smith in this example). The second and third stages 1392 and 1394 are similar to the second and third stages of FIG. 12 except that the second and third stages 1394 and 1394 also show a preview of the user of the remote portable device (ie, Nancy Jones in this example). It is the same as the first step 1210 and the second step 1215. The fourth step 1230 and the fifth step 1235 are the same as the fifth step 1230 and the sixth step 1235 of FIG.

通話中に選択可能なオプションを通じてテレビ会議ツールを起動することに加えて、一部の実施形態により、デュアルカメラデバイスのユーザは、最初に電話をかける必要なしにテレビ会議を直接始めることができる。図14は、テレビ会議を始める別のこのような代替方法を示す。この図は、テレビ会議を開始するための動作の代替シーケンスを示す7つの異なる段階1410、1415、1420、1425、1430、1435及び1440におけるUI1405を示す。   In addition to launching the video conferencing tool through options available during a call, some embodiments allow a user of a dual camera device to start a video conference directly without having to first make a call. FIG. 14 illustrates another such alternative method of initiating a video conference. The figure shows a UI 1405 in seven different stages 1410, 1415, 1420, 1425, 1430, 1435 and 1440, which show an alternative sequence of operations for initiating a video conference.

第1段階1410では、ユーザは、電話する連絡先をどのようにして探すかと同様にして、この携帯デバイスの連絡先リストからユーザがテレビ会議で関与したい人を探している。第2段階1415では、ユーザは、ユーザがテレビ会議を行いたい人1455を(例えば、人の名前1455へのシングルフィンガータップ1460を通じて)選択する。この選択は、連絡先の情報及び種々のユーザ選択可能なオプションを表示するUI1405をトリガする。この例では、ジョンソンの名前1455が強調表示されて、これが、ユーザがテレビ会議を行いたい人であることを示す。異なる実施形態は、このような選択を異なる仕方で示すことができる。第2段階1415では、デバイス1400のユーザは、ユーザがテレビ会議を行いたい人を連絡先リストを通じて選択できるが、一部の実施形態により、ユーザは、デバイス1400のユーザが最近テレビ会議又は通話を行った人の具体的な番号又は名前をリストする「最近」の通話履歴を通じて人を選択できる。   In a first step 1410, the user is searching the contact list of this mobile device for the person he wants to be involved in a video conference in a similar manner to how to find a contact to call. In a second step 1415, the user selects the person 1455 that the user wants to have a video conference with (eg, via a single finger tap 1460 to the person's name 1455). This selection triggers a UI 1405 displaying contact information and various user selectable options. In this example, Johnson's name 1455 is highlighted, indicating that the user is the one who wants to have a video conference. Different embodiments may indicate such a choice in different ways. In a second step 1415, the user of the device 1400 can select through the contact list who the user wants to have a video conference with, but according to some embodiments, the user may have recently created a video conference or call with the user of the device 1400. A person can be selected through a "Recent" call history listing the specific number or name of the person who made the call.

第3段階1420では、UI1405は、人の名前1455が選択された後に、選択された人の情報1462並びに種々の選択可能UI項目1468、1472及び1470を表示する。この例では、(選択可能なアイコン又はボタンとして実施できる)種々の選択可能UI項目1472のうちの1つは、テレビ会議ツールを提供する。テレビ会議オプション1472を使用して、ユーザは、連絡先1466によって識別された人をテレビ会議に招待できる。異なる実施形態では、情報1462並びに選択可能UI項目1468、1472及び1470が異なるように(例えば、異なる構成で)表示される。   In a third step 1420, the UI 1405 displays information 1462 for the selected person and various selectable UI items 1468, 1472 and 1470 after the person's name 1455 has been selected. In this example, one of the various selectable UI items 1472 (which may be implemented as selectable icons or buttons) provides a video conferencing tool. Using the video conferencing option 1472, the user can invite the person identified by the contact 1466 to the video conference. In different embodiments, information 1462 and selectable UI items 1468, 1472, and 1470 are displayed differently (eg, in different configurations).

第4段階1425は、ユーザがテレビ会議オプション1472を(例えば、シングルフィンガータップを通じて)選択することを示す。この例では、テレビ会議オプション1472は、テレビ会議ツール1472が起動されたことを示すために強調表示される。このような選択は、異なる実施形態で異なるように(例えば、選択されたアイコンのテキスト又は境界線を強調表示することによって)示されうる。   A fourth step 1425 indicates that the user selects videoconferencing option 1472 (eg, through a single finger tap). In this example, video conferencing option 1472 is highlighted to indicate that video conferencing tool 1472 has been activated. Such a selection may be indicated differently in different embodiments (eg, by highlighting the text or border of the selected icon).

第5段階1430、第6段階1435及び第7段階1440は、図11に示される第3段階1120、第4段階1125及び第5段階1130と同様であり、これらの段階の説明を参照することによって理解されうる。要するに、第5段階1430は、リモートユーザがテレビ会議への招待に応答するのを待つ移行待機段階を示す。第6段階1435は、リモートユーザがテレビ会議要求を承諾した後で、(ローカルユーザのビデオを表示する)表示域1480のサイズが段階的に減少し、したがってUI1405はリモートユーザのカメラからのビデオを含む表示域1492を表示域1480の後ろに示すことができることを示す。第7段階1440では、PIP表示1447がテレビ会議中にUI1405によって提示される。一部の実施形態では、第6段階1435及び第7段階1440における表示域1155のレイアウトは、上述の図12の表示域1155のレイアウトに似ている。   The fifth step 1430, the sixth step 1435 and the seventh step 1440 are similar to the third step 1120, the fourth step 1125 and the fifth step 1130 shown in FIG. 11, and by referring to the description of these steps, Can be understood. In short, the fifth step 1430 represents a transition waiting step to wait for the remote user to respond to the video conference invitation. The sixth step 1435 is that after the remote user has accepted the videoconference request, the size of the viewing area 1480 (which displays the local user's video) is gradually reduced, so that the UI 1405 displays the video from the remote user's camera. Indicates that the containing display area 1492 can be shown behind the display area 1480. In a seventh step 1440, a PIP display 1447 is presented by the UI 1405 during the video conference. In some embodiments, the layout of the display area 1155 in the sixth step 1435 and the seventh step 1440 is similar to the layout of the display area 1155 in FIG. 12 described above.

図10、図11、図12、図13及び14は、テレビ会議を確立するいくつかの仕方を示す。一部の実施形態では、通話中に、オーディオデータ(例えば、声)が1つの通信チャネルを通じて(回線交換通信ネットワーク又はパケット交換通信ネットワークのような通信ネットワークを介して)伝送され、テレビ会議中に、オーディオデータが別の通信チャネルを通じて伝送される。したがって、このような実施形態では、テレビ会議が確立される前にオーディオデータ(例えば、声)が通信チャネルを通じて伝送され、テレビ会議が確立されると、オーディオが(通話中に使用される通信チャネルの代わりに)異なる通信チャネルを通じて伝送される。   FIGS. 10, 11, 12, 13 and 14 show several ways to establish a video conference. In some embodiments, during a call, audio data (eg, voice) is transmitted over one communication channel (via a communication network such as a circuit-switched communication network or a packet-switched communication network), and during a videoconference. The audio data is transmitted over another communication channel. Thus, in such embodiments, audio data (eg, voice) is transmitted over the communication channel before the video conference is established, and when the video conference is established, the audio is transmitted over the communication channel used during the call. (Instead of).

通話からテレビ会議へのオーディオデータの切れ目のない移行(例えば、ハンドオフ)を提供するために、一部の実施形態では、テレビ会議を確立する前に通話を終わらせない。例えば、一部の実施形態では、(例えば、図10に示されるメッセージシーケンスを完了した後で)ピアツーピアテレビ会議接続を確立してから、通話を終わらせ、ピアツーピア通信セッションを通じてオーディオ/ビデオデータを送信し始める。あるいは、他の実施形態では、(例えば、図10に示されるメッセージシーケンスを完了した後で)ピアツーピアテレビ会議接続を確立し、ピアツーピアテレビ会議セッションを通じてオーディオ/ビデオデータを送信し始めてから、通話を終わらせ、受信したオーディオ/ビデオデータを提示し始める。   To provide a seamless transition of audio data from a call to a video conference (eg, handoff), some embodiments do not end the call before establishing the video conference. For example, in some embodiments, a peer-to-peer video conference connection is established (eg, after completing the message sequence shown in FIG. 10) before ending the call and transmitting audio / video data through the peer-to-peer communication session. Begin to. Alternatively, in other embodiments, a peer-to-peer videoconferencing connection is established (eg, after completing the message sequence shown in FIG. 10), and audio / video data is transmitted through the peer-to-peer videoconferencing session before ending the call. And start presenting the received audio / video data.

一部の実施形態のピアツーピアテレビ会議接続により、テレビ会議中の携帯デバイスは、(例えば、中央サーバを通じて通信する代わりに)互いと直接通信できる。ピアツーピアテレビ会議の一部の実施形態によって、テレビ会議中の携帯デバイスが、リソースを互いと共有しうる。例えば、以下でさらに詳細に説明するように、テレビ会議の制御通信チャネルを通じて、1つの携帯デバイスは、露出調整動作、焦点調整動作及び/又はカメラ切り換え動作などの、画像を異なるように処理する(すなわち、その画像処理リソースを共有する)ように他の携帯デバイスに指示するために1つの携帯デバイスから他の携帯デバイスに命令を送信することによって、テレビ会議中に別の携帯デバイスの動作を遠隔制御できる。   The peer-to-peer videoconferencing connection of some embodiments allows mobile devices in a videoconference to communicate directly with each other (eg, instead of communicating through a central server). With some embodiments of peer-to-peer videoconferencing, mobile devices in a videoconference may share resources with each other. For example, as described in more detail below, through a video conference control communication channel, one portable device processes images differently, such as exposure adjustment operations, focus adjustment operations, and / or camera switching operations ( That is, by transmitting instructions from one portable device to another to direct the other portable device to share its image processing resources), the operation of another portable device during a videoconference can be remotely controlled. Can control.

2.動的なビットレートのセットアップ
典型的に、テレビ会議中の携帯デバイスは、さまざまなプライベート及びパブリックの無線通信ネットワーク(例えば、GSM、UMTSなどのようなセルラーネットワーク)などのさまざまなタイプの通信ネットワークの通信チャネルを通じて、データ(例えば、オーディオ及びビデオ画像)を互いに通信する。以下では、このような無線通信ネットワークの例について、図91及び図92に関して説明する。
2. Dynamic Bit Rate Setup Typically, mobile devices during video conferencing are connected to various types of communication networks, such as various private and public wireless communication networks (eg, cellular networks such as GSM, UMTS, etc.). Data (eg, audio and video images) communicate with one another over a communication channel. Hereinafter, an example of such a wireless communication network will be described with reference to FIGS.

所与の時間に通信ネットワークにアクセスする携帯デバイスの数が変わることに起因して、テレビ会議を行うための通信ネットワークの利用可能な帯域幅は、時間によって異なる。利用可能な帯域幅は、テレビ会議中ですら変化しうる。さらに、最適なテレビ会議ビットレートを追跡しようとしてテレビ会議中に高いビットレート又は大量のシグナリングで通信ネットワークをあふれさせることは、望ましくない。   Due to the change in the number of mobile devices accessing the communication network at a given time, the available bandwidth of the communication network for conducting video conferences varies from time to time. Available bandwidth can change even during a video conference. Furthermore, flooding the communication network with high bit rates or heavy signaling during a video conference in an attempt to track the optimal video conference bit rate is undesirable.

これらの理由のため、一部の実施形態では、テレビ会議に最適な初期ビットレートを特定するための新規な方法を採用する。テレビ会議に最適な初期ビットレートを識別するため、この方法は、特定のビットレートでテレビ会議を開始し、これらの実施形態でテレビ会議品質を劣化させるネットワーク状態が検出されないならば、特定の間隔でビットレートを漸増する。   For these reasons, some embodiments employ a novel method for identifying an optimal initial bit rate for a video conference. To identify the optimal initial bit rate for video conferencing, the method starts the video conferencing at a specific bit rate and, if a network condition that degrades the video conferencing quality is not detected in these embodiments, a specific interval. To increase the bit rate gradually.

このような実施形態の一例が図15に示されている。この図は、テレビ会議用のビットレートを設定するための本発明の一部の実施形態のプロセス1500を概念的に示す。プロセス1500は、種々のネットワーク状態に基づいてデータ(例えば、オーディオ及びビデオ画像)を送信するためのビットレートを動的に決定するために、テレビ会議セットアップの一部として(例えば、図10に示されるテレビ会議の確立の一部として)実行される。一部の実施形態では、プロセス1500は、図9に関して上述したテレビ会議モジュール925の管理層935によって実行される。このテレビ会議モジュールのより詳細なバージョンについて、以下で図16に関して説明する。   One example of such an embodiment is shown in FIG. This diagram conceptually illustrates a process 1500 of some embodiments of the invention for setting a bit rate for a video conference. Process 1500 may be performed as part of a video conferencing setup (eg, as shown in FIG. 10) to dynamically determine a bit rate for transmitting data (eg, audio and video images) based on various network conditions. (As part of establishing a video conference). In some embodiments, process 1500 is performed by management layer 935 of video conferencing module 925 described above with respect to FIG. A more detailed version of this video conferencing module is described below with respect to FIG.

図15に示すように、プロセス1500は、(1505において)ビットレートを初期ビットレートに設定することによって開始する。一部の実施形態では、初期ビットレートは、デバイスのデフォルトのベースラインレートである。しかし、一部の実施形態では、ユーザが初期ビットレートを指定できる。1505において、プロセス1500はまた、1つ以上の通信チャネルを通じてリモートデバイスにデータ(例えば、オーディオ及びビデオ画像)を初期ビットレートで伝送するテレビ会議を開始する。   As shown in FIG. 15, the process 1500 begins (at 1505) by setting the bit rate to an initial bit rate. In some embodiments, the initial bit rate is the device's default baseline rate. However, in some embodiments, the user can specify the initial bit rate. At 1505, process 1500 also initiates a video conference transmitting data (eg, audio and video images) at an initial bit rate to a remote device over one or more communication channels.

次に、プロセス1500は、(1510において)テレビ会議でリモートデバイスから受信したネットワーク状態パラメータ集合を識別する。一部の実施形態では、ローカルデバイスは、テレビ会議の開始時に確立されたリアルタイムトランスポートプロトコル(RTP)通信セッションを通じてリモートデバイスからネットワーク状態パラメータ集合を受信する。例えば、一部の実施形態は、RTPの拡張機能を通じてネットワーク状態パラメータを提供する。さらに、一部の実施形態のRTP拡張機能は、RTPパケットヘッダ内の拡張ヘッダの存在を示し、追加情報のための拡張ヘッダを定義することによって、いかなるタイプの情報(ネットワーク状態パラメータ集合など)も送信するために使用されうる。   Next, the process 1500 identifies (at 1510) a set of network state parameters received from the remote device in the video conference. In some embodiments, the local device receives a set of network state parameters from a remote device through a Real-time Transport Protocol (RTP) communication session established at the start of the video conference. For example, some embodiments provide network state parameters through an extension of RTP. Further, the RTP extension in some embodiments indicates the presence of an extension header in the RTP packet header and defines any type of information (such as a set of network state parameters) by defining an extension header for additional information. Can be used to send.

異なる実施形態では、テレビ会議中のデバイスは、ネットワーク状態/輻輳パラメータの異なる集合を中継する。以下で説明する実施形態では、ネットワーク状態パラメータ集合は、片道レイテンシ及び帯域幅推定ビットレートを含む。他の実施形態では、ネットワーク状態パラメータ集合は、パケット損失データ及びラウンドトリップ時間(RTT)遅延データを含む。したがって、異なる実施形態は、ネットワーク状態パラメータ集合に任意の数の異なるネットワーク状態パラメータを含むことができる。   In different embodiments, devices in a videoconference relay different sets of network state / congestion parameters. In the embodiments described below, the network state parameter set includes one-way latency and bandwidth estimation bit rate. In another embodiment, the network state parameter set includes packet loss data and round trip time (RTT) delay data. Thus, different embodiments may include any number of different network state parameters in the network state parameter set.

一部の実施形態では、テレビ会議のリモートデバイスから受信されるネットワーク状態パラメータ集合は、動作1505において設定された初期ビットレートでテレビ会議中にローカル携帯デバイス(すなわち、プロセス1500を実行する携帯デバイス)からリモートデバイスに伝送されるデータ(例えば、オーディオ及びビデオ)に基づく。例えば、一部の実施形態では、リモートデバイスは、オーディオパケットがローカル携帯デバイスからリモートデバイスにネットワーク接続を通じて伝播するのにかかる時間をオーディオパケットのタイムスタンプを使用して算出することによって、片道レイテンシを決定できる。具体的には、一部の実施形態では、各オーディオパケットにはタイムスタンプが付される。パケット遅延がない場合、リモートデバイスは、タイムスタンプの差に等しい設定された間隔でオーディオパケットを受信するはずである。しかし、片道レイテンシ遅延がある場合、リモートデバイスは、タイムスタンプの差よりも大きい間隔でオーディオパケットを受信する。   In some embodiments, the set of network state parameters received from the remote device of the video conference is a local mobile device (ie, a mobile device performing process 1500) during the video conference at the initial bit rate set in operation 1505. (E.g., audio and video) transmitted from a remote device to a remote device. For example, in some embodiments, the remote device may increase the one-way latency by calculating the time it takes for the audio packet to propagate from the local mobile device to the remote device over the network connection using the time stamp of the audio packet. Can decide. Specifically, in some embodiments, each audio packet is time stamped. Without packet delay, the remote device would receive audio packets at set intervals equal to the timestamp difference. However, if there is a one-way latency delay, the remote device receives audio packets at intervals greater than the time stamp difference.

また、一部の実施形態では、リモートデバイスは、ビデオパケットが受信された時刻、連続するビデオパケットが受信された時刻、及び連続するビデオパケットのサイズを調べることによって、帯域幅推定ビットレートを決定する。すなわち、2つの連続するビデオパケットの受信時刻の差と第2ビデオパケットのサイズとは、ネットワーク接続の利用可能な帯域幅を推定するために使用される。一部の実施形態では、複数ペアの連続するビデオパケットを調べることによって帯域幅推定ビットレートが決定される。上記の例では、特定のタイプのデータ(すなわち、片道レイテンシを決定するためのオーディオデータ及び帯域幅推定ビットレートを決定するためのビデオデータ)を使用する。しかし、一部の実施形態では、ローカル携帯デバイスとリモートデバイスの間でネットワーク接続を通じて通信された他のタイプのデータも使用されうる。   Also, in some embodiments, the remote device determines the bandwidth estimation bit rate by examining the time at which the video packets were received, the time at which consecutive video packets were received, and the size of the consecutive video packets. I do. That is, the difference between the reception times of two consecutive video packets and the size of the second video packet are used to estimate the available bandwidth of the network connection. In some embodiments, the bandwidth estimation bit rate is determined by examining multiple pairs of consecutive video packets. In the above example, a particular type of data is used (ie, audio data for determining one-way latency and video data for determining a bandwidth estimation bit rate). However, in some embodiments, other types of data communicated over a network connection between a local portable device and a remote device may also be used.

(1510において)ネットワーク状態の集合を識別した後で、プロセス1500は、その後、定義されたしきい値量を超えて片道レイテンシが劣化したかどうかを(1515において)判定する。一部の実施形態では、しきい値量は特定のレイテンシ量として定義され、片道レイテンシは、現在の片道レイテンシと以前の片道レイテンシとの差が特定のレイテンシ量を超えた場合にしきい値量を超えて劣化したと判定される。他の実施形態では、しきい値量は、片道レイテンシの特定の変化率として定義される。したがって、片道レイテンシは、片道レイテンシの集合(例えば、現在の片道レイテンシと以前の片道レイテンシ)の変化率が特定の変化率を超えた場合にしきい値量を超えて劣化したと判定される。   After identifying the set of network conditions (at 1510), the process 1500 then determines (at 1515) whether the one-way latency has degraded beyond a defined threshold amount. In some embodiments, the threshold amount is defined as a specific amount of latency, and the one-way latency is defined as the threshold amount if the difference between the current one-way latency and the previous one-way latency exceeds the specific amount of latency. It is determined that it has deteriorated beyond that. In other embodiments, the threshold amount is defined as a specific rate of change in one-way latency. Therefore, it is determined that the one-way latency has exceeded the threshold amount when the rate of change of the set of one-way latencies (for example, the current one-way latency and the previous one-way latency) exceeds a specific rate of change.

片道レイテンシがしきい値量を超えて劣化すると判定された場合に、プロセス1500が終了する。そうでない場合に、プロセス1500は、現在のビットレートが帯域幅推定ビットレートに達したかどうかを(1520において)はネイする。一部の実施形態では、帯域幅推定ビットレートは、ネットワーク接続に利用可能な帯域幅の量(例えば、15キロビット/秒(kbps))を示す。現在のビットレートが帯域幅推定ビットレートを超えたとプロセス1500が判定した場合に、プロセス1500は終了する。現在のビットレートが帯域幅推定ビットレートを超えていないとプロセス1500が判定した場合に、プロセス1500は動作1525に進む。   The process 1500 ends if the one-way latency is determined to degrade beyond the threshold amount. Otherwise, the process 1500 determines (at 1520) whether the current bit rate has reached the bandwidth estimate bit rate. In some embodiments, the bandwidth estimation bit rate indicates the amount of bandwidth available for the network connection (eg, 15 kilobits per second (kbps)). If the process 1500 determines that the current bit rate has exceeded the bandwidth estimation bit rate, the process 1500 ends. If the process 1500 determines that the current bit rate does not exceed the bandwidth estimate bit rate, the process 1500 proceeds to operation 1525.

1525において、プロセス1500は、現在のビットレートが、規定の最大ビットレートに達したかどうかを判定する。現在のビットレートが、規定の最大ビットレートを超えたとプロセス1500が判定した場合に、プロセス1500は終了する。そうでない場合に、プロセス1500は動作1530に進み、規定の量だけ現在のビットレートを増加させる。異なる実施形態では、ビットレートを増加させる量を異なるように規定する。現在のビットレートを増加させる規定の量の例は、ビットレートを増加させる任意の数の他の量の中でとりわけ、32kbps、64kbpsを含む。   At 1525, process 1500 determines whether the current bit rate has reached a specified maximum bit rate. If the process 1500 determines that the current bit rate has exceeded the specified maximum bit rate, the process 1500 ends. Otherwise, the process 1500 proceeds to operation 1530, where the current bit rate is increased by a specified amount. Different embodiments define the amount by which the bit rate is increased differently. Examples of predefined amounts for increasing the current bit rate include 32 kbps, 64 kbps, among any number of other amounts for increasing the bit rate.

次に、プロセスは、規定の時間量が経過したかどうかを(1535において)判定する。異なる実施形態では時間量を異なるように規定するので、この規定の時間量は、1秒、2秒、5秒、又は他の任意の取りうる時間量でありうる。リモートデバイスが、(動作1530において)新たな増加したビットレートでローカル携帯デバイスから伝送されたデータ(例えば、オーディオ及びビデオ画像)を受信し、新たな増加したビットレートに基づいてネットワーク状態パラメータを決定するために、プロセス1500は、規定の時間量が経過するのを待つ。規定の時間量が経過していないとプロセス1500が判定した場合に、プロセス1500は、規定の時間量が経過するまで、動作1535に戻る。規定の時間量が経過したとプロセス1500が判定した場合に、プロセス1500は動作1510に戻る。プロセス1500の動作は、プロセス1500が終了するまで、上述したように1510から先に進む。   Next, the process determines (at 1535) whether a specified amount of time has elapsed. This amount of time may be one second, two seconds, five seconds, or any other possible amount of time, as different embodiments define the amount of time differently. The remote device receives data (eg, audio and video images) transmitted from the local mobile device at the new increased bit rate (at operation 1530) and determines a network state parameter based on the new increased bit rate. To do so, the process 1500 waits for a specified amount of time to elapse. If the process 1500 determines that the specified amount of time has not elapsed, the process 1500 returns to operation 1535 until the specified amount of time has elapsed. If the process 1500 determines that the specified amount of time has elapsed, the process 1500 returns to operation 1510. Operation of process 1500 proceeds from 1510 as described above until process 1500 ends.

プロセス1500が終了する場合に(すなわち、動作1515、1520又は1525の後)、テレビ会議のためのビットレートのセットアップは完了しており、最適なビットレートが決定されている。テレビ会議に利用可能な帯域幅はテレビ会議中に変わりうるので、一部の実施形態は、リモートデバイスから受信されたネットワーク状態パラメータの集合(すなわち、片道レイテンシ及び帯域幅推定ビットレート)に基づいてビットレートを調整し続ける。ビットレートを増加させることによって、テレビ会議中にビットレートが調整されうる。例えば、規定のしきい値量を超えて片道レイテンシが劣化したのでプロセス1500が終了し、テレビ会議中に片道レイテンシが改善したならば、一部の実施形態では、ビットレートが増加される。同様に、ビットレートが帯域幅推定ビットレートを超えたのでプロセス1500が終了し、テレビ会議中に、帯域幅推定ビットレートが増加したならば、一部の実施形態では、ビットレートが増加される。   When process 1500 ends (ie, after operations 1515, 1520 or 1525), the bit rate setup for the video conference has been completed and the optimal bit rate has been determined. Some embodiments are based on a set of network state parameters (ie, one-way latency and bandwidth estimation bit rate) received from the remote device, as the bandwidth available for the video conference may change during the video conference. Keep adjusting the bit rate. By increasing the bit rate, the bit rate can be adjusted during the video conference. For example, if the one-way latency has degraded beyond a specified threshold amount and the process 1500 ends and the one-way latency has improved during the video conference, in some embodiments the bit rate is increased. Similarly, if the bit rate has exceeded the bandwidth estimation bit rate, the process 1500 ends and during a video conference, if the bandwidth estimation bit rate increases, in some embodiments, the bit rate is increased. .

対照的に、ビットレートを減少させることによって、テレビ会議中にビットレートが調整されうる。例えば、規定のしきい値量を超えて片道レイテンシがテレビ会議中に劣化し続けるならば、一部の実施形態では、ビットレートが減少される。また、ビットレートがテレビ会議中に帯域幅推定ビットレートを超え続ける(例えば、帯域幅推定ビットレートが減少し続ける)ならば、一部の実施形態では、ビットレートが減少される。   In contrast, by reducing the bit rate, the bit rate may be adjusted during a video conference. For example, if one-way latency continues to degrade during a video conference beyond a specified threshold amount, in some embodiments, the bit rate is reduced. Also, if the bit rate continues to exceed the bandwidth estimate bit rate during the video conference (eg, the bandwidth estimate bit rate continues to decrease), in some embodiments, the bit rate is reduced.

さらに、プロセス1500の説明では、ビットレートを増加させるかどうかを判定するために片道レイテンシ及び帯域幅推定ビットレートを使用する。しかし、異なる実施形態では、任意の数のネットワーク状態パラメータが、ビットレートを増加させるかどうかを判定するために使用できることが当業者に理解されよう。例えば、ビットレートを増加させるかどうかの判定は、単にRTT遅延データ又はパケット損失データだけに基づくことができる。   Further, the description of process 1500 uses the one-way latency and bandwidth estimation bit rate to determine whether to increase the bit rate. However, those skilled in the art will appreciate that in different embodiments, any number of network state parameters can be used to determine whether to increase the bit rate. For example, the decision to increase the bit rate can be based solely on RTT delay data or packet loss data.

C.テレビ会議アーキテクチャ
上述のように、図16は、一部の実施形態のデュアルカメラ携帯デバイスのテレビ会議及び処理モジュール1600のためのソフトウェアアーキテクチャを概念的に示す。図示のように、テレビ会議及び処理モジュール1600は、クライアントアプリケーション1665と、テレビ会議モジュール1602と、メディア交換モジュール1620と、バッファ1625と、取り込み済画像処理ユニット(CIPU)ドライバ1630と、エンコーダドライバ1635と、デコーダドライバ1640とを含む。一部の実施形態では、バッファ1625は、デュアルカメラ携帯デバイスのディスプレイ1645に表示するためのビデオの画像を格納するフレームバッファである。
C. Video Conferencing Architecture As described above, FIG. 16 conceptually illustrates a software architecture for a video conferencing and processing module 1600 of a dual camera portable device of some embodiments. As shown, the video conferencing and processing module 1600 includes a client application 1665, a video conferencing module 1602, a media exchange module 1620, a buffer 1625, a captured image processing unit (CIPU) driver 1630, and an encoder driver 1635. , A decoder driver 1640. In some embodiments, buffer 1625 is a frame buffer that stores images of the video for display on display 1645 of the dual camera portable device.

一部の実施形態では、クライアントアプリケーション1665は、図9のテレビ会議クライアント945と同じである。上述のように、クライアントアプリケーション1665は、別のアプリケーションに統合されてもよいし、スタンドアロンアプリケーションとして実施されてもよい。クライアントアプリケーション1665は、テレビ会議アプリケーション、ボイスオーバーIP(VOIP)アプリケーション(例えば、スカイプ)、又はインスタントメッセージングアプリケーションなどのテレビ会議モジュール1602のテレビ会議機能を使用するアプリケーションであってもよい。   In some embodiments, client application 1665 is the same as video conference client 945 of FIG. As described above, the client application 1665 may be integrated into another application or may be implemented as a stand-alone application. The client application 1665 may be an application that uses the video conferencing functionality of the video conferencing module 1602, such as a video conferencing application, a voice over IP (VOIP) application (eg, Skype), or an instant messaging application.

一部の実施形態のクライアントアプリケーション1665は、会議を開始する命令及び会議を終了する命令などの命令をテレビ会議モジュール1602に送信し、テレビ会議モジュール1602から命令を受信し、命令をデュアルカメラ携帯デバイスのユーザからテレビ会議モジュール1602に経路制御し、デュアルカメラ携帯デバイスに表示されてユーザにアプリケーションとの対話を可能にするユーザインタフェースを生成する。   In some embodiments, the client application 1665 sends instructions to the video conferencing module 1602, receives instructions from the video conferencing module 1602, and sends the instructions to the dual camera portable device, such as instructions to start and end the conference. From the user to the video conferencing module 1602 to generate a user interface that is displayed on the dual camera portable device and allows the user to interact with the application.

D.テレビ会議マネージャ
図16に示すように、テレビ会議モジュール1602は、テレビ会議マネージャ1604と、画像処理マネージャ1608と、ネットワーキングマネージャ1614と、バッファ1606、1610、1612、1616及び1618とを含む。一部の実施形態では、テレビ会議モジュール1602は、図9に示されるテレビ会議モジュール925と同じであり、したがって、テレビ会議モジュール925に関して上述した同じ機能のうちの一部又は全部を実行する。
D. Video Conference Manager As shown in FIG. 16, the video conference module 1602 includes a video conference manager 1604, an image processing manager 1608, a networking manager 1614, and buffers 1606, 1610, 1612, 1616 and 1618. In some embodiments, video conferencing module 1602 is the same as video conferencing module 925 shown in FIG. 9, and thus performs some or all of the same functions described above with respect to video conferencing module 925.

一部の実施形態では、テレビ会議マネージャ1604は、テレビ会議が開始する際のテレビ会議モジュール1602の他のモジュールのうちの一部(例えば、画像処理マネージャ1608及びネットワーキングマネージャ1614)又は全部の初期化、テレビ会議中のテレビ会議モジュール1602の動作の制御、及びテレビ会議が終了した際のテレビ会議モジュール1602の他のモジュールの一部又は全部の動作の中止を担当する。   In some embodiments, video conferencing manager 1604 may initialize some (eg, image processing manager 1608 and networking manager 1614) or all of the other modules of video conferencing module 1602 when a video conference starts. , Controlling the operation of the video conference module 1602 during the video conference, and suspending the operation of some or all of the other modules of the video conference module 1602 when the video conference ends.

一部の実施形態のテレビ会議マネージャ1604は、テレビ会議で1つ以上のデバイスから受信された画像及びデュアルカメラ携帯デバイスに表示するためにデュアルカメラ携帯デバイスの両方のカメラのうちの1つによって取り込まれた画像も処理する。例えば、一部の実施形態のテレビ会議マネージャ1604は、テレビ会議に参加している別のデバイスから受信された復号済みの画像をバッファ1618から読み出し、CIPU1650によって処理された画像(すなわち、デュアルカメラ携帯デバイスによって取り込まれた画像)をバッファ1606から読み出す。一部の実施形態では、テレビ会議マネージャ1604はまた、デュアルカメラ携帯デバイスに画像を表示する前に、画像を拡大縮小し、合成する。すなわち、テレビ会議マネージャ1604は、一部の実施形態では、携帯デバイスに表示するPIPビュー又は他の合成ビューを生成する。一部の実施形態では、バッファ1606及び1618から読み出された画像を拡大縮小するが、他の実施形態では、単にバッファ1606及び1618のうちの一方から読み出された画像だけを拡大縮小する。   In some embodiments, the video conference manager 1604 captures images from one or more devices in a video conference and captures by one of both cameras of the dual camera mobile device for display on the dual camera mobile device. The processed image is also processed. For example, the video conferencing manager 1604 of some embodiments reads the decoded image received from another device participating in the video conference from the buffer 1618 and processes the image processed by the CIPU 1650 (ie, the dual camera handset). The image (image captured by the device) is read from the buffer 1606. In some embodiments, video conferencing manager 1604 also scales and composites the images before displaying them on a dual camera portable device. That is, the video conference manager 1604, in some embodiments, generates a PIP view or other composite view for display on the mobile device. In some embodiments, images read from buffers 1606 and 1618 are scaled, while other embodiments only scale images read from one of buffers 1606 and 1618.

図16は、テレビ会議モジュール1602の一部としてテレビ会議マネージャ1604を示しているが、テレビ会議マネージャ1604の一部の実施形態は、テレビ会議モジュール1602とは別個のコンポーネントとして実施される。したがって、単一のテレビ会議マネージャ1604は、いくつかのテレビ会議モジュール1602を管理及び制御するために使用されうる。例えば、一部の実施形態では、複数当事者による会議中に各当事者と対話するためにローカルデバイス上で別個のテレビ会議モジュールを実行し、ローカルデバイス上のこれらのテレビ会議モジュールのそれぞれは、1つのテレビ会議マネージャによって管理及び制御される。   Although FIG. 16 shows the video conference manager 1604 as part of the video conference module 1602, some embodiments of the video conference manager 1604 are implemented as separate components from the video conference module 1602. Accordingly, a single video conference manager 1604 may be used to manage and control several video conference modules 1602. For example, in some embodiments, during a multi-party conference, a separate video conferencing module runs on the local device to interact with each party, and each of these video conferencing modules on the local device has one Managed and controlled by the Video Conference Manager.

一部の実施形態の画像処理マネージャ1608がデュアルカメラ携帯デバイスのカメラによって取り込まれた画像を処理してから、画像がエンコーダ1655によって符号化される。例えば、画像処理マネージャ1608の一部の実施形態では、CIPU1650によって処理された画像に関する露出調整、焦点調整、パースペクティブ補正、ダイナミックレンジ調整及び画像サイズ変更のうちの1つ以上を実行する。一部の実施形態では、画像処理マネージャ1608は、テレビ会議で他のデバイスに伝送された符号化済みの画像のフレームレートを制御する。   After the image processing manager 1608 of some embodiments processes the image captured by the camera of the dual camera portable device, the image is encoded by the encoder 1655. For example, some embodiments of image processing manager 1608 perform one or more of exposure adjustment, focus adjustment, perspective correction, dynamic range adjustment, and image resizing on images processed by CIPU 1650. In some embodiments, the image processing manager 1608 controls the frame rate of encoded images transmitted to other devices in a video conference.

ネットワーキングマネージャ1614の一部の実施形態は、デュアルカメラ携帯デバイスとテレビ会議に参加している他のデバイスとの間の1つ以上の接続を管理する。例えば、一部の実施形態のネットワーキングマネージャ1614は、テレビ会議の開始時にデュアルカメラ携帯デバイスとテレビ会議の他のデバイスとの間の接続を確立し、テレビ会議の終了時にこれらの接続を切断する。   Some embodiments of the networking manager 1614 manage one or more connections between the dual camera portable device and other devices participating in the video conference. For example, the networking manager 1614 of some embodiments establishes connections between the dual camera portable device and other devices in the video conference at the start of the video conference and disconnects these connections at the end of the video conference.

テレビ会議中に、ネットワーキングマネージャ1614は、エンコーダ1655によって符号化された画像をテレビ会議の他のデバイスに伝送し、テレビ会議の他のデバイスから受信された画像を復号のためにデコーダ1660に経路制御する。一部の実施形態では、画像処理マネージャ1608ではなくネットワーキングマネージャ1614が、テレビ会議の他のデバイスに伝送された画像のフレームレートを制御する。例えば、ネットワーキングマネージャ1614の一部のこのような実施形態は、テレビ会議の他のデバイスに伝送されたと想定される符号化されたフレームの一部を破棄する(すなわち、伝送しない)ことによって、フレームレートを制御する。   During a videoconference, networking manager 1614 transmits images encoded by encoder 1655 to other devices in the videoconference and routes images received from other devices in the videoconference to decoder 1660 for decoding. I do. In some embodiments, networking manager 1614, rather than image processing manager 1608, controls the frame rate of images transmitted to other devices in the video conference. For example, such an embodiment of some of the networking managers 1614 may be configured to discard (i.e., do not transmit) some of the encoded frames that are assumed to have been transmitted to other devices in the videoconference, and Control the rate.

図示のように、一部の実施形態のメディア交換モジュール1620は、カメラソースモジュール1622と、ビデオ圧縮器モジュール1624と、ビデオ伸張器モジュール1626とを含む。メディア交換モジュール1620は、図3に示されるメディア交換モジュール310と同じであり、これについて、より詳細に説明する。カメラソースモジュール1622は、CIPUドライバ1630を通じてテレビ会議モジュール1602とCIPU1650との間のメッセージ及びメディアコンテンツを経路制御し、ビデオ圧縮器モジュール1624は、エンコーダドライバ1635を通じてテレビ会議モジュール1602とエンコーダ1655との間のメッセージ及びメディアコンテンツを経路制御し、ビデオ伸張器モジュール1626は、デコーダドライバ1640を通じてテレビ会議モジュール1602とデコーダ1660との間のメッセージ及びメディアコンテンツを経路制御する。一部の実施形態では、カメラソースモジュール1622の一部としてメディア交換モジュール310に含まれるTNRモジュール315(図16で不図示)を実施するが、他の実施形態では、ビデオ圧縮器モジュール1624の一部としてTNRモジュール315を実施する。   As shown, the media exchange module 1620 of some embodiments includes a camera source module 1622, a video compressor module 1624, and a video decompressor module 1626. The media exchange module 1620 is the same as the media exchange module 310 shown in FIG. 3 and will be described in more detail. Camera source module 1622 routes messages and media content between video conference module 1602 and CIPU 1650 through CIPU driver 1630, and video compressor module 1624 routes video conference module 1602 and encoder 1655 through encoder driver 1635. The video decompressor module 1626 routes messages and media content between the video conferencing module 1602 and the decoder 1660 through a decoder driver 1640. In some embodiments, a TNR module 315 (not shown in FIG. 16) included in the media exchange module 310 as part of the camera source module 1622, while in other embodiments, one of the video compressor modules 1624 is implemented. The TNR module 315 is implemented as a unit.

一部の実施形態では、CIPUドライバ1630及びエンコーダドライバ1635は、図3に示されるCIPUドライバ305及びエンコーダドライバ320と同じである。一部の実施形態のデコーダドライバ1640は、ビデオ伸張器モジュール1626とデコーダ1660との間の通信インタフェースとして機能する。このような実施形態では、デコーダ1660は、ネットワーキングマネージャ1614を通じてテレビ会議の他のデバイスから受信されビデオ伸張器モジュール1626を通じて経路制御された画像を復号する。画像が復号された後、画像は、デコーダドライバ1640及びビデオ伸張器モジュール1626を通じてテレビ会議モジュール1602に返送される。   In some embodiments, CIPU driver 1630 and encoder driver 1635 are the same as CIPU driver 305 and encoder driver 320 shown in FIG. The decoder driver 1640 in some embodiments functions as a communication interface between the video decompressor module 1626 and the decoder 1660. In such an embodiment, decoder 1660 decodes images received from other devices in the video conference through networking manager 1614 and routed through video decompressor module 1626. After the image is decoded, the image is sent back to video conferencing module 1602 through decoder driver 1640 and video decompressor module 1626.

テレビ会議中にビデオ処理を実行することに加えて、一部の実施形態のデュアルカメラ携帯デバイスのためのテレビ会議及び処理モジュール1600は、テレビ会議中にオーディオ処理動作も実行する。図17は、このようなソフトウェアアーキテクチャを示す。図示のように、テレビ会議及び処理モジュール1600は、(テレビ会議マネージャ1604と、画像処理マネージャ1608と、ネットワーキングマネージャ1614とを含む)テレビ会議モジュール1602と、メディア交換モジュール1620と、クライアントアプリケーション1665とを含む。図16に示されているテレビ会議及び処理モジュール1600の他のコンポーネント及びモジュールは、説明を簡略化するため、図17では省略されている。テレビ会議及び処理モジュール1600は、フレームバッファ1705及び1710と、オーディオ処理マネージャ1715と、オーディオドライバ1720とも含む。一部の実施形態では、オーディオ処理マネージャ1715は、別個のソフトウェアモジュールとして実施されるが、他の実施形態では、オーディオ処理マネージャ1715は、メディア交換モジュール1620の一部として実施される。   In addition to performing video processing during a video conference, the video conferencing and processing module 1600 for dual camera portable devices of some embodiments also performs audio processing operations during the video conference. FIG. 17 shows such a software architecture. As shown, the video conference and processing module 1600 includes a video conference module 1602 (including a video conference manager 1604, an image processing manager 1608, and a networking manager 1614), a media exchange module 1620, and a client application 1665. Including. Other components and modules of the video conference and processing module 1600 shown in FIG. 16 are omitted in FIG. 17 for simplicity. Video conferencing and processing module 1600 also includes frame buffers 1705 and 1710, an audio processing manager 1715, and an audio driver 1720. In some embodiments, audio processing manager 1715 is implemented as a separate software module, while in other embodiments, audio processing manager 1715 is implemented as part of media exchange module 1620.

オーディオ処理マネージャ1715は、テレビ会議において他のデバイスへの伝送のためにデュアルカメラ携帯デバイスによって取り込まれたオーディオデータを処理する。例えば、オーディオ処理マネージャ1715は、マイクロフォン1725によって取り込まれたオーディオデータを、オーディオドライバ1720を通じて受け取り、オーディオデータを符号化してから、他のデバイスへの伝送のために、符号化されたオーディオデータをバッファ1705に格納する。オーディオ処理マネージャ1715は、テレビ会議において他のデバイスによって取り込まれて他のデバイスから受信したオーディオデータも処理する。例えば、オーディオ処理マネージャ1715は、バッファ1710からオーディオデータを読み出し、このオーディオデータを復号し、その後、オーディオドライバ1720を通じてスピーカ1730に出力される。   The audio processing manager 1715 processes audio data captured by the dual camera portable device for transmission to other devices in a video conference. For example, audio processing manager 1715 may receive audio data captured by microphone 1725 through audio driver 1720, encode the audio data, and buffer the encoded audio data for transmission to another device. 1705. The audio processing manager 1715 also processes audio data captured by and received from other devices in a video conference. For example, the audio processing manager 1715 reads audio data from the buffer 1710, decodes the audio data, and then outputs the audio data to the speaker 1730 through the audio driver 1720.

一部の実施形態では、テレビ会議モジュール1602は、オーディオ処理マネージャ1715及びその関連バッファと共に、より大きな会議モジュールの一部である。複数参加者によるオーディオ会議が、ビデオコンテンツを交換することなく、いくつかのデバイス間で行われる場合に、このテレビ会議及び処理モジュール1600は、インターネットプロトコル(IP)層を介したオーディオの交換を容易にするために、ネットワーキングマネージャ1614及びオーディオ処理マネージャ1715のみを使用する。   In some embodiments, video conferencing module 1602 is part of a larger conferencing module, along with audio processing manager 1715 and its associated buffers. This video conferencing and processing module 1600 facilitates the exchange of audio over the Internet Protocol (IP) layer, where a multi-participant audio conference takes place between several devices without exchanging video content. Only the networking manager 1614 and the audio processing manager 1715 are used.

ここで、一部の実施形態のテレビ会議マネージャ1604の動作について、図18に関して説明する。図18は、図16に示されるテレビ会議マネージャ1604などの、一部の実施形態のテレビ会議マネージャによって実行されるプロセス1800を概念的に示す。これは、図9の管理層935によって実行されるのに等しくなりうる。一部の実施形態では、デュアルカメラ携帯デバイスのユーザが(例えば、デュアルカメラ携帯デバイスに表示されるユーザインタフェースを通じて)テレビ会議要求を承諾する場合に、又は別のデバイスのユーザが、デュアルカメラ携帯デバイスのユーザによって送信された要求を承諾する場合に、テレビ会議マネージャ1604はプロセス1800を実行する。   Here, the operation of the video conference manager 1604 according to some embodiments will be described with reference to FIG. FIG. 18 conceptually illustrates a process 1800 performed by a video conference manager of some embodiments, such as video conference manager 1604 shown in FIG. This may be equivalent to being performed by the management layer 935 of FIG. In some embodiments, when a user of a dual camera mobile device accepts a video conference request (eg, through a user interface displayed on the dual camera mobile device) or when a user of another device The video conferencing manager 1604 performs the process 1800 if it accepts the request sent by the other user.

プロセス1800は、テレビ会議を開始する命令を(1805において)受信することによって始まる。一部の実施形態では、命令は、クライアントアプリケーション1665から受信されるか、又はデュアルカメラ携帯デバイスに表示されるユーザインタフェースを通じてユーザから受信され、クライアントアプリケーション1665によってテレビ会議マネージャ1604に転送される。例えば、一部の実施形態では、デュアルカメラ携帯デバイスのユーザがテレビ会議要求を承諾した場合に、命令はユーザインタフェースを通じて受信され、クライアントアプリケーションによって転送される。一方、他のデバイスのユーザが、ローカルデバイスから送信された要求を承諾した場合に、一部の実施形態では、(初期要求を送信するために以前のユーザインタフェースとの対話はあってもよいが)ユーザインタフェースと対話することなく、クライアントアプリケーションから命令を受信する。   Process 1800 begins by receiving (at 1805) an instruction to start a video conference. In some embodiments, the instructions are received from a client application 1665 or from a user through a user interface displayed on a dual camera portable device, and transferred by the client application 1665 to a video conference manager 1604. For example, in some embodiments, if the user of the dual camera mobile device accepts the videoconference request, the instructions are received through the user interface and forwarded by the client application. On the other hand, if the user of the other device accepts the request sent from the local device, in some embodiments (although there may be interaction with the previous user interface to send the initial request) ) Receive instructions from the client application without interacting with the user interface.

次に、プロセス1800は、テレビ会議マネージャ1604と対話する第1モジュールを(1810において)初期化する。テレビ会議マネージャ1604と対話する一部の実施形態のモジュールは、CIPU1650、画像処理マネージャ1608、オーディオ処理マネージャ1715及びネットワーキングマネージャ1614を含む。   Next, the process 1800 initializes (at 1810) a first module that interacts with the video conference manager 1604. Modules of some embodiments that interact with the videoconference manager 1604 include a CIPU 1650, an image processing manager 1608, an audio processing manager 1715, and a networking manager 1614.

一部の実施形態では、CIPU1650を初期化することは、デュアルカメラ携帯デバイスの一方又は両方のカメラによって取り込まれた画像の処理を開始するようにCIPU1650に命令することを含む。一部の実施形態では、バッファ1610からの画像の読み出し並びに読み出された画像の処理及び符号化を開始するように画像処理マネージャ1608に命令することによって、画像処理マネージャ1608を初期化する。オーディオ処理マネージャ1715を初期化するため、一部の実施形態では、マイクロフォン1725によって取り込まれたオーディオデータの符号化及びスピーカ1730に出力するために(他のデバイスから受信されて)バッファ1710に格納されたオーディオデータの復号を始めるようにオーディオ処理マネージャ1715に命令する。一部の実施形態のネットワーキングマネージャ1614を初期化することは、テレビ会議において他のデバイスとのネットワーク接続を確立するようにネットワーキングマネージャ1614に命令することを含む。   In some embodiments, initializing CIPU 1650 includes instructing CIPU 1650 to begin processing images captured by one or both cameras of the dual camera portable device. In some embodiments, the image processing manager 1608 is initialized by instructing the image processing manager 1608 to begin reading images from the buffer 1610 and processing and encoding the read images. To initialize the audio processing manager 1715, in some embodiments, audio data captured by the microphone 1725 is stored in a buffer 1710 (received from another device) for encoding and output to a speaker 1730. The audio processing manager 1715 is instructed to start decoding the audio data. Initializing the networking manager 1614 in some embodiments includes instructing the networking manager 1614 to establish a network connection with another device in a video conference.

プロセス1800は、その後、初期化するべきモジュールが残されていないかどうかを(1815において)判定する。初期化するために残されているモジュールがある場合に、プロセス1800は、モジュールの別のものを初期化するために動作1810に戻る。必要なモジュールがすべて初期化された場合に、プロセス1800はデュアルカメラ携帯デバイス(すなわち、ローカル表示)に表示するための画像合成を(1820において)生成する。これらの合成画像は、以下に説明する、図65に示される画像(すなわち、PIP又は他の合成表示)を含んでもよく、ローカルデュアルカメラ携帯デバイスのカメラからの画像及びテレビ会議に参加している他のデバイスのカメラからの画像の種々の組み合わせを含みうる。   The process 1800 then determines (at 1815) whether there are any modules left to initialize. If there are modules left to initialize, the process 1800 returns to operation 1810 to initialize another of the modules. When all required modules have been initialized, process 1800 generates (at 1820) an image composition for display on a dual camera portable device (ie, a local display). These composite images may include the images shown in FIG. 65 (ie, a PIP or other composite display) described below and participate in a video conference with images from the camera of the local dual camera portable device. It may include various combinations of images from cameras of other devices.

次に、プロセス1800は、テレビ会議に変更がなされたかどうかを(1825において)判定する。一部の実施形態では、デュアルカメラ携帯デバイスに表示されたユーザインタフェースを用いたユーザとの対話を通じてテレビ会議への変更を受け取るが、他の実施形態では、ネットワーキングマネージャ1614(すなわち、遠隔制御)を通じて他のデバイスからのテレビ会議への変更を受信する。一部の実施形態では、テレビ会議設定への変更は、クライアントアプリケーション1665又はテレビ会議モジュール1602内の他のモジュールから受信されてもよい。テレビ会議設定は、ネットワーク状態の変化によって変化してもよい。   Next, the process 1800 determines (at 1825) whether a change has been made to the video conference. In some embodiments, changes to a video conference are received through interaction with a user using a user interface displayed on a dual camera portable device, while in other embodiments, through a networking manager 1614 (ie, remote control). Receive changes to video conferences from other devices. In some embodiments, changes to the video conferencing settings may be received from the client application 1665 or other modules within the video conferencing module 1602. Video conference settings may change due to changes in network conditions.

変更がなされた場合に、プロセス1800は、テレビ会議への変更がネットワーク設定への変更であるかどうかを(1830において)判定する。一部の実施形態では、変更はネットワーク設定への変更又は画像取り込み設定の変更のどちらかである。テレビ会議の変更がネットワーク設定への変更である場合に、プロセスは、ネットワーク設定を(1840において)変更し、それから動作1845に進む。一部の実施形態のネットワーク設定の変更は、画像が符号化されるビットレート又は画像が他のデバイスに伝送されるフレームレートの変更を含む。   If a change has been made, process 1800 determines (at 1830) whether the change to the video conference is a change to the network settings. In some embodiments, the change is either a change to network settings or a change to image capture settings. If the video conference change is a change to network settings, the process changes the network settings (at 1840) and then proceeds to operation 1845. Changing the network settings in some embodiments includes changing the bit rate at which images are encoded or the frame rate at which images are transmitted to other devices.

テレビ会議への変更がネットワーク設定への変更でない場合に、プロセス1800は、変更が画像取り込み設定への変更であると判定し、それから動作1835に進む。プロセス1800は、その後、画像取り込み設定への変更を(1835において)実行する。一部の実施形態では、画像取り込み設定への変更は、いくつかの設定変更の中でも特に、カメラの切り換え(すなわち、デュアルカメラ携帯デバイス上のどのカメラがビデオを取り込むかの切り換え)、焦点調整、露出調整、デュアルカメラ携帯デバイスの一方又は両方のカメラからの画像を表示するか又は表示しないか、及びデュアルカメラ携帯デバイスに表示される画像のズームイン又はズームアウトを含んでもよい。   If the change to the video conference is not a change to the network settings, the process 1800 determines that the change is a change to the image capture settings and then proceeds to operation 1835. Process 1800 then performs (at 1835) a change to the image capture settings. In some embodiments, changes to the image capture settings may include, among other settings changes, camera switching (ie, switching which camera on a dual camera handheld device captures video), focus adjustment, This may include adjusting the exposure, displaying or not displaying images from one or both cameras of the dual camera portable device, and zooming in or out of the image displayed on the dual camera portable device.

動作1845では、プロセス1800は、テレビ会議を終了するかどうかを判定する。テレビ会議が終了しないとプロセス1800が判定した場合に、プロセス1800は動作1820に戻る。テレビ会議が終了するとプロセス1800が判定した場合に、プロセス1800は終了する。プロセス1800の一部の実施形態は、プロセス1800がテレビ会議を終了する命令をクライアントアプリケーション1665から受け取った場合に(すなわち、ローカルデュアルカメラ携帯デバイスのユーザインタフェースを通じて受信された又はテレビ会議に参加している他のデバイスから受信された命令に起因して)、テレビ会議が終了すると判定する。   At operation 1845, process 1800 determines whether to end the video conference. If the process 1800 determines that the video conference has not ended, the process 1800 returns to operation 1820. If the process 1800 determines that the video conference ends, the process 1800 ends. Some embodiments of the process 1800 may be performed when the process 1800 receives an instruction from the client application 1665 to end the video conference (i.e., received through a user interface of a local dual camera mobile device or participating in a video conference). (Due to instructions received from other devices that are present).

一部の実施形態では、テレビ会議マネージャ1604は、テレビ会議が終了する場合に、プロセス1800に示されていない種々の動作を実行する。一部の実施形態では、画像の生成を止めるようにCIPU1650に命令し、テレビ会議中の他のデバイスとのネットワーク接続を切断するようにネットワーキングマネージャ1614に命令し、画像の生成及び符号化を止めるように画像処理マネージャ1608に命令する。   In some embodiments, video conference manager 1604 performs various operations not shown in process 1800 when the video conference ends. In some embodiments, the CIPU 1650 is instructed to stop generating images, the networking manager 1614 is disconnected to disconnect the network connection with other devices during the video conference, and stops generating and encoding images. To the image processing manager 1608 as follows.

E.時間ノイズ低減
一部の実施形態は、ビデオのノイズを低減するようにビデオ画像を処理するための個別の時間ノイズ低減モジュールを含む。一部の実施形態の時間ノイズ低減モジュールは、ビデオから望ましくないノイズを識別し消去するためにビデオシーケンスの後続の画像を比較する。
E. FIG. Temporal Noise Reduction Some embodiments include a separate temporal noise reduction module for processing video images to reduce video noise. The temporal noise reduction module of some embodiments compares subsequent images of the video sequence to identify and eliminate unwanted noise from the video.

図19は、一部の実施形態のこのような時間ノイズ低減(TNR)モジュール1900のためのソフトウェアアーキテクチャを概念的に示す。一部の実施形態では、TNRモジュール1900をアプリケーションの一部として(例えば、図3に示すメディア交換モジュールの一部として)実施するが、他の実施形態では、他のアプリケーションによって使用されるスタンドアロンアプリケーションとしてTNRモジュール1900を実施する。さらに他の実施形態では、デュアルカメラ携帯デバイス上で実行されるオペレーティングシステムの一部としてTNRモジュール1900を実施する。一部の実施形態では、TNRモジュール1900は、TNRモジュール1900の機能のうちの一部又は全部を他のアプリケーションに提供するAPI集合によって実施される。   FIG. 19 conceptually illustrates a software architecture for such a temporal noise reduction (TNR) module 1900 of some embodiments. In some embodiments, the TNR module 1900 is implemented as part of an application (eg, as part of the media exchange module shown in FIG. 3), but in other embodiments, a stand-alone application used by other applications. The TNR module 1900 is implemented. In yet another embodiment, the TNR module 1900 is implemented as part of an operating system running on a dual camera portable device. In some embodiments, the TNR module 1900 is implemented by a set of APIs that provide some or all of the functions of the TNR module 1900 to other applications.

図19に示すように、TNRモジュール1900は、TNRマネージャ1905と、差分モジュール1910、画素平均化モジュール1915と、動き履歴モジュール1920とを含む。図19は、3つのモジュール1910、1915及び1920を別個のモジュールとして示しているが、一部の実施形態では、以下で説明するように、これらのモジュールの機能を単一のモジュールで実施する。一部の実施形態のTNRモジュール1900は、入力画像、参照画像及び動き履歴を入力として受け取る。一部の実施形態では、入力画像は現在処理されている画像であり、参照画像はビデオシーケンス内の直前の画像であり、これと入力画像が比較される。TNRモジュール1900は、出力画像(入力画像の、ノイズが低減されたバージョン)及び出力動き履歴を出力する。   As shown in FIG. 19, the TNR module 1900 includes a TNR manager 1905, a difference module 1910, a pixel averaging module 1915, and a motion history module 1920. Although FIG. 19 shows the three modules 1910, 1915, and 1920 as separate modules, some embodiments implement the functions of these modules in a single module, as described below. The TNR module 1900 of some embodiments receives an input image, a reference image, and a motion history as inputs. In some embodiments, the input image is the image currently being processed and the reference image is the previous image in the video sequence, to which the input image is compared. The TNR module 1900 outputs an output image (a noise-reduced version of the input image) and an output motion history.

一部の実施形態のTNRマネージャ1905は、データの流れを、TNRモジュール1900を通るように向ける。図示のように、TNRマネージャ1905は、入力画像、参照画像及び動き履歴を受け取る。TNRマネージャ1905はまた、出力画像及び出力動き履歴を出力する。TNRマネージャ1905は、差分モジュール1910に入力画像及び参照画像を送り、差分モジュール1910から差分画像を受け取る。   The TNR manager 1905 of some embodiments directs the flow of data through the TNR module 1900. As shown, the TNR manager 1905 receives an input image, a reference image, and a motion history. The TNR manager 1905 also outputs an output image and output motion history. The TNR manager 1905 sends the input image and the reference image to the difference module 1910, and receives the difference image from the difference module 1910.

一部の実施形態では、差分モジュール1910は、TNRマネージャ1905から受け取ったデータを処理し、処理されたデータをTNRマネージャ1905に送る。図示のように、差分モジュール1910は、TNRマネージャ1905から入力画像及び参照画像を受け取る。一部の実施形態の差分モジュール1910は、ある画像の画素値を他の画像の画素値から減算することによって差分画像を生成する。差分画像はTNRマネージャ1905に送られる。一部の実施形態の差分画像は、直前の画像と比較して入力画像の変化した区画及び入力画像の同じままの区画を識別するために、2つの画像間の差分を示す。   In some embodiments, difference module 1910 processes data received from TNR manager 1905 and sends the processed data to TNR manager 1905. As shown, difference module 1910 receives an input image and a reference image from TNR manager 1905. The difference module 1910 of some embodiments generates a difference image by subtracting pixel values of one image from pixel values of another image. The difference image is sent to the TNR manager 1905. The difference image of some embodiments indicates a difference between the two images to identify a changed section of the input image and a remaining section of the input image as compared to a previous image.

TNRマネージャ1905はまた、画素平均化モジュール1915に入力画像及び参照画像を送る。図示のように、一部の実施形態では、画素平均化モジュール1915に動き履歴も送る。しかし、他の実施形態では、動き履歴を送信せずに、入力画像及び参照画像のみを送ってもよいだろう。いずれの実施形態においても、TNRマネージャ1905は、処理された画像を画素平均化モジュール1915から受け取る。   TNR manager 1905 also sends the input image and the reference image to pixel averaging module 1915. As shown, in some embodiments, the motion history is also sent to the pixel averaging module 1915. However, in other embodiments, only the input image and the reference image could be sent without sending the motion history. In either embodiment, the TNR manager 1905 receives the processed image from the pixel averaging module 1915.

一部の実施形態の画素平均化モジュール1915は、画像の特定の位置に対して入力画像及び参照画像から画素の平均を取るかどうかを判定するために、動き履歴を使用する。一部の実施形態では、動き履歴は、入力画像の各画素に対する確率値を含む。特定の確率値は、参照画像の対応する画素に対して入力画像の対応する画素が変化した(すなわち、動的画素である)確率を表す。例えば、入力画像の特定の画素の確率値が20であるならば、それは、参照画像の対応する画素に対して入力画像の特定の画素が変化した確率が20%であることを示す。別の例として、入力画像の特定の画素の確率値が0であるならば、それは、参照画像の対応する画素に対して入力画像の特定の画素が変化していない(すなわち、静的画素である)ことを示す。   The pixel averaging module 1915 of some embodiments uses the motion history to determine whether to average the pixels from the input image and the reference image for a particular location in the image. In some embodiments, the motion history includes a probability value for each pixel of the input image. The particular probability value represents the probability that the corresponding pixel of the input image has changed (ie, is a dynamic pixel) relative to the corresponding pixel of the reference image. For example, if the probability value of a particular pixel of the input image is 20, it indicates that the probability that the particular pixel of the input image has changed with respect to the corresponding pixel of the reference image is 20%. As another example, if the probability value of a particular pixel of the input image is 0, it means that the particular pixel of the input image has not changed relative to the corresponding pixel of the reference image (ie, a static pixel Yes).

異なる実施形態では、入力画像の確率値を異なるように格納する。一部の実施形態では、1つのデータ配列に入力画像の各画素の確率値を格納してもよいだろう。他の実施形態では、ビデオの画像の解像度と同じ寸法を有する行列(例えば、配列の配列)に確率値を格納してもよいだろう。例えば、ビデオの画像の解像度が320×240であるならば、行列も320×240である。   In different embodiments, the probability values of the input image are stored differently. In some embodiments, one data array may store the probability values for each pixel of the input image. In other embodiments, the probability values could be stored in a matrix (eg, an array of arrays) having the same dimensions as the resolution of the video image. For example, if the resolution of a video image is 320 × 240, the matrix is also 320 × 240.

画素平均化モジュール1915が入力画像及び参照画像に加えて動き履歴をTNRマネージャ1905から受け取る場合に、画素平均化モジュール1915は、入力画像の各画素の確率値を読み込む。入力画像の特定の画素に対する確率値が、規定のしきい値(例えば、5%、20%)を下回るならば、画素平均化モジュール1915は、特定の画素に動きがある可能性は低く、したがってその画素における画像間の差分はノイズに起因することがあるという前提に基づいて、参照画像の対応する画素値で特定の画素値を平均化する。   When the pixel averaging module 1915 receives the motion history from the TNR manager 1905 in addition to the input image and the reference image, the pixel averaging module 1915 reads the probability value of each pixel of the input image. If the probability value for a particular pixel in the input image is below a specified threshold (eg, 5%, 20%), the pixel averaging module 1915 is less likely to have motion for the particular pixel, and therefore Based on the assumption that the difference between images at that pixel may be due to noise, the specific pixel value is averaged with the corresponding pixel value of the reference image.

入力画像の特定の画素のための確率が、規定のしきい値を下回らないならば、画素平均化モジュール1915は、入力画像の特定の画素を変更しない(すなわち、その画素の画素値は、入力画像と同じのままである)。これは、特定の画素で動きの可能性が高く、したがって、画像間の差分はノイズの結果でない可能性が高いからである。一部の実施形態では、動き履歴が画素平均化モジュール1915に送られない場合に、画素平均化モジュール1915は、参照画像の対応する画素で入力画像の各画素を平均化する。画素平均化モジュール1915によって出力されTNRマネージャ1905に送られる処理された画像は、平均化されなかったあらゆる画素のための入力画像画素値及び画素平均化モジュール1915によって平均化されたあらゆる画素ための平均化された画素値を含む。   If the probability for a particular pixel of the input image does not fall below a specified threshold, the pixel averaging module 1915 does not change the particular pixel of the input image (ie, the pixel value of that pixel is Remains the same as the image). This is because there is a high likelihood of motion at a particular pixel, and therefore the differences between the images are likely not to be the result of noise. In some embodiments, if the motion history is not sent to the pixel averaging module 1915, the pixel averaging module 1915 averages each pixel of the input image with the corresponding pixel of the reference image. The processed image output by the pixel averaging module 1915 and sent to the TNR manager 1905 is the input image pixel value for every pixel that was not averaged and the average for every pixel that was averaged by the pixel averaging module 1915. Contains the converted pixel values.

一部の実施形態では、動き履歴モジュール1920は、TNRマネージャ1905から受信されたデータを処理し、結果データをTNRマネージャ1905に返送する。一部の実施形態の動き履歴モジュール1920は、TNRマネージャ1905から入力画像及び動き履歴を受け取る。一部の実施形態では、次の入力画像のための画素平均化に使用されうる新たな動き履歴(すなわち、確率値の集合)を生成するために、ベイズ推定器にこのデータを入力する。他の実施形態では、他の推定器を使用して新たな動き履歴を生成する。   In some embodiments, motion history module 1920 processes data received from TNR manager 1905 and returns result data to TNR manager 1905. The motion history module 1920 of some embodiments receives input images and motion history from the TNR manager 1905. In some embodiments, this data is input to a Bayesian estimator to generate a new motion history (ie, a set of probability values) that can be used for pixel averaging for the next input image. In other embodiments, another estimator is used to generate a new motion history.

ここで、TNRモジュール1900の動作について、図20に関して説明する。この図は、ビデオの画像の時間ノイズを低減するための一部の実施形態のプロセス2000を概念的に示す。プロセス2000は、TNRマネージャ1905が入力画像、参照画像及び動き履歴を(2005において)受け取ることによって開始する。入力画像は、ノイズ低減のために現在処理されている画像である。一部の実施形態では、参照画像は、CIPUから受け取られたビデオの画像のシーケンスの直前の画像である。しかし、他の実施形態では、参照画像は、直前の入力画像の処理から生成された出力画像(すなわち、TNRモジュール1900の出力)である。動き履歴は、直前の入力画像の処理から生成された出力動き履歴である。   Here, the operation of the TNR module 1900 will be described with reference to FIG. This diagram conceptually illustrates a process 2000 of some embodiments for reducing temporal noise in a video image. Process 2000 begins with TNR manager 1905 receiving (at 2005) an input image, a reference image, and a motion history. The input image is the image currently being processed for noise reduction. In some embodiments, the reference image is the image immediately preceding the sequence of images of the video received from the CIPU. However, in other embodiments, the reference image is an output image generated from processing of the immediately preceding input image (ie, the output of TNR module 1900). The motion history is an output motion history generated from the processing of the immediately preceding input image.

入力画像がビデオの第1画像である場合に、一部の実施形態のTNRモジュール1900は、第1画像を処理しない(すなわち、第1画像にTNRを適用しない)。言い換えれば、TNRマネージャ1905は、第1画像を受け取り、単に第1画像を出力するだけである。他の実施形態では、入力画像がビデオの第1画像である場合に、第1画像は、入力画像及び参照画像として使用され、TNRモジュール1900は、以下で説明するように画像を処理する。さらに、入力画像がビデオの第1画像である場合に、動き履歴は空(例えば、ヌル、全ゼロなど)であり、TNRマネージャ1905は、単に空の動き履歴を出力動き履歴として出力するだけである。   If the input image is the first image of a video, the TNR module 1900 of some embodiments does not process the first image (ie, does not apply a TNR to the first image). In other words, the TNR manager 1905 receives the first image and simply outputs the first image. In another embodiment, if the input image is the first image of a video, the first image is used as the input image and the reference image, and the TNR module 1900 processes the image as described below. Further, if the input image is the first image of a video, the motion history is empty (eg, null, all zeros, etc.), and the TNR manager 1905 simply outputs the empty motion history as the output motion history. is there.

TNRマネージャ1905は、その後、入力画像が静的であるかどうかを(2010において)判定する。この判定を行うために、一部の実施形態では、差分モジュール1910に入力画像及び参照画像を送り、差分モジュール1910から差分画像を受け取る。2つの画像間の差分が、規定のしきい値(例えば、5%の差分、10%の差分など)を下回る場合に、一部の実施形態では、入力画像を静的として分類する。   TNR manager 1905 then determines (at 2010) whether the input image is static. To make this determination, in some embodiments, the input image and the reference image are sent to the difference module 1910, and the difference image is received from the difference module 1910. If the difference between the two images is below a specified threshold (eg, 5% difference, 10% difference, etc.), some embodiments classify the input image as static.

入力画像が静的画像である場合に、TNRマネージャ1905は、静的画像からのノイズを低減させる目的で、参照画像の画素で入力画像の画素を(2015において)平均化するために、入力画像及び参照画像を画素平均化モジュール1915に送る。プロセスはその後2040に進み、これについては以下で説明する。   If the input image is a static image, the TNR manager 1905 may use the input image to average (at 2015) the pixels of the input image with the pixels of the reference image in order to reduce noise from the static image. And the reference image to the pixel averaging module 1915. The process then proceeds to 2040, which is described below.

入力画像が静的画像でない場合に、TNRマネージャは、入力画像、参照画像及び動き履歴を画素平均化モジュール1915に処理のために送る。画素平均化モジュール1915は、入力画像の画素を(2020において)選択する。上述のように、画素平均化モジュール1915は、動き履歴を使用して、画素の動きの確率が特定のしきい値を下回るかどうかを(2025において)判定する。   If the input image is not a static image, the TNR manager sends the input image, the reference image, and the motion history to the pixel averaging module 1915 for processing. Pixel averaging module 1915 selects (at 2020) pixels of the input image. As described above, the pixel averaging module 1915 uses the motion history to determine (at 2025) whether the probability of pixel motion is below a certain threshold.

選択された画素の確率が特定のしきい値を下回るならば、画素平均化モジュール1915は、参照画像の対応する画素で入力画像の画素を(2030において)平均化する。そうでないならば、画素は平均化されず、その特定の画素において、出力画像は入力画像と同じである。画素平均化モジュール1915は、その後、選択されていない画素が入力画像に残っているかどうかを(2035において)判定する。いずれかの画素が処理されていないならば、プロセスは動作2020に戻り、次の画素を選択する。画素平均化モジュール1915は、すべての画素が評価されるまで、動作2020〜2030を実行する。   If the probability of the selected pixel is below a certain threshold, the pixel averaging module 1915 averages (at 2030) the pixels of the input image with the corresponding pixels of the reference image. Otherwise, the pixels are not averaged and at that particular pixel, the output image is the same as the input image. Pixel averaging module 1915 then determines (at 2035) whether unselected pixels remain in the input image. If any pixels have not been processed, the process returns to operation 2020 and selects the next pixel. Pixel averaging module 1915 performs operations 2020-2030 until all pixels have been evaluated.

プロセスは、その後、動き履歴を(2040において)更新する。図19に示し、上述したように、動き履歴モジュール1920は、入力画像に基づいて動き履歴を更新する。画素平均化モジュールからの処理済みの画像と共に、新たな動き履歴がTNRマネージャによって出力される。   The process then updates (at 2040) the motion history. As shown in FIG. 19 and described above, the motion history module 1920 updates the motion history based on the input image. A new motion history is output by the TNR manager along with the processed image from the pixel averaging module.

F.画像処理マネージャ及びエンコーダ
一部の実施形態では、CIPU及び/又はCIPUドライバによって実行される時間ノイズ低減動作及び画像処理動作に加えて、さまざまな画像処理動作をテレビ会議モジュール925の画像処理層930において実行する。これらの画像処理動作は、いくつかある中でも特に、露出調整、焦点調整、パースペクティブ補正、ダイナミックレンジ調整及び画像サイズ変更を含みうる。
F. Image Processing Manager and Encoder In some embodiments, in addition to the temporal noise reduction and image processing operations performed by the CIPU and / or CIPU driver, various image processing operations are performed in the image processing layer 930 of the videoconferencing module 925. Execute. These image processing operations may include, among other things, exposure adjustment, focus adjustment, perspective correction, dynamic range adjustment, and image resizing.

図21は、このような画像処理動作を実行するためのプロセス2100を概念的に示す。一部の実施形態では、プロセス2100の動作のうちの一部又は全部は、図16の画像処理マネージャ1608及びエンコーダドライバ1635の組み合わせによって実行される。このような実施形態のうちの一部では、画像処理マネージャ1608は、画素ベースの処理(例えば、サイズ変更、ダイナミックレンジ調整、パースペクティブ補正など)を実行する。一部の実施形態では、テレビ会議に参加している別のデバイスに伝送されるべき画像に対するプロセス2100をテレビ会議中に実行する。   FIG. 21 conceptually illustrates a process 2100 for performing such an image processing operation. In some embodiments, some or all of the operations of process 2100 are performed by a combination of image processing manager 1608 and encoder driver 1635 of FIG. In some of such embodiments, image processing manager 1608 performs pixel-based processing (eg, resizing, dynamic range adjustment, perspective correction, etc.). In some embodiments, the process 2100 for images to be transmitted to another device participating in the video conference is performed during the video conference.

ここで、プロセス2100について、図16に関して説明する。プロセスは、バッファ1606から画像を(2105において)読み出すことによって開始する。一部の実施形態では、読み出される画像は、ビデオの画像(すなわち、画像シーケンス内の画像)である。このビデオは、プロセス2100が実行されるデバイスのカメラによって取り込まれていてもよい。   Here, the process 2100 will be described with reference to FIG. The process begins by reading an image from buffer 1606 (at 2105). In some embodiments, the image read is an image of a video (ie, an image in an image sequence). This video may have been captured by the camera of the device on which process 2100 is performed.

次に、プロセス2100は、読み出された画像に対して露出調整を(2110において)実行する。一部の実施形態では、デュアルカメラ携帯デバイスに表示されるユーザインタフェースを通じて露出調整を実行する。図22は、このような実施形態の例示的な露出調整動作を示す。   Next, the process 2100 performs (at 2110) an exposure adjustment on the read image. In some embodiments, the exposure adjustment is performed through a user interface displayed on the dual camera portable device. FIG. 22 illustrates an exemplary exposure adjustment operation of such an embodiment.

この図は、露出調整動作を、デバイス2200のUI2205の3つの段階2210、2215及び2220に関して示す。第1段階2210は、表示域2225と表示域1155とを含むUI2205を示す。図示のように、表示域2225は、太陽と、顔及び身体の色が暗い男性との画像2230を表示する。顔及び身体の色が暗いことは、男性が適切に露出されていないことを示す。画像2230は、デバイス2200のカメラによって取り込まれたビデオ画像でありうるだろう。図示のように、表示域1155は、テレビ会議を終了させるために選択可能UI項目2250を含む。一部の実施形態では、表示域1155のレイアウトは、上述した図12の表示域1155のレイアウトと同じである。   This figure illustrates the exposure adjustment operation with respect to three stages 2210, 2215 and 2220 of the UI 2205 of the device 2200. The first stage 2210 shows a UI 2205 that includes a display area 2225 and a display area 1155. As shown, the display area 2225 displays an image 2230 of the sun and a man with darker face and body color. Darker face and body colors indicate that the male is not properly exposed. Image 2230 could be a video image captured by the camera of device 2200. As shown, display area 1155 includes a selectable UI item 2250 to end the video conference. In some embodiments, the layout of display area 1155 is the same as the layout of display area 1155 of FIG. 12 described above.

第2段階2215は、デバイス2200のユーザが表示域2225のエリアを選択することによって露出調整動作を始めることを示す。この例では、選択は、表示域2225内の任意の位置に指2235を置くことによってなされる。一部の実施形態では、ユーザは、取りうる画像設定調整のメニューから露出調整を選択する。   The second step 2215 indicates that the user of the device 2200 initiates an exposure adjustment operation by selecting an area of the display area 2225. In this example, the selection is made by placing finger 2235 at any position within display area 2225. In some embodiments, the user selects an exposure adjustment from a menu of possible image setting adjustments.

第3段階2220は、露出調整動作が完了した後の男性の画像2240を示す。図示のように、画像2240は画像2230と同様であるが、画像2240の男性が適切に露出されている。一部の実施形態では、適切に露出された画像は、不適切に露出された画像の後に取り込まれた画像である。第2段階2215で始められた露出調整動作は、デバイス2200のカメラによって取り込まれた後続の画像の露出を調整する。   The third stage 2220 shows the male image 2240 after the exposure adjustment operation has been completed. As shown, image 2240 is similar to image 2230, except that the men in image 2240 are properly exposed. In some embodiments, a properly exposed image is an image captured after an improperly exposed image. The exposure adjustment operation initiated in the second step 2215 adjusts the exposure of subsequent images captured by the camera of device 2200.

図21に戻ると、プロセス2100は、次に、画像に対して焦点調整を(2115において)実行する。一部の実施形態では、デュアルカメラ携帯デバイスに表示されるユーザインタフェースを通じて焦点調整を実行する。図23は、このような焦点調整動作の一例を概念的に示す。   Returning to FIG. 21, process 2100 then performs (at 2115) a focus adjustment on the image. In some embodiments, the focus adjustment is performed through a user interface displayed on the dual camera portable device. FIG. 23 conceptually shows an example of such a focus adjustment operation.

図23は、焦点調整動作を、デバイス2300のUI2305の3つの異なる段階2310、2315及び2320に関して示す。第1段階2310は、表示域2325と表示域1155とを含むUI2305を示す。表示域2325は、デバイス2300のカメラによって取り込まれた男性の不鮮明な画像2330を提示する。ぼやけていることは、男性の画像2330の焦点がずれていることを示す。すなわち、男性の画像2330がカメラによって取り込まれた際に、カメラのレンズが、男性にフォーカスを合わせていなかった。また、画像2330は、デバイス2300のカメラによって取り込まれたビデオ画像でありうる。図示のように、表示域1155は、テレビ会議を終了させるために選択可能UI項目2350を含む。一部の実施形態では、表示域1155のレイアウトは、上述した図12の表示域1155のレイアウトと同じである。   FIG. 23 illustrates the focus adjustment operation with respect to three different stages 2310, 2315 and 2320 of the UI 2305 of the device 2300. The first stage 2310 shows a UI 2305 that includes a display area 2325 and a display area 1155. Display area 2325 presents a blurred image 2330 of the male captured by the camera of device 2300. Blurring indicates that the male image 2330 is out of focus. That is, when the male image 2330 was captured by the camera, the camera lens was not focused on the male. Image 2330 may also be a video image captured by the camera of device 2300. As shown, display area 1155 includes a selectable UI item 2350 to end the video conference. In some embodiments, the layout of display area 1155 is the same as the layout of display area 1155 of FIG. 12 described above.

第2段階2315は、デバイス2300のユーザが表示域2325のエリアを選択することによって焦点調整動作を始めることを示す。この例では、選択は、表示域2325内の任意の位置に指2335を置くことによってなされる。一部の実施形態では、ユーザは、取りうる画像設定調整のメニューから焦点調整を選択する。   The second stage 2315 shows that the user of the device 2300 starts the focus adjustment operation by selecting an area of the display area 2325. In this example, the selection is made by placing finger 2335 at an arbitrary position in display area 2325. In some embodiments, the user selects focus adjustment from a menu of possible image setting adjustments.

第3段階2320は、焦点調整動作が完了した後の男性の画像2340を示す。図示のように、画像2340は画像2330と同じであるが、画像2340の男性がより鮮明に表示される。このことは、カメラのレンズが適切に男性にフォーカスを合わせていることを示す。一部の実施形態では、適切にフォーカスが合わされた画像は、不適切にフォーカスが合わされた画像の後に取り込まれた画像である。第2段階2315で始められた焦点調整動作は、デバイス2300のカメラによって取り込まれた後続の画像のフォーカスを調整する。   The third stage 2320 shows the male image 2340 after the focus adjustment operation has been completed. As shown, image 2340 is the same as image 2330, but the men in image 2340 are displayed more clearly. This indicates that the camera lens is properly focused on the male. In some embodiments, a properly focused image is an image captured after an improperly focused image. The focus adjustment operation, initiated in the second step 2315, adjusts the focus of subsequent images captured by the camera of device 2300.

図21に戻ると、プロセス2100は、画像に対して画像サイズ変更を(2120において)実行する。一部の実施形態では、画像を符号化するために使用されるビット数を低減させる(すなわち、ビットレートを低下させる)目的で、画像に対して画像サイズ変更を実行する。一部の実施形態では、プロセス2100は、以下で図26に関して説明するように、画像サイズ変更を実行する。   Returning to FIG. 21, process 2100 performs (at 2120) an image resize on the image. In some embodiments, image resizing is performed on the image in order to reduce the number of bits used to encode the image (ie, reduce the bit rate). In some embodiments, process 2100 performs image resizing, as described below with respect to FIG.

プロセス2100は、次に、画像に対してパースペクティブ補正を(2125において)実行する。一部の実施形態では、プロセス2100は、以下で図24で説明するようにパースペクティブ補正を実行する。このようなパースペクティブ補正は、デュアルカメラ携帯デバイスの向き及び移動を識別する1つ以上の加速度計及び/又はジャイロスコープセンサによって取得されたデータを使用することを含む。このデータは、その後、ずれているパースペクティブを補正する目的で画像を変更するために使用される。   Process 2100 then performs a perspective correction (at 2125) on the image. In some embodiments, process 2100 performs perspective correction as described below in FIG. Such perspective corrections include using data acquired by one or more accelerometers and / or gyroscope sensors that identify the orientation and movement of the dual camera portable device. This data is then used to modify the image in order to correct for the misaligned perspective.

パースペクティブ補正が画像に対して実行された後、プロセス2100は、画像のダイナミックレンジを(2130において)調整する。一部の実施形態では、画像のダイナミックレンジとは、画像の各画素が有しうる取りうる値の範囲である。例えば、0〜255のダイナミックレンジを有する画像は、0〜128の範囲又は他の任意の範囲の値に調整されうる。画像のダイナミックレンジを調整することによって、画像を符号化するために使用されるビット量を低減させ(すなわち、ビットレートを低下させ)、それによって、画像を平滑化できる。   After perspective correction has been performed on the image, process 2100 adjusts (at 2130) the dynamic range of the image. In some embodiments, the dynamic range of an image is the range of possible values that each pixel of the image can have. For example, an image having a dynamic range of 0 to 255 may be adjusted to a value in the range of 0 to 128 or any other range. By adjusting the dynamic range of the image, the amount of bits used to encode the image may be reduced (ie, the bit rate may be reduced), thereby smoothing the image.

画像のダイナミックレンジの調整は、種々の他の目的に使用されることもできる。1つの目的は、画像ノイズを低減させることである(例えば、画像はノイズの多いカメラセンサによって取り込まれた)。ノイズを低減させるため、黒レベルがより明るい黒を含む(すなわち、濃淡を調整する(crush blacks))ように再定義されるように画像のダイナミックレンジが調整される。このようにして、画像のノイズが低減される。ダイナミックレンジ調整の別の目的は、画像の質を向上させるために1つ以上の色又は色の範囲を調整することである。例えば、一部の実施形態では、前面カメラによって取り込まれた画像が人の顔の画像であると想定してもよい。したがって、画像のダイナミックレンジは、人の頬をバラ色/よりバラ色に表示させるために赤色及びピンク色を増加させるように調整されうる。ダイナミックレンジ調整動作は、他の目的にも使用されうる。   Adjusting the dynamic range of an image can also be used for various other purposes. One purpose is to reduce image noise (eg, the image was captured by a noisy camera sensor). To reduce noise, the dynamic range of the image is adjusted so that the black level is redefined to include lighter black (ie, crush blacks). In this way, image noise is reduced. Another purpose of the dynamic range adjustment is to adjust one or more colors or color ranges to improve image quality. For example, in some embodiments, the image captured by the front camera may be assumed to be an image of a human face. Therefore, the dynamic range of the image can be adjusted to increase the red and pink colors to make the human cheek appear rosy / more rosy. The dynamic range adjustment operation can be used for other purposes.

最後に、プロセス2100は、画像を符号化するために使用される1つ以上のレートコントローラパラメータを(2135において)決定する。このようなレートコントローラパラメータは、一部の実施形態では、量子化パラメータ及びフレームタイプ(例えば、P(predictive)、B(bi-directional)、I(intra-coded))を含みうる。その後、プロセスが終了する。   Finally, the process 2100 determines (at 2135) one or more rate controller parameters used to encode the image. Such rate controller parameters may include, in some embodiments, quantization parameters and frame types (eg, P (predictive), B (bi-directional), I (intra-coded)). Thereafter, the process ends.

プロセス2100の種々の動作は、特定の順序で実行されるように示されているが、これらの動作(露出調整、焦点調整、パースペクティブ補正など)の多くは、任意の順序で実行でき、互いに依存しないことが当業者には理解されよう。すなわち、一部の実施形態のプロセスは、露出調整の前に焦点調整を実行することもできるし、図21に示されるプロセスと同様の変更を実行することもできる。   Although various operations of process 2100 are shown to be performed in a particular order, many of these operations (exposure adjustment, focus adjustment, perspective correction, etc.) can be performed in any order and are dependent on each other. It will be understood by those skilled in the art that this is not the case. That is, the process of some embodiments may perform focus adjustment prior to exposure adjustment, or may perform similar changes as the process illustrated in FIG.

1.パースペクティブ補正
上述のように、一部の実施形態では、画像を表示又は送信する前に、画像に対してパースペクティブ補正を実行する。いくつかの場合では、デュアルカメラ携帯デバイス上のカメラのうちの1つ以上は、その被写体に適切に配向されず、その被写体は、未補正の画像では歪んで見える。パースペクティブ補正は、どのようにして画像内の物体が人に見えるのかを画像が密接に反映するように画像を処理するために使用されうる。
1. Perspective Correction As described above, some embodiments perform a perspective correction on an image before displaying or transmitting the image. In some cases, one or more of the cameras on the dual camera portable device are not properly oriented to the subject, and the subject appears distorted in the uncorrected image. Perspective correction can be used to process an image so that the image closely reflects how objects in the image are visible to humans.

図24は、図16に示されるプロセスなどの、一部の実施形態の画像処理マネージャによって実行されるパースペクティブ補正プロセス2400を概念的に示す。一部の実施形態のプロセス2400は、図9に示される(画像処理マネージャ1608を含むことができる)画像処理層930によって実行される。一部の実施形態では、画像を表示又は伝送する前に最近取り込まれたビデオ画像のパースペクティブを補正するために、プロセス2400をプロセス2100の動作2125において実行する。   FIG. 24 conceptually illustrates a perspective correction process 2400 performed by the image processing manager of some embodiments, such as the process shown in FIG. Process 2400 of some embodiments is performed by image processing layer 930 (which may include image processing manager 1608) shown in FIG. In some embodiments, process 2400 is performed in operation 2125 of process 2100 to correct the perspective of a recently captured video image before displaying or transmitting the image.

プロセス2400は、加速度計センサからデータを(2405において)受信することによって開始し、加速度計センサは、一部の実施形態ではデュアルカメラ携帯デバイスの一部である。一部の実施形態の加速度計センサは、デバイスの速度の変化率(すなわち、デバイスの加速度)を1つ以上の軸に沿って測定する。プロセスは、ジャイロスコープセンサからもデータを(2410において)受信し、ジャイロスコープセンサも、一部の実施形態ではデュアルカメラ携帯デバイスの一部であってもよい。一部の実施形態のジャイロスコープセンサ及び加速度計センサは、個別に使用されてもよいし、デュアルカメラ携帯デバイスの向きを識別するために組み合わせて使用されてもよい。   Process 2400 begins by receiving data (at 2405) from an accelerometer sensor, which in some embodiments is part of a dual camera portable device. In some embodiments, the accelerometer sensor measures the rate of change of the speed of the device (ie, the acceleration of the device) along one or more axes. The process also receives (at 2410) data from the gyroscope sensor, which may also be part of a dual camera portable device in some embodiments. The gyroscope sensor and accelerometer sensor of some embodiments may be used separately or in combination to identify the orientation of a dual camera portable device.

次に、プロセス2400は、加速度計センサ及びジャイロスコープセンサから得られたデータに基づいて実行するパースペクティブ補正量を(2415において)決定する。一般に、向きがさらに軸からはずれている場合に、最適な画像を生成するために、より多くのパースペクティブ補正が必要とされる。一部の実施形態では、デバイスの向きに基づいてパースペクティブ補正量を表す歪み(warp)パラメータを算出する。   Next, the process 2400 determines (at 2415) the amount of perspective correction to make based on the data obtained from the accelerometer and gyroscope sensors. Generally, when the orientation is further off-axis, more perspective correction is needed to generate an optimal image. In some embodiments, a warp parameter representing a perspective correction amount is calculated based on a device orientation.

実行するパースペクティブ補正量を決定した後、プロセス2400は、デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を(2420において)受信する。このプロセスは、カメラによって取り込まれたビデオシーケンスの各画像に対して実行されうる。一部の実施形態では、デュアルカメラ携帯デバイス上の2つのカメラのそれぞれから到着する画像のために別個の算出を実行しうる。   After determining the amount of perspective correction to perform, process 2400 receives (at 2420) an image captured by a camera of the dual camera portable device. This process may be performed for each image of the video sequence captured by the camera. In some embodiments, separate calculations may be performed for images arriving from each of the two cameras on the dual camera portable device.

プロセスは、その後、決定されたパースペクティブ補正量に基づいて画像を(2425において)変更する。一部の実施形態では、パースペクティブ補正量の歪みパラメータ又は他の表記に加えて、ベースライン画像又は他の情報(例えば、どの補正が実行されるべきかに関してユーザが入力した点)も使用する。画像を変更した後、プロセス2400は終了する。   The process then modifies (at 2425) the image based on the determined perspective correction amount. In some embodiments, in addition to the distortion parameter or other notation of the perspective correction amount, a baseline image or other information (eg, a point entered by a user as to which correction is to be performed) is also used. After changing the image, process 2400 ends.

図25は、一部の実施形態の例示的な画像処理動作を概念的に示す。この図は、パースペクティブ補正を使用しない第1画像処理モジュール2520によって実行される第1画像処理動作2505と、パースペクティブ補正を使用する第2画像処理モジュール2565によって実行される第2画像処理動作2550とを示す。   FIG. 25 conceptually illustrates an exemplary image processing operation of some embodiments. This figure illustrates a first image processing operation 2505 performed by a first image processing module 2520 that does not use perspective correction, and a second image processing operation 2550 performed by a second image processing module 2565 that uses perspective correction. Show.

図示のように、第1画像処理動作2505は、ブロックに向かってある角度で下方向を見る大気遠近法からブロック2515の第1画像2510に対して実行される。そのパースペクティブから、ブロック2515の上部はブロックの下部よりも近い。したがって、ブロック2515は、第1画像2510を取り込んだカメラの方に傾くように見える。図25は、第1画像処理モジュール2520による処理の後の処理済み第1画像2525も示す。図示のように、処理された第1画像2525のブロック2515は、第1画像処理モジュール2520がパースペクティブ補正を実行しなかったので、同じ後処理に見える。   As shown, a first image processing operation 2505 is performed on the first image 2510 of block 2515 from atmospheric perspective looking down at an angle toward the block. From that perspective, the top of block 2515 is closer than the bottom of the block. Thus, block 2515 appears to tilt toward the camera that captured the first image 2510. FIG. 25 also shows the processed first image 2525 after processing by the first image processing module 2520. As shown, block 2515 of processed first image 2525 appears to be the same post-processing because first image processing module 2520 did not perform a perspective correction.

第2画像処理動作2550は、ブロック2560の第2画像2555に対して実行される。ブロック2560は、第1画像2510のブロック2515と同じである。図25は、第2画像処理モジュール2565のパースペクティブコレクタ2570による第2画像2555の処理の後の処理済み第2画像2575も示す。パースペクティブコレクタ2570は、第2画像2555のパースペクティブを補正するためにプロセス2400を使用してもよい。第2画像2555を取り込んだカメラが下向きの角度で傾斜していることを示す加速度計及びジャイロスコープからのデータに基づいて(及び、場合によっては他のデータに基づいて)、パースペクティブコレクタ2570は、処理済みの第2画像2575上でブロックがまっすぐに表示されるように見えるように、第2画像を補正できる。   The second image processing operation 2550 is performed on the second image 2555 of block 2560. Block 2560 is the same as block 2515 of first image 2510. FIG. 25 also shows a processed second image 2575 after processing of the second image 2555 by the perspective collector 2570 of the second image processing module 2565. Perspective collector 2570 may use process 2400 to correct the perspective of second image 2555. Based on data from the accelerometer and gyroscope indicating that the camera that captured the second image 2555 is tilted at a downward angle (and possibly based on other data), the perspective collector 2570 may The second image can be corrected so that the blocks appear to appear straight on the processed second image 2575.

2.サイズ変更及びビットストリーム操作
一部の実施形態の画像処理層930によって実行される、図21に関して上述した機能の中には、画像サイズ変更及びビットストリーム操作がある。一部の実施形態では、(動作2130において実行される)画像サイズ変更は、画像を拡大又は縮小すること(すなわち、画像を表すために使用される画素数を変更すること)を含む。一部の実施形態では、ビットストリーム操作は、サイズ変更後の画像のサイズを示すデータをビットストリームに挿入することを含む。このサイズ変更及びビットストリーム操作は、一部の実施形態では、エンコーダドライバ(例えば、ドライバ1635)によって実行される。
2. Resizing and Bitstream Operations Among the functions performed by the image processing layer 930 of some embodiments and described above with respect to FIG. 21 are image resizing and bitstream operations. In some embodiments, the image resizing (performed in operation 2130) includes enlarging or reducing the image (ie, changing the number of pixels used to represent the image). In some embodiments, the bitstream operation includes inserting data indicating the size of the resized image into the bitstream. This resizing and bitstream manipulation is performed in some embodiments by an encoder driver (eg, driver 1635).

図26は、一部の実施形態のこのようなエンコーダドライバ2600のためのソフトウェアアーキテクチャを概念的に示し、例示的な画像2605に対してエンコーダドライバ2600によって実行される例示的なサイズ変更及びビットストリーム操作動作を示す。一部の実施形態では、画像2605は、テレビ会議で別のデバイス(群)への伝送のためにデュアルカメラ携帯デバイスのカメラによって取り込まれたビデオの画像である。図16を参照すると、一部の実施形態では、ビデオ画像は、CIPU1650からCIPUドライバ1630及びカメラソースモジュール1622を経てバッファ1606まで進むことになり、バッファ1606から画像処理マネージャ1608によって読み出される。画像処理マネージャ1608で画像処理(例えば、焦点調整、露出調整、パースペクティブ補正)に供された後、画像は、バッファ1610及びビデオ圧縮器モジュール1624を通じてエンコーダドライバ1635に送られる。   FIG. 26 conceptually illustrates a software architecture for such an encoder driver 2600 of some embodiments, where an exemplary resizing and bitstream performed by the encoder driver 2600 on an exemplary image 2605. The operation is shown. In some embodiments, image 2605 is an image of a video captured by a camera of a dual camera portable device for transmission to another device (s) in a video conference. Referring to FIG. 16, in some embodiments, a video image will go from CIPU 1650 through CIPU driver 1630 and camera source module 1622 to buffer 1606, where it will be read by image processing manager 1608. After being subjected to image processing (eg, focus adjustment, exposure adjustment, perspective correction) by the image processing manager 1608, the image is sent to the encoder driver 1635 through the buffer 1610 and the video compressor module 1624.

図示のように、エンコーダドライバ2600は、処理層2610と、レートコントローラ2645とを含む。一部の実施形態のレートコントローラの例が、以下で説明する図30に示されている。処理層2610は、画像リサイザ2615と、ビットストリームマネージャ2625とを含む。一部の実施形態では、これらのモジュールは、画像が符号化される前と後の両方で画像に対して種々の動作を実行する。この例では、画像リサイザは、エンコーダドライバ2600の処理層2610の一部として示されているが、一部の実施形態では、エンコーダドライバ2600ではなく画像処理マネージャ1608の一部として画像リサイザを実施する(すなわち、画像サイズ変更は、画像及びサイズデータをエンコーダドライバに送る前に行われる)。   As shown, the encoder driver 2600 includes a processing layer 2610 and a rate controller 2645. An example of a rate controller of some embodiments is shown in FIG. 30, described below. The processing layer 2610 includes an image resizer 2615 and a bit stream manager 2625. In some embodiments, these modules perform various operations on the image both before and after the image is encoded. In this example, the image resizer is shown as part of the processing layer 2610 of the encoder driver 2600, however, in some embodiments, the image resizer is implemented as part of the image processing manager 1608 instead of the encoder driver 2600. (That is, the image resizing occurs before sending the image and size data to the encoder driver.)

図示のように、画像リサイザ2615は、画像がレートコントローラ2645を通じてエンコーダ2650に送られる前に画像をサイズ変更する。画像2605は、リサイザ2615を通じて送られ、画像2630に縮小される。一部の実施形態では、画像の縮小に加えて、画像を拡大することもできる。   As shown, image resizer 2615 resizes the image before it is sent to encoder 2650 through rate controller 2645. Image 2605 is sent through resizer 2615 and reduced to image 2630. In some embodiments, an image can be enlarged in addition to being reduced.

図26に示すように、一部の実施形態では、到来する画像(例えば、画像2605)を縮小し、その後、縮小画像(例えば、画像2630)を、到来する画像と(画素単位で)同じサイズである(すなわち、画像2605の画素の行及び列の数が空間的に冗長な画像2635の画素の行及び列の数と同じである)空間的に冗長な画像(例えば、画像2635)に重畳する。一部の実施形態では、縮小画像2630を、(図示のように、合成画像2640を生成するために)空間的に冗長な画像の左上隅に重畳するが、他の実施形態では、縮小画像を、空間的に冗長な画像の異なる区画(例えば、中央、右上、上部中央、下部中央、右下など)に重畳する。   As shown in FIG. 26, in some embodiments, an incoming image (eg, image 2605) is reduced, and then the reduced image (eg, image 2630) is reduced to the same size (in pixels) as the incoming image. (I.e., the number of rows and columns of pixels in image 2605 is the same as the number of rows and columns of pixels in spatially redundant image 2635) and is superimposed on a spatially redundant image (e.g., image 2635). I do. In some embodiments, the reduced image 2630 is superimposed on the upper left corner of the spatially redundant image (to generate a composite image 2640, as shown), while in other embodiments, the reduced image is Are superimposed on different sections of the spatially redundant image (eg, center, upper right, upper center, lower center, lower right, etc.).

一部の実施形態では、空間的に冗長な画像は、実質的にすべて1色(例えば、黒色、青色、赤色、白色など)である画像、又は繰り返しパターン(例えば、チェック、ストライプなど)を有する画像である。例えば、図26に示される空間的に冗長な画像2635は、十字の繰り返しパターンを有する。合成画像2640の空間的に冗長な部分は、反復性があるために、エンコーダによって少量のデータに容易に圧縮されうる。そのうえ、画像のシーケンスがすべて縮小され、使用される空間的に冗長な画像がシーケンス中の各画像に対して同じであるならば、符号化された画像を現すのに必要なデータ量をさらに減少させるために時間的圧縮が使用されうる。   In some embodiments, the spatially redundant image has an image that is substantially all one color (eg, black, blue, red, white, etc.) or a repeating pattern (eg, checks, stripes, etc.). It is an image. For example, the spatially redundant image 2635 shown in FIG. 26 has a repeating cross pattern. The spatially redundant portions of the composite image 2640 can be easily compressed by the encoder into small amounts of data because of the repeatability. Moreover, if the sequence of images is all reduced and the spatially redundant images used are the same for each image in the sequence, the amount of data needed to represent the encoded image is further reduced Temporal compression can be used to achieve this.

画像リサイザ2615の一部の実施形態では、サイズ変更された画像のサイズ(例えば、縮小画像2630のサイズ)を示すサイズデータ2620も生成し、この生成されたサイズデータ2620をビットストリームマネージャ2625に送る。一部の実施形態のサイズデータ2620は、サイズ変更された画像2630のサイズを、サイズ変更された画像2630の画素の行の数及び画素の列の数(すなわち、高さ及び幅)で示す。一部の実施形態では、サイズデータ2620は、合成画像2640内のサイズ変更された画像2630の位置も示す。   Some embodiments of the image resizer 2615 also generate size data 2620 indicating the size of the resized image (eg, the size of the reduced image 2630) and send the generated size data 2620 to the bitstream manager 2625. . The size data 2620 of some embodiments indicates the size of the resized image 2630 in terms of the number of rows of pixels and the number of columns of pixels (ie, height and width) of the resized image 2630. In some embodiments, size data 2620 also indicates the location of resized image 2630 within composite image 2640.

画像がサイズ変更された後、合成画像2640はレートコントローラ2645を通じてエンコーダ2650に送られる。レートコントローラ2645は、一部の実施形態では、以下でさらに詳細に説明するように、エンコーダ2650によって出力される画像のビットレート(すなわち、データサイズ)を制御する。一部の実施形態のエンコーダ2650は、画像を圧縮して符号化する。エンコーダ2650は、H.264符号化法又は別の符号化法を使用してもよい。   After the image has been resized, the composite image 2640 is sent to the encoder 2650 through the rate controller 2645. Rate controller 2645, in some embodiments, controls the bit rate (ie, data size) of the image output by encoder 2650, as described in further detail below. The encoder 2650 of some embodiments compresses and encodes an image. Encoder 2650 is a H.264 encoder. H.264 encoding or another encoding may be used.

一部の実施形態のビットストリームマネージャ2625は、1つ以上の符号化された画像のビットストリームをエンコーダ2650から受け取り、サイズデータをビットストリームに挿入する。例えば、一部の実施形態では、ビットストリームマネージャ2625は、サイズデータ2620を画像リサイザ2615から受け取り、サイズデータ2620を、エンコーダ2650から受け取った符号化された合成画像2640のビットストリーム2655に挿入する。ビットストリームマネージャ2625の出力は、この場合、サイズデータ2620を含む変更されたビットストリーム2660である。異なる実施形態において、サイズデータ2620をビットストリーム2655の異なる位置に挿入する。例えば、ビットストリーム2660は、ビットストリーム2660の先頭に挿入されたサイズデータ2620を示す。しかし、他の実施形態では、サイズデータ2620を、ビットストリーム2655の最後、ビットストリーム2655の中央、又はビットストリーム2655内の他の任意の位置に挿入する。   In some embodiments, the bitstream manager 2625 receives a bitstream of one or more encoded images from the encoder 2650 and inserts size data into the bitstream. For example, in some embodiments, bitstream manager 2625 receives size data 2620 from image resizer 2615 and inserts size data 2620 into encoded composite image 2640 bitstream 2655 received from encoder 2650. The output of bitstream manager 2625 is in this case a modified bitstream 2660 that includes size data 2620. In different embodiments, the size data 2620 is inserted at different locations in the bitstream 2655. For example, the bit stream 2660 indicates the size data 2620 inserted at the head of the bit stream 2660. However, in other embodiments, the size data 2620 is inserted at the end of the bitstream 2655, at the center of the bitstream 2655, or at any other location within the bitstream 2655.

一部の実施形態では、ビットストリーム2655は、合成画像2640を含む1つ以上の符号化された画像のシーケンスのビットストリームである。このような実施形態のうちの一部において、シーケンス内の画像はすべて同じサイズにサイズ変更され、サイズデータ2620は、それらのサイズ変更された画像のサイズを示す。画像がテレビ会議の相手側のデバイスに伝送された後、受信デバイスは、ビットストリームからサイズ情報を抽出し、受信された画像を適切に復号するためにサイズ情報を使用できる。   In some embodiments, bitstream 2655 is a bitstream of a sequence of one or more encoded images including composite image 2640. In some of such embodiments, the images in the sequence are all resized to the same size, and the size data 2620 indicates the size of those resized images. After the image has been transmitted to the device at the other end of the video conference, the receiving device can extract the size information from the bitstream and use the size information to properly decode the received image.

図27は、ドライバ2600などの、デュアルカメラ携帯デバイスのエンコーダドライバによって実行される画像サイズ変更プロセス2700を概念的に示す。プロセス2700は、デュアルカメラ携帯デバイスのカメラによって取り込まれた画像(例えば、画像2605)を(2705において)受信することによって始まる。デュアルカメラデバイスが両方のカメラで画像を取り込んでいる場合に、一部の実施形態では、両方のカメラからの画像に対してプロセス2700を実行する。   FIG. 27 conceptually illustrates an image resizing process 2700 performed by an encoder driver of a dual camera portable device, such as driver 2600. Process 2700 begins by receiving (at 2705) an image (eg, image 2605) captured by a camera of a dual camera portable device. If the dual camera device is capturing images with both cameras, in some embodiments, the process 2700 is performed on images from both cameras.

次に、プロセス2700は、受信した画像を(2710において)サイズ変更する。前述のように、異なる実施形態では、画像2605を異なるようにサイズ変更する。例えば、図26の画像2605は縮小され、合成画像2640を生成するために空間的に冗長な画像2635上に重畳される。   Next, the process 2700 resizes (at 2710) the received image. As described above, different embodiments resize image 2605 differently. For example, image 2605 of FIG. 26 is scaled down and superimposed on spatially redundant image 2635 to generate composite image 2640.

プロセス2700は、その後、サイズ変更された画像(例えば、サイズ変更された画像2630を含む合成画像2640)を符号化するためにエンコーダ2650に(2715において)送る。プロセス2700の一部の実施形態では、(合成画像2640に含まれる)サイズ変更された画像2630を、エンコーダが画像を符号化するビットレートを決定するレートコントローラを通じて、エンコーダ2650に送る。一部の実施形態のエンコーダ2650は、(例えば、離散コサイン変換、量子化、エントロピー符号化などを使用して)画像を圧縮して符号化し、符号化された画像を有するビットストリームをエンコーダドライバ2600に戻す。   Process 2700 then sends (at 2715) an encoder 2650 to encode the resized image (eg, a composite image 2640 including resized image 2630). In some embodiments of the process 2700, the resized image 2630 (included in the composite image 2640) is sent to the encoder 2650 through a rate controller that determines the bit rate at which the encoder encodes the image. The encoder 2650 of some embodiments compresses and encodes an image (eg, using a discrete cosine transform, quantization, entropy encoding, etc.) and converts a bitstream having the encoded image to an encoder driver 2600. Return to

次に、プロセス2700は、サイズ変更された画像のサイズ(例えば、サイズデータ2620)を示すデータをビットストリームマネージャに(2720において)送る。図26に示すように、この動作は、一部の実施形態ではエンコーダドライバ2600内で実行される(すなわち、エンコーダドライバ2600のあるモジュールが、エンコーダドライバ2600の別のモジュールにサイズデータを送る)。   Next, the process 2700 sends data (at 2720) to the bitstream manager indicating the size of the resized image (eg, size data 2620). As shown in FIG. 26, this operation is performed within encoder driver 2600 in some embodiments (ie, one module of encoder driver 2600 sends size data to another module of encoder driver 2600).

サイズ変更された画像がエンコーダ2650によって符号化された後、プロセス2700は、エンコーダからビットストリームを(2725において)受け取る。図示のように、一部の実施形態では、ビットストリームマネージャにおいてビットストリームを受け取り、ビットストリームマネージャは、サイズデータも受け取っている。受け取られたビットストリームは、符号化された合成画像を含み、ビデオシーケンスに1つ以上の追加画像も含んでもよい。   After the resized image has been encoded by the encoder 2650, the process 2700 receives (at 2725) a bitstream from the encoder. As shown, in some embodiments, the bitstream is received at a bitstream manager, which also receives the size data. The received bitstream includes the encoded composite image, and may also include one or more additional images in the video sequence.

プロセス2700は、その後、サイズ変更された画像のサイズを示すデータ(例えば、サイズデータ2620)をビットストリームに(2730において)挿入して、終了する。図26に示すように、この動作は、一部の実施形態ではビットストリームマネージャによっても実行される。上述のように、異なる実施形態では、サイズデータをビットストリームの異なる部分に挿入する。図示の例では、サイズデータ2620は、結果として生成されるビットストリーム2660に示されるように、ビットストリーム2655の先頭に挿入される。このビットストリームは、この時点で、テレビ会議に参加している別のデバイスに伝送でき、別のデバイスで復号されて視聴されうる。   Process 2700 then ends (at 2730) with data indicating the size of the resized image (eg, size data 2620) into the bitstream and ends. As shown in FIG. 26, this operation is also performed by the bitstream manager in some embodiments. As mentioned above, different embodiments insert the size data into different parts of the bitstream. In the illustrated example, size data 2620 is inserted at the beginning of bit stream 2655, as shown in the resulting bit stream 2660. This bitstream can now be transmitted to another device participating in the video conference and decoded and viewed on another device.

一部の実施形態では、デコーダドライバ(例えば、ドライバ1640)は、エンコーダドライバの反対の機能を実行する。すなわち、デコーダドライバは、受け取ったビットストリームからサイズデータを抽出し、このビットストリームをデコーダに渡し、復号された画像を、サイズデータを使用してサイズ変更する。図28は、一部の実施形態のこのようなデコーダドライバ2800のためのソフトウェアアーキテクチャを概念的に示し、例示的なビットストリーム2825に対してデコーダドライバ2800によって実行される例示的なビットストリーム操作及びサイズ変更動作を示す。   In some embodiments, a decoder driver (eg, driver 1640) performs the opposite function of an encoder driver. That is, the decoder driver extracts size data from the received bit stream, passes the bit stream to the decoder, and resizes the decoded image using the size data. FIG. 28 conceptually illustrates a software architecture for such a decoder driver 2800 of some embodiments, with exemplary bitstream operations performed by the decoder driver 2800 on an exemplary bitstream 2825 and Indicates a resize operation.

一部の実施形態では、ビットストリーム2825は、テレビ会議でデバイスのカメラによって取り込まれたビデオの符号化された画像を含むビットストリーム(例えば、ドライバ2600などのエンコーダドライバからのビットストリーム)であり、デコーダドライバ2800が動作するデバイスに伝送される。図16を参照すると、一部の実施形態では、ビットストリームは、ネットワーキングマネージャ1614によって受信され、バッファ1616に送られ、バッファ1616からビデオ伸張器モジュール1626によって読み出され、デコーダドライバ1640に送られる。   In some embodiments, the bitstream 2825 is a bitstream (eg, a bitstream from an encoder driver such as the driver 2600) that includes an encoded image of video captured by the device camera in a video conference. It is transmitted to the device on which the decoder driver 2800 operates. Referring to FIG. 16, in some embodiments, the bitstream is received by the networking manager 1614, sent to the buffer 1616, read from the buffer 1616 by the video decompressor module 1626, and sent to the decoder driver 1640.

図示のように、デコーダドライバ2800は、処理層2805を含む。処理層2805は、画像リサイザ2810と、ビットストリームマネージャ2820とを含む。一部の実施形態では、これらのモジュール2810及び2820は、画像が符号化される前と後の両方で、受け取られた画像に対して種々の動作を実行する。この例では、画像リサイザ2810は、デコーダドライバ2800の処理層2805の一部として示されているが、一部の実施形態は、デコーダドライバではなく画像処理マネージャ1608の一部として画像リサイザを実施する(すなわち、画像サイズ変更は、デコーダドライバ2800から画像を送った後に行われる)。   As shown, the decoder driver 2800 includes a processing layer 2805. The processing layer 2805 includes an image resizer 2810 and a bit stream manager 2820. In some embodiments, these modules 2810 and 2820 perform various operations on the received image both before and after the image is encoded. In this example, the image resizer 2810 is shown as part of the processing layer 2805 of the decoder driver 2800, however, some embodiments implement the image resizer as part of the image processing manager 1608 rather than a decoder driver. (That is, the image size change is performed after the image is transmitted from the decoder driver 2800).

図示のように、一部の実施形態のビットストリームマネージャ2820は、1つ以上の符号化された画像(すなわち、ビデオシーケンス内の画像)のビットストリームを受け取り、復号のためにビットストリームをデコーダ2835に送る前にビットストリームからサイズデータを抽出する。例えば、図28に示されるように、ビットストリームマネージャ2820は、符号化された画像のビットストリーム2825を受け取り、ビットストリーム2825からサイズデータ2815を抽出し、復号のために、結果として生成される(サイズデータ2815のない)ビットストリーム2830をデコーダ2835に送る。図示のように、ビットストリームマネージャ2820は、一部の実施形態では、抽出されたサイズデータ2815を画像リサイザ2810に送る。   As shown, the bitstream manager 2820 of some embodiments receives a bitstream of one or more encoded images (ie, images in a video sequence) and decodes the bitstream for decoding by a decoder 2835. Extract size data from the bitstream before sending it to. For example, as shown in FIG. 28, a bitstream manager 2820 receives a bitstream 2825 of an encoded image, extracts size data 2815 from the bitstream 2825, and generates the resulting data for decoding ( The bit stream 2830 (without size data 2815) is sent to the decoder 2835. As shown, the bitstream manager 2820 sends the extracted size data 2815 to the image resizer 2810 in some embodiments.

一部の実施形態のサイズデータ2815は、エンコーダドライバ2600によってビットストリームに挿入されるサイズデータ2620と同じである。図26の説明で上述したように、一部の実施形態のサイズデータ2815は、サブ画像2845のサイズを、サブ画像2845の画素の行の数及び画素の列の数として示す。サイズデータ2815は、より大きな空間的に冗長な画像2840内のサブ画像2845の位置も示してもよい。この例では、ビットストリーム2825は、ビットストリーム2825の先頭に挿入されたサイズデータ2815を示す。しかし、前述のように、異なる実施形態では、サイズデータ2815をビットストリーム2825の異なる位置に挿入する。   The size data 2815 in some embodiments is the same as the size data 2620 inserted into the bitstream by the encoder driver 2600. As described above with reference to FIG. 26, the size data 2815 of some embodiments indicates the size of the sub-image 2845 as the number of pixel rows and the number of pixel columns of the sub-image 2845. Size data 2815 may also indicate the position of sub-image 2845 within larger spatially redundant image 2840. In this example, the bit stream 2825 indicates the size data 2815 inserted at the head of the bit stream 2825. However, as described above, different embodiments insert the size data 2815 at different locations in the bitstream 2825.

一部の実施形態の画像リサイザ2810は、ビットストリームマネージャ2820から受け取られたサイズデータを使用して、画像からサブ画像を抽出する。例えば、図28は、画像リサイザ2810が、サブ画像2845を含む画像2840をデコーダ2835から受け取るところを示す。図示のように、一部の実施形態の画像リサイザ2810は、画像2840からサブ画像2845を抽出する。その後、この抽出された画像は、デュアルカメラ携帯デバイスに表示されうる。   The image resizer 2810 of some embodiments uses the size data received from the bitstream manager 2820 to extract sub-images from the image. For example, FIG. 28 illustrates that image resizer 2810 receives image 2840 including sub-image 2845 from decoder 2835. As shown, the image resizer 2810 of some embodiments extracts a sub-image 2845 from the image 2840. This extracted image can then be displayed on a dual camera portable device.

図29は、ドライバ2800などの、テレビ会議に参加しているデバイスのデコーダドライバによって実行される一部の実施形態の画像抽出プロセス2900を概念的に示す。プロセスは、符号化された画像のビットストリーム(例えば、ビットストリーム2825)を(2905において)受け取ることによって始まる。ビットストリームは、デコーダドライバが動作しているデバイスとのテレビ会議に参加しているデバイスから送信されてもよいし、デバイスの記憶装置に格納されてもよい。デバイスが複数のソースから画像を受信している場合に、一部の実施形態は、各ソースからの画像に対してプロセス2900を実行する。   FIG. 29 conceptually illustrates an image extraction process 2900 of some embodiments performed by a decoder driver of a device participating in a video conference, such as driver 2800. The process begins by receiving (at 2905) a bitstream of an encoded image (eg, bitstream 2825). The bitstream may be transmitted from a device participating in a video conference with a device on which the decoder driver is operating, or may be stored in a storage device of the device. If the device is receiving images from multiple sources, some embodiments perform process 2900 on the images from each source.

次に、プロセス2900は、ビットストリームからサイズデータを(2910において)抽出する。前述のように、このサイズデータは、ビットストリーム内のさまざまな位置で見つけられてもよい。一部の実施形態は、どこでサイズデータを探すべきかが分かっているが、他の実施形態は、受け取られたビットストリーム内のどこにサイズデータがあるかを示す特定の署名を探す。一部の実施形態では、サイズデータは、符号化された画像内のサブ画像のサイズ(例えば、各行における画素の数及び各列における画素の数)及び位置を示す。   Next, the process 2900 extracts (at 2910) size data from the bitstream. As described above, this size data may be found at various locations in the bitstream. While some embodiments know where to look for the size data, other embodiments look for a particular signature that indicates where the size data is in the received bitstream. In some embodiments, the size data indicates the size (eg, the number of pixels in each row and the number of pixels in each column) and position of the sub-images in the encoded image.

プロセス2900は、その後、抽出したサイズデータを画像リサイザに(2915において)送信する。図28に示すように、この動作は、一部の実施形態ではデコーダドライバ内で実行される(すなわち、デコーダドライバのあるモジュールがデコーダドライバの別のモジュールにサイズデータを送る)。   Process 2900 then sends (at 2915) the extracted size data to the image resizer. As shown in FIG. 28, this operation is performed within the decoder driver in some embodiments (ie, one module of the decoder driver sends size data to another module of the decoder driver).

プロセス2900は、復号のためにビットストリームもデコーダに(2920において)送信する。デコーダは、一部の実施形態では、ビットストリームを(例えば、逆離散コサイン変換、逆量子化などを使用して)伸張して復号し、再構成した画像をデコーダドライバに戻す。   Process 2900 also sends (at 2920) the bitstream to the decoder for decoding. The decoder, in some embodiments, decompresses and decodes the bitstream (eg, using an inverse discrete cosine transform, inverse quantization, etc.) and returns the reconstructed image to a decoder driver.

ビットストリームがデコーダによって復号された後、プロセス2900は、復号された画像をデコーダから(2925において)受け取る。図示のように、一部の実施形態は、画像リサイザにおいて画像を受け取り、画像リサイザは、ビットストリームマネージャからサイズデータも受け取っている。プロセスは、その後、受け取ったサイズデータを使用して、復号された画像からサブ画像を(2930において)抽出する。図示のように、サブ画像2845は、サイズデータ2815に示されるように、復号された画像2840の左上から抽出される。この抽出されたサブ画像は、この時点で、表示デバイス(例えば、デュアルカメラ携帯デバイスの画面)に表示されうる。   After the bitstream is decoded by the decoder, process 2900 receives (at 2925) the decoded image from the decoder. As shown, some embodiments receive an image at an image resizer, which also receives size data from a bitstream manager. The process then extracts (at 2930) a sub-image from the decoded image using the received size data. As shown, the sub-image 2845 is extracted from the upper left of the decoded image 2840, as indicated by the size data 2815. The extracted sub-image may now be displayed on a display device (eg, a screen of a dual camera portable device).

3.レートコントローラ
一部の実施形態では、デバイスの2つのカメラは、異なる特性の集合を有する。例えば、一部の実施形態では、前面カメラは、動きビデオ画像の取り込みに最適化された、解像度の低い方のカメラであり、背面カメラは、静止画像の取り込みに最適化された解像度の高い方のカメラである。デバイスのコスト、機能及び/又は形状などの理由で、他の実施形態は、異なる特性を持つカメラの異なる組み合わせを使用してもよい。
3. Rate Controller In some embodiments, the two cameras of the device have different sets of characteristics. For example, in some embodiments, the front camera is a lower resolution camera that is optimized for capturing motion video images, and the rear camera is a higher resolution camera that is optimized for capturing still images. Camera. Other embodiments may use different combinations of cameras with different characteristics, for reasons such as device cost, function and / or shape.

異なる特性を有するカメラは、異なるアーチファクトをもたらしうる。例えば、解像度が高いカメラほど、解像度の低いカメラよりも多くのノイズが露見しうる。解像度の高いカメラによって取り込まれた画像は、解像度の低いカメラによって取り込まれた画像よりも高いレベルの空間的又は時間的な複雑さを示しうる。同様に、異なる光学的性質を有する異なるカメラは、取り込まれた画像に異なるガンマ値をもたらしうる。画像を取り込むために異なるカメラによって使用される異なる光検知機構も、異なるアーチファクトをもたらしうる。   Cameras with different characteristics can result in different artifacts. For example, a higher resolution camera may reveal more noise than a lower resolution camera. Images captured by higher resolution cameras may exhibit a higher level of spatial or temporal complexity than images captured by lower resolution cameras. Similarly, different cameras with different optical properties may result in different gamma values in the captured image. Different light sensing mechanisms used by different cameras to capture images can also result in different artifacts.

これらのカメラ固有のアーチファクトのうちの一部は、他のソースから生成されたアーチファクトを隠蔽する。例えば、高いレベルのノイズを有する高解像度カメラによって取り込まれた画像では、ビデオ符号化プロセスの副産物であるアーチファクトは視認しにくくなる。カメラ固有のアーチファクトに隠れるように(量子化歪みなど)ノイズを符号化する場合に、ビデオ符号化プロセスは、ビットレートの低下を達成するために、より大きな量子化ステップサイズを使用できる。一方、(解像度の低いカメラの場合のように)カメラがもたらすアーチファクトが少ない場合に、ビデオ符号化プロセスは、量子化による許容できないレベルの視覚的歪みを回避するために、より細かい量子化ステップサイズを使用できる。したがって、これらのカメラ固有の特性を活用する又は補償するために最適化されたビデオ符号化プロセスは、これらのカメラ固有の特性を考慮しないビデオ符号化プロセスよりも優れたレート−歪みトレードオフを達成できる。   Some of these camera-specific artifacts obscure artifacts generated from other sources. For example, in images captured by high-resolution cameras with high levels of noise, artifacts that are a by-product of the video encoding process are less visible. When encoding noise to hide behind camera-specific artifacts (such as quantization distortion), the video encoding process can use a larger quantization step size to achieve a reduced bit rate. On the other hand, when the camera introduces fewer artifacts (as in lower resolution cameras), the video encoding process may use a finer quantization step size to avoid unacceptable levels of visual distortion due to quantization. Can be used. Thus, a video coding process optimized to exploit or compensate for these camera-specific characteristics achieves a better rate-distortion trade-off than a video coding process that does not consider these camera-specific characteristics. it can.

レート−歪みトレードオフを実行する目的でこれらのカメラ固有の特性を利用するために、一部の実施形態は、2つのビデオ符号化プロセスを実施し、各プロセスは、2つのカメラのそれぞれに最適化される。図30は、2つのカメラ3060及び3070のための2つのビデオ符号化プロセスを有するシステムの一例を示す。図30に示すように、システム3000は、エンコーダドライバ3010と、レートコントローラ3020及び3040と、ビデオエンコーダ3030とを含む。エンコーダ3030は、ビデオカメラ3060及び3070から取り込まれたビデオ画像をビットストリーム3080及び3090に符号化する。   To take advantage of these camera-specific properties for the purpose of performing a rate-distortion trade-off, some embodiments implement two video encoding processes, each of which is optimized for each of the two cameras Be transformed into FIG. 30 shows an example of a system having two video encoding processes for two cameras 3060 and 3070. As shown in FIG. 30, the system 3000 includes an encoder driver 3010, rate controllers 3020 and 3040, and a video encoder 3030. Encoder 3030 encodes video images captured from video cameras 3060 and 3070 into bit streams 3080 and 3090.

一部の実施形態では、ビデオエンコーダドライバ3010は、1つ以上の処理ユニット上で実行されるソフトウェアモジュールである。ビデオエンコーダドライバ3010は、ビデオエンコーダ3030と、ビデオカメラ、画像処理モジュール、ネットワーク管理モジュール及び記憶装置バッファなどのシステムの他のコンポーネントとの間のインタフェースを提供する。エンコーダドライバ3010は、カメラ及び画像処理モジュールからビデオエンコーダ3030までの取り込まれたビデオ画像の流れを制御し、記憶装置バッファ及びネットワーク管理モジュールへの、符号化されたビットストリーム3080及び3090のための経路(conduit1)も提供する。   In some embodiments, video encoder driver 3010 is a software module running on one or more processing units. Video encoder driver 3010 provides an interface between video encoder 3030 and other components of the system, such as a video camera, an image processing module, a network management module, and storage buffers. The encoder driver 3010 controls the flow of captured video images from the camera and image processing modules to the video encoder 3030, and routes to the storage buffer and network management module for the encoded bit streams 3080 and 3090. (Conduit1) is also provided.

図30に示すように、エンコーダドライバ3010は、レートコントローラの2つの異なるインスタンス3020及び3040を含む。これらの複数のインスタンスは、2つの異なるカメラのための2つの異なるレートコントローラであってもよいし、2つの異なるカメラのために2つの異なる方式で構成された1つのレートコントローラであってもよい。具体的には、一部の実施形態では、2つのレートコントローラ3020及び3040は、2つの別個のレートコントローラを表す。あるいは、他の実施形態では、2つのレートコントローラ3020及び3040は、単一のレートコントローラの2つの異なる構成である。   As shown in FIG. 30, encoder driver 3010 includes two different instances 3020 and 3040 of a rate controller. These multiple instances may be two different rate controllers for two different cameras, or one rate controller configured in two different ways for two different cameras. . Specifically, in some embodiments, the two rate controllers 3020 and 3040 represent two separate rate controllers. Alternatively, in other embodiments, the two rate controllers 3020 and 3040 are two different configurations of a single rate controller.

図30は、テレビ会議中に使用するレート制御動作のための符号化された状態情報を格納する状態バッファ3015を含むエンコーダドライバ3010も示す。具体的には、一部の実施形態では、2つの異なるレートコントローラ又は同じレートコントローラの2つの異なる構成は、状態バッファ3015に格納された同じ符号化状態情報をテレビ会議中に共有する。このように状態情報を共有することによって、デュアルビデオ取り込みテレビ会議において、均一なレートコントローラ動作が可能になる。この共有によって、単一のビデオ取り込みテレビ会議中のカメラ切り換え動作中に最適なビデオ符号化も可能になる(すなわち、現在のカメラによって取り込まれたビデオの符号化のためのレート制御動作が、直前のカメラによって取り込まれたビデオの符号化のためのレート制御動作によって維持された符号化状態情報を使用することが可能になる)。図30は、エンコーダドライバ3010の一部である状態バッファ3015を示しているが、他の実施形態では、エンコーダドライバ3010の外に状態バッファ3015を実装する。   FIG. 30 also shows an encoder driver 3010 that includes a status buffer 3015 that stores encoded status information for rate control operations used during a video conference. Specifically, in some embodiments, two different rate controllers or two different configurations of the same rate controller share the same encoded state information stored in state buffer 3015 during a video conference. Such sharing of state information allows for uniform rate controller operation in dual video capture video conferencing. This sharing also allows for optimal video encoding during camera switching operations during a single video capture video conference (i.e., the rate control operation for encoding video captured by the current camera is To use the encoding state information maintained by the rate control operation for encoding the video captured by this camera). FIG. 30 shows the state buffer 3015 which is a part of the encoder driver 3010, but in another embodiment, the state buffer 3015 is mounted outside the encoder driver 3010.

状態バッファ3015では、異なる実施形態は、符号化状態情報を表す異なるタイプのデータ(例えば、異なるタイプの符号化パラメータ)を格納する。このような符号化状態情報の一例が、テレビ会議用の現在の目標ビットレートである。目標ビットレートを識別するための1つの方式は、セクションIII.Bにおいて上述した。このような符号化状態情報の他の例は、いくつかある符号化状態情報の中でも特に、バッファ占有量(buffer fullness)、最大バッファ占有量及び最近符号化されたフレームのビットレートのうちの1つ以上を含む。   In state buffer 3015, different embodiments store different types of data (eg, different types of encoding parameters) that represent encoding state information. One example of such encoding state information is the current target bit rate for a video conference. One scheme for identifying the target bit rate is described in Section III. B. Other examples of such encoding state information include, among other encoding state information, one of buffer fullness, maximum buffer occupancy, and bit rate of recently encoded frames. Including one or more.

その後、レートコントローラは、そのレート制御動作で使用される1つ以上のパラメータを算出するために、目標ビットレート(又は状態バッファに格納された別の符号化状態パラメータ)を使用できる。例えば、以下でさらに説明するように、一部の実施形態のレートコントローラは、マクロブロック又はフレームのための量子化パラメータQPを算出するために現在の目標ビットを使用する。例を挙げると、一部の実施形態では、マクロブロック及び/又はフレームの量子化パラメータQPを導出する量子化調整パラメータを計算するために、現在の目標ビットレートを使用する。したがって、テレビ会議のカメラ切り換え動作中に、(2つのレートコントローラの、又は1つのレートコントローラの2つの異なる構成の)2つのレート制御動作間で目標ビットレートを共有することによって、現在のカメラによって取り込まれたビデオを符号化するためのレート制御動作は、直前のカメラによって取り込まれたビデオを符号化するための直前のレート制御動作からの符号化状態データの恩恵を受ける。   Thereafter, the rate controller can use the target bit rate (or another encoded state parameter stored in a state buffer) to calculate one or more parameters used in the rate control operation. For example, as described further below, the rate controller of some embodiments uses a current target bit to calculate a quantization parameter QP for a macroblock or frame. By way of example, in some embodiments, the current target bit rate is used to calculate a quantization adjustment parameter that derives a macroblock and / or frame quantization parameter QP. Thus, by sharing the target bit rate between the two rate control operations (of two rate controllers or of two different configurations of one rate controller) during the video conference camera switching operation, The rate control operation for encoding the captured video will benefit from the encoding state data from the previous rate control operation for encoding the video captured by the immediately prior camera.

図30は、2つの異なるレート−コントローラインスタンス3020及び3040を含むようにエンコーダドライバ3010を示す。しかし、他の実施形態では、これらのレートコントローラインスタンス3020及び3040は、ビデオエンコーダ3030に組み込まれる。ビデオエンコーダ3030は、カメラ3060及び3070から取り込まれたビデオ画像をデジタルビットストリーム3080及び3090に符号化する。一部の実施形態では、ビデオエンコーダは、従来のビデオ符号化標準(例えば、H.264 MPEG−4)に準拠するビットストリームを生成する。これらの実施形態のうちの一部では、ビデオエンコーダは、動き推定、離散コサイン変換(「DCT」)、量子化及びエントロピー符号化を含む符号化動作を実行する。ビデオエンコーダは、符号化動作の逆の機能である復号動作も実行する。   FIG. 30 shows encoder driver 3010 to include two different rate-controller instances 3020 and 3040. However, in other embodiments, these rate controller instances 3020 and 3040 are incorporated into video encoder 3030. Video encoder 3030 encodes video images captured from cameras 3060 and 3070 into digital bit streams 3080 and 3090. In some embodiments, the video encoder generates a bitstream that conforms to a conventional video coding standard (eg, H.264 MPEG-4). In some of these embodiments, the video encoder performs coding operations including motion estimation, discrete cosine transform ("DCT"), quantization and entropy coding. The video encoder also performs a decoding operation which is the reverse function of the encoding operation.

一部の実施形態では、エンコーダ3030は、量子化を実行するための量子化器モジュール3032を含む。量子化器モジュールは、レートコントローラ3020又は3040から量子化パラメータ3022又は3042によって制御される。一部の実施形態では、各量子化パラメータは、以下でさらに説明するように、対応するレートコントローラによって設定され、レートコントローラに関連するカメラの1つ以上の属性の関数である。レートコントローラは、より粗い量子化ステップサイズの設定に従って符号化に使用されるビット数を減少させることもできるし、より細かい量子化ステップサイズの設定によって使用されるビット数を増加させることもできる。量子化ステップサイズを制御することによって、レートコントローラはまた、符号化されたビデオ画像にどれほど多くの歪みがもたらされているかを判定する。したがって、レートコントローラは、ビットレートと画像品質とのトレードオフを実行できる。レート−歪みのトレードオフを実行するにあたり、レートコントローラは、メモリバッファのオーバーフロー、メモリバッファのアンダーフロー、又は伝送チャネル容量の超過を起こさないように、ビットレートを監視する。レートコントローラはまた、実現しうる最高の画像品質を提供し、量子化による画像品質の許容できない歪みを回避するために、ビットレートを制御しなければならない。一部の実施形態では、各レートコントローラは、監視されたデータを状態データ値の集合として状態バッファ3015に格納する。一部の実施形態では、レートコントローラ3020及び3040は、レート−歪みのトレードオフを最適化するために、カメラ固有の属性を使用する。   In some embodiments, encoder 3030 includes a quantizer module 3032 for performing quantization. The quantizer module is controlled by a quantization parameter 3022 or 3042 from the rate controller 3020 or 3040. In some embodiments, each quantization parameter is set by a corresponding rate controller and is a function of one or more attributes of the camera associated with the rate controller, as described further below. The rate controller can reduce the number of bits used for encoding according to a coarser quantization step size setting, or can increase the number of bits used by setting a finer quantization step size. By controlling the quantization step size, the rate controller also determines how much distortion is introduced into the encoded video image. Thus, the rate controller can perform a tradeoff between bit rate and image quality. In performing the rate-distortion trade-off, the rate controller monitors the bit rate to avoid overflowing the memory buffer, underflowing the memory buffer, or exceeding the transmission channel capacity. The rate controller must also control the bit rate to provide the highest image quality possible and avoid unacceptable distortion of the image quality due to quantization. In some embodiments, each rate controller stores the monitored data in state buffer 3015 as a set of state data values. In some embodiments, rate controllers 3020 and 3040 use camera-specific attributes to optimize the rate-distortion trade-off.

一部の実施形態では、各レートコントローラは、その量子化パラメータに変更係数を直接適用することによって、レート−歪みのトレードオフを最適化する。これらの実施形態のうちの一部では、変更係数は事前に決められており、カメラと共にデバイスに組み込まれている。デバイスは、これらの変更係数を動的に計算する必要はない。他の実施形態では、システムは、カメラに固有の適切な変更係数を動的に決定するために、カメラによって取り込まれた到来する画像を使用する。これらの実施形態のうちの一部では、システムは、カメラに関する特定の統計を収集するために、複数の符号化経路(pass)でカメラによって取り込まれた到来するビデオ画像のシーケンスを分析する。その後、システムは、これらの統計を使用して、カメラに最適化された量子化パラメータに対する変更係数を導出する。   In some embodiments, each rate controller optimizes the rate-distortion trade-off by directly applying a change factor to its quantization parameter. In some of these embodiments, the modification factor is predetermined and is integrated into the device along with the camera. The device does not need to dynamically calculate these change factors. In another embodiment, the system uses the incoming images captured by the camera to dynamically determine the appropriate change factor specific to the camera. In some of these embodiments, the system analyzes the sequence of incoming video images captured by the camera in multiple encoding passes to gather certain statistics about the camera. The system then uses these statistics to derive change factors for the camera optimized quantization parameters.

一部の実施形態では、これらのカメラ固有の変更係数は、ビデオ画像の視覚マスキング属性を介して量子化パラメータに適用される。画像又は画像の一部分の視覚マスキング属性は、画像又は画像部分にどれほど多くの符号化アーチファクトが容認できるかの指標である。一部の実施形態は、画像又は画像部分の輝度エネルギーを定量化する視覚マスキング属性を計算するが、他の実施形態は、画像又は画像部分の活動エネルギー(activity energy)又は複雑さを定量化する視覚マスキング属性を計算する。視覚マスキング属性がどのようにして算出されるかに関係なく、一部の実施形態は、ビデオフレームのための変更された又はマスクされた量子化パラメータを算出するために視覚的マスキング属性を使用する。これらの実施形態のうちの一部は、マスクされた量子化パラメータを、フレームレベルの視覚マスキング属性φframe及び参照視覚マスキング属性φRの関数として算出する。一部の実施形態では、視覚マスキング属性φframe及びφRによって変更された量子化パラメータは、以下のように表される。 In some embodiments, these camera-specific modification factors are applied to quantization parameters via visual masking attributes of the video image. The visual masking attribute of an image or part of an image is an indication of how many coding artifacts are acceptable in the image or image part. Some embodiments calculate a visual masking attribute that quantifies the luminance energy of the image or image portion, while other embodiments quantify the activity energy or complexity of the image or image portion. Calculate visual masking attributes. Regardless of how the visual masking attribute is calculated, some embodiments use the visual masking attribute to calculate a modified or masked quantization parameter for a video frame. . Some of these embodiments calculate the masked quantization parameter as a function of the frame-level visual masking attribute φ frame and the reference visual masking attribute φ R. In some embodiments, the quantization parameters modified by the visual masking attributes φ frame and φ R are expressed as follows:

MQPframe=QPnom+βframe*(φframe−φR)/φR (1)
上式で、MQPframeは、フレームのマスクされた又は変更された量子化パラメータであり、QPnomは、初期量子化値又は名目量子化値であり、βframeは、局所統計量に適合する定数である。一部の実施形態では、参照視覚マスキング属性φR及び名目量子化パラメータQPnomは、ネットワーク状態の初期評価又は定期的評価から事前に決められている。
MQP frame = QP nom + β frame * (φ frameR ) / φ R (1)
Where MQP frame is the masked or modified quantization parameter of the frame, QP nom is the initial or nominal quantization value, and β frame is a constant that fits the local statistics It is. In some embodiments, the reference visual masking attribute φ R and the nominal quantization parameter QP nom are predetermined from an initial or periodic assessment of network conditions.

一部の実施形態では、式(1)の視覚マスキング属性φframeは、以下のように算出される。 In some embodiments, the visual masking attribute φ frame in equation (1) is calculated as follows.

φframe=C・(E・avgFrameLuma)β・(D・avgFrameSAD)α (2)
上式で、avgFrameLumaはフレームの平均輝度値であり、avgFrameSADは、フレームの平均絶対値差分和である。定数α、β、C、D及びEは、局所統計量に適合する。これらの定数は、一部の実施形態では、カメラ固有の特性に適合する。
φ frame = C · (E · avgFrameLuma) β · (D · avgFrameSAD) α (2)
In the above equation, avgFrameLuma is the average luminance value of the frame, and avgFrameSAD is the average absolute value difference sum of the frame. The constants α, β, C, D and E fit the local statistics. These constants are, in some embodiments, compatible with camera-specific properties.

一部の実施形態は、マクロブロックなどのビデオ画像の一部分のためのマスクされた量子化パラメータも算出する。それらの例では、マスクされた量子化パラメータは、以下のように、マクロブロック視覚マスキング属性φMBの関数として算出される。 Some embodiments also calculate masked quantization parameters for a portion of the video image, such as a macroblock. In those examples, the masked quantization parameter is calculated as a function of the macroblock visual masking attribute φ MB as follows:

MQPMB=MQPframe+βMB*(φMB−φframe)/φframe (3)
上式で、βMBは局所統計量に適合する定数であり、MQPframeは一部の実施形態では式(1)及び式(2)を使用して算出される。一部の実施形態では、式(3)の視覚マスキング属性φMBは、以下のように算出される。
MQP MB = MQP frame + β MB * (φ MB- φ frame ) / φ frame (3)
Where β MB is a constant that fits the local statistics, and the MQP frame is calculated in some embodiments using equations (1) and (2). In some embodiments, the visual masking attribute φ MB in equation (3) is calculated as follows.

φMB=A・(C・avgMBLuma)β・(B・MBSAD)α (4)
上式で、avgMBLumaはマクロブロックの平均輝度値であり、avgMBSADはマクロブロックの平均絶対値差分和である。定数α、β、A、B及びCは、局所統計量に適合する。これらの定数は、一部の実施形態では、カメラ固有の特性に適合する。
φ MB = A · (C · avgMBLuma) β · (B · MBSAD) α (4)
In the above equation, avgMBLuma is the average luminance value of the macroblock, and avgMBSAD is the average absolute value difference sum of the macroblock. The constants α, β, A, B and C fit the local statistics. These constants are, in some embodiments, compatible with camera-specific properties.

一部の実施形態は、上述のように複数のカメラ固有の定数を使用して変更された量子化パラメータを算出するのではなく、単一のカメラ固有の係数のみを使用して量子化パラメータを計算することによってカメラ固有のレート制御を実行する。例えば、視覚マスキング属性φframe及びφMB並びに量子化パラメータQPframeを前提として、一部の実施形態は、単一のカメラ固有の係数μを使用して、マクロブロックの量子化パラメータを以下のように算出する。 Some embodiments, instead of using multiple camera-specific constants to calculate the modified quantization parameters as described above, use only a single camera-specific coefficient to calculate the quantization parameters. By performing the calculation, the rate control specific to the camera is executed. For example, given the visual masking attributes φ frame and φ MB and the quantization parameter QP frame , some embodiments use a single camera-specific coefficient μ to calculate the macroblock quantization parameters as follows: Is calculated.

QPMB=μ*(φframe−φMB)+QPframe (5)
式(5)を計算するため、一部の実施形態は、フレーム及びマクロブロックの複雑性尺度をそれぞれ視覚マスキング属性φframe及びφMBとして使用する。
QP MB = μ * (φ frame −φ MB ) + QP frame (5)
To calculate Equation (5), some embodiments use the frame and macroblock complexity measures as the visual masking attributes φ frame and φ MB , respectively.

一部の実施形態は、QPMBの算出に異なるカメラ固有の係数を適用する。例えば、一部の実施形態では、QPMBは以下のように算出される。 Some embodiments apply different camera-specific coefficients to the calculation of QP MB . For example, in some embodiments, QP MB is calculated as follows.

QPMB=ρ・(1−φMB/φframe)・QPframe+QPframe (6)
上式で、ρは、カメラ固有の特性に合わされた係数である。
QP MB = ρ · (1−φ MB / φ frame ) · QP frame + QP frame (6)
In the above equation, ρ is a coefficient adapted to camera-specific characteristics.

上述のように、状態バッファ3015は、2つの異なるレートコントローラインスタンス3020及び3040がレート制御動作からより良い符号化結果を得るためにテレビ会議中に共有しうる符号化状態情報を格納する。目標ビットレートRTは、一部の実施形態では、このような共有される状態情報の一例である。このレートは、フレームのシーケンスを符号化するのに望ましいビットレートである。典型的には、このビットレートは、ビット/秒の単位で表記され、セクションIII.Bで上述したプロセスのようなプロセスに基づいて決定される。 As described above, state buffer 3015 stores encoding state information that two different rate controller instances 3020 and 3040 may share during a video conference to obtain better encoding results from rate control operations. Target bit rate R T is, in some embodiments, an example of such shared state information. This rate is the desired bit rate for encoding a sequence of frames. Typically, this bit rate is expressed in units of bits per second, see Section III. It is determined based on a process such as the process described above in B.

上述のように、一部の実施形態のレートコントローラは、ビデオエンコーダ3030に出力するフレーム及び/又はマクロブロック量子化パラメータ(群)QPを算出するために目標ビットレートを使用する。例えば、一部の実施形態は、マクロブロック及び/又はフレームについての量子化パラメータQPを導出する量子化調整パラメータを算出するために、現在の目標ビットレートを使用する。一部の実施形態では、量子化調整パラメータは、直前のフレームのビットレート又は直前のフレームのビットレートの移動平均のいずれかを現在の目標ビットレートで除算することによって計算される比で表される。他の実施形態では、この調整パラメータは、このように正確に計算されるのではなく、より一般的には、(1)直前のフレームのビットレート又は直前のフレームのビットレートの移動平均に比例し、及び(2)現在の目標ビットレートに反比例する。   As described above, the rate controller of some embodiments uses the target bit rate to calculate the frame and / or macroblock quantization parameter (s) QP for output to video encoder 3030. For example, some embodiments use the current target bit rate to calculate a quantization adjustment parameter that derives a quantization parameter QP for a macroblock and / or frame. In some embodiments, the quantization adjustment parameter is expressed as a ratio calculated by dividing either the previous frame bit rate or the moving average of the previous frame bit rate by the current target bit rate. You. In other embodiments, this tuning parameter is not calculated exactly as such, but rather is more generally (1) proportional to the bit rate of the previous frame or a running average of the bit rate of the previous frame. And (2) inversely proportional to the current target bit rate.

このような量子化調整パラメータを計算した後、一部の実施形態のレートコントローラは、このパラメータを使用し、マクロブロック及び/又はフレームの量子化パラメータ(群)を計算して調整する。このような調整を行う1つの方式は、計算されたマクロブロック及び/又はフレームの量子化パラメータ(群)に量子化調整パラメータを乗算することである。この調整を行う別の方式は、量子化調整パラメータから量子化パラメータオフセット値を計算し、その後、このパラメータオフセットを、計算されたマクロブロック及び/又はフレームの量子化パラメータ(群)に適用(例えば、減算)することである。その後、これらの実施形態のレートコントローラは、調整されたマクロブロック及び/又はフレームの量子化パラメータ(群)をビデオエンコーダ3030に出力する。   After calculating such a quantization adjustment parameter, the rate controller of some embodiments uses this parameter to calculate and adjust the macroblock and / or frame quantization parameter (s). One way to make such an adjustment is to multiply the calculated macroblock and / or frame quantization parameter (s) by a quantization adjustment parameter. Another way to make this adjustment is to calculate a quantization parameter offset value from the quantization adjustment parameters, and then apply this parameter offset to the calculated macroblock and / or frame quantization parameter (s) (eg, , Subtraction). Thereafter, the rate controller of these embodiments outputs the adjusted macroblock and / or frame quantization parameter (s) to video encoder 3030.

他の実施形態では、レートコントローラは、目標ビットレートを使用して、そのレート制御動作で使用される他のパラメータを算出する。例えば、一部の実施形態では、レートコントローラは、このビットレートを使用して、マクロブロック又はフレームの視覚マスキング強度を変更する。   In other embodiments, the rate controller uses the target bit rate to calculate other parameters used in the rate control operation. For example, in some embodiments, the rate controller uses this bit rate to change the visual masking strength of a macroblock or frame.

G.ネットワーキングマネージャ
図31は、図16に示されるネットワーキングマネージャ1614などの一部の実施形態のネットワーキングマネージャ3100のためのソフトウェアアーキテクチャを概念的に示す。上述のように、ネットワーキングマネージャ3100は、テレビ会議においてネットワーキングマネージャ3100が動作するデュアルカメラ携帯デバイスとリモートデバイスとの間のネットワーク接続(例えば、接続の確立、接続の監視、接続の調整、接続の切断など)を管理する。テレビ会議中に、一部の実施形態のネットワーキングマネージャ3100はまた、リモートデバイスへの伝送のためにデータを処理し、リモートデバイスから受信したデータを処理する。
G. FIG. Networking Manager FIG. 31 conceptually illustrates a software architecture for the networking manager 3100 of some embodiments, such as the networking manager 1614 shown in FIG. As described above, the networking manager 3100 may provide a network connection between the dual camera portable device on which the networking manager 3100 operates and a remote device (eg, establishing a connection, monitoring a connection, adjusting a connection, disconnecting a connection in a video conference). Etc.). During a video conference, the networking manager 3100 of some embodiments also processes data for transmission to the remote device and processes data received from the remote device.

図31に示すように、ネットワーキングマネージャ3100は、セッションネゴシエーションマネージャ3105と、送信器モジュール3115と、汎用伝送バッファ3120と、汎用伝送バッファマネージャ3122と、仮想トランスポートプロトコル(VTP)マネージャ3125と、受信器モジュール3130と、メディアトランスポートマネージャ3135とを含む。   As shown in FIG. 31, the networking manager 3100 includes a session negotiation manager 3105, a transmitter module 3115, a general-purpose transmission buffer 3120, a general-purpose transmission buffer manager 3122, a virtual transport protocol (VTP) manager 3125, and a receiver. It includes a module 3130 and a media transport manager 3135.

セッションネゴシエーションマネージャ3105は、プロトコルマネージャ3110を含む。プロトコルマネージャ3110は、送信器モジュール3115が適切な通信プロトコルを使用してテレビ会議中にデータをリモートデバイスに伝送し、使用される通信プロトコルのルールを実施することを保証にする。プロトコルマネージャ3110の一部の実施形態は、とりわけ、リアルタイムトランスポートプロトコル(RTP)、伝送制御プロトコル(TCP)、ユーザデータグラムプロトコル(UDP)及びハイパーテキスト転送プロトコル(HTTP)などのいくつかの通信プロトコルをサポートする。   The session negotiation manager 3105 includes a protocol manager 3110. The protocol manager 3110 ensures that the transmitter module 3115 transmits data to the remote device during the video conference using the appropriate communication protocol and enforces the rules of the communication protocol used. Some embodiments of the protocol manager 3110 include several communication protocols, such as Real-time Transport Protocol (RTP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and Hypertext Transfer Protocol (HTTP), among others. Support.

セッションネゴシエーションマネージャ3105は、デュアルカメラ携帯デバイスとテレビ会議に参加している1つ以上のリモートデバイスとの間の接続の確立並びに会議後のこれらの接続の切断を担当する。一部の実施形態では、セッションネゴシエーションマネージャ3105は、(例えば、セッション開始プロトコル(SIP)を使用して)テレビ会議におけるデュアルカメラ携帯デバイスとリモートデバイスとの間の(例えば、ビデオストリーム及び/又はオーディオストリームを送受信するための)マルチメディア通信セッションの確立も担当する。   The session negotiation manager 3105 is responsible for establishing connections between the dual camera portable device and one or more remote devices participating in the video conference and disconnecting those connections after the conference. In some embodiments, the session negotiation manager 3105 determines whether the dual camera portable device and the remote device (eg, video stream and / or audio) are in a video conference (eg, using Session Initiation Protocol (SIP)). It is also responsible for establishing multimedia communication sessions (for sending and receiving streams).

セッションネゴシエーションマネージャ3105はまた、メディアトランスポートマネージャ3135からフィードバックデータを受け取り、このフィードバックデータに基づいて、汎用伝送バッファマネージャ3122を通した汎用伝送バッファ3120の動作(例えば、パケット/フレームを伝送するか破棄するか)を決定する。このフィードバックは、一部の実施形態では、片道レイテンシ及び帯域幅推定ビットレートを含んでもよい。他の実施形態では、フィードバックは、(例えば、テレビ会議においてリモートデバイスに送信されるパケット及びそのデバイスからの確認応答の受信に基づいて決定される)パケット損失情報及びラウンドトリップ遅延時間を含む。セッションネゴシエーションマネージャ3105は、メディアトランスポートマネージャ3135からの情報に基づいて、送信されているパケットが多すぎるかどうかを判定し、汎用伝送バッファマネージャ3122に、汎用伝送バッファ3120に送るパケットをより少なくするように(すなわち、図15で説明するようにビットレートを調整するように)命令できる。   The session negotiation manager 3105 also receives feedback data from the media transport manager 3135 and, based on the feedback data, operates the universal transmission buffer 3120 through the general transmission buffer manager 3122 (eg, transmits or discards packets / frames). Or do). This feedback may include, in some embodiments, one-way latency and bandwidth estimation bit rate. In other embodiments, the feedback includes packet loss information (e.g., determined based on receiving packets transmitted to and acknowledgments from the remote device in a video conference) and round trip delay time. The session negotiation manager 3105 determines, based on information from the media transport manager 3135, whether too many packets are being transmitted and causes the general-purpose transmission buffer manager 3122 to send fewer packets to the general-purpose transmission buffer 3120. (Ie, adjusting the bit rate as described in FIG. 15).

送信器モジュール3115は、符号化された画像を(例えば、ビットストリームとして)ビデオバッファ(例えば、図16のバッファ1612)から読み出し、汎用伝送バッファ3120及び仮想トランスポートプロトコルマネージャ3125を通じてテレビ会議でのリモートデバイスへの伝送のために画像をパケット化する。符号化された画像が作製され送信器モジュール3115に送られる方式は、メディアトランスポートマネージャ3135及び/又はセッションネゴシエーションマネージャ3105から受け取った命令又はデータに基づくことができる。一部の実施形態では、画像のパケット化は、受け取ったビットストリームを、それぞれ特定のサイズ(すなわち、特定のプロトコルに従ってセッションネゴシエーションマネージャ3105によって指定されたサイズ)を有するパケットのグループに分解すること、及び任意の必要なヘッダ(例えば、アドレスヘッダ、プロトコル指定ヘッダなど)を追加することをも含む。   The transmitter module 3115 reads the encoded image from a video buffer (e.g., as a bitstream) (e.g., buffer 1612 in FIG. 16) and transmits the video in a remote teleconference via the generic transmission buffer 3120 and the virtual transport protocol manager 3125. Packetize the image for transmission to the device. The manner in which the encoded image is created and sent to the transmitter module 3115 can be based on instructions or data received from the media transport manager 3135 and / or the session negotiation manager 3105. In some embodiments, the packetization of the image comprises decomposing the received bitstream into groups of packets each having a particular size (ie, a size specified by the session negotiation manager 3105 according to a particular protocol); And adding any necessary headers (eg, address headers, protocol specification headers, etc.).

汎用伝送バッファマネージャ3122は、セッションネゴシエーションマネージャ3105から受け取ったデータ及び/又は命令に基づいて、汎用伝送バッファ3120の動作を制御する。例えば、汎用伝送バッファマネージャ3122は、データを送る、データの送出を中止する、データを破棄するなどのように汎用伝送バッファ3120に指示するよう命令されうる。上述のように、一部の実施形態では、会議に参加しているリモートデバイスは、パケットを破棄しているように見えるが、これは、リモートデバイスから受信された確認応答に基づいて認識されよう。パケット破棄を低減するため、汎用伝送バッファマネージャ3122は、より遅いレートでリモートデバイスにパケットを伝送するように命令されうる。   The general-purpose transmission buffer manager 3122 controls the operation of the general-purpose transmission buffer 3120 based on data and / or instructions received from the session negotiation manager 3105. For example, general purpose transmission buffer manager 3122 can be instructed to instruct general purpose transmission buffer 3120 to send data, stop sending data, discard data, etc. As described above, in some embodiments, the remote device participating in the conference appears to have discarded the packet, but this will be recognized based on the acknowledgment received from the remote device. . To reduce packet discard, the generic transmission buffer manager 3122 may be instructed to transmit packets to the remote device at a slower rate.

汎用伝送バッファ3120は、送信器モジュール3115から受け取ったデータを格納し、VTPマネージャ3125を介してリモートデバイスにデータを伝送する。前述のように、汎用伝送バッファ3120は、汎用伝送バッファマネージャ3122から受け取った命令に基づいてデータ(例えば、ビデオの画像)を破棄してもよい。   The general-purpose transmission buffer 3120 stores data received from the transmitter module 3115 and transmits the data to the remote device via the VTP manager 3125. As described above, general purpose transmission buffer 3120 may discard data (eg, video images) based on instructions received from general purpose transmission buffer manager 3122.

一部の実施形態では、RTPは、テレビ会議中にUDPを介してデータパケット(例えば、オーディオパケット及びビデオパケット)を通信するために使用される。他の実施形態は、テレビ会議中にTCPを介してデータパケットを通信するためにRTPを使用する。異なる実施形態では、他のトランスポート層プロトコルも使用できる。   In some embodiments, RTP is used to communicate data packets (eg, audio and video packets) over UDP during a video conference. Other embodiments use RTP to communicate data packets over TCP during a video conference. In different embodiments, other transport layer protocols can be used.

一部の実施形態は、1対のポート番号(すなわち、送信元ポート番号及び宛先ポート番号)によって、2つの携帯デバイス間の特定の通信チャネルを定義する。例えば、携帯デバイス間のある通信チャネルは、あるポート番号ペア(例えば、送信元ポート50及び宛先ポート100)によって定義でき、携帯デバイス間の別の異なる通信チャネルは、別の異なるポート番号ペア(例えば、送信元ポート75及び宛先ポート150)によって定義されうる。一部の実施形態は、通信チャネルを定義するにあたって、1対のインターネットプロトコル(IP)アドレスも使用する。一部の実施形態では、異なる通信チャネルが、異なるタイプのデータパケットを伝送するために使用される。例えば、ビデオデータパケット、オーディオデータパケット及び制御信号データパケットが、別個の通信チャネルで伝送されうる。したがって、ビデオ通信チャネルはビデオデータパケットを搬送し、オーディオ通信チャネルはオーディオデータパケットを搬送する。   Some embodiments define a particular communication channel between two portable devices by a pair of port numbers (ie, a source port number and a destination port number). For example, one communication channel between portable devices may be defined by a port number pair (eg, source port 50 and destination port 100), and another different communication channel between portable devices may be defined by another different port number pair (eg, , Source port 75 and destination port 150). Some embodiments also use a pair of Internet Protocol (IP) addresses in defining a communication channel. In some embodiments, different communication channels are used to transmit different types of data packets. For example, video data packets, audio data packets, and control signal data packets may be transmitted on separate communication channels. Thus, the video communication channel carries video data packets and the audio communication channel carries audio data packets.

一部の実施形態では、制御通信チャネルは、テレビ会議中にローカル携帯デバイスとリモートデバイスとの間でメッセージを伝送するためのものである。このようなメッセージ伝送の例は、要求、通知及びこのような要求及び通知に対する確認応答の送受信を含む。メッセージ伝送の別の例は、あるデバイスから別のデバイスへの遠隔制御命令メッセージの送信を含む。例えば、以下で説明する遠隔制御動作(例えば、ある特定のカメラからの画像のみを送信するように、又は特定のカメラで画像のみを取り込むように、デバイスに命令すること)は、ローカルデバイスがリモートデバイスの動作を遠隔制御するために、制御通信チャネルを通じてローカルデバイスからリモートデバイスに命令を送信することによって実行されうる。異なる実施形態は、リアルタイムトランスポート制御プロトコル(RTCP)、RTP拡張、SIPなどのようなさまざまなプロトコルを使用して制御通信を実施する。例えば、一部の実施形態は、テレビ会議において2つの携帯デバイス間で、ある制御メッセージ集合を中継するためにRTP拡張を使用し、テレビ会議中に携帯デバイス間で別の制御メッセージ集合を中継するためにSIPパケットを使用する。   In some embodiments, the control communication channel is for transmitting messages between a local portable device and a remote device during a video conference. Examples of such message transmissions include sending and receiving requests, notifications, and acknowledgments to such requests and notifications. Another example of message transmission involves sending a remote control command message from one device to another. For example, a remote control operation described below (e.g., instructing a device to send only images from a particular camera, or to capture only images with a particular camera) requires that the local device It may be performed by sending instructions from a local device to a remote device over a control communication channel to remotely control operation of the device. Different embodiments implement the control communication using various protocols such as Real-time Transport Control Protocol (RTCP), RTP extensions, SIP, etc. For example, some embodiments use the RTP extension to relay one set of control messages between two portable devices in a video conference and relay another set of control messages between the mobile devices during the video conference. To use SIP packets.

一部の実施形態のVTPマネージャ3125により、異なる通信チャネルを通じて(例えば、異なるポート番号ペアを使用して)伝送されるように指定された異なるタイプのデータパケットが、単一の通信チャネルを介して(例えば、同じポート番号ペアを使用して)伝送されることが可能になる。これを行うための1つの技術は、データパケットタイプを識別すること、データパケットの指定されたポート番号ペアを抽出することによってデータパケットが伝送されるように指定された通信チャネルを識別すること、及び単一の通信チャネルのポート番号ペアとなるようにデータパケットのポート番号ペアを変更する(すなわち、すべてのデータパケットが同じポート番号ペアを介して伝送される)ことによって単一の通信チャネルを通じて伝送されるべきデータパケットを指定することを含む。   The VTP manager 3125 of some embodiments allows different types of data packets designated to be transmitted over different communication channels (eg, using different port number pairs) over a single communication channel. (Eg, using the same port number pair). One technique for doing this is to identify the data packet type, identify the designated communication channel over which the data packet is to be transmitted by extracting the specified port number pair of the data packet, And through changing a port number pair of a data packet to be a single communication channel port number pair (ie, all data packets are transmitted over the same port number pair) Including specifying the data packets to be transmitted.

各タイプのデータパケットに対する元のポート番号ペアを追跡するため、一部の実施形態は、データパケットタイプに対する元のポート番号ペアのマッピングを格納する。その後、これらの実施形態のうちの一部は、1つの通信チャネルに多重化されている異なるパケットを区別するために、プロトコルのパケットタイプフィールドを使用する。例えば、VTPマネージャにオーディオパケット、ビデオパケット及び制御パケットを1つのRTPストリームに多重化させる一部の実施形態は、テレビ会議において他のデバイスに1つのRTPチャネルで伝送されるオーディオパケット、ビデオパケット及び制御パケットを区別するために、RTPパケットタイプフィールドを使用する。これらの実施形態のうちの一部では、VTPマネージャはまた、他のデバイスへのSIPパケットにおける制御メッセージ伝送を経路制御する。   To keep track of the original port number pair for each type of data packet, some embodiments store a mapping of the original port number pair to the data packet type. Thereafter, some of these embodiments use the packet type field of the protocol to distinguish different packets that are multiplexed on one communication channel. For example, some embodiments that allow the VTP manager to multiplex audio, video, and control packets into one RTP stream may be used to transmit audio, video, and audio packets transmitted over a single RTP channel to other devices in a video conference. The RTP packet type field is used to distinguish control packets. In some of these embodiments, the VTP manager also routes control message transmissions in SIP packets to other devices.

一部の実施形態では、異なるプロトコルを使用して通信された異なるパケットを区別するために(例えば、RTPを使用して搬送されたパケットとSIPを使用して搬送されたパケットとを区別するために)、データパケット署名(すなわち、パケットヘッダフォーマット)を識別して調べる。このような実施形態では、異なるプロトコルのデータパケットが判定された後、同じプロトコルを使用するデータパケット(例えば、RTPを使用するオーディオデータ及びビデオデータ)のフィールドが上述のように調べられて、異なるデータタイプを識別する。このようにして、VTPマネージャ3125は、異なる通信チャネルを通じて伝送されることを意図された異なるデータパケットを単一の通信チャネルを通じて伝送する。   In some embodiments, to distinguish between different packets communicated using different protocols (eg, to distinguish between packets carried using RTP and packets carried using SIP). And identifying and examining the data packet signature (ie, packet header format). In such an embodiment, after data packets of different protocols are determined, the fields of data packets using the same protocol (eg, audio and video data using RTP) are examined as described above and different Identify the data type. In this way, the VTP manager 3125 transmits different data packets intended to be transmitted over different communication channels over a single communication channel.

単一の通信チャネルを通じて異なるタイプのデータを結合する1つの手段について上述したが、他の実施形態では、他の技術を利用して、異なるパケットタイプを1つの通信ストリームに多重化する。例えば、一部の実施形態の1つの技術は、データパケットの元のポート番号ペアを追跡すること、及び後で抽出するためにデータパケット自体に元のポート番号ペアを格納することを含む。2人のテレビ会議参加者間での異なるタイプのデータを1つのポートペアチャネルに結合するためのさらに他の仕方が存在する。   Although one means of combining different types of data over a single communication channel has been described above, other embodiments utilize other techniques to multiplex different packet types into a single communication stream. For example, one technique of some embodiments includes tracking the original port number pair of a data packet, and storing the original port number pair in the data packet itself for later extraction. There are still other ways to combine different types of data between two video conference participants into one port pair channel.

VTPマネージャ3125がリモートデバイスから仮想通信チャネルを通じてデータパケットを受信する場合に、VTPマネージャ3125は、異なるプロトコルを使用して送信される異なるパケットを識別するためにデータパケットの署名を調べる。このような署名は、RTPパケットからSIPパケットを区別するために使用されうる。一部の実施形態のVTPマネージャは、単一の仮想チャネルに多重化された種々の異なるタイプのパケット(例えば、オーディオパケット、ビデオパケット及び制御パケット)を逆多重化するためにも、パケットの一部又は全部のパケットタイプフィールドを使用する。これらの異なるタイプのパケットを識別した後、VTPマネージャは、それが管理するポートペア番号とパケットタイプとのマッピングに基づいて、それぞれ異なるタイプのパケットをその対応するポートペア番号と関連付ける。その後、VTPマネージャ3125は、データパケットのポート番号ペアを、識別されたポート番号ペアで変更し、逆パケット化されるべきデータパケットを転送する。異なるパケットタイプを単一のチャネルに多重化するために異なる技術を使用する他の実施形態では、VTPマネージャは、パケットを解析するための異なる技術を使用する。   When the VTP manager 3125 receives a data packet from a remote device over a virtual communication channel, the VTP manager 3125 examines the signature of the data packet to identify different packets sent using different protocols. Such a signature can be used to distinguish SIP packets from RTP packets. In some embodiments, the VTP manager may also be able to demultiplex multiple different types of packets (eg, audio packets, video packets, and control packets) that are multiplexed into a single virtual channel. Use some or all packet type fields. After identifying these different types of packets, the VTP manager associates each different type of packet with its corresponding port pair number based on the mapping between the port pair numbers it manages and the packet type. After that, the VTP manager 3125 changes the port number pair of the data packet with the identified port number pair, and transfers the data packet to be depacketized. In other embodiments that use different techniques to multiplex different packet types onto a single channel, the VTP manager uses different techniques to analyze the packets.

VTPマネージャ3125は、異なるパケットの多重化及び逆多重化を行うためのこのような技術を使用することによって、単一の仮想通信チャネル(例えば、単一のポート番号ペア)を生成し、この単一の仮想通信チャネルを通じてビデオデータ、オーディオデータ及び制御信号データを伝送し、この単一の仮想通信チャネルを通じてリモートデバイスからオーディオパケット、ビデオパケット及び制御パケットを受信する。したがって、ネットワークの観点からは、この単一の仮想通信チャネルを介してデータが伝送されるが、セッションネゴシエーションマネージャ3105及びプロトコルマネージャ3110の観点からは、異なる通信チャネルを通じてビデオデータ、オーディオデータ及び制御信号データが伝送される。   The VTP manager 3125 creates a single virtual communication channel (eg, a single port number pair) by using such techniques to multiplex and demultiplex different packets, and Video data, audio data, and control signal data are transmitted through one virtual communication channel, and audio packets, video packets, and control packets are received from a remote device through the single virtual communication channel. Thus, from a network perspective, data is transmitted over this single virtual communication channel, but from a session negotiation manager 3105 and protocol manager 3110 perspective, video data, audio data and control signals are transmitted over different communication channels. Data is transmitted.

テレビ会議においてリモートデバイスに伝送される画像と同様に、テレビ会議においてリモートデバイスから伝送される画像はパケット形式で受信される。受信器モジュール3130は、パケットを受信し、そのパケットを逆パケット化して、画像を再構成してから、復号されるべき画像をビデオバッファ(例えば、図16のバッファ1616)に格納する。一部の実施形態では、画像を逆パケット化することは、任意のヘッダを削除すること、及びパケットから画像データ(及び場合によってはサイズデータ)のみを有するビットストリームを再構成することを含む。   Like the image transmitted to the remote device in the video conference, the image transmitted from the remote device in the video conference is received in a packet format. Receiver module 3130 receives the packet, depackets the packet, reconstructs the image, and then stores the image to be decoded in a video buffer (eg, buffer 1616 in FIG. 16). In some embodiments, depacketizing the image includes removing any headers and reconstructing a bitstream having only image data (and possibly size data) from the packet.

メディアトランスポートマネージャ3135は、データ伝送の速度(すなわち、ビットレート)を動的かつ適応的に調整するために、ネットワークから受信したフィードバックデータ(例えば、片道レイテンシ、帯域幅推定ビットレート、パケット損失データ、ラウンドトリップ遅延時間データなど)を処理する。メディアトランスポートマネージャ3135はまた、一部の他の実施形態では処理されたフィードバックデータに基づいて誤り耐性を制御し、拡大縮小、サイズ変更及び符号化などのテレビ会議モジュール1602の他の動作を調整するためにテレビ会議マネージャ1604にフィードバックデータを送信してもよい。会議においてリモートデバイスがパケットのすべてを処理できるとは限らない場合に汎用伝送バッファにパケットを破棄させることに加えて、テレビ会議モジュール及びエンコーダは、画像ごとにより少ないパケットが送信されるように、画像を符号化するためにより低いビットレートを使用できる。   The media transport manager 3135 may provide feedback data (eg, one-way latency, bandwidth estimation bit rate, packet loss data) received from the network to dynamically and adaptively adjust the rate (ie, bit rate) of data transmission. , Round trip delay time data, etc.). The media transport manager 3135 also controls error resilience based on the processed feedback data in some other embodiments and coordinates other operations of the video conferencing module 1602 such as scaling, resizing, and encoding. Feedback data may be sent to the video conference manager 1604 to do so. In addition to having the general purpose transmission buffer discard packets if the remote device cannot handle all of the packets in the conference, the video conferencing module and the encoder also allow the video conferencing module to transmit fewer packets per image. Can be used for encoding.

一部の実施形態では、メディアトランスポートマネージャ3135はまた、上述のように、カメラの動作電力モードがどのように構成されるかに影響を及ぼしうる、消費電力及び熱的レベルなどのデバイスの他の変数を監視してもよい。このデータは、フィードバックデータへの追加入力として使用されてもよい(例えば、デバイスが熱くなりすぎているならば、メディアトランスポートマネージャ3135は、処理速度を落とさせようとしてもよい)。   In some embodiments, the media transport manager 3135 may also control other aspects of the device, such as power consumption and thermal levels, that may affect how the operating power mode of the camera is configured, as described above. May be monitored. This data may be used as an additional input to the feedback data (eg, if the device is too hot, media transport manager 3135 may attempt to slow down processing).

ここで、ネットワーキングマネージャ3100のいくつかの例示的な動作について、図16に関して説明する。テレビ会議においてデュアルカメラ携帯デバイスのカメラによって取り込まれた画像のリモートデバイスへの伝送について最初に説明し、続いて、リモートデバイスからの画像の受信について説明する。送信器モジュール3115は、符号化された画像をバッファ1612から読み出し、この画像は、テレビ会議においてリモートデバイスに伝送されうる。   Some example operations of the networking manager 3100 will now be described with respect to FIG. Transmission of an image captured by a camera of a dual camera portable device to a remote device in a video conference will be described first, followed by reception of an image from the remote device. Transmitter module 3115 reads the encoded image from buffer 1612, which can be transmitted to a remote device in a video conference.

プロトコルマネージャ3110は、使用するのに適切なプロトコル(例えば、オーディオ及びビデオを伝送するためのRTP)を決定し、セッションネゴシエーションマネージャ3105は、このようなプロトコルを送信器モジュール3115に通知する。次に、送信器モジュール3115は、画像をパケット化し、パケット化された画像を汎用伝送バッファ3120に送る。汎用伝送バッファマネージャ3122は、セッションネゴシエーションマネージャ3105から命令を受け取り、画像を伝送又は破棄するように汎用伝送バッファ3120に指示する。VTPマネージャ3125は、汎用伝送バッファ3120からパケットを受け取り、単一の通信チャネルを通じてリモートデバイスにパケットを伝送するためにパケットを処理する。   The protocol manager 3110 determines the appropriate protocol to use (eg, RTP for transmitting audio and video), and the session negotiation manager 3105 notifies such a protocol to the transmitter module 3115. Next, the transmitter module 3115 packetizes the image and sends the packetized image to the general-purpose transmission buffer 3120. The general purpose transmission buffer manager 3122 receives the command from the session negotiation manager 3105 and instructs the general purpose transmission buffer 3120 to transmit or discard the image. VTP manager 3125 receives packets from universal transmission buffer 3120 and processes the packets to transmit the packets to a remote device over a single communication channel.

リモートデバイスから画像を受信した場合に、VTPマネージャ3125は、仮想化された単一の通信チャネルを通じてリモートデバイスからパケット化された画像を受信し、画像を受信するために割り当てられた通信チャネル(例えば、ビデオ通信チャネル)を通じて受信器モジュール3130に画像を向けるためにパケットを処理する。   Upon receiving an image from a remote device, the VTP manager 3125 receives the packetized image from the remote device through a single virtualized communication channel, and the communication channel assigned to receive the image (eg, , Video communication channel) to direct the image to the receiver module 3130.

受信器モジュール3130は、画像を再構成するためにパケットを逆パケット化し、デコーダ1660によって復号するためにバッファ1616に画像を送信する。受信器モジュール3130はまた、メディアトランスポートマネージャ3135に制御信号メッセージ(例えば、テレビ会議においてリモートデバイスから受信したパケットの確認応答)を転送する。   Receiver module 3130 depackets the packets to reconstruct the image and sends the image to buffer 1616 for decoding by decoder 1660. Receiver module 3130 also forwards control signal messages (eg, acknowledgments of packets received from remote devices in a video conference) to media transport manager 3135.

ネットワーキングマネージャ3100のいくつかの例示的な動作について上述した。これらは、例示的な例にすぎない。その理由は、種々の他の実施形態は、異なるモジュールを使用して、又はモジュール間に異なるように拡散された機能を用いて、これらの又は異なる動作を実行するからである。そのうえ、ネットワーキングマネージャ3100のモジュール又は他のモジュールによって動的なビットレート調整などの追加の動作が実行されてもよい。   Some exemplary operations of networking manager 3100 have been described above. These are only illustrative examples. The reason is that various other embodiments perform these or different operations using different modules or with functions spread differently between the modules. In addition, additional operations such as dynamic bit rate adjustment may be performed by modules of networking manager 3100 or other modules.

IV.会議中の調整及び制御動作
A.ピクチャインピクチャの変更
1.コーナー向けスナップ
本発明の一部の実施形態により、デュアルカメラ携帯デバイスのユーザは、合成表示を形成する1つ以上の表示域を移動させることによって、デバイスに表示された合成表示を変更する。1つのこのような例は、PIP表示の挿入表示域を移動させることである。図32は、テレビ会議中に実行されるこのような例を示す。テレビ会議では、ユーザは、このエリアが背景表示域の関心エリアを遮っている場合など、さまざまな理由で前景挿入表示域を移動させたいかもしれない。
IV. Coordination and control operations during a meeting Change of picture-in-picture Corner Snaps According to some embodiments of the present invention, a user of a dual camera portable device changes a composite view displayed on a device by moving one or more viewports that form the composite view. One such example is to move the insertion display area of the PIP display. FIG. 32 illustrates such an example performed during a video conference. In a video conference, the user may want to move the foreground insert display area for various reasons, such as when this area blocks the area of interest in the background display area.

図32は、デバイスのUI3205における挿入表示域3240の移動を、このUIの5つの異なる段階3210、3215、3220、3225及び3230として示す。第1段階3210は、デバイスのローカルユーザとリモートデバイスのリモートユーザとの間のテレビ会議中のUI3205を示す。図32のUI3205は、テレビ会議が開始した後の図11の第5段階に示されている同じPIP表示であるPIP表示を示す。この例では、ローカルユーザのデバイスによって取り込まれたビデオが挿入表示域3240に表示され、リモートユーザのデバイスによって取り込まれたビデオが背景表示域3235に表示されている。図示のように、表示域1155は、テレビ会議を終了させるために選択可能UI項目3245を含む。一部の実施形態では、表示域1155のレイアウトは、上述した図12の表示域1155のレイアウトと同じである。   FIG. 32 illustrates the movement of the insertion display area 3240 in the device UI 3205 as five different stages 3210, 3215, 3220, 3225 and 3230 of this UI. The first stage 3210 shows the UI 3205 during a video conference between a local user of the device and a remote user of a remote device. The UI 3205 in FIG. 32 shows the PIP display, which is the same PIP display shown in the fifth stage in FIG. 11 after the video conference has started. In this example, video captured by the local user's device is displayed in the insert display area 3240, and video captured by the remote user's device is displayed in the background display area 3235. As shown, display area 1155 includes a selectable UI item 3245 to end the video conference. In some embodiments, the layout of display area 1155 is the same as the layout of display area 1155 of FIG. 12 described above.

第2段階3215は、ユーザが挿入表示域3240を選択することによってコーナー向けスナップ動作を開始することを示す。この例では、挿入表示域3240内の任意の位置に指3255を置くことによって選択がなされる。図示のように、この選択は、挿入表示域3240の太い境界線3260として表示される。異なる実施形態は、表示域3240を強調表示することによって、表示域3240を振動させることによってなど、異なる仕方でこのような選択を示してもよい。   The second stage 3215 indicates that the user initiates the corner snap operation by selecting the insertion display area 3240. In this example, the selection is made by placing finger 3255 at an arbitrary position in insertion display area 3240. As shown, this selection is displayed as a thick border 3260 of the insertion display area 3240. Different embodiments may indicate such selections in different ways, such as by highlighting display area 3240, oscillating display area 3240, and so on.

第3段階3220は、ユーザがPIP表示3250内のあるエリアからこの表示内の別のエリアにPIP表示3250の挿入表示域3240を移動させ始めた後のUI3205を示す。この例では、挿入表示域3240は、矢印3265によって示されるように、PIP表示3250の左下隅からこの表示の右下隅に移動し始めている。この例では、挿入表示域3240は、第2段階3215で挿入表示を選択した後でユーザが自身の指3255をPIP表示3250の右下隅に向かってドラッグすることによって、移動される。一部の実施形態は、PIP表示3250において挿入表示域3240を移動させるための他の技術を提供する。   The third step 3220 shows the UI 3205 after the user has begun to move the insertion display area 3240 of the PIP display 3250 from one area in the PIP display 3250 to another area in this display. In this example, insertion display area 3240 has begun to move from the lower left corner of PIP display 3250 to the lower right corner of the display, as indicated by arrow 3265. In this example, the insertion display area 3240 is moved by the user dragging his / her finger 3255 toward the lower right corner of the PIP display 3250 after selecting the insertion display in the second step 3215. Some embodiments provide other techniques for moving the insertion display area 3240 in the PIP display 3250.

第4段階3225は、ユーザがデバイス3200の画面から自身の指3255を離した後の状態にあるUI3205を示す。この状態では、挿入表示域3240は、依然として、第3段階3220におけるユーザの指の移動に基づいて識別された、PIP表示3250の右下隅に向かって移動している。言い換えれば、指3255がPIP表示3250の右下隅に向かっての挿入表示域3240の移動を開始した後、UI3205は、指3255を離した後でさえも、この移動を維持する。この移動を維持するため、一部の実施形態のUI3205は、ユーザが自身の指3255を離す前に、ユーザのドラッグ動作が特定のしきい値量よりも大きい(例えば、特定の距離又は特定の時間長よりも大きい)ことを必要とする。そうでない場合、これらの実施形態は、挿入表示域3240をわずかに移動させた後、又はまったく移動させなかった後、この表示域3240をその元の左隅位置に保つ。   The fourth step 3225 shows the UI 3205 in a state after the user has released his / her finger 3255 from the screen of the device 3200. In this state, the insertion display area 3240 is still moving toward the lower right corner of the PIP display 3250 identified based on the movement of the user's finger in the third stage 3220. In other words, after finger 3255 begins to move insertion display area 3240 toward the lower right corner of PIP display 3250, UI 3205 maintains this movement even after finger 3255 is released. To maintain this movement, the UI 3205 of some embodiments may indicate that the user's drag motion is greater than a certain threshold amount (e.g., a certain distance or a certain distance) before the user releases his or her finger 3255. Greater than the length of time). Otherwise, these embodiments keep the display area 3240 in its original left corner position after slightly or not moving the insertion display area 3240.

しかし、一部の実施形態により、挿入表示域がその新たな位置に到達する前にユーザがドラッグ動作を止めた後でさえも、挿入表示域が移動できるが、他の実施形態は、挿入表示域がその新たな位置に到達するまで自身のドラッグ動作を維持するようにユーザに要求する。一部の実施形態は、挿入表示域を移動させるためのさらに他の技術を提供する。例えば、一部の実施形態は、挿入表示域3240が実際に移動し始める前に挿入表示域3240をどこに向けるべきかなどを指定することがユーザに要求してもよい。一部の実施形態は、携帯デバイスを異なる角度に傾斜させるだけで、表示域がスライド可能であり、コーナー向けスナップ動作が可能になってもよい。   However, while some embodiments allow the insertion display area to be moved even after the user stops dragging before the insertion display area reaches its new position, other embodiments use the insertion display area. Ask the user to maintain his drag action until the zone reaches its new location. Some embodiments provide yet another technique for moving the insertion display area. For example, some embodiments may require the user to specify where the insertion display area 3240 should be directed before the insertion display area 3240 actually moves. In some embodiments, simply tilting the mobile device to a different angle may allow the display area to be slidable and allow for cornering snap operations.

第5段階3230は、挿入表示域3240がPIP表示3250の右下隅でその新たな位置に到達した後のUI3205を示す。第5段階3230における太い境界線3260の除去は、コーナー向けスナップ動作が完了したことを示す。   Fifth stage 3230 shows UI 3205 after insertion display area 3240 has reached its new position at the lower right corner of PIP display 3250. The removal of the thick border 3260 in the fifth step 3230 indicates that the corner snapping operation has been completed.

上述の第3段階3220、第4段階3225及び第5段階3230に示されている移動を容易にするため、一部の実施形態のUI3205は、ユーザが挿入表示域をPIP表示3250の隅に向かって移動させると、挿入表示域がその隅にすばやくスナップできるスナップルールを用いる。例えば、ユーザが特定の隅に向かってしきい値量を超えて挿入表示域3240をドラッグした場合に、一部の実施形態のUI3205は、挿入表示域3240の動きの方向を特定し、動きがしきい値量を超えたと判定し、その後、挿入表示域3240をスナップできるUI3205内の次のグリッド点をユーザがさらに入力しなくても、挿入表示域3240を自動的に移動する。一部の実施形態では、挿入表示域3240をスナップするために提供されるグリッド点のみが、PIP表示3250の4つの隅におけるグリッド点である。他の実施形態は、UI3205内に(例えば、PIP表示3250内に)、挿入表示域3240がスナップできる(すなわち、エリア3240の辺又は頂点に置くか又は位置合わせされうる)他のグリッド点を提供する。   To facilitate the movement shown in the third stage 3220, the fourth stage 3225, and the fifth stage 3230 described above, the UI 3205 of some embodiments may allow the user to move the insertion display area toward a corner of the PIP display 3250. Use a snap rule that allows the insertion display area to snap quickly to that corner when moved. For example, if the user drags the insertion display area 3240 beyond a threshold amount toward a particular corner, the UI 3205 of some embodiments may specify the direction of movement of the insertion display area 3240, and It is determined that the threshold amount has been exceeded, and thereafter, the insertion display area 3240 is automatically moved without further input of the next grid point in the UI 3205 where the insertion display area 3240 can be snapped. In some embodiments, the only grid points provided to snap inset display area 3240 are grid points at the four corners of PIP display 3250. Other embodiments provide other grid points in the UI 3205 (eg, in the PIP display 3250) where the inset viewport 3240 can snap (ie, be placed or aligned on a side or vertex of the area 3240). I do.

さらに他の実施形態は、挿入表示域をPIP表示3250の任意の点に配置できるように、グリッド点を採用しなくてもよい。さらに他の実施形態は、ユーザがUIのグリッド点機能へのスナップをオン又はオフにできる機能を提供する。さらに、異なる実施形態により、ユーザは、デバイスから取り込まれたビデオに加えて、アイコンなどの種々の項目を用いたコーナー向けスナップ動作が可能になってもよい。   Still other embodiments may not employ grid points so that the insertion display area can be located at any point of the PIP display 3250. Still other embodiments provide the ability for a user to turn on or off snapping to a grid point feature in the UI. Further, different embodiments may allow a user to snap to corners using various items, such as icons, in addition to the video captured from the device.

図33は、UI3205におけるコーナー向けスナップ動作の他の2つの例3330及び3335を示す。これらの他のコーナー向けスナップ動作は、ユーザの垂直又は斜めのドラッグ動作に基づいて、挿入表示域3240がPIP表示3250内で垂直又は斜めに移動されることを示す。   FIG. 33 illustrates two other examples 3330 and 3335 of a corner snap action in the UI 3205. These other corner snapping actions indicate that the insertion display area 3240 is moved vertically or diagonally within the PIP display 3250 based on the user's vertical or diagonal drag action.

図32及び図33はPIP表示内での挿入表示域の移動を示しているが、他の実施形態は、同様の技術を利用して、他のタイプのPIP表示又は他のタイプの合成表示において表示域を移動することが当業者には理解されよう。例えば、以下でさらに説明するように、一部の実施形態のPIP表示は2つ以上の前景挿入表示を有し、これらの挿入表示は、図32及び図33に関して上述した技術と同様の技術を使用して、PIP表示において移動されうる。また、一部の実施形態は、同様の技術を使用して、合成表示で表示域を移動させる(例えば、ユーザのドラッグ移動を通じて、ある表示域を画面の左側から画面の右側に移動させる)。そのうえ、合成表示の表示域(群)の移動によって、テレビ会議マネージャ1604にユーザの入力に応答して合成表示で表示域を再合成させるなどの、デュアルカメラ携帯デバイスの画像処理動作の変更を引き起こすことができる。以下でさらに説明するように、一部の実施形態は、第1表示域を第1位置から押すと第2表示域が第3位置から第1位置に移動されるスナップアンドプッシュ(snap and push)技術を採用する。   While FIGS. 32 and 33 show the movement of the insertion display area within the PIP display, other embodiments utilize similar techniques to allow for other types of PIP display or other types of composite display. It will be appreciated by those skilled in the art to move the viewing area. For example, as described further below, some embodiments of the PIP display have more than one foreground insert display, and these insert displays use techniques similar to those described above with respect to FIGS. Can be used to move in the PIP display. Also, some embodiments use a similar technique to move the display area in a composite display (eg, moving a display area from the left side of the screen to the right side of the screen through a user's drag movement). In addition, moving the display area (s) of the composite display causes changes in the image processing operation of the dual camera portable device, such as causing the video conference manager 1604 to re-synthesize the display area in the composite display in response to user input. be able to. As described further below, some embodiments include snap and push in which pressing the first display area from the first position moves the second display area from the third position to the first position. Adopt technology.

2.回転
一部の実施形態は、テレビ会議に使用される携帯デバイスのユーザが会議中にデバイスを回転した場合に、テレビ会議中に提示されるPIP表示を回転する。図34は、デバイスが垂直位置から水平位置に回転した場合のデバイス3400のUI1105の回転を示す。画面の長辺が垂直である場合にデバイス3400は垂直に保持され、画面の長辺が水平である場合にデバイス3400は水平に保持される。図34に示される例では、UI1105は、デバイスの垂直保持に最適化された縦ビューから、デバイス3400の水平保持に最適化された横ビューに回転する。この回転機能によって、ユーザは、携帯デバイス3400が垂直又は水平のどちらに保持されている場合にも直立位置に表示されたUI1105を見ることができる。
2. Rotation Some embodiments rotate the PIP display presented during a video conference when the user of the mobile device used for the video conference rotates the device during the conference. FIG. 34 shows the rotation of the UI 1105 of the device 3400 when the device is rotated from a vertical position to a horizontal position. When the long side of the screen is vertical, the device 3400 is held vertically, and when the long side of the screen is horizontal, the device 3400 is held horizontally. In the example shown in FIG. 34, the UI 1105 rotates from a vertical view optimized for vertical holding of the device to a horizontal view optimized for horizontal holding of the device 3400. This rotation feature allows the user to see the UI 1105 displayed in an upright position whether the portable device 3400 is held vertically or horizontally.

図34は、UI1105の回転を、6つの異なる動作段階3410、3415、3420、3425、3430及び3435として示す。第1段階3410は、デバイスのローカルユーザとリモートデバイスのリモートユーザとの間のテレビ会議中のUI1105を示す。図34のUI1105は、テレビ会議が確立された後の図11の第5段階に示されているのと同じPIP表示であるPIP表示1180を示す。この例では、ローカルユーザのデバイスによって取り込まれたビデオが挿入表示域1160に表示され、リモートユーザのデバイスによって取り込まれたビデオが背景表示域1170に表示されている。PIP表示1180の下の表示域1155には、選択可能UI項目3485(例えば、会議終了ボタン3485)が含まれ、ユーザは、このUI項目を、テレビ会議を終了するために(例えば、シングルフィンガータップを通じて)選択してもよい。   FIG. 34 shows the rotation of the UI 1105 as six different operating phases 3410, 3415, 3420, 3425, 3430 and 3435. The first stage 3410 shows the UI 1105 during a video conference between a local user of the device and a remote user of a remote device. The UI 1105 of FIG. 34 shows a PIP display 1180 that is the same PIP display as shown in the fifth stage of FIG. 11 after the video conference has been established. In this example, the video captured by the local user's device is displayed in the insert display area 1160, and the video captured by the remote user's device is displayed in the background display area 1170. The display area 1155 below the PIP display 1180 includes a selectable UI item 3485 (e.g., end conference button 3485), and the user can use this UI item to end the video conference (e.g., single finger tap). Through).

第2段階3415は、ユーザがデバイス3400を横に傾斜させ始めた後のUI1105を示す。この例では、ユーザは、矢印3460によって示されるように、デバイス3400を垂直に保持されている状態から水平に保持されている状態に傾斜させ始めている。UI1105の外見は変化しない。他の状況では、ユーザが、デバイス3400を水平に保持されている状態から垂直に保持されている状態に傾斜させたいと考える場合もあり、これらの状況では、UI1105は、水平に最適化されたビューから垂直に最適化されたビューに切り換わる。   The second stage 3415 shows the UI 1105 after the user has begun to tilt the device 3400 sideways. In this example, the user has begun to tilt device 3400 from being held vertically to being held horizontally, as indicated by arrow 3460. The appearance of the UI 1105 does not change. In other situations, the user may wish to tilt the device 3400 from a horizontally held state to a vertically held state, and in these situations, the UI 1105 may have a horizontally optimized state. Switch from a view to a vertically optimized view.

第3段階3420は、デバイス3400が垂直に保持されている状態から水平に保持されている状態に傾斜された後の状態のUI1105を示す。この状態では、UI1105の外見はまだ変化していない。一部の実施形態では、デバイス3400がしきい値量を過ぎても傾斜されており、この点を超えて、ある期間保たれた後で、回転動作がトリガされる。図34に示される例では、デバイスが水平位置に置かれた後、ある短期間の間隔が経過するまで、しきい値量及び回転の速度によってUI1105が回転しないと想定されている。異なる実施形態は、回転動作をトリガするための異なるしきい値量及び待ち期間を有する。例えば、一部の実施形態は、デバイス3400の向きとは関係なくUI1105が常に直立位置に表示されるように見えさせるように、回転動作をトリガするためのしきい値が低くてもよい。他の実施形態では、デバイス3400のユーザは、いつ回転動作をトリガできるかを(例えば、メニュー基本設定を通じて)指定してもよい。また、一部の実施形態は、デバイスがしきい値量を超えても傾斜されている後の回転を遅延させなくてもよい。さらに、異なる実施形態により、携帯デバイス上のスイッチを切り換えることによって、音声コマンドを与えることによって、メニューによる選択時などの、異なる仕方で、回転動作をトリガできてもよい。   The third step 3420 shows the UI 1105 after the device 3400 has been tilted from being held vertically to being held horizontally. In this state, the appearance of the UI 1105 has not yet changed. In some embodiments, the device 3400 is tilted past a threshold amount, beyond which a rotation operation is triggered after being held for a period of time. In the example shown in FIG. 34, it is assumed that the UI 1105 does not rotate due to the threshold amount and the rotation speed until a certain short interval elapses after the device is placed in the horizontal position. Different embodiments have different threshold amounts and waiting periods for triggering the rotation operation. For example, some embodiments may have a lower threshold for triggering a rotation operation such that the UI 1105 always appears to be displayed in an upright position regardless of the orientation of the device 3400. In other embodiments, a user of device 3400 may specify (eg, through a menu preference) when a rotation operation can be triggered. Also, some embodiments may not delay rotation after the device is tilted if the device exceeds a threshold amount. Furthermore, different embodiments may be able to trigger the rotation in different ways, such as by selecting a menu, by switching a switch on the mobile device, and giving a voice command.

第4段階3425は、回転動作が開始した後のUI1105を示す。一部の実施形態は、回転動作に関するフィードバックをユーザに提供するために、回転表示域をアニメーション化する。図34は、このようなアニメーションの一例を示す。具体的には、図34は、その第4段階3425で、表示域1180及び1155が一緒に回転し始めるところを示している。表示域1180及び1155は、UI1105の中心を通る軸3465(すなわち、z軸)のまわりを回転する。表示域1180及び1155は、デバイス3400の回転の反対方向に(例えば、デバイス3400の傾斜を通じて)同じ量だけ回転する。この例では、デバイス3400が(垂直に保持される状態から水平に保持される状態に移ることによって)時計回り方向に90度回転したので、この回転動作によって、表示域1180及び1155は反時計回り方向に90度回転される。表示域1180及び1155が回転すると、表示域1180及び1155が依然としてUI1105上で全体的に見えるように、表示域1180及び1155はUI1105に合うように比例して縮む。一部の実施形態は、このデバイス3400の状態を示すメッセージを(例えば、「回転中」という単語を表示することによって)提供してもよい。   The fourth step 3425 shows the UI 1105 after the rotation operation has started. Some embodiments animate the rotating display area to provide feedback to the user regarding the rotating motion. FIG. 34 shows an example of such an animation. Specifically, FIG. 34 shows that, at its fourth stage 3425, display areas 1180 and 1155 begin to rotate together. Display areas 1180 and 1155 rotate about axis 3465 (ie, the z-axis) passing through the center of UI 1105. Viewing areas 1180 and 1155 rotate the same amount in the opposite direction of rotation of device 3400 (eg, through tilting of device 3400). In this example, the device 3400 has been rotated 90 degrees in the clockwise direction (by moving from a state held vertically to a state held horizontally), and this rotation causes the display areas 1180 and 1155 to rotate counterclockwise. Rotated 90 degrees in the direction. As the display areas 1180 and 1155 rotate, the display areas 1180 and 1155 shrink proportionately to fit the UI 1105 so that the display areas 1180 and 1155 are still entirely visible on the UI 1105. Some embodiments may provide a message indicating the status of the device 3400 (eg, by displaying the word “rotating”).

第5段階3430は、表示域1180及び1155が縦ビューから横ビューに反時計回りに90度回転した後のUI1105を示す。この段階では、表示域1180及び1155は回転されているが、まだUI1105の幅全体に拡張されていない。矢印3475は、第5段階の終了時に、表示域1180及び1155がUI1105の幅全体に合うように側方に拡張し始めることを示す。拡張は第4段階3425での回転と同時に実行できるので、異なる実施形態は、この段階を含まなくてもよい。   The fifth step 3430 shows the UI 1105 after the display areas 1180 and 1155 have been rotated 90 degrees counterclockwise from the vertical view to the horizontal view. At this stage, the display areas 1180 and 1155 have been rotated but not yet expanded to the full width of the UI 1105. The arrow 3475 indicates that at the end of the fifth phase, the display areas 1180 and 1155 begin to expand sideways to fit the entire width of the UI 1105. Different embodiments may not include this step, since the expansion can be performed simultaneously with the rotation in the fourth step 3425.

第6段階3435は、表示域1180及び1155がUI1105の表示全体を占有するように拡張された後のUI1105を示す。上述のように、他の実施形態は、この回転を異なるように実施してもよい。一部の実施形態では、しきい値量を超えてデバイスの画面を回転するだけで、デバイス3400の向きに関係なく、回転動作をトリガしてもよい。   A sixth step 3435 shows the UI 1105 after the display areas 1180 and 1155 have been expanded to occupy the entire display of the UI 1105. As mentioned above, other embodiments may implement this rotation differently. In some embodiments, simply rotating the screen of the device beyond a threshold amount may trigger a rotation operation regardless of the orientation of the device 3400.

また、他の実施形態は、回転動作を示すための異なるアニメーションを提供してもよいだろう。図34で実行される回転動作は、表示域1180及び1155がUI1105の中心のまわりを回転することを含む。あるいは、表示域は、これらの個別の表示域の中心軸のまわりを個別に回転してもよい。1つのこのような手法が図35に示されている。図35は、UI1105のPIP表示1180の表示域1170及び1160の回転をアニメーション化する代替方法を示す。図35に示されるPIP表示1180は、図11に示されるのと同じPIP表示1180である。   Also, other embodiments could provide different animations to show the rotation action. The rotation operation performed in FIG. 34 includes the display areas 1180 and 1155 rotating around the center of the UI 1105. Alternatively, the display areas may be individually rotated about the central axis of these individual display areas. One such approach is shown in FIG. FIG. 35 illustrates an alternative method of animating the rotation of the display areas 1170 and 1160 of the PIP display 1180 of the UI 1105. The PIP display 1180 shown in FIG. 35 is the same PIP display 1180 as shown in FIG.

図35は、PIP表示1180の回転を、6つの異なる動作段階3410、3415、3420、3525、3530及び3535として示す。UI1105の動作の前半の3つの段階は、図34のUI1105に関して説明した動作の前半の3つの段階と同一である。図34と図35の両方に対する第3段階では、デバイス3500は、垂直に保持された状態から水平に保持された状態に移っており、UI1105の回転はまだ開始していない。   FIG. 35 shows the rotation of the PIP display 1180 as six different phases of operation 3410, 3415, 3420, 3525, 3530 and 3535. The first three stages of the operation of the UI 1105 are the same as the first three stages of the operation described with reference to the UI 1105 of FIG. In the third stage for both FIGS. 34 and 35, device 3500 has transitioned from a vertically held state to a horizontally held state, and rotation of UI 1105 has not yet started.

第4段階3525は、回転をアニメーション化する代替方法を示す。この段階では、回転動作が開始している。具体的には、第4段階3525では、表示域1170及び1160が回転し始めるところが示されている。表示域1170及び1160は、それぞれ表示域のそれぞれの中心を通る軸3567及び3565(すなわち、z軸)のまわりをそれぞれ回転する。表示域1170及び1160は、(例えば、デバイス3500の傾斜による)デバイス3500の回転の反対方向に同じ量だけ回転する。上記の図34の第4段階3425に示されているのと同様に、デバイス3500が(垂直に保持される状態から水平に保持される状態に移ることによって)時計回り方向に90度回転したので、回転動作によって、表示域1170及び1160は反時計回り方向に90度回転される。表示域1170及び1160が回転すると、表示域1170及び1160が依然としてUI1105上で全体的に見えるように、表示域1170及び1160はUI1105に合うように比例して縮む。   The fourth step 3525 shows an alternative way to animate the rotation. At this stage, the rotation operation has started. Specifically, in a fourth step 3525, it is shown that the display areas 1170 and 1160 begin to rotate. Viewports 1170 and 1160 respectively rotate about axes 3567 and 3565 (ie, the z-axis) passing through the respective centers of the displayportions. Display areas 1170 and 1160 rotate the same amount in the opposite direction of rotation of device 3500 (eg, due to tilt of device 3500). Since device 3500 has been rotated 90 degrees clockwise (by moving from a vertically held state to a horizontally held state), similar to that shown in fourth stage 3425 of FIG. 34 above. , The display areas 1170 and 1160 are rotated 90 degrees counterclockwise. As the display areas 1170 and 1160 rotate, the display areas 1170 and 1160 shrink proportionally to fit the UI 1105 so that the display areas 1170 and 1160 are still fully visible on the UI 1105.

第5段階3530は、表示域1170及び1160のそれぞれが縦ビューから横ビューに反時計回りに90度回転した後のUI1105を示す。この段階では、表示域1170及び1160は回転したが、まだUI1105の幅全体に拡張されていない。さらに、表示域1160は、その最終位置に移動していない。PIP表示1180内の挿入表示域1160の最終位置は、第1段階3410に示されるPIP表示1180内の挿入表示域1160の位置(例えば、PIP表示1180の左下隅の挿入表示域1160)によって決定される。この段階では、挿入表示域1160は、まだUI1105の右上隅にある。   Fifth stage 3530 shows UI 1105 after each of display areas 1170 and 1160 has been rotated 90 degrees counterclockwise from portrait view to landscape view. At this stage, the display areas 1170 and 1160 have rotated, but have not yet expanded to the full width of the UI 1105. Further, display area 1160 has not moved to its final position. The final position of the insertion display area 1160 in the PIP display 1180 is determined by the position of the insertion display area 1160 in the PIP display 1180 shown in the first step 3410 (for example, the insertion display area 1160 at the lower left corner of the PIP display 1180). You. At this stage, the insertion display area 1160 is still in the upper right corner of the UI 1105.

矢印3580は、第5段階3530の終了時に、水平に保持されているデバイスのUI1105の幅全体にメイン表示域1170が合うまで、表示域1170及び1160が側方に拡張し始めることを示す。さらに、矢印3575は、挿入表示域1160がPIP表示1180の左下隅にスライドすることを示す。   The arrow 3580 indicates that at the end of the fifth stage 3530, the display areas 1170 and 1160 begin to expand sideways until the main display area 1170 fits the entire width of the UI 1105 of the horizontally held device. Further, arrow 3575 indicates that insertion display area 1160 slides to the lower left corner of PIP display 1180.

異なる実施形態は、これを異なるように実施してもよい。一部の実施形態では、挿入表示域1160の移動は、メイン表示域1170の拡張と同時に、又は順次、行われてもよい。さらに、一部の実施形態は、新たなPIP表示1180を生成するために、メイン表示域1170の拡張前、拡張中に、又は拡張後に、挿入表示域1160をサイズ変更してもよい。この例では、表示域1155は、表示域1160及び1170が回転されている間、非表示になる。しかし、一部の実施形態では、表示域1155は、回転中にUI1105に残存し、表示域1160及び1170と共に回転してもよい。   Different embodiments may implement this differently. In some embodiments, the movement of the insertion display area 1160 may be performed simultaneously or sequentially with the expansion of the main display area 1170. Further, some embodiments may resize the insertion display area 1160 before, during, or after expansion of the main display area 1170 to generate a new PIP display 1180. In this example, display area 1155 is hidden while display areas 1160 and 1170 are being rotated. However, in some embodiments, display area 1155 may remain in UI 1105 during rotation and rotate with display areas 1160 and 1170.

第6段階3535は、挿入表示域1160がその新たな位置に到達し、表示域1160及び1170がUI1105の幅全体に合うように適切に拡張された後のUI1105を示す。この例では、挿入表示域1160は、この時点では、PIP表示1180の左下隅にあり、メイン表示域1170に重なっている。PIP表示1180は、この時点で、第1段階3410のPIP表示1180と同じ表示構成を有する。第6段階におけるPIP表示1180の下の表示域1155の外見は、回転動作が完了したことを示す。前述のように、しきい値量を超えてデバイスの画面を回転するだけで、デバイス3500の向きに関係なく、回転動作をトリガできる。   The sixth step 3535 shows the UI 1105 after the insertion display area 1160 has reached its new position and the display areas 1160 and 1170 have been appropriately expanded to fit the full width of the UI 1105. In this example, the insertion display area 1160 is now at the lower left corner of the PIP display 1180 and overlaps the main display area 1170. The PIP display 1180 now has the same display configuration as the PIP display 1180 in the first stage 3410. The appearance of the display area 1155 below the PIP display 1180 at the sixth stage indicates that the rotation operation has been completed. As described above, by simply rotating the screen of the device beyond the threshold amount, the rotation operation can be triggered regardless of the orientation of the device 3500.

図34及び図35に関して上述した例では、表示域1170の向きも(すなわち、縦から横に)変化する。すなわち、表示域1170が第3段階3420で回転した後、UI1105全体を埋めるようにPIP表示1180を水平に拡張することによって、表示域1170の向きが縦から横に変化する。一部の実施形態では、デバイス3500が回転した場合に、リモートデバイスによって取り込まれたビデオが回転するが、リモートデバイスによって取り込まれたビデオを表示する表示域の向きは変化しないままである。1つのこのような例が図36に示されている。この図は、表示域1170に表示されるビデオは回転するが表示域1170は縦向きに表示されたままであることを除いて、図35と同様である。   In the example described above with reference to FIGS. 34 and 35, the orientation of the display area 1170 also changes (ie, from vertical to horizontal). That is, after the display area 1170 is rotated in the third step 3420, the orientation of the display area 1170 is changed from vertical to horizontal by expanding the PIP display 1180 horizontally so as to fill the entire UI 1105. In some embodiments, when the device 3500 is rotated, the video captured by the remote device rotates, but the orientation of the viewing area displaying the video captured by the remote device remains unchanged. One such example is shown in FIG. This figure is similar to FIG. 35, except that the video displayed in display area 1170 rotates, but display area 1170 remains displayed vertically.

図36は、表示域1155が(図35に示されるように、回転して、PIP表示1180を埋めるように水平に拡張するのではなく)同じ位置にあるままの回転動作の一例も示す。さらに、この図は、上述した図12の表示域1155のレイアウトと同じである表示域1155のレイアウトを含む。図示のように、段階3640、3645、3650、3655、3685及び3690でデバイス3500が回転するとき、表示域1155は同じ位置のままである。   FIG. 36 also shows an example of a rotation operation where the display area 1155 remains in the same position (rather than rotating and expanding horizontally to fill the PIP display 1180 as shown in FIG. 35). Further, this figure includes a layout of the display area 1155 which is the same as the layout of the display area 1155 of FIG. 12 described above. As shown, when the device 3500 is rotated in steps 3640, 3645, 3650, 3655, 3865, and 3690, the display area 1155 remains in the same position.

一部の実施形態は、ローカルデバイスによって取り込まれたビデオを表示する表示域の向きが、(図35に示すように同じ向きのままではなく)回転動作がローカルデバイスで実行された後のローカルデバイスの向きを反映するように変化する回転動作を提供する。図36は、UI1105のこのような回転動作の一例を、6つの異なる段階3640、3645、3650、3655、3685及び3690として示す。この図では、第1段階3640は、デバイス3500のカメラによって取り込まれたビデオを表示する挿入表示域1160を縦向きで示す。第2段階3645及び第3段階3650は、回転動作の種々の段階におけるデバイス3500の傾斜を示しているので、図35の第2段階3415及び第3段階3420と同様である。この時点で、デバイス3500のカメラは、画像を横向きで取り込んでいる。この移行を示すために、一部の実施形態は、第4段階3655及び第5段階3685に示すアニメーションを提供するが、他の実施形態は、アニメーションをまったく提供しない。   In some embodiments, the orientation of the viewport displaying the video captured by the local device may be different from that of the local device after a rotation operation has been performed on the local device (rather than remaining the same orientation as shown in FIG. 35). Provide a rotating motion that changes to reflect the orientation of the FIG. 36 shows an example of such a rotating operation of the UI 1105 as six different stages 3640, 3645, 3650, 3655, 3885 and 3690. In this figure, the first stage 3640 shows an inset display area 1160 that displays video captured by the camera of device 3500 in portrait orientation. The second stage 3645 and the third stage 3650 are similar to the second stage 3415 and the third stage 3420 of FIG. 35 because they show the tilt of the device 3500 at various stages of the rotation operation. At this point, the camera of device 3500 has captured the image in landscape orientation. To illustrate this transition, some embodiments provide the animations shown in fourth stage 3655 and fifth stage 3685, while other embodiments do not provide any animations.

第4段階3655では、第2段階3445及び第3段階3650におけるデバイス3500の傾斜によって挿入表示域1160が横向きに回転されていたので、挿入表示域1160に表示された画像は回転されるが、挿入表示域1160自体は回転されない。第5段階3685では、挿入表示域1160における回転した画像は、挿入表示域1160を埋めるように水平に拡張され、挿入表示域1160は、第1段階3640のPIP表示内の挿入表示域1160と同じ相対的位置に挿入表示域1160を配置するために、PIP表示1180の左下エリアに向かって移動し始める。   In the fourth step 3655, the image displayed in the insertion display area 1160 is rotated because the insertion display area 1160 is rotated sideways due to the inclination of the device 3500 in the second step 3445 and the third step 3650, but the insertion is performed. Display area 1160 itself is not rotated. In a fifth step 3685, the rotated image in the insertion display area 1160 is horizontally expanded to fill the insertion display area 1160, and the insertion display area 1160 is the same as the insertion display area 1160 in the PIP display of the first step 3640. In order to place the insertion display area 1160 at a relative position, it starts moving toward the lower left area of the PIP display 1180.

一部の実施形態では、リモートデバイスによって取り込まれたビデオを表示する表示域の向きも、回転動作がリモートデバイスで実行された後のリモートデバイスの向きを反映するように変化する。図37は、デバイス3500のUI1105の4つの異なる段階を示し、これらの段階では、(1)ローカルデバイスによって取り込まれたビデオを表示する表示域(この例では表示域1160)の向きが、回転動作がローカルデバイスで実行された後のローカルデバイスの向きを反映するように変化し、(2)リモートデバイスによって取り込まれたビデオを表示する表示域(この例では表示域1170)の向きが、リモートデバイスで回転動作が実行された後のリモートデバイスの向きを反映するように変化する。   In some embodiments, the orientation of the viewing area displaying the video captured by the remote device also changes to reflect the orientation of the remote device after the rotation operation has been performed on the remote device. FIG. 37 illustrates four different stages of the UI 1105 of the device 3500, in which (1) the orientation of the display area (in this example, the display area 1160) that displays the video captured by the local device is rotated. Changes to reflect the orientation of the local device after it has been executed on the local device, and (2) the orientation of the display area (in this example, display area 1170) that displays the video captured by the remote device is Changes to reflect the orientation of the remote device after the rotation operation is performed.

第1段階3705では、UI1105は、図36のUI1105と同じである。具体的には、デバイス3500が縦向きで示され、リモートデバイスが縦向きである(不図示)ので、第1段階3705は表示域1160及び1170を縦向きで示す。第1段階3705から第2段階3710にかけて、デバイス3500を直立位置から横向き位置に90度回転することによって、回転動作がローカルデバイスで実行される。第2段階3710は、デバイス3500の回転動作が完了した後のUI1105を示す。この段階では、表示域1170及び1160に表示されたビデオは直立位置に回転している。しかし、回転動作がローカルデバイス(すなわち、デバイス3500)でのみ実行されたので、ローカルで取り込まれたビデオの表示域1160のみが縦向きから横向きに回転した。表示域1170は縦向きのままである。   In the first step 3705, the UI 1105 is the same as the UI 1105 in FIG. Specifically, since device 3500 is shown in portrait orientation and the remote device is in portrait orientation (not shown), first stage 3705 shows display areas 1160 and 1170 in portrait orientation. From a first step 3705 to a second step 3710, a rotation operation is performed on the local device by rotating the device 3500 from an upright position to a sideways position by 90 degrees. The second step 3710 shows the UI 1105 after the rotation operation of the device 3500 has been completed. At this stage, the video displayed in display areas 1170 and 1160 has been rotated to the upright position. However, because the rotation operation was performed only on the local device (ie, device 3500), only the display area 1160 of the locally captured video rotated from portrait to landscape. The display area 1170 remains vertical.

第2段階3710から第3段階3715にかけて、リモートデバイスを直立位置から横向き位置に回転することによって、回転動作がリモートデバイスで実行される(不図示)。第3段階3715は、リモートデバイスの回転動作が完了した後のUI1105を示す。この段階では、回転動作がリモートデバイスのみで実行されるので、表示域1170に表示されたビデオ及びリモートで取り込まれたビデオの表示域1170が、縦向きから横向きに回転されている。したがって、UI1105のこの段階は、ローカルで取り込まれたビデオの表示域1160及びリモートで取り込まれたビデオの表示域1170をいずれも横向きで表示する。   From a second stage 3710 to a third stage 3715, a rotation operation is performed on the remote device by rotating the remote device from an upright position to a sideways position (not shown). The third step 3715 shows the UI 1105 after the rotation operation of the remote device has been completed. At this stage, since the rotation operation is executed only by the remote device, the display area 1170 of the video displayed on the display area 1170 and the video captured remotely is rotated from portrait to landscape. Thus, this stage of the UI 1105 displays both the locally captured video display area 1160 and the remotely captured video display area 1170 in landscape orientation.

第3段階3715から第4段階3720にかけて、デバイス3500を横向き位置から直立位置に90度回転することによって、回転動作がローカルデバイスで実行される。第4段階3720は、この回転動作の完了後のUI1105を示す。この第4段階3720では、表示域1160及び1170に表示されたビデオが直立位置に回転されている。しかし、回転動作がローカルデバイス(すなわち、デバイス3500)でのみ実行されたので、ローカルで取り込まれたビデオの表示域1160のみが横向きから縦向きに回転している。表示域1170は横向きのままである。   From the third step 3715 to the fourth step 3720, a rotation operation is performed on the local device by rotating the device 3500 from the sideways position to the upright position by 90 degrees. The fourth step 3720 shows the UI 1105 after the completion of this rotation operation. In this fourth stage 3720, the video displayed in display areas 1160 and 1170 has been rotated to an upright position. However, since the rotation operation was performed only on the local device (ie, device 3500), only the display area 1160 of the locally captured video is rotated from landscape to portrait. Display area 1170 remains horizontal.

第4段階3720から第1段階3705にかけて、リモートデバイスを横向き位置から直立位置に90度回転することによって、回転動作がリモートデバイスで実行される(不図示)。この場合、第1段階3705は、この回転動作の完了後の表示域1170を示す。したがって、この段階のUI1105は、表示域1160及び1170を縦向きで示す。図37は異なる回転動作のシーケンスを示しているが、他の実施形態は、任意の数の異なるシーケンスで任意の数の回転動作を実行できる。   From a fourth step 3720 to a first step 3705, a rotation operation is performed on the remote device by rotating the remote device 90 degrees from the horizontal position to the upright position (not shown). In this case, the first stage 3705 shows the display area 1170 after the completion of this rotation operation. Therefore, the UI 1105 at this stage shows the display areas 1160 and 1170 in portrait orientation. While FIG. 37 shows a sequence of different rotation operations, other embodiments can perform any number of rotation operations in any number of different sequences.

図34、図35、図36及び図37は、テレビ会議中にローカルデバイス及びリモートデバイスで実行される回転動作を説明する。回転動作がローカル携帯デバイスで実行された場合に、一部の実施形態は、リモートデバイスがローカルデバイスのビデオに対する(ローカルデバイスのビデオを表示している表示域を回転するなどの)任意の変更も実行するために、リモートデバイスに回転動作を通知する。同様に、回転動作がリモートデバイスで実行された場合に、ローカルデバイスがリモートデバイスのビデオに対する任意の変更を実行できるようにするために、リモートデバイスはローカルデバイスにこの動作を通知する。一部の実施形態は、テレビ会議中にローカルデバイスとリモートデバイスとの間の回転動作の通知を通信するための制御通信チャネルを提供する。   FIGS. 34, 35, 36, and 37 illustrate rotation operations performed on local and remote devices during a video conference. If the rotation operation is performed on the local mobile device, some embodiments may also allow the remote device to make any changes to the local device's video (such as rotating the viewing area displaying the local device's video). Notify the remote device of the rotation action to execute. Similarly, if a rotation operation is performed on the remote device, the remote device notifies the local device of the operation so that the local device can make any changes to the remote device's video. Some embodiments provide a control communication channel for communicating notifications of rotational movement between a local device and a remote device during a video conference.

図34、図35、図36及び図37は回転のアニメーションを実行できる異なる方式を示しているが、他の実施形態は他の異なる仕方で回転のアニメーションを表示してもよいことが当業者には理解されよう。さらに、回転動作のアニメーションによって、テレビ会議マネージャ1604にUI1105において異なる角度で表示域(群)を再合成させ、表示域(群)に表示される画像を拡大縮小させるなどの、ローカル携帯デバイスの画像処理動作への変更を引き起こすことができる。   While FIGS. 34, 35, 36 and 37 illustrate different ways in which the animation of rotation can be performed, it will be appreciated by those skilled in the art that other embodiments may display the animation of rotation in other different ways. Will be understood. In addition, the animation of the rotation action causes the video conferencing manager 1604 to re-synthesize the display area (s) at different angles in the UI 1105 and scale the image displayed in the display area (s), such as an image on the local mobile device. Changes to processing operations can be triggered.

3.ウィンドウサイズの調整
一部の実施形態により、携帯デバイスのユーザは、テレビ会議中に提示されるPIP表示の挿入表示域のサイズを調整できる。異なる実施形態は、挿入表示域をサイズ変更するための異なる技術を提供する。図38は、挿入表示域をサイズ変更するための1つの手法を示す。この手法では、携帯デバイスのユーザは、挿入表示域の隅を選択し、その後、挿入表示域を拡張する又は縮めることによって、挿入表示域のサイズを調整する。
3. Adjusting Window Size Some embodiments allow a user of a mobile device to adjust the size of the inset view area of a PIP display presented during a video conference. Different embodiments provide different techniques for resizing the inset display area. FIG. 38 shows one technique for resizing the insertion display area. In this approach, the user of the mobile device adjusts the size of the insertion display area by selecting a corner of the insertion display area and then expanding or contracting the insertion display area.

図38では、携帯デバイス3825のUI3800は、別の携帯デバイスのリモートユーザとのテレビ会議中にPIP表示3865を提示する。このPIP表示3865は、2つのビデオ表示、すなわち背景メイン表示域3830と、前景挿入表示域3835とを含む。背景メイン表示域3830はPIP表示3865の大半を占めるが、前景挿入表示域3835は背景メイン表示域3830よりも小さく、これに重なる。この例では、背景メイン表示域3830は、ギターを持つ人のビデオを提示し、この人は、リモートデバイスの前面カメラによってビデオが取り込まれている人又はリモートデバイスの背面カメラによってビデオが取り込まれている人であると想定される。前景挿入表示域3835は、帽子をかぶった人のビデオを提示し、この人は、この例では、ローカルデバイスの前面カメラによってビデオが取り込まれている人又はローカルデバイスの背面カメラによってビデオが取り込まれている人であると想定される。PIP表示3865の下は、選択することによってユーザがテレビ会議を終了できる「会議終了」と標示された選択可能UI項目3860(例えばボタン3860)を含む表示域1155である。   In FIG. 38, the UI 3800 of the mobile device 3825 presents a PIP display 3865 during a video conference with a remote user of another mobile device. This PIP display 3865 includes two video displays, a background main display area 3830 and a foreground insert display area 3835. While the background main display area 3830 occupies most of the PIP display 3865, the foreground insertion display area 3835 is smaller than the background main display area 3830 and overlaps it. In this example, the background main display area 3830 presents a video of a person with a guitar, the person being video captured by the front camera of the remote device or the video captured by the rear camera of the remote device. It is assumed that there are people. The foreground insert viewport 3835 presents a video of the person wearing the hat, which in this example is the person whose video is being captured by the front camera of the local device or the video is being captured by the rear camera of the local device. You are assumed to be a person. Below the PIP display 3865 is a display area 1155 that includes a selectable UI item 3860 (eg, button 3860) labeled “End Conference” that allows the user to end the video conference by selecting.

このPIP表示3865は、リモートデバイス及びローカルデバイスによって取り込まれているビデオの合成ビューを提示する1つの方式にすぎない。一部の実施形態は、他の合成ビューを提供してもよい。例えば、リモートデバイスからのビデオのための大きい方の背景表示を有する代わりに、大きい方の背景表示1170は、ローカルデバイスからのビデオのものであり、小さい方の前景挿入表示はリモートデバイスからのビデオのものでありうる。同様に、一部の実施形態により、ローカルビデオ及びリモートビデオは、UI3800内の並んだ2つの表示域(例えば、左右の表示ウィンドウ又は上下の表示ウィンドウ)又は斜めに整列した2つの表示域に表示されうる。一部の実施形態では、PIP表示の方式又はデフォルトの表示モードは、ユーザによって指定されてもよい。他の実施形態では、PIP表示はまた、大きい方の背景表示と2つの小さい方の前景挿入表示とを含むことができる。   This PIP display 3865 is just one way to present a composite view of the video being captured by the remote and local devices. Some embodiments may provide other composite views. For example, instead of having a larger background display for the video from the remote device, the larger background display 1170 is for the video from the local device and the smaller foreground insert display is for the video from the remote device. It can be. Similarly, according to some embodiments, local video and remote video are displayed in two side-by-side display areas (eg, left and right display windows or top and bottom display windows) or two diagonally aligned display areas in UI 3800. Can be done. In some embodiments, the type of PIP display or default display mode may be specified by the user. In other embodiments, the PIP display may also include a larger background display and two smaller foreground inserts.

図38は、サイズ変更動作を、UI3800の4つの動作段階として示す。第1段階3805では、前景挿入表示3835は、背景メイン表示域3830よりもかなり小さい。また、この例では、前景挿入表示域3835は、PIP表示3865の右下隅にある。他の例では、前景挿入表示域3835は、異なるサイズであってもよいし、PIP表示3865内の異なるエリアにあってもよい。   FIG. 38 shows the size change operation as four operation stages of the UI 3800. In the first stage 3805, the foreground insert display 3835 is significantly smaller than the background main display area 3830. Also, in this example, the foreground insertion display area 3835 is at the lower right corner of the PIP display 3865. In other examples, foreground insert display area 3835 may be of a different size or may be in a different area within PIP display 3865.

第2段階3810では、サイズ変更動作が始められる。この例では、ユーザがサイズ変更を希望する挿入表示域3835の隅を選択することによって(例えば、指3840で挿入表示域3835の左上隅を押すことによって)動作が始められる。UI3800の第2段階3810は、この選択を、挿入表示域3835の太い境界線3845として示す。この段階で、ユーザは、(例えば、PIP表示3865上で挿入表示域3835から離れるように又は挿入表示域3835に向かって自身の指3840をドラッグすることによって)挿入表示域3835を拡大する又は縮めることができる。   In a second step 3810, a resize operation is started. In this example, the operation is initiated by the user selecting a corner of the insertion display area 3835 whose resizing is desired (eg, by pressing the upper left corner of the insertion display area 3835 with a finger 3840). The second stage 3810 of the UI 3800 shows this selection as a thick border 3845 of the insertion display area 3835. At this stage, the user may enlarge or shrink the insertion display area 3835 (eg, by dragging his finger 3840 away from the insertion display area 3835 on the PIP display 3865 or toward the insertion display area 3835). be able to.

第3段階3815は、矢印3850によって示されるように、挿入表示域3835から離れるように自身の指3840を移動することによって(すなわち、この例では、UI3800の左上隅に向かって斜めに自身の指を移動することによって)ユーザが挿入表示域3835を拡張し始めた後のUI3800を示す。また、矢印3855によって示されるように、指3840の移動によって、高さ及び幅の両方に関して比例するように挿入表示域3835が拡張される。他の例では、ユーザは、同じ技術を使用して(すなわち、指を挿入表示域3835に向かってドラッグすることによって)挿入表示域3835を縮めることができる。   The third step 3815 is by moving his finger 3840 away from the insertion display area 3835, as shown by arrow 3850 (ie, in this example, diagonally toward his upper left corner of UI 3800). 21 shows the UI 3800 after the user has begun to expand the inset display area 3835 (by moving. Also, as shown by arrow 3855, movement of finger 3840 expands insertion display area 3835 in a manner that is proportional in both height and width. In another example, the user can shrink the insert viewport 3835 using the same technique (ie, by dragging a finger toward the insert viewport 3835).

第4段階3820は、挿入表示域3835のサイズ変更が完了した後のUI3800を表示する。この例では、ユーザは、挿入表示域3835が所望のサイズに達したら自身の指3840のドラッグを止めてPIP表示3865から自身の指を離すことによって、挿入表示域3835のサイズ変更を完了する。この手順の結果、サイズ変更された挿入表示域3835は、第1段階3805におけるその元のサイズよりも大きい。太い境界線3845の除去は、挿入表示域サイズ変更動作がこの時点で完了したことを示す。   The fourth step 3820 displays the UI 3800 after the resizing of the insertion display area 3835 is completed. In this example, when the insertion display area 3835 reaches the desired size, the user stops dragging his / her finger 3840 and removes his / her finger from the PIP display 3865, thereby completing the size change of the insertion display area 3835. As a result of this procedure, the resized insertion display area 3835 is larger than its original size in the first stage 3805. Removal of the thick border 3845 indicates that the insertion display area resizing operation has been completed at this point.

一部の実施形態は、ユーザがテレビ会議中にPIP表示3865において挿入表示域3835をサイズ変更できるための他の技術を提供する。図39は、1つのこのような他の技術を示す。この図は、挿入表示域3835の端(すなわち、この表示域3835の各辺のうちの1つ)を選択し、その後、挿入表示域3835を拡張する又は縮めることによって挿入表示域3835をサイズ変更するための技術を示す。   Some embodiments provide other techniques for allowing a user to resize the insert viewport 3835 in the PIP display 3865 during a video conference. FIG. 39 illustrates one such other technique. This figure shows that the end of the insertion display area 3835 is selected (ie, one of the sides of the display area 3835), and then the insertion display area 3835 is resized by expanding or contracting the insertion display area 3835. Here are the techniques for doing so.

図39は、このサイズ変更動作を、図38のUI3800の4つの動作段階として示す。図39の第1段階3805は、図38の第1段階3805と同じである。具体的には、この段階で、デバイス3925のUI3800は、大きな方の背景メイン表示域3830と小さな方の前景挿入表示域3835とをPIP表示3865の右下隅に有するPIP表示3865を示す。図38及び図39は、同じUI3800で挿入表示域3835をサイズ変更するための2つの異なる技術を示しているが、一部の実施形態は、同じUIでこれらの技術の両方ともを提供しないことが当業者には理解されよう。   FIG. 39 shows this size changing operation as four operation stages of the UI 3800 of FIG. The first step 3805 in FIG. 39 is the same as the first step 3805 in FIG. Specifically, at this stage, the UI 3800 of the device 3925 shows a PIP display 3865 having a larger background main display area 3830 and a smaller foreground insertion display area 3835 at the lower right corner of the PIP display 3865. Although FIGS. 38 and 39 show two different techniques for resizing the insert viewport 3835 with the same UI 3800, some embodiments do not provide both of these techniques with the same UI. Will be understood by those skilled in the art.

第2段階3910は、サイズ変更動作の開始を示す。この例では、ユーザがサイズ変更を希望する挿入表示域3835の辺を選択することによって(例えば、挿入表示域3835の上端又は側端に指3840を置くことによって)、ユーザは動作を始める。この例では、ユーザは、この選択を行うために挿入表示域3835の上端に自身の指3840を置く。第2段階3910は、この選択を、挿入表示域3835の太い境界線3845として示す。   The second step 3910 indicates the start of the resize operation. In this example, the user initiates an action by selecting a side of the insertion display area 3835 for which the user wishes to resize (eg, by placing a finger 3840 on the top or side edge of the insertion display area 3835). In this example, the user places his or her finger 3840 at the top of insertion display area 3835 to make this selection. The second stage 3910 shows this selection as a thick border 3845 of the insertion display area 3835.

第3段階3915は、矢印3950によって示されるように、挿入表示域3835から離れるように(すなわち、PIP表示3865の上部に向かって垂直に)自身の指3840を移動することによってユーザが挿入表示域3835を拡張し始めた後のUI3800を示す。また、矢印3955によって示されるように、指3840の移動によって、高さ及び幅の両方に関して比例するように挿入表示域3835が拡張される。他の例では、ユーザは、同じ技術を使用して(例えば、指3840を挿入表示域3835に向かってドラッグすることによって)挿入表示域3835を縮めることができる。   The third step 3915 is when the user moves his finger 3840 away from the insertion display area 3835 (ie, vertically toward the top of the PIP display 3865), as indicated by arrow 3950, and 3C shows the UI 3800 after starting to expand 3835. Also, as shown by arrow 3955, movement of finger 3840 expands insertion display area 3835 in a manner that is proportional in both height and width. In another example, the user can shrink the insertion display area 3835 using the same technique (eg, by dragging a finger 3840 toward the insertion display area 3835).

第4段階3920は、挿入表示域3835のサイズ変更が完了した後のUI3800を表示する。この例では、ユーザは、挿入表示域3835が所望のサイズに達したら自身の指3840のドラッグを止めてデバイスの表示画面から自身の指3840を離すことによって、挿入表示域3835のサイズ変更を完了する。この手順の結果、サイズ変更された挿入表示域3835は、第1段階3805におけるその元のサイズよりも大きい。太い境界線3845の削除は、挿入表示域サイズ変更動作がこの時点で完了したことを示す。   The fourth step 3920 displays the UI 3800 after the resizing of the insertion display area 3835 is completed. In this example, when the insertion display area 3835 reaches the desired size, the user stops dragging his / her finger 3840 and removes his / her finger 3840 from the display screen of the device to complete the resizing of the insertion display area 3835. I do. As a result of this procedure, the resized insertion display area 3835 is larger than its original size in the first stage 3805. The deletion of the thick border 3845 indicates that the insertion display area size change operation has been completed at this point.

図38及び図39によって示されるように、一部の実施形態は、ドラッグ動作に応答して、挿入表示域3835のサイズを高さ及び幅に比例して調整する。他の実施形態では、ユーザは、他の属性に影響を及ぼすことなく、挿入表示域3835の高さ及び/又は幅を調整できてもよい。図40は、このようなサイズ変更手法の一例を示す。   As shown by FIGS. 38 and 39, some embodiments adjust the size of the insertion display area 3835 proportional to the height and width in response to a drag operation. In other embodiments, the user may be able to adjust the height and / or width of the insertion display area 3835 without affecting other attributes. FIG. 40 shows an example of such a size changing method.

具体的には、図40は、挿入表示域3835の端のうちの1つが選択され、水平又は垂直に移動される場合に、図40のUI3800によって挿入表示域3835が水平方向及び/又は垂直方向に拡張できることを除いて、図38のUI3800と同様の携帯デバイス4025のUI3800を示す。UI3800の説明を簡略化するため、図40は、この時点で挿入表示域3835がPIP表示3865の右上隅にあることを除いて、図38のPIP表示3865と同様のUI3800におけるPIP表示3865を示す。PIP表示3865は、2つのビデオ表示、すなわち背景メイン表示域3830と、前景挿入表示域3835とを含む。この例では、背景メイン表示域3830は、リモートデバイスの前面カメラ又は背面カメラによって取り込まれているビデオを提示する。前景挿入表示域3835は、ローカルデバイスの前面カメラ又は背面カメラによって取り込まれているビデオを提示する。   Specifically, FIG. 40 illustrates that when one of the edges of the insertion display area 3835 is selected and moved horizontally or vertically, the UI 3800 of FIG. 40 causes the insertion display area 3835 to be moved horizontally and / or vertically. 38 shows a UI 3800 for a portable device 4025 that is similar to the UI 3800 in FIG. To simplify the description of UI 3800, FIG. 40 shows a PIP display 3865 on UI 3800 that is similar to PIP display 3865 of FIG. 38, except that at this point insert display area 3835 is at the upper right corner of PIP display 3865. . PIP display 3865 includes two video displays, a background main display area 3830 and a foreground insert display area 3835. In this example, the background main display area 3830 presents the video being captured by the front or rear camera of the remote device. The foreground insert display area 3835 presents video captured by the front or rear camera of the local device.

図38と同様に、図40は、サイズ変更動作をUI3800の4つの動作段階として示す。第1段階4005は、この時点で挿入表示域3835が右上隅にあることを除いて、図38の第1段階3805と同様である。他の3つの段階4010、4015及び4020は、挿入表示域3835の下端の選択及び移動によって、挿入表示域3835の幅に影響を及ぼすことなく、挿入表示域3835が垂直方向にのみ拡張したことを除いて、3つの段階3910、3915及び3920と同様である。   Like FIG. 38, FIG. 40 illustrates the resize operation as four operating stages of the UI 3800. The first step 4005 is similar to the first step 3805 in FIG. 38, except that at this point the insertion display area 3835 is at the upper right corner. The other three steps 4010, 4015 and 4020 indicate that the selection and movement of the lower end of the insertion display area 3835 has expanded the insertion display area 3835 only vertically, without affecting the width of the insertion display area 3835. Except for three stages 3910, 3915 and 3920.

図38、39及び40は、ユーザが挿入表示域3835の隅又は辺を選択することによってPIP表示3865の挿入表示域3835をサイズ変更できる例示的な実施形態を提供する。一部の実施形態は、挿入ウィンドウ3835をサイズ変更するための他の技術を提供する。例えば、図41は、一部の実施形態により挿入表示域3835の内部を選択することによって挿入表示域3835をサイズ変更できることを示す。この手法では、ユーザは、画面に2本の指4155及び4156を置き、互いに遠ざけるか又は近づけるかのどちらかに指をドラッグすることによって、挿入表示域3835のサイズを調整する。   38, 39 and 40 provide an exemplary embodiment in which the user can resize the insertion display area 3835 of the PIP display 3865 by selecting a corner or side of the insertion display area 3835. Some embodiments provide other techniques for resizing the insertion window 3835. For example, FIG. 41 illustrates that insertion display area 3835 can be resized by selecting inside insertion display area 3835 according to some embodiments. In this technique, the user adjusts the size of the insertion display area 3835 by placing two fingers 4155 and 4156 on the screen and dragging the fingers either away from or closer to each other.

図41では、携帯デバイス4140のUI3800は、別の携帯デバイスのリモートユーザとのテレビ会議中にPIP表示3865を提供する。UI3800の説明を簡略化するため、図41は、図38のPIP表示3865と同様のこのUI3800におけるPIP表示3865を示す。   In FIG. 41, the UI 3800 of the mobile device 4140 provides a PIP display 3865 during a video conference with a remote user of another mobile device. To simplify the description of UI 3800, FIG. 41 shows a PIP display 3865 on this UI 3800 that is similar to PIP display 3865 in FIG.

図41は、サイズ変更動作を、UI3800の7つの動作段階として示す。前半の4つの段階3805、4110、4115及び4120は挿入表示域3835の拡張を示すが、後半の3つの段階は、挿入表示域3835の縮みを示す。図41の第1段階3805は、図38の第1段階3805と同じである。具体的には、この段階で、UI3800は、大きな方の背景メイン表示域3830と小さな方の前景挿入表示域3835とを有するPIP表示3865を示す。この例では、背景メイン表示域3830は、リモートデバイスの前面カメラ又は背面カメラによって取り込まれているビデオを提示する。前景挿入表示域3835は、ローカルデバイスの前面カメラ又は背面カメラによって取り込まれているビデオを提示する。   FIG. 41 shows the size changing operation as seven operation stages of the UI 3800. The first four stages 3805, 4110, 4115 and 4120 show expansion of the insertion display area 3835, while the last three stages show contraction of the insertion display area 3835. The first step 3805 in FIG. 41 is the same as the first step 3805 in FIG. Specifically, at this stage, UI 3800 shows a PIP display 3865 having a larger background main display area 3830 and a smaller foreground insertion display area 3835. In this example, the background main display area 3830 presents the video being captured by the front or rear camera of the remote device. The foreground insert display area 3835 presents video captured by the front or rear camera of the local device.

第2段階4110は、サイズ変更動作が始められた後のUI3800を示す。この例では、ユーザがサイズ変更を希望する挿入表示域3835を選択することによって(例えば、挿入表示域3835内に2本の指4155及び4156を置くことによって)、ユーザは動作を始める。UI3800の第2段階4110は、この選択を、挿入表示域3835の太い境界線4190として示す。   The second step 4110 shows the UI 3800 after the resize operation has begun. In this example, the user initiates an action by selecting the insertion display area 3835 for which the user wishes to resize (eg, by placing two fingers 4155 and 4156 within the insertion display area 3835). The second stage 4110 of the UI 3800 shows this selection as a thick border 4190 of the insertion display area 3835.

第3段階4115は、矢印4160によって示されるように、指4155及び4156を互いから離れるように移動する(すなわち、指4155をPIP表示3865の左上隅に向かって移動し、指4156をPIP表示3865の右下隅に向かって移動する)ことによってユーザが挿入表示域3835を拡張し始めた後のUI3800を示す。矢印4165によって示されるように、指4155及び4156の移動によって、高さ及び幅の両方に関して比例するように挿入表示域3835が拡張される。   Third stage 4115 moves fingers 4155 and 4156 away from each other, as indicated by arrow 4160 (ie, moves finger 4155 toward the upper left corner of PIP display 3865 and moves finger 4156 to PIP display 3865). Of the UI 3800 after the user has begun to expand the inset display area 3835 (by moving toward the lower right corner of the UI). As indicated by arrow 4165, movement of fingers 4155 and 4156 expands insertion display area 3835 proportionally in both height and width.

第4段階4120には、挿入表示域3835のサイズ変更が完了した後のUI3800が表示されている。この例では、ユーザは、指4155及び4156のドラッグを止めてデバイスの表示画面から自身の指4155及び4156を離すことによって、挿入表示域3835のサイズ変更を完了する。この手順の結果、サイズ変更された挿入表示域3835は、第1段階3805におけるその元のサイズよりも大きい。太い境界線4190の削除は、挿入表示域サイズ変更動作がこの段階で完了したことを示す。   In a fourth step 4120, the UI 3800 after the resizing of the insertion display area 3835 is completed is displayed. In this example, the user completes the size change of the insertion display area 3835 by stopping the drag of the fingers 4155 and 4156 and releasing the finger 4155 and 4156 from the display screen of the device. As a result of this procedure, the resized insertion display area 3835 is larger than its original size in the first stage 3805. Deletion of the thick border 4190 indicates that the insertion display area size changing operation has been completed at this stage.

第5段階4125では、ユーザは、2つの指4155及び4156を挿入表示域3835に置くことによって、挿入表示域3835を再選択する。第6段階4130は、矢印4170によって示されるように、指4155及び4156を互いに近づけることによってユーザが挿入表示域3835を縮め始めた後のUI3800を示す。矢印4175によって示されるように、指4155及び4156の移動によって、高さ及び幅の両方に関して比例するように挿入表示域3835が縮小される。   In a fifth step 4125, the user reselects the insertion display area 3835 by placing two fingers 4155 and 4156 on the insertion display area 3835. The sixth step 4130 shows the UI 3800 after the user has begun to shrink the insertion display area 3835 by moving the fingers 4155 and 4156 closer together, as indicated by the arrow 4170. As indicated by arrow 4175, movement of fingers 4155 and 4156 causes insertion display area 3835 to shrink in proportion to both height and width.

第7段階4135は、動作の結果、挿入表示域3835のサイズが縮小したことを除いて、図41の第4段階4120と同様である。太い境界線4190の除去は、挿入表示域サイズ変更動作がこの段階で完了したことを示す。   The seventh step 4135 is the same as the fourth step 4120 in FIG. 41 except that the size of the insertion display area 3835 is reduced as a result of the operation. Removal of the thick border 4190 indicates that the insertion display area resizing operation has been completed at this stage.

図38〜図41の上記の説明は、ユーザがPIP表示の挿入表示域をサイズ変更できるいくつかの例示的なユーザインタフェースを示す。一部の実施形態では、挿入表示域のサイズ変更によって、テレビ会議マネージャ1604が、ユーザの入力に応答してPIP表示における挿入表示域の拡大縮小及び合成を変更するように、デュアルカメラ携帯デバイスの画像処理動作への変更が起こる。さらに、一部の実施形態では、図38〜図41の表示域1155のレイアウトは、上述した図12の表示域1155のレイアウトと同じである。   The above description of FIGS. 38-41 shows some exemplary user interfaces that allow the user to resize the inset display area of the PIP display. In some embodiments, resizing the inset view area causes the video conferencing manager 1604 to change the scale and composition of the inset view area in the PIP display in response to user input, such that Changes to image processing operations occur. Further, in some embodiments, the layout of the display area 1155 in FIGS. 38 to 41 is the same as the layout of the display area 1155 in FIG. 12 described above.

4.関心領域の識別
一部の実施形態により、ユーザは、画像処理(例えば、図16の画像処理マネージャ1608)、符号化(例えば、図16のエンコーダ1655)、テレビ会議中の携帯デバイス及びそのカメラの挙動、又はそれらの組み合わせを変更するために、テレビ会議中に表示されるビデオにおける関心領域(ROI)を識別できる。異なる実施形態は、ビデオにおいてこのような関心領域を識別するための異なる技術を提供する。図42は、ビデオの画像品質を向上するためにビデオにおいて関心領域を識別するための一部の実施形態のユーザインタフェースを示す。
4. Identifying Regions of Interest According to some embodiments, the user may be able to perform image processing (e.g., image processing manager 1608 of FIG. 16), encoding (e.g., encoder 1655 of FIG. 16), mobile device and its camera during a videoconference. Regions of interest (ROIs) in the video displayed during the video conference can be identified to change the behavior, or a combination thereof. Different embodiments provide different techniques for identifying such regions of interest in a video. FIG. 42 illustrates a user interface of some embodiments for identifying regions of interest in a video to enhance the image quality of the video.

図42では、携帯デバイス4225のUI4200は、別の携帯デバイスのリモートユーザとのテレビ会議中にPIP表示4265を提示する。図42のPIP表示は、図41のものと実質的に同様である。具体的には、図42のPIP表示42は、2つのビデオ表示、すなわち背景メイン表示4230と、前景挿入表示4235とを含む。この例では、背景メイン表示域4230は、木と帽子を被った人とのビデオを提示し、これは、リモートデバイスの前面カメラによってビデオが取り込まれている木及び人又はリモートデバイスの背面カメラによってビデオが取り込まれている木及び人であると想定される。前景挿入表示4235は、男性のビデオを提示し、これは、この例では、ローカルデバイスの前面カメラによってビデオが取り込まれている男性又はローカルデバイスの背面カメラによってビデオが取り込まれている男性であると想定される。PIP表示の下は、選択することによってユーザがテレビ会議を終了できる「会議終了」と標示された選択可能UI項目4260(例えばボタン4260)を含む表示域1155である。   In FIG. 42, UI 4200 of mobile device 4225 presents PIP display 4265 during a videoconference with a remote user of another mobile device. The PIP display of FIG. 42 is substantially similar to that of FIG. Specifically, the PIP display 42 of FIG. 42 includes two video displays, a background main display 4230 and a foreground insert display 4235. In this example, the background main display area 4230 presents a video of the person wearing the tree and hat, which is captured by the tree and the person or the rear camera of the person or remote device whose video is being captured by the front camera of the remote device. It is assumed that the trees and people whose videos are being captured. The foreground insert display 4235 presents a male video, which in this example is a male whose video is being captured by the front camera of the local device or a male whose video is being captured by the rear camera of the local device. is assumed. Below the PIP display is a display area 1155 that includes a selectable UI item 4260 (eg, button 4260) labeled “End Conference” that allows the user to end the video conference by selecting.

このPIP表示は、リモートデバイス及びローカルデバイスによって取り込まれているビデオの合成ビューを提示する1つの方式にすぎない。一部の実施形態は、他の合成ビューを提供してもよい。例えば、リモートデバイスからのビデオのための大きい方の背景表示を有する代わりに、大きい方の背景表示はローカルデバイスからのビデオのものであってもよく、小さい方の前景挿入表示は、リモートデバイスからのビデオのものであってもよい。同様に、一部の実施形態により、ローカルビデオ及びリモートビデオは、UI内の並んだ2つの表示域(例えば、左右の表示ウィンドウ又は上下の表示ウィンドウ)又は斜めに整列した2つの表示域に表示されうる。他の実施形態では、PIP表示はまた、大きい方の背景表示と2つの小さい方の前景挿入表示とを含んでもよい。一部の実施形態では、PIP表示の方式又はデフォルトの表示モードは、ユーザによって指定されてもよい。   This PIP display is just one way to present a composite view of the video being captured by the remote and local devices. Some embodiments may provide other composite views. For example, instead of having a larger background display for the video from the remote device, the larger background display may be that of the video from the local device and the smaller foreground insert display may be from the remote device. Video. Similarly, according to some embodiments, local video and remote video are displayed in two side-by-side display areas (eg, left or right display windows or top and bottom display windows) or two diagonally aligned display areas in a UI. Can be done. In other embodiments, the PIP display may also include a larger background display and two smaller foreground inserts. In some embodiments, the type of PIP display or default display mode may be specified by the user.

図42は、ROI識別動作を、UI4200の4つの動作段階として示す。第1段階4205に示すように、背景表示4230に提示されるビデオは、非常に低い品質を有する(すなわち、ビデオ画像がぼやけている)。この例では、携帯デバイス4225のユーザは、人の顔4270が表示される背景表示4230のエリアを関心領域として識別することを望んでいる。   FIG. 42 illustrates the ROI identification operation as four stages of operation of the UI 4200. As shown in the first stage 4205, the video presented on the background display 4230 has very low quality (ie, the video image is blurred). In this example, the user of the mobile device 4225 desires to identify the area of the background display 4230 where the human face 4270 is displayed as a region of interest.

第2段階4210では、関心領域を識別する動作が始められる。この例では、ユーザが関心領域として識別することを希望する背景表示4230に提示されたビデオ内のあるエリアを選択することによって(例えば、背景表示4230内に表示された人の顔4270のまわりの位置でデバイスの画面を指4250でタップすることによって)、動作が始められる。   In a second step 4210, an operation of identifying a region of interest is started. In this example, by selecting an area in the video presented in the background display 4230 that the user wishes to identify as a region of interest (eg, around a person's face 4270 displayed in the background display 4230) The action is started (by tapping the screen of the device with the finger 4250 at the location).

第3段階4215に示すように、ユーザのエリアの選択によって、UI4200は、ユーザの選択のエリアを取り囲む囲い(enclosure)4275(例えば、破線の方形4275)が描かれる。第4段階4220は、関心領域の識別が完了した後のUI4200を表示する。このプロセスの結果、関心領域内のビデオの品質は、第1段階4205における品質から実質的に向上する。囲い4275の除去は、ROI選択動作がこの時点で完了したことを示す。一部の実施形態では、ROI識別プロセスはまた、ローカルデバイス4225に対して引き起こすように、リモートデバイスに表示される同じビデオの同じ変更を引き起こす。この例では、例えば、リモートデバイスに表示された同じビデオの関心領域内の画質も実質的に向上する。   As shown in the third step 4215, upon selection of the user's area, the UI 4200 draws an enclosure 4275 (eg, dashed square 4275) surrounding the area of the user's selection. The fourth step 4220 displays the UI 4200 after the region of interest has been identified. As a result of this process, the quality of the video in the region of interest is substantially improved from the quality in the first stage 4205. Removal of box 4275 indicates that the ROI selection operation has been completed at this point. In some embodiments, the ROI identification process also causes the same change of the same video displayed on the remote device as it does for the local device 4225. In this example, for example, the image quality in the region of interest of the same video displayed on the remote device is also substantially improved.

一部の実施形態では、ユーザは、第3段階4215で(例えば、指4250で表示を押し、囲い4275を引き伸ばすために画面の右上隅に向かって指4250を移動するか又は囲い4275を縮めるために画面の左下隅に向かって指4250を移動することによって)囲い4275を引き伸ばす又は縮めてもよい。また、一部の実施形態により、ユーザは、第3段階4215で(例えば、指4250で表示を押し、表示上で水平又は垂直に指4250を移動することによって)囲い4275を配置し直すことができる。一部の他の実施形態では、エリアの選択によって、UI4200が第3段階4215で囲い4275をまったく描かなくてもよい。   In some embodiments, the user may move the finger 4250 toward the upper right corner of the screen or shrink the shroud 4275 in a third step 4215 (eg, press the display with the finger 4250 and stretch the shroud 4275). Enclosure 4275 may be stretched or shrunk (by moving finger 4250 toward the lower left corner of the screen). Also, according to some embodiments, the user may reposition the enclosure 4275 in a third step 4215 (eg, by pressing the display with a finger 4250 and moving the finger 4250 horizontally or vertically on the display). it can. In some other embodiments, the selection of the area may prevent the UI 4200 from drawing the enclosure 4275 in the third step 4215.

他の実施形態は、ユーザがビデオ内で関心領域を識別できるようにするための異なる技術を提供する。図43は、1つのこのような他の技術を示す。図43では、ユーザは、領域の境界となる形状を描くことによって、関心領域を識別する。この例では、形状は長方形であるが、他の形状(例えば、他の任意の多角形、円、楕円など)にできる。一部の実施形態は、図42に示される技術も提供するデバイスUIにおいて、図43のこの代替技術を提供する。しかし、他の実施形態は、同じUIにおいてこれらの技術の両方ともは提供しない。   Other embodiments provide different techniques for allowing a user to identify a region of interest in a video. FIG. 43 illustrates one such other technique. In FIG. 43, the user identifies a region of interest by drawing a shape that is a boundary of the region. In this example, the shape is rectangular, but can be any other shape (eg, any other polygon, circle, ellipse, etc.). Some embodiments provide this alternative technique of FIG. 43 in a device UI that also provides the technique shown in FIG. However, other embodiments do not provide both of these techniques in the same UI.

図43は、このROI識別動作を、UI4200の5つの動作段階として示す。図43の第1段階4205は、図42の第1段階4205と同一である。具体的には、この第1段階4205では、UI4200は、大きな方の背景メイン表示域4230と小さな方の前景挿入表示域4235とをPIP表示4265の右下隅に有するPIP表示4265を示す。   FIG. 43 shows this ROI identification operation as five operation stages of the UI 4200. The first step 4205 in FIG. 43 is the same as the first step 4205 in FIG. Specifically, in this first step 4205, the UI 4200 shows a PIP display 4265 having a larger background main display area 4230 and a smaller foreground insertion display area 4235 at the lower right corner of the PIP display 4265.

第2段階4310では、関心領域を識別する動作が始められる。この例では、背景表示域4230に提示されたビデオにおいて関心領域を規定するための第1位置をある期間選択することによって(例えば、デバイスの画面において背景表示4230に表示される人の顔4270のまわりの位置を指4350である期間押すことによって)、動作が始められる。第3段階4315では、UI4200は、第1位置4370が選択されたことを、背景表示域4230上での選択された第1位置の隣の点4355として示す。   In a second step 4310, an operation of identifying a region of interest is started. In this example, by selecting a first position for a period of time to define a region of interest in the video presented in the background display area 4230 (eg, the human face 4270 displayed in the background display 4230 on the screen of the device) Movement is initiated by pressing the surrounding position with the finger 4350 for a period of time). In a third step 4315, the UI 4200 indicates that the first position 4370 has been selected as a point 4355 next to the selected first position on the background display area 4230.

第4段階4320は、ユーザが関心領域を規定するための第2位置4375を選択した後のUI4200を示す。この例では、矢印4360によって示されるように、ユーザは、点4355が表示された後で第1位置からデバイスの画面をわたって指4350をドラッグし、背景表示域4230内の表示されている帽子と表示されている木との間の位置で止めることによって、この第2位置4375を選択する。第4段階に示すように、このドラッグによって、UI4200は、その対向する頂点に第1位置4370及び第2位置4375を有する関心領域エリアのための方形の境界線4365が描かれた。   The fourth step 4320 shows the UI 4200 after the user has selected the second position 4375 for defining the region of interest. In this example, as indicated by arrow 4360, the user drags finger 4350 across the device screen from the first position after point 4355 is displayed, and displays the displayed hat in background display area 4230. This second position 4375 is selected by stopping at a position between the trees displayed as. As shown in the fourth stage, this drag causes the UI 4200 to draw a square border 4365 for the region of interest area having a first location 4370 and a second location 4375 at its opposing vertices.

第5段階4325は、関心領域の識別が完了した後のUI4200を示す。この例では、ユーザは、所望の関心領域エリアが識別されたら指4350のドラッグを止めてデバイスの表示画面から指4350を離すことによって、関心領域の識別を完了する。第5段階4325は、描画プロセスの結果、関心領域内のビデオの品質が第1段階4205における品質から実質的に向上したことを示す。一部の実施形態では、描画プロセスはまた、ローカルデバイス4225に対して引き起こされたものと同じ変更をリモートデバイス上の表示に引き起こす。この例では、例えば、リモートデバイスに表示された同じビデオの関心領域内の画質が実質的に向上する。   The fifth step 4325 shows the UI 4200 after the region of interest has been identified. In this example, the user completes identification of the region of interest by stopping dragging finger 4350 and releasing finger 4350 from the display screen of the device once the desired region of interest is identified. A fifth step 4325 indicates that the quality of the video in the region of interest has substantially improved from the quality in the first step 4205 as a result of the drawing process. In some embodiments, the drawing process also causes the same changes made to the local device 4225 to be displayed on the remote device. In this example, for example, the image quality in the region of interest of the same video displayed on the remote device is substantially improved.

上記の図42及び図43の説明は、識別された領域の画質を向上させるためにビデオ内の関心領域を識別する異なる方式を示す。一部の実施形態では、識別された関心領域の画質を向上させることによって、ビデオを符号化する際に、識別された領域により多くのビットを割り当てるなどの、デュアルカメラ携帯デバイスの符号化動作への変更が生じる。   The above description of FIGS. 42 and 43 shows different ways of identifying regions of interest in a video to enhance the quality of the identified regions. In some embodiments, by enhancing the quality of the identified region of interest, the encoding operation of the dual camera portable device, such as allocating more bits to the identified region when encoding the video. Changes occur.

一部の実施形態により、ユーザは、携帯デバイス又はそのカメラへのさまざまな変更を行うためにビデオにおいて関心領域を識別できる。例えば、図44は、表示上で関心領域エリアを拡張する又は縮めるためにビデオにおいて関心領域を識別する一例を示す。この手法では、ユーザは、表示上でエリアを関心領域の中心として選択し、その後、関心領域エリアを拡張する又は縮めることによって、ビデオにおける関心領域を識別する。   According to some embodiments, a user may identify a region of interest in a video to make various changes to a mobile device or its camera. For example, FIG. 44 shows an example of identifying a region of interest in a video to extend or shrink the region of interest on a display. In this approach, the user selects an area on the display as the center of the region of interest, and then identifies the region of interest in the video by expanding or contracting the region of interest area.

図44では、携帯デバイス4425のUI4400は、別の携帯デバイスのリモートユーザとのテレビ会議中にPIP表示4265を提示する。図44のPIP表示4265は、図42のPIP表示4265と実質的に類似しているが、図44の前景挿入表示4235は、PIP表示4265の左下隅にある。   In FIG. 44, UI 4400 of mobile device 4425 presents PIP display 4265 during a video conference with a remote user of another mobile device. The PIP display 4265 of FIG. 44 is substantially similar to the PIP display 4265 of FIG. 42, except that the foreground insert display 4235 of FIG. 44 is at the lower left corner of the PIP display 4265.

図44は、ROI選択動作を、UI4400の4つの動作段階として示す。第1段階4405に示すように、背景表示4430は、表示4430の左に男性を有し、右に木4440を有するビデオを提示する。さらに、木4440は比較的小さく、背景表示域4430の右側のみを占有する。この例では、携帯デバイス4425のユーザは、表示4430において木4440が表示されるエリアを関心領域として識別することを望んでいる。   FIG. 44 shows the ROI selection operation as four operation stages of the UI 4400. As shown in the first step 4405, the background display 4430 presents a video with a man to the left of the display 4430 and a tree 4440 to the right. Further, the tree 4440 is relatively small and occupies only the right side of the background display area 4430. In this example, the user of the mobile device 4425 wants to identify the area where the tree 4440 is displayed in the display 4430 as a region of interest.

第2段階4410では、関心領域を識別する動作が始められる。この例では、ユーザが関心領域として識別することを希望する背景表示4430に提示されたビデオ内のあるエリア4440を選択することによって(例えば、木4440が表示される背景表示域4430を2本の指4445及び4446で押すことによって)、動作が始められる。この段階4410では、ユーザは、指4445及び4446を互いからさらに遠ざかるようにドラッグすることによって、関心領域エリア4440を拡張させ、背景表示域4430のより大きな部分を取得させることができる。ユーザは、自身の指4445及び4446を互いに近づけるようにドラッグすることによって、関心領域4440を縮めさせ、背景表示域4430のより小さな部分を取得させることもできる。   In a second step 4410, an operation of identifying a region of interest is started. In this example, by selecting an area 4440 in the video presented on the background display 4430 that the user wishes to identify as a region of interest (e.g., creating a background display area 4430 where trees 4440 are displayed by two lines) The movement is started (by pressing with fingers 4445 and 4446). At this stage 4410, the user can expand the region of interest area 4440 by dragging the fingers 4445 and 4446 further away from each other to obtain a larger portion of the background display area 4430. By dragging his or her fingers 4445 and 4446 closer together, the user can also shrink the region of interest 4440 and obtain a smaller portion of the background display area 4430.

第3段階4415は、矢印4450によって示されるように、自身の指4445及び4446を互いから離れるように移動する(すなわち、指4445を背景表示域4430の左上隅に向かって移動し、指4446を表示4430の右下隅に向かって移動する)ことによって、ユーザが関心領域4440を拡張させ、背景表示域4430のより大きな部分を占めさせ始めた後のUI4400を示す。一部の実施形態では、指の移動はまた、ローカルデバイスに対して引き起こしたのと同じ変更を、リモートデバイスの表示に引き起こす。この例では、例えば、同じビデオの関心領域は、拡張し、リモートデバイスの背景表示域4430のより大きな部分を占める。一部の実施形態では、以下でさらに説明するように、ローカル表示及び/又はリモート表示における関心領域の拡張によって、携帯デバイス又はそのカメラの一方又は両方が、他の動作のうちの1つ以上を変更する。   The third stage 4415 moves its fingers 4445 and 4446 away from each other, as indicated by arrow 4450 (ie, moves finger 4445 toward the upper left corner of background display area 4430 and moves finger 4446 Moving toward the lower right corner of display 4430) shows UI 4400 after the user has expanded region of interest 4440 and has begun to occupy a larger portion of background display area 4430. In some embodiments, movement of the finger also causes the same change in the display of the remote device as it did for the local device. In this example, for example, the region of interest of the same video expands and occupies a larger portion of the background display area 4430 of the remote device. In some embodiments, as described further below, expansion of the region of interest in the local and / or remote displays may cause one or both of the mobile device or its camera to perform one or more of the other operations. change.

第4段階4420は、関心領域の識別が完了した後のUI4400を表示する。この例では、ユーザは、関心領域が背景表示域4430において所望の比率に達したら自身の指4445及び4446のドラッグを止めてデバイスの表示画面から指4445及び4446を離すことによって、関心領域の識別を完了する。このプロセスの結果、関心領域は、背景表示4430の大半を占める。関心領域動作の識別は、この時点で完了している。   The fourth step 4420 displays the UI 4400 after the region of interest has been identified. In this example, the user identifies the region of interest by stopping dragging his finger 4445 and 4446 and releasing the finger 4445 and 4446 from the device display screen when the region of interest reaches the desired ratio in the background display area 4430. Complete. As a result of this process, the region of interest occupies most of the background display 4430. Identification of the region of interest motion has been completed at this point.

上記の例のうちの一部は、(例えば、ビデオの関心領域部分を符号化するためにビットレートを増加させることによって)ビデオの選択された関心領域内の画像品質を向上するためにユーザがビデオ内の関心領域をどのように識別できるかを示す。一部の実施形態では、ビデオ内の関心領域を識別することによって、露出、拡大縮小、フォーカスなどの、携帯デバイスの画像処理動作への変更が生じる。例えば、ビデオ内の関心領域を識別することによって(例えば、ズームすべき関心領域を識別することによって)、テレビ会議マネージャ1604に、ビデオの画像を異なるように拡大縮小及び合成させうる。   Some of the above examples are provided by the user to improve image quality in the selected region of interest of the video (e.g., by increasing the bit rate to encode the region of interest of the video). Show how you can identify regions of interest in a video. In some embodiments, identifying regions of interest in the video causes changes to the image processing operations of the portable device, such as exposure, scaling, focus, and the like. For example, identifying a region of interest in a video (eg, by identifying a region of interest to zoom) may cause videoconferencing manager 1604 to scale and composite images of the video differently.

他の実施形態では、ビデオ内の関心領域を識別することによって、携帯デバイスのカメラ(群)の動作(例えば、フレームレート、ズーム、露出、拡大縮小、フォーカスなど)への変更が生じる。さらに他の実施形態では、ビデオ内の関心領域を識別することによって、識別された領域へのより多くのビットの割り当て、拡大縮小などのような、携帯デバイスの符号化動作への変更が生じる。さらに、上述の例示的なROI特定動作は、携帯デバイス又はそのカメラへの上述の変更のうちの1つのみを引き起こしてもよいが、一部の他の実施形態では、ROI識別動作は、携帯デバイス又はそのカメラの動作への変更のうちの複数を引き起こしてもよい。さらに、一部の実施形態では、図42〜図44の表示域1155のレイアウトは、上述した図12の表示域1155のレイアウトと同じである。   In other embodiments, identifying a region of interest in the video causes a change to the operation of the camera (s) of the mobile device (eg, frame rate, zoom, exposure, scaling, focus, etc.). In still other embodiments, identifying a region of interest in the video causes a change to the encoding behavior of the portable device, such as allocating more bits to the identified region, scaling, and the like. Further, while the exemplary ROI identification operation described above may cause only one of the above-described changes to the mobile device or its camera, in some other embodiments, the ROI identification operation is Multiple of the changes to the operation of the device or its camera may be triggered. Further, in some embodiments, the layout of the display area 1155 of FIGS. 42 to 44 is the same as the layout of the display area 1155 of FIG. 12 described above.

B.カメラの切り換え
一部の実施形態は、テレビ会議中にカメラを切り換える(すなわち、画像が取り込まれるカメラを変更する)手順を提供する。異なる実施形態は、カメラ切り換え動作を実行するための異なる手順を提供する。一部の実施形態は、デバイスのカメラを切り換える(すなわち、ローカル切り換え)ためにデュアルカメラ携帯デバイスによって実行される手順を提供するが、他の実施形態は、デュアルカメラ携帯デバイスがテレビ会議中の別のデュアルカメラ携帯デバイスに当該他のデバイスのカメラを切り換える(すなわち、リモート切り換え)ように命令するための手順を提供する。さらに他の実施形態は、この両方のための手順を提供する。セクションIV.B.1では、デュアルカメラ携帯デバイス上でローカルカメラ切り換え動作を実行するためのプロセスについて説明する。セクションIV.B.2では、デュアルカメラ携帯デバイス上でリモートカメラ切り換え動作を実行するためのプロセスについて説明する。
B. Switching Cameras Some embodiments provide a procedure for switching cameras during a video conference (ie, changing the camera from which images are captured). Different embodiments provide different procedures for performing the camera switching operation. Some embodiments provide a procedure performed by a dual camera portable device to switch the camera of the device (ie, local switch), while other embodiments provide that the dual camera portable device For instructing a dual camera portable device to switch cameras of the other device (ie, remote switching). Still other embodiments provide procedures for both. Section IV. B. 1 describes a process for performing a local camera switching operation on a dual camera portable device. Section IV. B. Section 2 describes a process for performing a remote camera switching operation on a dual camera portable device.

1.ローカルカメラ切り換え
図45は、少なくとも1つのカメラを含むリモート携帯デバイスとのテレビ会議中にデバイスの2つのカメラを切り換えるためにローカルデュアルカメラ携帯デバイス上で一部の実施形態が実行するプロセス4500を示す。一部の実施形態では、プロセス4500は、図16に示されるテレビ会議マネージャ1604によって実行される。説明のために、この説明では、ローカルデュアルカメラ携帯デバイスの一方のカメラをカメラ1と呼び、ローカルデュアルカメラ携帯デバイスの他方のカメラをカメラ2と呼ぶ。
1. Local Camera Switching FIG. 45 shows a process 4500 that some embodiments perform on a local dual camera mobile device to switch between two cameras of the device during a video conference with a remote mobile device that includes at least one camera. . In some embodiments, process 4500 is performed by video conference manager 1604 shown in FIG. For purposes of explanation, in this description one camera of the local dual camera portable device will be referred to as camera 1 and the other camera of the local dual camera portable device will be referred to as camera 2.

プロセス4500は、ローカルデュアルカメラ携帯デバイスとリモート携帯デバイスとの間のテレビ会議を(4505において)開始することによって始まる。次に、プロセス4500は、リモート携帯デバイスに表示するために、ローカルデュアルカメラ携帯デバイスの現在選択されているカメラ(例えば、カメラ1)からリモート携帯デバイスにビデオ画像を(4510において)送信する。4510では、プロセスは、このビデオ画像及びリモート携帯デバイスから受信したビデオ画像に基づいて、合成表示も生成して表示する。   Process 4500 begins by initiating (at 4505) a video conference between a local dual camera mobile device and a remote mobile device. Next, the process 4500 transmits (at 4510) a video image from the currently selected camera (eg, camera 1) of the local dual camera mobile device to the remote mobile device for display on the remote mobile device. At 4510, the process also generates and displays a composite display based on the video image and the video image received from the remote portable device.

プロセス4500は、その後、テレビ会議終了要求が受信されているかどうかを(4515において)判定する。上述のように、一部の実施形態では、テレビ会議は、(例えば、ローカルデュアルカメラ携帯デバイスのユーザインタフェースを通じた)ローカルデュアルカメラ携帯デバイスのユーザの要求又は(例えば、リモート携帯デバイスのユーザインタフェースを通じた)リモート携帯デバイスのユーザの要求で終了できる。プロセス4500がテレビ会議終了要求を受信した場合に、プロセス4500は終了する。   Process 4500 then determines (at 4515) whether a video conference termination request has been received. As discussed above, in some embodiments, the video conference may be at the request of a user of the local dual camera mobile device (eg, through a local dual camera mobile device user interface) or (eg, through a remote mobile device user interface). Also, it can be terminated at the request of the user of the remote portable device. If the process 4500 receives a video conference end request, the process 4500 ends.

プロセス4500がテレビ会議終了要求を受信しない場合に、プロセス4500は、その後、ローカルデュアルカメラ携帯デバイスのユーザがテレビ会議用のカメラを切り換えるようにデバイスに指示したかどうかを(4520において)判定する。デバイスがカメラを切り換えるように指示されていないと(4520において)プロセス4500が判定した場合に、プロセス4500は動作4510に戻る。しかし、デバイスがカメラを切り換えるように指示されたと(4520において)プロセス4500が判定した場合に、プロセス4500は4525に移行する。   If process 4500 does not receive an end video conference request, process 4500 then determines (at 4520) whether the user of the local dual camera portable device has instructed the device to switch cameras for video conference. If process 4500 determines that the device has not been instructed to switch cameras (at 4520), process 4500 returns to operation 4510. However, if process 4500 determines (at 4520) that the device has been instructed to switch cameras, process 4500 proceeds to 4525.

プロセス4500は、4525で、ローカルデュアルカメラ携帯デバイスがカメラを切り換えていることを示す通知をリモート携帯デバイスに送信する。一部の実施形態では、プロセス4500は、上述のようなVTPマネージャ3125によってオーディオチャネル及びビデオチャネルで多重化されたテレビ会議制御チャネルを通じて通知を送信する。   The process 4500 sends, at 4525, a notification to the remote portable device indicating that the local dual camera portable device is switching cameras. In some embodiments, process 4500 sends a notification over a video conferencing control channel multiplexed with audio and video channels by VTP manager 3125 as described above.

その通知を送信した後、プロセス4500は、カメラ切り換え動作を(4530において)実行する。一部の実施形態では、カメラ切り換え動作を(4530において)実行することは、カメラ1によるビデオ画像の取り込みを止めてカメラ2によるビデオ画像の取り込みを開始するようにCIPUに命令することを含む。これらの命令は、カメラ2に関連する画素アレイから画像の取り込みに切り換えて、これらの画像の処理を開始するようにCIPUに単に指示できる。あるいは、一部の実施形態では、CIPUに対する命令は、(1)設定の特定の集合に基づいてカメラ2を動作するように、(2)特定のフレームレートでカメラ2によって生成されたビデオを取り込むように、及び/又は(3)設定の特定の集合(例えば、解像度など)に基づいてカメラ2からのビデオ画像を処理するようにCIPUに指示する初期化パラメータ集合を伴う。   After sending the notification, process 4500 performs (at 4530) a camera switch operation. In some embodiments, performing the camera switching operation (at 4530) includes instructing the CIPU to stop capturing video images by Camera 1 and start capturing video images by Camera 2. These instructions can simply instruct the CIPU to switch to capturing images from the pixel array associated with camera 2 and begin processing these images. Alternatively, in some embodiments, the instructions to the CIPU capture (1) operate the camera 2 based on a specific set of settings, and (2) capture the video generated by the camera 2 at a specific frame rate. And / or (3) with a set of initialization parameters instructing the CIPU to process video images from camera 2 based on a particular set of settings (eg, resolution, etc.).

一部の実施形態では、(4530における)カメラ切り換え命令は、使用されていないカメラを上述の第4動作電力モードに切り換えるための命令も含む。この例では、カメラ切り換え命令は、カメラ2がその第4動作電力モードに切り換わるための命令を含む。さらに、カメラ切り換え命令は、画像を取り込むように要求された場合に第4動作電力モードにすばやく切り換わり、取り込みを開始できるように、カメラ1がその第4動作電力モードから電力を節約する第1動作電力モードなどの別の動作電力モード又は第3動作電力モードに切り換わるための命令も含む。カメラ切り換え動作4530は、(カメラ1によって取り込まれた画像ではなく)ローカルデュアルカメラ携帯デバイスのカメラ2によって取り込まれた画像をローカルデュアルカメラ携帯デバイスに表示するためにリモート携帯デバイスから受信した画像と合成することも含む。   In some embodiments, the camera switch command (at 4530) also includes a command to switch an unused camera to the fourth operating power mode described above. In this example, the camera switching command includes a command for camera 2 to switch to its fourth operating power mode. In addition, the camera switch command may be used to quickly switch to the fourth operating power mode when requested to capture an image and to allow the camera 1 to save power from its fourth operating power mode so that capture can begin. It also includes an instruction to switch to another operating power mode, such as an operating power mode, or a third operating power mode. A camera switch operation 4530 combines the image captured by camera 2 of the local dual camera mobile device (rather than the image captured by camera 1) with the image received from the remote mobile device for display on the local dual camera mobile device. Including doing.

4530においてカメラ切り換えを指示した後、プロセス4500は、カメラ1からの画像の表示とカメラ2からの画像の表示との間の移行を表示するためにローカルデュアルカメラ携帯デバイス上でカメラ切り換えアニメーションを(4535において)実行する。ローカルデュアルカメラ携帯デバイス上でのカメラ切り換えアニメーションに続いて、テレビ会議終了要求又は新たなカメラ切り換え要求が受信されるまで、プロセス4500は、動作4510〜4520を一巡して戻る。   After instructing a camera switch at 4530, the process 4500 includes a camera switch animation on the local dual camera handheld device to display the transition between displaying images from camera 1 and camera 2 ((4). (At 4535). Following the camera switch animation on the local dual camera mobile device, process 4500 loops back through operations 4510-4520 until a video conference end request or a new camera switch request is received.

図46は、一部の実施形態によりデュアルカメラデバイスのUI1105を介してカメラ切り換え動作をどのようにして要求できるか、及びこれらの実施形態がカメラ切り換え動作をアニメーション化するかの一例を示す。この図は、カメラ切り換え動作を、デバイスのUI1105の8つの異なる動作段階4610、4615、4620、4625、4630、4635、4640及び4645として示す。UI1105の前半の4つの段階4610、4615、4620及び4625は、カメラを切り換えるというユーザの要求を受信する一例を示す。本発明の一部の実施形態では、デバイスのユーザは、このような要求を行うための他の機構を有する。   FIG. 46 illustrates an example of how a camera switch operation can be requested via the dual camera device UI 1105 according to some embodiments, and how these embodiments animate the camera switch operation. This figure shows the camera switching operation as eight different operating phases 4610, 4615, 4620, 4625, 4630, 4635, 4640 and 4645 of the UI 1105 of the device. The first four stages 4610, 4615, 4620 and 4625 of the UI 1105 illustrate an example of receiving a user request to switch cameras. In some embodiments of the invention, the user of the device has another mechanism for making such a request.

第1段階4610は、図11のUI1105の第5段階1130と同じであり、テレビ会議がセットアップされた後のUI1105を示す。この段階で、UI1105は、2つのビデオ表示、すなわちリモートカメラからの大きい方の背景表示と、ローカルカメラからの小さい方の前景挿入表示とを含むPIP表示を表示する。この例では、背景メイン表示域1170は、この例ではリモートデバイスによってビデオが取り込まれている婦人と想定される婦人のビデオを提示し、前景挿入表示域1160は、この例ではローカルデバイスの前面カメラによってビデオが取り込まれている男性と想定される男性のビデオを提示する。   The first step 4610 is the same as the fifth step 1130 of the UI 1105 in FIG. 11, and shows the UI 1105 after the video conference has been set up. At this stage, the UI 1105 displays a PIP display that includes two video displays, a larger background display from the remote camera and a smaller foreground insertion display from the local camera. In this example, the background main display area 1170 presents a video of a woman, which in this example is assumed to be a woman whose video is being captured by the remote device, and the foreground insert display area 1160 is the front camera of the local device in this example. Presents a video of a man assumed to be a man whose video has been captured.

その後、第2段階4615は、UI1105のPIP表示域1180の選択を通じたカメラ切り換え動作の始まりを示す。図示のように、PIP表示1180にユーザの指4670を置くことによって選択が行われる。第3段階4620は、テレビ会議中のローカルデバイス4600のカメラ間の切り換えを要求するための選択可能UI項目4675(例えば、カメラ切り換えボタン4675)を含むUI1105を示す。第4段階4625は、ローカルデバイス4600のユーザが選択可能UI項目4675を(例えば、シングルフィンガータップによって)選択し、この選択が選択可能UI項目4675の強調表示を通じて示された後のUI1105を示す。この選択可能UI項目4675を選択することによって、ユーザは、テレビ会議中にデバイス4600の前面カメラからデバイス4600の背面カメラに切り換えるようにデバイス4600に指示している。デバイス4600の背面カメラがビデオを取り込んでいる他の例では、選択可能UI項目4675のユーザの選択は、デバイス4600の背面カメラからデバイス4600の前面カメラに切り換えるようにデバイス4600に指示する。第4段階の後で、テレビ会議マネージャは、カメラ切り換え動作を開始するようにCIPU及びリモートデバイスに命令を送信する。   Thereafter, a second step 4615 indicates the beginning of the camera switching operation through selection of the PIP display area 1180 of the UI 1105. As shown, the selection is made by placing the user's finger 4670 on the PIP display 1180. The third step 4620 shows the UI 1105 including a selectable UI item 4675 (eg, a camera switch button 4675) to request switching between cameras of the local device 4600 during a video conference. A fourth step 4625 shows the UI 1105 after the user of the local device 4600 has selected the selectable UI item 4675 (eg, by a single finger tap) and this selection is indicated through highlighting of the selectable UI item 4675. By selecting this selectable UI item 4675, the user has instructed device 4600 to switch from the front camera of device 4600 to the rear camera of device 4600 during a video conference. In another example, where the rear camera of device 4600 is capturing video, the user's selection of selectable UI item 4675 instructs device 4600 to switch from the rear camera of device 4600 to the front camera of device 4600. After the fourth phase, the video conference manager sends a command to the CIPU and the remote device to initiate a camera switch operation.

UI1105の後半の4つの段階4630、4635、4640及び4645は、ローカルデバイス上でのカメラ切り換えアニメーションの一例を示す。このアニメーションは、ローカルデバイスの前面カメラ及び背面カメラから取り込まれたビデオがビューペイン(viewing pane)の2つの対向する側に現在表示されており、この2つの側のうちの1つのみが任意の時点でユーザによって視認可能である印象(impression)を提供することを目的とする。カメラ切り換えがテレビ会議の途中で要求された場合に、このビューペインは、垂直軸のまわりを回転したと見えるようになされ、その結果、以前は1つのカメラのビデオをユーザに示していたビューペインの一方の側での1つのカメラのビデオの提示は、これがビューペインの他方の側によって置き換えられるまで、ユーザから遠ざかって回転し、ビューペインの他方の側が他方のカメラのビデオを示す。知覚されるビューペインの回転のこのアニメーション及び外見は、(1)一方のカメラ表示域におけるそのカメラからのビデオ画像が段階的に小さくなって、それに対してパースペクティブ補正動作を適用し、続いて(2)表示域における他方のカメラからのビデオ画像を段階的に拡張し、それに対するパースペクティブ補正動作を減少させることによって達成される。   The last four stages 4630, 4635, 4640 and 4645 of the UI 1105 show an example of a camera switching animation on the local device. In this animation, the video captured from the front and rear cameras of the local device is currently displayed on two opposite sides of the viewing pane, only one of which is arbitrary. The aim is to provide an impression that is visible at the time by the user. If a camera switch is requested in the middle of a video conference, this view pane will be made to appear to have rotated around the vertical axis, so that the view pane previously showed the video of one camera to the user. The presentation of one camera's video on one side of the camera rotates away from the user until it is replaced by the other side of the view pane, with the other side of the view pane showing the video of the other camera. This animation and appearance of the perceived view pane rotation is such that (1) the video image from that camera in one camera viewport is progressively smaller and applies a perspective correction operation to it, followed by ( 2) Achieved by progressively expanding the video image from the other camera in the viewing area and reducing the perspective correction operation on it.

したがって、第5段階4630は、垂直軸4682のまわりでの「ビューペインの回転」の開始を示す。ビューペインの回転の外見を付与するため、UI1105は、ビデオ表示域1160における前面カメラのビデオ画像のサイズを減少させ、パースペクティブ動作を適用して、ビデオ画像の左側に比べてビデオ画像の右側がユーザから遠く見えるようにした。   Thus, the fifth step 4630 indicates the start of “rotation of the view pane” about the vertical axis 4682. To give the appearance of a rotation of the view pane, the UI 1105 reduces the size of the video image of the front camera in the video display area 1160, and applies a perspective operation so that the right side of the video image is compared to the left side of the video image. So that it can be seen from far away.

第6段階4635は、表示域1160の中央に表示される細い線4686によって示されるように、ユーザがこのペインの端のみを見ることが可能なようにビューペインが90度回転したことを示す。第7段階4640は、ユーザの背面カメラから取り込まれたビデオを示すために今度はビューペイン4688の裏面がユーザに段階的に見えるように、ビューペインが回転し続けていることを示す。この場合もやはり、一部の実施形態では、回転アニメーションのこの表示は、ビデオ表示域4688における背面カメラのビデオ画像のサイズを減少させ、パースペクティブ動作を適用して、ビデオ画像の右側に比べてビデオ画像の左側がユーザから遠く見えるようにすることによって達成される。   The sixth step 4635 indicates that the view pane has been rotated 90 degrees so that the user can see only the edges of this pane, as indicated by the thin line 4686 displayed in the center of the display area 1160. A seventh step 4640 indicates that the view pane is continuing to rotate so that the back side of the view pane 4688 is now visible to the user in steps to show the video captured from the user's rear camera. Again, in some embodiments, this display of the rotating animation reduces the size of the rear camera video image in the video display area 4688, and applies a perspective operation to the video image relative to the right side of the video image. This is achieved by making the left side of the image appear far from the user.

第8段階4645は、カメラ切り換え動作を示すアニメーションの完了を示す。具体的には、この段階は、デバイス4600の背面カメラによって取り込まれている自動車のビデオ画像を表示域1160に表示する。   The eighth step 4645 indicates the completion of the animation indicating the camera switching operation. Specifically, this stage displays a video image of the car captured by the rear camera of device 4600 in display area 1160.

図46に関する上述の例は、カメラ切り換えユーザインタフェースを通じてカメラ切り換え動作を起動する。他の実施形態は、カメラ切り換え動作を異なるように起動する。例えば、一部の実施形態は、図47のUI1105などのテレビ会議中にUIに永久的に表示されるカメラ切り換え選択可能UI項目を有することによって、カメラ切り換え動作を起動する。図47では、カメラ切り換えボタン1289は、消音ボタン1285及び会議終了ボタン1287と共に表示域1155に示されている。一部の実施形態では、表示域1155のレイアウトは、図12に関して上述した表示域1155のレイアウトと同じである。   The example described above with reference to FIG. 46 activates the camera switching operation through the camera switching user interface. Other embodiments invoke the camera switching operation differently. For example, some embodiments initiate a camera switch operation by having a camera switch selectable UI item that is permanently displayed on the UI during a video conference, such as UI 1105 in FIG. In FIG. 47, the camera switching button 1289 is shown in the display area 1155 together with the mute button 1285 and the conference end button 1287. In some embodiments, the layout of display area 1155 is the same as the layout of display area 1155 described above with respect to FIG.

図47は、UI1105のカメラ切り換え動作を、6つの段階すなわち4610、4790、4630、4635、4640及び4645として示す。図47の第1段階4610は、表示域1155のレイアウトが、単一の会議終了ボタンではなく、消音ボタン1285、会議終了ボタン1287及びカメラ切り換えボタン1289を示すことを除いて、図46の第1段階4610と同様である。第2段階4790は、ローカルデバイス4600のユーザがカメラ切り換え選択可能UI項目1289を(例えば、指4670を使用したシングルフィンガータップを通じて)選択した後のUI1105を示す。この例では、この選択可能UI項目1289を選択することによって、ユーザは、テレビ会議中にデバイス4600の前面カメラからデバイス4600の背面カメラに切り換えるようにデバイス4600に指示する。図47の後半の4つの段階は、表示域1155のレイアウトが第1段階4610における上述のレイアウトと同じであることを除いて、図46の後半の4つの段階と同様であり、したがって、不必要な詳細で本発明の説明をあいまいにしないために、さらなる説明はしない。   FIG. 47 shows the camera switching operation of the UI 1105 as six stages: 4610, 4790, 4630, 4635, 4640 and 4645. 47, except that the layout of the display area 1155 shows a mute button 1285, a conference end button 1287, and a camera switch button 1289 instead of a single conference end button. Similar to step 4610. The second step 4790 shows the UI 1105 after the user of the local device 4600 has selected the camera switchable selectable UI item 1289 (eg, through a single finger tap using the finger 4670). In this example, by selecting this selectable UI item 1289, the user instructs device 4600 to switch from the front camera of device 4600 to the rear camera of device 4600 during a video conference. 47 are similar to the latter four stages of FIG. 46, except that the layout of the display area 1155 is the same as the above-described layout in the first stage 4610, and thus is unnecessary. In order not to obscure the description of the present invention with great detail, no further description is given.

一部の実施形態では、リモート携帯デバイスがローカルデュアルカメラ携帯デバイスの異なるカメラから画像を受信した(すなわち、ローカルデュアルカメラ携帯デバイスがカメラを切り換えた)場合に、リモート携帯デバイスは、ローカルデュアルカメラ携帯デバイスの一方のカメラからの画像の表示とローカルデュアルカメラ携帯デバイスの他方のカメラからの画像の表示との間の移行を表示するために、カメラ切り換えアニメーションも実行する。図48は、このようなカメラ切り換えアニメーションのうちの1つの例を、UI4805の5つの動作段階4810、4815、4820、4825及び4830として示す。この図は、リモート携帯デバイス4800上での例示的なカメラ切り換えアニメーションを示す。動作段階は、表示域4835に表示された画像上でアニメーションが実行されることを除いて、図46の例示的なアニメーションと同じであり、表示域4835は、ローカルデュアルカメラ携帯デバイスからの画像がリモート携帯デバイス4800に表示される位置である。したがって、表示域4835に表示された男性の画像は、表示域4835における男性の画像の表示と自動車4870の画像の表示との間の移行を示すように表示域4850の中央にある垂直軸4855に対して180度回転するように見えるようにアニメーション化される。一部の実施形態のカメラ切り換えアニメーションの実装は、上述のアニメーションの実装と同じである。   In some embodiments, if the remote mobile device receives an image from a different camera of the local dual camera mobile device (i.e., the local dual camera mobile device has switched cameras), the remote mobile device will have a local dual camera mobile device. A camera switching animation is also performed to indicate the transition between displaying images from one camera of the device and the other camera of the local dual camera portable device. FIG. 48 illustrates one example of such a camera switching animation as five operating phases 4810, 4815, 4820, 4825, and 4830 of the UI 4805. This figure shows an exemplary camera switching animation on a remote portable device 4800. The operating steps are the same as the exemplary animation of FIG. 46, except that the animation is performed on the image displayed in display area 4835, where display area 4835 is where the image from the local dual camera portable device is displayed. The position displayed on the remote portable device 4800. Accordingly, the male image displayed in display area 4835 is positioned on a vertical axis 4855 at the center of display area 4850 to indicate the transition between displaying the male image in display area 4835 and displaying the image of car 4870. It is animated so that it appears to rotate 180 degrees. The implementation of the camera switching animation in some embodiments is the same as the implementation of the animation described above.

上記の例は、特定のユーザインタフェースレイアウトを有するリモートデバイス上でのカメラ切り換えアニメーションを示す。他の実施形態は、異なるユーザインタフェースレイアウトを有するリモートデバイス上でのこのカメラ切り換えアニメーションを実行してもよいだろう。例えば、図49は、異なるユーザインタフェースレイアウト4805を有するリモートデバイス4800のこのような一例を示す。特に、図49のUI4805は、表示域1155に含まれる、消音ボタン1285と、会議終了ボタン1287と、カメラ切り換えボタン1289とを有し、表示域1155は、テレビ会議中に合成表示4850の1辺に永久的に表示される。3つのボタンのレイアウトについては、図48に関して上述した。異なるユーザインタフェースレイアウト以外に、図49の5つの段階4810、4815、4820、4825及び4830は、図48の5つの段階4810、4815、4820、4825及び4830と同一である。   The above example shows a camera switching animation on a remote device with a particular user interface layout. Other embodiments could perform this camera switching animation on remote devices with different user interface layouts. For example, FIG. 49 shows one such example of a remote device 4800 having a different user interface layout 4805. In particular, the UI 4805 in FIG. 49 includes a mute button 1285, a conference end button 1287, and a camera switching button 1289 included in the display area 1155. Will be displayed permanently. The layout of the three buttons was described above with respect to FIG. Other than the different user interface layouts, the five steps 4810, 4815, 4820, 4825, and 4830 of FIG. 49 are identical to the five steps 4810, 4815, 4820, 4825, and 4830 of FIG.

2.リモートカメラ切り換え
図50は、テレビ会議中にリモートデュアルカメラデバイスの2つのカメラを切り換えるためのプロセス5000を示す。このプロセス5000は、少なくとも1つのカメラを含むデバイスのテレビ会議マネージャによって実行される。以下の説明では、ユーザがリモートカメラ切り換えを指示するデバイスはローカルデバイスと呼ばれ、自身の2つのカメラを切り換えるデバイスはリモートデバイスと呼ばれる。同様に、以下の説明では、リモートデバイスは、その前面カメラ(すなわちカメラ1)とその背面カメラ(すなわちカメラ2)を切り換えると言われる。
2. Remote Camera Switching FIG. 50 shows a process 5000 for switching between two cameras of a remote dual camera device during a video conference. This process 5000 is performed by a video conference manager of a device that includes at least one camera. In the following description, a device for which the user instructs to switch a remote camera is called a local device, and a device for switching between two cameras is called a remote device. Similarly, in the following description, the remote device is said to switch between its front camera (ie, camera 1) and its rear camera (ie, camera 2).

図50のプロセス5000について、図51、図52、図53及び図54に関して説明する。図51は、リモートデバイスがテレビ会議中にその2つのカメラを切り換えることをユーザが要求するために用いるローカルデバイス5100のUI5105を示す。この図は、このUI5105の8つの異なる動作段階5110、5115、5120、5125、5130、5135、5140及び5145を示す。図54は、ローカルデバイス5100からカメラ切り換え要求を受信するリモートデバイス5400のUI5405を示す。図54は、UI5405の6つの異なる動作段階5410、5415、5420、5425、5430及び5435を示す。   The process 5000 of FIG. 50 is described with respect to FIGS. 51, 52, 53, and 54. FIG. 51 shows a UI 5105 of a local device 5100 used by a user to request that a remote device switch between its two cameras during a video conference. The figure shows eight different stages of operation 5110, 5115, 5120, 5125, 5130, 5135, 5140 and 5145 of this UI 5105. FIG. 54 shows a UI 5405 of the remote device 5400 that receives a camera switching request from the local device 5100. FIG. 54 illustrates six different operating stages 5410, 5415, 5420, 5425, 5430, and 5435 of the UI 5405.

図50に示すように、プロセス5000は、ローカルデバイスとリモートデバイスとの間のテレビ会議を(5005において)開始することによって始まる。その後、プロセス5000は、各デバイスの1つのカメラから(例えば、各デバイスの前面カメラから)画像を(5010において)受信し、これらの画像に基づいてテレビ会議のための合成ビューを生成する。5010で、プロセス5000は、ローカルデバイスからリモートデバイスにビデオ画像も送信する。   As shown in FIG. 50, process 5000 begins by initiating (at 5005) a video conference between a local device and a remote device. Thereafter, process 5000 receives (at 5010) images from one camera of each device (eg, from the front camera of each device) and generates a composite view for the video conference based on these images. At 5010, process 5000 also sends a video image from the local device to the remote device.

その後、プロセス5000は、テレビ会議終了要求が受信されたかどうかを(5015において)判定する。上述のように、テレビ会議は、一部の実施形態では、ローカルデバイス又はリモートデバイスのユーザの要求により終了できる。プロセス5000がテレビ会議終了要求を受信した場合に、プロセス5000は終了する。   Thereafter, process 5000 determines (at 5015) whether a video conference termination request has been received. As mentioned above, the video conference may be terminated in some embodiments at the request of the user of the local or remote device. If the process 5000 receives the videoconference end request, the process 5000 ends.

プロセス5000がテレビ会議終了要求を受信しない場合に、その後、プロセス5000を実行中であるデバイスのユーザ(すなわち、ローカルデバイスのユーザ)が、テレビ会議のためにリモートデバイスがそのカメラを切り換えることを要求するようにデバイスに指示したかどうかを(5020において)プロセス5000が判定する。モートカメラ切り換えを開始するように指示されていないと(5020において)プロセス5000が判定した場合に、プロセス5000は動作5010に戻る。デバイスはリモートカメラ切り換えを開始するように指示されたと(5020において)プロセス5000が判定した場合に、プロセス5000は、以下でさらに説明する5025に移行する。   If process 5000 does not receive a video conference termination request, then the user of the device performing process 5000 (ie, the user of the local device) requests that the remote device switch its camera for the video conference. Process 5000 determines (at 5020) whether the device has been instructed to do so. If the process 5000 determines that it has not been instructed to initiate a remote camera switch (at 5020), the process 5000 returns to operation 5010. If the process 5000 determines (at 5020) that the device has been instructed to initiate a remote camera switch, the process 5000 proceeds to 5025, which is described further below.

図51のUI5105の最初の4つの段階5110、5115、5120及び5125は、リモートデバイスのカメラを切り換えるためのユーザの要求を受信する一例を示す。第1段階5110及び第2段階5115は、図46の第1段階4610及び第2段階4615と同じである。第3段階5120は、第3段階5120が、ローカルデバイス5100にカメラを切り換えることを要求するための選択可能UI項目5175に加えて、カメラを切り換えることのリモートデバイス5100への要求のための選択可能UI項目5180を含むことを除いて、第3段階4620と同じである。第4段階5125は、リモートデバイスにカメラを切り換えるように要求するためのUI項目5180を(例えば、選択可能UI項目5180へのシングルフィンガータップ5170を通じて)ローカルデバイス5100のユーザが選択することを示す。選択可能UI項目5180の強調表示によって選択が示される。図51はこの動作を実行する一例を示すが、他の実施形態は、リモートデバイスにカメラを切り換えるように要求するための動作を異なるように実行してもよい。   The first four stages 5110, 5115, 5120 and 5125 of the UI 5105 of FIG. 51 show an example of receiving a user request to switch the camera of a remote device. The first step 5110 and the second step 5115 are the same as the first step 4610 and the second step 4615 of FIG. The third step 5120 is selectable for a request to the remote device 5100 to switch cameras, in addition to a selectable UI item 5175 for the third step 5120 to request the local device 5100 to switch cameras. Same as the third step 4620 except that it includes a UI item 5180. A fourth step 5125 indicates that the user of the local device 5100 selects a UI item 5180 (eg, via a single finger tap 5170 to the selectable UI item 5180) to request the remote device to switch cameras. The selection is indicated by highlighting the selectable UI item 5180. While FIG. 51 illustrates one example of performing this operation, other embodiments may perform the operation to request the remote device to switch cameras differently.

図51に関する上述の例は、リモートカメラ切り換えユーザインタフェースを通じてリモートカメラ切り換え動作を起動する。他の実施形態は、リモートカメラ切り換え動作を異なるように起動する。例えば、一部の実施形態は、図52のUI5105などのテレビ会議中にUIにカメラ切り換えの選択可能UI項目を永久的に表示させることによって、カメラ切り換え動作を起動する。図52では、リモートカメラ切り換えボタン5288が、消音ボタン5282、会議終了ボタン5284及びローカルカメラ切り換えボタン5286と共に表示域1155に示されている。   The example described above with reference to FIG. 51 activates a remote camera switching operation through a remote camera switching user interface. Other embodiments invoke the remote camera switching operation differently. For example, some embodiments activate the camera switching operation by causing the UI to permanently display a camera switching selectable UI item during a video conference, such as UI 5105 in FIG. In FIG. 52, the remote camera switching button 5288 is shown in the display area 1155 together with the mute button 5282, the conference end button 5284, and the local camera switching button 5286.

図52は、デバイス5100のUI5105のリモートカメラ切り換え動作を、6つの異なる段階5110、5290、5130、5135、5140及び5145として示す。図52の第1段階5110は、表示域1155のレイアウトが消音ボタン5282、ローカルカメラ切り換えボタン5286、リモートカメラ切り換えボタン5288及び会議終了ボタン5284を示すことを除いて、図51の第1段階5110と同様である。第2段階5290は、ローカルデバイス5100のユーザが選択可能リモートカメラ切り換えUI項目5288を(例えば、シングルフィンガータップ5170を通じて)選択した後のUI1105を示す。図52の後半の4つの段階は、表示域1155のレイアウトが第1段階5110における上述のレイアウトと同じであることを除いて、図51の後半の4つの段階と同様であり、したがって、不必要な詳細で本発明の説明をあいまいにしないために、さらなる説明はしない。   FIG. 52 illustrates the remote camera switching operation of the UI 5105 of the device 5100 as six different stages 5110, 5290, 5130, 5135, 5140 and 5145. The first step 5110 in FIG. 52 is similar to the first step 5110 in FIG. 51 except that the layout of the display area 1155 shows a mute button 5282, a local camera switch button 5286, a remote camera switch button 5288, and a conference end button 5284. The same is true. The second step 5290 shows the UI 1105 after the user of the local device 5100 has selected the selectable remote camera switching UI item 5288 (eg, through a single finger tap 5170). 52 are similar to the latter four stages in FIG. 51, except that the layout of the display area 1155 is the same as the above-described layout in the first stage 5110, and thus is unnecessary. In order not to obscure the description of the present invention with great detail, no further description is given.

一部の実施形態は、選択可能リモートカメラ切り換えUI項目が表示域1155ではなくPIP表示5165に表示されることを除いて、図52に示されるレイアウトと同様のレイアウトを提供する。図53はこのようなレイアウト5105を示す。特に、この図は、選択可能リモートカメラ切り換えUI項目5180と、消音ボタン5282、ローカルカメラ切り換えボタン5286及び会議終了ボタン5284を有する表示域1155とを有するPIP表示を示す。   Some embodiments provide a layout similar to the layout shown in FIG. 52, except that the selectable remote camera switch UI item is displayed in the PIP display 5165 instead of in the display area 1155. FIG. 53 shows such a layout 5105. In particular, this figure shows a PIP display having a selectable remote camera switch UI item 5180 and a display area 1155 having a mute button 5282, a local camera switch button 5286, and a conference end button 5284.

上述のように、ユーザがリモートカメラ切り換えを要求する場合に、プロセス5000は5025に移行する。5025では、プロセス5000は、カメラ切り換え要求をリモートデバイスに送信する。一部の実施形態では、この要求は、上述のようなVTPマネージャ3125によってオーディオチャネル及びビデオチャネルで多重化されたテレビ会議制御チャネルを通じて送信される。   As described above, if the user requests a remote camera switch, the process 5000 moves to 5025. At 5025, process 5000 sends a camera switch request to the remote device. In some embodiments, the request is sent over a video conferencing control channel multiplexed with audio and video channels by VTP manager 3125 as described above.

カメラ切り換え要求が受信された後に、プロセス5000は、リモートデバイスがカメラ切り換え要求に応答したかどうかを(5030において)判定する。一部の実施形態では、リモートデバイスは、テレビ会議制御チャネルを通じてローカルデバイスに承認応答を自動的に送信する(すなわち、確認応答を送信する)。しかし、他の実施形態では、リモートデバイスのユーザは、リモートデバイスのユーザインタフェースを通じて、この要求を承諾しなければならない。   After the camera switch request is received, the process 5000 determines (at 5030) whether the remote device has responded to the camera switch request. In some embodiments, the remote device automatically sends an acknowledgment (ie, sends an acknowledgment) to the local device over the video conference control channel. However, in other embodiments, the user of the remote device must accept this request through the user interface of the remote device.

図54のUI5405の最初の2つの段階5410及び5415は、リモートデバイス5400のカメラ切り換え要求をリモートユーザが承諾する一例を示す。第1段階5410は、(1)リモートユーザに要求を通知するテキストを表示するための表示域5440、(2)リモートデバイスのカメラ切り換え要求を承諾するための選択可能UI項目5465(例えば、許可ボタン5465)、及び(3)リモートデバイスのカメラ切り換え要求を拒否するための選択可能UI項目5470(例えば、拒否ボタン5470)を示す。その後、第2段階5415は、選択可能UI項目5465の強調表示によって示されるように、カメラ切り換え要求を承諾するためのUI項目5465をリモートデバイスのユーザが(例えば、シングルフィンガータップ5480を通じて)選択した後のUI5405を示す。   The first two stages 5410 and 5415 of the UI 5405 in FIG. 54 show an example in which the remote user accepts the camera switching request of the remote device 5400. The first step 5410 includes (1) a display area 5440 for displaying text notifying the request to the remote user, and (2) a selectable UI item 5465 for accepting the camera switching request of the remote device (eg, an enable button). 5465), and (3) a selectable UI item 5470 (for example, a reject button 5470) for rejecting the camera switching request of the remote device. Thereafter, a second step 5415 includes selecting a UI item 5465 by the remote device user (eg, via a single finger tap 5480) to accept the camera switch request, as indicated by highlighting of the selectable UI item 5465. A later UI 5405 is shown.

リモートデバイスから応答をまだ受信していないと(5030において)プロセス5000が判定した場合に、プロセス5000は、テレビ会議終了要求が受信されたかどうかを(5035において)判定する。テレビ会議終了要求が受信された場合に、プロセス5000は終了する。そうでない場合に、プロセスは、リモートデバイス及びローカルデバイスの現在使用されているカメラから画像を(5040において)受信し、これらの画像に基づいてテレビ会議のための合成ビューを生成し、ローカルデバイスのビデオ画像をリモートデバイスに伝送し、その後5030に移行する。   If the process 5000 determines that a response has not yet been received from the remote device (at 5030), the process 5000 determines (at 5035) whether a video conference termination request has been received. If a video conference termination request has been received, process 5000 ends. Otherwise, the process receives (at 5040) images from the currently used cameras of the remote device and the local device, generates a composite view for the video conference based on these images, and The video image is transmitted to the remote device, and then the process goes to 5030.

リモートデバイスから応答をまだ受信したと(5030において)プロセス5000が判定した場合に、プロセス5000は、リモートデバイスがカメラ切り換え要求を承諾したかどうかを(5045において)判定する。承諾していないならば、プロセス5000は動作5010に戻り、他のデバイスのカメラから画像を受信し続ける。そうでないならば、プロセスは、リモートデバイスの他のカメラから画像を(5050において)受信し、その後、ローカルデバイスでカメラ切り換えアニメーションを(5055において)実行し、以前に利用したリモートカメラのビデオと現在利用されているリモートカメラのビデオ(すなわち、動作5050において受信した画像)との間の移行を表示する。5055の後で、プロセスは、上述した5010に移行する。   If the process 5000 determines that a response is still received from the remote device (at 5030), the process 5000 determines (at 5045) whether the remote device has accepted the camera switch request. If not, the process 5000 returns to operation 5010 and continues to receive images from the other device's camera. If not, the process receives an image (at 5050) from another camera on the remote device, then performs a camera switch animation on the local device (at 5055), and displays the previously used remote camera video and current Indicate the transition between the video of the remote camera being used (ie, the image received in operation 5050). After 5055, the process moves to 5010 described above.

図51のUI5105に示される後半の4つの動作段階5130、5135、5140及び5145は、ローカルデバイス5100上でのこのようなリモートカメラ切り換えアニメーションの一例を示す。例示的なアニメーションは、図51がリモートデバイスの前面カメラによって取り込まれた女性のビデオを、リモートデバイスの背面カメラによって取り込まれた木のビデオと置き換えるアニメーションを表示域5150に示すことを除いて、図48の段階4815、4820、4825及び4830に示される例示的なアニメーションと同様である。図52及び図53の後半の4つの段階は、図52及び図53の表示域1155が図51の表示域1155と異なる選択可能UI項目を含むことを除いて、図51のアニメーションと同じアニメーションを示す。   The latter four stages of operation 5130, 5135, 5140 and 5145 shown in the UI 5105 of FIG. 51 illustrate an example of such a remote camera switching animation on the local device 5100. The example animation is shown in FIG. 51 except that FIG. Similar to the exemplary animation shown at 48 steps 4815, 4820, 4825 and 4830. 52 and 53 are the same as the animation of FIG. 51 except that the display area 1155 of FIGS. 52 and 53 includes a different selectable UI item than the display area 1155 of FIG. Show.

一部の実施形態では、リモートデバイスがカメラを切り換える場合に、リモートデバイスのUIも、2つのカメラ間の移行を表示するためにカメラ切り換えアニメーションを実行する。図54のUI5405に示される後半の4つの動作段階5420、5425、5430及び5435は、リモートデバイス5400がカメラを切り換える場合にリモートデバイス5400に表示されるカメラ切り換えアニメーションの一例を示す。このアニメーションは、表示域5445のアニメーションがリモートデバイス5400の前面カメラによって取り込まれた女性のビデオを、リモートデバイス5400の背面カメラによって取り込まれた木のビデオと置き換えることを除いて、図46の段階4630、4635、4640及び4645に示されるアニメーションと同様である。   In some embodiments, when the remote device switches cameras, the UI of the remote device also performs a camera switch animation to indicate the transition between the two cameras. The latter four operation stages 5420, 5425, 5430, and 5435 shown in the UI 5405 of FIG. 54 show an example of a camera switching animation displayed on the remote device 5400 when the remote device 5400 switches the camera. This animation is similar to step 4630 of FIG. 46, except that the animation of display area 5445 replaces the video of the woman captured by the front camera of remote device 5400 with the video of the tree captured by the rear camera of remote device 5400. , 4635, 4640 and 4645.

前述のように、図46、図47、図48、図49、図51、図52、図53及び図54は、ユーザインタフェースで実行されるカメラ切り換えアニメーションの種々の例を示す。一部の実施形態では、カメラ切り換えアニメーションによって、例えばテレビ会議マネージャ1604及び画像処理マネージャ1608によって実行できる、拡大縮小、合成及びパースペクティブ歪みなどのそれぞれのデュアルカメラ携帯デバイスの画像処理動作への変更を引き起こす。   As described above, FIGS. 46, 47, 48, 49, 51, 52, 53 and 54 show various examples of camera switching animations performed on the user interface. In some embodiments, the camera switching animation causes a change to the image processing behavior of the respective dual camera portable device, such as scaling, compositing, and perspective distortion, which can be performed by, for example, the video conferencing manager 1604 and the image processing manager 1608. .

C.露出調整
デュアルカメラ携帯デバイスと別の携帯デバイスとの間のテレビ会議中に、異なる実施形態は、どちらかの携帯デバイスのカメラによって取り込まれた画像の露出を調整するための異なる技術を提供する。一部の実施形態は、デュアルカメラ携帯デバイスのユーザが他のデバイスのカメラによって取り込まれた画像の露出を調整するための技術を提供するが、他の実施形態は、ユーザがデュアルカメラ携帯デバイスのカメラによって取り込まれた画像の露出を調整するための技術を提供する。いくつかの例示的な技術について、以下で詳細に説明する。
C. Exposure Adjustment During a video conference between a dual camera mobile device and another mobile device, different embodiments provide different techniques for adjusting the exposure of images captured by the camera of either mobile device. While some embodiments provide techniques for a user of a dual camera portable device to adjust the exposure of images captured by the camera of another device, other embodiments provide the user with a dual camera portable device. Techniques for adjusting the exposure of images captured by a camera are provided. Some exemplary techniques are described in detail below.

図55は、テレビ会議中に一部の実施形態のデュアルカメラ携帯デバイスでリモート露出調整動作を実行するためのプロセス5500を示す。以下の説明では、ユーザがリモートデバイスにその露出レベルを調整するように指示するデバイスは、ローカルデバイスと呼ばれる。一部の実施形態では、プロセス5500は、ローカルデバイスのテレビ会議マネージャによって実行される。さらに、プロセス5500について、図56、図57及び図58に関して説明する。これらの図は、ローカルデバイスのユーザが露出調整動作を実行するようにリモートデバイスに要求するための種々の仕方を示す。   FIG. 55 shows a process 5500 for performing a remote exposure adjustment operation on a dual camera portable device of some embodiments during a video conference. In the following description, a device for which a user instructs a remote device to adjust its exposure level is called a local device. In some embodiments, process 5500 is performed by a videoconferencing manager on the local device. Further, the process 5500 will be described with reference to FIGS. 56, 57 and 58. These figures illustrate various ways for a user of a local device to request a remote device to perform an exposure adjustment operation.

図55に示すように、プロセス5500は、ローカルデバイスとリモートデバイスとの間のテレビ会議を(5505において)開始することによって始まる。その後、プロセス5500は、ローカルデバイスの表示画面に表示するためのリモートデバイスからのビデオを(5510において)受信する。次に、プロセス5500は、テレビ会議終了要求が受信されたかどうかを(5515において)判定する。上述のように、一部の実施形態は、ローカルデバイス又はリモートデバイスのユーザからテレビ会議終了要求を受信できる。プロセス5500がテレビ会議終了要求を受信した場合に、プロセス5500は終了する。   As shown in FIG. 55, process 5500 begins by initiating (at 5505) a video conference between a local device and a remote device. Thereafter, process 5500 receives (at 5510) video from the remote device for display on the display screen of the local device. Next, the process 5500 determines (at 5515) whether a video conference termination request has been received. As described above, some embodiments can receive a video conference termination request from a user of a local or remote device. If the process 5500 receives the video conference end request, the process 5500 ends.

しかし、プロセス5500がテレビ会議終了要求を受信しない場合に、プロセス5500は、その後、リモートデバイスのカメラの露出を調整するための要求が受信されたかどうかを(5520において)判定する。リモートデバイスのカメラの露出を調整するための要求が受信されたとプロセス5500が判定した場合に、プロセス5500は動作5510に戻り、リモートデバイスから取り込まれた追加のビデオを受信する。図56、図57及び図58は、ユーザがこのような要求を行うための仕方を提供する3つの異なる例を示す。図56、図57及び図58では、第1段階5610、5710及び5810はすべて、2つのビデオ、すなわちローカルデバイスのカメラによって取り込まれたビデオ及びリモートデバイスのカメラによって取り込まれたビデオを表示する、ローカルデバイス5600、5700及び5800のPIP表示5625、5750及び5835を示す。第1段階5610、5710及び5810では、背景表示5635、5760及び5845の男性は暗く、男性が適切に露出されていないことを示す。   However, if process 5500 does not receive a video conference termination request, then process 5500 determines (at 5520) whether a request to adjust the exposure of the remote device's camera has been received. If the process 5500 determines that a request to adjust the camera exposure of the remote device has been received, the process 5500 returns to operation 5510 to receive additional video captured from the remote device. FIGS. 56, 57 and 58 show three different examples that provide a way for a user to make such a request. In FIGS. 56, 57 and 58, the first stages 5610, 5710 and 5810 are all local video displaying two videos, one captured by the camera of the local device and the video captured by the camera of the remote device. Shown are PIP displays 5625, 5750 and 5835 for devices 5600, 5700 and 5800. In the first stage 5610, 5710 and 5810, the men in the background displays 5635, 5760 and 5845 are dark, indicating that the men are not properly exposed.

図56の第2段階5615は、ローカルデバイス5600のユーザがリモートデバイスのビデオを(例えば、背景表示5635のシングルタップを通じて)選択することによって露出調整を実行するようにリモートデバイスに要求するための1つの仕方を示す。この仕方では、UI5605は、ボックス5645によって規定されたユーザの関心領域の選択を、関心領域に対して露出調整を実行するようにリモートデバイスに指示し、したがって露出調整動作を実行するためにリモートデバイスに連絡するようにローカルデバイスのテレビ会議マネージャに指示したいというユーザの希望に自動的に関連付ける。規定の関心領域は、リモートデバイスによって露出調整の算出に使用される。   The second step 5615 in FIG. 56 is for the user of the local device 5600 to request the remote device to perform an exposure adjustment by selecting the video of the remote device (eg, through a single tap on the background display 5635). Show one way. In this manner, the UI 5605 instructs the remote device to perform an exposure adjustment on the user's region of interest, as defined by box 5645, and thus performs the exposure adjustment operation on the remote device. Automatically associated with the user's desire to instruct the videoconferencing manager of the local device to contact. The defined region of interest is used by the remote device to calculate the exposure adjustment.

図56の第2段階5615のように、図57の第2段階5715は、第3段階5720に示す選択可能UI項目5770を表示するようにこの選択がUI5705に指示することを除いて、リモートデバイスのビデオのローカルユーザの選択を示す。第4段階5725は、ローカルデバイスのユーザが上述の露出調整動作を実行するようにリモートデバイスに指示するために選択可能UI項目5770を選択することを示す。   Like the second step 5615 of FIG. 56, the second step 5715 of FIG. 57 is similar to the second step 5715 of FIG. 3 shows the local user's selection of the video. A fourth step 5725 illustrates that the user of the local device selects the selectable UI item 5770 to instruct the remote device to perform the above-described exposure adjustment operation.

図58の第2段階5815は、図57の第2段階5715と同様であるが、リモートデバイスのビデオのユーザの選択が単一の選択可能UI項目を表示するようにUIに指示するのではなく、第3段階5820に示すように、ユーザの選択が、選択可能UI項目5855、5860、5865及び5870のメニューを表示するようにUI5805に指示する。選択可能UI項目は、オートフォーカス項目5855と、自動露出項目5860と、カメラ切り換え項目5865と、キャンセル項目5870とを含む。一部の実施形態では、カメラ切り換えの選択可能UI項目5865は、ローカルカメラ切り換え動作を要求するために使用されるが、他の実施形態では、カメラ切り換えの選択可能UI項目5865はリモートカメラ切り換え動作を要求するために使用される。第4段階5825は、ユーザが上述の露出調整動作を実行するようにリモートデバイスに指示するために自動露出項目5860を選択することを示す。   The second step 5815 of FIG. 58 is similar to the second step 5715 of FIG. 57, except that the user's selection of the video on the remote device does not instruct the UI to display a single selectable UI item. As shown in the third step 5820, the user's selection instructs the UI 5805 to display a menu of selectable UI items 5855, 5860, 5865 and 5870. The selectable UI items include an auto focus item 5855, an automatic exposure item 5860, a camera switching item 5865, and a cancel item 5870. In some embodiments, camera switch selectable UI item 5865 is used to request a local camera switch operation, while in other embodiments, camera switch selectable UI item 5865 is used for remote camera switch operation. Used to request. The fourth step 5825 illustrates that the user selects the automatic exposure item 5860 to instruct the remote device to perform the above-described exposure adjustment operation.

ローカルユーザが露出調整動作を要求するようにローカルデバイスに指示したと(5520において)プロセス5500が判定した場合に、プロセス5500は、現在ビデオを取り込んでいてローカルデバイスに伝送しているカメラによって取り込まれたビデオの露出を調整するために、テレビ会議制御チャネルを通じてリモートデバイスにコマンドを(5525において)送信する。動作5525の後に、プロセス5500は、上述した動作5510に移行する。   If the process 5500 determines (at 5520) that the local user has instructed the local device to request an exposure adjustment operation, the process 5500 may be captured by a camera that is currently capturing video and transmitting to the local device. A command is sent (at 5525) to the remote device over the video conferencing control channel to adjust the exposure of the video. After operation 5525, process 5500 moves to operation 5510, described above.

一部の実施形態では、リモートデバイスのユーザは、リモートデバイスが露出調整動作を実行する前に承認を与えるように要求されるが、他の実施形態では、リモートデバイスは、ローカルデバイスから要求を受信すると、露出調整動作を自動的に実行する。さらに、一部の実施形態では、テレビ会議機能のうちの一部は、テレビ会議マネージャ1604によって実施される。これらの実施形態のうちの一部では、テレビ会議マネージャ1604は、使用されているリモートデバイスカメラのセンサの露出設定を調整するようにCIPU1650に命令することによって、露出調整動作を実行する。   In some embodiments, the user of the remote device is required to provide approval before the remote device performs an exposure adjustment operation, while in other embodiments, the remote device receives a request from the local device Then, the exposure adjustment operation is automatically performed. Further, in some embodiments, some of the video conferencing functions are performed by video conferencing manager 1604. In some of these embodiments, video conferencing manager 1604 performs an exposure adjustment operation by instructing CIPU 1650 to adjust the exposure settings of the sensors of the remote device camera being used.

図56、図57及び図58の最後の段階5620、5730及び5830は、リモートデバイスのビデオをより明るく示し、男性が適切に露出されていることを示す。図56、図57及び図58は、リモートデバイスの露出を補正するという露出調整要求を受信する例を提供するが、一部の実施形態は、ローカルデバイスがローカルデバイスのカメラの露出を調整することをローカルデバイスのユーザが要求するための仕方を提供する。このような要求は、リモートデバイスにそのカメラの露出を調整するように要求するための、図56、図57及び図58に示される仕方と同様にしてなされうる。   The last step 5620, 5730 and 5830 of FIGS. 56, 57 and 58 shows the video of the remote device brighter, indicating that the male is properly exposed. Although FIGS. 56, 57 and 58 provide examples of receiving an exposure adjustment request to correct the exposure of a remote device, some embodiments require that the local device adjust the exposure of the camera of the local device. Is provided for the user of the local device to request. Such a request may be made in a manner similar to that shown in FIGS. 56, 57 and 58 for requesting the remote device to adjust its camera exposure.

上述の図56〜58は、露出調整動作を実行するためのいくつかのユーザインタフェースを示す。一部の実施形態では、露出調整動作は、以下でさらに詳細に説明する露出調整プロセス5900の起動などのデュアルカメラ携帯デバイスの画像処理動作への変更を引き起こすことができる。露出調整動作は、例えば、カメラの露出レベル設定の変更のようなビデオを取り込んでいるデュアルカメラ携帯デバイスのカメラの動作の変更も引き起こすことができる。   FIGS. 56-58 described above illustrate some user interfaces for performing exposure adjustment operations. In some embodiments, the exposure adjustment operation can cause a change to the image processing operation of the dual camera portable device, such as invoking the exposure adjustment process 5900 described in further detail below. The exposure adjustment operation can also cause a change in the operation of the camera of a dual camera portable device that is capturing video, for example, a change in the exposure level setting of the camera.

1.露出調整方法
図59は、図16に示されるプロセスなどの、一部の実施形態の画像処理マネージャによって実行される露出調整プロセス5900を概念的に示す。一部の実施形態では、プロセス5900は、図55、図56、図57及び図58に関して上述した露出調整動作の一部である。このような実施形態のうちの一部では、画像処理マネージャ1608は、プロセス5900を実行し、テレビ会議マネージャ1604に命令を送信することによってカメラの露出設定を調整し、テレビ会議マネージャ1604は、上述のように、カメラセンサ405a又は405bを調整するようにCIPU1650に命令する。
1. Exposure Adjustment Method FIG. 59 conceptually illustrates an exposure adjustment process 5900 performed by the image processing manager of some embodiments, such as the process shown in FIG. In some embodiments, process 5900 is part of the exposure adjustment operation described above with respect to FIGS. 55, 56, 57, and 58. In some of such embodiments, the image processing manager 1608 performs the process 5900 and adjusts the camera's exposure settings by sending instructions to the video conferencing manager 1604, where , Command the CIPU 1650 to adjust the camera sensor 405a or 405b.

一部の実施形態では、プロセス5900は、図9に示される画像処理層930によって実行されるが、他の実施形態では、プロセス5900は、図4に示される統計エンジン465によって実行される。一部の実施形態は、テレビ会議中に(ローカル又はリモートの)デバイスのカメラによって取り込まれた画像に対してプロセス5900を実行するが、他の実施形態は、図21に示されるプロセス2100(例えば、動作2110)の一部としてプロセス5900を実行する。一部の実施形態は、デュアルカメラ携帯デバイスのカメラによって取り込まれた、明る過ぎも暗すぎもしない画像を露出させるために露出調整動作を実行する。言い換えれば、プロセス5900は、詳細の量をできる限り最大にする方式で画像を取り込むために実行される。   In some embodiments, process 5900 is performed by image processing layer 930 shown in FIG. 9, while in other embodiments, process 5900 is performed by statistics engine 465 shown in FIG. While some embodiments perform process 5900 on images captured by the camera of the device (local or remote) during a video conference, other embodiments perform process 2100 (eg, , Perform process 5900 as part of operation 2110). Some embodiments perform an exposure adjustment operation to expose images captured by the camera of the dual camera portable device that are neither too bright nor too dark. In other words, process 5900 is performed to capture an image in a manner that maximizes the amount of detail as much as possible.

プロセス5900は、デュアルカメラ携帯デバイスのカメラによって取り込まれた画像を(5905において)受信することによって始まる。一部の実施形態では、受信された画像がテレビ会議においてデバイスのカメラによって取り込まれた第1画像である場合に、プロセス5900は、第1画像に対して実行されない(すなわち、第1画像よりも前に、露出値を判定するための画像はない)。その後、プロセス5900は、受信した画像の規定の領域の画素値を(5910において)読み取る。異なる実施形態は、領域を異なるように規定する。このような実施形態のうちの一部は、正方形、長方形、三角形、円形などの異なる形状をした領域を規定するが、このような実施形態の他のものは、中央、上部中央、下部中央などの画像内の異なる位置に領域を規定する。   Process 5900 begins by receiving (at 5905) an image captured by a camera of a dual camera portable device. In some embodiments, if the received image is the first image captured by the device's camera in a video conference, process 5900 is not performed on the first image (ie, the first image is less than the first image). Before, there is no image to determine the exposure value). Thereafter, process 5900 reads (at 5910) the pixel value of the defined region of the received image. Different embodiments define the regions differently. Some of such embodiments define regions of different shapes, such as squares, rectangles, triangles, circles, etc., while others of such embodiments include centers, upper centers, lower centers, etc. Regions are defined at different positions in the image.

次に、プロセス5900は、画像の規定の領域における画素値の平均を(5915において)算出する。プロセス5900は、画素値の算出された平均が特定の規定の値に等しいかどうかを(5920において)判定する。異なる実施形態は、異なる特定の値を定義する。例えば、一部の実施形態は、画像のダイナミックレンジのメジアン画素値として特定の値を定義する。一部の実施形態では、単一の値ではなく、値の範囲が定義される。このような実施形態では、プロセス5900は、画素値の算出された平均が規定の値の範囲内にあるかどうかを(5920において)判定する。   Next, the process 5900 calculates (at 5915) the average of the pixel values in the defined region of the image. Process 5900 determines (at 5920) whether the calculated average of the pixel values is equal to a particular prescribed value. Different embodiments define different specific values. For example, some embodiments define a particular value as the median pixel value of the dynamic range of the image. In some embodiments, a range of values is defined rather than a single value. In such an embodiment, process 5900 determines (at 5920) whether the calculated average of the pixel values is within a specified value range.

画素値の算出された平均が特定の規定の値に等しくない場合に、プロセス5900は、算出された平均に基づいて露出値を(5925において)調整する。画素値の算出された平均が特定の規定の値に等しい場合に、プロセス5900は終了する。一部の実施形態では、露出値は、カメラセンサが光に露光される時間量を表す。一部の実施形態では、調整された露出値は、受信した画像を取り込んだカメラによって取り込まれるべき次の画像を露出させるために使用される。算出された平均に基づいて露出値が調整された後、プロセス5900は終了する。   If the calculated average of the pixel values is not equal to the specified value, the process 5900 adjusts (at 5925) the exposure value based on the calculated average. If the calculated average of the pixel values is equal to the specified value, the process 5900 ends. In some embodiments, the exposure value represents an amount of time that the camera sensor is exposed to light. In some embodiments, the adjusted exposure value is used to expose the next image to be captured by the camera that captured the received image. After the exposure values have been adjusted based on the calculated average, process 5900 ends.

一部の実施形態では、画素値の算出された平均が特定の規定の値に等しくなる(又は、値の規定の範囲内に入る)まで、プロセス5900は反復して実行される。一部の実施形態は、テレビ会議中にプロセス5900を常に実行するが、他の実施形態は、テレビ会議中に規定の間隔(例えば、5秒、10秒、30秒など)でプロセス5900を実行する。そのうえ、テレビ会議中に、一部の実施形態のプロセス5900は、プロセス5900を実行する前に特定の画素値を動的に再定義する。   In some embodiments, process 5900 is performed iteratively until the calculated average of the pixel values is equal to (or within a specified range of values) a specified value. Some embodiments always perform process 5900 during a video conference, while other embodiments perform process 5900 during a video conference at regular intervals (eg, 5 seconds, 10 seconds, 30 seconds, etc.). I do. Moreover, during a video conference, the process 5900 of some embodiments dynamically redefines certain pixel values before performing the process 5900.

図60は、一部の実施形態の露出調整動作の例を概念的に示す。例6000、6010及び6015のそれぞれは、デュアルカメラ携帯デバイスのカメラによって取り込まれた画像6020を左側に示す。具体的には、画像6020は、色の暗い人を太陽の前に示す。色の暗い人は、画像の露出レベルが、人の顔又は身体を露出させるのに十分なほど高くないことを示す。各例6000、6010及び6015の右側はそれぞれ、画像6020の後に取り込まれた画像6025、6030及び6035を示す。一部の実施形態では、画像6020及び右側の画像は、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオの画像である。他の実施形態では、画像6020及び右側の画像は、依然として、異なる時点でデュアルカメラ携帯デバイスのカメラによって取り込まれた静止画像である。   FIG. 60 conceptually shows an example of the exposure adjustment operation of some embodiments. Examples 6000, 6010 and 6015 each show an image 6020 captured by the camera of a dual camera portable device on the left. Specifically, image 6020 shows a darker person in front of the sun. A dark person indicates that the exposure level of the image is not high enough to expose the person's face or body. The right side of each example 6000, 6010 and 6015 shows images 6025, 6030 and 6035 captured after image 6020, respectively. In some embodiments, the image 6020 and the image on the right are images of a video captured by a camera of a dual camera portable device. In other embodiments, the image 6020 and the right image are still images captured by the cameras of the dual camera portable device at different times.

第1例6000は、露出調整のされていない動作を示す。したがって、画像6025は、画像6020と同じように見える。露出調整が実行されなかったので、画像6025の人は、画像6020の人のように、色の暗いままである。   The first example 6000 shows an operation without exposure adjustment. Thus, image 6025 looks the same as image 6020. Because no exposure adjustment was performed, the person in image 6025 remains dark, like the person in image 6020.

第2例6010では、露出調整動作が画像6020に対して実行される。一部の実施形態では、露出調整動作は、規定の領域6040を使用して、プロセス5900によって実行される。露出調整動作に基づいて、カメラの露出レベルが調整され、カメラは、調整された露出レベルを使用して画像6030を取り込む。図60に示すように、画像6030の人は、画像6025ほど暗くはない。しかし、画像6030の人の顔及び身体は、依然として明瞭ではない。   In the second example 6010, an exposure adjustment operation is performed on the image 6020. In some embodiments, an exposure adjustment operation is performed by the process 5900 using the defined area 6040. Based on the exposure adjustment operation, the exposure level of the camera is adjusted, and the camera captures an image 6030 using the adjusted exposure level. As shown in FIG. 60, the person in image 6030 is not as dark as image 6025. However, the person's face and body in image 6030 are still not clear.

第3例6015は、画像6020に対して実行される露出調整動作を示す。第2例6010と同様に、一部の実施形態の例6015の露出調整動作は、規定の領域6045を使用してプロセス5900によって実行される。露出調整動作に基づいて、カメラの露出レベルが調整され、カメラは、調整された露出レベルを使用して画像6035を取り込む。図60で分かるように、人の顔及び身体が認識できるので、画像6035の人は完全に露出される。   The third example 6015 shows an exposure adjustment operation performed on the image 6020. As with the second example 6010, the exposure adjustment operation of the example 6015 of some embodiments is performed by the process 5900 using the defined area 6045. Based on the exposure adjustment operation, the exposure level of the camera is adjusted, and the camera captures an image 6035 using the adjusted exposure level. As can be seen in FIG. 60, the person in image 6035 is completely exposed because the person's face and body can be recognized.

一部の実施形態では、規定の領域の選択は、デュアルカメラ携帯デバイスのユーザによってなされうる。デバイス自体はまた、CIPU400で上述した露出調整のフィードバックループを通じた露出調整動作のために、その規定の領域を自動的に調整できる。図4の統計エンジン465は、取り込まれた画像に対して露出レベルが適切であるかどうかを判定し、それに応じて(例えば、センサモジュール415への直接接続を通じて)カメラセンサを調整するためにデータを収集してもよい。   In some embodiments, the selection of the predefined area may be made by a user of the dual camera portable device. The device itself can also automatically adjust its defined region for exposure adjustment operations through the exposure adjustment feedback loop described above at CIPU 400. The statistics engine 465 of FIG. 4 determines whether the exposure level is appropriate for the captured image and adjusts the data to adjust the camera sensor accordingly (eg, through a direct connection to the sensor module 415). May be collected.

D.焦点調整
図61は、テレビ会議中にデュアルカメラ携帯デバイスのフォーカスを調整するためのプロセス6100を示す。以下の説明では、ユーザがリモートデバイスにそのカメラのフォーカスを調整するように指示するデバイスが、ローカルデバイスと呼ばれる。一部の実施形態では、図61のプロセス6100は、ローカルデバイスのテレビ会議マネージャ1604によって実行される。また、このプロセスについて、以下で図62及び図63に関して説明する。これらの図は、リモートデバイスによって焦点調整動作が実行されることをローカルデバイスのユーザが要求するための2つの例示的な方式を提供する。
D. Focus Adjustment FIG. 61 shows a process 6100 for adjusting the focus of a dual camera portable device during a video conference. In the following description, a device that a user instructs a remote device to adjust the focus of its camera is called a local device. In some embodiments, process 6100 of FIG. 61 is performed by videoconferencing manager 1604 of the local device. This process is described below with reference to FIGS. 62 and 63. These figures provide two exemplary ways for a user of a local device to request that a focusing operation be performed by a remote device.

図61に示すように、プロセス6100は、ローカルデバイスとリモートデバイスとの間のテレビ会議を(6105において)開始することによって始まる。その後、プロセス6100は、ローカルデバイスの表示画面に表示するためのビデオをリモートデバイスから(6110において)受信する。次に、6115では、プロセス6100は、テレビ会議終了要求が受信されたかどうかを判定する。上述のように、テレビ会議は、一部の実施形態では、ローカルデバイス又はリモートデバイスのユーザの要求により終了できる。プロセス6100がテレビ会議終了要求を受信した場合に、プロセス6100は終了する。   As shown in FIG. 61, process 6100 begins by initiating (at 6105) a video conference between a local device and a remote device. Thereafter, process 6100 receives (at 6110) video from the remote device for display on the display screen of the local device. Next, at 6115, the process 6100 determines whether a video conference termination request has been received. As mentioned above, the video conference may be terminated in some embodiments at the request of the user of the local or remote device. If the process 6100 receives a video conference end request, the process 6100 ends.

そうでない場合に、プロセスは、リモートデバイスのリモートカメラのフォーカスを調整することの要求を受信したかどうかを(6120において)判定する。リモートデバイスのリモートカメラのフォーカスを調整するための要求を受信していないとプロセス6100が判定した場合に、プロセス6100は、動作6110に戻り、リモートデバイスから追加のビデオを受信する。図62、図63及び図64は、異なる実施形態がこのような要求を行うためにユーザに提供する3つの異なるやり方を示す。図62、図63及び図64では、第1段階6210、6310及び6472はすべて、2つのビデオ、すなわちローカルデバイスによって取り込まれたビデオ及びリモートデバイスによって取り込まれたビデオを表示するローカルデバイス6200、6300及び6471のPIP表示6225、6335及び6482を示す。図62及び図63の表示域1155及び1155は、会議終了ボタンを示す。しかし、図64では、表示域1155のレイアウトは、上述した図12の表示域1155のレイアウトと同じである。さらに、表示域1155に示されるカメラ切り換えボタン6488は、一部の実施形態ではローカルカメラ切り換え動作を、又は他の実施形態ではリモートカメラ切り換え動作を起動するために選択されうる。第1段階6210、6310及び6472に示すように、背景表示6235、6345及び6480に表示されるリモートデバイスのビデオは不鮮明である。   Otherwise, the process determines (at 6120) whether a request to adjust the focus of the remote device's remote camera has been received. If the process 6100 determines that it has not received a request to adjust the focus of the remote camera of the remote device, the process 6100 returns to operation 6110 to receive additional video from the remote device. FIGS. 62, 63 and 64 show three different ways that different embodiments provide a user to make such a request. In FIGS. 62, 63 and 64, the first stages 6210, 6310 and 6472 are all local devices 6200, 6300 that display two videos: one captured by the local device and one captured by the remote device. 6471 shows PIP displays 6225, 6335 and 6482. Display areas 1155 and 1155 in FIGS. 62 and 63 indicate a conference end button. However, in FIG. 64, the layout of the display area 1155 is the same as the layout of the display area 1155 of FIG. 12 described above. Further, the camera switch button 6488 shown in the display area 1155 may be selected to initiate a local camera switch operation in some embodiments, or a remote camera switch operation in other embodiments. As shown in the first stage 6210, 6310 and 6472, the video of the remote device displayed in the background displays 6235, 6345 and 6480 is blurry.

図62の第2段階6215は、ローカルデバイスのユーザが(例えば、リモートデバイスのビデオのシングルタップ6240を通じて)リモートデバイスのビデオを選択するだけで焦点調整を要求するための1つの手法を示す。この手法では、UI6205は、ボックス6245によって規定されたユーザの関心領域の選択を、関心領域に対して(フォーカスなどの)動作を実行するようにリモートデバイスに指示し、したがって(焦点調整動作などの)調整動作を実行するためにリモートデバイスに連絡するようにローカルデバイス6200のテレビ会議マネージャ1604に指示したいというユーザの希望に自動的に関連付ける。規定の関心領域は、リモートデバイスによって焦点調整の算出に使用される。   The second stage 6215 of FIG. 62 illustrates one approach for the user of the local device to request focus adjustment by simply selecting the video of the remote device (eg, through a single tap 6240 on the video of the remote device). In this approach, UI 6205 instructs the remote device to perform an operation (such as focus) on the region of interest of the user, as defined by box 6245, and thus (such as a focus adjustment operation). ) Automatically associate with the user's desire to instruct the videoconferencing manager 1604 of the local device 6200 to contact the remote device to perform a coordination operation. The defined region of interest is used by the remote device to calculate the focus adjustment.

図63の第2段階6315は、同様に、(例えば、ユーザのリモートデバイスのビデオへのタップを通じて)ローカルユーザのリモートビデオの選択を示す。しかし、図62に示される例とは異なり、図63のこの選択は、第3段階6320に示すように、(選択可能なボタンとして実装できる)選択可能UI項目6355、6360、6365及び6370のメニューを表示するようにUI6305に指示する。これらの選択可能UI項目は、オートフォーカス項目6360と、自動露出項目6365と、カメラ切り換え項目6370と、キャンセル項目6355とを含む。一部の実施形態では、カメラ切り換えの選択可能UI項目6370は、ローカルカメラ切り換え動作を要求するために使用されるが、他の実施形態では、カメラ切り換えの選択可能UI項目6370は、リモートカメラ切り換え動作を要求するために使用される。その後、第4段階6325は、ローカルユーザがオートフォーカス項目6360を選択することを示す。   The second step 6315 of FIG. 63 also illustrates the selection of the local user's remote video (eg, through a tap on the user's remote device video). However, unlike the example shown in FIG. 62, this selection in FIG. 63 is based on the menu of selectable UI items 6355, 6360, 6365 and 6370 (which can be implemented as selectable buttons), as shown in the third step 6320. Is displayed to the UI 6305. These selectable UI items include an autofocus item 6360, an automatic exposure item 6365, a camera switching item 6370, and a cancel item 6355. In some embodiments, the camera switch selectable UI item 6370 is used to request a local camera switch operation, while in other embodiments, the camera switch selectable UI item 6370 includes a remote camera switch Used to request action. Thereafter, a fourth step 6325 indicates that the local user selects the autofocus item 6360.

図64の第2段階6474は、この場合もやはり同様に、(例えば、ユーザのリモートデバイスのビデオのタップを通じて)ローカルユーザのリモートビデオの選択を示す。しかし、図63に示される例とは異なり、図64のこの選択は、焦点調整動作を(すなわち、第2段階6474において)要求するようにUI6478に指示する。焦点調整動作が完了した後、UI6478は、選択可能なボタンとして実装できる選択可能UI項目6484及び6486のメニューを(すなわち、第3段階6476において)表示する。これらの選択可能UI項目は、自動露出項目6486とキャンセル項目6484とを含む。   The second stage 6474 of FIG. 64 again illustrates the selection of the local user's remote video (eg, via a user's remote device video tap). However, unlike the example shown in FIG. 63, this selection in FIG. 64 instructs UI 6478 to request a focus adjustment operation (ie, in a second step 6474). After the focus adjustment operation is completed, UI 6478 displays a menu of selectable UI items 6484 and 6486 that can be implemented as selectable buttons (ie, in a third step 6476). These selectable UI items include an automatic exposure item 6486 and a cancel item 6484.

ローカルユーザが焦点調整動作を要求するようにローカルデバイスに指示したと(6120において)プロセスが判定した場合に、プロセス6100は、リモートデバイスが現在ビデオを取り込んで伝送しているカメラのフォーカスを調整するために、テレビ会議制御チャネルを通じてリモートデバイスにコマンドを(6140において)送信する。6140の後で、プロセスは、上述した6110に移行する。   If the process determines (at 6120) that the local user has instructed the local device to request a focus adjustment operation, the process 6100 adjusts the focus of the camera at which the remote device is currently capturing and transmitting video. To do so, it sends a command (at 6140) to the remote device over the video conference control channel. After 6140, the process moves to 6110, described above.

一部の実施形態では、リモートデバイスのユーザは、リモートデバイスがこの動作を実行する前に承認を与えなければならないが、他の実施形態では、リモートデバイスは、ローカルデバイスのための要求を受信すると、この動作を自動的に実行する。また、一部の実施形態では、焦点調整動作は、テレビ会議中に使用されているリモートデバイスのカメラのフォーカス設定を調整する。このような実施形態のうちの一部では、テレビ会議機能のうちの一部は、上述のテレビ会議モジュール1602によって実施される。これらの実施形態では、テレビ会議マネージャ1604は、使用されているリモートデバイスカメラのセンサを調整するようにCIPU1650に命令する。   In some embodiments, the user of the remote device must provide authorization before the remote device performs this operation, while in other embodiments, the remote device receives a request for the local device. Perform this operation automatically. Also, in some embodiments, the focus adjustment operation adjusts a focus setting of a camera of the remote device being used during the video conference. In some of such embodiments, some of the video conferencing functions are performed by video conferencing module 1602 described above. In these embodiments, video conference manager 1604 instructs CIPU 1650 to adjust the sensors of the remote device camera being used.

図62、図63及び図64の最後の段階6220、6330及び6476は、適切にフォーカスが合わされたリモートデバイスのビデオを示す。図62、図63及び図64は、リモートデバイスのフォーカスを補正することの焦点調整要求を受信する例を提供するが、一部の実施形態により、ローカルデバイスのユーザは、ローカルデバイスがローカルデバイスのカメラのフォーカスを調整することを要求できる。このような要求は、リモートデバイスにそのカメラのフォーカスを調整するように要求するための、図62、図63及び図64に示される手法と同様にしてなされうる。   The last steps 6220, 6330 and 6476 of FIGS. 62, 63 and 64 show the video of the properly focused remote device. 62, 63 and 64 provide an example of receiving a focus adjustment request to correct the focus of a remote device, but according to some embodiments, the user of the local device may have a local device You can request to adjust the focus of the camera. Such a request can be made in a manner similar to that shown in FIGS. 62, 63 and 64 for requesting the remote device to adjust the focus of the camera.

図62、図63及び図64は、ユーザが焦点調整動作を実行できる3つの例示的なユーザインタフェースを示す。一部の実施形態では、焦点調整動作によって、カメラのフォーカスの変更などの、UIに表示されるビデオを取り込んでいるデュアルカメラ携帯デバイスのカメラの動作への変更が生じる。   FIGS. 62, 63 and 64 show three exemplary user interfaces that allow a user to perform a focus adjustment operation. In some embodiments, the focus adjustment operation causes a change to the operation of the camera of the dual camera portable device capturing the video displayed on the UI, such as changing the focus of the camera.

図56及び図62で上述したように、規定の関心領域はそれぞれ、リモート携帯デバイスによってビデオの露出調整及び焦点調整の計算に使用された。しかし、一部の他の実施形態では、ユーザによる関心領域の選択は、1つ以上の動作を実行するようにリモートデバイスに指示するために使用されうる。例えば、一部の実施形態では、露出調整及び焦点調整の両方は、規定の関心領域に基づいて実行され、それによって、両方の動作を実行するようにリモートデバイスに指示されてもよい。   As described above in FIGS. 56 and 62, the defined regions of interest were used by the remote portable device to calculate video exposure and focus adjustments, respectively. However, in some other embodiments, the selection of the region of interest by the user may be used to instruct the remote device to perform one or more operations. For example, in some embodiments, both exposure adjustment and focus adjustment may be performed based on a defined region of interest, thereby instructing the remote device to perform both operations.

E.フレームレート制御
テレビ会議中に、一部の実施形態は、デュアルカメラ携帯デバイスのカメラによって取り込まれるビデオの画像がテレビ会議において他のデバイスに伝送される速度(すなわち、フレームレート)の調整又は維持を希望してもよい。例えば、固定帯域幅を仮定すると、このような実施形態のうちの一部は、ビデオの画像の画質を向上させるためにビデオのフレームレートを減少させるが、このような実施形態の他のものでは、ビデオを平滑化するためにビデオのフレームレートを増加させる(すなわち、ジッタを減少させる)。
E. FIG. Frame Rate Control During videoconferencing, some embodiments provide for adjusting or maintaining the rate at which images of video captured by the camera of a dual camera portable device are transmitted to other devices in the videoconference (ie, frame rate). You may wish. For example, assuming a fixed bandwidth, some of such embodiments reduce the frame rate of the video to improve the quality of the image of the video, while others of such embodiments reduce the frame rate of the video. Increase the frame rate of the video to smooth the video (ie, reduce the jitter).

異なる実施形態は、テレビ会議中にビデオの画像のフレームレートを制御するための異なる技術を提供する。以前に上述した一例は、カメラによって取り込まれた画像が処理される速度を制御するためのカメラのセンサモジュール415のVBIを調整する。別の例として、図9に示されるテレビ会議モジュール925の管理層935の一部の実施形態は、画像を破棄することによってフレームレートを制御する。同様に、画像処理層930の一部の実施形態は、画像を破棄することによってフレームレートを制御する。一部の実施形態は、汎用伝送バッファ3120内のフレームの破棄などの、フレームレートを制御するためのさらに他の技術を提供する。   Different embodiments provide different techniques for controlling the frame rate of a video image during a video conference. One example described previously adjusts the VBI of the camera's sensor module 415 to control the rate at which images captured by the camera are processed. As another example, some embodiments of the management layer 935 of the video conferencing module 925 shown in FIG. 9 control the frame rate by discarding images. Similarly, some embodiments of the image processing layer 930 control the frame rate by discarding the image. Some embodiments provide still other techniques for controlling the frame rate, such as discarding frames in the universal transmission buffer 3120.

V.デュアルカメラ
A.ビューの結合
1.ピクチャインピクチャ:2つのリモートカメラの表示
一部の実施形態により、デュアルカメラ携帯デバイスは、テレビ会議中に携帯デバイスから取り込まれたビデオ及び別のデュアルカメラ携帯デバイスから取り込まれたビデオをいくつかの表示構成のいずれかで表示できる。図65は、1つ以上のデュアルカメラ携帯デバイスから取り込まれたビデオのための異なる表示構成の例を示す。図65では、デュアルカメラ携帯デバイス6500(デバイスA)のユーザ及び第2デュアルカメラ携帯デバイス6505(デバイスB)の第2ユーザは、互いとのテレビ会議を行っている。
V. Dual camera A. Combining views Picture-in-Picture: Displaying Two Remote Cameras According to some embodiments, a dual-camera mobile device may include a video captured from a mobile device during a video conference and a video captured from another dual-camera mobile device. It can be displayed in any of the display configurations. FIG. 65 shows examples of different display configurations for video captured from one or more dual camera portable devices. In FIG. 65, a user of the dual camera portable device 6500 (device A) and a second user of the second dual camera portable device 6505 (device B) are having a video conference with each other.

図65は、デバイスAのための表示構成の4つの例を左に示す。デバイスAのための4つの表示構成は、第1ビュー6510、第2ビュー6515、第3ビュー6520及び第4ビュー6525である。さらに、図65はまた、デバイスBのための表示構成の4つの例を右に示す。デバイスBのための4つの表示構成は、第1ビュー6565、第2ビュー6570、第3ビュー6575及び第4ビュー6580である。この例では、デバイスAは、デバイスAのカメラから取り込まれた2つのビデオのみを表示し、デバイスBは、デバイスAのカメラから取り込まれた2つのビデオだけでなく、デバイスBのカメラから取り込まれたビデオの一方又は両方を表示する。   FIG. 65 shows four examples of display configurations for device A on the left. The four display configurations for device A are a first view 6510, a second view 6515, a third view 6520, and a fourth view 6525. Further, FIG. 65 also shows four examples of display configurations for device B on the right. The four display configurations for device B are a first view 6565, a second view 6570, a third view 6575, and a fourth view 6580. In this example, device A displays only the two videos captured from device A's camera, and device B captures not only the two videos captured from device A's camera, but also the video captured from device B's camera. Display one or both of the videos.

第1ビュー6510では、デバイスAのUI6585は、合成表示6512を提供する。合成表示6512は、2つの表示域、すなわちデバイスAの背面カメラから取り込まれたビデオを表示するための表示域6530と、デバイスAの前面カメラから取り込まれたビデオを表示するための表示域6535とを含む。この例では、表示域6530は合成表示6512の上半分にあり、表示域6535は合成表示6512の下半分にある。この2つの表示域は、第1ビュー6510では、等しいサイズである。上部表示域6530は、山のビデオを表示しており、これは、デバイスAの背面カメラによって取り込まれている山と想定される。表示域6535は、木と帽子を被った男性とを表示しており、これは、デバイスAの前面カメラによって取り込まれている木と帽子を被った男性とであると想定される。   In the first view 6510, the UI 6585 of the device A provides a composite display 6512. The composite display 6512 has two display areas: a display area 6530 for displaying video captured from the rear camera of the device A, and a display area 6535 for displaying video captured from the front camera of the device A. including. In this example, display area 6530 is in the upper half of composite display 6512, and display area 6535 is in the lower half of composite display 6512. The two display areas have the same size in the first view 6510. The upper display area 6530 displays a video of the mountain, which is assumed to be the mountain being captured by the rear camera of device A. The display area 6535 displays a tree and a man wearing a hat, which is assumed to be a tree and a man wearing a hat captured by the front camera of the device A.

第2ビュー6515のUI6585は、(デバイスAの前面カメラから取り込まれたビデオを表示する)表示域6535がこの時点で合成表示6517の上半分にあり、かつ(デバイスAの背面カメラから取り込まれたビデオを表示する)表示域6530が合成表示6517の下半分にあることを除いて、第1ビュー6510と同じ2つの表示域を含む合成表示6517を提供する。   The UI 6585 of the second view 6515 shows that the display area 6535 (displaying the video captured from the front camera of the device A) is now in the upper half of the composite display 6517, and the display area 6535 (captured from the rear camera of the device A). It provides a composite view 6517 that includes the same two display areas as the first view 6510, except that the display area 6530 (displaying video) is in the lower half of the composite view 6517.

第3ビュー6520では、UI6585は、PIP表示6595を提供する。PIP表示6595は、2つの表示域、すなわちデバイスAの前面カメラから取り込まれたビデオを背景表示域として表示する表示域6535と、デバイスAの背面カメラから取り込まれたビデオを前景挿入表示域として表示する表示域6530とを含む。このビューでは、背景表示域6535はPIP表示6595の大半を占めるが、挿入表示域6530は背景表示域6535よりも小さく、この一部分に重なる。   In the third view 6520, the UI 6585 provides a PIP display 6595. The PIP display 6595 displays two display areas: a display area 6535 for displaying a video captured from the front camera of the device A as a background display area, and a video captured from the rear camera of the device A as a foreground insertion display area. And a display area 6530. In this view, the background display area 6535 occupies most of the PIP display 6595, but the insertion display area 6530 is smaller than the background display area 6535 and partially overlaps the background display area 6535.

第4ビュー6525のUI6585も、第3ビュー6520に示す表示域6530及び6535を含むPIP表示6598を提示する。PIP表示6595とは異なり、PIP表示6598は、(デバイスAの背面カメラから取り込まれた)表示域6530を背景メイン表示として含み、(デバイスAの前面カメラから取り込まれた)表示域6535を前景挿入表示として含む。さらに、PIP表示6598は、横ビューで提示される(すなわち、PIP表示6598の幅は高さよりも大きい)。   The UI 6585 of the fourth view 6525 also presents a PIP display 6598 including the display areas 6530 and 6535 shown in the third view 6520. Unlike the PIP display 6595, the PIP display 6598 includes a display area 6530 (captured from the rear camera of device A) as a background main display and a display area 6535 (captured from the front camera of device A) with foreground insertion. Include as display. Further, PIP display 6598 is presented in a landscape view (ie, the width of PIP display 6598 is greater than its height).

上記の例は、デバイスAのUIのための4つの取りうる合成ビューを示し、そのうちの2つでは、第1デバイスの2つのカメラを表示するための2つの表示域6530及び6535が垂直に並べられ、2つはPIPビューである。他のビューも、デバイスAのUIで可能である。例えば、2つの表示域は、水平又は斜めに並べられることができ、又は異なるPIPビューが使用されうる。   The above example shows four possible composite views for the UI of device A, two of which are vertically aligned with two display areas 6530 and 6535 for displaying the two cameras of the first device. And two are PIP views. Other views are also possible on the device A UI. For example, the two display areas can be arranged horizontally or diagonally, or different PIP views can be used.

デバイスBのために示された種々のビューは、デバイスBのUIのための異なるビューが可能であることを示す。これらのビューは、デバイスAの両方のカメラだけでなく、デバイスBの1つ以上のカメラから取り込まれたビデオを含む。デバイスBの第1ビュー6565では、デバイスBのUI6590は、PIP表示6568を提供する。PIP表示6568は、デバイスAに表示される合成表示6512と同一である合成表示域6569だけでなく、デバイスBのカメラの一方(例えば、前面カメラ)によって取り込まれたビデオを表示する挿入表示域6550を含む。合成表示域6569は、デバイスAの背面カメラから取り込まれたビデオを表示するための表示域6531と、デバイスAの前面カメラから取り込まれたビデオを表示するための表示域6536とを含む。デバイスAからのビデオを表示する合成表示6569はPIP表示6568の大半を占めるが、挿入表示域6550は合成表示6569よりも小さく、これに重なる。表示域6550は、笑顔のビデオを表示しており、これは、デバイスBの前面カメラによってビデオが取り込まれている笑顔と想定される。   The various views shown for device B indicate that different views for device B's UI are possible. These views include video captured from both cameras on device A as well as one or more cameras on device B. In the first view 6565 of device B, the UI 6590 of device B provides a PIP display 6568. PIP display 6568 includes an insertion display area 6550 that displays the video captured by one of the cameras of device B (eg, the front camera), as well as a composite display area 6569 that is identical to the composite display 6512 displayed on device A. including. The composite display area 6569 includes a display area 6531 for displaying video captured from the rear camera of the device A, and a display area 6536 for displaying video captured from the front camera of the device A. The composite display 6569 that displays the video from device A occupies most of the PIP display 6568, but the insertion display area 6550 is smaller than the composite display 6569 and overlaps it. Display area 6550 displays a video of a smile, which is assumed to be a smile whose video has been captured by the front camera of device B.

第2ビュー6570のデバイスBのUI6590は、PIP表示6572を提供する。PIP表示6572は、(デバイスBの前面カメラから取り込まれたビデオを表示する)表示域6550と、デバイスAのカメラから取り込まれたビデオを表示する表示域6531及び6536を有する合成表示6573とを含む。合成表示6573は、デバイスAのための第2ビュー6515の合成表示6517と同一であり、PIP表示6572の大半を占める。第1ビュー6565のPIP表示6568と同様に、表示域6550は、合成表示6573よりも小さく、これに重なる。具体的には、両方のビューにおいて、表示域は、デバイスAの背面カメラから取り込まれたビデオを表示する表示域6531の一部分に重なる。   The device B UI 6590 in the second view 6570 provides a PIP display 6572. PIP display 6572 includes a display area 6550 (displaying video captured from the front camera of device B) and a composite display 6573 having display areas 6531 and 6536 displaying video captured from the camera of device A. . The composite display 6573 is the same as the composite display 6517 of the second view 6515 for the device A, and occupies most of the PIP display 6572. Similar to the PIP display 6568 of the first view 6565, the display area 6550 is smaller than the composite display 6573 and overlaps the display. Specifically, in both views, the display area overlaps a portion of the display area 6531 displaying video captured from the rear camera of device A.

第3ビュー6575では、UI6590は、デバイスAのための第3ビュー6520のPIP表示6595と同様であるPIP表示6577を提供する。PIP表示6577も、背景表示域6536に重なる第2挿入表示域として追加の表示域6550を含む。2つの挿入表示域6531及び6550は、背景主要表示域6536の下部に水平にタイル表示される。   In the third view 6575, the UI 6590 provides a PIP view 6577 that is similar to the PIP view 6595 of the third view 6520 for device A. PIP display 6577 also includes an additional display area 6550 as a second insertion display area that overlaps background display area 6536. The two insertion display areas 6531 and 6550 are tiled horizontally below the main background display area 6536.

第4ビュー6580のUI6590は合成表示6582を提供する。合成表示6582は、3つの表示、すなわちPIP表示6583と、表示域6550と、(例えば、デバイスBの背面カメラによって取り込まれたビデオを表示するための)表示域6540とを含む。PIP表示6583は、デバイスAのための第4ビュー6525のPIP表示6598と同一であり、合成表示域6582の大半を占める。表示6540及び6550は、PIP表示域6583よりも小さく、この下に水平にタイル表示される。   The UI 6590 of the fourth view 6580 provides a composite display 6852. The composite display 6582 includes three displays: a PIP display 6585, a display area 6550, and a display area 6540 (eg, for displaying video captured by the rear camera of device B). PIP display 6581 is the same as PIP display 6598 in fourth view 6525 for device A, and occupies most of composite display area 6582. The displays 6540 and 6550 are smaller than the PIP display area 6583 and are tiled horizontally below.

図65は、デバイスBのための4つの取りうるビューを示しているが、多くの他のビューが可能である。デバイスAからのビデオの背景合成表示は、垂直ではなく水平にタイル表示でき、背面カメラ表示域ではなくデバイスAの前面カメラ表示域に挿入が重なることができ、大きい方の表示域は、デバイスAのカメラではなく、デバイスBのカメラ(群)を表示でき、挿入は異なるように位置することなどができる。   FIG. 65 shows four possible views for device B, but many other views are possible. The background composite display of the video from device A can be tiled horizontally rather than vertically, the insertion can overlap the front camera display area of device A instead of the rear camera display area, and the larger display area is device A , The camera (s) of device B can be displayed, and the insertion can be positioned differently.

デバイスAの各ビューから生じる矢印6560の各集合は、デバイスAに示される表示とデバイスBに示される表示の間に相関関係がある必要はないことを示す。例えば、デバイスAが(例えば、デバイスAのユーザによるその構成の選択に従って)ビュー6510の構成でそのビデオを表示している場合であっても、デバイスBは、(例えば、デバイスBのユーザによるその構成の選択に従って)4つの示された構成のいずれか又は図65に示されていない複数の他の構成のいずれかでビデオを表示できる。言い換えれば、デバイスAのための表示構成は、デバイスBの表示構成とは無関係である。一部の実施形態は、あるデバイスから別のデバイスに表示域を伝送せず、単にビデオを(例えば、符号化された形で)伝送し、その対応する表示域にデバイスによって表示される。   Each set of arrows 6560 resulting from each view of device A indicates that there is no need for a correlation between the display shown on device A and the display shown on device B. For example, even if device A is displaying its video in the configuration of view 6510 (eg, according to the selection of that configuration by the user of device A), device B is still displayed (eg, by the user of device B). The video can be displayed in any of the four illustrated configurations (or depending on the configuration choices) or any of a number of other configurations not shown in FIG. In other words, the display configuration for device A is independent of the display configuration for device B. Some embodiments do not transmit the display area from one device to another, but simply transmit the video (eg, in encoded form) and are displayed by the device in its corresponding display area.

2.特殊PIP
一部の実施形態により、デュアルカメラ携帯デバイスのユーザは、テレビ会議中にPIP表示においてビデオの前景を別のビデオに重畳することができる。一部の実施形態では、ビデオの前景は、単一のカメラによって取り込まれた単一のビデオの表示として見えるような仕方で、他のビデオに混合する。図66は、PIP表示において背景ビデオへの挿入ビデオの前景への重畳のこのような一例を示す。
2. Special PIP
According to some embodiments, a user of a dual camera portable device can superimpose a video foreground on another video in a PIP display during a video conference. In some embodiments, the foreground of a video mixes with other videos in such a way that it appears as a representation of a single video captured by a single camera. FIG. 66 shows such an example of superimposition of an insertion video on a background video on a foreground in a PIP display.

図66は、このビデオ重畳動作を、UI6670の7つの動作段階6620、6625、6630、6635、6640、6660及び6665として示す。第1段階6620は、リモートデバイスとのテレビ会議中のPIP表示6682を有するデュアルカメラ携帯デバイス6600のUI6670を示す。第1段階6620に示すように、PIP表示6682は2つのビデオ表示、すなわち背景メイン表示6610と、前景挿入表示6605とを含む。背景メイン表示6610はUI6670の大半を占めるが、前景挿入表示6605は背景メイン表示6610よりも小さく、これに重なる。   FIG. 66 illustrates this video superimposition operation as seven operating stages 6620, 6625, 6630, 6635, 6640, 6660, and 6665 of UI 6670. The first stage 6620 shows a UI 6670 of a dual camera portable device 6600 with a PIP display 6682 during a video conference with a remote device. As shown in the first step 6620, the PIP display 6682 includes two video displays, a background main display 6610 and a foreground insert display 6605. The background main display 6610 occupies most of the UI 6670, but the foreground insertion display 6605 is smaller than the background main display 6610 and overlaps it.

この例では、背景表示域6610は、山のビデオを表示しており、これは、リモートデバイスのカメラのうちの一方によって取り込まれている山であると想定される。前景挿入表示域6605は、帽子を被った人のビデオを表示しており、これは、この例では、ローカルデバイスのカメラのうちの一方によってビデオが取り込まれる人であると想定される。PIP表示6682の下は、選択することによって(例えば、ボタンをシングルタップ又はダブルタップすることによって)ユーザがテレビ会議を終了できる会議終了と標示された選択可能UI項目6685(例えばボタン6685)である。   In this example, the background display area 6610 is displaying a video of the mountain, which is assumed to be a mountain being captured by one of the remote device's cameras. Foreground insert display area 6605 displays a video of the person wearing the hat, which in this example is assumed to be the person whose video is captured by one of the local device's cameras. Below the PIP display 6682 is a selectable UI item 6665 (e.g., a button 6665), labeled as end of conference, which allows the user to end the video conference by selection (e.g., by single or double tapping a button). .

第2段階6625は、選択可能メニュー6675の起動を示す。一部の実施形態では、選択可能UI項目6675のメニューは、PIP表示域6682を選択することによって(例えば、タッチすることによって)起動されうる。このような起動動作の代わりに、又はこれと共に、一部の実施形態により、ユーザは、異なるタッチスクリーン動作を通じてか、又はデバイスの1つ以上の他の物理的入力を使用するなどの、他の動作を通じて選択可能UI項目6675のメニューを起動することもできる。   The second step 6625 shows the activation of the selectable menu 6675. In some embodiments, a menu of selectable UI items 6675 may be activated by selecting (eg, by touching) PIP display area 6682. In lieu of or in conjunction with such a wake-up operation, in some embodiments, the user may have access to other touch-screen operations, such as through different touch screen operations or using one or more other physical inputs of the device. A menu of selectable UI items 6675 can also be activated through operation.

第3段階6630は、ビデオ重畳動作を選択するための選択可能UI項目の起動された集合を有するUI6670を表示する。この例では、いくつかの選択可能UI項目を有するポップアップメニュー6675が、PIP表示6682上に表示される。選択可能UI項目6675のメニューは、「PIPフリップ」選択可能UI項目6640(例えばボタン6640)と、「特殊PIP」選択可能UI項目6645(例えばボタン6645)と、「キャンセル」選択可能UI項目6690(例えばボタン6690)とを含む。この例では、「PIPフリップ」ボタン6640を選択することによって、UI6670は(次のセクションで詳細に説明するように)背景表示6610を挿入表示6605と交換し、「特殊PIP」ボタン6645を選択することによって、UI6670はビデオ重畳動作を開始し、「キャンセル」ボタン6690を選択することによって、PIP表示6682からポップアップメニュー6675を削除する。他の実施形態は、異なる又はこれより多い項目をPIPポップアップメニュー6675に含む。   The third step 6630 displays a UI 6670 with an activated set of selectable UI items for selecting a video overlay operation. In this example, a pop-up menu 6675 with several selectable UI items is displayed on PIP display 6682. The menu of the selectable UI item 6675 includes a “PIP flip” selectable UI item 6640 (eg, button 6640), a “special PIP” selectable UI item 6645 (eg, button 6645), and a “cancel” selectable UI item 6690 ( For example, button 6690). In this example, by selecting the "PIP Flip" button 6640, the UI 6670 replaces the background display 6610 with the insert display 6605 (as described in more detail in the next section) and selects the "Special PIP" button 6645. Accordingly, the UI 6670 starts the video superimposing operation, and deletes the pop-up menu 6675 from the PIP display 6682 by selecting the “cancel” button 6690. Other embodiments include different or more items in the PIP pop-up menu 6675.

第4段階6635は、ユーザが(例えば、自身の指6695でボタン6645をタップすることによって)「特殊PIP」ボタン6645を選択した後のUI6670を示す。この選択は、UI表示6670上でのボタン6645の強調表示によって示される。一部の実施形態は、異なる標識(indication)表示(例えば、選択された項目の境界又は選択された項目のテキストの強調表示)を使用する。   The fourth step 6635 shows the UI 6670 after the user has selected the “special PIP” button 6645 (eg, by tapping the button 6645 with his finger 6695). This selection is indicated by highlighting button 6645 on UI display 6670. Some embodiments use different indications of indication (e.g., highlighting the boundaries of a selected item or text of a selected item).

第5段階6640は、ビデオ重畳動作が始まった後のUI6670を示す。この段階で、UI6670により、ユーザは、重畳されるビデオにおいて、前景としてどのビデオから抽出したいかと、背景としてどのビデオを使用した以下を選定できる。UI6670は、いくつかの選択可能UI項目がPIP表示6682上に表示されたポップアップメニュー6680を通じてオプションを提供する。選択可能UI項目のポップアップメニュー6680は、「挿入を選択」選択可能UI項目6655(例えばボタン6655)と、「メインを選択」選択可能UI項目6650(例えばボタン6650)と、「キャンセル」選択可能UI項目6692(例えばボタン6692)とを含む。   The fifth step 6640 shows the UI 6670 after the video overlay operation has started. At this stage, the UI 6670 allows the user to select which video to extract as the foreground and which video to use as the background in the video to be superimposed. The UI 6670 provides options through a pop-up menu 6680 with several selectable UI items displayed on the PIP display 6682. The selectable UI item pop-up menu 6680 includes a “select insert” selectable UI item 6655 (eg, button 6655), a “select main” selectable UI item 6650 (eg, button 6650), and a “cancel” selectable UI. Item 6692 (for example, button 6692).

「挿入を選択」ボタン6655の選択によって、UI6670は、ローカルデバイスのカメラからの挿入ビデオ6605の前景(すなわち、帽子を被った男性)をリモートデバイスのカメラからの背景メインビデオ6610上に重畳する。一方、「メインを選択」ボタン6650の選択によって、UI6670は、リモートデバイスのカメラからの背景メインビデオ6610の前景(すなわち、山)をローカルデバイスのカメラからの挿入ビデオ6605上に重畳する。一部の実施形態では、これによって、挿入表示域6605に現在あるビデオがUI6670のほとんどを占有し、主要表示域6610に現在あるビデオは、この時点で主要ビデオに重畳されるように、2つのビデオフィードの切り換えが生じる。「キャンセル」ボタン6692の選択は、ビデオ重畳動作を中止し、PIP表示域6682からポップアップメニュー6680を削除する。   Selection of the “Select Insert” button 6655 causes the UI 6670 to superimpose the foreground of the inserted video 6605 from the camera of the local device (ie, the man wearing the hat) on the background main video 6610 from the camera of the remote device. On the other hand, selection of the “select main” button 6650 causes the UI 6670 to superimpose the foreground (ie, mountains) of the background main video 6610 from the camera of the remote device on the insertion video 6605 from the camera of the local device. In some embodiments, this causes the video currently in the inset display area 6605 to occupy most of the UI 6670, and the video currently in the main display area 6610 to be superimposed on the main video at this point. Video feed switching occurs. Selection of the “cancel” button 6692 cancels the video superimposing operation and deletes the pop-up menu 6680 from the PIP display area 6682.

第6段階6660は、ユーザが(例えば、自身の指6695でボタン6655をタップすることによって)「挿入を選択」ボタン6655を選択した後のUI6670を示す。この選択は、UI表示6670上でのボタン6655の強調表示によって示される。一部の実施形態は、異なる標識表示(例えば、選択された項目の境界線又は選択された項目のテキストの強調表示)を使用する。   The sixth step 6660 shows the UI 6670 after the user has selected the “select insert” button 6655 (eg, by tapping the button 6655 with his finger 6695). This selection is indicated by highlighting button 6655 on UI display 6670. Some embodiments use different signage (e.g., the border of the selected item or the text highlighting of the selected item).

第7段階6665は、ビデオ重畳動作が完了した後のUI6670を示す。UI6670に示すように、挿入表示域6605の前景(すなわち、帽子を被った男性)が表示域6605から抽出される。挿入表示6605のウィンドウフレーム及び背景(すなわち、前景以外の他のすべてのもの)も、画面から削除される。最後に、前景(すなわち、帽子を被った男性)は、単一のビデオであるように見える仕方で背景ビデオ6610に混合される。挿入ビデオの背景を削除するために種々の異なる技術が使用されうる。一部の実施形態は、他の画素に対して移動していない画素を識別し、一定であるパターン又は色を探し、前景を含む画像と比較されるベースライン画像を使用し、差分を減算するか、又は異なる技術を使用する。   The seventh step 6665 shows the UI 6670 after the video overlay operation has been completed. As shown in UI 6670, the foreground of insert display area 6605 (ie, a man wearing a hat) is extracted from display area 6605. The window frame and background of insert display 6605 (ie, everything but the foreground) are also deleted from the screen. Finally, the foreground (ie, the man wearing the hat) is mixed with the background video 6610 in a manner that appears to be a single video. A variety of different techniques can be used to remove the background of the inserted video. Some embodiments identify pixels that have not moved relative to other pixels, look for patterns or colors that are constant, use a baseline image that is compared to the image containing the foreground, and subtract the differences Or use a different technique.

図66の例は背景表示域6610に重畳された場合に挿入表示域6605の前景がUI6670の同じ所にとどまることを示すが、これは、重畳がどのように機能できるかの一例にすぎない。一部の実施形態は、前景ビデオをUI6670内の特定の位置(例えば、中央、隅の1つなど)に移動する。セクションIV.A.1及びIV.A.3に示される機能と同様に、一部の実施形態により、ローカルデバイスのユーザは、UI内で重畳された前景ビデオをドラッグしたり、又は重畳された前景ビデオのサイズを変更したりできる。   Although the example of FIG. 66 shows that the foreground of the insertion display area 6605 stays at the same place in the UI 6670 when superimposed on the background display area 6610, this is only one example of how the superimposition can function. Some embodiments move the foreground video to a particular location within the UI 6670 (eg, center, one of the corners, etc.). Section IV. A. 1 and IV. A. Similar to the functionality shown in FIG. 3, some embodiments allow the user of the local device to drag the superimposed foreground video or change the size of the superimposed foreground video in the UI.

ビデオ画像のどの部分(群)が上述のビデオ重畳動作のための「前景」であるかを判定するために異なる技術が使用されうる。一部の実施形態のこのような1つの方法は、あるとすれば、ビデオ画像のどの部分(群)が動的であるかを判定する。ビデオ画像の背景は一般に静的である(すなわち、動きがない)ので、動的な部分は「前景」であると考えられる。このような実施形態では、ビデオ画像は、特定の期間にわたって分析される。特定の期間の特定の画素の値の差が、規定のしきい値(例えば、5%、10%、15%)よりも大きくないならば、特定の画素は静的な画素であると考えられる。ビデオ画像の各画素が分析された後で、ビデオ画像の動的な(すなわち、静的でない)画素は、ビデオ画像の「前景」であると考えられる。   Different techniques may be used to determine which portion (s) of the video image is "foreground" for the video overlay operation described above. One such method of some embodiments determines which part, if any, of the video image is dynamic. Since the background of a video image is generally static (i.e., no motion), the dynamic parts are considered "foreground". In such an embodiment, the video image is analyzed over a specific time period. A particular pixel is considered to be a static pixel if the difference between the values of the particular pixel for a particular period is not greater than a specified threshold (eg, 5%, 10%, 15%). . After each pixel of the video image has been analyzed, the dynamic (ie, non-static) pixels of the video image are considered to be the "foreground" of the video image.

図67は、例えば、テレビ会議マネージャ1604又は画像処理マネージャ1608によって実行されうるビデオ画像の前景を決定するためのこのような技術の一例を示す。具体的には、図67は、帽子を被った人及び木を示すビデオの6つの画像6705〜6730のシーケンスを示す。この例では、人は、まったく静かに立っているわけではなく、話していてもよいことが想定される。上述のように、ビデオ画像の各画素は、画素が動的か静的かを判定するために分析される。例えば、画像6705〜6730の画素6735の値の差分は、それが規定のしきい値よりも大きいかどうかが判定される。この場合、画素6735は人ではなく地面の一部を表すので、画素6735は静的であると考えられる。画像6705〜6730の画素のすべてが分析された後、画像内の人が動的であり、画像の残りの部分が静的であると判定される。したがって、人は、上記で図66に関して説明した動作によって抽出される「前景」である。   FIG. 67 illustrates one example of such a technique for determining a foreground of a video image, which may be performed by, for example, video conferencing manager 1604 or image processing manager 1608. Specifically, FIG. 67 shows a sequence of six images 6705-6730 of a video showing a person wearing a hat and a tree. In this example, it is assumed that the person is not standing still at all, and may speak. As described above, each pixel of the video image is analyzed to determine whether the pixel is dynamic or static. For example, it is determined whether or not the difference between the values of the pixels 6735 of the images 6705 to 6730 is larger than a specified threshold. In this case, pixel 6735 is considered static because pixel 6735 represents a part of the ground, not a person. After all of the pixels in images 6705-6730 have been analyzed, it is determined that the people in the image are dynamic and the rest of the image is static. Therefore, the person is the “foreground” extracted by the operation described above with reference to FIG.

3.ピクチャインピクチャ表示におけるビデオの交換
一部の実施形態により、デュアルカメラ携帯デバイスのユーザは、テレビ会議中にPIP表示内の2つの表示域を交換できる(すなわち、挿入表示域がPIP表示内の背景表示域になり、背景表示域が挿入表示域になる)。図68は、テレビ会議中にPIP表示6682の挿入表示域6605を背景表示域6610と交換する一例を示す。
3. Exchanging Video in Picture-in-Picture Display According to some embodiments, a user of a dual camera portable device can exchange two display areas in a PIP display during a video conference (ie, the inset display area is a background in the PIP display). Display area, and the background display area becomes the insertion display area). FIG. 68 shows an example of exchanging the insertion display area 6605 of the PIP display 6682 with the background display area 6610 during a video conference.

図68は、PIP交換動作を、図66のデバイス6800のUI6670の8つの動作段階として示す。図68の最初の3つの段階は、図66の最初の3つの段階と同一である。これらの段階では、ユーザは、ローカルデバイスのタッチスクリーンを使用した選択を通じて、UI6670内でメニュー6675を展開した。   FIG. 68 illustrates the PIP exchange operation as the eight stages of operation of the UI 6670 of the device 6800 of FIG. The first three stages in FIG. 68 are the same as the first three stages in FIG. At these stages, the user has expanded the menu 6675 in the UI 6670 through selection using the touch screen of the local device.

図68の第4段階6840は、ユーザが(例えば、自身の指6695でボタン6640をタップすることによって)「PIPフリップ」ボタン6640を選択した後のUI6670を示す。この選択は、UI表示6670上でのボタン6640の強調表示によって示される。一部の実施形態は、異なる標識表示(例えば、選択された項目の境界線又は選択された項目のテキストの強調表示)を使用する。   The fourth step 6840 in FIG. 68 shows the UI 6670 after the user has selected the “PIP Flip” button 6640 (eg, by tapping the button 6640 with his finger 6695). This selection is indicated by highlighting button 6640 on UI display 6670. Some embodiments use different signage (e.g., the border of the selected item or the text highlighting of the selected item).

第5段階6845は、PIP交換動作が開始した後のUI6670が示されている。一部の実施形態は、フリップ動作を通じた挿入表示6605と背景表示6610との交換をアニメーション化する。図68は、このようなアニメーションの一例を示す。この例では、アニメーションは、(交換動作が実行される前の)PIP表示6682が片側にあり、(交換動作が実行された後の)新たなPIP表示6684が他の側にあるビューペインのフリップを通じて説明されうる。ビューペインは、PIP表示6682の中央にある垂直軸6686のまわりを180度回転する。この第5段階6845で、ビューペインは、垂直軸6686のまわりを回転し始める。   The fifth stage 6845 shows the UI 6670 after the PIP exchange operation has started. Some embodiments animate the exchange of an insert view 6605 and a background view 6610 through a flip operation. FIG. 68 shows an example of such an animation. In this example, the animation is a flip of the view pane with the PIP display 6682 (before the exchange operation is performed) on one side and the new PIP display 6684 (after the exchange operation is performed) on the other side. Can be explained through The view pane rotates 180 degrees about a vertical axis 6686 in the center of the PIP display 6682. In this fifth step 6845, the view pane begins to rotate around the vertical axis 6686.

第6段階6850では、ビューペインは、約90度回転したように示される。これは、画面の中央に表示された細い線6688(すなわち、ビューペインの端)によって示される。第7段階6855は、完了に近いビューペインの回転を示す。新たなPIP表示6684は、ビューペインの他の側から見えはじめ、デバイスの画面を埋めるように水平に拡張する。PIP表示6684は、交換動作が実行された後の2つの表示域6605及び6610を含む。(ローカルデバイスのカメラからの)帽子を被った男性のビデオを提示する表示域6605はこの時点でPIP表示6684の背景にあり、(リモートデバイスのカメラからの)山のビデオを提示する表示6610はこの時点で表示6605に重なるPIP表示6684の前景にある。第8段階6860は、交換表示アニメーションの完了を示す。   In a sixth step 6850, the view pane is shown as rotated about 90 degrees. This is indicated by the thin line 6688 (ie, the edge of the view pane) displayed in the center of the screen. The seventh step 6855 shows the rotation of the view pane near completion. The new PIP display 6684 begins to be visible from the other side of the view pane and expands horizontally to fill the device screen. PIP display 6684 includes two display areas 6605 and 6610 after the exchange operation has been performed. The display area 6605 presenting the video of the man wearing the hat (from the camera of the local device) is now in the background of the PIP display 6684, and the display 6610 presenting the video of the mountain (from the camera of the remote device) is At this point, it is in the foreground of the PIP display 6684 overlapping the display 6605. The eighth step 6860 indicates the completion of the exchange display animation.

図68に示されるアニメーションがPIP挿入/背景交換動作の多数の取りうるアニメーションのうちの1つにすぎないことが当業者には理解されよう。例えば、異なる実施形態は、水平軸に沿ってビューペインを回転する、2つの表示域を瞬時に交換する、他方の表示域を縮めながら一方の表示域を拡張することなどができる。一部の実施形態は、交換動作に常に使用される1つのアニメーションを提供するが、他の実施形態により、ユーザは、いくつかのアニメーションから選定したり、異なるアニメーションを(例えば、ランダムな選択を通じて)使用したりできる。そのうえ、交換動作によって、ユーザの入力に応答してビデオの拡大縮小及び合成をテレビ会議マネージャ1604に変更させるなどの、デュアルカメラ携帯デバイスの画像処理動作への変更を生じさせることができる。   Those skilled in the art will appreciate that the animation shown in FIG. 68 is only one of many possible animations of the PIP insertion / background exchange operation. For example, different embodiments may rotate the view pane along a horizontal axis, swap two views instantly, expand one view while shrinking the other view, and so on. While some embodiments provide one animation that is always used for the swap operation, other embodiments allow the user to select from several animations or to select a different animation (eg, through random selection). ) Can be used. Moreover, the swap operation may cause a change to the image processing operation of the dual camera portable device, such as causing the video conferencing manager 1604 to change the video scaling and composition in response to user input.

4.コーナー向けスナップ
本発明の一部の実施形態により、デュアルカメラ携帯デバイスのユーザは、合成表示を形成する1つ以上の表示域を移動させることによって、合成表示を変更できる。このような移動の一例は、セクションIV.A.1で上述した。挿入表示のこのような移動は、PIP表示が複数の挿入表示域を含む場合にも可能である。
4. Corner Snaps Some embodiments of the present invention allow a user of a dual camera portable device to change a composite display by moving one or more display areas that form the composite display. An example of such a movement is described in Section IV. A. 1 described above. Such a movement of the insertion display is also possible when the PIP display includes a plurality of insertion display areas.

図69は、テレビ会議中に実行されるこのような例を示す。図69に示されるこの例は、図69がこのような1つの挿入表示域のみではなく、2つの挿入表示域6905及び6910を含むPIP表示6965の挿入表示域6910を移動することを示すことを除いて、図3に示される例と同様である。   FIG. 69 shows such an example performed during a video conference. This example, shown in FIG. 69, shows that FIG. 69 moves not only one such insertion display area, but the insertion display area 6910 of the PIP display 6965, which includes two insertion display areas 6905 and 6910. Except for this, it is the same as the example shown in FIG.

図69では、携帯デバイス6900のUI6960は、別のデバイスのリモートユーザとのテレビ会議中にPIP表示6965を提示する。図69のPIP表示6965は、3つのビデオ表示、すなわち背景メイン表示6915と、2つの前景挿入表示6905及び6910とを含む。この例では、背景メイン表示6915は、歌ってギターを演奏している人のビデオを提示し、これは、リモートデバイスの背面カメラによって取り込まれたビデオであると想定される。前面の挿入表示6905は、ラケットを持っている人のビデオを提示し、これは、この例では、ローカルデバイスの背面カメラによって取り込まれたビデオであると想定される。他方の前景挿入表示域6910は、帽子を被った人のビデオを提示し、これは、この例では、ローカルデバイスの前面カメラによってビデオが取り込まれている帽子を被った人であると想定される。PIP表示6965の下は、項目を選択することによってユーザがテレビ会議を終了できる「会議終了」と標示された選択可能UI項目6970(例えばボタン6970)である。   In FIG. 69, the UI 6960 of the mobile device 6900 presents a PIP display 6965 during a video conference with a remote user of another device. The PIP display 6965 of FIG. 69 includes three video displays, a background main display 6915, and two foreground inserts 6905 and 6910. In this example, the background main display 6915 presents a video of the person singing and playing the guitar, which is assumed to be the video captured by the rear camera of the remote device. The front inset display 6905 presents a video of the person holding the racket, which in this example is assumed to be the video captured by the rear camera of the local device. The other foreground insert display area 6910 presents a video of the person wearing the hat, which in this example is assumed to be the person wearing the hat whose video has been captured by the front camera of the local device. . Below the PIP display 6965 is a selectable UI item 6970 (eg, button 6970) labeled “End Conference” that allows the user to end the video conference by selecting an item.

このPIP表示6965は、リモートデバイス及びローカルデバイスによって取り込まれているビデオの合成ビューを提示する1つの方式にすぎない。一部の実施形態は、他の合成ビューを提供してもよい。例えば、リモートデバイスからのビデオのための大きい方の背景表示6915を有する代わりに、大きい方の背景表示6915はローカルデバイスからのビデオのものであり、小さい方の前景挿入表示6905及び6910は、リモートデバイスからのビデオのものでありうる。また、一部の実施形態により、ローカルビデオ及びリモートビデオは、挿入表示6905及び6910が片側にあり、背景表示6915が別の側にあるように有するか、又は3つすべてが隣り合うように有するUI6960に表示されうる。他の実施形態では、PIP表示6965はまた、大きい方の背景表示6915及び/又は小さい方の前景挿入表示を含んでもよい。一部の実施形態では、PIP表示6965の方式又はデフォルトの表示モードは、ユーザによって指定されてもよい。   This PIP display 6965 is just one way to present a composite view of the video being captured by the remote and local devices. Some embodiments may provide other composite views. For example, instead of having a larger background display 6915 for video from a remote device, the larger background display 6915 is for video from the local device and the smaller foreground inserts 6905 and 6910 are Can be of video from the device. Also, according to some embodiments, the local video and the remote video have the insert displays 6905 and 6910 on one side and the background display 6915 on another side, or have all three adjacent. It can be displayed on the UI 6960. In other embodiments, the PIP display 6965 may also include a larger background display 6915 and / or a smaller foreground insert display. In some embodiments, the manner of PIP display 6965 or the default display mode may be specified by the user.

図69は、デバイス6900のUI6960の2つの挿入表示域のうちの1つの移動を、5つの異なる動作段階6920、6925、6930、6935及び6940として示す。第1段階6920は、デバイス6900のローカルユーザとリモートデバイスのリモートユーザとの間のテレビ会議中のUI6960を示す。   FIG. 69 illustrates the movement of one of the two inset display areas of the UI 6960 of the device 6900 as five different operating phases 6920, 6925, 6930, 6935 and 6940. The first stage 6920 shows a UI 6960 during a video conference between a local user of the device 6900 and a remote user of a remote device.

第2段階6925は、ユーザが挿入表示域6910を選択することによってコーナー向けスナップ動作を開始することを示す。この例では、挿入表示域6910内の任意の位置に指6950を置くことによって選択がなされる。図示のように、この選択は、挿入表示6910の太い境界線6962として表示される。異なる実施形態は、挿入表示6910を強調表示することによって、挿入表示6910を振動させることによってなど、異なる仕方でこのような選択を示してもよい。   The second step 6925 indicates that the user initiates the corner snap operation by selecting the insertion display area 6910. In this example, the selection is made by placing finger 6950 at an arbitrary position in insertion display area 6910. As shown, this selection is displayed as the thick border 6962 of the insert display 6910. Different embodiments may indicate such selections in different ways, such as by highlighting insert display 6910, by vibrating insert display 6910, and so on.

第3段階6930は、ユーザがPIP表示6965内のあるエリアからこのPIP表示6965内の別のエリアにPIP表示6965の挿入表示域6910を移動させ始めた後のUI6960を示す。この例では、挿入表示域6910は、矢印6955によって示されるように、PIP表示6965の右下隅からこの表示の左上隅に移動し始めている。挿入表示6910は、ユーザが挿入表示691を選択した後に自身の指6950をPIP表示6965の右上隅に向かってドラッグすることによって移動される。一部の実施形態は、PIP表示6965において挿入表示6910を移動させるための他の技術を提供する。   The third step 6930 shows the UI 6960 after the user has begun to move the insertion display area 6910 of the PIP display 6965 from one area in the PIP display 6965 to another in the PIP display 6965. In this example, insertion display area 6910 has begun to move from the lower right corner of PIP display 6965 to the upper left corner of the display, as indicated by arrow 6955. Insert display 6910 is moved by the user dragging his or her finger 6950 toward the upper right corner of PIP display 6965 after selecting insert display 691. Some embodiments provide other techniques for moving the insert view 6910 in the PIP view 6965.

第4段階6935は、ユーザが自身の指6950をデバイス6900の画面から離した後の状態にあるUI6960を示す。この状態では、挿入表示域6910は、第3段階におけるユーザの指の移動に基づいて識別されたPIP表示6965の右上隅に向かって依然として移動している。言い換えれば、指6950がPIP表示6965の右上隅に向かっての挿入表示6910の移動を開始した後、UI6960は、指6950が離れた後でさえもこの移動を維持する。この移動を維持するため、一部の実施形態のUI6960は、ユーザが指を離す前に、ユーザのドラッグ動作が特定のしきい値量よりも大きい(例えば、特定の距離又は特定の時間の長さよりも大きい)ことを必要とする。そうでない場合に、これらの実施形態は、挿入表示域をやや移動させるか又はまったく移動させない後でこの挿入表示域をその元の右下隅位置に保つ。   The fourth step 6935 shows the UI 6960 in a state after the user has released his / her finger 6950 from the screen of the device 6900. In this state, the insertion display area 6910 is still moving toward the upper right corner of the PIP display 6965 identified based on the movement of the user's finger in the third stage. In other words, after finger 6950 has begun to move insert display 6910 toward the upper right corner of PIP display 6965, UI 6960 maintains this movement even after finger 6950 separates. To maintain this movement, the UI 6960 of some embodiments may indicate that the user's drag motion is greater than a certain threshold amount (e.g., a certain distance or a certain amount of time before the user releases the finger). Bigger than that). Otherwise, these embodiments keep the inset display area in its original lower right corner position after slightly or no movement of the inset display area.

しかし、一部の実施形態では、挿入表示域がその新たな位置に到達する前にユーザが自身のドラッグ動作を止めた後でさえも挿入表示域が移動できるが、他の実施形態では、挿入表示域がその新たな位置に到達するまで自身のドラッグ動作を維持するようにユーザに要求する。一部の実施形態は、挿入表示域を移動するためのさらに他の技術を提供する。例えば、一部の実施形態では、表示域6910が実際に移動始める前に表示域6910をどこに向けるべきかなどをユーザが指定することが必要とされてもよい。一部の実施形態は、携帯デバイスを異なる角度に傾斜させるだけで表示域がスライド可能であり、コーナー向けスナップされうる。   However, in some embodiments, the insertion display area can move even after the user stops his or her drag operation before the insertion display area reaches its new position, while in other embodiments, the insertion display area can be moved. Ask the user to maintain his or her drag action until the display area reaches its new position. Some embodiments provide yet another technique for moving the insertion display area. For example, in some embodiments, the user may be required to specify where the display area 6910 should be directed before the display area 6910 actually moves. In some embodiments, the viewing area can be slid simply by tilting the mobile device at different angles, and can be snapped for corners.

第5段階6940は、挿入表示域6910がPIP表示域6965の右上隅でその新たな位置に到達した後のUI6960を示す。第5段階における太い境界線6962の除去は、コーナー向けスナップ動作が完了したことを示す。   The fifth step 6940 shows the UI 6960 after the insertion display area 6910 has reached its new position at the upper right corner of the PIP display area 6965. Removal of the thick border line 6962 in the fifth stage indicates that the corner snapping operation has been completed.

上述の第3段階6930、第4段階6935及び第5段階6940に示されている移動を容易にするため、一部の実施形態のUI6960は、ユーザが挿入表示域6910をPIP表示6965の隅に向かって移動させると挿入表示域6910がその隅にすばやくスナップされうるスナップルールを採用する。例えば、ユーザが特定の隅に向かってしきい値量を超えて挿入表示域6910をドラッグした場合に、一部の実施形態のUI6960は、挿入表示6910の動きの方向を識別し、動きがしきい値量を超えたと判定し、その後、挿入表示6910がスナップされうるUI6960内の次のグリッド点をユーザがさらに入力しなくても、挿入表示域6910を自動的に移動する。一部の実施形態では、挿入表示6910をスナップするために提供されるグリッド点のみが、PIP表示6965の4つの隅におけるグリッド点である。他の実施形態は、UI6960において(例えば、PIP表示6965において)、挿入表示6910をスナップできる他のグリッド点を提供する。   To facilitate the movement shown in the third step 6930, the fourth step 6935, and the fifth step 6940 described above, the UI 6960 of some embodiments allows the user to place the insertion display area 6910 at the corner of the PIP display 6965. A snap rule is adopted in which the insertion display area 6910 can be quickly snapped to its corner when moved toward. For example, if the user drags the insertion display area 6910 beyond a threshold amount toward a particular corner, the UI 6960 of some embodiments identifies the direction of movement of the insertion display 6910, and It is determined that the threshold amount has been exceeded, and thereafter, the insertion display area 6910 is automatically moved without further input of the next grid point in the UI 6960 where the insertion display 6910 can be snapped. In some embodiments, the only grid points provided to snap the inset display 6910 are the grid points at the four corners of the PIP display 6965. Other embodiments provide other grid points in the UI 6960 (eg, in the PIP display 6965) where the inset display 6910 can be snapped.

さらに他の実施形態は、挿入表示域6910をPIP表示の任意の点に配置できるように、グリッド点を採用しなくてもよい。さらに他の実施形態は、ユーザがUIのグリッド点機能へのスナップをオン又はオフにできる機能を提供する。さらに、異なる実施形態により、ユーザは、デバイスから取り込まれたビデオに加えて、アイコンなどの種々の項目に対してコーナー向けスナップ動作を実行できる。前述のように、合成表示の表示域(群)の移動によって、ユーザの入力に応答してテレビ会議マネージャ1604に合成表示で表示域を再合成させるなどの、デュアルカメラ携帯デバイスの画像処理動作への変更を引き起こすことができる。   Still other embodiments may not employ grid points so that the insertion display area 6910 can be located at any point in the PIP display. Still other embodiments provide the ability for a user to turn on or off snapping to a grid point feature in the UI. Further, different embodiments allow a user to perform corner-oriented snap operations on various items, such as icons, in addition to video captured from the device. As described above, by moving the display area (group) of the composite display, the image processing operation of the dual camera portable device, such as causing the video conference manager 1604 to re-synthesize the display area in the composite display in response to the user's input. Can cause changes.

5.プッシュアンドスナップ
図69の例は、デュアルカメラ携帯デバイスのユーザが2つの挿入表示域のうちの1つを、PIP表示のある隅から挿入表示によって占有されていない別の隅に移動できるコーナー向けスナップ動作を示す。一部の実施形態により、第1挿入を第2挿入の位置に移動し、また、第2挿入を新たな位置にプッシュするプッシュ機能が可能になる。図70は、テレビ会議中に実行されるこのような一例を示す。
5. Push and Snap The example of FIG. 69 is a corner snap that allows a user of a dual camera portable device to move one of the two inset display areas from one corner of the PIP display to another corner not occupied by the inset display. The operation is shown. Some embodiments allow a push function to move the first insert to the position of the second insert and to push the second insert to a new position. FIG. 70 illustrates one such example performed during a video conference.

図70は、PIP表示のある隅からPIP表示の別の挿入表示によって占有された別の隅への挿入表示の移動を、このUI6960の6つの異なる段階7020、7025、7030、7035、7040及び7045として示す。第1段階7020は、デバイスのローカルユーザとリモートデバイスのリモートユーザとの間のテレビ会議中のUI6960を示す。図70のUI6960は、テレビ会議が始まった後の図69の第1段階に示されているのと同じPIP表示であるPIP表示6965を示す。この例では、ローカルユーザのデバイスによって取り込まれたビデオが挿入表示域6905及び6910に表示され、リモートユーザのデバイスによって取り込まれたビデオが背景表示域6915に表示されている。   FIG. 70 illustrates the movement of the insert display from one corner of the PIP display to another corner occupied by another insert display of the PIP display in six different stages 7020, 7025, 7030, 7035, 7040 and 7045 of this UI 6960. Shown as The first stage 7020 shows a UI 6960 during a video conference between a local user of the device and a remote user of a remote device. 70 shows PIP display 6965, which is the same PIP display shown in the first stage of FIG. 69 after the video conference has begun. In this example, video captured by the local user's device is displayed in the insert display areas 6905 and 6910, and video captured by the remote user's device is displayed in the background display area 6915.

第2段階7025は、ユーザが挿入表示域6905を選択することによってコーナー向けスナップ動作を開始することを示す。この例では、挿入表示域6905内の任意の位置に指7055を置くことによって選択がなされる。図示のように、この選択は、挿入表示6905の太い境界線7065として表示される。異なる実施形態は、表示域6905を強調表示することによって、表示域6905を振動させることによってなど、異なる仕方でこのような選択を示してもよい。   The second step 7025 indicates that the user starts the corner snap operation by selecting the insertion display area 6905. In this example, the selection is made by placing the finger 7055 at an arbitrary position in the insertion display area 6905. As shown, this selection is displayed as a thick border 7065 in the insert display 6905. Different embodiments may indicate such selections in different ways, such as by highlighting display area 6905, by vibrating display area 6905, and so on.

第3段階7030は、矢印7050によって示されるように、(第3段階において挿入表示6905を選択した後にPIP表示6965の右下隅に向かって自身の指7055をドラッグすることによって)ユーザがPIP表示6965の左下隅からPIP表示6965の右下隅に挿入表示域6905を移動し始めた後のUI6960を示す。一部の実施形態は、PIP表示6965において挿入表示域6905を移動させるための他の技術を提供する。   The third step 7030 is for the user to select the insert view 6905 and then drag his finger 7055 toward the lower right corner of the PIP view 6965, as indicated by the arrow 7050 (as shown by the arrow 7050). 19 shows the UI 6960 after the start of moving the insertion display area 6905 from the lower left corner of the PIP display 6965 to the lower right corner of the PIP display 6965. Some embodiments provide other techniques for moving the insertion display area 6905 in the PIP display 6965.

第4段階7035は、挿入表示域6905が挿入表示域6910と接触した後のUI6960を示す。接触すると、挿入表示域6910は、次の最も近い隅に向かって移動する。この例では、挿入表示域6910は、(矢印7075によって示される)PIP表示6965の右上隅の方向に移動し始める。このプッシュ動作の起動は、挿入表示域6910の太い境界線7070として表示される。異なる実施形態は、表示6910を強調表示することによってなどの異なる仕方でこのような起動を示してもよい。   The fourth step 7035 shows the UI 6960 after the insertion display area 6905 has contacted the insertion display area 6910. Upon contact, the insertion display area 6910 moves toward the next closest corner. In this example, the insertion display area 6910 begins to move toward the upper right corner of the PIP display 6965 (indicated by arrow 7075). The activation of this push operation is displayed as a thick border 7070 of the insertion display area 6910. Different embodiments may indicate such activation in different ways, such as by highlighting display 6910.

第5段階7040は、以前は挿入表示域6910によって占有されていた右下隅に挿入表示域6905がスナップした後の状態にあるUIを示す。この状態では、挿入表示域は、PIP表示6965の右上隅に向かってなおも移動している。また、太い境界線7065は、もはや表示されない。第3段階7030からのユーザのドラッグ動作が、挿入表示域6905を右隅にスナップさせるしきい値よりも大きい限り、挿入表示域6910はその隅から除去され、次に近い隅までわざわざスナップする。   The fifth step 7040 shows the UI after the insertion display area 6905 has snapped to the lower right corner previously occupied by the insertion display area 6910. In this state, the insertion display area is still moving toward the upper right corner of the PIP display 6965. Also, the thick border 7065 is no longer displayed. As long as the user's drag action from the third step 7030 is greater than the threshold that causes the insertion display area 6905 to snap to the right corner, the insertion display area 6910 is removed from that corner and bother snapping to the next closest corner.

一部の実施形態は、どの方向に第2挿入表示域6910をプッシュするべきかを判定するためのルールの集合を含む。図70に示されるケースでは、一部の実施形態は、挿入表示域の回転を継続しようとする。すなわち、表示域6905が反時計回り方向に移動されるので、表示域6910も反時計回りに移動される。一部の実施形態は、プッシュされた挿入表示域6910が移動してリスト上の占有されていない最初の位置を選択できる取りうる位置の階層を提供する。例えば、右下の挿入表示域が、左下から来た挿入表示域によってプッシュされる場合に、右上隅は、このようなリストの最初の位置でありうる。しかし、第3挿入表示域が右上隅に既に存在しているならば、一部の実施形態は、リスト上の次のオプション(例えば、左上隅、中央、又は左下隅)に移動するだろう。他の実施形態は、第2挿入表示域で第3挿入表示域をプッシュし、その結果、デバイスは第3挿入表示域のための新たな位置を決定する必要がある。   Some embodiments include a set of rules for determining in which direction to push the second insertion display area 6910. In the case shown in FIG. 70, some embodiments attempt to continue rotating the insertion display area. That is, since display area 6905 is moved counterclockwise, display area 6910 is also moved counterclockwise. Some embodiments provide a hierarchy of possible positions where the pushed insertion display area 6910 can be moved to select the first unoccupied position on the list. For example, if the lower right insert display area is pushed by the lower left insert display area, the upper right corner may be the first position in such a list. However, if a third insert view already exists in the upper right corner, some embodiments will move to the next option on the list (eg, upper left corner, center, or lower left corner). Other embodiments push the third insert display area with the second insert display area, so that the device needs to determine a new position for the third insert display area.

第6段階7045は、挿入表示域6910がPIP表示域6965の右上隅でその新たな位置に到達した後のUI6960を示す。この段階における太い境界線7070の除去は、コーナー向けスナップアンドプッシュ動作が完了したことを示す。図68に関して説明したコーナー向けプッシュ動作と同様に、合成表示の表示域(群)の移動によって、ユーザの入力に応答してテレビ会議マネージャ1604に合成表示における表示域を再合成させるなどの、デュアルカメラ携帯デバイスの画像処理動作への変更を引き起こすことができる。   The sixth step 7045 shows the UI 6960 after the insertion display area 6910 has reached its new position at the upper right corner of the PIP display area 6965. Removal of the thick border 7070 at this stage indicates that the corner snap and push operation has been completed. Similar to the corner push operation described with reference to FIG. 68, moving the display area (group) of the composite display causes the video conference manager 1604 to re-combine the display area in the composite display in response to user input. Changes to the image processing behavior of the camera portable device can be caused.

6.回転
一部の実施形態は、テレビ会議に使用される携帯デバイスのユーザが会議中にデバイスを回転した場合に、テレビ会議中に提示されるPIP表示を回転する。図71は、デバイスが垂直位置から水平位置に回転した場合のデバイス7100のUI表示7175の回転を示す。画面の長辺が垂直である場合にデバイス7100は垂直に保持されているが、画面の長辺が水平である場合にデバイス7100は水平に保持されている。図71に示される例では、UI表示7175は、デバイスの垂直保持に最適化された縦ビューからデバイス7100の水平保持に最適化された横ビューに回転する。この回転機能によって、携帯デバイス7100が垂直又は水平のどちらかに保持されている場合にユーザは直立位置に表示されたUI7175を見ることができる。図71に示されるこの例は、図71が、1つの挿入表示域のみではなく2つの挿入表示域を含むPIP表示を回転することを示すことを除いて、図34に示される例と同様である。
6. Rotation Some embodiments rotate the PIP display presented during a video conference when the user of the mobile device used for the video conference rotates the device during the conference. FIG. 71 shows the rotation of the UI display 7175 of the device 7100 when the device is rotated from a vertical position to a horizontal position. When the long side of the screen is vertical, the device 7100 is held vertically, but when the long side of the screen is horizontal, the device 7100 is held horizontally. In the example illustrated in FIG. 71, the UI display 7175 rotates from a vertical view optimized for vertical holding of the device to a horizontal view optimized for horizontal holding of the device 7100. This rotation feature allows the user to see the UI 7175 displayed in an upright position when the portable device 7100 is held either vertically or horizontally. This example shown in FIG. 71 is similar to the example shown in FIG. 34, except that FIG. 71 shows rotating a PIP display that includes two insertion display areas rather than just one insertion display area. is there.

図71では、携帯デバイス7100のUI7175は、別の携帯デバイスのリモートユーザとのテレビ会議中にPIP表示7180を提示する。図71のPIP表示7180は、3つのビデオ表示、すなわち背景メイン表示7115と、2つの前景挿入表示7110及び7160とを含む。この例では、背景メイン表示7115は、山のビデオを提示し、これは、リモートデバイスの前面カメラ又は背面カメラによって取り込まれたビデオであると想定される。前面挿入表示7110は、部屋にいる笑顔のビデオを提示し、これは、ローカルデバイスの前面カメラ又は背面カメラによって取り込まれたものと想定される。他方の前景挿入表示7160は、歌っているギター奏者のビデオを表示し、これは、ローカルデバイスの他方のカメラによってビデオが取り込まれているギター奏者であると想定される。PIP表示7180の下は、ユーザがテレビ会議を終了するために(例えば、シングルフィンガータップを通じて)選択してもよい会議終了ボタン7155である。このPIP表示は、リモートデバイス及びローカルデバイスによって取り込まれているビデオの合成ビューを提示する1つの方式にすぎない。一部の実施形態は、タイル表示されたビュー又は異なるPIP表示などの、他の合成ビューを提供してもよい。   In FIG. 71, UI 7175 of mobile device 7100 presents PIP display 7180 during a video conference with a remote user of another mobile device. The PIP display 7180 of FIG. 71 includes three video displays, a background main display 7115, and two foreground inserts 7110 and 7160. In this example, the background main display 7115 presents a video of the mountain, which is assumed to be the video captured by the front or rear camera of the remote device. The front insertion display 7110 presents a video of a smile in the room, which is assumed to have been captured by the front or rear camera of the local device. The other foreground insert display 7160 displays the video of the singing guitar player, which is assumed to be the guitar player whose video is being captured by the other camera on the local device. Below the PIP display 7180 is an end conference button 7155 that the user may select (eg, through a single finger tap) to end the video conference. This PIP display is just one way to present a composite view of the video being captured by the remote and local devices. Some embodiments may provide other composite views, such as a tiled view or a different PIP display.

図71は、UI7175の回転を、6つの異なる動作段階7120、7125、7130、7135、7140及び7145として示す。第1段階7120は、デバイスのローカルユーザとリモートデバイスのリモートユーザとの間のテレビ会議中のUI7175を示す。   FIG. 71 shows the rotation of the UI 7175 as six different operating stages 7120, 7125, 7130, 7135, 7140 and 7145. The first stage 7120 shows a UI 7175 during a video conference between a local user of the device and a remote user of a remote device.

第2段階7125は、ユーザがデバイス7100を横に傾斜させ始めた後のUI7175を示す。この例では、デバイス7100は、矢印7185によって示されるように、デバイス7100を垂直に保持されている状態から水平に保持されている状態に傾斜させ始めている。UI7175の外見は変化していない。他の状況では、ユーザが、デバイス7100を水平に保持されている状態から垂直に保持されている状態に傾斜させたいと考えてもよく、これらの状況では、UI表示7175は、水平に最適化されたビューから垂直に最適化されたビューに切り換わる。   The second stage 7125 shows the UI 7175 after the user has begun to tilt the device 7100 sideways. In this example, device 7100 has begun to tilt device 7100 from a vertically held state to a horizontally held state, as indicated by arrow 7185. The appearance of UI 7175 has not changed. In other situations, the user may wish to tilt the device 7100 from a horizontally held state to a vertically held state, and in these situations the UI display 7175 may be optimized horizontally. Switch from the optimized view to the vertically optimized view.

第3段階7130は、デバイス7100が垂直に保持されている状態から水平に保持されている状態に傾斜された後の状態のUI7175を示す。この状態では、UI表示7175の外見はまだ変化しない。一部の実施形態では、デバイス7100がしきい値量を過ぎて傾斜され、この点を超えて、ある期間保たれた後で、回転動作がトリガされる。図71に示される例では、デバイスが水平位置に置かれた後、ある短期間の間隔が経過するまで、しきい値量及び回転の速度によってUI表示7175が回転しないと想定されている。他の実施形態は、回転動作をトリガするしきい値量及び待ち期間が異なる。例えば、一部の実施形態は、デバイス7100の向きとは関係なくUI7175が常に直立位置に表示されるように見えるようにするために、回転動作をトリガするための低いしきい値を有しうる。他の実施形態では、デバイス7100のユーザは、(例えば、メニュー基本設定を通じて)いつ回転動作がトリガされうるかを指定してもよい。また、一部の実施形態は、デバイスがしきい値量を超えて傾斜された後の回転を遅延させなくてもよい。さらに、異なる実施形態を使用することによって、携帯デバイス上のスイッチを切り換えることによって、音声オーディオコマンドを与えることによって、メニューによる選択に応じてなどの、異なる仕方で、回転動作をトリガすることが可能になってもよい。   The third step 7130 shows the UI 7175 after the device 7100 has been tilted from being held vertically to being held horizontally. In this state, the appearance of the UI display 7175 has not changed yet. In some embodiments, the rotation operation is triggered after the device 7100 is tilted past a threshold amount and kept above this point for a period of time. In the example shown in FIG. 71, it is assumed that the UI display 7175 does not rotate due to the threshold amount and the rotation speed until a certain short interval elapses after the device is placed in the horizontal position. Other embodiments have different threshold amounts and waiting periods that trigger the rotation operation. For example, some embodiments may have a low threshold for triggering a rotation operation so that the UI 7175 always appears to be displayed in an upright position regardless of the orientation of the device 7100. . In other embodiments, a user of device 7100 may specify when a rotation operation can be triggered (eg, through menu preferences). Also, some embodiments may not delay rotation after the device is tilted beyond a threshold amount. Further, by using different embodiments, it is possible to trigger a rotation operation in different ways, such as by switching a switch on a mobile device, giving a voice audio command, in response to a menu selection, etc. It may be.

第4段階7135は、回転動作が開始した後のUI7175を示す。一部の実施形態は、回転動作に関するフィードバックをユーザに提供するために、回転表示域をアニメーション化する。図71は、このようなアニメーションの一例を示す。具体的には、図71は、その第4段階7135に、表示域7110、7115及び7160が一緒に回転し始めるところを示している。表示域7110、7115及び7160は、UI表示7175の中央を通る軸7165(すなわち、z軸)のまわりを回転する。表示域7110、7115及び7160は、(例えば、デバイス7100の傾斜を通じた)デバイス7100の回転の反対方向に同じ量だけ回転する。この例では、デバイス7100が(垂直に保持される状態から水平に保持される状態に移ることによって)時計回り方向に90度回転したので、この回転動作によって、表示域7110、7115及び7160が反時計回りに90度回転される。表示域7110、7115及び7160が回転すると、表示域7110、7115及び7160が依然としてUI7175上で全体的に見えるように、表示域7110、7115及び7160はUI表示7175に合うように比例して縮む。一部の実施形態は、このデバイス7100の状態を示すメッセージを(例えば、「回転中」という単語を表示することによって)提供してもよい。   The fourth step 7135 shows the UI 7175 after the rotation operation has started. Some embodiments animate the rotating display area to provide feedback to the user regarding the rotating motion. FIG. 71 shows an example of such an animation. Specifically, FIG. 71 shows, during its fourth stage 7135, that the display areas 7110, 7115 and 7160 begin to rotate together. Display areas 7110, 7115, and 7160 rotate about axis 7165 (ie, the z-axis) passing through the center of UI display 7175. Viewing areas 7110, 7115 and 7160 rotate the same amount in the opposite direction of rotation of device 7100 (eg, through tilting of device 7100). In this example, the device 7100 has been rotated 90 degrees clockwise (by moving from a vertically held state to a horizontally held state), and this rotation causes the display areas 7110, 7115, and 7160 to be inverted. Rotated 90 degrees clockwise. As the display areas 7110, 7115, and 7160 rotate, the display areas 7110, 7115, and 7160 shrink proportionately to fit the UI display 7175 so that the display areas 7110, 7115, and 7160 are still fully visible on the UI 7175. Some embodiments may provide a message indicating the status of the device 7100 (eg, by displaying the word “rotating”).

第5段階7140は、表示域7110、7115及び7160が縦ビューから横ビューに反時計回りに90度回転した後のUI7175が示されている。この段階では、表示域7110、7115及び7160は回転されているが、まだUI7175の幅全体に拡張されていない。矢印7170は、第5段階の終了時に、表示域7110、7115及び7160がUI7175の幅全体に合うように側方に拡張し始めることを示す。拡張は第4段階7135での回転と同時に実行できるので、異なる実施形態はこの段階を含まなくてもよい。   Fifth stage 7140 shows UI 7175 after display areas 7110, 7115, and 7160 have been rotated 90 degrees counterclockwise from portrait view to landscape view. At this stage, the display areas 7110, 7115, and 7160 have been rotated, but have not yet expanded to the full width of the UI 7175. Arrow 7170 indicates that at the end of the fifth phase, display areas 7110, 7115 and 7160 begin to expand sideways to fit the full width of UI 7175. Different embodiments may not include this step, since the expansion can be performed simultaneously with the rotation in the fourth step 7135.

第6段階7145は、表示域7110、7115及び7160がUI7175の表示全体を占有するように拡張された後のUI7175を示す。上述のように、他の実施形態は、この回転を異なるように実施してもよい。一部の実施形態では、しきい値量を超えてデバイスの画面を回転するだけで、デバイス7100の向きに関係なく、回転動作をトリガしてもよい。   The sixth step 7145 shows the UI 7175 after the display areas 7110, 7115 and 7160 have been expanded to occupy the entire display of the UI 7175. As mentioned above, other embodiments may implement this rotation differently. In some embodiments, simply rotating the screen of the device beyond a threshold amount may trigger a rotation operation regardless of the orientation of the device 7100.

また、他の実施形態は、回転動作を示すための異なるアニメーションを提供してもよい。図71に実行される回転動作は、UI表示7175がUI表示7175の中心のまわりを回転することを含む。あるいは、表示域は、これらの個別の表示域の中心軸のまわりを個別に回転してもよい。このような1つの手法が図72に示され、図72はUI7175のPIP表示域7180の回転をアニメーション化する代替方法を示す。図72に示されるPIP表示は、図71に示されるのと同じPIP表示7180である。   Also, other embodiments may provide different animations to show the rotation motion. The rotation operation performed in FIG. 71 includes rotating the UI display 7175 around the center of the UI display 7175. Alternatively, the display areas may be individually rotated about the central axis of these individual display areas. One such technique is illustrated in FIG. 72, which shows an alternative method of animating the rotation of the PIP display area 7180 of the UI 7175. The PIP display shown in FIG. 72 is the same PIP display 7180 as shown in FIG.

図72は、PIP表示7180を、6つの異なる動作段階7120、7125、7130、7220、7225及び7230として示す。UI7175の動作の前半の3つの段階は、図71のUI7175に関して説明した動作の前半の3つの段階と同一である。図71と図72の両方に対する第3段階では、デバイスは、垂直に保持された状態から水平に保持された状態に移っており、UI7175の回転はまだ開始していない。   FIG. 72 shows the PIP display 7180 as six different operating phases 7120, 7125, 7130, 7220, 7225 and 7230. The first three stages of the operation of the UI 7175 are the same as the first three stages of the operation described with reference to the UI 7175 of FIG. In the third phase for both FIGS. 71 and 72, the device has moved from a vertically held state to a horizontally held state, and rotation of UI 7175 has not yet begun.

第4段階7220は、回転をアニメーション化する代替方法を示す。この段階で、回転動作が開始している。具体的には、第4段階7220は、表示域7110、7115及び7160が回転し始めるところを示している。表示域7110、7115及び7160は、表示域のそれぞれの中心を通る軸7250(すなわち、z軸)のまわりをそれぞれ回転する。表示域7110、7115及び7160は、(例えば、デバイス7100の傾斜による)デバイス7100の回転の反対方向に同じ量だけ回転する。この例では、デバイス7100が(垂直に保持される状態から水平に保持される状態に移ることによって)時計回り方向に90度回転したので、この回転動作によって、表示域7110、7115及び7160が反時計回り方向に90度回転する。表示域7110、7115及び7160が回転すると、表示域7110、7115及び7160が依然としてUI7175上で全体的に見えるように、これらはまたUI表示7175に合うように比例して縮む。   The fourth step 7220 shows an alternative way of animating the rotation. At this stage, the rotation operation has started. Specifically, the fourth step 7220 shows where the display areas 7110, 7115 and 7160 begin to rotate. Viewports 7110, 7115 and 7160 each rotate about an axis 7250 (ie, the z-axis) passing through the center of each of the displayportions. Viewing areas 7110, 7115, and 7160 rotate the same amount in the opposite direction of rotation of device 7100 (eg, due to tilt of device 7100). In this example, the device 7100 has been rotated 90 degrees in the clockwise direction (by moving from a state held vertically to a state held horizontally), and this rotation action causes the display areas 7110, 7115, and 7160 to be inverted. Rotate 90 degrees clockwise. As the display areas 7110, 7115 and 7160 rotate, they also shrink proportionally to fit the UI display 7175 so that the display areas 7110, 7115 and 7160 are still fully visible on the UI 7175.

第5段階7225は、表示域7110、7115及び7160が縦ビューから横ビューに反時計回りに90度回転した後のUI7175を示す。この段階で、表示域7110、7115及び7160は回転されているが、まだUI7175の幅全体に拡張されていないか、それらの最終位置に到達してもいない。PIP表示7115内の表示域の最終位置は、第1段階7120に示されるPIP表示内の表示域の位置(例えば、PIP表示7180の左下隅にある挿入表示域7110及び右下隅にある挿入表示域7160)によって決定される。   The fifth step 7225 shows the UI 7175 after the display areas 7110, 7115 and 7160 have been rotated 90 degrees counterclockwise from the vertical view to the horizontal view. At this stage, the display areas 7110, 7115, and 7160 have been rotated, but have not yet expanded to the full width of the UI 7175 or reached their final position. The final position of the display area in the PIP display 7115 is determined by the position of the display area in the PIP display shown in the first step 7120 (eg, the insertion display area 7110 at the lower left corner of the PIP display 7180 and the insertion display area at the lower right corner of the PIP display 7180). 7160).

矢印7170は、第5段階の終了時に、メイン表示域7115がUI7175の幅全体に合うまで、表示域7110、7115及び7160が側方に拡張し始めることを示す。さらに、矢印7255は、挿入表示域7110及び7160が移動してPIP表示7180の最終位置に到達することを示す。言い換えれば、挿入表示域7110は、PIP表示7180の左下隅に向かって下方に移動し、他方の挿入表示域7160は、PIP表示7180の右下隅に移動する。異なる実施形態は、例えば図71に示されるスナップアンドプッシュ動作を使用することによって、このアニメーションを異なるように実行してもよい。第6段階7230は、表示域7110、7115及び7160がUI7175の最終表示全体を占有するように拡張され、それらの最終位置に到達した後のUI110を示す。   Arrow 7170 indicates that at the end of the fifth stage, display areas 7110, 7115 and 7160 begin to expand sideways until main display area 7115 fits the entire width of UI 7175. Further, arrow 7255 indicates that insertion display areas 7110 and 7160 have moved to reach the final position of PIP display 7180. In other words, the insertion display area 7110 moves downward toward the lower left corner of the PIP display 7180, and the other insertion display area 7160 moves to the lower right corner of the PIP display 7180. Different embodiments may perform this animation differently, for example, by using the snap and push operation shown in FIG. The sixth step 7230 shows the UI 110 after the display areas 7110, 7115 and 7160 have been expanded to occupy the entire final display of the UI 7175 and have reached their final position.

上述のように、他の実施形態は、この回転を異なるように実施してもよい。例えば、図36及び図37に同様に示されるように、一部の実施形態は、回転動作がローカルデバイスに対して実行された後のローカルデバイスの向きを反映するように、ローカルデバイスによって取り込まれたビデオを表示する表示域の向きが変化する回転動作を提供し、一部の実施形態は、回転動作がリモートデバイスに対して実行された後のリモートデバイスの向きを反映するように、リモートデバイスによって取り込まれたビデオを表示する表示域の向きが変化する回転動作を提供し、一部の実施形態は、表示域1155が同じ位置にあるままである回転動作を提供し、一部の実施形態は、表示域(例えば、図12の表示域1155のレイアウト)における異なるレイアウト、又はこれらの組み合わせを提供する。   As mentioned above, other embodiments may implement this rotation differently. For example, as also shown in FIGS. 36 and 37, some embodiments are captured by the local device to reflect the orientation of the local device after the rotation operation has been performed on the local device. Providing a rotation operation in which the orientation of the viewing area displaying the video is changed, some embodiments provide a remote device to reflect the orientation of the remote device after the rotation operation is performed on the remote device. Provides a rotating motion in which the orientation of the display area displaying the captured video is changed, and some embodiments provide a rotating motion in which the display area 1155 remains in the same position; Provides a different layout in the display area (eg, the layout of the display area 1155 in FIG. 12), or a combination thereof.

一部の実施形態では、しきい値量を超えてデバイスの画面を回転するだけで、デバイス7100の向きに関係なく、回転動作をトリガしてもよい。また、上述したように、ローカルデバイス及びリモートデバイスは、回転動作がデバイスのうちの一方に対して実行されたことを制御通信チャネルを通じて互いに通知し、他方のデバイスが、この一方のデバイスのビデオに対する対応するいかなる変更も実行できるようにする。また、回転動作のアニメーションによって、テレビ会議マネージャ1604にUI1105において異なる角度で表示域(群)を再合成させ、表示域(群)に表示される画像を拡大縮小させるなどの、カメラの動作又はデュアルカメラデバイスの画像処理動作の変更を引き起こすことができる。   In some embodiments, simply rotating the screen of the device beyond a threshold amount may trigger a rotation operation regardless of the orientation of the device 7100. Also, as described above, the local device and the remote device notify each other via the control communication channel that a rotation operation has been performed on one of the devices, and the other device has Make any corresponding changes possible. The animation of the rotation operation causes the video conference manager 1604 to re-synthesize the display area (group) at a different angle in the UI 1105 and to enlarge or reduce an image displayed in the display area (group), or to perform a dual operation. A change in the image processing behavior of the camera device can be caused.

7.視聴するリモートビューの選択
上述のように、一部の実施形態により、デュアルカメラ携帯デバイスのユーザは、どのカメラをテレビ会議に使用するべきかをテレビ会議の開始前又はテレビ会議の開始時に選択できる。この機能の代わりに、又はこれと共に、一部の実施形態により、デバイスのユーザは、テレビ会議で表示されている2つのビデオであって、リモートデバイスの2つのビデオカメラからものであるか、ユーザのローカルデバイスの2つのビデオカメラからのものである2つのビデオの中から選択可能になる。図73は、2つのリモートビデオからの1つのビデオの会議中の選択を示し、図74は、2つのローカルビデオからの1つのビデオの会議中の選択を示す。
7. Selecting a Remote View to Watch As described above, some embodiments allow a user of a dual camera portable device to select which camera to use for a video conference before or at the start of the video conference. . Instead of or in conjunction with this feature, according to some embodiments, the user of the device is the two videos being displayed in the video conference and from two video cameras on the remote device, From two video cameras on the local device. FIG. 73 shows the in-meeting selection of one video from two remote videos, and FIG. 74 shows the in-meeting selection of one video from two local videos.

図73は、リモートビデオの選択を、ローカルデバイス7300に表示されるUI7375の6つの動作段階7335、7340、7345、7350、7355及び7360として示す。第1段階7335は、2つのカメラを有する携帯デバイスのリモートユーザとのテレビ会議中に提示されている初期PIP表示7390を有するUI7375を示す。   FIG. 73 illustrates remote video selection as six operating steps 7335, 7340, 7345, 7350, 7355 and 7360 of UI 7375 displayed on local device 7300. The first stage 7335 shows the UI 7375 with an initial PIP display 7390 being presented during a video conference with a remote user of a portable device having two cameras.

第1段階7335に示すように、初期PIP表示7390は、3つの表示、すなわち背景メイン表示7315と、2つの前景挿入表示7305及び7310とを含む。背景表示7315はPIP表示7390の大半を占めるが、前景挿入表示7305及び7310はUI7375上の背景表示7315の一部分に重なる。この例では、背景表示7315は、マイクロフォンの前にいる人のビデオを提示し、これは、リモートデバイスの背面カメラによって取り込まれたビデオであると想定される。第1前面挿入表示7305は、男性の顔のビデオを提示し、これは、この例では、ローカルデバイス7300のカメラの一方によって取り込まれたビデオであると想定される。第2前面挿入表示7310は、帽子を被った人のビデオを提示し、これは、この例では、リモートデバイスの前面カメラによって取り込まれたビデオであると想定される。   As shown in the first step 7335, the initial PIP display 7390 includes three displays, a background main display 7315 and two foreground insert displays 7305 and 7310. The background display 7315 occupies most of the PIP display 7390, but the foreground insert displays 7305 and 7310 overlap a part of the background display 7315 on the UI 7375. In this example, the background display 7315 presents a video of the person in front of the microphone, which is assumed to be the video captured by the rear camera of the remote device. First front inset display 7305 presents a video of a male face, which in this example is assumed to be the video captured by one of the cameras of local device 7300. The second front insertion display 7310 presents a video of the person wearing the hat, which in this example is assumed to be the video captured by the front camera of the remote device.

初期PIP表示7390は、ローカルデバイス及びリモートデバイスのカメラによって取り込まれているビデオの合成ビューを提示する1つの方式にすぎない。一部の実施形態は、他の合成ビューを提供してもよい。例えば、背景表示は、ローカルデバイスのカメラの一方からのビデオを提示してもよく、小さい方の前景挿入表示は、リモートデバイスの前面カメラ及び背面カメラからのビデオを提示してもよい。また、一部の場合で、PIP表示は、1つの背景ビデオ表示と、1つの前景ビデオ表示とをのみ含み、これらの両方は、リモートデバイスから来る。一部の実施形態では、PIP表示の方式又はデフォルトの表示モードは、ユーザによって指定されてもよい。   The initial PIP display 7390 is just one way to present a composite view of the video being captured by the cameras of the local and remote devices. Some embodiments may provide other composite views. For example, the background display may present video from one of the local device's cameras, and the smaller foreground insert display may present video from the front and rear cameras of the remote device. Also, in some cases, the PIP display includes only one background video display and one foreground video display, both of which come from remote devices. In some embodiments, the type of PIP display or default display mode may be specified by the user.

第2段階7340は、ビデオ選択動作の開始を示す。この例では、この動作は、PIP表示7390に表示されるべき選択可能UI項目の集合を起動することによって始められる。選択可能UI項目の集合は、表示用のリモートビデオを選択するためのオプションを提示する。一部の実施形態では、選択可能UI項目の集合は、UI7375上でリモートビデオを再生している任意の表示域を選択することによって(例えば、タッチすることによって)起動されうる。他の実施形態では、項目は、UI7375上の任意の位置を選択することによって(例えば、タッチすることによって)起動されうる。このような起動動作の代わりに、又はこれと共に、一部の実施形態により、ユーザは、異なるタッチスクリーン動作を通じて、又はデバイスの1つ以上の他の物理的入力を使用するなどの、他の動作を通じて選択可能UI項目の集合を起動することもできる。   The second step 7340 indicates the start of the video selection operation. In this example, the operation is initiated by activating a set of selectable UI items to be displayed on PIP display 7390. The set of selectable UI items presents options for selecting a remote video for display. In some embodiments, the set of selectable UI items may be activated (eg, by touching) by selecting any display area playing remote video on UI 7375. In other embodiments, the item may be activated by selecting any location on the UI 7375 (eg, by touching). Instead of, or in conjunction with, such a wake-up operation, in some embodiments, the user may perform other operations, such as through different touch screen operations or using one or more other physical inputs of the device. A set of selectable UI items can also be activated through.

第3段階7345は、リモートビデオを選択するための選択可能UI項目7380の起動された集合を有するUI7375を表示する。この例では、ポップアップメニューの形をとる選択可能UI項目7380の集合は、PIP表示域7390に表示され、PIP表示に重なる。(選択可能なボタンとして実装できる)選択可能UI項目7380の集合は、「R1を選択」選択可能UI項目7320(例えばボタン7320)と、「R2を選択」選択可能UI項目7325(例えばボタン7325)と、「両方を選択」選択可能UI項目7330(例えばボタン7330)と、「キャンセル」選択可能UI項目7385(例えばボタン7385)とを含む。この例では、「R1を選択」ボタン7320を選択することによって、UI7375は、(背景表示7315に提示されている)リモートデバイスの背面カメラによって取り込まれたビデオのみを表示する。「R2を選択」ボタン7325を選択することによって、UI7375は、(前景挿入表示7310に提示されている)リモートデバイスの前面カメラによって取り込まれたビデオのみを表示する。「両方を選択」ボタン7330を選択することによって、UI7375は、リモートデバイスの前面カメラ及び背面カメラによって取り込まれた両方のビデオを表示し続ける。「キャンセル」ボタン7385を選択することによって動作がキャンセルされる。一部の実施形態では、ローカルデバイスによって取り込まれたビデオは、このメニューでなされた選択による影響を受けない。   The third step 7345 displays a UI 7375 with an activated set of selectable UI items 7380 for selecting a remote video. In this example, a set of selectable UI items 7380 in the form of a pop-up menu is displayed in PIP display area 7390 and overlaps the PIP display. A set of selectable UI items 7380 (which can be implemented as selectable buttons) includes a “select R1” selectable UI item 7320 (eg, button 7320) and a “select R2” selectable UI item 7325 (eg, button 7325). And a “select both” selectable UI item 7330 (eg, button 7330) and a “cancel” selectable UI item 7385 (eg, button 7385). In this example, selecting the “Select R1” button 7320 causes the UI 7375 to display only the video captured by the remote device's rear camera (presented in the background display 7315). By selecting the "Select R2" button 7325, the UI 7375 displays only the video captured by the remote device's front-facing camera (presented in the foreground insert display 7310). By selecting the "select both" button 7330, the UI 7375 continues to display both videos captured by the front and rear cameras of the remote device. The operation is canceled by selecting a “cancel” button 7385. In some embodiments, videos captured by the local device are not affected by selections made in this menu.

第4段階7350は、ユーザが(例えば、自身の指7365でボタン7320をタップすることによって)「R1を選択」ボタン7320を選択した後のUI7375を示す。この選択は、UI7375上でのボタン7320の強調表示によって示される。一部の実施形態は、異なる標識表示(例えば、選択された項目の境界線又は選択された項目のテキストの強調表示)を使用する。   The fourth step 7350 shows the UI 7375 after the user has selected the “Select R1” button 7320 (eg, by tapping the button 7320 with his finger 7365). This selection is indicated by highlighting button 7320 on UI 7375. Some embodiments use different signage (e.g., the border of the selected item or the text highlighting of the selected item).

第5段階7355は、ユーザが表示のためにR1からビデオを選択した後のUI7375のアニメーションを示す。この例では、UI7375は、望まれない前景挿入表示域7310を、矢印7370によって示されるようなPIP表示7390の右端から外へスライドすることによって除去する。他の実施形態は、挿入をフェードアウト又はフェードオーバーする、挿入を異なる方向に移動する、又は単に挿入を瞬時に除去するなど、望まれない挿入表示域を除去するために異なるアニメーションを利用する。   The fifth step 7355 shows the animation of the UI 7375 after the user has selected a video from R1 for display. In this example, UI 7375 removes unwanted foreground insertion display area 7310 by sliding out of the right edge of PIP display 7390 as indicated by arrow 7370. Other embodiments utilize different animations to remove unwanted insertion display areas, such as fade out or fade over the insertion, move the insertion in a different direction, or simply remove the insertion instantly.

第6段階7360は、ビデオ選択動作が完了した後のテレビ会議中のUI7375を表示する。ビデオ表示域7310はもはやUI7375に表示されていない。この段階で、UI7375は、ビデオ表示域7315を背景メイン表示として含み、ビデオ表示域7305を挿入表示として含む新たなPIP表示7395を提示する。   A sixth step 7360 displays the UI 7375 during the video conference after the video selection operation has been completed. Video display area 7310 is no longer displayed on UI 7375. At this stage, the UI 7375 presents a new PIP display 7395 that includes the video display area 7315 as the background main display and the video display area 7305 as the insertion display.

また、一部の実施形態では、このビデオ選択動作によって、選択されたビデオのみをリモートデバイスに表示させるが、他の実施形態では、この動作は、リモートデバイスに何ら影響を及ぼさない。一部の実施形態では、このビデオ選択動作によって、リモートデバイスは、望まれないビデオをローカルデバイスに伝送するのを止める。実際に、一部の実施形態において、このビデオ選択動作により、リモートデバイスのカメラは、望まれないビデオを取り込むのを止める。一部の実施形態では、リモートデバイスに対するこれらの影響は、リモートデバイスのユーザによって無効にされうる。   Also, in some embodiments, the video selection operation causes only the selected video to be displayed on the remote device, while in other embodiments, the operation has no effect on the remote device. In some embodiments, this video selection operation causes the remote device to stop transmitting unwanted video to the local device. In fact, in some embodiments, this video selection operation causes the camera of the remote device to stop capturing unwanted video. In some embodiments, these effects on the remote device may be overridden by the user of the remote device.

上記の例は、選択されたリモートビューが、背景メイン表示に既に表示されているビューであるケースを示す。一部の実施形態では、ユーザが挿入表示のうちの1つに表示されているリモートビューを選択した場合に、選択されたリモートビューは、背景メイン表示に表示される。一部のこのような実施形態は、このケースでは、図68に表示されているアニメーションのようなアニメーションを使用する。さらに、リモートビデオ(群)を選択することによって、ユーザ入力に応答してテレビ会議マネージャ1604に、合成表示において、選択されたリモートビデオ(群)のみを合成させるなどの、デュアルカメラ携帯デバイスの画像処理動作の変更を引き起こすことができる。   The above example shows a case where the selected remote view is a view already displayed in the background main display. In some embodiments, when the user selects a remote view displayed in one of the inset displays, the selected remote view is displayed in the background main display. Some such embodiments use an animation in this case, such as the animation displayed in FIG. Further, selecting the remote video (s) causes the video conferencing manager 1604 to respond to user input, causing the video conference manager 1604 to composite only the selected remote video (s) in the composite display, such as an image of the dual camera portable device. Changes in processing behavior can be caused.

8.視聴するローカルビューの選択
図74は、ローカルビデオの選択を、ローカルデバイス7400に表示されるUI7475の6つの動作段階7435、7440、7445、7450、7455及び7460として示す。第1段階7435は、少なくとも1つのカメラを有する携帯デバイスのリモートユーザとのテレビ会議中に提示されている初期PIP表示7490を有するUI7475を示す。PIP表示7490は、図73とは異なり、背景表示7415がリモートデバイスのカメラによって取り込まれた男性のビデオを提示し、左の前景挿入表示7410がローカル携帯デバイスの背面カメラによって取り込まれたギターを持つ人のビデオを提示し、右の前景挿入表示7405がローカル携帯デバイス7400の前面カメラによって取り込まれた帽子を被った男性のビデオを提示することを除いて、図73の第1段階と同様である。したがって、1つのリモートビデオのみが表示され、2つのローカルビデオが表示される。
8. Selection of Local View to Watch FIG. 74 shows the selection of local video as the six operating phases 7435, 7440, 7445, 7450, 7455 and 7460 of the UI 7475 displayed on the local device 7400. The first stage 7435 shows a UI 7475 with an initial PIP display 7490 being presented during a video conference with a remote user of a portable device having at least one camera. PIP display 7490 differs from FIG. 73 in that background display 7415 presents a male video captured by the camera of the remote device and left foreground insert display 7410 has the guitar captured by the rear camera of the local portable device. 73 is similar to the first stage of FIG. 73 except that the right foreground insert display 7405 presents a video of a man wearing a hat captured by the front camera of the local mobile device 7400. . Thus, only one remote video is displayed and two local videos are displayed.

第2段階7440は、ビデオ選択動作の開始を示す。この例では、この動作は、表示用のリモートビデオを選択するためにPIP表示7490に表示されるべき選択可能UI項目の集合を起動することによって始められる。一部の実施形態では、選択可能UI項目の集合は、UI表示7475上でローカルビデオを再生している任意の表示域を選択することによって(例えば、タッチすることによって)起動されうる。他の実施形態では、項目は、UI表示7475上の任意の位置を選択することによって(例えば、タッチすることによって)起動されうる。このような起動動作の代わりに、又はこれと共に、一部の実施形態により、ユーザは、異なるタッチスクリーン動作によって、又はデバイスの1つ以上の他の物理的入力を使用するなどの、他の動作を通じて選択可能UI項目の集合を起動することもできる。   The second step 7440 indicates the start of the video selection operation. In this example, the operation begins by activating a set of selectable UI items to be displayed on PIP display 7490 to select a remote video for display. In some embodiments, the set of selectable UI items may be activated (eg, by touching) by selecting any display area playing local video on UI display 7475. In other embodiments, the item may be activated by selecting (eg, by touching) any location on the UI display 7475. Instead of or in conjunction with such a wake-up operation, in some embodiments, the user may be able to perform other operations, such as by different touch screen operations or using one or more other physical inputs of the device. A set of selectable UI items can also be activated through.

第3段階7445は、ローカルビデオを選択するための選択可能UI項目7480の起動された集合を有するUI7475を表示する。この例では、ポップアップメニューの形をとる選択可能UI項目7480の集合は、PIP表示に重なるPIP表示域7490に表示される。選択可能UI項目7480の集合は、「L1を選択」選択可能UI項目7420(例えばボタン7420)と、「L2を選択」選択可能UI項目7425(例えばボタン7425)と、「両方を選択」選択可能UI項目7430(例えばボタン7430)と、動作をキャンセルするための「キャンセル」選択可能UI項目7485(例えばボタン7485)とを含む。この例では、「L1を選択」ボタン7420を選択することによって、UI7475は、(前景挿入表示7410に提示されている)ローカルデバイスの背面カメラによって取り込まれたビデオのみを表示する。「L2を選択」ボタン7425を選択することによって、UI7475は、(前景挿入表示7405に提示されている)ローカルデバイスの前面カメラによって取り込まれたビデオのみを表示する。「両方を選択」ボタン7430を選択することによって、UI7475は、ローカルデバイス上の両方のカメラによって取り込まれた両方のビデオを表示し続け、「キャンセル」ボタン7485を選択することによって、動作がキャンセルされる。一部の実施形態では、リモートデバイスによって取り込まれたビデオは、このメニューを通じてなされた選択による影響を受けない。   The third step 7445 displays a UI 7475 with an activated set of selectable UI items 7480 for selecting a local video. In this example, a set of selectable UI items 7480 in the form of a pop-up menu is displayed in a PIP display area 7490 that overlaps the PIP display. The set of selectable UI items 7480 includes “select L1” selectable UI item 7420 (eg, button 7420), “select L2” selectable UI item 7425 (eg, button 7425), and “select both”. A UI item 7430 (eg, button 7430) and a “cancel” selectable UI item 7485 (eg, button 7485) for canceling the operation are included. In this example, by selecting the "select L1" button 7420, the UI 7475 displays only the video captured by the local device's rear camera (presented in the foreground insert display 7410). By selecting the "select L2" button 7425, the UI 7475 displays only the video captured by the local device's front camera (presented in the foreground insert display 7405). By selecting the "Select Both" button 7430, the UI 7475 will continue to display both videos captured by both cameras on the local device, and the operation will be canceled by selecting the "Cancel" button 7485. You. In some embodiments, videos captured by the remote device are not affected by selections made through this menu.

第4段階7450は、ユーザが(例えば、自身の指7465でボタン7425をタップすることによって)「L2を選択」ボタン7425を選択した後のUI7475を示す。この選択は、UI表示7475上でのボタン7425の強調表示によって示される。一部の実施形態は、異なる標識表示(例えば、選択された項目の境界線又は選択された項目のテキストの強調表示)を使用する。   The fourth step 7450 shows the UI 7475 after the user has selected the “select L2” button 7425 (eg, by tapping the button 7425 with his finger 7465). This selection is indicated by highlighting button 7425 on UI display 7475. Some embodiments use different signage (e.g., the border of the selected item or the text highlighting of the selected item).

第5段階7455は、ユーザが表示のためにL2からビデオを選択した後のUI7475のアニメーションを表示する。この例では、UI7475は、望まれない前景挿入表示7410を、矢印7470によって示されるPIP表示7490の左端から外へスライドすることによって除去する。他の実施形態は、挿入をフェードアウト又はフェードオーバーする、挿入を異なる方向に移動する、又は単に挿入を瞬時に除去するなど、望まれない挿入表示域を除去するために異なるアニメーションを利用する。   A fifth step 7455 displays the UI 7475 animation after the user has selected a video from L2 for display. In this example, UI 7475 removes unwanted foreground insert display 7410 by sliding out of the left edge of PIP display 7490, indicated by arrow 7470. Other embodiments utilize different animations to remove unwanted insertion display areas, such as fade out or fade over the insertion, move the insertion in a different direction, or simply remove the insertion instantly.

第6段階は、ビデオ選択動作が完了した後のテレビ会議中のUI7475を表示する。ビデオ表示域7410は、もはやUI7425上にない。この段階で、UI7475は、リモートビデオ表示7415を背景メイン表示として含み、ローカルビデオ表示7405を挿入表示として含む新たなPIP表示7495を提示する。一部の実施形態では、両方のビデオ取り込みは依然としてリモートデバイスに伝送されているので、このビデオ選択動作は、ローカル表示にのみ影響を及ぼす。他の実施形態は、除去されたカメラからの取り込みを止める。   The sixth step displays the UI 7475 during the video conference after the video selection operation is completed. Video display area 7410 is no longer on UI 7425. At this stage, the UI 7475 presents a new PIP display 7495 including the remote video display 7415 as the background main display and the local video display 7405 as the insert display. In some embodiments, this video selection operation only affects the local display, since both video captures are still being transmitted to the remote device. Other embodiments stop capturing from the removed camera.

上記の例は、選択されたローカルビューが、背景メイン表示に既に表示されているビューであるケースを示す。一部の実施形態では、ユーザが挿入表示のうちの1つに表示されているローカルビューを選択した場合に、選択されたローカルビューは、メイン背景表示に表示される。一部のこのような実施形態は、この場合、図68に表示されているアニメーションのようなアニメーションを使用する。他の実施形態は、背景メイン表示内のローカルビューが除去された場合に、挿入リモートビューを使用する。   The above example shows a case where the selected local view is a view already displayed in the background main display. In some embodiments, if the user selects a local view displayed in one of the inset displays, the selected local view is displayed in the main background display. Some such embodiments use an animation in this case, such as the animation displayed in FIG. Other embodiments use the inserted remote view if the local view in the background main display has been removed.

図73に関して上述したリモートビュー選択動作と同様に、ローカルのビデオ(群)を選択することによって、ユーザの入力に応答してテレビ会議マネージャ1604に合成表示において、選択されたリモートビデオ(群)のみを合成させるなどの、ローカルデュアルカメラ携帯デバイスの画像処理動作への変更を引き起こすことができる。ローカルのビデオ(群)を選択することによって、ローカルデバイスのカメラ(群)の動作に変更を引き起こすこともできる。例えば、一部の実施形態により、選択されていないビデオのカメラは、望まれないビデオをリモートデバイスに伝送するのを止めるが、他の実施形態により、カメラは、望まれないビデオを取り込むのを止める。   Similar to the remote view selection operation described above with respect to FIG. 73, selecting a local video (s) will cause only the selected remote video (s) to be displayed in a composite display to the videoconference manager 1604 in response to user input. Can cause changes to the image processing behavior of the local dual camera portable device, such as compositing. Selecting the local video (s) may also cause a change in the operation of the camera (s) on the local device. For example, according to some embodiments, the camera of the unselected video stops transmitting unwanted video to the remote device, while in other embodiments, the camera stops capturing unwanted video. stop.

9.伝送するべきローカルビューの選択
上記のサブセクションは、ビデオ表示の会議中の変更を示す。一部の実施形態により、デュアルカメラ携帯デバイスのユーザは、どのカメラをテレビ会議に使用するべきかをテレビ会議の開始前に選択することもできる。図75は、テレビ会議に使用するためにユーザのデュアルカメラ携帯デバイスによって取り込まれた2つのビデオからの1つのビデオの会議前の選択を示す。
9. Selecting a Local View to Transmit The above subsection shows changes in the video display during a conference. According to some embodiments, a user of a dual camera mobile device may also select which camera to use for a video conference before the video conference starts. FIG. 75 illustrates a pre-conference selection of one video from two videos captured by a user's dual camera portable device for use in a video conference.

図75は、テレビ会議に使用するためのローカルビデオの選択を、UI7500の8つの動作段階として示す。第1段階7502は、ユーザが携帯デバイスのリモートユーザとのテレビ会議を開始するように要求した後に提示されている初期PIP表示7542を有するデュアルカメラ携帯デバイス7518のUI7500を示す。   FIG. 75 illustrates the selection of local video for use in video conferencing as the eight stages of operation of the UI 7500. First stage 7502 shows a UI 7500 of a dual camera portable device 7518 with an initial PIP display 7542 presented after the user has requested to start a video conference with a remote user of the portable device.

第1段階7502に示すように、初期PIP表示7542は、2つの表示、すなわち背景メイン表示7520と、前景挿入表示7522とを含む。背景メイン表示7520はデバイスの表示画面の大半を占めるが、前景挿入表示7522は背景メイン表示よりも小さく、これに重なる。この例では、背景表示7520はギターを持っている人のビデオを提示し、これは、デバイスの背面カメラによって取り込まれたビデオであると想定される。前景挿入表示7522は帽子を被った人のビデオを提示し、これは、この例では、デバイスの前面カメラによって取り込まれているビデオであると想定される。   As shown in the first step 7502, the initial PIP display 7542 includes two displays: a background main display 7520 and a foreground insert display 7522. The background main display 7520 occupies most of the display screen of the device, while the foreground insertion display 7522 is smaller than and overlaps the background main display. In this example, the background display 7520 presents a video of the person holding the guitar, which is assumed to be the video captured by the rear camera of the device. The foreground insert display 7522 presents a video of the person wearing the hat, which in this example is assumed to be the video being captured by the front camera of the device.

この初期PIP表示7542は、ローカルデバイスのカメラによって取り込まれているビデオの合成ビューを提示する1つの方式にすぎない。一部の実施形態は、他の合成ビューを提供してもよい。例えば、背景表示は、デバイスの前面カメラからのビデオを提示してもよく、小さい方の前景挿入表示は、デバイスの背面カメラからのビデオを提示してもよい。同様に、一部の実施形態により、2つのビデオは、UI7500内の並んだ2つの表示域(例えば、左右の表示ウィンドウ、又は上下の表示ウィンドウ)又は斜めに整列した2つの表示域に表示されうる。一部の実施形態では、PIP表示の方式又はデフォルトの表示モードは、ユーザによって指定されうる。PIP表示の下は、項目を選択することによってユーザがテレビ会議を終了できる「会議終了」と標示された選択可能UI項目7540(例えばボタン7540)である。   This initial PIP display 7542 is just one way to present a composite view of the video being captured by the local device camera. Some embodiments may provide other composite views. For example, the background display may present video from the front camera of the device, and the smaller foreground insert display may present video from the rear camera of the device. Similarly, according to some embodiments, the two videos are displayed in two side-by-side display areas (eg, left and right display windows, or top and bottom display windows) or two diagonally aligned display areas in the UI 7500. sell. In some embodiments, the type of PIP display or default display mode may be specified by the user. Below the PIP display is a selectable UI item 7540 (eg, button 7540) labeled “End Conference” that allows the user to end the video conference by selecting an item.

第1段階7502では、携帯デバイス7518のユーザは、リモートユーザとのテレビ会議を行うように要求し、リモートユーザが応答するのを待っている。この待ち期間は、表示の下部の「プレビュー、応答を待っています...」表記によって説明される。   In a first step 7502, the user of the mobile device 7518 has requested a video conference with the remote user and is waiting for the remote user to respond. This waiting period is described by the notation "Preview, waiting for response ..." at the bottom of the display.

第2段階7504は、ビデオ選択動作の開始を示す。この例では、動作は、PIP表示7542に表示されるべき選択可能UI項目の集合を起動することによって始められる。選択可能UI項目の集合は、テレビ会議のためにリモートデバイスに伝送するローカルビデオを選択するためのオプションを提示する。一部の実施形態では、選択可能UI項目の集合は、リモートユーザが応答するのを待っている間の会議前の時間中にUI表示7500上の任意の位置を選択する(例えば、タッチする)によって起動されうる。このような起動動作の代わりに、又はこれと共に、一部の実施形態により、ユーザは、異なるタッチスクリーン動作を通じて、又はデバイスの1つ以上の他の物理的入力を使用するなどの、他の動作によって選択可能UI項目を起動することもできる。   The second step 7504 indicates the start of the video selection operation. In this example, operation is initiated by activating a set of selectable UI items to be displayed on PIP display 7542. The set of selectable UI items presents options for selecting local video to transmit to a remote device for a video conference. In some embodiments, the set of selectable UI items selects (eg, touches) any location on the UI display 7500 during the pre-conference time while waiting for the remote user to respond. Can be invoked by Instead of, or in conjunction with, such a wake-up operation, in some embodiments, the user may perform other operations, such as through different touch screen operations or using one or more other physical inputs of the device. Can activate a selectable UI item.

第3段階7506は、ユーザがビデオを選択するための選択可能UI項目7526の起動された集合を有するUI7500を示す。この例では、ポップアップメニューの形をとる選択可能UI項目7526の集合は、PIP表示域7542に表示され、PIP表示に重なる。この例では、選択可能UI項目の集合は、「L1の伝送」項目7528(例えばボタン7528)と、「L2の伝送」項目7530(例えばボタン7530)と、「両方の伝送」項目7532(例えばボタン7532)と、「キャンセル」項目7534(例えばボタン7534)とを含む。この例では、「L1の伝送」ボタン7528を選択することによって、UI7500が、デバイスの背面カメラによって取り込まれたビデオのみをテレビ会議中にリモートデバイスに伝送する。「L2の伝送」ボタン7530を選択することによって、UI7500は、デバイスの前面カメラによって取り込まれたビデオのみをテレビ会議中にリモートデバイスに伝送する。「両方の伝送」ボタン7532を選択することによって、UI7500は、デバイスの前面カメラ及び背面カメラによって取り込まれた両方のビデオをテレビ会議のためにリモートユーザに伝送し、「キャンセル」ボタン7534を選択することによって、動作がキャンセルされる。   Third step 7506 shows UI 7500 with an activated set of selectable UI items 7526 for the user to select a video. In this example, a set of selectable UI items 7526 in the form of a pop-up menu is displayed in PIP display area 7542 and overlaps the PIP display. In this example, the set of selectable UI items includes “Transmit L1” item 7528 (eg, button 7528), “Transmit L2” item 7530 (eg, button 7530), and “Transmit Both” item 7532 (eg, button 7532) and a “cancel” item 7534 (eg, button 7534). In this example, selecting the "Transmit L1" button 7528 causes the UI 7500 to transmit only the video captured by the device's rear camera to the remote device during the videoconference. By selecting the “Transmit L2” button 7530, the UI 7500 transmits only the video captured by the front camera of the device to the remote device during the video conference. By selecting the “Transmit Both” button 7532, the UI 7500 transmits both the video captured by the front and rear cameras of the device to the remote user for a video conference and selects the “Cancel” button 7534 This cancels the operation.

第4段階7508は、ユーザが(例えば、自身の指7524でボタン7528をタップすることによって)「L1の伝送」ボタン7528を選択した後のUI7500を示す。この選択は、PIP表示域7542上でのボタン7528の強調表示によって示される。一部の実施形態は、異なる標識表示(例えば、選択された項目の境界線又は選択された項目のテキストの強調表示)を使用する。   The fourth step 7508 shows the UI 7500 after the user has selected the “Transmit L1” button 7528 (eg, by tapping the button 7528 with his finger 7524). This selection is indicated by highlighting button 7528 on PIP display area 7542. Some embodiments use different signage (e.g., the border of the selected item or the text highlighting of the selected item).

第5段階7510は、ユーザがリモートデバイスに伝送するためにデバイスの背面カメラからのビデオを選択した後のUI7500のアニメーションを示す。この例では、UI7500は、望まれない前景挿入表示7522を、矢印7536によって示されるPIP表示7542の右端から外へスライドすることによって除去する。第6段階7512では、挿入表示7522は、PIP表示域7542から完全に除去されている。異なる実施形態は、表示域をフェードアウト又はフェードオーバーする、表示域を異なる方向に移動する、又は単に表示域を瞬時に除去するなど、望まれない表示域を除去するために異なるアニメーションを使用する。   Fifth step 7510 shows the animation of UI 7500 after the user has selected video from the rear camera of the device for transmission to the remote device. In this example, UI 7500 removes unwanted foreground insert display 7522 by sliding out of the right edge of PIP display 7542, indicated by arrow 7536. In a sixth step 7512, the inset display 7522 has been completely removed from the PIP display area 7542. Different embodiments use different animations to remove unwanted display areas, such as fade out or fade over the display area, move the display area in different directions, or simply remove the display area instantaneously.

第7段階7514は、リモートユーザがテレビ会議要求を承諾した後のUI7500のアニメーションを示す。テレビ会議要求の承諾は、表示上での「プレビュー、応答を待っています...」表記の除去によって強調表示される。この段階で、矢印7538によって示されるように、デバイスの背面カメラからのビデオである背景表示域7520のサイズは、PIP表示域7542の左下隅に向けて段階的に減少する。UI7500がリモートユーザのカメラからのビデオを含む表示域7544を表示域7520の後ろに示すことができるように、背景表示7520は縮む。一部の実施形態は、ローカルのカメラを異なる位置に合わせて縮め、表示されている2つのビデオのタイル表示された合成表示を使用するか、又はリモートビューをPIP表示の挿入表示域にする。   The seventh step 7514 shows the animation of the UI 7500 after the remote user has accepted the video conference request. Acceptance of the video conference request is highlighted by the removal of the "Preview, Waiting for Response ..." notation on the display. At this stage, as shown by arrow 7538, the size of the background display area 7520, which is video from the rear camera of the device, gradually decreases toward the lower left corner of the PIP display area 7542. The background display 7520 shrinks so that the UI 7500 can show behind the display area 7520 a display area 7544 containing video from the remote user's camera. Some embodiments shrink the local camera to different locations, use a tiled composite view of the two videos being displayed, or make the remote view an inset view area of the PIP view.

第8段階7516は、ビデオ選択動作が完了した後のUI7500を示す。UI7500は、ローカルデバイスから取り込まれたビデオの挿入表示7520とリモートデバイスから伝送されたビデオの背景表示7544とを含む新たなPIP表示7546を提示する。   The eighth step 7516 shows the UI 7500 after the video selection operation has been completed. The UI 7500 presents a new PIP display 7546 including an inset display 7520 of the video captured from the local device and a background display 7544 of the video transmitted from the remote device.

B.帯域幅及びフレームレート
一部の実施形態では、テレビ会議中のリモート携帯デバイスの表示域のサイズの調整によって、ローカル携帯デバイスが、ローカル携帯デバイスの2つのカメラ(すなわち、前面カメラ及び背面カメラ)によって取り込まれた各ビデオに割り当てられた帯域幅を再割り当てできる。図76は、ローカルデバイスの2つのカメラ間でこのような帯域幅の再割り当てを行う2つの例を示す。
B. Bandwidth and Frame Rate In some embodiments, adjusting the size of the viewing area of the remote mobile device during a video conference causes the local mobile device to be driven by two cameras of the local mobile device (ie, a front camera and a rear camera). The bandwidth allocated to each captured video can be reallocated. FIG. 76 shows two examples of such bandwidth reallocation between two cameras of a local device.

図76の例のそれぞれは、ローカルデバイスの背面カメラセンサ7605と、ローカルデバイスの前面カメラセンサ7610と、ローカルデバイスのテレビ会議モジュール7615と、リモート携帯デバイス7620のUI7635とを含む。背面カメラセンサ7605及び前面カメラセンサ7610は、ローカルデバイスの背面カメラ及び前面カメラそれぞれからビデオを取り込む。取り込まれたビデオはテレビ会議モジュール7615に送信され、テレビ会議モジュール7615はこのビデオを処理して、UI7635に表示するためにリモートデバイスに伝送する。   Each of the examples in FIG. 76 includes a rear camera sensor 7605 of the local device, a front camera sensor 7610 of the local device, a video conference module 7615 of the local device, and a UI 7635 of the remote portable device 7620. The rear camera sensor 7605 and the front camera sensor 7610 capture video from the rear camera and the front camera of the local device, respectively. The captured video is sent to video conferencing module 7615, which processes the video and transmits it to a remote device for display on UI 7635.

図76では、リモートデバイスのUI7635は、合成表示を提示する。合成表示は、ローカルデバイスの前面カメラ及び背面カメラによって取り込まれたビデオを示す。前面カメラからのビデオは、木及び帽子を被った男性を取り込み、背面カメラからのビデオは、山の風景を取り込む。図76に示されるように、2つのビデオは、ビデオを表示するための表示域の構成に基づいて、さらには表示域のサイズにも基づいて、多くの異なる方式でUI7635に表示されうる。各例では、テレビ会議モジュール7615は、最初に、リモートデバイスにおける表示域の相対サイズに従ってビデオのそれぞれに全出力帯域幅を割り当てる。具体的には、UI7635の大きい方の表示域に表示されるビデオは、全帯域幅のより大きな部分を割り当てられ、UI7635の小さい方の表示域に表示されるビデオは、帯域幅のより小さな部分を割り当てられる。一部の実施形態では、ビデオが同じサイズの表示域に表示される場合に、全出力帯域幅は、2つのビデオに均等に割り当てられる。   In FIG. 76, the UI 7635 of the remote device presents the composite display. The composite display shows the video captured by the front and rear cameras of the local device. The video from the front camera captures a man wearing a tree and a hat, and the video from the rear camera captures a mountain landscape. As shown in FIG. 76, the two videos may be displayed on the UI 7635 in many different ways based on the configuration of the display area for displaying the video, and also based on the size of the display area. In each example, video conferencing module 7615 first allocates full output bandwidth to each of the videos according to the relative size of the display area at the remote device. Specifically, the video displayed in the larger display area of UI 7635 is assigned a larger portion of the total bandwidth, and the video displayed in the smaller display area of UI 7635 is assigned a smaller portion of the total bandwidth. Can be assigned. In some embodiments, if the videos are displayed in a display area of the same size, the total output bandwidth is evenly allocated to the two videos.

2つのビデオのそれぞれに割り当てられる帯域幅の量は、各ビデオが処理される方式に影響を及ぼすことがある。例えば、ビデオが、そのビデオに割り当てられたものより高い帯域幅を必要しうる。このような場合、低い帯域幅に対応するために、ビデオのフレームレートを調整するか、又はビデオの画像のサイズを縮小する。ビデオのフレームレートを低減することによって、ビデオが「途切れる」ように見えるが、ビデオの画像のサイズを縮小すると、ビデオが表示されるエリアも低減される。したがって、ビデオが帯域幅のある量を割り当てられた場合に、一部の実施形態は、割り当てられた帯域幅内でビデオが伝送されるようにするために、ビデオのフレームレートを調整する、ビデオの画像のサイズを縮小する、又は両方の組み合わせを実行する。最適な全体的なビデオ品質を得るためにフレームレート及び平均フレームサイズの調整が変化しても、割り当てられた帯域幅内でビデオを伝送できるようにすることが可能であることが当業者には理解されよう。   The amount of bandwidth allocated to each of the two videos may affect the way each video is processed. For example, a video may require higher bandwidth than that allocated to the video. In such cases, the video frame rate is adjusted or the size of the video image is reduced to accommodate the lower bandwidth. Although reducing the frame rate of a video makes the video appear to be “broken,” reducing the size of the video image also reduces the area in which the video is displayed. Thus, if a video is allocated a certain amount of bandwidth, some embodiments adjust the video frame rate to allow the video to be transmitted within the allocated bandwidth. Reduce the size of the image or perform a combination of both. Those skilled in the art will appreciate that it is possible to allow video to be transmitted within the allotted bandwidth, even if the frame rate and average frame size adjustments are changed to obtain optimal overall video quality. Will be understood.

図76の例(1)は、UI7635の2つの動作段階で帯域幅の再割り当てを行う1つのシナリオを示す。第1段階7670におけるリモートデバイス7620のUI7635は、2つの表示を含む合成表示を提示する。2つの表示のうち、一方はUI7635の上部にあり、他方はUI7635の下部にある。この例では、上部表示域7625はローカルデバイスの前面カメラによって取り込まれているビデオを示し、下部表示域7630はローカルデバイスの背面カメラによって取り込まれているビデオを示す。第1段階7670に示すように、上部表示域7625は、下部表示域7630よりも大きい。したがって、ローカルデバイスの前面カメラからのビデオは帯域幅の80%を割り当てられ、ローカルデバイスの背面カメラからのビデオは、帯域幅の20%を割り当てられる。ローカルデバイスの背面カメラからのビデオを、割り当てられた帯域幅内でローカルデバイスからリモートデバイスに伝送できるようにするために、ビデオのフレームレート又は拡大縮小サイズ又はこれらの両方を調整する。   Example (1) of FIG. 76 shows one scenario in which the bandwidth is reallocated in two operation stages of the UI 7635. The UI 7635 of the remote device 7620 in the first step 7670 presents a composite display including two displays. Of the two displays, one is at the top of UI 7635 and the other is at the bottom of UI 7635. In this example, the upper display area 7625 shows the video being captured by the front camera of the local device, and the lower display area 7630 shows the video being captured by the rear camera of the local device. As shown in a first step 7670, the upper display area 7625 is larger than the lower display area 7630. Thus, video from the front camera of the local device is allocated 80% of the bandwidth, and video from the rear camera of the local device is allocated 20% of the bandwidth. Adjust the video frame rate and / or scaling size to allow video from the local device's rear camera to be transmitted from the local device to the remote device within the allocated bandwidth.

第2段階7675は、上部表示域7625と下部表示域7630のサイズがほぼ同じとなるようにリモートデバイスのユーザが下部表示域のサイズを増加させた後のUI7635を示す。その結果、ビデオのそれぞれは、テレビ会議モジュール7615によって全帯域幅の50%を再割り当てされる。   The second step 7675 shows the UI 7635 after the user of the remote device has increased the size of the lower display area so that the size of the upper display area 7625 and the size of the lower display area 7630 are approximately the same. As a result, each of the videos is reallocated by video conferencing module 7615 to 50% of the total bandwidth.

図76の例(2)は、UI7635の2つの動作段階で帯域幅の再割り当てを行うための別のシナリオを示す。例(2)の第1段階7680では、UI7635はPIP表示を提示する。PIP表示は、2つの表示、すなわち背景メイン表示域7650と、前景挿入表示域7655とを含む。背景表示域7650はPIP表示の大半を占めるが、前景挿入表示域7655は背景メイン表示域7650よりも小さく、これに重なる。この例では、背景表示域7650は、デバイスの前面カメラによって取り込まれているビデオを提示する。挿入表示域7655は、デバイスの背面カメラによって取り込まれているビデオを提示する。この段階に示すように、背景表示域7650は挿入表示域7655よりも大きい。したがって、デバイスの前面カメラからのビデオは帯域幅の80%を割り当てられ、デバイスの背面カメラからのビデオは、帯域幅の20%を割り当てられる。ローカルデバイスの背面カメラからのビデオを、割り当てられた帯域幅内でローカルデバイスからリモートデバイスに伝送できるようにするために、ビデオのフレームレート又は拡大縮小サイズ又はこれらの両方を調整する。   Example (2) of FIG. 76 illustrates another scenario for performing bandwidth reallocation in two stages of operation of the UI 7635. In the first stage 7680 of example (2), the UI 7635 presents a PIP display. The PIP display includes two displays, a background main display area 7650 and a foreground insertion display area 7655. The background display area 7650 occupies most of the PIP display, but the foreground insertion display area 7655 is smaller than and overlaps the background main display area 7650. In this example, the background display area 7650 presents the video being captured by the front camera of the device. Insert display area 7655 presents the video being captured by the rear camera of the device. As shown at this stage, the background display area 7650 is larger than the insertion display area 7655. Thus, video from the front camera of the device is allocated 80% of the bandwidth and video from the rear camera of the device is allocated 20% of the bandwidth. Adjust the video frame rate and / or scaling size to allow video from the local device's rear camera to be transmitted from the local device to the remote device within the allocated bandwidth.

第2段階7685は、リモートデバイスのユーザが2つのビデオの表示を入れ換えた後のUI7635を示す。具体的には、背景表示域7660は、この時点で、デバイスの背面カメラによって取り込まれているビデオを提示しており、挿入表示域7665は、この時点で、デバイスの前面カメラによって取り込まれているビデオを提示する。2つのビデオの表示域のサイズが変更されたので、デバイスの背面カメラからのビデオは帯域幅の80%を割り当てられ、デバイスの前面カメラからのビデオは帯域幅の20%を割り当てられる。したがって、ローカルデバイスの前面カメラからのビデオのフレームレート若しくは拡大縮小サイズ又はこれらの両方が低減する。図76で説明する帯域幅の分配は、例にすぎず、テレビ会議中に2つのカメラに帯域幅を割り当てるための他の技術が可能であることは、当業者には理解されよう。   The second step 7865 shows the UI 7635 after the user of the remote device has swapped the display of the two videos. Specifically, background display area 7660 presents the video that is currently being captured by the rear camera of the device, and insert display area 7665 is now being captured by the front camera of the device. Present the video. The video from the rear camera of the device is allocated 80% of the bandwidth and the video from the front camera of the device is allocated 20% of the bandwidth because the viewing area of the two videos has changed. Thus, the frame rate and / or scale size of the video from the front camera of the local device is reduced. Those skilled in the art will appreciate that the bandwidth distribution described in FIG. 76 is merely an example, and that other techniques for allocating bandwidth to two cameras during a video conference are possible.

1.フレームレート制御
上述の会議中のフレームレート制御動作のように、一部の実施形態は、デュアルカメラ携帯デバイスの各カメラによって取り込まれたビデオの画像がテレビ会議において他のデバイスに伝送される速度を個別に調整又は維持することが臨まれる場合がある。これらの実施形態のうちの一部は、上述の同様の技術を提供する。例えば、一部の実施形態は、各カメラのセンサモジュール415のVBIを調整することによって、各カメラのフレームレートを制御する。他の実施形態は、例えば、各カメラのセンサモジュール415及び/又は汎用伝送バッファ3120によって実行されうるフレーム間引き(frame dropping)などのさらなる技術も提供する。
1. Frame Rate ControlSimilar to the frame rate control operation during a conference described above, some embodiments reduce the rate at which images of video captured by each camera of a dual camera portable device are transmitted to other devices in a video conference. Coordination or maintenance may be required on an individual basis. Some of these embodiments provide similar techniques as described above. For example, some embodiments control the frame rate of each camera by adjusting the VBI of the sensor module 415 of each camera. Other embodiments also provide additional techniques such as, for example, frame dropping, which may be performed by the sensor module 415 and / or the general purpose transmission buffer 3120 of each camera.

2.拡大縮小を通じた帯域幅制御
上述のように、デュアルカメラ携帯デバイスと別のデバイスの間のテレビ会議中に、特定の時間量において1つ以上のネットワーク接続を介して伝送できる画像データ量(すなわち、ネットワーク接続帯域幅)は制限されうる。ネットワーク接続のスループットを最大にして維持するために、デュアルカメラ携帯デバイスの異なる実施形態は、特定の時間量においてネットワーク接続を介して伝送される画像データ量を制御する異なる仕方を提供する。一部の実施形態では、スループットは、通信チャネル(例えば、ネットワーク接続)を介したメッセージ配信の平均成功率である。
2. Bandwidth Control Through Scaling As described above, during a videoconference between a dual camera portable device and another device, the amount of image data that can be transmitted over one or more network connections for a particular amount of time (ie, Network connection bandwidth) can be limited. In order to maximize and maintain the throughput of the network connection, different embodiments of the dual camera portable device provide different ways to control the amount of image data transmitted over the network connection in a particular amount of time. In some embodiments, the throughput is an average success rate of message delivery over a communication channel (eg, a network connection).

デュアルカメラ携帯デバイスの両方のカメラによって取り込まれた画像を伝送する場合に、1つのこのような仕方は、ネットワーク接続を介して伝送される画像データ量を制御するためにデュアルカメラ携帯デバイスの一方又は両方のカメラからの画像をサイズ変更する。一部の実施形態は、ネットワーク接続を介して伝送される画像データ量を低減するためにデュアルカメラ携帯デバイスによって取り込まれた画像のサイズを縮小するが、他の実施形態は、ネットワーク接続を介して伝送される画像データ量を増加するために画像のサイズを拡大する。   When transmitting images captured by both cameras of a dual camera portable device, one such approach is to control the amount of image data transmitted over the network connection by using one or the other of the dual camera portable devices. Resize images from both cameras. While some embodiments reduce the size of images captured by a dual camera portable device to reduce the amount of image data transmitted over a network connection, other embodiments reduce the size of images captured over a network connection. The size of the image is increased to increase the amount of image data to be transmitted.

一部の実施形態は、拡大縮小時に画像の高さと幅の比を維持する(すなわち、均一な拡大縮小)。他の実施形態は、拡大縮小された画像の高さと幅の比が元の画像と異なるように画像を拡大縮小する(すなわち、アナモルフィックな拡大縮小)。   Some embodiments maintain the height-to-width ratio of the image when scaling (ie, uniform scaling). Other embodiments scale the image such that the height-to-width ratio of the scaled image is different from the original image (ie, anamorphic scaling).

そのうえ、拡大縮小は、画像処理プロセスの異なる段階において実行されうる。一部の実施形態の拡大縮小は、カメラセンサによって実行されうる。このような実施形態では、カメラセンサは、画像のデータの行又は列(すなわち、画素値)を破棄しうる。このような実施形態のうちの一部では、残りの画像データは、画像の外見を平滑化するために補間される。   Moreover, scaling can be performed at different stages of the image processing process. Scaling in some embodiments may be performed by a camera sensor. In such embodiments, the camera sensor may discard rows or columns (ie, pixel values) of the image data. In some of such embodiments, the remaining image data is interpolated to smooth the appearance of the image.

他の実施形態の拡大縮小は、CIPU400のスケーラモジュール455によって実行される。一部の実施形態では、拡大縮小は、上述のようにテレビ会議マネージャ1604によって実行され、他の実施形態では、スケーラはエンコーダによって実行される。したがって、デュアルカメラ携帯デバイスの異なる実施形態は、拡大縮小を異なるように実行する。   Scaling in other embodiments is performed by the scaler module 455 of the CIPU 400. In some embodiments, scaling is performed by video conference manager 1604, as described above, and in other embodiments, the scaler is performed by an encoder. Thus, different embodiments of a dual camera portable device perform scaling differently.

3.ビットレート制御
一部の実施形態は、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオが符号化されるビットレートを管理するための異なる機構を提供する。一部の実施形態では、デュアルカメラ携帯デバイスは、カメラごとにレートコントローラを含む。一部の実施形態は、固定ビットレート管理スキームを提供する。このスキームでは、レートコントローラのそれぞれは、携帯デバイス上の両方のカメラからのビデオの全ビットレートが一定であるように、固定ビットレートに設定される。他の実施形態は、全ビットレートを低減することが必要な場合にデバイスのカメラからの2つのビデオのうちの一方が常に他方よりも優先される優先順位スキームを提供する。
3. Bit Rate Control Some embodiments provide different mechanisms for managing the bit rate at which video captured by the camera of a dual camera portable device is encoded. In some embodiments, the dual camera portable device includes a rate controller for each camera. Some embodiments provide a constant bit rate management scheme. In this scheme, each of the rate controllers is set to a fixed bit rate such that the overall bit rate of video from both cameras on the mobile device is constant. Other embodiments provide a priority scheme in which one of the two videos from the device's camera is always preferred over the other when it is necessary to reduce the overall bit rate.

一部の実施形態では、アービトレータモジュールは、2つのカメラの2つのレートコントローラを管理する。図77は、このようなアービトレータモジュールの一例を示す。図77に示すように、レートコントローラ7700は、前面カメラに対するビットレートを設定し、レートコントローラ7705は、背面カメラのビットレートを設定する。レートコントローラは、カメラセンサからエンコーダ7715に画像を送信する。アービトレータモジュール7710は、両方のレートコントローラに接続され、利用可能な帯域幅のもとで両方のビデオをリモートデバイスに伝送できることを保証するために、利用可能な帯域幅、2つのビデオのそれぞれのビデオサイズなどの情報に基づいて、レートコントローラ7700及び7705それぞれに対するビットレートの設定を多くの仕方で制御する。さらに、アービトレータ7710は、上述の固定レートスキーム又は優先順位スキームを実施するように構成されうる。   In some embodiments, the arbitrator module manages two rate controllers for two cameras. FIG. 77 shows an example of such an arbitrator module. As shown in FIG. 77, the rate controller 7700 sets the bit rate for the front camera, and the rate controller 7705 sets the bit rate for the rear camera. The rate controller transmits an image from the camera sensor to the encoder 7715. The arbitrator module 7710 is connected to both rate controllers and has the available bandwidth, each of the two videos, to ensure that both videos can be transmitted to the remote device under the available bandwidth. The bit rate setting for each of rate controllers 7700 and 7705 is controlled in a number of ways based on information such as the video size. Further, arbitrator 7710 may be configured to implement the fixed rate or priority scheme described above.

一部の他の実施形態では、2つのカメラのための2つのレートコントローラは互いと通信できる。このスキームのもとで、レートコントローラは、それぞれのビデオの情報を交換し、それに応じてビデオのビットレートを設定できる。レートコントローラレート管理機構のいくつかの例が提供される。しかし、多くの他の異なる機構が可能である。   In some other embodiments, the two rate controllers for the two cameras can communicate with each other. Under this scheme, rate controllers can exchange information for each video and set the video bit rate accordingly. Some examples of rate controller rate management mechanisms are provided. However, many other different mechanisms are possible.

4.ビデオ処理
デュアルカメラ携帯デバイスの一部の実施形態は、デュアルカメラ携帯デバイスの両方のカメラによって取り込まれた画像を異なる状況で異なるように処理する。例えば、デュアルカメラ携帯デバイスの両方のカメラによって取り込まれた画像を含むPIP合成画像を処理する場合に、一部の実施形態は、PIP合成画像に対してTNRプロセス2000を選択的に実行する。これらの実施形態のうちの一部は、PIP合成画像のメイン画像のみに対してTNRプロセス2000を実行するが、これらの実施形態のうち他の実施形態は、PIP合成画像の挿入画像のみに対してTNRプロセス2000を実行する。
4. Video Processing Some embodiments of a dual camera portable device process images captured by both cameras of the dual camera portable device differently in different situations. For example, when processing a PIP composite image that includes images captured by both cameras of a dual camera portable device, some embodiments selectively perform a TNR process 2000 on the PIP composite image. Some of these embodiments perform the TNR process 2000 only on the main image of the PIP composite image, while others of these embodiments perform only on the inserted image of the PIP composite image. To perform the TNR process 2000.

携帯デバイスの両方のカメラによって取り込まれた画像の処理の別の例として、一部の実施形態は、ビデオを表示する表示域のユーザによる調整など(例えば、PIP表示の挿入の引き伸ばし、表示されているビデオにおける関心領域の規定、PIP表示のメイン/挿入の入れ換えなど)のテレビ会議への種々の変更、利用可能な全帯域幅の変更などに基づいて、デュアルカメラ携帯デバイスの両方のカメラによって取り込まれた画像を拡大縮小する。これらの実施形態のうちの一部は、上述の方式で画像を拡大縮小する。すなわち、画像は、例えば、エンコーダ1655、テレビ会議マネージャ1604、スケーラモジュール455及び画像が取り込むのに用いられたカメラセンサ(すなわち、405a又は405b)によって拡大縮小されうる。   As another example of the processing of images captured by both cameras of a mobile device, some embodiments adjust the display area displaying the video, such as by a user (e.g., stretching the insertion of a PIP display, Based on various changes to the video conference, such as defining a region of interest in the video being played, swapping the main / insert of the PIP display, changing the total available bandwidth, etc. The scaled image. Some of these embodiments scale the image in the manner described above. That is, the image can be scaled, for example, by the encoder 1655, the video conference manager 1604, the scaler module 455, and the camera sensor (ie, 405a or 405b) used to capture the image.

5.符号化
上述のように、一部の実施形態は、デュアルカメラ携帯デバイスの両方のカメラからビデオを伝送する。したがって、これらの実施形態は、テレビ会議中にリモートデバイスに伝送するために、両方のカメラによって取り込まれたビデオを符号化しうる。異なる実施形態は、伝送のためにビデオを符号化する異なる仕方を提供する。図78は、マルチプレクサ(MUX)7815、エンコーダモジュール7825、バッファ7830及び結合モジュール7835を使用して、伝送すべきビデオを処理する手法を示す。
5. Encoding As described above, some embodiments transmit video from both cameras of a dual camera portable device. Thus, these embodiments may encode video captured by both cameras for transmission to a remote device during a video conference. Different embodiments provide different ways to encode video for transmission. FIG. 78 illustrates a technique for processing a video to be transmitted using a multiplexer (MUX) 7815, an encoder module 7825, a buffer 7830, and a combining module 7835.

MUX7815は、選択信号に基づいて、1つの入力信号を受け取り、選択された入力信号をエンコーダ7825に出力する。例えば、選択信号が、C1から入力信号を受け取ることをMUX7815に示すならば、MUX7815は、その入力信号を選択し、その信号を出力する。この選択信号は、テレビ会議マネージャ1604からの命令などの多数の仕方で提供されうる。MUX7815を通じて、エンコーダ7825は、MUX7815から受け取った画像を交互にビットストリーム形式に符号化し、符号化された画像をバッファ7830に格納する。結合モジュール7835は、バッファ7830に格納された1つ以上のビットストリームを結合(すなわち、多重化)し、単一のビットストリームを出力する。   The MUX 7815 receives one input signal based on the selection signal, and outputs the selected input signal to the encoder 7825. For example, if the selection signal indicates to MUX 7815 that it will receive an input signal from C1, MUX 7815 selects that input signal and outputs that signal. This selection signal may be provided in a number of ways, such as a command from video conference manager 1604. Through the MUX 7815, the encoder 7825 alternately encodes the image received from the MUX 7815 into a bitstream format, and stores the encoded image in the buffer 7830. Combining module 7835 combines (ie, multiplexes) one or more bitstreams stored in buffer 7830 and outputs a single bitstream.

ここで、この符号化手法の動作について、3つの段階7860、7865及び7870に関して説明する。第1段階7860では、MUX7815は、カメラC1によって取り込まれた画像7805を受け取って、符号化のためにエンコーダ7825に出力するように構成される。エンコーダ7825は、受け取った画像を符号化して、ビットストリーム7850を生成し、その後、ビットストリーム7850はバッファ7830に格納される。第2段階7865は、MUX7815が、カメラC2によって取り込まれた画像7810を受け取って、符号化のためにエンコーダ7825に出力するように構成されることを除いて、第1段階7860と同様である。この場合も、エンコーダは、受け取った画像を符号化して、ビットストリーム7855を生成し、ビットストリーム7855はバッファ7830に格納される。第3段階7870で、結合モジュール7835は、ビットストリーム7850及び7855をバッファ7830から読み出して、リモートデバイスへの伝送のために1つのビットストリームに結合する。   The operation of this encoding technique will now be described with respect to three stages 7860, 7865 and 7870. In a first step 7860, the MUX 7815 is configured to receive the image 7805 captured by the camera C1 and output it to the encoder 7825 for encoding. Encoder 7825 encodes the received image to generate bitstream 7850, which is then stored in buffer 7830. The second stage 7865 is similar to the first stage 7860, except that the MUX 7815 is configured to receive the image 7810 captured by the camera C2 and output it to the encoder 7825 for encoding. Again, the encoder encodes the received image to generate a bitstream 7855, which is stored in buffer 7830. In a third step 7870, the combining module 7835 reads the bitstreams 7850 and 7855 from the buffer 7830 and combines them into one bitstream for transmission to a remote device.

図79は、テレビ会議中にリモートデバイスへの伝送のためにデュアルカメラ携帯デバイスからの2つのビデオを符号化するための別の手法を示す。この手法では、携帯デバイスの第1カメラからのビデオフレーム(すなわち画像)及び携帯デバイスの第2カメラからの別のビデオフレームが、1つのビデオフレームに合成されてから、合成されたビデオフレームが、リモートデバイスに送信されるべきビットストリームに符号化される。図79に示すように、この手法は、合成器7915と、バッファ7920と、エンコーダ7925とを含む。   FIG. 79 shows another approach for encoding two videos from a dual camera portable device for transmission to a remote device during a video conference. In this approach, a video frame (ie, an image) from the first camera of the mobile device and another video frame from the second camera of the mobile device are combined into one video frame, and then the combined video frame is: Encoded into a bit stream to be transmitted to the remote device. As shown in FIG. 79, this method includes a synthesizer 7915, a buffer 7920, and an encoder 7925.

図示のように、合成器7915は、第1カメラからの画像7905と第2カメラからの画像7910を合成して、合成画像7955を形成する。異なる実施形態は、画像7905と画像7910とを異なるように合成する。例えば、一部の実施形態の合成器7915は、図80に示すように隣接する2つの画像を互いに整列することによって、画像を合成できる。合成画像8030及び8035は、この技術を使用する2つの例示的な合成画像を示す。合成画像8030では、第1カメラからの画像7905は、第2カメラからの画像7910の上に整列される。一方、合成画像8035は、画像7910の左に整列された画像7905を示す。   As shown, the combiner 7915 combines the image 7905 from the first camera and the image 7910 from the second camera to form a combined image 7955. Different embodiments combine image 7905 and image 7910 differently. For example, the combiner 7915 of some embodiments can combine images by aligning two adjacent images with each other as shown in FIG. Composite images 8030 and 8035 show two exemplary composite images using this technique. In composite image 8030, image 7905 from the first camera is aligned with image 7910 from the second camera. On the other hand, a composite image 8035 shows an image 7905 aligned to the left of the image 7910.

いくつかの他の実施形態では、合成器7915は、2つの画像7905及び7910をより大きな背景画像の上に重ねることによって、2つの画像7905と画像7910とを合成できる。図80の合成画像8040は、この技術を使用する例示的な合成画像を示す。合成画像8040では、画像7905と画像7910とが斜めに位置合わせされ、空白画像の上に重ねられる(すなわち、画像7905は背景画像の左上隅にあり、画像7910は右下隅にある)。一部の実施形態では、カメラセンサは、異なるサイズであってよく、したがって、異なる画素解像度を有する画像を取り込んでもよい。このような実施形態では、合成器7915は、図80の合成画像8045によって示されるのと同様の方式で、画像7905と画像7910とを合成できる。2つの画像を合成した後、合成器7915は、合成画像をバッファ7920に格納する。エンコーダ7925は、合成画像をバッファ7920から読み出し、合成された画像をビットストリームに符号化して、それをテレビ会議のリモートデバイスに送信する。   In some other embodiments, the compositor 7915 can composite the two images 7905 and 7910 by overlaying the two images 7905 and 7910 on a larger background image. The composite image 8040 in FIG. 80 shows an exemplary composite image using this technique. In composite image 8040, image 7905 and image 7910 are obliquely aligned and overlaid on the blank image (ie, image 7905 is at the upper left corner of the background image and image 7910 is at the lower right corner). In some embodiments, the camera sensors may be different sizes and thus capture images with different pixel resolutions. In such an embodiment, combiner 7915 can combine image 7905 and image 7910 in a manner similar to that illustrated by composite image 8045 in FIG. After combining the two images, the combiner 7915 stores the combined image in the buffer 7920. The encoder 7925 reads the combined image from the buffer 7920, encodes the combined image into a bitstream, and sends it to the remote device of the video conference.

ここで、動作について、図79に示される合成器7915、バッファ7920及びエンコーダ7925に関して説明する。最初に、第1カメラが、画像7905をビデオ内の画像のシーケンスの一部として合成器7915に送信する。同時に、第2カメラが、別の画像7910をビデオ内の画像のシーケンスの一部として合成器7915に送信する。その後、合成器7915は、上述した手段で、画像7905と画像7910とを合成して合成画像7955を形成する。次に、合成器7915は、合成画像7955をバッファ7920に送信する。その後、バッファ7920は、合成画像をエンコーダ7925に送信する前に合成画像を格納する。最後に、エンコーダ7925は、合成画像をビットストリームに符号化し、そのビットストリームをテレビ会議のリモートデバイスに送信する。   Here, the operation will be described with respect to the combiner 7915, the buffer 7920, and the encoder 7925 shown in FIG. First, the first camera sends the image 7905 to the combiner 7915 as part of the sequence of images in the video. At the same time, the second camera sends another image 7910 to the combiner 7915 as part of the sequence of images in the video. Thereafter, the combiner 7915 combines the image 7905 and the image 7910 to form a combined image 7955 by the above-described means. Next, the synthesizer 7915 transmits the synthesized image 7955 to the buffer 7920. Thereafter, the buffer 7920 stores the combined image before transmitting the combined image to the encoder 7925. Finally, encoder 7925 encodes the composite image into a bitstream and sends the bitstream to a remote device of the video conference.

図81は、テレビ会議中にリモートデバイスへの伝送のためにデュアルカメラ携帯デバイスからの2つのビデオを符号化するためのさらに別の手法を示す。この手法では、デバイスからの2つのビデオが合成表示に表示され、合成表示のスクリーンショットが撮影され、リモートデバイスに送信するべきビットストリームに符号化される。図81に示すように、この手法は、エンコーダ8115を含む。一部の実施形態では、エンコーダ8115は、合成画像を符号化し、リモートデバイスに送信する。   FIG. 81 illustrates yet another approach for encoding two videos from a dual camera portable device for transmission to a remote device during a video conference. In this approach, two videos from the device are displayed in a composite display, a screenshot of the composite display is taken, and encoded into a bitstream to be transmitted to the remote device. As shown in FIG. 81, this technique includes an encoder 8115. In some embodiments, encoder 8115 encodes the composite image and sends it to a remote device.

ここで、動作について、図81に示されるエンコーダ8115に関して説明する。最初に、デュアルカメラ携帯デバイスの2つのカメラからのビデオが、デバイスの画面の合成表示に表示される。合成表示は、ビデオを任意の方式で提示できる。例えば、一部の実施形態における合成表示は、図81に示されるPIP表示8105などのPIP表示に2つのビデオを提示できる。他の実施形態では、合成表示は、並んだ2つの表示域又は斜めに整列した2つの表示域に2つのビデオを提示しうる。画像8110などの、PIP表示8105のスクリーンショットが撮影され、エンコーダ8115に送信される。その後、エンコーダは、スクリーンショットのシーケンスをビットストリーム8120に符号化してから、ビットストリーム8120をテレビ会議のリモートデバイスに送信する。2つのビデオを符号化するためのいくつかの異なる手法を上述したが、他の手法も可能である。   Here, the operation will be described with respect to the encoder 8115 shown in FIG. First, video from two cameras of a dual camera portable device is displayed in a composite view of the device screen. The composite display can present the video in any manner. For example, the composite display in some embodiments can present two videos on a PIP display, such as the PIP display 8105 shown in FIG. In other embodiments, the composite display may present the two videos in two display areas side-by-side or two display areas aligned diagonally. A screenshot of the PIP display 8105, such as the image 8110, is taken and transmitted to the encoder 8115. The encoder then encodes the sequence of screenshots into a bitstream 8120, and then transmits the bitstream 8120 to a remote device of the video conference. While several different approaches for encoding two videos have been described above, other approaches are possible.

6.復号
デュアルカメラ携帯デバイスの一部の実施形態は、図78〜図81に関して上述した手法によって符号化されたビットストリームを受け取ってもよい。このような実施形態では、デュアルカメラ携帯デバイスは、ビデオを符号化するために使用された手法を示す情報を(例えば、テレビ会議制御チャネルを通じて)受け取ってもよい。図82は、テレビ会議中にデュアルカメラ携帯デバイスに表示するために通信ネットワークを通じて別のデバイスから受け取った2つのビデオのビットストリームを復号する1つの手法を示す。具体的には、この手法は、上記で図78に関して説明した符号化手法によって符号化されたビットストリームを復号するために使用される。
6. Decoding Some embodiments of a dual camera portable device may receive a bitstream encoded according to the techniques described above with respect to FIGS. In such an embodiment, the dual camera portable device may receive information (eg, via a video conferencing control channel) indicating the technique used to encode the video. FIG. 82 illustrates one technique for decoding a bitstream of two videos received from another device over a communication network for display on a dual camera portable device during a video conference. Specifically, this technique is used to decode a bitstream encoded by the encoding technique described above with respect to FIG.

図82に示すように、この手法は、分離モジュール8235、バッファ8230及び8290並びにデコーダモジュール8225を使用する。分離モジュール8235は、ビットストリームを1つ以上のビットストリームに分解(すなわち、逆多重化)し、それらのビットストリームをバッファ8230に格納する。デコーダ8225は、符号化されたビットストリームを読み出し、それを復号してビデオを生成し、その後このビデオをバッファ8290に格納する。   As shown in FIG. 82, this approach uses a separation module 8235, buffers 8230 and 8290, and a decoder module 8225. Demultiplex module 8235 decomposes (ie, demultiplexes) the bitstream into one or more bitstreams and stores the bitstreams in buffer 8230. Decoder 8225 reads the encoded bitstream, decodes it to generate video, and then stores the video in buffer 8290.

ここで、この手法の動作について、図82に示される分離モジュール8235、バッファ8230及び8290並びにデコーダモジュール8225に関して説明する。最初に、デュアルカメラ携帯デバイスが、テレビ会議において他のデバイスから通信ネットワークを通じて(例えば、ネットワーキングマネージャ1614において)ビットストリーム7845を受け取る。受け取ったビットストリームは、2つのビットストリームの多重化されたビットストリームであるので、分離モジュール8235は、受け取ったビットストリームを2つのビットストリーム8255及び8260に分解する。符号化された各ビットストリームは、デバイスの2つのカメラのうちの一方から取り込まれたビデオデータを表す。その後、分離モジュール8235は、ビットストリーム8255及び8260をバッファ8230に格納する。   Here, the operation of this method will be described with respect to the separation module 8235, the buffers 8230 and 8290, and the decoder module 8225 shown in FIG. Initially, a dual camera portable device receives a bitstream 7845 from another device over a communication network in a video conference (eg, at a networking manager 1614). Since the received bitstream is a multiplexed bitstream of two bitstreams, the separation module 8235 decomposes the received bitstream into two bitstreams 8255 and 8260. Each encoded bitstream represents video data captured from one of the two cameras of the device. Thereafter, the separation module 8235 stores the bit streams 8255 and 8260 in the buffer 8230.

その後、デコーダ8225は、2つのビットストリーム8255及び8260のうちの一方であるビットストリーム8250をバッファ8230から読み出し、デコーダ8225は、ビットストリーム8250を復号し、ビデオ8280を生成して、ビデオ8280をバッファ8290に格納する。デコーダ8225は、ビットストリーム8255及び8260のうちの他方も復号し、生成されたビデオをバッファ8290に格納する。ここで、両方のビデオは、バッファ8290から読み出され、格納されることもできるし、デュアルカメラ携帯デバイスに表示されることもできる。   Thereafter, decoder 8225 reads bitstream 8250, one of the two bitstreams 8255 and 8260, from buffer 8230, and decoder 8225 decodes bitstream 8250, generates video 8280, and buffers video 8280. 8290. Decoder 8225 also decodes the other of bit streams 8255 and 8260, and stores the generated video in buffer 8290. Here, both videos can be read from buffer 8290 and stored, or displayed on a dual camera portable device.

図83は、図79に関して説明した手法によって符号化されたビットストリームを復号する手法を示す。図83に示すように、この手法は、デコーダ8325と、バッファ8320と、分解器8315とを含む。   FIG. 83 illustrates a method of decoding a bitstream encoded by the method described with reference to FIG. 79. As shown in FIG. 83, this technique includes a decoder 8325, a buffer 8320, and a decomposer 8315.

一部の実施形態では、デコーダ8325は、図79に示される手法によって符号化されたビットストリームを受け取り、ビットストリームを1つ以上の合成画像に復号し、その後、この合成画像がバッファ8320に格納される。分解器8315は、各合成画像から2つの画像を抽出する。合成画像から2つの画像を抽出するために、分解器8315は、各画像の合成画像内部での位置を示す情報(例えば、画像を合成及び符号化したテレビ会議においてデバイスからテレビ会議通信制御チャネルを通じて受け取った情報)も受け取る。   In some embodiments, decoder 8325 receives a bitstream encoded according to the technique shown in FIG. 79 and decodes the bitstream into one or more composite images, which are then stored in buffer 8320 Is done. Decomposer 8315 extracts two images from each composite image. In order to extract the two images from the composite image, the decomposer 8315 may include information indicating the location of each image within the composite image (eg, from a device in a video conference where the images were composited and coded, through a video conference communication control channel). Received information).

ここで、この手法の動作について、図83に示されるデコーダ8325、バッファ8320及び分解器8315に関して説明する。最初に、デコーダ8325は、図79に関して説明した手法によって作製されたビットストリームなどのビデオのビットストリームを、テレビ会議の別の携帯デバイスから受け取る。デコーダ8325は、ビットストリームを、合成画像7955を含む1つ以上の合成画像に復号し、その合成画像をバッファ8320に格納する。その後、バッファ8320は、合成画像を分解器8315に送信する前に合成画像を格納する。分解器が合成画像7955をバッファ8320から受け取ると、分解器は、合成画像7955を2つの画像7905及び7910に分解する。これらの画像は、図79の画像7905及び7910と同一である。   Here, the operation of this method will be described with respect to the decoder 8325, the buffer 8320, and the decomposer 8315 shown in FIG. Initially, the decoder 8325 receives a video bitstream, such as the bitstream created by the technique described with respect to FIG. 79, from another mobile device in a video conference. The decoder 8325 decodes the bit stream into one or more composite images including the composite image 7955, and stores the composite image in the buffer 8320. Thereafter, buffer 8320 stores the combined image before transmitting the combined image to decomposer 8315. When the decomposer receives the composite image 7955 from the buffer 8320, it decomposes the composite image 7955 into two images 7905 and 7910. These images are the same as images 7905 and 7910 in FIG.

ビットストリームが、図81で説明したシステムなどのシステムから受け取られた場合に、図83のデコーダ8325などのデコーダは、ビットストリームをスクリーンショットのシーケンスに復号する。スクリーンショットのシーケンスは、さらなる処理を行わずに、デバイスの画面にビデオとして表示される。   When the bitstream is received from a system such as the system described in FIG. 81, a decoder such as decoder 8325 in FIG. 83 decodes the bitstream into a sequence of screenshots. The sequence of screenshots is displayed as a video on the screen of the device without further processing.

VI.複数のソース
上述のように、ビデオは、テレビ会議においてデュアルカメラ携帯デバイスの両方のカメラによって取り込まれ、別のデバイスに伝送されうる。一部の実施形態は、デュアルカメラ携帯デバイスの両方のカメラから取り込まれたビデオを伝送するのではなく、デュアルカメラ携帯デバイスのカメラから取り込まれたビデオと共にデュアルカメラ携帯デバイスに表示される異なるメディアコンテンツ又は任意のコンテンツを伝送してもよい。言い換えれば、これらの実施形態は、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオと共にいくつかのソースからのコンテンツを伝送できる。
VI. Multiple Sources As described above, video may be captured by both cameras of a dual camera portable device in a video conference and transmitted to another device. Some embodiments, instead of transmitting video captured from both cameras of a dual camera mobile device, different media content displayed on the dual camera mobile device along with the video captured from the camera of the dual camera mobile device Alternatively, any content may be transmitted. In other words, these embodiments can transmit content from several sources along with the video captured by the camera of the dual camera portable device.

図84は、一部の実施形態のデュアルカメラ携帯デバイスのテレビ会議及び処理モジュールのための別のソフトウェアアーキテクチャを概念的に示す。図84のテレビ会議及び処理モジュールは、テレビ会議及び処理モジュールがディスプレイドライバ8485と記憶装置8475とを含み、メディア交換モジュール1620がメディアソースモジュール8470と画面取り込みモジュール8480とを含むことを除いて、図16のテレビ会議及び処理モジュール1600と同様である。   FIG. 84 conceptually illustrates another software architecture for the video conferencing and processing module of the dual camera portable device of some embodiments. The video conferencing and processing module of FIG. 84 is the same as the video conferencing and processing module except that the video conferencing and Similar to the 16 videoconferencing and processing modules 1600.

一部の実施形態のメディアソースモジュール8470は、テレビ会議モジュール8402と記憶装置8475との間でメディアコンテンツを経路制御する。メディアコンテンツの例は、ビデオ、画像、文書及び音楽を含む。他の実施形態は、他のタイプのメディアコンテンツを記憶装置8475に格納する。一部の実施形態の記憶装置8475は内部記憶装置(例えば、RAM)であるが、他の実施形態の記憶装置8475は外部記憶装置(例えば、コンパクトフラッシュ(CF)カード、セキュアデジタル(SD)カードなど)である。   The media source module 8470 of some embodiments routes media content between the video conferencing module 8402 and the storage device 8475. Examples of media content include video, images, documents, and music. Other embodiments store other types of media content on the storage device 8475. In some embodiments, the storage device 8475 is an internal storage device (eg, RAM), while in other embodiments the storage device 8475 is an external storage device (eg, a compact flash (CF) card, a secure digital (SD) card. Etc.).

一部の実施形態では、画面取り込みモジュール8480は、ディスプレイドライバ8485を通じてデュアルカメラ携帯デバイスのディスプレイに表示されるコンテンツの画像を経路制御する。一部の実施形態では、ディスプレイドライバ8485は、ディスプレイ上のコンテンツの取り込み及びコンテンツの画像への変換を担当する。異なる実施形態は、ディスプレイに表示される異なるコンテンツを取り込む。例えば、一部の実施形態は、ディスプレイに表示されるすべてのコンテンツを取り込む。他の実施形態は、ディスプレイの特定の表示域(例えば、現在のアクティブなウィンドウの表示域、PIP表示の表示域など)を取り込む。   In some embodiments, the screen capture module 8480 routes the image of the content displayed on the display of the dual camera portable device through the display driver 8485. In some embodiments, the display driver 8485 is responsible for capturing content on the display and converting the content to an image. Different embodiments capture different content displayed on the display. For example, some embodiments capture all content displayed on the display. Other embodiments capture a particular viewport of the display (eg, the viewport of the currently active window, the viewport of the PIP display, etc.).

ここで、テレビ会議及び処理モジュールの一部の例示的な動作について、図84に関して説明する。デュアルカメラ携帯デバイスのカメラから取り込まれたビデオと共にメディアコンテンツを伝送するために、一部の実施形態のテレビ会議モジュール8402は、CIPU1650から画像を読み出すのではなく、テレビ会議マネージャ1604がメディアソースモジュール8470を通じて記憶装置8475からメディアコンテンツを読み出すことを除いて、図16で上述したテレビ会議モジュール1602と同じ動作を実行する。デュアルカメラ携帯デバイスのディスプレイに表示されるコンテンツの画像を伝送するために、テレビ会議マネージャ1604の一部の実施形態は、ディスプレイドライバ8485を通じてデュアルカメラ携帯デバイスのディスプレイに表示されるコンテンツの画像を読み出す。一部の実施形態は、ディスプレイに表示されるメディアコンテンツ又はコンテンツの画像に対して、CIPU1650から読み出された画像に対して実行されるのと同様の処理(例えば、パースペクティブ補正、サイズ変更など)を実行するが、他の実施形態は処理をまったく実行しない。   An example operation of some of the videoconferencing and processing modules will now be described with reference to FIG. To transmit media content along with video captured from the camera of a dual camera portable device, the video conferencing module 8402 of some embodiments does not read the images from the CIPU 1650, but instead uses the video conferencing manager 1604 to control the media source module 8470. The same operations as the video conference module 1602 described above with reference to FIG. To transmit an image of the content displayed on the display of the dual camera mobile device, some embodiments of the video conference manager 1604 retrieves the image of the content displayed on the display of the dual camera mobile device through the display driver 8485. . Some embodiments perform similar processing (e.g., perspective correction, resizing, etc.) on media content or images of content displayed on a display, as performed on images read from CIPU 1650. , But other embodiments do not perform any processing.

上記の説明は、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオと共に種々のソースからのコンテンツを伝送する例のうちいくつかについて記載する。しかし、他の実施形態は、他の異なるタイプのコンテンツを伝送できる。例えば、複数の参加者が関与するテレビ会議では、一部の実施形態は、テレビ会議で、あるデバイスから受信したビデオ及びデュアルカメラ携帯デバイスのカメラによって取り込まれたビデオを別のデバイスに伝送する。したがって、任意の数のソースからの任意の数の異なるタイプのコンテンツが、デュアルカメラ携帯デバイスのカメラによって取り込まれたビデオと共に伝送されうる。   The above description describes some of the examples of transmitting content from various sources along with video captured by the camera of a dual camera portable device. However, other embodiments can transmit other different types of content. For example, in a video conference involving multiple participants, some embodiments transmit video received from one device and video captured by a camera of a dual camera portable device to another device in the video conference. Thus, any number of different types of content from any number of sources can be transmitted along with the video captured by the camera of the dual camera portable device.

VII.複数の参加者によるテレビ会議
テレビ会議に関連する上記のセクションは、2人の参加者によるテレビ会議について説明する。しかし、一部の実施形態の携帯デバイスを用いた複数の参加者(すなわち、3人以上の参加者)によるテレビ会議も可能である。一部の実施形態では、複数の参加者によるテレビ会議の参加者全員が互いに姿を見、声を聞くことができる。他の実施形態は、1人の参加者(例えば、放送者)が他の参加者全員の姿を見、声を聞くことができ、他の参加者全員も放送者の姿を見、声を聞くことができるが、他の参加者が(例えば、放送者によって許可されないかぎり)互いの姿を見、声を聞くことはできない、複数の参加者による放送型テレビ会議を提供する。
VII. Video Conferencing with Multiple Participants The section above relating to video conferencing describes a video conference with two participants. However, a video conference with multiple participants (ie, three or more participants) using the mobile device of some embodiments is also possible. In some embodiments, all participants of a multi-participant video conference can see and hear each other. In another embodiment, one participant (eg, a broadcaster) can see and hear all other participants, and all other participants can see and hear the broadcaster. Provide a multi-participant broadcast video conference that can be heard, but other participants cannot see and hear each other (unless authorized by the broadcaster, for example).

A.複数の参加者によるテレビ会議のユーザインタフェース
複数の参加者によるテレビ会議中に、一部の実施形態は、テレビ会議の参加者を表示し、姿を見る特定の参加者(群)を選択するためのさまざまな異なるUIを提供する。例えば、携帯デバイスの一部の実施形態は、複数の参加者によるテレビ会議の参加者全員を同時に表示するUIを提供し、携帯デバイスのユーザは、姿を見る参加者の1人を(例えば、選択した参加者の画像を引き伸ばすことによって)選択できる。図85は、このようなUIの一例を示す。
A. Multi-participant Video Conference User Interface During a multi-participant video conference, some embodiments display the video conference participants and select a particular participant (s) to see. Provides a variety of different UIs. For example, some embodiments of the mobile device provide a UI that simultaneously displays all participants in a video conference with multiple participants, and the user of the mobile device can display one of the participants (e.g., (By stretching the image of the selected participant). FIG. 85 shows an example of such a UI.

この図は、複数の参加者によるテレビ会議の参加者全員を携帯デバイス8500のUI8530に同時に表示し、姿を見る参加者の1人を選択するための動作のシーケンスを、UI8530の5つの異なる段階8505、8510、8515、8520及び8525として示す。第1段階8505は、他のデバイスの他の3人のユーザ間の、複数の参加者によるテレビ会議が確立された後のUI8530を示す。図示のように、UI8530は、合成表示8535と、表示域1155とを含む。合成表示8535は、複数の参加者によるテレビ会議の参加者のカメラによって取り込まれた画像を表示する4つの表示域8565、8570、8575及び8580を含む。この例では、表示域8565は、携帯デバイス8500のユーザを示す(すなわち、表示域8565は、携帯デバイス8500の前面カメラによって取り込まれた画像を表示する)。表示域1155は、図12のこれまでの上述した表示域1155と同じである。   This figure shows all participants of a video conference with multiple participants simultaneously on the UI 8530 of the mobile device 8500, and shows the sequence of operations for selecting one of the participants to see, in five different stages of the UI 8530. 8505, 8510, 8515, 8520 and 8525. The first stage 8505 shows the UI 8530 after a multi-participant video conference has been established between the other three users of the other device. As illustrated, the UI 8530 includes a composite display 8535 and a display area 1155. Synthetic display 8535 includes four display areas 8565, 8570, 8575, and 8580 that display images captured by the cameras of the participants of the video conference by a plurality of participants. In this example, display area 8565 shows a user of mobile device 8500 (ie, display area 8565 displays images captured by the front camera of mobile device 8500). The display area 1155 is the same as the above-described display area 1155 in FIG.

第2段階8510は、携帯デバイス8500のユーザが合成表示域8530の表示域のうちの1つを選択することによって参加者選択動作を開始することを示す。具体的には、第2段階8510は、ユーザが表示域8570を(例えば、指8550で表示域8570をタップすることによって)選択することを示す。   The second step 8510 shows that the user of the portable device 8500 starts the participant selection operation by selecting one of the display areas of the composite display area 8530. Specifically, a second step 8510 indicates that the user selects display area 8570 (eg, by tapping display area 8570 with finger 8550).

UI8530の第3段階8515は、参加者選択動作が完了した後の合成表示8555を示す。一部の実施形態は、第2段階8510と第3段階8515との間の移行を表示するためにアニメーション(不図示)を提供する。合成表示8555は、第2段階8510で選択された参加者の表示域を示すPIP表示8560(すなわち、表示域8570)を背景表示域として含み、ユーザの表示域8565をPIP表示8560の挿入表示域として含む。この例では、PIP表示8560は、横向きに合うように水平に伸張された選択された表示域8570の画像を示す。一部の実施形態では、画像は伸張されず、選択した表示域の画像はその縦向きを維持する(すなわち、背景表示域の各辺の余分な空白は、図36に示すように、黒いバーで満たされる)。そのうえ、合成表示8555は、2つの選択されていない表示域8575及び8580の縮小画像を示す合成表示8585も含む。   The third stage 8515 of the UI 8530 shows the composite display 8555 after the participant selection operation is completed. Some embodiments provide an animation (not shown) to indicate the transition between the second stage 8510 and the third stage 8515. The composite display 8555 includes, as a background display area, a PIP display 8560 (that is, a display area 8570) indicating the display area of the participant selected in the second step 8510, and a user display area 8565 as an insertion display area of the PIP display 8560. Included as In this example, PIP display 8560 shows an image of selected display area 8570 that has been expanded horizontally to fit horizontally. In some embodiments, the image is not stretched and the image in the selected viewport maintains its portrait orientation (ie, the extra white space on each side of the background viewport, as shown in FIG. Filled with). In addition, the composite display 8555 also includes a composite display 8585 showing reduced images of the two unselected display areas 8575 and 8580.

第4段階8520は、PIP表示8560を選択することによって(例えば、指8550でPIP表示8560をタップすることによって)、携帯デバイス8500のユーザが参加者選択解除動作を始めているところを示す。第5段階8525は、参加者選択解除動作の完了後の合成表示8535を示す。   The fourth step 8520 shows that by selecting the PIP display 8560 (eg, by tapping the PIP display 8560 with the finger 8550), the user of the portable device 8500 has begun a participant deselect operation. The fifth step 8525 shows the composite display 8535 after the completion of the participant deselection operation.

図85は、複数の参加者によるテレビ会議の参加者全員を同時に表示し、参加者選択動作を実行し、参加者選択解除動作を実行するための動作の例示的なシーケンスを示す。動作の他のシーケンスが可能である。例えば、第3段階8515の後、ユーザは、参加者選択解除動作を開始する代わりに、表示域8585内の新たに選択された表示域をPIP表示8560の背景表示域(すなわち、以前に選択された表示域)と入れ換えるために合成表示8585に表示される選択されていない表示域のうちの1つを選択できる。したがって、ユーザは、複数の参加者によるテレビ会議中に、表示域8585内の表示域をPIP表示8560の背景表示域といつでも任意の回数入れ換えることができる。また、複数の参加者によるテレビ会議中にいつでも、ユーザは、参加者選択解除動作を実行して合成表示8535に戻ることができる。さらに、異なる実施形態により、ユーザは、携帯デバイス8500上のスイッチを切り換えることによって、音声コマンドを与えることによってなどの、異なる仕方で、特定の参加者を選択できる。   FIG. 85 illustrates an exemplary sequence of operations for simultaneously displaying all participants of a video conference with multiple participants, performing a participant selection operation, and performing a participant deselection operation. Other sequences of operation are possible. For example, after the third step 8515, instead of initiating a participant deselection operation, the user may replace the newly selected display area in the display area 8585 with the background display area of the PIP display 8560 (i. One of the unselected display areas displayed on the composite display 8585 can be selected in order to replace the selected display area. Therefore, the user can replace the display area in the display area 8585 with the background display area of the PIP display 8560 any number of times at any time during a video conference with a plurality of participants. Also, at any time during a video conference with multiple participants, the user may perform a participant deselect operation to return to composite display 8535. Further, different embodiments allow a user to select a particular participant in different ways, such as by flipping a switch on the mobile device 8500, giving a voice command, and the like.

一部の実施形態は、例えば、音声検出に基づいて参加者を自動的に選択するための技術を提供する。このような実施形態では、参加者の1人が話す場合に、その参加者の表示域がPIP表示8560の背景表示域として自動的に選択される。異なる参加者が話す場合に、その参加者の表示域がPIP表示8560の背景表示域として自動的に選択される。一部の実施形態では、複数の参加者によるテレビ会議の参加者のうちだれも話していない場合に、ディスプレイは、規定の量の沈黙(例えば、3秒)後に合成表示8535を表示する。一部の実施形態では、携帯デバイス8500のユーザが話す場合に、携帯デバイス8500のUI8530で何も起こらない。   Some embodiments provide techniques for automatically selecting participants based on, for example, audio detection. In such an embodiment, when one of the participants speaks, the display area of that participant is automatically selected as the background display area of PIP display 8560. When a different participant speaks, that participant's display area is automatically selected as the background display area of PIP display 8560. In some embodiments, if none of the participants in the multi-participant video conference are speaking, the display will display the composite display 8535 after a defined amount of silence (eg, 3 seconds). In some embodiments, nothing happens on the UI 8530 of the mobile device 8500 when the user of the mobile device 8500 speaks.

図86は、複数の参加者によるテレビ会議の参加者全員を同時に表示し、参加者のうちの見るべき1人を選択するための動作の別の例示的なシーケンスを示す。図86は、この動作を携帯デバイス8500のUI8645に、UI8645の異なる7つの段階8505、8605、8610、8615、8620、8625及び8630として示す。第1段階8505は、他のデバイスの他の3人のユーザ間の複数の参加者によるテレビ会議が確立された後のUI8645を示す図85に示される第1段階8505と同じである。   FIG. 86 illustrates another exemplary sequence of operations for simultaneously displaying all participants of a video conference with multiple participants and selecting one of the participants to watch. FIG. 86 illustrates this operation on the UI 8645 of the portable device 8500 as seven different stages 8505, 8605, 8610, 8615, 8620, 8625 and 8630 of the UI 8645. The first step 8505 is the same as the first step 8505 shown in FIG. 85, which shows the UI 8645 after a video conference with multiple participants between the other three users of the other device has been established.

第2段階8605は、表示域8570を選択することによって(例えば、2本の指を表示域8570に置くことによって)、携帯デバイス8500のユーザが参加者選択動作を開始しているところを示す。第3段階8610は、参加者選択動作の移行段階を示す。この段階で、ユーザは、表示域8570をより大きくさせ、合成表示8535となるために使用されたものの表示域を満たしながら、互いから離れるように2つの指をドラッグする。この例は、表示域8570が選択されていることを示すが、他の表示域8565、8575及び8580のいずれかが選択されうる。一部の実施形態では、携帯デバイス8500のユーザは、ユーザの表示域(すなわち、この例では表示域8565)を選択しないようにできる。   A second step 8605 indicates that the user of the mobile device 8500 has begun a participant selection operation by selecting the display area 8570 (eg, by placing two fingers on the display area 8570). The third step 8610 shows a transition step of the participant selection operation. At this stage, the user drags the two fingers away from each other while increasing the display area 8570 and filling the display area of what was used to create the composite display 8535. This example shows that the display area 8570 is selected, but any of the other display areas 8565, 8575, and 8580 can be selected. In some embodiments, the user of the mobile device 8500 can be prevented from selecting the user's viewport (ie, viewport 8565 in this example).

UI8645の第4段階8615は、参加者選択動作が完了した後のPIP表示8635を示す。一部の実施形態は、ユーザが、表示域8570がPIP表示8635の背景表示域8640を満たすまで、互いから離れるような指のドラッグを継続することを必要とするが、他の実施形態は、ユーザが指を離す前に、ユーザが特定のしきい値量よりも大きくなる(例えば、特定の距離よりも長い、又は特定の時間量よりも大きい)ようなドラッグ動作を行うことのみが必要とされる。ユーザのドラッグ動作が特定のしきい値量を満たすか又はこれを超える場合に、UI8645は、PIP表示8635の背景表示域8640を満たすまで、表示域8570を拡大しつづける。そうでない場合に、参加者選択動作は完了せず、UI8645は合成表示8535に戻る。図示のように、選択された表示域(すなわち、表示域8570)はPIP表示8635の背景表示域8640であり、ユーザの表示域8565はPIP表示8635の挿入表示域である。一部の実施形態は、第3段階8610と第4段階8615との間の移行を表示するためにアニメーション(不図示)を提供する。   The fourth step 8615 of the UI 8645 shows the PIP display 8635 after the participant selection operation has been completed. Some embodiments require the user to continue dragging the fingers away from each other until the display area 8570 fills the background display area 8640 of the PIP display 8635, while other embodiments require that the user continue to drag the fingers away from each other. Before the user releases the finger, it is only necessary that the user perform a drag operation that is greater than a certain threshold amount (eg, longer than a certain distance or longer than a certain amount of time). Is done. If the user's drag action meets or exceeds a certain threshold amount, UI 8645 continues to expand display area 8570 until it fills background display area 8640 of PIP display 8635. Otherwise, the participant selection operation is not completed and the UI 8645 returns to the composite display 8535. As shown, the selected display area (ie, display area 8570) is the background display area 8640 of the PIP display 8635, and the user's display area 8565 is the insertion display area of the PIP display 8635. Some embodiments provide an animation (not shown) to indicate the transition between the third stage 8610 and the fourth stage 8615.

第5段階8620は、携帯デバイス8500のユーザがPIP表示8635の表示域8640を選択することによって(例えば、2本の指を背景表示域8640に置くことによって)参加者選択解除動作を開始しているところを示す。第6段階8625は、参加者選択解除動作の移行段階を示す。この段階は、PIP表示8635の背景表示域8640となるように使用されるものの表示域を縮めるために、ユーザが指を互いに向かってドラッグするところを示す。第3段階8610で説明した動作と同様に、一部の実施形態は、ユーザが指を離す前に、ユーザのドラッグ動作がしきい値量よりも大きくなる(例えば、特定の距離よりも長い、又は特定の時間量よりも長い)ことを必要とする。そうでない場合に、参加者選択解除動作は完了せず、UI8645はPIP表示8635に戻る。UI8645の第7段階8630は、参加者選択解除動作の完了後の合成表示8535を示す。   A fifth step 8620 initiates the participant deselect operation by the user of the portable device 8500 selecting the display area 8640 of the PIP display 8635 (eg, by placing two fingers on the background display area 8640). Show where you are. The sixth step 8625 indicates a transition step of the participant deselection operation. This stage shows the user dragging the fingers toward each other to shrink the display area, which is used to be the background display area 8640 of the PIP display 8635. Similar to the operation described in the third step 8610, some embodiments require that the user's drag operation be greater than a threshold amount before the user releases the finger (eg, longer than a certain distance, Or longer than a certain amount of time). Otherwise, the participant deselection operation is not completed and the UI 8645 returns to the PIP display 8635. The seventh step 8630 of the UI 8645 shows the composite display 8535 after the completion of the participant deselection operation.

図86は、複数の参加者によるテレビ会議の参加者全員を同時に表示し、参加者選択動作を実行し、参加者選択解除動作を実行するための動作の別の例示的なシーケンスを示す。しかし、一部の実施形態により、携帯デバイス8500のユーザは、参加者選択動作及び参加者選択解除動作を反復して実行できる。図87は、1つのこのような実施形態を示す。   FIG. 86 illustrates another exemplary sequence of operations for simultaneously displaying all participants in a video conference with multiple participants, performing a participant selection operation, and performing a participant deselection operation. However, according to some embodiments, a user of the portable device 8500 may repeatedly perform a participant selection operation and a participant deselection operation. FIG. 87 illustrates one such embodiment.

具体的には、図87は、UI8730において参加者選択動作及び参加者選択解除動作を複数回実行する例示的なシーケンスを、UI8730の7つの異なる段階8505、8705、8615、8710、8715、8720及び8725として示す。第1段階8505は、上述の図85及び図86の第1段階8505と同じである。第2段階8705は、ユーザが(2本の指を表示域8570に置くのではなく)表示域8570を一度タップすることによって表示域8570を選択することを除いて、図86の第2段階8605と同様である。第3段階8615は、参加者選択動作の完了後のPIP表示8635を示すので、図86の第4段階8615と同じである。第4段階8710は、ユーザが(2本の指を背景表示域8640に置くのではなく)背景表示域8640を一度タップすることによってPIP表示8645の背景表示域8640を選択することを除いて、図86の第5段階8620と同様である。   Specifically, FIG. 87 illustrates an exemplary sequence of performing a participant selection operation and a participant deselection operation multiple times in the UI 8730, through seven different stages 8505, 8705, 8615, 8710, 8715, 8720, and 795 of the UI 8730. 8725. The first step 8505 is the same as the first step 8505 in FIGS. 85 and 86 described above. The second step 8705 of FIG. 86 differs from the second step 8705 of FIG. 86 in that the user selects the display area 8570 by tapping the display area 8570 once (instead of placing two fingers on the display area 8570). Is the same as The third step 8615 is the same as the fourth step 8615 in FIG. 86 because it shows the PIP display 8635 after the completion of the participant selection operation. The fourth step 8710 is similar to that except that the user selects the background display area 8640 of the PIP display 8645 by tapping the background display area 8640 once (instead of placing two fingers on the background display area 8640). This is similar to the fifth step 8620 in FIG. 86.

第5段階8715は、参加者選択解除動作が完了した後の合成表示8535を示すので、図86の第7段階8630と同じである。第6段階8720は、参加者選択動作が表示域8575に対して実行されることを除いて、第2段階8510と同様に示す。同様に、第7段階8725は、選択された表示域(すなわち、表示域8575)をPIP表示8635の背景表示域8640として示すので、第3段階8705と同様である。図87は、少数の参加者選択動作及び参加者選択解除動作のみを示しているが、任意の数のこのような動作が、複数の参加者によるテレビ会議中に実行されうる。   The fifth step 8715 is the same as the seventh step 8630 in FIG. 86 because the composite display 8535 is shown after the participant deselection operation is completed. The sixth step 8720 is similar to the second step 8510, except that a participant selection operation is performed on the display area 8575. Similarly, the seventh step 8725 is similar to the third step 8705 because the selected display area (ie, display area 8575) is shown as the background display area 8640 of the PIP display 8635. Although FIG. 87 illustrates only a small number of participant selection operations and participant deselection operations, any number of such operations may be performed during a video conference with multiple participants.

さらに、一部の実施形態は、テレビ会議中に異なる数の参加者を表示できるUIを提供する。例えば、一部の実施形態のUIは、携帯デバイスが直立位置(すなわち、縦向き)に保持される場合に複数の参加者によるテレビ会議の参加者の一部のみを表示し、携帯デバイスが横向き位置(すなわち、横向き)に保持される場合に追加の参加者を表示する。他の実施形態は、携帯デバイスが横向き位置に保持される場合に参加者全員を表示する。さらに、一部の実施形態は、図34、図35、図36及び図37に示されるのと同様に、携帯デバイスの異なる位置及び/又は向きの間での移行を示すアニメーションを提供する。他の異なるアニメーションも可能である。   Additionally, some embodiments provide a UI that can display a different number of participants during a video conference. For example, the UI of some embodiments displays only some of the participants in a multi-participant video conference when the mobile device is held in an upright position (ie, portrait orientation), and the mobile device is in landscape orientation. Display additional participants when held in position (ie, sideways). Other embodiments display all participants when the mobile device is held in a landscape position. In addition, some embodiments provide animations that show transitions between different positions and / or orientations of the mobile device, similar to those shown in FIGS. 34, 35, 36, and 37. Other different animations are possible.

テレビ会議中に異なる数の参加者を表示するUIの別の例として、一部の実施形態により、携帯デバイスのユーザは、複数の参加者を選択してテレビ会議中に同時に姿を見ることができる。説明のために図85の第1段階8505を参照すると、これらの実施形態のうちの一部により、携帯デバイス8500のユーザは、表示域8565、8570、8575及び8580の2つ以上を(例えば、合成表示8535の対応する表示域をタップすることによって)選択できる。選択された表示域は、他のタイプの複数の参加者の表示構成の中でも特に、合成表示、PIP表示、図65に示される表示構成のいずれかなどの種々の方式で表示されうる。そのうえ、一部の実施形態の一例を説明しているが、異なる実施形態は、複数の参加者によるテレビ会議の複数の参加者を多くの異なる仕方で選択及び表示できることが当業者には理解されよう。   As another example of a UI that displays a different number of participants during a video conference, some embodiments allow a user of a mobile device to select multiple participants to view simultaneously during a video conference. it can. Referring to the first stage 8505 of FIG. 85 for illustration, according to some of these embodiments, a user of the portable device 8500 may display two or more of the display areas 8565, 8570, 8575, and 8580 (eg, (By tapping the corresponding display area of the composite display 8535). The selected display area may be displayed in various manners, such as any of the composite display, the PIP display, and the display configuration shown in FIG. 65, among other types of display configurations of a plurality of participants. Moreover, while examples of some embodiments have been described, one of ordinary skill in the art will appreciate that different embodiments may select and display multiple participants of a video conference with multiple participants in many different ways. Like.

B.複数の参加者による放送型テレビ会議のためのユーザインタフェース
前述のように、複数の参加者による放送型テレビ会議は、1人の参加者が他の参加者全員の姿を見て声を聞くことのみが可能であり、他の参加者は、互いに声を聞いたり姿を見たりすることはできない。複数の参加者による放送型テレビ会議を容易にするため、一部の実施形態は、複数の参加者による放送型テレビ会議の放送者及び他の参加者を表示するための多数の異なるUIを提供する。例えば、一部の実施形態は、図85に示される第3段階8515のレイアウトと同様である学生と教師のような(student-teacher-like)UIレイアウトを提供する。したがって、その後、一部の実施形態の学生と教師のUIレイアウトについて、この段階に関して説明する。
B. User Interface for Broadcast Video Conferencing with Multiple Participants As mentioned earlier, broadcast video conferencing with multiple participants involves one participant seeing and listening to all other participants. Only the other participants are not able to hear or see each other. To facilitate multi-participant broadcast video conferencing, some embodiments provide a number of different UIs for displaying broadcasters and other participants of a multi-participant broadcast video conference. I do. For example, some embodiments provide a student-teacher-like UI layout that is similar to the layout of the third stage 8515 shown in FIG. Accordingly, the student and teacher UI layouts of some embodiments will be described with respect to this stage thereafter.

これらの実施形態では、放送者のみが、PIP表示8560の表示域全体に表示される(すなわち、挿入表示域は表示されない)。複数の参加者による放送型テレビ会議の他の参加者は、合成表示8585に表示される表示域と同様のPIP表示8560の下に表示される。一部の実施形態では、規定の数の他の参加者は、携帯デバイスが縦モードである場合に合成表示8585に表示されるが、追加又はすべての参加者は、携帯デバイスが上述したものと同様に横モードである場合に合成表示8585に表示されうる。さらに、他の実施形態は、複数の参加者による放送型テレビ会議の放送者及び他の参加者を表示するための異なるUIを提供する。   In these embodiments, only the broadcaster is displayed over the entire display area of PIP display 8560 (ie, the insertion display area is not displayed). Other participants of the broadcast-type video conference with a plurality of participants are displayed below a PIP display 8560 similar to the display area displayed on the composite display 8585. In some embodiments, a prescribed number of other participants are displayed in the composite display 8585 when the mobile device is in portrait mode, but additional or all participants are identified by the mobile device as described above. Similarly, it can be displayed on the composite display 8585 in the case of the horizontal mode. Further, other embodiments provide different UIs for displaying broadcasters and other participants of a multi-participant broadcast video conference.

C.複数の参加者によるテレビ会議のためのオーディオの制御
さらに、一部の実施形態の携帯デバイスは、複数の参加者によるテレビ会議の参加者のオーディオを制御するための異なる技術を提供する。例えば、携帯デバイスの一部の実施形態により、携帯デバイスのユーザは、このような実施形態のUIに表示されるボリューム制御の単一の集合(例えば、ボリュームスライダ)を通じて複数の参加者によるテレビ会議において各参加者のオーディオを制御できる。他の実施形態では、携帯デバイスにより、携帯デバイスのユーザは、各参加者の表表示域に表示されるボリュームスライダなどのボリューム制御の集合によって複数の参加者によるテレビ会議における各参加者のオーディオのボリュームを個別に制御できる。一部の実施形態は、ボリューム制御の集合の代わりに消音ボタンのみを提供する。したがって、一部のこのような実施形態では、携帯デバイスのユーザは、複数の参加者によるテレビ会議の参加者全員を消音又は消音解除することのみができるが、他のこのような実施形態では、携帯デバイスのユーザは、複数の参加者によるテレビ会議の各参加者を個別に消音又は消音解除できる。さらに、複数の参加者によるテレビ会議の参加者のオーディオを制御するための他の技術は、携帯デバイス上のスイッチを切り換えることによって、音声コマンドを与えることなどによって可能である。
C. Controlling Audio for Multiple Participant Video Conferencing In addition, the mobile devices of some embodiments provide different techniques for controlling the audio of multiple participant video conference participants. For example, with some embodiments of the mobile device, the user of the mobile device can view a video conference with multiple participants through a single set of volume controls (eg, a volume slider) displayed on the UI of such an embodiment. Can control the audio of each participant. In another embodiment, the mobile device allows the user of the mobile device to use each participant's audio in a video conference with a plurality of participants by a set of volume controls, such as a volume slider, displayed in a table display area of each participant. Volume can be controlled individually. Some embodiments provide only a mute button instead of a set of volume controls. Thus, in some such embodiments, the user of the portable device can only mute or unmute all participants in a video conference with multiple participants, while in other such embodiments, The user of the mobile device can individually mute or unmute each participant in a video conference with multiple participants. Further, other techniques for controlling the audio of a participant in a video conference with multiple participants are possible, such as by switching a switch on the portable device, giving a voice command, and the like.

VIII.電子システム
上述の機能及び用途の多くは、(コンピュータ可読媒体とも呼ばれる)コンピュータ可読記憶媒体に記録された命令セットとして特定されるソフトウェアプロセスとして実施される。これらの命令が1つ以上の処理ユニット(例えば、1つ以上のプロセッサ、プロセッサのコア又は他の処理ユニット)によって実行される場合に、処理ユニット(群)に、命令に示された動作を実行させる。コンピュータ可読媒体の例は、CD−ROM、フラッシュドライブ、RAMチップ、ハードドライブ、EPROMなどを含むが、これらに限定されない。コンピュータ可読媒体は、無線接続又は有線接続を通る搬送波及び電子信号を含まない。
VIII. Electronic Systems Many of the functions and uses described above are implemented as software processes specified as sets of instructions recorded on computer readable storage media (also referred to as computer readable media). When the instructions are executed by one or more processing units (eg, one or more processors, processor cores, or other processing units), the processing unit (s) perform the operations indicated in the instructions. Let it. Examples of computer readable media include, but are not limited to, CD-ROMs, flash drives, RAM chips, hard drives, EPROMs, and the like. Computer readable media does not include carrier waves and electronic signals through wireless or wired connections.

本明細書では、「ソフトウェア」という用語は、リードオンリメモリに常駐するファームウェア又は磁気記憶装置に格納されたアプリケーションを含むことを意味し、プロセッサによる処理のためにメモリに読み込まれることができる。また、一部の実施形態では、複数のソフトウェア発明は、別個のソフトウェア発明を残しながら、より大規模なプログラムのサブパーツ(sub-part)として実施されうる。一部の実施形態では、複数のソフトウェア発明は、別個のプログラムとして実施されることもできる。最後に、本明細書で説明するソフトウェア発明を一緒に実施する別個のプログラムのいかなる組み合わせも本発明の範囲内に含まれる。一部の実施形態では、ソフトウェアプログラムは、1つ以上の電子システム上で動作するようにインストールされた場合に、ソフトウェアプログラムの動作を実行及び実施する1つ以上の特定のマシン実装を規定する。   As used herein, the term "software" is meant to include firmware resident in read-only memory or applications stored on magnetic storage and can be read into memory for processing by a processor. Also, in some embodiments, multiple software inventions may be implemented as sub-parts of a larger program while leaving separate software inventions. In some embodiments, multiple software inventions may be implemented as separate programs. Finally, any combination of separate programs that together implement the software invention described herein is included within the scope of the invention. In some embodiments, a software program defines one or more specific machine implementations that perform and perform the operations of the software program when installed to run on one or more electronic systems.

一部の実施形態は、呼び出し側プログラムコードが1つ以上のインタフェースを通じて呼び出されている他のプログラムコードと対話する環境で、1つ以上のアプリケーションプログラミングインタフェース(API)を含むソフトウェアプロセスとして実施される。種々の種類のパラメータをさらに含みうる種々の関数呼び出し、メッセージ又は他のタイプの起動は、呼び出し側プログラムと呼び出されているコードの間のAPIを介して転送されうる。さらに、APIは、APIで定義され、かつ呼び出しされるプログラムコードで実装されるデータ型又はクラスを使用する能力を呼び出し側プログラムコードに提供しうる。   Some embodiments are implemented as software processes that include one or more application programming interfaces (APIs) in an environment in which the calling program code interacts with other program code being invoked through one or more interfaces. . Various function calls, messages or other types of invocation, which may further include various types of parameters, may be transferred via an API between the calling program and the code being called. Further, the API may provide calling program code with the ability to use data types or classes defined in the API and implemented in the called program code.

少なくとも所定の実施形態は、呼び出し側ソフトウェアコンポーネントが、呼び出されるソフトウェアコンポーネントとAPIを通じて対話する環境を含む。この環境においてAPIを通じて動作するための方法は、APIを介した1つ以上の関数呼び出し、メッセージ、他のタイプの起動又はパラメータの転送を含む。   At least certain embodiments include an environment in which the calling software component interacts with the called software component through an API. Methods for operating through an API in this environment include one or more function calls, messages, other types of invocations, or transfer of parameters through the API.

一部の実施形態では、1つ以上のアプリケーションプログラミングインタフェース(API)を使用できる。例えば、メディア交換モジュール310(又は910)の一部の実施形態は、図19に説明したTNRモジュール1900の機能などの図3及び図9に説明した種々のビデオ処理及び符号化機能にアクセスするために、API集合を他のソフトウェアコンポーネントに提供する。   In some embodiments, one or more application programming interfaces (APIs) can be used. For example, some embodiments of the media exchange module 310 (or 910) may access various video processing and encoding functions described in FIGS. 3 and 9, such as the functions of the TNR module 1900 described in FIG. Next, the API set is provided to other software components.

APIは、プログラムコードコンポーネント又はハードウェアコンポーネント(以下「API実装コンポーネント」と呼ぶ)によって実装されるインタフェースであり、異なるプログラムコードコンポーネント又はハードウェアコンポーネント(以下「API呼び出し側コンポーネント」と呼ぶ)は、これにアクセスして、API実装コンポーネントによって提供される1つ以上の関数、メソッド、プロシージャ、データ構造、クラス及び/又は他のサービスを使用できる。APIは、API呼び出し側コンポーネントとAPI実装コンポーネントとの間で渡される1つ以上のパラメータを定義できる。   An API is an interface implemented by a program code component or a hardware component (hereinafter referred to as an “API implementation component”), and different program code components or hardware components (hereinafter referred to as an “API caller component”). Can be used to use one or more functions, methods, procedures, data structures, classes, and / or other services provided by the API implementation component. An API can define one or more parameters passed between the API caller component and the API implementation component.

APIにより、(サードパーティの開発者であってもよい)API呼び出し側コンポーネントの開発者は、API実装コンポーネントによって提供される特定の機能を活用できる。1つのAPI呼び出し側コンポーネントもありうるし、複数のこのようなコンポーネントもありうる。APIは、アプリケーションからのサービスの要求をサポートするためにコンピュータシステム又はプログラムライブラリが提供するソースコードインタフェースでありうる。オペレーティングシステム(OS)は、OS上で実行されるアプリケーションがこれらのAPIのうちの1つ以上を呼び出すことを可能にするために複数のAPIを有することができ、(プログラムライブラリなどの)サービスは、サービスを使用するアプリケーションがそれらのAPIのうちの1つ以上を呼び出すために複数のAPIを有しうる。APIは、アプリケーションのビルド時に解釈実行又はコンパイルされうるプログラミング言語の観点で特定されうる。   The API allows the developer of the API calling component (which may be a third-party developer) to take advantage of the specific functionality provided by the API implementation component. There may be one API caller component, or there may be multiple such components. An API can be a source code interface provided by a computer system or program library to support a service request from an application. An operating system (OS) can have multiple APIs to allow applications running on the OS to call one or more of these APIs, and services (such as program libraries) An application using the service may have multiple APIs to call one or more of those APIs. An API can be specified in terms of a programming language that can be interpreted and executed or compiled when building the application.

一部の実施形態では、API実装コンポーネントは、それぞれAPI実装コンポーネントによって実装される機能の異なる態様の異なるビュー又はこの異なる態様にアクセスする異なる態様を提供する複数のAPIを提供できる。例えば、API実装コンポーネントのあるAPIは、関数の第1集合を提供でき、サードパーティの開発者に公開でき、API実装コンポーネントの別のAPIは、隠されており(公開されておらず)、関数の第1集合の部分集合を提供し、関数の第1集合に含まれない関数のテスト又はデバッグなどの、関数の別の集合も提供する。他の実施形態では、API実装コンポーネント自体が、その基礎となるAPIを介して1つ以上の他のコンポーネントを呼び出し、したがってAPI呼び出し側コンポーネントとAPI実装コンポーネントとの両方を兼ねることができる。   In some embodiments, the API implementation component can provide multiple APIs, each providing a different view of or a different aspect of accessing the different aspects of the functionality implemented by the API implementation component. For example, one API with an API-implementing component can provide a first set of functions and can be exposed to third-party developers, and another API with an API-implementing component is hidden (not exposed) and functions And a further set of functions, such as testing or debugging functions not included in the first set of functions. In other embodiments, the API-implementing component itself can call one or more other components via its underlying API, and thus can be both an API-calling component and an API-implementing component.

APIは、API実装コンポーネントの特定の機能にアクセスして使用する場合にAPI呼び出し側コンポーネントが使用する言語及びパラメータを定義する。例えば、API呼び出し側コンポーネントは、APIによって公開される(例えば、関数又はメソッドによって実施される)1つ以上のAPIの呼び出し又は起動を通じてAPI実装コンポーネントの特定の機能にアクセスし、APIの呼び出し又は起動を介してパラメータを使用してデータ及び制御情報を渡す。API実装コンポーネントは、API呼び出し側コンポーネントからのAPI呼び出しに応答してAPIを通じて値を返してもよい。APIは、API呼び出しの構文及び結果(例えば、どのようにしてAPI呼び出しを起動するか、及びAPI呼び出しが何を行うか)を定義するが、APIは、API呼び出しによって指定された関数をAPI呼び出しがどのように実現するかを明らかにしなくてもよい。種々のAPI呼び出しは、呼び出し側(API呼び出し側コンポーネント)とAPI実装コンポーネントとの間の1つ以上のアプリケーションプログラミングインタフェースを介して転送される。API呼び出しの転送は、関数呼び出し又はメッセージの発行、開始、起動、呼び出し、受信、返送、又は応答を含みうる。言い換えれば、転送は、API呼び出し側コンポーネント又はAPI実装コンポーネントのいずれかによる動作を記述できる。APIの関数呼び出し又は他の起動は、パラメータリスト又は他の構造を通じて1つ以上のパラメータを送信又は受信できる。パラメータは、定数、キー、データ構造、オブジェクト、オブジェクトクラス、変数、データ型、ポインタ、配列、リスト、又は関数若しくはメソッドへのポインタ、又はAPIを介して渡されるデータ若しくは他の項目を参照する別の仕方でありうる。   The API defines the language and parameters used by the API caller component when accessing and using a particular function of the API implementation component. For example, an API caller component accesses a particular function of an API-implemented component through one or more API calls or invocations (eg, implemented by functions or methods) exposed by the API, and calls or invokes the API. Pass data and control information using parameters via The API implementation component may return a value through the API in response to an API call from the API calling component. The API defines the syntax and results of the API call (eg, how to invoke the API call, and what the API call does), but the API calls the function specified by the API call. It is not necessary to clarify how is realized. Various API calls are transferred via one or more application programming interfaces between the caller (API caller component) and the API implementation component. Transferring an API call may include issuing, starting, invoking, calling, receiving, returning, or responding to a function call or message. In other words, the transfer can describe the operation by either the API caller component or the API implementation component. A function call or other invocation of the API can send or receive one or more parameters through a parameter list or other structure. Parameters are constants, keys, data structures, objects, object classes, variables, data types, pointers, arrays, lists, or pointers to functions or methods, or other data or other items that are passed through an API. It can be a way of.

そのうえ、データ型又はクラスは、APIによって提供され、API実装コンポーネントによって実装されうる。したがって、API呼び出し側コンポーネントは、APIで提供される定義を使用することによって、変数を宣言し、このような型又はクラスへのポインタを使用し、このような型又はクラスの定数値を使用又はインスタンス化できる。   Moreover, data types or classes can be provided by an API and implemented by an API implementation component. Thus, the API calling component declares variables, uses pointers to such types or classes, uses constant values of such types or classes, or uses the definitions provided in the API, or Can be instantiated.

一般に、APIは、API実装コンポーネントによって提供されるサービス若しくはデータにアクセスするために、又はAPI実装コンポーネントによって提供される動作又は計算の実行を開始するために使用されうる。例を挙げると、API実装コンポーネント及びAPI呼び出し側コンポーネントはそれぞれ、オペレーティングシステム、ライブラリ、デバイスドライバ、API、アプリケーションプログラム又は他のモジュールの任意の1つであってもよい(API実装コンポーネント及びAPI呼び出し側コンポーネントは、同じタイプのモジュールであってもよいし、互いと異なるタイプのモジュールであってもよいことを理解されたい)。一部の場合では、API実装コンポーネントは、少なくとも一部がファームウェア、マイクロコード又は他のハードウェア論理回路において実施されうる。一部の実施形態では、APIにより、クライアントプログラムが、ソフトウェア開発キット(SDK)ライブラリによって提供されるサービスを使用することが可能になる。他の実施形態では、アプリケーション又は他のクライアントプログラムは、アプリケーションフレームワークによって提供されるAPIを使用できる。これらの実施形態では、アプリケーション又はクライアントプログラムは、SDK及びAPIによって提供される関数又はメソッドへの呼び出しを組み込むことができ、又は、SDKで定義されAPIによって提供されるデータ型又はオブジェクトを使用できる。アプリケーションフレームワークは、これらの実施形態では、フレームワークによって定義された種々のイベントに応答するプログラムにメインイベントループを提供できる。APIにより、アプリケーションは、アプリケーションフレームワークを使用してイベント及びイベントへの応答を規定できる。いくつかの実装形態では、API呼び出しは、入力の能力及び状態、出力の能力及び状態、処理能力、電力状態、記憶装置の容量及び状態、通信能力などの態様に関連する能力又は状態を含む、ハードウェアデバイスの能力又は状態をアプリケーションに報告でき、APIは、一部において、ファームウェア、マイクロコード又は一部においてハードウェアコンポーネント上で実行する他の低レベル論理回路によって実装されうる。   In general, an API may be used to access services or data provided by an API implementation component, or to initiate execution of an operation or calculation provided by the API implementation component. By way of example, each of the API implementation component and the API caller component may be any one of an operating system, library, device driver, API, application program, or other module (API implementation component and API caller, respectively). It should be understood that the components may be the same type of module or different types of modules). In some cases, the API-implemented components may be implemented, at least in part, in firmware, microcode, or other hardware logic. In some embodiments, the API allows client programs to use services provided by a software development kit (SDK) library. In other embodiments, applications or other client programs can use the API provided by the application framework. In these embodiments, the application or client program may incorporate calls to functions and methods provided by the SDK and API, or may use data types or objects defined in the SDK and provided by the API. The application framework, in these embodiments, can provide a main event loop to a program that responds to various events defined by the framework. The API allows an application to define events and responses to events using the application framework. In some implementations, the API call includes capabilities or states related to aspects such as input capabilities and states, output capabilities and states, processing capabilities, power states, storage device capacities and states, communication capabilities, and the like. The capabilities or state of the hardware device can be reported to the application, and the API can be implemented, in part, by firmware, microcode, or other low-level logic that executes, in part, on hardware components.

API呼び出し側コンポーネントは、ローカルコンポーネント(すなわち、API実装コンポーネントと同じデータ処理システム上にある)であってもよいし、ネットワークを介してAPIを通じてAPI実装コンポーネントと通信するリモートコンポーネント(すなわち、API実装コンポーネントと異なるデータ処理システム上にある)であってもよい。API実装コンポーネントは、API呼び出し側コンポーネントとして機能してもよく(すなわち、異なるAPI実装コンポーネントによって公開されているAPIへのAPI呼び出しを行ってもよく)、API呼び出し側コンポーネントは、異なるAPI呼び出し側コンポーネントに公開されるAPIを実装することによってAPI実装コンポーネントとして機能してもよいことを理解されたい。   The API calling component can be a local component (ie, on the same data processing system as the API implementing component) or a remote component (ie, the API implementing component) that communicates with the API implementing component through the API over a network. And on a different data processing system). The API-implementing component may function as an API-calling component (ie, make API calls to APIs exposed by different API-implementing components), and the API-calling component may be a different API-calling component. , May function as an API implementation component by implementing the APIs exposed in.

APIにより、異なるプログラミング言語で記述された複数のAPI呼び出し側コンポーネントが、API実装コンポーネントと通信できる(したがって、APIは、API実装コンポーネントとAPI呼び出し側コンポーネントとの間で呼び出し及び戻り値を変換するための機能を含むことができる)。しかし、APIは、特定のプログラミング言語の観点で実装されてもよい。API呼び出し側コンポーネントは、一実施形態では、OSプロバイダからのAPI集合及びプラグインプロバイダからの別のAPI集合及び別のプロバイダ又は別のAPI集合の作成者からの別のAPI集合(例えばソフトウェアライブラリのプロバイダ)などの異なるプロバイダからのAPIを呼び出せる。   The API allows multiple API calling components written in different programming languages to communicate with the API implementing component (therefore, the API is used to translate calls and return values between the API implementing component and the API calling component). Functions can be included). However, the API may be implemented in terms of a particular programming language. The API caller component, in one embodiment, includes an API set from the OS provider and another API set from the plug-in provider and another API set from another provider or creator of another API set (eg, a software library). API) from different providers such as

図88は、本発明の一部の実施形態で使用されてもよい例示的なAPIアーキテクチャを示すブロック図である。図88に示すように、APIアーキテクチャ8800は、API8820を実装するAPI実装コンポーネント8810(例えば、オペレーティングシステム、ライブラリ、デバイスドライバ、API、アプリケーションプログラム、ソフトウェア又は他のモジュール)を含む。API8820は、API呼び出し側コンポーネント8830によって使用されうるAPI実装コンポーネントの1つ以上の関数、メソッド、クラス、オブジェクト、プロトコル、データ構造、フォーマット及び/又は他の機構を規定する。API8820は、API実装コンポーネント8810の関数がどのようにAPI呼び出し側コンポーネント8830からパラメータを受け取るか、及び関数がどのようにAPI呼び出し側コンポーネントに結果を返すかを規定する少なくとも1つの呼び出し規約を規定できる。API呼び出し側コンポーネント8830(例えば、オペレーティングシステム、ライブラリ、デバイスドライバ、API、アプリケーションプログラム、ソフトウェア又は他のモジュール)は、API8820によって規定されるAPI実装コンポーネント8810の機能にアクセスして使用するために、API8820を通じてAPI呼び出しを行う。API実装コンポーネント8810は、API呼び出しに応答してAPI8820を通じてAPI呼び出し側コンポーネント8830に値を返すことができる。   FIG. 88 is a block diagram illustrating an exemplary API architecture that may be used in some embodiments of the present invention. As shown in FIG. 88, the API architecture 8800 includes an API implementation component 8810 (eg, an operating system, library, device driver, API, application program, software, or other module) that implements the API 8820. The API 8820 specifies one or more functions, methods, classes, objects, protocols, data structures, formats and / or other mechanisms of an API implementation component that may be used by the API caller component 8830. The API 8820 can specify at least one calling convention that defines how functions of the API implementation component 8810 receive parameters from the API calling component 8830, and how the function returns results to the API calling component. . An API caller component 8830 (eg, an operating system, library, device driver, API, application program, software or other module) may access the API implementation component 8810 defined by the API 8820 to access and use the functions of the API 8820. API call via The API implementation component 8810 can return a value to the API caller component 8830 through the API 8820 in response to the API call.

API実装コンポーネント8810が、API8820を通じて規定されず、API呼び出し側コンポーネント8830が利用できないさらなる関数、メソッド、クラス、データ構造及び/又は他の機構を含んでもよいことが理解されよう。API呼び出し側コンポーネント8830が、API実装コンポーネント8810と同じシステム上にあってもよいし、リモートにあって、ネットワークを介してAPI8820を使用してAPI実装コンポーネント8810にアクセスしてもよいことを理解されたい。図88は、API8820と対話する単一のAPI呼び出し側コンポーネント8830を示しているが、API呼び出し側コンポーネント8830とは異なる言語(又は同じ言語)で記述されうる他のAPI呼び出し側コンポーネントがAPI8820を使用してもよいことを理解されたい。   It will be appreciated that API implementation component 8810 may include additional functions, methods, classes, data structures, and / or other mechanisms that are not defined through API 8820 and are not available to API caller component 8830. It is understood that the API caller component 8830 may be on the same system as the API implementation component 8810, or may be remote and access the API implementation component 8810 using the API 8820 over a network. I want to. FIG. 88 shows a single API caller component 8830 interacting with API 8820, but other API caller components that may be written in a different language (or the same language) than API caller 8830 use API 8820. It should be understood that this may be done.

API実装コンポーネント8810、API8820及びAPI呼び出し側コンポーネント8830は機械可読媒体に格納でき、機械可読媒体は、機械(例えば、コンピュータ又は他のデータ処理システム)によって読み取り可能な形で情報を格納するためのいかなる機構も含む。例えば、機械可読媒体は、磁気ディスク、光ディスク、ランダムアクセスメモリ、リードオンリメモリ、フラッシュメモリデバイスなどを含む。   The API implementation component 8810, the API 8820, and the API caller component 8830 can be stored on a machine-readable medium, which can be any machine for storing information in a form readable by a machine (eg, a computer or other data processing system). Including the mechanism. For example, a machine-readable medium includes a magnetic disk, an optical disk, a random access memory, a read-only memory, a flash memory device, and the like.

図89は、デュアルカメラモバイルコンピューティングデバイスアーキテクチャ8900の一例である。モバイルコンピューティングデバイスの実装形態は、1つ以上の処理ユニット8905と、メモリインタフェース8910と、周辺機器インタフェース8915とを含むことができる。コンピューティングデバイスアーキテクチャを構成するこれらのコンポーネントのそれぞれは、別個のコンポーネントとすることもできるし、1つ以上の集積回路に統合することもできる。これらの種々のコンポーネントは、1つ以上の通信バス又は信号線によって、まとめて結合されることもできる。   FIG. 89 is an example of a dual camera mobile computing device architecture 8900. An implementation of a mobile computing device can include one or more processing units 8905, a memory interface 8910, and a peripheral device interface 8915. Each of these components that make up the computing device architecture can be a separate component or can be integrated into one or more integrated circuits. These various components may also be coupled together by one or more communication buses or signal lines.

周辺機器インタフェース8915は、カメラサブシステム8920、無線通信サブシステム(群)8925、オーディオサブシステム8930、I/Oサブシステム8935などを含む種々のセンサ及びサブシステムに結合されうる。周辺機器インタフェース8915により、プロセッサと周辺機器との間の通信が可能になる。方位センサ8945又は加速度センサ8950などの周辺機器は、向き及び加速度の機能を容易にするために周辺機器インタフェース8915に結合されうる。   Peripheral interface 8915 may be coupled to various sensors and subsystems, including camera subsystem 8920, wireless communication subsystem (s) 8925, audio subsystem 8930, I / O subsystem 8935, and the like. Peripheral device interface 8915 allows communication between the processor and the peripheral device. Peripherals such as orientation sensor 8945 or acceleration sensor 8950 can be coupled to peripheral interface 8915 to facilitate orientation and acceleration functions.

カメラサブシステム8920は、1つ以上の光センサ8940、例えば電荷結合素子(CCD)光センサ、相補型金属酸化膜半導体(CMOS)光センサに結合されうる。センサに結合されたカメラサブシステム8920は、画像及び/又はビデオのデータ取り込みなどのカメラの機能を容易にできる。無線通信サブシステム8925は、通信機能を容易にする働きをしうる。無線通信サブシステム8925は、無線周波数受信機と、無線周波数送信機と、光受信機と、光送信機とを含むことができる。無線通信サブシステムは、GSMネットワーク、Wi−Fiネットワーク、Bluetooth(登録商標)ネットワークなどの1つ以上の通信ネットワークで動作するように実施されうる。オーディオサブシステム8930は、オーディオ認識、デジタル記録などの音声対応機能を容易にするためにスピーカ及びマイクロフォンに結合される。   The camera subsystem 8920 may be coupled to one or more light sensors 8940, for example, a charge coupled device (CCD) light sensor, a complementary metal oxide semiconductor (CMOS) light sensor. A camera subsystem 8920 coupled to the sensor can facilitate camera functions such as image and / or video data capture. Wireless communication subsystem 8925 may serve to facilitate communication functions. Wireless communication subsystem 8925 may include a radio frequency receiver, a radio frequency transmitter, an optical receiver, and an optical transmitter. The wireless communication subsystem may be implemented to operate on one or more communication networks, such as a GSM network, a Wi-Fi network, a Bluetooth network, and the like. An audio subsystem 8930 is coupled to the speakers and microphone to facilitate audio-enabled functions such as audio recognition, digital recording, and the like.

I/Oサブシステム8935は、ディスプレイ、タッチスクリーンなどの入出力周辺デバイスと、CPUのデータバスとの間の周辺機器インタフェースを通じた転送を含む。I/Oサブシステム8935は、タッチスクリーンコントローラ8955と、他の入力コントローラ8960とを含み、これらの機能を容易にできる。タッチスクリーンコントローラ8955は、タッチスクリーン8965に結合され、複数の接触感度技術のいずれかを使用して画面上での接触及び移動を検出できる。他の入力コントローラ8960は、1つ以上のボタンなどの他の入力/制御デバイスに結合されうる。   The I / O subsystem 8935 includes transfers between input / output peripheral devices, such as displays, touch screens, etc., and the CPU's data bus through the peripheral interface. The I / O subsystem 8935 includes a touch screen controller 8955 and another input controller 8960 to facilitate these functions. A touch screen controller 8955 is coupled to the touch screen 8965 and can detect contact and movement on the screen using any of a plurality of touch sensitivity techniques. Other input controllers 8960 may be coupled to other input / control devices such as one or more buttons.

メモリインタフェース8910はメモリ8970に結合でき、メモリ8970は、高速ランダムアクセスメモリ及び/又はフラッシュメモリなどの不揮発性メモリを含むことができる。メモリは、オペレーティングシステム(OS)8972を格納できる。OS8972は、基本システムサービスを取り扱うため、及びハードウェアに依存するタスクを実行するための命令を含むことができる。   The memory interface 8910 can be coupled to a memory 8970, which can include non-volatile memory such as high speed random access memory and / or flash memory. The memory can store an operating system (OS) 8972. OS 8972 may include instructions for handling basic system services and for performing hardware-dependent tasks.

メモリは、1つ以上の追加デバイスとの通信を容易にするための通信命令8974と、グラフィックユーザインタフェース処理を容易にするためのグラフィカルユーザインタフェース命令8976と、画像/ビデオに関連する処理及び機能を容易にするための画像/ビデオ処理命令8978と、電話に関連するプロセス及び機能を容易にするための電話命令8980と、メディア通信及び処理に関連するプロセス及び機能を容易にするためのメディア交換及び処理命令8982と、カメラに関連するプロセス及び機能を容易にするためのカメラ命令8984と、テレビ会議プロセス及び機能を容易にするためのテレビ会議命令8986とも含むことができる。上記で識別された命令は、別個のソフトウェアプログラム又はモジュールとして実装される必要はない。モバイルコンピューティングデバイスの種々の機能は、1つ以上の信号処理及び/又は特定用途向け集積回路を含むハードウェア及び/又はソフトウェアで実装されうる。   The memory stores communication instructions 8974 to facilitate communication with one or more additional devices, graphical user interface instructions 8976 to facilitate graphic user interface processing, and image / video related processing and functions. Image / video processing instructions 8978 for facilitation, telephone instructions 8980 for facilitating telephone related processes and functions, and media exchange and facilitation for facilitating processes and functions associated with media communication and processing. Processing instructions 8982, camera instructions 8984 to facilitate camera-related processes and functions, and video conferencing instructions 8986 to facilitate video conferencing processes and functions can also be included. The instructions identified above need not be implemented as a separate software program or module. Various functions of the mobile computing device may be implemented in hardware and / or software including one or more signal processing and / or application specific integrated circuits.

上述の実施形態は、図90に示すように、有線又は無線の通信チャネル9002を介してコンピューティングシステム9003と対話するためにタッチ入力を受け取り可能なタッチI/Oデバイス9001を含むことができる。タッチI/Oデバイス9001は、キーボード、マウスなどの他の入力デバイスの代わりに、又はこれと組み合わせて、コンピューティングシステム9003にユーザ入力を提供するために使用されうる。1つ以上のタッチI/Oデバイス9001は、コンピューティングシステム9003にユーザ入力を提供するために使用されうる。タッチI/Oデバイス9001は、コンピューティングシステム9003の一体部分(例えば、ラップトップ上のタッチスクリーン)であってもよいし、コンピューティングシステム9003とは別であってもよい。   The embodiments described above can include a touch I / O device 9001 that can receive touch input to interact with a computing system 9003 via a wired or wireless communication channel 9002, as shown in FIG. Touch I / O device 9001 may be used to provide user input to computing system 9003 instead of or in combination with other input devices such as a keyboard, mouse, and the like. One or more touch I / O devices 9001 can be used to provide user input to the computing system 9003. The touch I / O device 9001 may be an integral part of the computing system 9003 (eg, a touch screen on a laptop) or may be separate from the computing system 9003.

タッチI/Oデバイス9001は、全体的又は部分的に透過的、半透過的、非透過、不透明又はこれらの任意の組み合わせであるタッチセンサパネルを含むことができる。タッチI/Oデバイス9001は、タッチスクリーン、タッチパッド、タッチパッドとして機能するタッチスクリーン(例えば、ラップトップのタッチパッドを置き換えるタッチスクリーン)、他の任意の入力デバイスと結合若しくは組み合わせたタッチスクリーン若しくはタッチパッド(例えば、キーボード上に配されたタッチスクリーン又はタッチパッド)、又はタッチ入力を受け取るためのタッチセンサ面を有する任意の多次元物体として実施されうる。   Touch I / O device 9001 can include a touch sensor panel that is wholly or partially transparent, translucent, non-transparent, opaque, or any combination thereof. The touch I / O device 9001 may be a touch screen, a touch pad, a touch screen functioning as a touch pad (eg, a touch screen replacing a laptop touch pad), a touch screen or touch coupled or combined with any other input device. It may be implemented as a pad (eg, a touch screen or touch pad disposed on a keyboard) or any multi-dimensional object having a touch-sensitive surface for receiving touch input.

一例では、タッチスクリーンとして実施されたタッチI/Oデバイス9001は、ディスプレイの少なくとも一部分の上に部分的又は全体的に配置された透過的及び/又は半透過的なタッチセンサパネルを含むことができる。この実施形態によれば、タッチI/Oデバイス9001は、コンピューティングシステム9003(及び/又は別のソース)から送られたグラフィカルデータを表示するように機能し、また、ユーザ入力を受け取るように機能する。他の実施形態では、タッチI/Oデバイス9001は、タッチセンサコンポーネント/デバイスがディスプレイコンポーネント/デバイスと一体化された統合タッチスクリーンとして実施されうる。さらに他の実施形態では、タッチスクリーンは、補助又は同じグラフィカルデータを主要表示として表示してタッチ入力を受け取るための補助又は追加の表示画面として使用されうる。   In one example, touch I / O device 9001 implemented as a touch screen can include a transparent and / or translucent touch sensor panel partially or wholly disposed over at least a portion of a display. . According to this embodiment, touch I / O device 9001 is operative to display graphical data sent from computing system 9003 (and / or another source) and to receive user input. I do. In other embodiments, the touch I / O device 9001 may be implemented as an integrated touch screen with a touch sensor component / device integrated with a display component / device. In still other embodiments, the touch screen may be used as an auxiliary or additional display screen to display auxiliary or the same graphical data as the main display and receive touch input.

タッチI/Oデバイス9001は、容量測定、抵抗測定、光学測定、音響測定、誘導測定、機械的測定、化学的測定又はデバイス9001近傍での1つ以上のタッチ又はニアタッチの発生に関して測定できるあらゆる現象に基づいて、デバイス9001上の1つ以上のタッチ又はニアタッチの位置を検出するように構成されうる。ソフトウェア、ハードウェア、ファームウェア又はこれらの任意の組み合わせは、1つ以上のジェスチャーを識別して追跡する目的で、検出されたタッチの測定を処理するために使用されうる。ジェスチャーは、タッチI/Oデバイス9001上での定常的又は非定常的な、単一又は複数の、タッチ又はニアタッチに対応してもよい。ジェスチャーは、本質的に同じ時刻に、隣接して又は連続して、タップする、押す、固定する、こする、捻る、向きを変更する、圧力を変化させて押すなどの、タッチI/Oデバイス9001上で特定の方式で1つ以上の指又は他の物体を移動することによって実行されうる。ジェスチャーは、他の任意の1本以上の指で又は他の任意の1本以上の指により、挟む、スライドする、スワイプする、回転する、曲げる、ドラッグする又はタップする動きを特徴とできるが、これらに限定されない。単一のジェスチャーは、1つ以上の手を用いて、1人以上のユーザによって、又はこれらの任意の組み合わせによって実行されうる。   Touch I / O device 9001 is capable of measuring capacitance, resistance, optical, acoustic, inductive, mechanical, chemical, or any phenomenon that can be measured with respect to the occurrence of one or more touches or near touches near device 9001. May be configured to detect a location of one or more touches or near touches on the device 9001. Software, hardware, firmware, or any combination thereof, may be used to process a measurement of a detected touch in order to identify and track one or more gestures. The gesture may correspond to a steady or non-stationary, single or multiple, touch or near touch on the touch I / O device 9001. Gestures are touch I / O devices, such as tapping, pushing, fixing, rubbing, twisting, reorienting, changing pressure and pressing, at essentially the same time, adjacent or consecutively It can be performed by moving one or more fingers or other objects in a particular manner on 9001. The gesture may be characterized by pinching, sliding, swiping, rotating, bending, dragging, or tapping with any other finger or fingers or any other finger, It is not limited to these. A single gesture may be performed by one or more users with one or more hands, or by any combination of these.

コンピューティングシステム9003は、グラフィカルデータを用いて、ディスプレイにグラフィカルユーザインタフェース(GUI)を表示させてもよい。GUIは、タッチI/Oデバイス9001を介してタッチ入力を受け取るように構成されうる。タッチI/Oデバイス9001は、タッチスクリーンとして実施されているので、GUIを表示できる。あるいは、GUIは、タッチI/Oデバイス9001とは別のディスプレイに表示されうる。GUIは、インタフェース内の特定の位置に表示されるグラフィカル要素を含むことができる。グラフィカル要素は、仮想スクロールホイール、仮想キーボード、仮想ノブ、仮想ボタン、任意の仮想UIなどを含む、表示される様々な仮想入力デバイスを含みうるが、これらに限定されない。ユーザは、GUIのグラフィカル要素と関連付けられうるタッチI/Oデバイス9001上の1つ以上の特定の位置で、ジェスチャーを実行できる。他の実施形態では、ユーザは、GUIのグラフィカル要素の位置と無関係な1つ以上の位置でジェスチャーを実行できる。タッチI/Oデバイス9001上で実行されるジェスチャーは、GUI内のカーソル、アイコン、メディアファイル、リスト、テキスト、画像の前部又は一部などのグラフィカル要素を直接的又は間接的に操作し、制御し、変更し、移動し、作動し、開始し、又は一般に影響を及ぼすことができる。例えば、タッチスクリーンの場合に、ユーザは、タッチスクリーン上のグラフィカル要素を介してジェスチャーを実行することによって、グラフィカル要素と直接的に対話できる。あるいは、タッチパッドは、一般に間接的な対話を提供する。ジェスチャーはまた、表示されていないGUIエレメントに影響を及してもよいし(例えば、ユーザインタフェースを表示させる)、又はコンピューティングシステム9003内の他の動作に影響を及ぼしてもよい(例えば、GUI、アプリケーション又はオペレーティングシステムの状態又はモードに影響を及ぼす)。ジェスチャーは、表示されるカーソルと共にタッチI/Oデバイス9001上で実行されてもよいし、実行されなくてもよい。例えば、ジェスチャーがタッチパッド上で実行される場合に、カーソル(又はポインタ)は表示画面又はタッチスクリーンに表示されてもよく、カーソルは、表示画面上のグラフィカルオブジェクトと対話するためにタッチパッド上でのタッチ入力を介して制御されてもよい。ジェスチャーがタッチスクリーン上で直接的に実行される他の実施形態では、ユーザは、カーソル又はポインタがタッチスクリーンに表示されているかどうかにかかわらず、タッチスクリーン上のオブジェクトと直接的に対話できる。   The computing system 9003 may display a graphical user interface (GUI) on a display using the graphical data. The GUI may be configured to receive touch input via touch I / O device 9001. Since the touch I / O device 9001 is implemented as a touch screen, it can display a GUI. Alternatively, the GUI may be displayed on a separate display from the touch I / O device 9001. The GUI may include graphical elements that are displayed at specific locations within the interface. The graphical elements may include various virtual input devices to be displayed, including, but not limited to, a virtual scroll wheel, a virtual keyboard, a virtual knob, a virtual button, any virtual UI, and the like. The user can perform a gesture at one or more specific locations on the touch I / O device 9001 that can be associated with a graphical element of the GUI. In other embodiments, the user can perform a gesture at one or more locations independent of the location of the GUI graphical element. Gestures performed on the touch I / O device 9001 directly and indirectly manipulate and control graphical elements such as cursors, icons, media files, lists, text, the front or parts of images in the GUI. Can change, move, move, activate, start, or generally affect. For example, in the case of a touch screen, a user can interact directly with the graphical element by performing a gesture through the graphical element on the touch screen. Alternatively, touchpads generally provide indirect interaction. The gesture may also affect a GUI element that is not being displayed (eg, causing a user interface to be displayed) or may affect other operations within the computing system 9003 (eg, a GUI). Affecting the state or mode of the application or operating system). The gesture may or may not be performed on the touch I / O device 9001 together with the displayed cursor. For example, when a gesture is performed on a touchpad, a cursor (or pointer) may be displayed on a display screen or a touchscreen, and the cursor may be displayed on the touchpad to interact with graphical objects on the display screen. May be controlled via a touch input of the user. In other embodiments where the gesture is performed directly on the touchscreen, the user can interact directly with the object on the touchscreen regardless of whether a cursor or pointer is displayed on the touchscreen.

タッチI/Oデバイス9001上でのタッチ又はニアタッチに応答して又はこれに基づいて、通信チャネル9002を介してユーザにフィードバックが提供されうる。フィードバックは、光学的に、機械的に、電気的に、嗅覚的に、音響的になど、又はこれらの任意の組み合わせで、可変的な又は非可変的な方式で送られうる。   Feedback may be provided to the user via the communication channel 9002 in response to or based on a touch or near touch on the touch I / O device 9001. Feedback may be sent in a variable or non-variable manner, optically, mechanically, electrically, olfactory, acoustically, etc., or any combination thereof.

上述したこれらの機能は、デジタル電子回路において、コンピュータソフトウェア、ファームウェア又はハードウェアにおいて実施されうる。技術は、1つ以上のコンピュータプログラムを使用して実施されうる。プログラム可能なプロセッサ及びコンピュータは、携帯デバイスに含まれるか又は携帯デバイスとしてパッケージ化されうる。プロセス及び論理フローは、1つ以上のプログラム可能なプロセッサによって、及び1つ以上のプログラム可能な論理回路によって実行されうる。通信ネットワークを通じて汎用コンピューティングデバイス及び記憶デバイス並びに専用コンピューティングデバイス及び記憶デバイスが相互接続されうる。   These functions described above can be implemented in digital electronic circuits, in computer software, firmware or hardware. The techniques may be implemented using one or more computer programs. The programmable processor and the computer may be included in or packaged as a mobile device. Processes and logic flows may be performed by one or more programmable processors and by one or more programmable logic circuits. General purpose computing and storage devices and special purpose computing and storage devices may be interconnected through a communications network.

一部の実施形態は、(コンピュータ可読記憶媒体、機械可読媒体又は機械可読記憶媒体とも呼ばれる)機械可読媒体又はコンピュータ可読媒体にコンピュータプログラム命令を格納する、マイクロプロセッサ、記憶装置及びメモリなどの電子コンポーネントを含む。このようなコンピュータ可読媒体の一部の例は、RAM、ROM、リードオンリーコンパクトディスク(CD−ROM)、レコーダブルコンパクトディスク(CD−R)、リライタブルコンパクトディスク(CD−RW)、リードオンリーデジタル多用途ディスク(例えば、DVD−ROM、2層DVD−ROM)、さまざまなリコーダブル/リライタブルDVD(例えば、DVD−RAM、DVD−RW、DVD+RWなど)、フラッシュメモリ(例えば、SDカード、miniSDカード、microSDカードなど)、磁気ハードドライブ及び/又は固体ハードドライブ、リードオンリーBlu−Ray(登録商標)ディスク及びレコーダブルBlu−Rayディスク、UDO(ultra density optical)ディスク、他の任意の光媒体又は磁気媒体並びにフロッピーディスク(登録商標)を含む。コンピュータ可読媒体は、少なくとも1つの処理ユニットによって実行可能で種々の動作を実行するための命令セットを含むコンピュータプログラムを格納できる。コンピュータプログラム又はコンピュータコードの例は、コンパイラによって生成されるような機械コード、及びインタプリタを使用してコンピュータ、電子コンポーネント又はマイクロプロセッサによって実行される高レベルコードを含むファイルを含む。   Some embodiments include electronic components, such as microprocessors, storage devices, and memories that store computer program instructions on a machine-readable or computer-readable medium (also referred to as a computer-readable storage medium, a machine-readable medium, or a machine-readable storage medium). including. Some examples of such computer-readable media are RAM, ROM, read-only compact disc (CD-ROM), recordable compact disc (CD-R), rewritable compact disc (CD-RW), read-only digital Application discs (eg, DVD-ROM, dual-layer DVD-ROM), various recordable / rewritable DVDs (eg, DVD-RAM, DVD-RW, DVD + RW, etc.), flash memory (eg, SD card, miniSD card, microSD) Cards, etc.), magnetic and / or solid-state hard drives, read-only Blu-Ray® disks and recordable Blu-Ray disks, UDO (ultra density optical) disks, any other optical media or magnetic Including the body and a floppy disk (registered trademark). The computer readable medium can store a computer program executable by at least one processing unit and including a set of instructions for performing various operations. Examples of computer programs or code include machine code, such as generated by a compiler, and files containing high-level code that are executed by a computer, electronic component, or microprocessor using an interpreter.

上記の説明は、主に、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサについて言及しているが、一部の実施形態は、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)などの1つ以上の集積回路によって実行される。一部の実施形態では、このような集積回路は、回路自体に格納された命令を実行する。   Although the above description primarily refers to a microprocessor or multi-core processor executing software, some embodiments may be implemented in one or more applications, such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA). Performed by one or more integrated circuits. In some embodiments, such an integrated circuit executes instructions stored on the circuit itself.

本明細書及び本出願の任意の請求項において使用されている「コンピュータ」、「サーバ」、「プロセッサ」及び「メモリ」という用語はいずれも、電子デバイス又は他の技術的デバイスを指す。これらの用語は、人又は人のグループを除外する。特定するために、「表示」又は「表示する」という用語は、電子デバイスに表示することを意味する。本明細書及び本出願の任意の請求項において使用されている「コンピュータ可読媒体」という用語は、コンピュータによって読み取り可能な形で情報を格納する有形の物理的な物体に完全に限定される。これらの用語は、いかなる無線信号、有線ダウンロード信号及び他の任意の一時的な(ephemeral)信号も除外する。   The terms "computer," "server," "processor," and "memory," as used herein and in any claims of this application, refer to electronic devices or other technical devices. These terms exclude a person or group of people. For clarity, the terms "display" or "display" mean to display on an electronic device. The term "computer-readable medium" as used in this specification and in any claims of this application is fully limited to tangible physical objects that store information in a form readable by a computer. These terms exclude any wireless signals, wired download signals and any other ephemeral signals.

図91は、一部の実施形態によるテレビ会議の何人かの参加者を接続するのに使用される例示的な通信システム9100を概念的に示す。図示のように、通信システム9100は、いくつかの携帯デバイス9115と、いくつかのセルラー基地局(又はノードB)9110と、いくつかの無線ネットワークコントローラ(RNC)9105と、コアネットワーク9125とを含む。セルラー基地局及びRNCは、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)地上無線アクセスネットワーク(UTRAN)9130と総称される。各RNC9105は、1つ以上のセルラー基地局9110に接続され、合わせて無線アクセスネットワーク(RAN)と呼ばれる。   FIG. 91 conceptually illustrates an exemplary communication system 9100 used to connect some participants in a video conference according to some embodiments. As shown, communication system 9100 includes a number of portable devices 9115, a number of cellular base stations (or Node Bs) 9110, a number of radio network controllers (RNCs) 9105, and a core network 9125. . The cellular base station and RNC are collectively referred to as Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (UTRAN) 9130. Each RNC 9105 is connected to one or more cellular base stations 9110 and is collectively referred to as a radio access network (RAN).

各セルラー基地局9110は、サービス領域9120をカバーする。図示のように、各サービス領域内の携帯デバイス9115は、Uuインタフェースを通じてサービス領域9120のサービングセルラー基地局9110に無線接続される。Uuインタフェースは、2つのプレーン、すなわち制御プレーンとユーザプレーンとを有するプロトコルスタックを使用する。ユーザプレーンは、回線交換データストリーム、パケット交換データストリーム及びブロードキャストデータストリームをサポートする。制御プレーンは、ネットワークのシグナリングメッセージを搬送する。   Each cellular base station 9110 covers a service area 9120. As shown, the mobile devices 9115 in each service area are wirelessly connected to the serving cellular base station 9110 in the service area 9120 via a Uu interface. The Uu interface uses a protocol stack with two planes, a control plane and a user plane. The user plane supports circuit switched data streams, packet switched data streams and broadcast data streams. The control plane carries network signaling messages.

各セルラー基地局は、Iubインタフェースを通じてRNCに接続される。各RNC9105は、Iu−csインタフェース及びIu−psインタフェースによってコアネットワーク9125に接続される。Iu−csインタフェースは回線交換サービス(例えば、音声)のために使用され、Iu−psインタフェースは、パケット交換サービス(例えば、データ)に使用される。Iurインタフェースは、2つのRNCを互いに接続するために使用される。   Each cellular base station is connected to the RNC via an Iub interface. Each RNC 9105 is connected to the core network 9125 by an Iu-cs interface and an Iu-ps interface. The Iu-cs interface is used for circuit-switched services (eg, voice), and the Iu-ps interface is used for packet-switched services (eg, data). The Iur interface is used to connect two RNCs to each other.

したがって、通信システム9100は、回線交換サービスとパケット交換サービスとの両方をサポートする。例えば、回線交換サービスにより、通信システム9100の回線交換機を通じて通話データ(例えば、音声)を伝送することによって、通話を行うことができる。パケット交換サービスにより、IPのようなインターネット層プロトコルを介してUDP又はTCPなどのトランスポートプロトコル層を使用して、通信システム9100のパケット交換機を通じてテレビ会議データを伝送することによって、テレビ会議を行うことができる。一部の実施形態では、テレビ会議セットアップセクションで前述したテレビ会議への通話の移行(例えば、ハンドオフ)は、通信システム9100のような通信システムによってサポートされる回線交換サービス及びパケット交換サービスを使用する。すなわち、このような実施形態では、通話は、通信システム9100の回線交換機を通じて行われ、テレビ会議は、通信システム9100のパケット交換機を通じて行われる。   Thus, communication system 9100 supports both circuit-switched services and packet-switched services. For example, a call can be made by transmitting call data (for example, voice) through a circuit switch of the communication system 9100 by a circuit switching service. Conducting a video conference by transmitting video conference data through a packet switch of the communication system 9100 using a packet exchange service using a transport protocol layer such as UDP or TCP via an Internet layer protocol such as IP. Can be. In some embodiments, the transfer of a call to a video conference (eg, handoff) as described above in the video conference setup section uses circuit-switched and packet-switched services supported by a communication system such as communication system 9100. . That is, in such an embodiment, the call is conducted through a circuit switch of the communication system 9100 and the video conference is conducted through a packet switch of the communication system 9100.

図91の例示的な通信システムは、第3世代(3G)技術であるUTRAN無線モバイル通信システムを示しているが、一部の実施形態では、会議の参加者の一部を接続するために、第2世代(2G)通信システム、3GPP2エボリューションデータオプティマイズド/エボリューションデータオンリー(EV−DO)及び第3世代パートナシッププロジェクト2(3GPP2)符号分割多元接続IX(CDMA IX)などの他の3G通信システム、第4世代(4G)通信システム、無線ローカルエリアネットワーク(WLAN)及びワールドワイドインタオペラビリティフォーマイクロ波接続(WiMAX)通信システムを使用できることに留意されたい。2Gシステムの例は、グローバルシステムフォーモバイルコミュニケーション(GSM)、汎用パケット無線サービス(GPRS)及びエンハンストデータレートフォーGSMエボリューション(EDGE)を含む。2G通信システムアーキテクチャは、2G通信システムアーキテクチャがノードB9110の代わりに無線基地局装置(BTS)を使用し、RNC9105の代わりに基地局コントローラ(BSC)を使用することを除いて、図91に示されるアーキテクチャと同様である。2G通信システムでは、BSCとコアネットワークとの間のAインタフェースが回線交換サービスに使用され、BSCとコアネットワークとの間のGbインタフェースがパケット交換サービスに使用される。   Although the exemplary communication system of FIG. 91 illustrates a UTRAN wireless mobile communication system that is a third generation (3G) technology, in some embodiments, in order to connect some of the participants in the conference, Other 3G communication systems such as second generation (2G) communication systems, 3GPP2 Evolution Data Optimized / Evolution Data Only (EV-DO) and Third Generation Partnership Project 2 (3GPP2) code division multiple access IX (CDMA IX) It should be noted that 4th generation (4G) communication systems, wireless local area networks (WLANs) and World Wide Interoperability for Microwave Access (WiMAX) communication systems can be used. Examples of 2G systems include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), and Enhanced Data Rate for GSM Evolution (EDGE). The 2G communication system architecture is shown in FIG. 91, except that the 2G communication system architecture uses a radio base station device (BTS) instead of the Node B 9110 and uses a base station controller (BSC) instead of the RNC 9105. Similar to architecture. In a 2G communication system, the A interface between the BSC and the core network is used for circuit switching services, and the Gb interface between the BSC and the core network is used for packet switching services.

一部の実施形態では、通信システム9100は、サービスキャリアによって運用され、サービスキャリアは、最初に、携帯デバイス9115をプロビジョニングして、携帯デバイス9115が通信システム9100を使用できるようにする。一部の実施形態は、携帯デバイス9115に加入者識別モジュール(SIM)カードを構成し登録することによって、携帯デバイス9115をプロビジョニングする。他の実施形態では、携帯デバイス9115は、そうではなく、携帯デバイス9115のメモリを使用して構成され登録される。さらに、(顧客が携帯デバイス9115を購入した後で)GPRS、マルチメディアメッセージサービス(MMS)及びインスタントメッセージングのようなデータサービスなどの追加のサービスをプロビジョニングできる。携帯デバイス9115は、プロビジョニングされると、起動され、それによって、サービスキャリアによる通信システム9100を使用できるようになる。   In some embodiments, the communication system 9100 is operated by a service carrier, which first provisions the mobile device 9115 so that the mobile device 9115 can use the communication system 9100. Some embodiments provision the mobile device 9115 by configuring and registering a Subscriber Identity Module (SIM) card with the mobile device 9115. In other embodiments, the mobile device 9115 is instead configured and registered using the memory of the mobile device 9115. In addition, additional services can be provisioned (after the customer purchases the mobile device 9115), such as GPRS, multimedia messaging services (MMS), and data services such as instant messaging. When provisioned, the mobile device 9115 is activated, thereby enabling the use of the communication system 9100 by the service carrier.

通信システム9100は、一部の実施形態ではプライベート通信ネットワークである。このような実施形態では、携帯デバイス9115は、互い(例えば、通信システム9100にプロビジョニングされた携帯デバイス9115)の間で通信する(例えば、音声通話を行う、データを交換する)ことができる。他の実施形態では、通信システム9100はパブリック通信ネットワークである。したがって、携帯デバイス9115は、通信システム9100にプロビジョニングされた携帯デバイス9115に加えて、通信システム9100の外部にある他のデバイスと通信できる。通信システム9100の外部にある他のデバイスのうちの一部は、電話機、コンピュータ及び公衆交換電話網又は別の無線通信ネットワークなどの他のネットワークを通じて通信システム9100に接続された他のデバイスを含む。   Communication system 9100 is a private communication network in some embodiments. In such embodiments, the mobile devices 9115 can communicate (eg, make voice calls, exchange data) between each other (eg, mobile devices 9115 provisioned in the communication system 9100). In another embodiment, communication system 9100 is a public communication network. Accordingly, the mobile device 9115 can communicate with other devices external to the communication system 9100 in addition to the mobile device 9115 provisioned in the communication system 9100. Some of the other devices external to communication system 9100 include telephones, computers and other devices connected to communication system 9100 through other networks, such as the public switched telephone network or another wireless communication network.

ロングタームエボリューション(LTE)仕様は、4G通信システムを規定するために使用される。図92は、一部の実施形態によるテレビ会議の何人かの参加者を接続するのに使用される4G通信システム9200の例を概念的に示す。図示のように、通信システム9200は、いくつかの携帯デバイス9115と、いくつかの発展型ノードB(eNB)9205と、モビリティ管理エンティティ(MME)9215と、サービングゲートウェイ(S−GW)9220と、パケットデータネットワーク(PDN)ゲートウェイ9225と、ホーム加入者サーバ(HSS)9235とを含む。一部の実施形態では、通信システム9200は、1つ以上のMME9215と、1つ以上のS−GW9220と、1つ以上のPDNゲートウェイ9225と、1つ以上のHSS9235とを含む。   The Long Term Evolution (LTE) specification is used to define a 4G communication system. FIG. 92 conceptually illustrates an example of a 4G communication system 9200 used to connect several participants in a video conference according to some embodiments. As shown, the communication system 9200 includes a number of mobile devices 9115, a number of evolved Node Bs (eNBs) 9205, a mobility management entity (MME) 9215, a serving gateway (S-GW) 9220, It includes a packet data network (PDN) gateway 9225 and a home subscriber server (HSS) 9235. In some embodiments, communication system 9200 includes one or more MMEs 9215, one or more S-GWs 9220, one or more PDN gateways 9225, and one or more HSSs 9235.

eNB9205は、携帯デバイス9115にエアインタフェースを提供する。図示のように、各NB9205はサービス領域9210をカバーする。各サービス領域9210内の携帯デバイス9115は、LTE−Uuインタフェースを通じてサービス領域9210のeNB9205に無線接続される。図92は、X2インタフェースを通じて互いに接続されたeNB9205も示す。さらに、eNB9205は、S1−MMEインタフェースを通じてMME9215に接続され、S1−Uインタフェースを通じてS−GW9220に接続される。eNB9205は、発展型UTRAN(E−TRAN)9230と総称される。   The eNB 9205 provides an air interface to the mobile device 9115. As shown, each NB 9205 covers a service area 9210. The mobile device 9115 in each service area 9210 is wirelessly connected to the eNB 9205 in the service area 9210 through an LTE-Uu interface. FIG. 92 also shows eNBs 9205 connected together via an X2 interface. Further, the eNB 9205 is connected to the MME 9215 through the S1-MME interface, and is connected to the S-GW 9220 through the S1-U interface. The eNB 9205 is generically referred to as an evolved UTRAN (E-TRAN) 9230.

eNB9205は、無線リソース管理(例えば、無線ベアラ制御、接続モビリティ制御など)、S−GW9220へのユーザプレーンデータの経路制御、信号測定及び測定報告、携帯デバイスのアタッチ時のMMEの選択などの機能を提供する。MME9215の機能は、アイドルモードの携帯デバイスの追跡及びページング、無線ベアラの起動及び停止、携帯デバイスのアタッチ時のS−GW9220の選択、非アクセスストラタム(NAS)シグナリングの終了、HSS9235との対話によるユーザ認証などを含む。   The eNB 9205 performs functions such as radio resource management (for example, radio bearer control, connection mobility control, and the like), path control of user plane data to the S-GW 9220, signal measurement and measurement report, and selection of an MME when a mobile device is attached. provide. The functions of the MME 9215 include: tracking and paging of mobile devices in idle mode, activation and deactivation of radio bearers, selection of S-GW 9220 when attaching mobile devices, termination of non-access stratum (NAS) signaling, and user interaction with HSS 9235. Including authentication.

S−GW9220の機能は、(1)ユーザデータパケットの経路制御及び転送、並びに(2)IPベアラサービスのパラメータ及びネットワーク内部ルーティング情報などの携帯デバイスコンテキストの管理及び格納を含む。PDNゲートウェイ9225の機能は、携帯デバイス宛てのトラフィックの出口と入口とであることによる、携帯デバイスから外部パケットデータネットワーク(不図示)への接続の提供がある。移動局は、複数のパケットデータネットワークにアクセスするために、複数のPDNゲートウェイとの同時接続を有しうる。PDNゲートウェイ9225は、WiMAXと3GPP2(例えば、CDMA IX及びEV−DO)などの3GPP技術と3GPP以外の技術とのモビリティアンカーとしても機能する。   The functions of the S-GW 9220 include (1) routing and forwarding of user data packets, and (2) management and storage of mobile device contexts such as IP bearer service parameters and network internal routing information. The function of the PDN gateway 9225 is to provide a connection from the mobile device to an external packet data network (not shown) by being an egress and ingress of traffic destined for the mobile device. A mobile station may have simultaneous connections with multiple PDN gateways to access multiple packet data networks. The PDN gateway 9225 also functions as a mobility anchor between WiMAX and 3GPP technologies such as 3GPP2 (for example, CDMA IX and EV-DO) and technologies other than 3GPP.

図示のように、MME9215は、S11インタフェースを通じてS−GW9220に接続され、S6aインタフェースを通じてHSS9235に接続される。S−GW9220とPDNゲートウェイ9220とは、S8インタフェースを通じて接続される。MME9215、S−GW9220及びPDNゲートウェイ9225は、発展型パケットコア(EPC)と総称される。EPCは、3GPP LTE無線通信規格のコアネットワークアーキテクチャであるシステムアーキテクチャエボリューション(SAE)アーキテクチャの主要なコンポーネントである。EPCは純粋なパケットシステムである。例えば、EPCは、音声メディアゲートウェイを有しない。音声及びSMSのようなサービスは、パケット交換ルーティングされ、EPCサービスを利用するアプリケーション機能によって提供される。そのため、前述の通話からテレビ会議への移行を一例として使用すると、一部の実施形態では、通話とテレビ会議との両方が通信システム9200のパケット交換機を通じて行われる。一部のこのような実施形態では、通話に使用されるパケット交換チャネルは、通話終了後のテレビ会議のオーディオデータに使用され続ける。しかし、他のこのような実施形態では、異なるパケット交換チャネルが(例えば、テレビ会議の確立時に)作成され、オーディオデータは、通話終了時の通話のパケット交換チャネルではなく、新たに作成されたパケット交換チャネルを通じて伝送される。   As shown, the MME 9215 is connected to the S-GW 9220 through an S11 interface and to the HSS 9235 through an S6a interface. The S-GW 9220 and the PDN gateway 9220 are connected through an S8 interface. The MME 9215, the S-GW 9220, and the PDN gateway 9225 are collectively referred to as an evolved packet core (EPC). EPC is a key component of the System Architecture Evolution (SAE) architecture, which is the core network architecture of the 3GPP LTE wireless communication standard. EPC is a pure packet system. For example, EPC does not have an audio media gateway. Services such as voice and SMS are provided by application functions that are packet switched and routed and utilize EPC services. Thus, using the transition from a call to a video conference as an example, in some embodiments, both the call and the video conference take place through the packet switch of communication system 9200. In some such embodiments, the packet-switched channel used for the call continues to be used for audio data of the video conference after the call ends. However, in other such embodiments, a different packet-switched channel is created (e.g., during the establishment of a videoconference), and the audio data is sent to the newly created packet rather than the packet-switched channel at the end of the call. It is transmitted over the switching channel.

さらに、これらの異なる技術によって提供される帯域幅の量は、GPRSの44キロビット/秒(kbps)からLTEの10メガビット/秒(Mbps)超に及ぶ。LTEについては、将来的に、100Mbpsのダウンロード速度及び50Mbpsのアップロード速度が予測される。   Further, the amount of bandwidth provided by these different technologies ranges from 44 kilobits per second (kbps) for GPRS to over 10 megabits per second (Mbps) for LTE. For LTE, a download speed of 100 Mbps and an upload speed of 50 Mbps are expected in the future.

多くの特定の詳細を参照して本発明を説明してきたが、本発明は、本発明の趣旨の範囲から逸脱することなく他の特定の形態で実現できることが当業者には理解されるだろう。さらに、いくつかの図は、プロセスを概念的に示している。これらのプロセスの特定の動作は、図示及び説明したとおりの順序で実行されなくてもよい。特定の動作は、1つの連続的な一連の動作で実行されなくてもよく、異なる実施形態で異なる特定の動作が実行されてもよい。そのうえ、プロセスは、いくつかのサブプロセスを使用して、又はより大きなマクロプロセスの一部として実施されうる。   Although the present invention has been described with reference to many specific details, those skilled in the art will recognize that the present invention may be embodied in other specific forms without departing from the scope of the invention. . Further, some figures conceptually illustrate the process. Certain operations of these processes need not be performed in the exact order shown and described. Certain operations may not be performed in one continuous series of operations, and different specific operations may be performed in different embodiments. Moreover, the process may be implemented using several sub-processes or as part of a larger macro process.

また、多くの実施形態を、2つのデュアルカメラ携帯デバイス間のテレビ会議として上述した。しかし、これらの実施形態の多くが、デュアルカメラ携帯デバイスと、シングルカメラ携帯デバイス、コンピュータ、テレビ会議機能を有する電話機などの別のデバイスとの間でのテレビ会議を伴う場合に使用されることは、当業者には理解されよう。さらに、上述の実施形態の多くは、シングルカメラ携帯デバイス及びテレビ会議機能を有する他のコンピューティングデバイスにおいて使用できる。したがって、本発明は、上述の詳細によって限定されず、添付の請求の範囲によって規定されることが当業者には理解されよう。   Also, many embodiments have been described above as a video conference between two dual camera portable devices. However, many of these embodiments may not be used when involving a video conference between a dual camera mobile device and another device, such as a single camera mobile device, a computer, a telephone with video conferencing capabilities. As will be appreciated by those skilled in the art. Furthermore, many of the embodiments described above can be used in single camera portable devices and other computing devices with video conferencing capabilities. Thus, it will be apparent to one skilled in the art that the present invention is not limited by the above details, but is defined by the appended claims.

Claims (145)

第1携帯デバイスのコンピュータ可読記憶媒体であって、
前記記憶媒体はコンピュータプログラムを格納し、
前記コンピュータプログラムは、
第2デバイスとの無線通信ネットワークを通じたオーディオ通話中に、前記オーディオ通話からテレビ会議に切り換えるための選択可能ユーザインタフェース(UI)項目を前記第1携帯デバイスで提示するための命令セットと、
前記選択可能UI項目の選択を受け取るための命令セットと、
前記オーディオ通話を終了しないで前記テレビ会議を開始するための命令セットと、
前記第1デバイス及び前記第2デバイスが前記テレビ会議を通じて交換されたオーディオデータ及びビデオデータを提示することを可能にする前に前記オーディオ通話を終了するための命令セットとを有することを特徴とする記憶媒体。
A computer-readable storage medium of a first mobile device, comprising:
The storage medium stores a computer program,
The computer program comprises:
A set of instructions for presenting a selectable user interface (UI) item on the first mobile device for switching from the audio call to a video conference during an audio call over a wireless communication network with a second device;
An instruction set for receiving a selection of the selectable UI item;
An instruction set for initiating the video conference without ending the audio call;
A set of instructions for ending the audio call before enabling the first device and the second device to present exchanged audio and video data through the video conference. Storage medium.
前記選択可能UI項目を提示するための命令セットは、前記オーディオ通話中に前記第1携帯デバイスの表示画面に表示可能な表示域内に前記選択可能UI項目を継続して提示するための命令セットを含むことを特徴とする請求項1に記載の記憶媒体。   The instruction set for presenting the selectable UI items includes an instruction set for continuously presenting the selectable UI items in a display area that can be displayed on a display screen of the first mobile device during the audio call. The storage medium according to claim 1, comprising: 前記コンピュータプログラムは、
前記第2デバイスで取り込まれた第2ビデオが前記第1携帯デバイスに到達するのを待っている間に、前記第1携帯デバイスで取り込まれた第1ビデオを第1表示域に表示するための命令セットと、
前記第2ビデオを前記第1携帯デバイスの第2表示域に示すために、前記第2ビデオが前記第1携帯デバイスで受信された場合に前記第1表示域のサイズを低減するための命令セットとをさらに有することを特徴とする請求項1に記載の記憶媒体。
The computer program comprises:
Displaying the first video captured by the first mobile device in a first display area while waiting for the second video captured by the second device to reach the first mobile device. Instruction set,
An instruction set for reducing the size of the first display area when the second video is received at the first mobile device, for indicating the second video in a second display area of the first mobile device. The storage medium according to claim 1, further comprising:
前記第1表示域のサイズが低減すると前記第1表示域が前記第2表示域に重なることを特徴とする請求項3に記載の記憶媒体。   4. The storage medium according to claim 3, wherein the first display area overlaps the second display area when the size of the first display area is reduced. 前記第1表示域のサイズが低減すると、前記第2表示域に重なる挿入写真として前記第1表示域が機能するように、前記第1表示域及び前記第2表示域がピクチャインピクチャ表示を形成することを特徴とする請求項3に記載の記憶媒体。   When the size of the first display area is reduced, the first display area and the second display area form a picture-in-picture display such that the first display area functions as an inserted photograph overlapping the second display area. The storage medium according to claim 3, wherein: 前記テレビ会議を通じて前記第1デバイス及び前記第2デバイスがオーディオデータ及びビデオデータを交換することを可能にする前に前記オーディオ通話が終了することを特徴とする請求項1に記載の記憶媒体。   The storage medium of claim 1, wherein the audio call ends before the first device and the second device can exchange audio and video data through the video conference. 前記テレビ会議を通じて前記第1デバイス及び前記第2デバイスがオーディオデータ及びビデオデータを交換し始めた後であって、前記第1デバイス及び前記第2デバイスが前記交換されたオーディオデータ及びビデオデータを提示し始める前に、前記オーディオ通話が終了することを特徴とする請求項1に記載の記憶媒体。   After the first device and the second device start exchanging audio data and video data through the video conference, the first device and the second device present the exchanged audio data and video data. 2. The storage medium according to claim 1, wherein the audio call is terminated before the user starts calling. 前記コンピュータプログラムは、前記第1デバイスと前記第2デバイスとの間の前記オーディオ通話を確立するために前記第1携帯デバイスから前記第2デバイスとの通信チャネルを確立するための命令セットをさらに有することを特徴とする請求項1に記載の記憶媒体。   The computer program further comprises a set of instructions for establishing a communication channel from the first portable device to the second device to establish the audio call between the first device and the second device. The storage medium according to claim 1, wherein: 前記第1携帯デバイスは、前記無線通信ネットワーク内の別のデバイスと通信するための携帯通信デバイスであることを特徴とする請求項1に記載の記憶媒体。   The storage medium of claim 1, wherein the first mobile device is a mobile communication device for communicating with another device in the wireless communication network. 前記第1携帯デバイスはスマートフォンであることを特徴とする請求項1に記載の記憶媒体。   The storage medium according to claim 1, wherein the first mobile device is a smartphone. 前記第1デバイス及び前記第2デバイスは前記無線通信ネットワークを通じて他のデバイスとオーディオ通話を行うために前記無線通信ネットワークにプロビジョニングされることを特徴とする請求項1に記載の記憶媒体。   The storage medium of claim 1, wherein the first device and the second device are provisioned in the wireless communication network to make an audio call with another device through the wireless communication network. 前記第1携帯デバイスは前記無線通信ネットワークを通じて他のデバイスとオーディオ通話を行うために前記無線通信ネットワークにプロビジョニングされるが、前記第2デバイスは前記無線通信ネットワークを通じて他のデバイスとオーディオ通話を行うためにプロビジョニングされないことを特徴とする請求項1に記載の記憶媒体。   The first mobile device is provisioned in the wireless communication network to make an audio call with another device through the wireless communication network, while the second device is used to make an audio call with another device through the wireless communication network. The storage medium according to claim 1, wherein the storage medium is not provisioned. 前記無線通信ネットワークは第1無線通信ネットワークであり、前記第2デバイスは、前記第1無線通信ネットワークとは異なる第2無線通信ネットワークを通じて、又は別の通信ネットワークを通じて他のデバイスとオーディオ通話を行うためにプロビジョニングされることを特徴とする請求項12に記載の記憶媒体。   The wireless communication network is a first wireless communication network, and the second device performs an audio call with another device through a second wireless communication network different from the first wireless communication network or through another communication network. 13. The storage medium according to claim 12, wherein the storage medium is provisioned. 前記第1デバイス及び前記第2デバイスはスマートフォンであることを特徴とする請求項1に記載の記憶媒体。   The storage medium according to claim 1, wherein the first device and the second device are smartphones. 前記通信ネットワークはプライベート無線通信ネットワークであることを特徴とする請求項1に記載の記憶媒体。   The storage medium according to claim 1, wherein the communication network is a private wireless communication network. 前記通信ネットワークはパブリック無線通信ネットワークであることを特徴とする請求項1に記載の記憶媒体。   The storage medium according to claim 1, wherein the communication network is a public wireless communication network. 前記無線通信ネットワークはオーディオ通話を経路制御するための回線交換機とデータを経路制御するためのパケット交換機とを備え、前記オーディオ通話は前記無線通信ネットワークの前記回線交換機を通じて経路制御され、前記テレビ会議中に交換される前記オーディオデータ及び前記ビデオデータは前記パケット交換機を通じてパケットとして交換され、前記パケットはインターネットプロトコル(IP)通信リンクで前記第1デバイスと前記第2デバイスとの間を輸送されることを特徴とする請求項1に記載の記憶媒体。   The wireless communication network includes a circuit switch for routing audio calls and a packet switch for routing data, and the audio calls are routed through the circuit switches of the wireless communication network during the video conference. The audio data and the video data being exchanged are exchanged as packets through the packet switch, and the packets are transported between the first device and the second device over an Internet Protocol (IP) communication link. The storage medium according to claim 1, wherein: 第1携帯デバイスのコンピュータ可読記憶媒体であって、
前記記憶媒体は、前記第1携帯デバイスと第2デバイスとの間の通話中にテレビ会議をセットアップするためのコンピュータプログラムを格納し、
前記コンピュータプログラムは、
前記第1デバイスと前記第2デバイスとの間の通話中に、前記通話から前記テレビ会議に切り換えるための選択可能ユーザインタフェース(UI)項目を有する第1UIレイアウトを前記第1携帯デバイスで提示するための命令セットと、
前記選択可能UI項目の選択を受け取ったことに応じて、前記第1デバイスによって取り込まれた第1ビデオを有する第2UIレイアウトを提示するための命令セットと、
前記第2デバイスから前記テレビ会議の要求の承諾を受け取ったことに応じて、前記第2UIレイアウトから第3UIレイアウトへの移行を提示するために、前記第2デバイスによって取り込まれた第2ビデオの上に前記第1ビデオを重畳しながら前記第1ビデオのサイズを低減するための命令セットとを有し、
前記第3UIレイアウトは、前記第1ビデオが前記第2ビデオの少なくとも一部に重なるピクチャインピクチャ(PIP)レイアウトを示すことを特徴とする記憶媒体。
A computer-readable storage medium of a first mobile device, comprising:
The storage medium stores a computer program for setting up a video conference during a call between the first mobile device and the second device;
The computer program comprises:
During a call between the first device and the second device, a first UI layout having a selectable user interface (UI) item for switching from the call to the video conference is presented on the first mobile device. Instruction set,
A set of instructions for presenting a second UI layout having a first video captured by the first device in response to receiving the selection of the selectable UI item;
In response to receiving acceptance of the video conferencing request from the second device, a second video captured by the second device is displayed to indicate a transition from the second UI layout to a third UI layout. An instruction set for reducing the size of the first video while superimposing the first video on
The storage medium according to claim 3, wherein the third UI layout indicates a picture-in-picture (PIP) layout in which the first video overlaps at least a part of the second video.
前記第1デバイス及び前記第2デバイスは、1つの無線サービスキャリアの少なくとも1つのパブリック無線通信ネットワークを通じて通話を行うためにプロビジョニングされる携帯デバイスであることを特徴とする請求項18に記載の記憶媒体。   The storage medium of claim 18, wherein the first device and the second device are portable devices provisioned to make a call over at least one public wireless communication network of one wireless service carrier. . 前記PIP表示は、前記第2ビデオを示すメイン表示域と、前記第1ビデオを示す挿入表示域とを有し、前記挿入表示域は前記メイン表示域よりも小さいことを特徴とする請求項18に記載の記憶媒体。   19. The PIP display according to claim 18, wherein the PIP display has a main display area indicating the second video and an insertion display area indicating the first video, and the insertion display area is smaller than the main display area. A storage medium according to claim 1. 前記コンピュータプログラムは、前記第1表示域の後の前記第2ビデオを表示する第2表示域を見せるように前記第1ビデオを表示する第1表示域のサイズを低減することによって、前記第2デバイスからの前記テレビ会議の要求の承諾を受け取ったことに応じて、前記第2ビデオのアニメーション化された初期提示を提供するための命令セットをさらに有することを特徴とする請求項18に記載の記憶媒体。   The computer program reduces the size of the first display area for displaying the first video so as to show a second display area for displaying the second video after the first display area. 19. The method of claim 18, further comprising: providing a set of instructions for providing an animated initial presentation of the second video in response to receiving acceptance of the video conference request from a device. Storage medium. 前記第3UIレイアウトは合成表示を有し、前記合成表示は前記第1ビデオを示す第1表示域と前記第2ビデオを示す第2表示域とを有し、前記第1表示及び前記第2表示は同じサイズであり、並んで位置することを特徴とする請求項18に記載の記憶媒体。   The third UI layout has a composite display, the composite display has a first display area showing the first video and a second display area showing the second video, and the first display and the second display. 19. The storage medium according to claim 18, wherein the storage media have the same size and are located side by side. 前記第1UIレイアウトと、前記第2UIレイアウトと、前記第3UIレイアウトとは、前記第1携帯デバイスのUIの同じ表示域内にあることを特徴とする請求項18に記載の記憶媒体。   19. The storage medium according to claim 18, wherein the first UI layout, the second UI layout, and the third UI layout are within a same display area of a UI of the first mobile device. 第1携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体はコンピュータプログラムを格納し、前記コンピュータプログラムは、
前記第1デバイスによって取り込まれた第1ビデオと、前記第1デバイスとのテレビ会議に参加する第2デバイスによって取り込まれた第2ビデオとを有する合成表示を前記第1デバイスで提示するための命令セットと、
前記テレビ会議中に前記合成表示を変更するための入力を前記第1デバイスで受け取るための命令セットと、
前記受け取った入力に基づいて前記合成表示を変更するための命令セットとを有することを特徴とする記憶媒体。
A computer readable storage medium of a first mobile device, wherein the storage medium stores a computer program, wherein the computer program comprises:
Instructions for presenting at the first device a composite display having a first video captured by the first device and a second video captured by a second device participating in a video conference with the first device. Set and
A set of instructions for receiving input at the first device to change the composite display during the video conference;
An instruction set for changing the composite display based on the received input.
前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記入力を受け取るための命令セットは、(i)前記挿入表示の選択を受け取るための命令セットと、(ii)前記挿入表示の移動方向を示す入力を受け取るための命令セットとを含み、
前記変更するための命令セットは、前記挿入表示を前記移動方向に移動するための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video, wherein the insertion display is smaller than the main display, and At least partially overlap,
The instruction set for receiving the input includes: (i) an instruction set for receiving a selection of the insertion display; and (ii) an instruction set for receiving an input indicating a moving direction of the insertion display.
The storage medium according to claim 24, wherein the instruction set for changing includes an instruction set for moving the insertion display in the moving direction.
前記第1携帯デバイスはタッチセンサ表示画面を備え、
前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記入力を受け取るための命令セットは、(i)前記タッチセンサ表示画面の接触されている位置に前記挿入表示の位置を関連付けるための命令セットと、(ii)前記関連付けに応じて前記挿入表示を選択するための命令セットと、(iii)前記接触が維持されている間に前記タッチセンサ表示画面との接触の位置が移動したことを判定するための命令セットとを含み、
前記合成表示を変更するための命令セットは、前記接触の前記移動方向に前記挿入表示を移動するための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The first mobile device includes a touch sensor display screen,
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video, wherein the insertion display is smaller than the main display, and At least partially overlap,
The instruction set for receiving the input includes: (i) an instruction set for associating the position of the insertion display with a touched position of the touch sensor display screen; and (ii) the insertion display in accordance with the association. An instruction set for selecting, and (iii) an instruction set for determining that the position of the contact with the touch sensor display screen has moved while the contact is maintained,
The storage medium according to claim 24, wherein the instruction set for changing the composite display includes an instruction set for moving the insertion display in the moving direction of the contact.
前記挿入表示を移動するための命令セットは、前記挿入表示の一端を配置するための前記合成表示内の位置として指定された前記合成表示内のスナップ位置に前記挿入が到達していない間、前記画面との接触が終了した後でさえも前記挿入表示を移動するための命令セットを含むことを特徴とする請求項26に記載の記憶媒体。   The instruction set for moving the insertion display includes, while the insertion does not reach a snap position in the composite display designated as a position in the composite display for locating one end of the insertion display, 27. The storage medium of claim 26, including a set of instructions for moving the inserted display even after contact with the screen has been completed. 前記スナップ位置は前記PIP表示の隅であることを特徴とする請求項27に記載の記憶媒体。   The storage medium according to claim 27, wherein the snap position is a corner of the PIP display. 前記挿入表示を移動するための命令セットは、
接触位置の移動が特定量を超えているならば、前記画面との接触が終了した後でさえも前記挿入表示を移動するための命令セットと、
前記接触位置の移動が前記特定量を超えていないならば、前記接触が終了した後に前記挿入表示を移動しないための命令セットとを含むことを特徴とする請求項26に記載の記憶媒体。
An instruction set for moving the insertion display includes:
An instruction set for moving the insertion display even after the contact with the screen is completed, if the movement of the contact position exceeds a specific amount;
27. The storage medium according to claim 26, further comprising: an instruction set for not moving the insertion display after the contact is completed if the movement of the contact position does not exceed the specific amount.
前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記入力を受け取るための命令セットは、(i)前記挿入表示の選択を受け取るための命令セットと、(ii)前記挿入表示の移動を示す入力を受け取るための命令セットとを含み、
前記変更するための命令セットは、前記挿入域を移動するための命令を含むことを特徴とする請求項24に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video, wherein the insertion display is smaller than the main display, and At least partially overlap,
The instruction set for receiving the input includes: (i) an instruction set for receiving a selection of the insertion indication; and (ii) an instruction set for receiving an input indicating movement of the insertion indication.
The storage medium according to claim 24, wherein the instruction set for changing includes an instruction for moving the insertion area.
前記挿入表示は前記PIP表示の第1隅から前記PIP表示の第2隅に移動することを特徴とする請求項24に記載の記憶媒体。   The storage medium according to claim 24, wherein the insertion display moves from a first corner of the PIP display to a second corner of the PIP display. 前記入力は、前記第1デバイスの表示画面が回転した場合に生成され、
前記変更するための命令セットは、前記合成表示を回転するための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The input is generated when a display screen of the first device is rotated,
The storage medium according to claim 24, wherein the instruction set for changing includes an instruction set for rotating the composite display.
前記第1デバイスの前記画面は前記第1デバイスの本体とは無関係に回転可能であることを特徴とする請求項32に記載の記憶媒体。   The storage medium according to claim 32, wherein the screen of the first device is rotatable independently of a main body of the first device. 前記第1デバイスが回転した場合に前記第1デバイスの前記画面が回転することを特徴とする請求項32に記載の記憶媒体。   33. The storage medium according to claim 32, wherein when the first device rotates, the screen of the first device rotates. 前記合成表示を回転するための命令セットは、前記合成表示の中心を通る軸のまわりの前記合成表示の回転を示すアニメーションを提示するための命令セットを含むことを特徴とする請求項32に記載の記憶媒体。   33. The instruction set for rotating the composite display includes an instruction set for presenting an animation showing rotation of the composite display about an axis passing through the center of the composite display. Storage media. 前記アニメーションは、前記合成表示の回転中に前記合成表示の全体が表示されるように前記合成表示を縮小することを含むことを特徴とする請求項35に記載の記憶媒体。   The storage medium according to claim 35, wherein the animation includes reducing the composite display so that the entire composite display is displayed during rotation of the composite display. 前記アニメーションの終了時に前記合成表示は前記画面の向きに合うように拡張されることを特徴とする請求項36に記載の記憶媒体。   The storage medium according to claim 36, wherein at the end of the animation, the composite display is expanded so as to match the orientation of the screen. 前記第1デバイスの画面は第1方向に回転し、前記合成表示は前記第1方向とは反対側の第2方向に回転することを特徴とする請求項32に記載の記憶媒体。   33. The storage medium according to claim 32, wherein the screen of the first device rotates in a first direction, and the composite display rotates in a second direction opposite to the first direction. 前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、
前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記回転の前に前記メイン表示及び前記挿入表示が縦向きである場合に、前記命令セットは前記挿入表示の向きを横向きに変更するための命令を含むことを特徴とする請求項32に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video;
The insertion display is smaller than the main display, overlaps at least a part of the main display,
33. The method of claim 32, wherein if the main display and the insert display are in a portrait orientation prior to the rotation, the instruction set includes an instruction to change the orientation of the insert display to a landscape orientation. Storage medium.
前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、
前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記コンピュータプログラムは、前記第2デバイスの回転の通知を受け取るための命令セットと、前記メイン表示の向きを第1向きから第2向きへ変更するための命令セットとをさらに有することを特徴とする請求項32に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video;
The insertion display is smaller than the main display, overlaps at least a part of the main display,
The computer program further includes an instruction set for receiving a notification of the rotation of the second device and an instruction set for changing the orientation of the main display from a first orientation to a second orientation. The storage medium according to claim 32.
前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、
前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記入力は前記第1デバイスが回転した場合に生成され、
前記変更するための命令セットは、前記PIP表示を回転するための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video;
The insertion display is smaller than the main display, overlaps at least a part of the main display,
The input is generated when the first device is rotated;
The storage medium according to claim 24, wherein the instruction set for changing includes an instruction set for rotating the PIP display.
前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、
前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記入力を受け取るための命令セットは、前記挿入表示の一部の選択と、当該部分の移動とを受け取るための命令セットを含み、
前記変更するための命令セットは、前記挿入表示のサイズを変更するための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video;
The insertion display is smaller than the main display, overlaps at least a part of the main display,
The instruction set for receiving the input includes an instruction set for receiving selection of a part of the insertion display and movement of the part,
The storage medium according to claim 24, wherein the instruction set for changing includes an instruction set for changing a size of the insertion display.
前記部分の移動は、前記挿入表示の中心への前記部分の移動を含み、前記変更は前記挿入表示のサイズの縮小を含むことを特徴とする請求項42に記載の記憶媒体。   43. The storage medium of claim 42, wherein moving the portion includes moving the portion to the center of the insertion display, and wherein the changing includes reducing a size of the insertion display. 前記部分の移動は、前記挿入表示の中心から離れる方向への前記部分の移動を含み、前記変更は前記挿入表示のサイズの拡大を含むことを特徴とする請求項42に記載の記憶媒体。   43. The storage medium according to claim 42, wherein the movement of the part includes moving the part in a direction away from the center of the insertion display, and the change includes increasing the size of the insertion display. 前記選択された部分は前記挿入表示の辺であることを特徴とする請求項42に記載の記憶媒体。   43. The storage medium according to claim 42, wherein the selected portion is a side of the insertion display. 前記選択された部分は前記挿入表示の隅であることを特徴とする請求項42に記載の記憶媒体。   43. The storage medium according to claim 42, wherein the selected portion is a corner of the insertion display. 前記合成表示は、前記第1ビデオを示す挿入表示と前記第2ビデオを示すメイン表示とを有するピクチャインピクチャ(PIP)表示であり、
前記挿入表示は前記メイン表示よりも小さく、前記メイン表示の少なくとも一部に重なり、
前記変更するための命令セットは、前記挿入表示が前記第2ビデオを示すとともに前記メイン表示が前記第1ビデオを示すように、前記挿入表示と前記メイン表示とを入れ換えるための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The composite display is a picture-in-picture (PIP) display having an insertion display indicating the first video and a main display indicating the second video;
The insertion display is smaller than the main display, overlaps at least a part of the main display,
The instruction set for changing includes an instruction set for exchanging the insertion display and the main display so that the insertion display indicates the second video and the main display indicates the first video. The storage medium according to claim 24, wherein:
前記変更するための命令セットは、前記合成表示における前記第1ビデオの位置と前記第2ビデオの位置とを入れ換えるための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。   The storage medium according to claim 24, wherein the instruction set for changing includes an instruction set for exchanging a position of the first video and a position of the second video in the composite display. 前記入力を受け取るための命令セットは、前記第1ビデオを選択するための命令セットを含み、
前記変更するための命令セットは、前記合成表示に関して前記第1ビデオを移動するための命令セットを含むことを特徴とする請求項24に記載の記憶媒体。
The instruction set for receiving the input includes an instruction set for selecting the first video,
The storage medium of claim 24, wherein the instruction set for changing comprises an instruction set for moving the first video with respect to the composite display.
プロセッサによる実行のためにコンピュータプログラムを格納するコンピュータ可読記憶媒体であって、前記コンピュータプログラムは第2携帯デバイスとのテレビ会議において第1携帯デバイスの動作を調整するためのものであり、前記コンピュータプログラムは、
前記第2携帯デバイスのカメラによって取り込まれたビデオを受信するための命令セットと、
前記第2デバイスによって取り込まれた前記ビデオと前記第1デバイスによって取り込まれたビデオとのピクチャインピクチャ表示を前記第1デバイスで表示するための命令セットと、
前記第1携帯デバイスの画面の向きの変更を検出するための命令セットと、
前記第1デバイスの画面の向きの前記変更に基づいて前記第1デバイスの画面の前記PIP表示を回転するための命令セットとを有することを特徴とする記憶媒体。
A computer-readable storage medium storing a computer program for execution by a processor, wherein the computer program is for adjusting operation of a first mobile device in a video conference with a second mobile device, wherein the computer program Is
A set of instructions for receiving video captured by a camera of the second mobile device;
A set of instructions for displaying a picture-in-picture display of the video captured by the second device and the video captured by the first device on the first device;
An instruction set for detecting a change in screen orientation of the first mobile device;
A command set for rotating the PIP display on the screen of the first device based on the change in the orientation of the screen of the first device.
プロセッサによる実行のためにコンピュータプログラムを格納するコンピュータ可読記憶媒体であって、前記コンピュータプログラムは第2携帯デバイスとのテレビ会議において第1携帯デバイスの動作を調整するためのものであり、前記コンピュータプログラムは、
前記第2携帯デバイスによって取り込まれたビデオであって、前記第1携帯デバイスの画面に表示されるビデオを受け取るための命令セットと、
前記第1携帯デバイスによって取り込まれたビデオの別の表示とともに、前記第2携帯デバイスによって取り込まれた前記ビデオの表示を生成するための命令セットと、
前記ビデオのうちの1つの表示を、前記第1携帯デバイスの画面の向きに向かって移動するように指示するユーザ入力を受け取るための命令セットと、
前記ユーザ指示に基づいて、前記ビデオの前記1つの表示を前記第1携帯デバイスの画面の別の位置に移動するための命令セットとを有することを特徴とする記憶媒体。
A computer-readable storage medium storing a computer program for execution by a processor, wherein the computer program is for adjusting operation of a first mobile device in a video conference with a second mobile device, wherein the computer program Is
A set of instructions for receiving video captured by the second mobile device, the video being displayed on a screen of the first mobile device;
A set of instructions for generating a display of the video captured by the second mobile device, along with another display of the video captured by the first mobile device;
A set of instructions for receiving user input instructing to move a display of one of the videos toward a screen orientation of the first mobile device;
Instructions for moving the one display of the video to another location on the screen of the first mobile device based on the user instruction.
共有パイプラインを用いて携帯デバイスの第1カメラ及び第2カメラについての画像を処理する方法であって、
前記携帯デバイスの前記第1カメラによって取り込まれた第1画像集合を受け取る工程と、
前記共有パイプラインの第1構成を用いて前記第1画像集合を処理する工程と、
前記携帯デバイスの前記第2カメラによって取り込まれた第2画像集合を受け取る工程と、
前記第1構成とは異なる前記共有パイプラインの第2構成を用いて前記第2画像集合を処理する工程とを有することを特徴とする方法。
A method of processing images for a first camera and a second camera of a mobile device using a shared pipeline, the method comprising:
Receiving a first set of images captured by the first camera of the mobile device;
Processing the first set of images using a first configuration of the shared pipeline;
Receiving a second set of images captured by the second camera of the mobile device;
Processing the second set of images using a second configuration of the shared pipeline that is different from the first configuration.
前記共有パイプラインの前記第1構成は、前記共有パイプラインに含まれる第1レジスタセットに格納されることを特徴とする請求項52に記載の方法。   The method of claim 52, wherein the first configuration of the shared pipeline is stored in a first set of registers included in the shared pipeline. 前記共有パイプラインの前記第2構成は、前記共有パイプラインに含まれる第2レジスタセットに格納されることを特徴とする請求項53に記載の方法。   The method of claim 53, wherein the second configuration of the shared pipeline is stored in a second set of registers included in the shared pipeline. 前記第1レジスタセットと前記第2レジスタセットとは相異なることを特徴とする請求項54に記載の方法。   The method of claim 54, wherein the first register set and the second register set are different. 前記第1画像集合を処理する工程の前に、前記第1レジスタセットに格納された値を読み出す工程をさらに有することを特徴とする請求項53に記載の方法。   54. The method of claim 53, further comprising reading a value stored in the first set of registers prior to processing the first set of images. 前記第2画像集合を処理する工程の前に、前記第2レジスタセットに格納された値を読み出す工程をさらに有することを特徴とする請求項54に記載の方法。   55. The method of claim 54, further comprising reading a value stored in the second set of registers before processing the second set of images. 共有パイプラインを用いて携帯デバイスの第1カメラ及び第2カメラについての画像を処理する方法であって、
前記第2カメラの垂直帰線消去期間中に、前記共有パイプラインを用いて前記第1カメラからの第1画像を処理する工程と、
前記第1カメラの垂直帰線消去期間中に、前記共有パイプラインを用いて前記第2カメラからの第2画像を処理する工程とを有することを特徴とする方法。
A method of processing images for a first camera and a second camera of a mobile device using a shared pipeline, the method comprising:
Processing a first image from the first camera using the shared pipeline during a vertical blanking interval of the second camera;
Processing the second image from the second camera using the shared pipeline during a vertical blanking interval of the first camera.
前記第1カメラの前記垂直帰線消去期間と前記第2カメラの前記垂直帰線消去期間とは等しいことを特徴とする請求項58に記載の方法。   59. The method of claim 58, wherein the vertical blanking period of the first camera is equal to the vertical blanking period of the second camera. 携帯デバイスのカメラのフレームレートを制御する方法であって、
前記携帯デバイスの前記カメラの第1垂直帰線消去期間を用いて第1フレームレートで第1画像集合を取り込む工程と、
前記カメラの前記第1垂直帰線消去期間を、第2フレームレートで画像を取り込むための第2垂直帰線消去期間に調整する工程と、
前記カメラの前記第2垂直帰線消去期間を用いて前記第2フレームレートで第2画像集合を取り込む工程とを有することを特徴とする方法。
A method for controlling a frame rate of a camera of a mobile device, comprising:
Capturing a first set of images at a first frame rate using a first vertical blanking interval of the camera of the mobile device;
Adjusting the first vertical blanking interval of the camera to a second vertical blanking interval for capturing an image at a second frame rate;
Capturing a second set of images at the second frame rate using the second vertical blanking interval of the camera.
テレビ会議中に前記第1画像集合を前記第1フレームレートで第2デバイスへ伝送する工程と、
前記テレビ会議中に前記第2画像集合を前記第2フレームレートで前記第2デバイスへ伝送する工程とをさらに有することを特徴とする請求項60に記載の方法。
Transmitting the first set of images to the second device at the first frame rate during a video conference;
Transmitting the second set of images to the second device at the second frame rate during the videoconference.
少なくとも第1カメラ及び第2カメラを有する携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体は前記カメラによって取り込まれたビデオピクチャを符号化するためのコンピュータプログラムを格納し、前記コンピュータプログラムは、
前記第1カメラの1つの特性を定量化する第1値に少なくとも基づく第1レートコントローラパラメータを識別するための命令セットと、
前記第1カメラによって取り込まれたビデオピクチャを符号化するためのビットレートを調整するようにレートコントローラ集合を構成するために前記第1レートコントローラパラメータを使用するための命令セットと、
前記第2カメラの同じ特性を定量化する第2値に少なくとも基づく第2レートコントローラパラメータを識別するための命令セットであって、前記第1値と前記第2値とは相異なり、この違いにより前記第1レートコントローラパラメータと前記第2レートコントローラパラメータとは相異なる、命令セットと、
前記第2カメラによって取り込まれたビデオピクチャを符号化するためのビットレートを調整するように前記レートコントローラ集合を構成するために前記第2レートコントローラパラメータを使用するための命令セットとを有することを特徴とする記憶媒体。
A computer readable storage medium for a portable device having at least a first camera and a second camera, the storage medium storing a computer program for encoding a video picture captured by the camera, wherein the computer program comprises:
A set of instructions for identifying a first rate controller parameter based at least on a first value quantifying one characteristic of the first camera;
A set of instructions for using the first rate controller parameters to configure a rate controller set to adjust a bit rate for encoding a video picture captured by the first camera;
A set of instructions for identifying a second rate controller parameter based at least on a second value quantifying the same characteristic of the second camera, wherein the first value and the second value are different. An instruction set, wherein the first rate controller parameter and the second rate controller parameter are different;
Instructions for using the second rate controller parameters to configure the rate controller set to adjust a bit rate for encoding a video picture captured by the second camera. Characteristic storage medium.
前記レートコントローラ集合は1つのレートコントローラを含むことを特徴とする請求項62に記載の記憶媒体。   63. The storage medium of claim 62, wherein the rate controller set includes one rate controller. 前記レートコントローラ集合を構成するために前記第1レートコントローラパラメータを使用するための命令セットは、第1レートコントローラを構成するための命令セットを含み、前記レートコントローラ集合を構成するために前記第2レートコントローラパラメータを使用するための命令セットは、第2レートコントローラを構成するための命令セットを含むことを特徴とする請求項62に記載の記憶媒体。   An instruction set for using the first rate controller parameter to configure the rate controller set includes an instruction set for configuring a first rate controller, and the second set of instructions for configuring the rate controller set. 63. The storage medium of claim 62, wherein the instruction set for using rate controller parameters includes an instruction set for configuring a second rate controller. 前記第1レートコントローラパラメータを識別するための命令セットは、前記第1レートコントローラパラメータを計算するための命令セットを含むことを特徴とする請求項62に記載の記憶媒体。   63. The storage medium of claim 62, wherein the instruction set for identifying the first rate controller parameter includes an instruction set for calculating the first rate controller parameter. 前記第1カメラ及び前記第2カメラの前記特性は、前記カメラに生じたピクチャアーチファクト量を表すカメラのノイズであることを特徴とする請求項62に記載の記憶媒体。   63. The storage medium according to claim 62, wherein the characteristics of the first camera and the second camera are camera noises representing an amount of picture artifact generated in the cameras. 前記第1カメラ及び前記第2カメラの前記特性は、カメラの解像度であることを特徴とする請求項62に記載の記憶媒体。   63. The storage medium according to claim 62, wherein the characteristic of the first camera and the second camera is a resolution of the camera. 前記第1値及び前記第2値は、前記カメラによって取り込まれたビデオピクチャの符号化における符号化アーチファクトの視認性を定量化する視覚マスキング強度であり、
前記第1レートコントローラパラメータ及び前記第2レートコントローラパラメータは、第1量子化パラメータ及び第2量子化パラメータであることを特徴とする請求項62に記載の記憶媒体。
The first value and the second value are visual masking intensities that quantify the visibility of coding artifacts in encoding a video picture captured by the camera;
63. The storage medium according to claim 62, wherein the first rate controller parameter and the second rate controller parameter are a first quantization parameter and a second quantization parameter.
前記第1カメラ及び前記第2カメラは、前記携帯デバイスがテレビ会議に使用される間にビデオを取り込むためのものであり、
前記コンピュータプログラムは、前記テレビ会議中に前記第1カメラから前記第2カメラに切り換えるための命令をさらに有することを特徴とする請求項62に記載の記憶媒体。
The first camera and the second camera are for capturing video while the mobile device is used for a video conference;
63. The storage medium of claim 62, wherein the computer program further comprises instructions for switching from the first camera to the second camera during the video conference.
前記コンピュータプログラムは、
前記第1カメラからのビデオピクチャを符号化している間に状態情報集合を格納するための命令セットと、
前記第1カメラから前記第2カメラに切り換えた後に、前記第2カメラによって取り込まれた前記ビデオピクチャを符号化するためのビットレートを調整するように前記レートコントローラ集合を構成するために前記状態情報集合を使用するための命令セットとをさらに有することを特徴とする請求項69に記載の記憶媒体。
The computer program comprises:
An instruction set for storing a set of state information while encoding a video picture from the first camera;
The state information for configuring the rate controller set to adjust a bit rate for encoding the video picture captured by the second camera after switching from the first camera to the second camera. 70. The storage medium of claim 69, further comprising: a set of instructions for using the set.
前記状態情報集合は、キャプチャされたビデオピクチャを符号化するための目標ビットレートを含むことを特徴とする請求項70に記載の記憶媒体。   71. The storage medium of claim 70, wherein the set of state information includes a target bit rate for encoding a captured video picture. 前記状態情報集合は、バッファ占有量と、最大バッファ占有量と、最近符号化されたビデオピクチャのサイズに関するデータとのうちの少なくとも1つを含むことを特徴とする請求項70に記載の記憶媒体。   71. The storage medium of claim 70, wherein the state information set includes at least one of a buffer occupancy, a maximum buffer occupancy, and data relating to the size of a recently encoded video picture. . 携帯デバイスであって、
ビデオピクチャを取り込むための第1カメラ及び第2カメラと、
(i)前記第1カメラの特性を定量化する第1値に基づいて識別された第1レートコントローラパラメータに基づく第1構成と、(ii)前記第2カメラの同じ特性を定量化する第2値に基づいて識別された第2レートコントローラパラメータに基づく第2構成とを有するレートコントローラ集合であって、前記第1値と前記第2値とは相異なり、この違いにより前記第1レートコントローラパラメータと前記第2レートコントローラパラメータとは相異なり、前記レートコントローラ集合は前記レートコントローラパラメータに基づいて量子化パラメータを生成する、レートコントローラ集合と、
前記レートコントローラ集合から受け取った前記量子化パラメータを用いてビデオピクチャを符号化するためのビデオエンコーダとを備えることを特徴とする携帯デバイス。
A mobile device,
A first camera and a second camera for capturing a video picture;
(I) a first configuration based on a first rate controller parameter identified based on a first value quantifying a characteristic of the first camera; and (ii) a second configuration quantifying the same characteristic of the second camera. A rate controller set having a second configuration based on a second rate controller parameter identified based on the value, wherein the first value and the second value are different, and the difference causes the first rate controller parameter to be different. And the second rate controller parameter is different, wherein the rate controller set generates a quantization parameter based on the rate controller parameter, a rate controller set,
A video encoder for encoding a video picture using the quantization parameters received from the set of rate controllers.
前記レートコントローラ集合は1つのレートコントローラを含み、前記第1構成と前記第2構成とは前記レートコントローラの相異なる構成であることを特徴とする請求項73に記載の携帯デバイス。   74. The mobile device of claim 73, wherein the rate controller set includes one rate controller, and the first configuration and the second configuration are different configurations of the rate controller. 前記レートコントローラ集合は第1レートコントローラ及び第2レートコントローラを含み、(i)前記第1構成は前記第1レートコントローラの構成であり、(ii)前記第2構成は前記第2レートコントローラの構成であることを特徴とする請求項73に記載の携帯デバイス。   The rate controller set includes a first rate controller and a second rate controller, (i) the first configuration is a configuration of the first rate controller, and (ii) the second configuration is a configuration of the second rate controller. The mobile device of claim 73, wherein: 前記第1値及び前記第2値は、前記カメラによって取り込まれたビデオピクチャの符号化における符号化アーチファクトの視認性を定量化する視覚マスキング強度であり、
前記第1レートコントローラパラメータ及び前記第2レートコントローラパラメータは第1量子化パラメータ及び第2量子化パラメータであることを特徴とする請求項73に記載の携帯デバイス。
The first value and the second value are visual masking intensities that quantify the visibility of coding artifacts in encoding a video picture captured by the camera;
The mobile device of claim 73, wherein the first rate controller parameter and the second rate controller parameter are a first quantization parameter and a second quantization parameter.
前記第1カメラ及び前記第2カメラは、前記携帯デバイスがテレビ会議に使用される間にビデオを取り込むためのものであり、
前記携帯デバイスは、
前記テレビ会議中に一方のカメラから他方のカメラに切り換えることを可能にするためのモジュールと、
何れかのカメラからのビデオピクチャを符号化している間に、状態情報集合を格納するための記憶装置とをさらに備え、
一方のカメラから他方のカメラへの切り換えが行われた後に、前記他方のカメラによって取り込まれた前記ビデオピクチャを符号化するためのビットレートを調整するように前記レートコントローラ集合を構成するために前記状態情報集合が使用されることを特徴とする請求項73に記載の携帯デバイス。
The first camera and the second camera are for capturing video while the mobile device is used for a video conference;
The mobile device comprises:
A module for enabling switching from one camera to another during the video conference;
A storage device for storing a set of state information while encoding a video picture from any of the cameras,
Configuring the rate controller set to adjust a bit rate for encoding the video picture captured by the other camera after a switch from one camera to the other camera is performed. The mobile device of claim 73, wherein a set of state information is used.
前記ビデオエンコーダは、前記量子化パラメータに基づく前記ビデオピクチャの符号化を量子化する量子化器を備えることを特徴とする請求項73に記載の携帯デバイス。   74. The mobile device of claim 73, wherein the video encoder comprises a quantizer that quantizes encoding of the video picture based on the quantization parameter. 前記第1カメラ及び前記第2カメラの前記特性は、前記カメラに生じたピクチャアーチファクト量を表すカメラのノイズであることを特徴とする請求項73に記載の携帯デバイス。   74. The mobile device of claim 73, wherein the characteristics of the first camera and the second camera are camera noises representing an amount of picture artifacts that have occurred in the camera. 前記第1カメラ及び前記第2カメラの前記特性は、カメラの解像度であることを特徴とする請求項73に記載の携帯デバイス。   The mobile device of claim 73, wherein the characteristic of the first camera and the second camera is a camera resolution. 携帯デバイスの第1カメラ及び第2カメラによって取り込まれたビデオを符号化する方法であって、
前記第1カメラの1つの特性を定量化する第1値に少なくとも基づいて第1レートコントローラパラメータを生成するための第1プロセスを規定する工程と、
前記第2カメラの同じ特性を定量化する第2値に少なくとも基づいて第2レートコントローラパラメータを生成するための第2プロセスを規定する工程であって、前記第1値と前記第2値とは相異なる、工程と、
前記生成された第1レートコントローラパラメータ又は前記生成された第2レートコントローラパラメータに基づいて、前記第1カメラ又は前記第2カメラの何れかによって取り込まれたビデオピクチャを符号化するためのビットレートを調整するためのレートコントローラ集合を規定する工程とを有することを特徴とする方法。
A method for encoding video captured by a first camera and a second camera of a mobile device, comprising:
Defining a first process for generating a first rate controller parameter based at least on a first value quantifying one characteristic of the first camera;
Defining a second process for generating a second rate controller parameter based at least on a second value quantifying the same characteristic of the second camera, wherein the first value and the second value are Different processes and
A bit rate for encoding a video picture captured by either the first camera or the second camera based on the generated first rate controller parameter or the generated second rate controller parameter. Defining a set of rate controllers for coordination.
前記レートコントローラ集合は1つのレートコントローラを含み、前記第1構成と前記第2構成とは前記レートコントローラの相異なる構成であることを特徴とする請求項81に記載の方法。   The method of claim 81, wherein the rate controller set includes one rate controller, and wherein the first configuration and the second configuration are different configurations of the rate controller. 前記レートコントローラ集合は第1レートコントローラ及び第2レートコントローラを含み、(i)前記第1構成は前記第1レートコントローラの構成であり、(ii)前記第2構成は前記第2レートコントローラの構成であることを特徴とする請求項81に記載の方法。   The rate controller set includes a first rate controller and a second rate controller, (i) the first configuration is a configuration of the first rate controller, and (ii) the second configuration is a configuration of the second rate controller. The method of claim 81, wherein 第1カメラ及び第2カメラを含む第1携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体は前記第1携帯デバイスと第2デバイスとの間でテレビ会議を行うためのコンピュータプログラムを格納し、前記コンピュータプログラムは、
画像を取り込むために前記第1カメラを選択するための命令セットと、
前記第1カメラによって取り込まれた画像を前記第2デバイスへ伝送するための命令セットと、
前記テレビ会議中に、画像を取り込むために前記第2カメラの選択を受け取るための命令セットと、
前記テレビ会議中に、前記第1カメラによって取り込まれた画像の伝送を終了し、前記第1携帯デバイスの前記第2カメラによって取り込まれた画像を前記第2デバイスへ伝送するための命令セットとを有することを特徴とする記憶媒体。
A computer readable storage medium of a first mobile device including a first camera and a second camera, wherein the storage medium stores a computer program for performing a video conference between the first mobile device and a second device. , The computer program comprises:
An instruction set for selecting the first camera to capture an image;
An instruction set for transmitting an image captured by the first camera to the second device;
A set of instructions for receiving a selection of the second camera to capture an image during the video conference;
A command set for terminating transmission of the image captured by the first camera during the video conference and transmitting the image captured by the second camera of the first mobile device to the second device; A storage medium characterized by having.
前記コンピュータプログラムは、前記第1携帯デバイスの各カメラによって取り込まれた画像を、当該カメラによって取り込まれた前記画像を前記第2デバイスへ伝送する場合にはいつでも、前記第1携帯デバイスのディスプレイに表示するための命令セットをさらに有することを特徴とする請求項84に記載の記憶媒体。   The computer program displays an image captured by each camera of the first mobile device on a display of the first mobile device whenever transmitting the image captured by the camera to the second device. The storage medium of claim 84, further comprising an instruction set for performing 前記コンピュータプログラムは、前記第1カメラによって取り込まれた前記ビデオ画像から、前記第2カメラによって取り込まれた前記ビデオ画像への移行をアニメーション化するための命令セットをさらに有することを特徴とする請求項85に記載の記憶媒体。   The computer program further comprises a set of instructions for animating a transition from the video image captured by the first camera to the video image captured by the second camera. 90. The storage medium according to 85. 前記コンピュータプログラムは、
前記テレビ会議中に前記第2デバイスのカメラによって取り込まれた画像を受け取るための命令セットと、
前記第2デバイスの前記カメラによって取り込まれた前記受信された画像を前記第1携帯デバイスのディスプレイに表示するための命令セットとをさらに有することを特徴とする請求項84に記載の記憶媒体。
The computer program comprises:
A set of instructions for receiving an image captured by the camera of the second device during the video conference;
85. The storage medium of claim 84, further comprising: a set of instructions for displaying the received image captured by the camera of the second device on a display of the first mobile device.
前記コンピュータプログラムは、
前記テレビ会議中に前記第2デバイスのカメラによって取り込まれた画像を受け取るための命令セットと、
前記第2デバイスの前記カメラによって取り込まれた前記受信された画像を、前記テレビ会議中に伝送されている画像を取り込んでいる前記第1携帯デバイスの前記カメラによって取り込まれた画像と同時に前記第1携帯デバイスのディスプレイに表示するための命令セットとをさらに有することを特徴とする請求項84に記載の記憶媒体。
The computer program comprises:
A set of instructions for receiving an image captured by the camera of the second device during the video conference;
The received image captured by the camera of the second device may be combined with the image captured by the camera of the first mobile device capturing an image being transmitted during the videoconference. The storage medium of claim 84, further comprising: a set of instructions for displaying on a display of the mobile device.
前記コンピュータプログラムは、前記第1カメラによって取り込まれて伝送された前記画像を同時に表示しつつ、前記テレビ会議中にカメラを切り換えるように前記第1携帯デバイスに指示するための選択可能ユーザインタフェース項目を同時に表示するための命令セットをさらに有することを特徴とする請求項88に記載の記憶媒体。   The computer program includes a selectable user interface item for instructing the first mobile device to switch cameras during the video conference while simultaneously displaying the image captured and transmitted by the first camera. The storage medium of claim 88, further comprising a set of instructions for displaying simultaneously. 前記第2カメラを選択するための命令セットは、前記第2カメラを選択するように前記第1携帯デバイスに指示するための入力を前記第1携帯デバイスのユーザインタフェースを通じて受け取るための命令セットをさらに有することを特徴とする請求項84に記載の記憶媒体。   The instruction set for selecting the second camera further comprises an instruction set for receiving an input for instructing the first mobile device to select the second camera through a user interface of the first mobile device. 85. The storage medium according to claim 84, comprising: 前記第2カメラを選択するための命令セットは、前記第1カメラから前記第2カメラに切り換えることの要求を前記第2デバイスから受け取るための命令セットをさらに含むことを特徴とする請求項84に記載の記憶媒体。   85. The instruction set for selecting the second camera further comprises an instruction set for receiving a request from the second device to switch from the first camera to the second camera. The storage medium according to the above. 前記第1デバイス及び前記第2デバイスは前記テレビ会議中に制御メッセージを交換し、前記第2デバイスからの前記要求は前記テレビ会議中に交換される前記制御メッセージの1つであることを特徴とする請求項91に記載の記憶媒体。   The first device and the second device exchange control messages during the video conference, and the request from the second device is one of the control messages exchanged during the video conference. 92. The storage medium according to claim 91, wherein 第1カメラ及び第2カメラを含む第1携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体は前記第1携帯デバイスと第2デバイスとの間のテレビ会議を実行するためのコンピュータプログラムを格納し、前記コンピュータプログラムは、
(1)前記第1携帯デバイスのカメラによって取り込まれ、(2)リアルタイムテレビ会議セッション中に前記第2デバイスへ伝送された画像を表示するための表示域と、
前記テレビ会議中に前記第1携帯デバイスの前記カメラを切り換えるための選択可能ユーザインタフェース(UI)項目であって、前記カメラの切り換えが生じた場合に、前記第1携帯デバイスは前記第1携帯デバイスのカメラの一方によって取り込まれた画像の伝送を終了し、前記デバイスのカメラの他方によって取り込まれた画像を前記第2デバイスへ伝送する、選択可能ユーザインタフェース項目と
を有するグラフィカルユーザインタフェース(GUI)を有することを特徴とする記憶媒体。
A computer readable storage medium of a first mobile device including a first camera and a second camera, wherein the storage medium stores a computer program for performing a video conference between the first mobile device and a second device. And the computer program comprises:
(1) a display area for displaying images captured by the camera of the first mobile device and (2) transmitted to the second device during a real-time video conference session;
A selectable user interface (UI) item for switching the camera of the first mobile device during the video conference, wherein the first mobile device is configured to switch the first mobile device when the camera switching occurs. A graphical user interface (GUI) having a selectable user interface item for terminating transmission of an image captured by one of the cameras of the device and transmitting an image captured by the other of the devices to the second device. A storage medium characterized by having.
前記表示域は、前記テレビ会議中に前記第2デバイスによって送信された画像を表示するためのものでもあることを特徴とする請求項93に記載の記憶媒体。   The storage medium of claim 93, wherein the display area is also for displaying an image transmitted by the second device during the video conference. 前記表示域と前記選択可能UI項目とは前記テレビ会議中に同時に表示されることを特徴とする請求項93に記載の記憶媒体。   The storage medium according to claim 93, wherein the display area and the selectable UI item are simultaneously displayed during the video conference. 前記コンピュータプログラムは、テレビ会議中に前記第1携帯デバイスのカメラを切り換えることの要求を前記第2デバイスから受け取るためのネットワークマネージャを有することを特徴とする請求項93に記載の記憶媒体。   The storage medium of claim 93, wherein the computer program comprises a network manager for receiving a request from the second device to switch cameras of the first mobile device during a video conference. 前記第1デバイス及び前記第2デバイスは前記テレビ会議中に制御メッセージを交換し、前記第2デバイスからの前記要求は前記テレビ会議中に交換される前記制御メッセージの1つであることを特徴とする請求項96に記載の記憶媒体。   The first device and the second device exchange control messages during the video conference, and the request from the second device is one of the control messages exchanged during the video conference. 97. The storage medium according to claim 96. 第1携帯デバイスが第2デバイスとテレビ会議を行うためのコンピュータプログラムを規定する方法であって、前記第1携帯デバイスは第1カメラ及び第2カメラを備え、前記方法は、
(1)前記第1携帯デバイスのカメラによって取り込まれ、(2)リアルタイムテレビ会議セッション中に前記第2デバイスへ伝送された画像を表示するための表示域を規定する工程と、
前記テレビ会議中に前記第1携帯デバイスの前記カメラを切り換えるための選択可能ユーザインタフェース(UI)項目を規定する工程であって、前記カメラの切り換えが生じた場合に、前記第1携帯デバイスは前記第1携帯デバイスのカメラの一方によって取り込まれた画像の伝送を終了し、前記デバイスのカメラの他方によって取り込まれた画像を前記第2デバイスへ伝送する、工程とを有することを特徴とする方法。
A method for defining a computer program for a first mobile device to conduct a video conference with a second device, wherein the first mobile device comprises a first camera and a second camera, the method comprising:
(1) defining a display area for displaying images captured by a camera of the first mobile device and transmitted to the second device during a real-time video conference session;
Defining a selectable user interface (UI) item for switching the camera of the first mobile device during the video conference, wherein when the camera switching occurs, the first mobile device is configured to: Terminating the transmission of the image captured by one of the cameras of the first mobile device and transmitting the image captured by the other of the camera of the device to the second device.
前記表示域は、前記テレビ会議中に前記第2デバイスによって送信された画像を表示するためのものでもあることを特徴とする請求項98に記載の方法。   The method of claim 98, wherein the display area is also for displaying an image transmitted by the second device during the video conference. 前記表示域と前記選択可能UI項目とは前記テレビ会議中に同時に表示されることを特徴とする請求項98に記載の方法。   The method of claim 98, wherein the display area and the selectable UI item are displayed simultaneously during the video conference. テレビ会議中に前記第1携帯デバイスのカメラを切り換えることの要求を前記第2デバイスから受け取るためのネットワークマネージャを規定する工程をさらに有することを特徴とする請求項98に記載の方法。   100. The method of claim 98, further comprising defining a network manager to receive a request from the second device to switch cameras of the first mobile device during a video conference. 前記第1デバイス及び前記第2デバイスは前記テレビ会議中に制御メッセージを交換し、前記第2デバイスからの前記要求は前記テレビ会議中に交換される前記制御メッセージの1つであることを特徴とする請求項101に記載の方法。   The first device and the second device exchange control messages during the video conference, and the request from the second device is one of the control messages exchanged during the video conference. 102. The method of claim 101, wherein 第1携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体は第2携帯デバイスとテレビ会議中の前記第1デバイスが前記第2携帯デバイスを遠隔制御することを可能にするためのコンピュータプログラムを格納し、前記コンピュータプログラムは、
前記第1デバイスのカメラによって取り込まれた画像を前記第2デバイスへ送信するための命令セットと、
前記第2デバイスのカメラによって取り込まれた画像を受信するための命令セットと、
前記第2デバイスの前記カメラによって取り込まれた前記画像を変更する動作を実行するように前記第2デバイスに命令するためのコマンドを、リアルタイム通信セッションの通信チャネルを通じて前記第2デバイスへ送信するための命令セットとを有することを特徴とする記憶媒体。
A computer readable storage medium of a first mobile device, the storage medium storing a computer program for enabling the first device to remotely control the second mobile device during a video conference with a second mobile device. Storing the computer program,
A set of instructions for transmitting an image captured by the camera of the first device to the second device;
A set of instructions for receiving an image captured by the camera of the second device;
Transmitting a command to the second device over a communication channel of a real-time communication session to the second device to instruct the second device to perform an operation of modifying the image captured by the camera of the second device. And a set of instructions.
前記通信チャネルは制御チャネルであることを特徴とする請求項103に記載の記憶媒体。   The storage medium according to claim 103, wherein the communication channel is a control channel. 前記動作は露出動作であることを特徴とする請求項103に記載の記憶媒体。   The storage medium according to claim 103, wherein the operation is an exposure operation. 前記動作はフォーカス動作であることを特徴とする請求項103に記載の記憶媒体。   The storage medium according to claim 103, wherein the operation is a focus operation. 前記動作はズーム動作であることを特徴とする請求項103に記載の記憶媒体。   The storage medium according to claim 103, wherein the operation is a zoom operation. 前記コンピュータプログラムは、前記第2デバイスの前記カメラによって取り込まれた前記画像を表示するための命令セットをさらに有することを特徴とする請求項103に記載の記憶媒体。   The storage medium of claim 103, wherein the computer program further comprises a set of instructions for displaying the image captured by the camera of the second device. 前記コマンドは前記第1デバイスのグラフィカルユーザインタフェースを通じて受け取られることを特徴とする請求項103に記載の記憶媒体。   The storage medium of claim 103, wherein the command is received through a graphical user interface of the first device. 前記コマンドは、前記第1デバイスの表示画面において、前記第2デバイスのカメラによって取り込まれた前記画像を表示する位置をタッチすることによって送信されることを特徴とする請求項109に記載の記憶媒体。   110. The storage medium according to claim 109, wherein the command is transmitted by touching a position on the display screen of the first device where the image captured by the camera of the second device is displayed. . 第1携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体は第2携帯デバイスとテレビ会議中の前記第1デバイスが前記第2デバイスを遠隔制御することを可能にするためのコンピュータプログラムを格納し、前記コンピュータプログラムはグラフィカルユーザインタフェース(GUI)を有し、前記GUIは、
リアルタイム通信セッション中に前記第1デバイスのカメラによって取り込まれた画像を表示するための第1表示域と、
前記リアルタイム通信セッション中に前記第2デバイスのカメラによって取り込まれた画像を表示するための第2表示域と、
前記リアルタイム通信セッション中に、前記第2デバイスの前記カメラによって取り込まれた前記画像を変更する動作を実行することを前記第2デバイスに命令するコマンドを前記第2デバイスへ送信するためのユーザインタフェース(UI)項目とを有することを特徴とする記憶媒体。
A computer-readable storage medium for a first mobile device, wherein the storage medium stores a computer program for enabling the first device to remotely control the second device during a video conference with a second mobile device. Wherein the computer program has a graphical user interface (GUI),
A first display area for displaying an image captured by a camera of the first device during a real-time communication session;
A second display area for displaying an image captured by the camera of the second device during the real-time communication session;
A user interface for sending a command to the second device during the real-time communication session to instruct the second device to perform an operation of changing the image captured by the camera of the second device; (UI) item.
前記動作は露出動作であることを特徴とする請求項111に記載の記憶媒体。   The storage medium according to claim 111, wherein the operation is an exposure operation. 前記動作はフォーカス動作であることを特徴とする請求項111に記載の記憶媒体。   The storage medium according to claim 111, wherein the operation is a focus operation. 前記動作はズーム動作であることを特徴とする請求項111に記載の記憶媒体。   The storage medium according to claim 111, wherein the operation is a zoom operation. 前記コマンドは前記リアルタイム通信セッションの通信チャネルを通じて送信されることを特徴とする請求項111に記載の記憶媒体。   The storage medium of claim 111, wherein the command is transmitted over a communication channel of the real-time communication session. 前記通信チャネルは前記リアルタイム通信セッションの制御チャネルであることを特徴とする請求項115に記載の記憶媒体。   The storage medium of claim 115, wherein the communication channel is a control channel for the real-time communication session. 前記第1表示域は前記第2表示域内の挿入であることを特徴とする請求項111に記載の記憶媒体。   The storage medium of claim 111, wherein the first display area is an insertion within the second display area. 前記第1携帯デバイスがテレビ会議中に第2携帯デバイスを遠隔制御することを可能にするためのコンピュータプログラムを規定する方法であって、
前記第2携帯デバイスから取り込まれたビデオを前記第1携帯デバイスで表示するための表示を規定する工程と、
前記第2デバイスの前記カメラによって取り込まれた前記画像を変更する動作を前記テレビ会議中に実行するように前記第2携帯デバイスに指示するための入力を前記第1携帯デバイスで受け取るためのカメラ調整動作を規定する工程と
を有することを特徴とする方法。
A method for defining a computer program for enabling said first mobile device to remotely control a second mobile device during a video conference, comprising:
Defining a display for displaying video captured from the second mobile device on the first mobile device;
Camera adjustment for receiving at the first mobile device an input to instruct the second mobile device to perform an operation of changing the image captured by the camera of the second device during the video conference. Defining an operation.
前記受け取った入力を前記テレビ会議中に前記第2携帯デバイスの第2ネットワークマネージャに中継する、前記第1携帯デバイスのための第1ネットワークマネージャを規定する工程をさらに有することを特徴とする請求項118に記載の方法。   The method of claim 1, further comprising: defining a first network manager for the first mobile device, relaying the received input to a second network manager of the second mobile device during the video conference. 118. The method according to 118. 前記第1ネットワークマネージャはインターネットプロトコル(IP)で送信されるパケットを通じて前記テレビ会議中に前記第2ネットワークマネージャにデータを中継し、前記パケットは前記第2携帯デバイスの前記動作を制御するために前記第1携帯デバイスで受け取った入力データを中継するための制御パケットを含むことを特徴とする請求項119に記載の方法。   The first network manager relays data to the second network manager during the videoconference via a packet transmitted in Internet Protocol (IP), wherein the packet is used to control the operation of the second mobile device. 120. The method of claim 119, comprising a control packet for relaying input data received at a first mobile device. 前記テレビ会議中に前記表示の位置が接触されたことを検出することによって前記入力を受け取るためのユーザインタフェースを規定する工程をさらに有することを特徴とする請求項118に記載の方法。   119. The method of claim 118, further comprising defining a user interface for receiving the input by detecting that the location of the display has been touched during the video conference. 前記動作は露出動作であることを特徴とする請求項118に記載の方法。   The method of claim 118, wherein the operation is an exposure operation. 第1携帯デバイスのコンピュータ可読記憶媒体であって、前記記憶媒体は前記第1携帯デバイスと第2デバイスとの間のテレビ会議を管理するためのコンピュータプログラムを格納し、前記コンピュータプログラムは、
通信チャネルを通じて前記第2デバイスへテレビ会議データを伝送するための第1許容ビットレートを識別するための命令セットと、
前記第1許容ビットレートよりも小さい現在のビットレートを識別するための命令セットと、
前記通信チャネルに関するネットワークデータを前記第2デバイスから受信するための命令セットと、
前記受信したネットワークデータから、前記通信チャネルが前記現在のビットレートの増加を維持することを判定するための命令セットと、
前記現在のビットレートを増加するための命令セットと、
前記通信チャネルが前記現在のビットレートの増加を維持しないという判定がなされるまで、前記受信動作、前記判定動作及び前記増加動作を反復して実行するための命令セットと
を有することを特徴とする記憶媒体。
A computer readable storage medium of a first mobile device, wherein the storage medium stores a computer program for managing a video conference between the first mobile device and a second device, wherein the computer program comprises:
A set of instructions for identifying a first allowable bit rate for transmitting video conference data to the second device over a communication channel;
An instruction set for identifying a current bit rate that is less than the first allowable bit rate;
An instruction set for receiving network data for the communication channel from the second device;
A set of instructions for determining from the received network data that the communication channel maintains the current bit rate increase;
An instruction set for increasing the current bit rate;
An instruction set for repeatedly performing the receiving operation, the determining operation, and the increasing operation until it is determined that the communication channel does not maintain the current bit rate increase. Storage medium.
前記第2デバイスは、制限された帯域幅を有する無線通信ネットワークを通じて前記第1携帯デバイスと通信する携帯デバイスであることを特徴とする請求項123に記載の記憶媒体。   The storage medium of claim 123, wherein the second device is a mobile device that communicates with the first mobile device through a wireless communication network having a limited bandwidth. 前記受信動作、前記判定動作及び前記増加動作を反復して実行するための命令セットは、前記現在のビットレートの先の漸増に基づいて前記第2デバイスから正確なネットワークデータが中継されることを可能にする特定の時間レートで繰り返し実行されることを特徴とする請求項123に記載の記憶媒体。   An instruction set for repeatedly performing the receiving operation, the determining operation, and the increasing operation is that accurate network data is relayed from the second device based on the previous gradual increase of the current bit rate. 128. The storage medium of claim 123, wherein the storage medium is executed repeatedly at a specific time rate that allows. 前記コンピュータプログラムは、
前記受信動作、前記判定動作及び前記増加動作の反復実行が終了した後でさえも、前記第2デバイスから前記通信チャネルに関するネットワークデータを受信し、前記受信したネットワークデータから、前記通信チャネルの利用可能なリソースにおける変化を識別するための命令セットと、
前記通信チャネルの前記利用可能なリソースの前記識別された変化に基づいて前記現在のビットレートを増加又は減少するための命令セットと
をさらに有することを特徴とする請求項123に記載の記憶媒体。
The computer program comprises:
Even after the repetitive execution of the receiving operation, the determining operation, and the increasing operation is completed, receiving network data related to the communication channel from the second device, and using the received network data to enable use of the communication channel. A set of instructions to identify changes in various resources;
The storage medium of claim 123, further comprising: a set of instructions for increasing or decreasing the current bit rate based on the identified change in the available resources of the communication channel.
前記判定するための命令セットは、前記現在のビットレートが前記第1許容ビットレートに到達したことを判定するための命令セットを含むことを特徴とする請求項123に記載の記憶媒体。   The storage medium according to claim 123, wherein the instruction set for determining includes an instruction set for determining that the current bit rate has reached the first allowable bit rate. 前記受信したデータは、前記第2デバイスによって提供された利用可能な帯域幅測定データを含み、
前記判定するための命令セットは、前記第1許容ビットレートよりも低い第2許容ビットレートであって、前記第2デバイスによって提供された前記利用可能な帯域幅測定データから導出される第2許容ビットレートに前記現在のビットレートが到達したことを判定するための命令セットを含むことを特徴とする請求項123に記載の記憶媒体。
The received data includes available bandwidth measurement data provided by the second device;
The set of instructions for determining is a second allowed bit rate lower than the first allowed bit rate, the second allowed bit rate being derived from the available bandwidth measurement data provided by the second device. 124. The storage medium of claim 123, comprising an instruction set for determining that the current bit rate has reached a bit rate.
前記受信したデータは、前記第2デバイスによって計算された片道信号遅延を含むことを特徴とする請求項123に記載の記憶媒体。   The storage medium of claim 123, wherein the received data includes a one-way signal delay calculated by the second device. 前記片道信号遅延は、前記第1携帯デバイスから前記第2デバイスへ送信されたオーディオパケットの遅延を検査することによって、前記第2デバイスにより計算されることを特徴とする請求項129に記載の記憶媒体。   130. The storage of claim 129, wherein the one-way signal delay is calculated by the second device by examining a delay of an audio packet transmitted from the first mobile device to the second device. Medium. 前記オーディオパケット遅延は、前記オーディオパケット内の時間コードの差を、前記第2デバイスによる前記オーディオパケットの受信における差に対して検査することによって検査されることを特徴とする請求項130に記載の記憶媒体。   131. The audio packet delay of claim 130, wherein the audio packet delay is checked by checking a time code difference in the audio packet for a difference in receiving the audio packet by the second device. Storage medium. 前記受信したデータは、前記第2デバイスが前記パケットを受信した時間における差に対して、前記第2デバイスへ送信されたビデオパケットのサイズを検査することによって、前記第2デバイスによって計算される利用可能な帯域幅測定データを含むことを特徴とする請求項123に記載の記憶媒体。   The received data is used by the second device by examining a size of a video packet sent to the second device against a difference in a time at which the second device received the packet. 128. The storage medium of claim 123, comprising possible bandwidth measurement data. 前記受信したネットワークデータはパケット損失データを含むことを特徴とする請求項123に記載の記憶媒体。   The storage medium of claim 123, wherein the received network data includes packet loss data. 前記受信したネットワークデータはラウンドトリップ遅延時間データを含むことを特徴とする請求項123に記載の記憶媒体。   The storage medium of claim 123, wherein the received network data includes round trip delay time data. 前記ネットワークデータを受信するための命令セットは、リアルタイムトランスポートプロトロル(RTP)ストリームで送信され、RTP拡張ヘッダによってRTPストリームで識別されたネットワークデータを受信するための命令セットを含むことを特徴とする請求項123に記載の記憶媒体。   The instruction set for receiving the network data includes an instruction set for transmitting network data transmitted in a real-time transport protocol (RTP) stream and identified in the RTP stream by an RTP extension header. The storage medium according to claim 123, wherein 第1携帯デバイスと第2デバイスとの間のテレビ会議を管理するために第1携帯デバイスによって実行される方法であって、
通信チャネルを通じてテレビ会議データを前記第2デバイスへ伝送するための第1許容ビットレートを識別する工程と、
前記第1許容ビットレートよりも小さい現在のビットレートを識別する工程と、
前記通信チャネルに関するネットワークデータを前記第2デバイスから受信する工程と、
前記受信したネットワークデータから、前記通信チャネルが前記現在のビットレートの増加を維持することを判定する工程と、
前記現在のビットレートを増加する工程と、
前記通信チャネルが前記現在のビットレートの増加を維持しないという判定がなされるまで、前記受信動作、前記判定動作及び前記増加動作を反復して実行する工程とを有することを特徴とする方法。
A method performed by a first mobile device to manage a video conference between a first mobile device and a second device, the method comprising:
Identifying a first allowable bit rate for transmitting video conference data to the second device over a communication channel;
Identifying a current bit rate that is less than the first allowable bit rate;
Receiving network data for the communication channel from the second device;
Determining from the received network data that the communication channel maintains the current bit rate increase;
Increasing the current bit rate;
Repeatedly performing the receiving operation, the determining operation, and the increasing operation until it is determined that the communication channel does not maintain the current bit rate increase.
前記第2デバイスは、制限された帯域幅を有する無線通信ネットワークを通じて前記第1携帯デバイスと通信する携帯デバイスであることを特徴とする請求項136に記載の方法。   139. The method of claim 136, wherein the second device is a mobile device communicating with the first mobile device over a wireless communication network having a limited bandwidth. 前記受信動作、前記判定動作及び前記増加動作を反復して実行する工程は、前記現在のビットレートの先の漸増に基づいて前記第2デバイスから正確なネットワークデータが中継されることを可能にする特定の時間レートで繰り返し実行されることを特徴とする請求項136に記載の方法。   The step of repeatedly performing the receiving operation, the determining operation, and the increasing operation enables accurate network data to be relayed from the second device based on the previous gradual increase of the current bit rate. 139. The method of claim 136, wherein the method is performed repeatedly at a specific time rate. 前記受信動作、前記判定動作及び前記増加動作の反復実行が終了した後でさえも、前記第2デバイスから前記通信チャネルに関するネットワークデータを受信し、前記受信したネットワークデータから、前記通信チャネルの利用可能なリソースにおける変化を識別する工程と、
前記通信チャネルの前記利用可能なリソースの前記識別された変化に基づいて前記現在のビットレートを増加又は減少する工程とをさらに有することを特徴とする請求項136に記載の方法。
Even after the repetitive execution of the receiving operation, the determining operation, and the increasing operation is completed, receiving network data related to the communication channel from the second device, and using the received network data to enable use of the communication channel. Identifying changes in critical resources;
136. The method of claim 136, further comprising: increasing or decreasing the current bit rate based on the identified change in the available resources of the communication channel.
前記判定する工程は、前記現在のビットレートが前記第1許容ビットレートに到達したことを判定する工程を含むことを特徴とする請求項136に記載の方法。   138. The method of claim 136, wherein the determining comprises determining that the current bit rate has reached the first allowed bit rate. 前記受信したデータは、前記第2デバイスによって提供された利用可能な帯域幅測定データを含み、
前記判定する工程は、前記第1許容ビットレートよりも低い第2許容ビットレートであって、前記第2デバイスによって提供された前記利用可能な帯域幅測定データから導出される第2許容ビットレートに前記現在のビットレートが到達したことを判定する工程を含むことを特徴とする請求項136に記載の方法。
The received data includes available bandwidth measurement data provided by the second device;
The step of determining may include a second allowable bit rate lower than the first allowable bit rate, the second allowable bit rate being derived from the available bandwidth measurement data provided by the second device. 137. The method of claim 136, comprising determining that the current bit rate has been reached.
前記受信したデータは、前記第2デバイスによって計算された片道信号遅延を含むことを特徴とする請求項136に記載の方法。   137. The method of claim 136, wherein the received data includes a one-way signal delay calculated by the second device. 前記片道信号遅延は、前記第1携帯デバイスから前記第2デバイスへ送信されたオーディオパケットの遅延を検査することによって、前記第2デバイスにより計算されることを特徴とする請求項142に記載の方法。   143. The method of claim 142, wherein the one-way signal delay is calculated by the second device by examining a delay of an audio packet transmitted from the first portable device to the second device. . 前記受信したデータは、前記第2デバイスが前記パケットを受信した時間における差に対して、前記第2デバイスへ送信されたビデオパケットのサイズを検査することによって、前記第2デバイスによって計算される利用可能な帯域幅測定データを含むことを特徴とする請求項136に記載の方法。   The received data is used by the second device by examining a size of a video packet sent to the second device against a difference in a time at which the second device received the packet. 137. The method of claim 136, including including possible bandwidth measurement data. 前記ネットワークデータを受信する工程は、リアルタイムトランスポートプロトロル(RTP)ストリームで送信され、RTP拡張ヘッダによってRTPストリームで識別されたネットワークデータを受信する工程を含むことを特徴とする請求項136に記載の方法。   138. The method of claim 136, wherein receiving the network data comprises receiving network data transmitted in a real-time transport protocol (RTP) stream and identified in the RTP stream by an RTP extension header. the method of.
JP2019182484A 2010-04-07 2019-10-02 Establishing a video conference during a call Active JP6949917B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021154573A JP7194243B2 (en) 2010-04-07 2021-09-22 Establishing a video conference during a call

Applications Claiming Priority (17)

Application Number Priority Date Filing Date Title
US32187110P 2010-04-07 2010-04-07
US61/321,871 2010-04-07
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,771 US8941706B2 (en) 2010-04-07 2010-06-06 Image processing for a dual camera mobile device
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 2010-06-06
US12/794,775 2010-06-06
US12/794,773 2010-06-06
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 2010-06-06
US12/794,768 2010-06-06
US12/794,774 2010-06-06
US12/794,766 2010-06-06
US12/794,766 US8744420B2 (en) 2010-04-07 2010-06-06 Establishing a video conference during a phone call
US12/794,774 US9264659B2 (en) 2010-04-07 2010-06-06 Video conference network management for a mobile device
JP2018127760A JP2018191307A (en) 2010-04-07 2018-07-04 Establishing video conference during phone call

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2018127760A Division JP2018191307A (en) 2010-04-07 2018-07-04 Establishing video conference during phone call

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021154573A Division JP7194243B2 (en) 2010-04-07 2021-09-22 Establishing a video conference during a call

Publications (2)

Publication Number Publication Date
JP2020017995A true JP2020017995A (en) 2020-01-30
JP6949917B2 JP6949917B2 (en) 2021-10-13

Family

ID=44760640

Family Applications (7)

Application Number Title Priority Date Filing Date
JP2013503731A Pending JP2013524684A (en) 2010-04-07 2010-09-24 Establishing a video conference during a call
JP2014212867A Active JP6335094B2 (en) 2010-04-07 2014-10-17 Establishing a video conference during a call
JP2016151497A Active JP6367272B2 (en) 2010-04-07 2016-08-01 Establishing a video conference during a call
JP2018127760A Pending JP2018191307A (en) 2010-04-07 2018-07-04 Establishing video conference during phone call
JP2019182484A Active JP6949917B2 (en) 2010-04-07 2019-10-02 Establishing a video conference during a call
JP2021154573A Active JP7194243B2 (en) 2010-04-07 2021-09-22 Establishing a video conference during a call
JP2022197327A Pending JP2023036677A (en) 2010-04-07 2022-12-09 Establishing video conference during phone call

Family Applications Before (4)

Application Number Title Priority Date Filing Date
JP2013503731A Pending JP2013524684A (en) 2010-04-07 2010-09-24 Establishing a video conference during a call
JP2014212867A Active JP6335094B2 (en) 2010-04-07 2014-10-17 Establishing a video conference during a call
JP2016151497A Active JP6367272B2 (en) 2010-04-07 2016-08-01 Establishing a video conference during a call
JP2018127760A Pending JP2018191307A (en) 2010-04-07 2018-07-04 Establishing video conference during phone call

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2021154573A Active JP7194243B2 (en) 2010-04-07 2021-09-22 Establishing a video conference during a call
JP2022197327A Pending JP2023036677A (en) 2010-04-07 2022-12-09 Establishing video conference during phone call

Country Status (11)

Country Link
US (14) US8744420B2 (en)
EP (2) EP2556665B1 (en)
JP (7) JP2013524684A (en)
KR (10) KR101491428B1 (en)
CN (1) CN104270597B (en)
AU (1) AU2010350749B2 (en)
BR (1) BR112012025746B1 (en)
HK (2) HK1162796A1 (en)
MX (3) MX2012011623A (en)
TW (4) TWI439133B (en)
WO (1) WO2011126511A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102310577B1 (en) * 2020-06-29 2021-10-13 주식회사 씨앤에이아이 Apparatus and method for managing RTP packets

Families Citing this family (702)

* 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 (en) 2006-03-06 2012-09-05 思科技术公司 System and method for access authentication in a mobile wireless network
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 (en) * 2008-10-03 2013-02-21 Alpha Imaging Technology Corp Multi-media processor, hand-held electrical communication device and image processing method thereof
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 (en) * 2009-06-16 2010-12-24 삼성전자주식회사 Remote controller and method for display
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 (en) * 2009-09-03 2011-03-10 Deutsche Telekom Ag Automatic voice chat system in mobile networks with location reference
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
TWI439960B (en) 2010-04-07 2014-06-01 Apple Inc Avatar editing environment
US8725880B2 (en) 2010-04-07 2014-05-13 Apple, Inc. Establishing online communication sessions between client computing devices
US8583149B2 (en) 2010-04-07 2013-11-12 Apple Inc. Registering email addresses for online communication sessions
US8744420B2 (en) 2010-04-07 2014-06-03 Apple Inc. Establishing a video conference during a phone call
US8751667B2 (en) 2010-04-07 2014-06-10 Apple Inc. Supporting hands-free services via a hands-free device for IP video calls
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
US8355039B2 (en) 2010-07-06 2013-01-15 DigitalOptics Corporation Europe Limited Scene background blurring including range measurement
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 (en) * 2010-09-15 2011-01-19 中兴通讯股份有限公司 Method and device for recording videos in video call
US9078082B2 (en) * 2010-09-24 2015-07-07 Amazon Technologies, Inc. Interacting with cloud-based applications using unrelated devices
DE102010041569B4 (en) * 2010-09-28 2017-04-06 Leica Geosystems Ag Digital camera system, color filter element for digital camera system, method for determining deviations between the cameras of a digital camera system and image processing unit for digital camera system
WO2012043756A1 (en) * 2010-09-30 2012-04-05 楽天株式会社 Viewing device, viewing method, non-transitory computer-readable recording medium whereon program is recorded, and script program
US20120083314A1 (en) * 2010-09-30 2012-04-05 Ng Hock M Multimedia Telecommunication Apparatus With Motion Tracking
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
US9405444B2 (en) 2010-10-01 2016-08-02 Z124 User interface with independent drawer control
US9588545B2 (en) 2010-10-01 2017-03-07 Z124 Windows position control for phone applications
US20120218202A1 (en) 2010-10-01 2012-08-30 Sanjiv Sirpal 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
US9436217B2 (en) 2010-10-01 2016-09-06 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 (en) * 2010-10-11 2012-05-09 宏达国际电子股份有限公司 Projection method and movement device thereof
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
KR20120040410A (en) * 2010-10-19 2012-04-27 한국전자통신연구원 Service provide server, broadcast/multicast service node and method for providing micro blog service thereof
US20120092444A1 (en) * 2010-10-19 2012-04-19 Cisco Technology, Inc. System and method for providing videomail in a network environment
US20120092381A1 (en) * 2010-10-19 2012-04-19 Microsoft Corporation Snapping User Interface Elements Based On Touch Input
KR101738105B1 (en) * 2010-10-22 2017-05-22 삼성디스플레이 주식회사 Image Processing Device, Image Processing Method and Flat Panel Display
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
US9143725B2 (en) 2010-11-15 2015-09-22 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US8730297B2 (en) 2010-11-15 2014-05-20 Cisco Technology, Inc. System and method for providing camera functions 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
US8902244B2 (en) * 2010-11-15 2014-12-02 Cisco Technology, Inc. System and method for providing enhanced graphics 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 (en) * 2010-12-28 2012-07-04 英华达(上海)科技有限公司 Mobile terminal device capable of automatically switching operation mode
US9429940B2 (en) 2011-01-05 2016-08-30 Sphero, Inc. Self propelled device with magnetic coupling
US9218316B2 (en) 2011-01-05 2015-12-22 Sphero, Inc. Remotely controlling a self-propelled device in a virtualized environment
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
US8751063B2 (en) 2011-01-05 2014-06-10 Orbotix, Inc. Orienting a user interface of a controller for operating a self-propelled device
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
KR101739379B1 (en) * 2011-01-11 2017-05-24 삼성전자주식회사 Digital photographing apparatus and control method thereof
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
US8539086B2 (en) 2011-03-23 2013-09-17 Color Labs, Inc. User device group formation
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
CA2833544A1 (en) * 2011-04-18 2012-10-26 Eyesee360, Inc. Apparatus and method for panoramic video imaging with mobile computing devices
KR101764372B1 (en) 2011-04-19 2017-08-03 삼성전자주식회사 Apparatus and method for compositing image in a portable terminal
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
EP2710340B1 (en) * 2011-05-13 2019-04-03 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 (en) * 2011-05-27 2015-12-09 ソニー株式会社 Information processing apparatus, information processing method, and computer program
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 (en) * 2011-09-14 2013-10-07 엘지전자 주식회사 Mobile terminal and method for operation control
US8327012B1 (en) 2011-09-21 2012-12-04 Color Labs, Inc Content sharing via multiple content distribution servers
US20130076654A1 (en) 2011-09-27 2013-03-28 Imerj LLC Handset states and state diagrams: open, closed transitional and easel
US9152970B1 (en) 2011-09-27 2015-10-06 Amazon Technologies, Inc. Remote co-browsing session management
US8861893B2 (en) * 2011-09-27 2014-10-14 The Boeing Company Enhancing video using super-resolution
US9383958B1 (en) * 2011-09-27 2016-07-05 Amazon Technologies, Inc. Remote co-browsing session management
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 (en) * 2011-10-14 2016-08-24 キヤノン株式会社 IMAGING DEVICE AND IMAGING DEVICE CONTROL METHOD
US9448708B1 (en) * 2011-10-19 2016-09-20 Google Inc. Theming for virtual collaboration
EP2772010B1 (en) * 2011-10-24 2018-09-05 T-Mobile USA, Inc. Optimizing video-call quality of service
US9118801B2 (en) 2011-10-24 2015-08-25 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 (en) * 2011-11-02 2015-07-11 Quanta Comp Inc Video conference system, video conference apparatus and method thereof
US9652448B2 (en) 2011-11-10 2017-05-16 Blackberry Limited Methods and systems for removing or replacing on-keyboard prediction candidates
US9310889B2 (en) 2011-11-10 2016-04-12 Blackberry Limited Touchscreen keyboard predictive display and generation of a set of characters
US9715489B2 (en) 2011-11-10 2017-07-25 Blackberry Limited Displaying a prediction candidate after a typing mistake
US9122672B2 (en) 2011-11-10 2015-09-01 Blackberry Limited In-letter word prediction for virtual keyboard
US9313100B1 (en) 2011-11-14 2016-04-12 Amazon Technologies, Inc. Remote browsing session management
CN103108197A (en) 2011-11-14 2013-05-15 辉达公司 Priority level compression method and priority level compression system for three-dimensional (3D) video wireless display
JP5884421B2 (en) * 2011-11-14 2016-03-15 ソニー株式会社 Image processing apparatus, image processing apparatus control method, and program
US8947493B2 (en) 2011-11-16 2015-02-03 Cisco Technology, Inc. System and method for alerting a participant in a video conference
US9430119B2 (en) 2011-11-26 2016-08-30 Douzen, Inc. Systems and methods for organizing and displaying hierarchical data structures in computing devices
US9557892B2 (en) * 2011-11-26 2017-01-31 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
US9215405B2 (en) * 2011-12-09 2015-12-15 Hewlett-Packard Development Company, L.P. 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
US9557913B2 (en) 2012-01-19 2017-01-31 Blackberry Limited Virtual keyboard display having a ticker proximate to the virtual keyboard
EP2618248B1 (en) 2012-01-19 2017-08-16 BlackBerry Limited Virtual keyboard providing an indication of received input
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
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
US8675113B2 (en) 2012-02-24 2014-03-18 Research In Motion Limited User interface for a digital camera
EP2631768B1 (en) * 2012-02-24 2018-07-11 BlackBerry Limited Portable electronic device including touch-sensitive display and method of controlling same
US20130227149A1 (en) * 2012-02-24 2013-08-29 Intel Mobile Communications GmbH Method for providing a communication session and device
TWI499935B (en) * 2012-08-30 2015-09-11 Realtek Semiconductor Corp Multimedia interaction system and related computer program product capable of avoiding unexpected interaction behavior
TWI485576B (en) * 2012-03-02 2015-05-21 Realtek Semiconductor Corp Multimedia interaction system and related computer program product capable of avoiding unexpected interaction behavior
US9041727B2 (en) 2012-03-06 2015-05-26 Apple Inc. User interface tools for selectively applying effects to image
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
JP6123274B2 (en) * 2012-03-08 2017-05-10 株式会社リコー Imaging device
US9489827B2 (en) 2012-03-12 2016-11-08 Cisco Technology, Inc. System and method for distributing content in a video surveillance network
JP6027674B2 (en) 2012-03-26 2016-11-16 華為技術有限公司Huawei Technologies Co.,Ltd. Data transmission method, device and system
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 (en) * 2012-04-26 2013-10-30 鸿富锦精密工业(深圳)有限公司 Network device and method for adjusting bandwidth dynamically thereof
KR101452038B1 (en) * 2012-04-26 2014-10-22 삼성전기주식회사 Mobile device and display controlling method thereof
KR101858604B1 (en) * 2012-04-30 2018-05-17 엘지전자 주식회사 Mobile terminal and control method thereof
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
US9354805B2 (en) 2012-04-30 2016-05-31 Blackberry Limited Method and apparatus for text selection
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
EP2850512A4 (en) 2012-05-14 2016-11-16 Sphero Inc Operating a computing device by detecting rounded objects in an image
US9292758B2 (en) * 2012-05-14 2016-03-22 Sphero, Inc. Augmentation of elements in data content
RU2012119843A (en) * 2012-05-15 2013-11-20 Общество с ограниченной ответственностью "Синезис" METHOD FOR DISPLAYING VIDEO DATA ON A MOBILE DEVICE
US9049349B2 (en) * 2012-05-16 2015-06-02 Cisco Technology, Inc. System and method for video recording and retention in a network
CN103428523B (en) * 2012-05-22 2015-07-08 华为技术有限公司 Method and device for estimating video quality
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 (en) * 2012-05-28 2012-10-10 康佳集团股份有限公司 Television system with functions of carrying out real-time display and amplification on images and implementation method of television system
US9813666B2 (en) * 2012-05-29 2017-11-07 Qualcomm Incorporated Video transmission and reconstruction
US9661264B2 (en) * 2012-06-01 2017-05-23 Nintendo Co., Ltd. Multi-display video communication medium, apparatus, system, and 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
EP3970922A1 (en) 2012-06-12 2022-03-23 Snap-On Incorporated An inventory control system having advanced functionalities
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 (en) * 2012-06-27 2019-09-27 삼성전자주식회사 Image process apparatus, image relay apparatus, method for image process, and method for image relay thereof
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
US9911222B2 (en) * 2012-07-06 2018-03-06 Tangome, Inc. Animation in threaded conversations
US10165245B2 (en) 2012-07-06 2018-12-25 Kaltura, Inc. Pre-fetching video content
US9876988B2 (en) * 2012-07-13 2018-01-23 Microsoft Technology Licensing, Llc Video display modification for video conferencing environments
US10056791B2 (en) 2012-07-13 2018-08-21 Sphero, Inc. Self-optimizing power transfer
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
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
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
KR101901919B1 (en) * 2012-08-27 2018-09-27 삼성전자주식회사 Terminal and operation method for messenger video call service
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 (en) * 2012-09-28 2014-04-07 엘지전자 주식회사 Portable device and controlling method thereof
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 (en) * 2012-10-16 2014-04-17 Selex Galileo Spa EXTERNAL VISION SYSTEM AND / OR TARGET OF A WEAPON FOR LAND MILITARY VEHICLES AND MILITARY NAVAL UNITS
ITTO20120908A1 (en) * 2012-10-16 2014-04-17 Selex Galileo Spa INNOVATIVE CONTROL AND CONTROL AND POINTING AND SHOOTING SYSTEM FOR LAND MILITARY VEHICLES EQUIPPED WITH AT LEAST ONE WEAPON
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 (en) * 2012-10-29 2019-03-20 엘지전자 주식회사 Mobile terminal and method for controlling the same
KR20140063125A (en) * 2012-11-16 2014-05-27 삼성전자주식회사 Image processing method for enhancing image quality using different coefficients according to region and device there-of
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 (en) * 2012-12-14 2016-08-23 ソニー株式会社 Information processing apparatus and control method thereof
CN103024342B (en) * 2012-12-25 2016-05-18 广东威创视讯科技股份有限公司 Band width control method in video conferencing system and system
KR102000536B1 (en) 2012-12-28 2019-07-16 삼성전자주식회사 Photographing device for making a composion image and method thereof
US9615176B2 (en) * 2012-12-28 2017-04-04 Nvidia Corporation Audio channel mapping in a portable electronic device
KR102049977B1 (en) * 2012-12-31 2019-11-28 엘지전자 주식회사 Mobile terminal
US8953079B2 (en) * 2012-12-31 2015-02-10 Texas Instruments Incorporated System and method for generating 360 degree video recording using MVC
KR20140089146A (en) 2013-01-04 2014-07-14 삼성전자주식회사 Method for providing video communication and an electronic device thereof
US10021431B2 (en) * 2013-01-04 2018-07-10 Omnivision Technologies, Inc. Mobile computing device having video-in-video real-time broadcasting capability
US9509919B2 (en) * 2014-11-17 2016-11-29 Duelight Llc System and method for generating a digital image
WO2014125403A2 (en) * 2013-02-12 2014-08-21 Amit Kumar Jain Amit Method of video interaction using poster view
KR102076771B1 (en) * 2013-02-21 2020-02-12 삼성전자주식회사 Image capturing using multiple screen sections
TWI477108B (en) * 2013-02-22 2015-03-11 Quanta Comp Inc Method for building video conference
WO2014130977A1 (en) * 2013-02-25 2014-08-28 Herold Williams Nonlinear scaling in video conferencing
KR102032541B1 (en) 2013-02-26 2019-11-08 삼성전자주식회사 Apparatus and method for processing a image in device
KR102032347B1 (en) * 2013-02-26 2019-10-15 삼성전자 주식회사 Image display positioning using image sensor location
US9087393B2 (en) * 2013-03-07 2015-07-21 Apple Inc. Network display support in an integrated circuit
KR20140114501A (en) * 2013-03-14 2014-09-29 삼성전자주식회사 Image Data Processing Method And Electronic Device supporting the same
KR101978219B1 (en) * 2013-03-15 2019-05-14 엘지전자 주식회사 Mobile terminal and controlling method thereof
KR102037930B1 (en) 2013-03-15 2019-10-30 엘지전자 주식회사 Mobile terminal and control method for the mobile terminal
US9292264B2 (en) 2013-03-15 2016-03-22 Paschar Llc Mobile device user interface advertising software development kit
US9792654B1 (en) * 2013-03-15 2017-10-17 United Services Automobile Association (Usaa) Insurance claim processing via streaming video
US20140280490A1 (en) * 2013-03-15 2014-09-18 Atakan Artun Systems and methods for visual communication
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
US20140279029A1 (en) * 2013-03-15 2014-09-18 Paschar Llc Mobile device user interface with dynamic advertising control interface area
EP2975995B1 (en) * 2013-03-20 2023-05-31 Covidien LP System for enhancing picture-in-picture display for imaging devices used for surgical procedures
JP2014192566A (en) * 2013-03-26 2014-10-06 Sony Corp Video processing device, video processing method, and computer program
WO2014155426A1 (en) * 2013-03-29 2014-10-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Device control method and program
CN104104898B (en) * 2013-04-03 2017-06-27 联想(北京)有限公司 A kind of data processing method, device and electronic equipment
KR20140121711A (en) * 2013-04-08 2014-10-16 삼성전자주식회사 Method of image proccessing, Computer readable storage medium of recording the method and a digital photographing apparatus
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
WO2014183098A2 (en) * 2013-05-09 2014-11-13 Amazon Technologies, Inc. Mobile device interfaces
KR20140133363A (en) * 2013-05-10 2014-11-19 삼성전자주식회사 Display apparatus and Method for controlling the display apparatus thereof
US9197853B2 (en) * 2013-05-20 2015-11-24 Ricoh Company, Ltd Switching between views using natural gestures
JP6229314B2 (en) * 2013-05-30 2017-11-15 ソニー株式会社 Information processing apparatus, display control method, and program
US9692831B1 (en) * 2013-05-31 2017-06-27 Google Inc. Pausing interactive sessions
KR102169523B1 (en) 2013-05-31 2020-10-23 삼성전자 주식회사 Display apparatus and control method thereof
KR102101850B1 (en) * 2013-06-04 2020-04-17 삼성전자주식회사 Method and apparatus for processing image in an electronic device
KR102064973B1 (en) * 2013-06-04 2020-01-10 삼성전자주식회사 Apparatas and method for editing of dual image in an electronic device
WO2014197354A1 (en) 2013-06-05 2014-12-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
US9787945B2 (en) 2013-06-26 2017-10-10 Touchcast LLC System and method for interactive video conferencing
US10297284B2 (en) 2013-06-26 2019-05-21 Touchcast LLC Audio/visual synching system and method
US10757365B2 (en) 2013-06-26 2020-08-25 Touchcast LLC System and method for providing and interacting with coordinated presentations
US10523899B2 (en) 2013-06-26 2019-12-31 Touchcast LLC System and method for providing and interacting with coordinated presentations
US10075676B2 (en) 2013-06-26 2018-09-11 Touchcast LLC Intelligent virtual assistant system and method
US11488363B2 (en) 2019-03-15 2022-11-01 Touchcast, Inc. Augmented reality conferencing system and method
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
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 (en) * 2013-07-12 2015-08-11 Vivotek Inc Image processor and image merging method thereof
US9232177B2 (en) * 2013-07-12 2016-01-05 Intel Corporation Video chat data processing
US9113036B2 (en) * 2013-07-17 2015-08-18 Ebay Inc. Methods, systems, and apparatus for providing video communications
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
USD781869S1 (en) 2013-08-01 2017-03-21 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
AU355184S (en) 2013-08-01 2014-05-01 Palantir Tech Display screen
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 (en) * 2013-08-16 2015-02-25 삼성전자주식회사 Compressing Method of image data for camera and Electronic Device supporting the same
US9888210B2 (en) 2013-08-19 2018-02-06 Microsoft Technology Licensing, Llc Seamless call transitions with pinpoint call escalation
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
FR3009916A1 (en) * 2013-08-26 2015-02-27 Orange METHOD AND DEVICE FOR ENRICHING A COMMUNICATION
US9973722B2 (en) 2013-08-27 2018-05-15 Qualcomm Incorporated Systems, devices and methods for displaying pictures in a picture
TWI493433B (en) * 2013-08-28 2015-07-21 Acer Inc Covered image projecting method and portable electronic apparatus using the same
US9401938B2 (en) * 2013-08-29 2016-07-26 Citrix Systems, Inc. Efficiently accessing web conferences from a mobile device
KR102109883B1 (en) * 2013-09-03 2020-05-12 삼성전자주식회사 Content transmission method and apparatus
CN104469243A (en) * 2013-09-13 2015-03-25 联想(北京)有限公司 Communication method and electronic equipment
KR20150043894A (en) * 2013-10-15 2015-04-23 삼성전자주식회사 Apparatas and method for adjusting a preview area of multi image in an electronic device
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
US9179097B2 (en) * 2013-10-23 2015-11-03 Google Inc. Control of a video conference system using personal devices
US20150109532A1 (en) * 2013-10-23 2015-04-23 Google Inc. Customizing mobile media captioning based on mobile media rendering
JPWO2015059793A1 (en) 2013-10-24 2017-03-09 株式会社東芝 Display device, display method, and display program
JP6426969B2 (en) * 2013-10-31 2018-11-21 キヤノン株式会社 Imaging device, control method therefor, system, and program
US10271010B2 (en) * 2013-10-31 2019-04-23 Shindig, Inc. Systems and methods for controlling the display of content
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 (en) * 2013-12-06 2016-03-08 パナソニックIpマネジメント株式会社 Imaging apparatus and imaging system
US9973672B2 (en) 2013-12-06 2018-05-15 Huawei Device (Dongguan) Co., Ltd. Photographing for dual-lens device using photographing environment determined using depth estimation
KR102126507B1 (en) * 2013-12-09 2020-06-24 삼성전자주식회사 Terminal, system and method of processing sensor data stream
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 (en) * 2013-12-17 2020-12-04 삼성전자 주식회사 Preview method of picture taken in camera and electronic device implementing the same
US9420178B2 (en) * 2013-12-20 2016-08-16 Qualcomm Incorporated Thermal and power management
US9829882B2 (en) 2013-12-20 2017-11-28 Sphero, Inc. Self-propelled device with center of mass drive system
US9270937B2 (en) * 2013-12-26 2016-02-23 OnCam Inc. Real time stream provisioning infrastructure
US9578233B2 (en) * 2013-12-26 2017-02-21 Canon Kabushiki Kaisha Imaging apparatus and method for controlling the same
JP6312426B2 (en) * 2013-12-26 2018-04-18 キヤノン株式会社 Imaging apparatus and control method thereof
US9386275B2 (en) 2014-01-06 2016-07-05 Intel IP Corporation Interactive video conferencing
JP6324079B2 (en) * 2014-01-14 2018-05-16 キヤノン株式会社 Imaging device, control method thereof, and control program
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
WO2015118367A1 (en) * 2014-02-04 2015-08-13 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 (en) * 2014-02-24 2017-08-01 广州华多网络科技有限公司 Video interactive method, terminal, server and system
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
US10178346B2 (en) 2014-03-17 2019-01-08 Microsoft Technology Licensing, Llc Highlighting unread messages
US9749585B2 (en) 2014-03-17 2017-08-29 Microsoft Technology Licensing, Llc Highlighting unread messages
US10284813B2 (en) * 2014-03-17 2019-05-07 Microsoft Technology Licensing, Llc Automatic camera selection
CN103970414B (en) * 2014-03-18 2017-06-13 深圳市艾优尼科技有限公司 One kind management application program image target method and terminal
GB201404990D0 (en) 2014-03-20 2014-05-07 Appeartome Ltd Augmented reality apparatus and method
US9392217B2 (en) 2014-03-20 2016-07-12 Blackberry Limited Automatically relocating picture-in-picture window in video calls
JP2015186020A (en) * 2014-03-24 2015-10-22 オリンパス株式会社 Display apparatus, photographing apparatus, and display method
JP6364965B2 (en) * 2014-03-31 2018-08-01 株式会社リコー Transmission terminal, program, transmission method, transmission system
JP2015195477A (en) * 2014-03-31 2015-11-05 ブラザー工業株式会社 Program, terminal device and method
US9196039B2 (en) 2014-04-01 2015-11-24 Gopro, Inc. Image sensor read window adjustment for multi-camera array tolerance
KR102244248B1 (en) * 2014-04-01 2021-04-26 삼성전자주식회사 Operating Method For content and Electronic Device supporting the same
US8838071B1 (en) 2014-04-30 2014-09-16 Oto Technologies Llc Secure communications smartphone system
US9075508B1 (en) 2014-04-30 2015-07-07 Grandios Technologies, Llc Next application suggestions on a user device
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
US9736381B2 (en) * 2014-05-30 2017-08-15 Intel Corporation Picture in picture recording of multiple regions of interest
US10565219B2 (en) 2014-05-30 2020-02-18 Apple Inc. Techniques for automatically generating a suggested contact based on a received message
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
US20150350118A1 (en) * 2014-05-30 2015-12-03 Apple Inc. Canned answers in messages
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
WO2015183367A1 (en) 2014-05-30 2015-12-03 Apple Inc. Continuity
USD771112S1 (en) * 2014-06-01 2016-11-08 Apple Inc. Display screen or portion thereof with graphical user interface
KR102146858B1 (en) * 2014-06-03 2020-08-21 삼성전자주식회사 Photographing apparatus and method for making a video
US9491562B2 (en) 2014-06-04 2016-11-08 Grandios Technologies, Llc Sharing mobile applications between callers
US9391988B2 (en) 2014-06-04 2016-07-12 Grandios Technologies, Llc Community biometric authentication on a smartphone
US9509799B1 (en) 2014-06-04 2016-11-29 Grandios Technologies, Llc Providing status updates via a personal assistant
US9509789B2 (en) 2014-06-04 2016-11-29 Grandios Technologies, Llc Managing mood data on a user device
US9323421B1 (en) 2014-06-04 2016-04-26 Grandios Technologies, Llc Timer, app, and screen management
US9078098B1 (en) 2014-06-04 2015-07-07 Grandios Technologies, Llc Geo-fencing based functions
US9377939B1 (en) 2014-06-04 2016-06-28 Grandios Technologies Application player management
US9420477B2 (en) 2014-06-04 2016-08-16 Grandios Technologies, Llc Signal strength management
US9538062B2 (en) 2014-06-04 2017-01-03 Grandios Technologies, Llc Camera management system
US9584645B2 (en) 2014-06-04 2017-02-28 Grandios Technologies, Llc Communications with wearable devices
US9516467B1 (en) 2014-06-04 2016-12-06 Grandios Technologies, Llc Mobile device applications associated with geo-locations
US9294575B1 (en) 2014-06-04 2016-03-22 Grandios Technologies, Inc. Transmitting appliance-specific content to a user device
US9590984B2 (en) 2014-06-04 2017-03-07 Grandios Technologies, Llc Smartphone fingerprint pass-through system
US9619159B2 (en) 2014-06-04 2017-04-11 Grandios Technologies, Llc Storage management system
US9395754B2 (en) 2014-06-04 2016-07-19 Grandios Technologies, Llc Optimizing memory for a wearable device
US9161193B1 (en) 2014-06-04 2015-10-13 Grandios Technologies, Llc Advanced telephone management
US8995972B1 (en) 2014-06-05 2015-03-31 Grandios Technologies, Llc Automatic personal assistance between users devices
US9711146B1 (en) 2014-06-05 2017-07-18 ProSports Technologies, LLC Wireless system for social media management
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
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
GB201410285D0 (en) * 2014-06-10 2014-07-23 Appeartome Ltd Augmented reality apparatus and method
JP2016005083A (en) 2014-06-16 2016-01-12 ソニー株式会社 Information processing device, information processing method, and terminal device
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
CN105323532B (en) * 2014-06-30 2019-10-15 中兴通讯股份有限公司 A kind of adaptive display method and device of mobile terminal image
US10771736B2 (en) 2014-06-30 2020-09-08 Microsoft Technology Licensing, Llc Compositing and transmitting contextual information during an audio or video call
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
US9498678B2 (en) 2014-07-11 2016-11-22 ProSports Technologies, LLC Ball tracker camera
US9760572B1 (en) 2014-07-11 2017-09-12 ProSports Technologies, LLC Event-based content collection for network-based distribution
US9502018B2 (en) 2014-07-11 2016-11-22 ProSports Technologies, LLC Whistle play stopper
US9305441B1 (en) 2014-07-11 2016-04-05 ProSports Technologies, LLC Sensor experience shirt
US9591336B2 (en) 2014-07-11 2017-03-07 ProSports Technologies, LLC Camera feed distribution from event venue virtual seat cameras
WO2016007967A1 (en) 2014-07-11 2016-01-14 ProSports Technologies, LLC Ball tracker snippets
US9655027B1 (en) 2014-07-11 2017-05-16 ProSports Technologies, LLC Event data transmission to eventgoer devices
US9965938B1 (en) 2014-07-11 2018-05-08 ProSports Technologies, LLC Restroom queue management
US9343066B1 (en) 2014-07-11 2016-05-17 ProSports Technologies, LLC Social network system
WO2016007972A1 (en) 2014-07-11 2016-01-14 ProSports Technologies, LLC Ticket upsell system
US9724588B1 (en) 2014-07-11 2017-08-08 ProSports Technologies, LLC Player hit system
US9398213B1 (en) 2014-07-11 2016-07-19 ProSports Technologies, LLC Smart field goal detector
US9474933B1 (en) 2014-07-11 2016-10-25 ProSports Technologies, LLC Professional workout simulator
US9610491B2 (en) 2014-07-11 2017-04-04 ProSports Technologies, LLC Playbook processor
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
WO2016025951A1 (en) 2014-08-15 2016-02-18 There0 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 (en) * 2014-08-28 2022-04-28 삼성전자 주식회사 Electronic device including touch sensitive display and method for operating the same
CN108196759B (en) 2014-09-04 2021-11-19 华为技术有限公司 Icon control method and terminal
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
US9282287B1 (en) * 2014-09-09 2016-03-08 Google Inc. Real-time video transformations in video conferences
US10264175B2 (en) 2014-09-09 2019-04-16 ProSports Technologies, LLC Facial recognition for event venue cameras
WO2016039987A1 (en) 2014-09-11 2016-03-17 ProSports Technologies, LLC System to offer coupons to fans along routes to game
US9560095B2 (en) * 2014-09-30 2017-01-31 Cisco Technology, Inc. Method and system for remote meetings
WO2016049882A1 (en) * 2014-09-30 2016-04-07 Tencent Technology (Shenzhen) Company Limited Device and method for capturing, sharing and watching video messages
US9516220B2 (en) 2014-10-02 2016-12-06 Intel Corporation Interactive video conferencing
JP6471451B2 (en) * 2014-10-16 2019-02-20 株式会社リコー Transmission system, communication control device, communication control method, communication method, program
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 (en) * 2014-12-18 2016-06-28 엘지전자 주식회사 Mobile terminal and method for controlling the same
WO2016130853A1 (en) * 2015-02-11 2016-08-18 AVG Netherlands B.V. 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 (en) * 2015-03-16 2016-09-22 Connaught Electronics Ltd. A method for outputting an image of an image sequence on a display unit, display device and motor vehicle
US9667871B2 (en) * 2015-03-20 2017-05-30 Motorola Mobility Llc Remote imaging in modular cellular phone
WO2016152633A1 (en) * 2015-03-26 2016-09-29 ソニー株式会社 Image processing system, image processing method, and program
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 (en) * 2015-05-29 2019-10-02 株式会社リコー Communication terminal, communication system, communication method, and program
CN104853136A (en) * 2015-05-29 2015-08-19 小米科技有限责任公司 Video communication method and device
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
CN105100432B (en) * 2015-06-10 2018-02-06 小米科技有限责任公司 Call interface display methods and device
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 (en) 2015-07-29 2017-02-08 엘지전자 주식회사 Mobile terminal and method of controlling the same
CN105072336A (en) * 2015-07-31 2015-11-18 小米科技有限责任公司 Control method, apparatus and device for adjusting photographing function
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
WO2017035368A1 (en) * 2015-08-25 2017-03-02 Touchcast LLC System and method for interactive video conferencing
CN105120099A (en) * 2015-08-31 2015-12-02 小米科技有限责任公司 Shooting control method and device
CN105163028B (en) * 2015-09-11 2018-09-28 青岛海信移动通信技术股份有限公司 A kind of control method and device of dual camera
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 (en) * 2015-10-08 2017-04-13 ソニー株式会社 Information processing device, information processing method, information processing system
KR20170042431A (en) 2015-10-08 2017-04-19 삼성전자주식회사 Electronic device configured to non-uniformly encode/decode image data according to display shape
US11929088B2 (en) 2015-11-20 2024-03-12 Synaptics Incorporated Input/output mode control for audio processing
US20170148438A1 (en) * 2015-11-20 2017-05-25 Conexant Systems, Inc. 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 (en) * 2015-12-15 2019-02-15 腾讯科技(深圳)有限公司 The method and device of video is played by suspension windows
JP6613131B2 (en) * 2015-12-24 2019-11-27 京セラ株式会社 Electronic device, electronic device control method, electronic device control apparatus, control program, and electronic device system
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 (en) * 2016-01-06 2017-07-14 삼성전자주식회사 Display apparatus and control methods thereof
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 (en) 2016-02-02 2017-08-10 삼성전자주식회사 Method and apparatus for providing video service
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
KR102496225B1 (en) * 2016-02-11 2023-02-07 삼성전자 주식회사 Method for video encoding and electronic device supporting the same
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
US10257394B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Combined HDR/LDR video streaming
KR102467869B1 (en) * 2016-02-19 2022-11-16 삼성전자주식회사 Electronic apparatus and operating method thereof
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 (en) * 2016-03-18 2017-03-01 聚晶半導體股份有限公司 Milti-camera electronic device and control method thereof
US9558523B1 (en) 2016-03-23 2017-01-31 Global Tel* Link Corp. Secure nonscheduled video visitation system
KR20170110469A (en) * 2016-03-23 2017-10-11 삼성전자주식회사 A method for providing a video call and an electronic device therefor
JP2017183658A (en) * 2016-03-31 2017-10-05 ソニー株式会社 Solid state image pick-up device, imaging apparatus, and electronic apparatus
US11322261B2 (en) * 2016-04-08 2022-05-03 19Labs Inc. System and method for implementing augmented reality during telehealth sessions in a telehealth device
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
US10511805B2 (en) 2016-04-14 2019-12-17 Popio Ip Holdings, Llc Methods and systems for multi-pane video communications to execute user workflows
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
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 (en) * 2016-05-07 2019-01-15 스마트 써드-아이 리미티드 Systems and methods involving an edge camera assembly in a handheld device
JP6700959B2 (en) * 2016-05-11 2020-05-27 キヤノン株式会社 Communication device, communication device control method, and program
US9762729B1 (en) * 2016-05-12 2017-09-12 Google Inc. Caller preview for video calls
WO2017195514A1 (en) * 2016-05-13 2017-11-16 ソニー株式会社 Image processing device, image processing system, and image processing method, and program
CN107422934B (en) 2016-05-23 2020-04-28 华为终端有限公司 Icon setting method and electronic equipment
US10103997B2 (en) * 2016-06-01 2018-10-16 At&T Intellectual Property I, L.P. Dynamic quality of service for over-the-top content
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
US9854156B1 (en) 2016-06-12 2017-12-26 Apple Inc. User interface for camera effects
USD802016S1 (en) 2016-06-29 2017-11-07 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD802000S1 (en) 2016-06-29 2017-11-07 Palantir Technologies, Inc. Display screen or portion thereof with an animated graphical user interface
USD858572S1 (en) 2016-06-29 2019-09-03 Palantir Technologies Inc. Display screen or portion thereof with icon
USD826269S1 (en) 2016-06-29 2018-08-21 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
USD835646S1 (en) 2016-07-13 2018-12-11 Palantir Technologies Inc. Display screen or portion thereof with an animated graphical user interface
USD847144S1 (en) 2016-07-13 2019-04-30 Palantir Technologies Inc. Display screen or portion thereof with 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
US10554901B2 (en) 2016-08-09 2020-02-04 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
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
US9729820B1 (en) * 2016-09-02 2017-08-08 Russell Holmes Systems and methods for providing real-time composite video from multiple source devices
CN107005703A (en) * 2016-09-09 2017-08-01 深圳市大疆创新科技有限公司 Method for encoding images and system
CN110895439A (en) 2016-09-23 2020-03-20 苹果公司 Avatar creation and editing
RU2696767C1 (en) * 2016-10-31 2019-08-06 Бейджин Сяоми Мобайл Софтвэре Ко., Лтд. Method and system for broadcasting multimedia information in real time, information collection device and information verification server
US20180131710A1 (en) * 2016-11-07 2018-05-10 Microsoft Technology Licensing, Llc Network telephony anomaly detection images
CN108063745B (en) * 2016-11-08 2019-03-01 视联动力信息技术股份有限公司 A kind of video call method and its system based on Android device
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 (en) 2016-11-24 2018-03-11 新加坡商雲網科技新加坡有限公司 Method for output control and user terminal using the same
CN106534695B (en) * 2016-11-28 2021-10-22 宇龙计算机通信科技(深圳)有限公司 Shooting method, shooting device and terminal
CN108234788A (en) * 2016-12-22 2018-06-29 展讯通信(上海)有限公司 Management method, device, terminal and the network side equipment of videoconference
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
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 (en) * 2017-02-03 2021-12-28 杰创科系统有限公司 Augmented video reality
US20180227502A1 (en) * 2017-02-06 2018-08-09 Qualcomm Incorporated Systems and methods for reduced power consumption in imaging pipelines
KR102557662B1 (en) 2017-02-09 2023-07-19 삼성전자주식회사 Image processing apparatus and electronic device including the same
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 (en) * 2017-03-27 2022-05-26 삼성전자주식회사 Device for providing information related to an object in an image
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 (en) * 2017-07-18 2019-02-01 晶睿通訊股份有限公司 Method for providing user interface for scene stitching of scene and electronic device thereof
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
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
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
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
US11213754B2 (en) 2017-08-10 2022-01-04 Global Tel*Link Corporation Video game center for a controlled environment facility
US9992449B1 (en) * 2017-08-10 2018-06-05 Everysight Ltd. System and method for sharing sensed data between remote users
US11785180B2 (en) 2017-09-11 2023-10-10 Reelay Meetings, Inc. Management and analysis of related concurrent communication sessions
US11122240B2 (en) 2017-09-11 2021-09-14 Michael H Peters Enhanced video conference management
US11290686B2 (en) 2017-09-11 2022-03-29 Michael H Peters Architecture for scalable video conference management
US10382722B1 (en) * 2017-09-11 2019-08-13 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
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
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
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 (en) * 2017-11-20 2021-03-19 Oppo广东移动通信有限公司 Frame dropping method and device of application program, mobile terminal and readable storage medium
CN109922204A (en) * 2017-12-13 2019-06-21 中兴通讯股份有限公司 Image processing method and terminal
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 (en) * 2018-01-22 2023-07-07 삼성디스플레이 주식회사 Display apparatus and method of driving the same
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 (en) * 2018-03-02 2019-09-10 Oppo广东移动通信有限公司 Application icon processing method, device and mobile terminal
US10831331B2 (en) * 2018-03-09 2020-11-10 International Business Machines Corporation Window control for simultaneously running applications
CN108762652B (en) * 2018-03-27 2020-08-21 Oppo广东移动通信有限公司 Display control method and device of intelligent terminal, storage medium and intelligent terminal
USD869488S1 (en) 2018-04-03 2019-12-10 Palantir Technologies, Inc. Display screen or portion thereof with graphical user interface
USD885413S1 (en) 2018-04-03 2020-05-26 Palantir Technologies Inc. Display screen or portion thereof with transitional graphical user interface
USD886848S1 (en) 2018-04-03 2020-06-09 Palantir Technologies Inc. Display screen or portion thereof with transitional graphical user interface
USD888082S1 (en) 2018-04-03 2020-06-23 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
DK180078B1 (en) 2018-05-07 2020-03-31 Apple Inc. USER INTERFACE FOR AVATAR CREATION
US11722764B2 (en) 2018-05-07 2023-08-08 Apple Inc. Creative camera
KR102265402B1 (en) * 2018-05-07 2021-06-16 애플 인크. Multi-Participant Live Communication User Interface
US10375313B1 (en) 2018-05-07 2019-08-06 Apple Inc. Creative camera
DK201870364A1 (en) 2018-05-07 2019-12-03 Apple Inc. Multi-participant live communication user interface
JP7073238B2 (en) * 2018-05-07 2022-05-23 アップル インコーポレイテッド Creative camera
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 (en) * 2018-08-10 2020-07-17 维沃移动通信有限公司 Video processing method and terminal equipment
TWI687102B (en) * 2018-08-23 2020-03-01 奇勤科技股份有限公司 Remote video system of bilateral control and method thereof
TWI684338B (en) * 2018-08-29 2020-02-01 圓展科技股份有限公司 Method of implementing network meeting
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
US11770601B2 (en) 2019-05-06 2023-09-26 Apple Inc. User interfaces for capturing and managing visual media
US10674072B1 (en) 2019-05-06 2020-06-02 Apple Inc. User interfaces for capturing and managing visual media
US11321857B2 (en) 2018-09-28 2022-05-03 Apple Inc. Displaying and editing images with depth information
US11128792B2 (en) 2018-09-28 2021-09-21 Apple Inc. Capturing and displaying images with multiple focal planes
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 (en) * 2018-10-26 2023-01-06 深圳市道通智能航空技术股份有限公司 Image processing method and image processing system of aerial camera and unmanned aerial vehicle
CN109120869A (en) 2018-11-07 2019-01-01 深圳市道通智能航空技术有限公司 Double light image integration methods, integration equipment and unmanned plane
CN109525880A (en) * 2018-11-08 2019-03-26 北京微播视界科技有限公司 Synthetic method, device, equipment and the storage medium of video data
US11574476B2 (en) * 2018-11-11 2023-02-07 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 (en) * 2018-12-11 2020-09-22 维沃移动通信有限公司 Video call method and terminal
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 (en) 2019-01-22 2020-07-31 삼성전자주식회사 Method for controlling display orientation of content and electronic device thereof
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 (en) * 2019-04-05 2020-10-14 삼성전자주식회사 Electronic device and method for controlling camera using external electronic device
US10999629B1 (en) 2019-04-23 2021-05-04 Snap Inc. Automated graphical image modification scaling based on rules
USD953345S1 (en) 2019-04-23 2022-05-31 Palantir Technologies, Inc. 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
USD947240S1 (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
KR102436985B1 (en) 2019-05-31 2022-08-29 애플 인크. User interface for controlling audio media
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
WO2021016974A1 (en) * 2019-07-31 2021-02-04 西安诺瓦星云科技股份有限公司 Data processing method, device and system, system controller and module controller
TWI707339B (en) * 2019-08-27 2020-10-11 瑞昱半導體股份有限公司 Image processing circuit and image processing method
CN110505428B (en) * 2019-08-28 2021-06-15 联想(北京)有限公司 Information processing method and electronic equipment
CN112449097A (en) * 2019-08-29 2021-03-05 中兴通讯股份有限公司 Video communication method, terminal and storage medium
CN110650341A (en) * 2019-09-29 2020-01-03 华为终端有限公司 Video interaction method and related equipment
CN110661993A (en) * 2019-10-17 2020-01-07 维沃移动通信有限公司 Video display content processing method and terminal equipment
CN110856014B (en) * 2019-11-05 2023-03-07 北京奇艺世纪科技有限公司 Moving image generation method, moving image generation device, electronic device, and storage medium
CN110896495A (en) * 2019-11-19 2020-03-20 北京字节跳动网络技术有限公司 View adjustment method and device for target device, electronic device and medium
US11252206B2 (en) * 2019-12-03 2022-02-15 Microsoft Technology Licensing, Llc Reducing setup time for online meetings
CN111050091B (en) * 2019-12-23 2021-04-13 联想(北京)有限公司 Output control method and device and electronic equipment
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
US10835106B1 (en) 2020-02-21 2020-11-17 Ambu A/S Portable monitor
US11166622B2 (en) 2020-02-21 2021-11-09 Ambu A/S Video processing apparatus
US11109741B1 (en) 2020-02-21 2021-09-07 Ambu A/S Video processing apparatus
US11455085B2 (en) 2020-03-10 2022-09-27 Apple Inc. Devices, methods, and graphical user interfaces for interacting with user interface objects corresponding to applications
CN111246032B (en) * 2020-03-27 2021-07-30 北京小米移动软件有限公司 Call management method and device
EP3913911A1 (en) * 2020-04-02 2021-11-24 Société Anonyme Edagora Simple video telephony system
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
US11513667B2 (en) 2020-05-11 2022-11-29 Apple Inc. User interface for audio message
DK202070625A1 (en) 2020-05-11 2022-01-04 Apple Inc User interfaces related to time
US11921998B2 (en) 2020-05-11 2024-03-05 Apple Inc. Editing features of an avatar
US11416831B2 (en) 2020-05-21 2022-08-16 HUDDL Inc. Dynamic video layout in video conference meeting
CN111641797B (en) * 2020-05-25 2022-02-18 北京字节跳动网络技术有限公司 Video call interface display control method and device, storage medium and equipment
US11054973B1 (en) 2020-06-01 2021-07-06 Apple Inc. User interfaces for managing media
CN113938633B (en) * 2020-06-29 2023-09-08 聚好看科技股份有限公司 Video call processing method and display device
USD944837S1 (en) * 2020-09-03 2022-03-01 PassiveLogic, Inc. Display screen or portion thereof with animated graphical user interface
US11212449B1 (en) 2020-09-25 2021-12-28 Apple Inc. User interfaces for media capture and management
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
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 (en) * 2020-11-12 2023-05-16 广东保伦电子股份有限公司 Dual-stream video conference method and processing terminal based on IOS platform
KR102408303B1 (en) * 2020-11-17 2022-06-10 주식회사 카카오 Method and Device for providing contents information
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
US11671697B2 (en) * 2021-01-31 2023-06-06 Apple Inc. User interfaces for wide angle video conference
US11800056B2 (en) 2021-02-11 2023-10-24 Logitech Europe S.A. Smart webcam system
CN113031839B (en) * 2021-02-22 2022-08-16 北京字节跳动网络技术有限公司 Image processing method, device, equipment and medium in video call
US11800048B2 (en) 2021-02-24 2023-10-24 Logitech Europe S.A. Image generating system with background replacement or modification capabilities
JP7082224B1 (en) * 2021-03-02 2022-06-07 レノボ・シンガポール・プライベート・リミテッド Information processing device and control method
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
US11449188B1 (en) 2021-05-15 2022-09-20 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 (en) * 2021-08-26 2022-12-29 주식회사 모노랩스 non-face-to-face communication system through repulsive force
US11812135B2 (en) 2021-09-24 2023-11-07 Apple Inc. Wide angle video conference
JP2023058322A (en) * 2021-10-13 2023-04-25 キヤノン株式会社 Video processing apparatus, method for controlling the same, and program
WO2023122820A1 (en) * 2021-12-27 2023-07-06 Rosan Ismael 3d stereoscopic smartphone
US11838332B2 (en) 2022-01-10 2023-12-05 Motorola Mobility Llc Context based automatic camera selection in a communication device
US11722767B2 (en) * 2022-01-10 2023-08-08 Motorola Mobility Llc Automatic camera selection in a communication device
TWI802258B (en) * 2022-02-07 2023-05-11 明基電通股份有限公司 Video conference system
WO2023196231A1 (en) * 2022-04-04 2023-10-12 Apple Inc. User interfaces for camera sharing
CN114531554B (en) * 2022-04-24 2022-08-16 浙江华眼视觉科技有限公司 Video fusion synthesis method and device of express mail code recognizer
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
US20230379571A1 (en) * 2022-05-23 2023-11-23 Nathan Kenneth Boyd Combining content in a preview state
WO2023235519A1 (en) * 2022-06-03 2023-12-07 Datasya Ltd. Interactive multimedia collaboration platform with remote-controlled camera and annotation
JP7208689B1 (en) 2022-06-29 2023-01-19 テレポート株式会社 Information processing program
KR20240016784A (en) * 2022-07-29 2024-02-06 삼성전자주식회사 Electronic device capable of providing video call service and method for controlling the same
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

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276335A (en) * 1993-03-22 1994-09-30 Sony Corp Data processor
JPH09247655A (en) * 1996-03-01 1997-09-19 Tokyu Constr Co Ltd Remote control system
JP2002351802A (en) * 2001-05-24 2002-12-06 Cresys:Kk Method and system for data delivery using electronic mail
JP2003134382A (en) * 2002-08-30 2003-05-09 Canon Inc Camera controller
JP2003274376A (en) * 2002-03-14 2003-09-26 Sanyo Electric Co Ltd Mobile communication apparatus
JP2003299050A (en) * 2002-03-29 2003-10-17 Canon Inc Information distributor, information distribution system, information distributing method, program and recording medium
JP2007201727A (en) * 2006-01-25 2007-08-09 Nec Saitama Ltd Portable telephone with television telephone function
JP2008533838A (en) * 2005-03-09 2008-08-21 クゥアルコム・インコーポレイテッド Region of interest processing for video telephony
JP2009188975A (en) * 2008-01-11 2009-08-20 Sony Corp Teleconference terminal apparatus and image transmitting method

Family Cites Families (186)

* 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
EP0447212B1 (en) 1990-03-15 1994-12-28 Canon Kabushiki Kaisha Voice and video communication apparatus
US5371534A (en) 1992-07-23 1994-12-06 At&T Corp. ISDN-based system for making a video call
JPH06113297A (en) * 1992-09-25 1994-04-22 A W New Hard:Kk Monitor for video telephone set
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
JP3039186B2 (en) 1993-03-23 2000-05-08 日本電気株式会社 Video conference image control system
USRE43462E1 (en) * 1993-04-21 2012-06-12 Kinya (Ken) Washino Video monitoring and conferencing system
JPH07135594A (en) 1993-11-11 1995-05-23 Canon Inc Image pickup controller
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 (en) 1995-11-28 1997-06-26 배순훈 TV screen control method using touch screen
KR100281526B1 (en) 1996-07-08 2001-02-15 윤종용 Video telephone system with voice / video telephone mode switching function and switching method thereof
JP3862762B2 (en) 1997-03-03 2006-12-27 株式会社東芝 Communication terminal system and communication terminal device
DE19804564A1 (en) 1998-02-05 1999-08-12 Fraunhofer Ges Forschung Communication network, method for transmitting a signal, network connection unit and method for adapting the data rate of a scaled data stream
US6346962B1 (en) * 1998-02-27 2002-02-12 International Business Machines Corporation Control of video conferencing system with pointing device
JP3475809B2 (en) 1998-10-14 2003-12-10 株式会社デンソー Portable videophone
US6025871A (en) 1998-12-31 2000-02-15 Intel Corporation User interface for a video conferencing system
US6760482B1 (en) * 1999-02-19 2004-07-06 Unisearch Limited Method for visual optimisation of embedded block codes to exploit visual masking phenomena
JP2001054084A (en) 1999-08-09 2001-02-23 Matsushita Electric Ind Co Ltd Video telephone system
FI109742B (en) 1999-10-26 2002-09-30 Nokia Corp Mobile station
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 (en) 2000-12-19 2002-10-25 주식회사 팬택앤큐리텔 Image hand-phone
US20020093531A1 (en) * 2001-01-17 2002-07-18 John Barile Adaptive display for video conferences
JP2002251365A (en) 2001-02-21 2002-09-06 Square Co Ltd Electronic conference system, client therefor, electronic conference method and client program
US6833874B2 (en) 2001-03-27 2004-12-21 Sony Corporation Ticker tape picture-in-picture system
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 (en) 2001-10-31 2003-12-06 삼성전자주식회사 System and method of network adaptive real- time multimedia streaming
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 (en) * 2001-12-21 2003-07-04 Nec Corp Camera for mobile phone
JP4289153B2 (en) * 2002-03-08 2009-07-01 三菱電機株式会社 Mobile communication device, display control method for mobile communication device, and program thereof
JP4061473B2 (en) 2002-04-26 2008-03-19 日本電気株式会社 Folding mobile phone
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 (en) * 2002-05-23 2008-03-26 ソニー株式会社 Image signal processing apparatus and processing method
KR100472470B1 (en) 2002-08-19 2005-03-10 삼성전자주식회사 Apparatus and method for scaling a partial screen and a whole screen
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 (en) 2002-11-13 2004-06-10 Fujitsu Ltd Mobile electronic equipment and photographing method therewith
JP2004166159A (en) 2002-11-15 2004-06-10 Nec Saitama Ltd Cellular phone with built-in camera
JP2004193860A (en) * 2002-12-10 2004-07-08 Canon Inc Electronic apparatus
JP2004221738A (en) * 2003-01-10 2004-08-05 Matsushita Electric Ind Co Ltd Video phone and video phone control method
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 (en) 2003-03-07 2008-02-27 シャープ株式会社 Portable multifunctional electronic equipment
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
KR101130413B1 (en) 2003-06-19 2012-03-27 소니 에릭슨 모빌 커뮤니케이션즈 에이비 Media stream mixing
JP4380252B2 (en) 2003-07-22 2009-12-09 ソニー株式会社 Imaging apparatus and imaging method
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
DE60333875D1 (en) 2003-11-19 2010-09-30 Nat Inst Inf & Comm Tech RADIO COMMUNICATION SYSTEM
JP4191016B2 (en) 2003-11-21 2008-12-03 日本電気株式会社 Phone terminal call mode switching method
KR100595619B1 (en) * 2003-12-05 2006-06-30 엘지전자 주식회사 Video telephone method for mobile communication device
KR100677303B1 (en) 2003-12-26 2007-02-05 엘지전자 주식회사 Mobile phone
DE102004004806B4 (en) 2004-01-30 2012-04-19 Arnold & Richter Cine Technik Gmbh & Co. Betriebs Kg Electronic motion picture camera
JP4478868B2 (en) * 2004-03-09 2010-06-09 ソニー株式会社 Image display device and image display method
KR100550567B1 (en) * 2004-03-22 2006-02-10 엘지전자 주식회사 Server system communicating through the wireless network and its operating method
JP2005286445A (en) * 2004-03-29 2005-10-13 Mitsubishi Electric Corp Image transmission terminal, system thereof and terminal image transmitting method
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 (en) 2004-08-02 2007-03-15 Nokia Corp An electronic device and method in an electronic device for generating image information and a corresponding program product
KR101067774B1 (en) 2004-09-03 2011-09-28 엘지전자 주식회사 Broadcasting receiver and method for controlling tuner thereof
US7381952B2 (en) 2004-09-09 2008-06-03 Flir Systems, Inc. Multiple camera systems and methods
FI116749B (en) * 2004-09-14 2006-02-15 Nokia Corp A device comprising camera elements
KR20060031959A (en) * 2004-10-11 2006-04-14 가온미디어 주식회사 Method for changing channel in digital broadcasting receiver
JP4046721B2 (en) 2004-11-05 2008-02-13 株式会社アイチコーポレーション Charging device for work vehicle
JP4592551B2 (en) * 2004-11-10 2010-12-01 シャープ株式会社 Communication device
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 (en) 2004-12-28 2010-11-24 セイコーエプソン株式会社 Imaging apparatus, camera shake correction apparatus, mobile phone, and camera shake correction method
JP4770178B2 (en) 2005-01-17 2011-09-14 ソニー株式会社 Camera control apparatus, camera system, electronic conference system, and camera control method
JP2006222822A (en) 2005-02-14 2006-08-24 Hitachi Ltd Handover system
JP2006245732A (en) 2005-03-01 2006-09-14 Matsushita Electric Ind Co Ltd Packet buffer device, packet relay transfer device, and network system
JP2006246019A (en) * 2005-03-03 2006-09-14 Canon Inc Remote controller control method of multiscreen display
JP4365800B2 (en) * 2005-03-14 2009-11-18 パナソニック株式会社 Portable terminal device and display switching method
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 (en) * 2005-05-11 2007-04-03 삼성전자주식회사 Mobile terminal for providing various display mode
JP2006319742A (en) * 2005-05-13 2006-11-24 Toshiba Corp Communication terminal
US7768548B2 (en) 2005-08-12 2010-08-03 William Bradford Silvernail Mobile digital video recording system
JP4781065B2 (en) * 2005-09-20 2011-09-28 キヤノン株式会社 Imaging device
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 (en) 2005-11-17 2012-08-22 株式会社デンソー Navigation device and map display scale setting method
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
US8593502B2 (en) * 2006-01-26 2013-11-26 Polycom, Inc. Controlling videoconference with touch screen interface
US8872879B2 (en) * 2006-01-26 2014-10-28 Polycom, Inc. System and method for 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 (en) 2006-03-30 2012-04-18 京セラ株式会社 Videophone system, videophone terminal apparatus, and videophone image display method
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
KR20070111270A (en) 2006-05-17 2007-11-21 삼성전자주식회사 Displaying method using voice recognition in multilateral video conference
JP2007312039A (en) 2006-05-17 2007-11-29 Nec Saitama Ltd Mobile terminal with videophone function
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 (en) 2006-07-06 2007-12-11 삼성전자주식회사 Upgrade system and method using remote control between portable terminal
KR20090054427A (en) 2006-07-07 2009-05-29 안토니오 누에즈 Methods and systems for monitoring an endoprosthetic implant
KR101139454B1 (en) * 2006-07-14 2012-04-30 엘지전자 주식회사 Mobile communication terminal and and operating method thereof
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 (en) 2006-08-10 2008-02-14 삼성전자주식회사 Apparatus for image display and control method thereof
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 (en) 2006-09-04 2009-03-25 ソニー株式会社 Matrix switcher device and control method of matrix switcher device
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 (en) 2006-09-25 2008-03-27 삼성전자주식회사 Mobile terminal for receiving digital broadcasting having touch screen and method for controlling pip screen thereof
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
US7899489B2 (en) 2006-10-30 2011-03-01 Kyocera Corporation Wireless communication device and wireless communication method
JP4781980B2 (en) 2006-11-29 2011-09-28 京セラ株式会社 Wireless communication apparatus and wireless communication method
KR100836616B1 (en) 2006-11-14 2008-06-10 (주)케이티에프테크놀로지스 Portable Terminal Having Image Overlay Function And Method For Image Overlaying in Portable Terminal
CN101191878A (en) 2006-11-28 2008-06-04 鸿富锦精密工业(深圳)有限公司 Stereo image-pickup camera module group and electronic device
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 (en) 2007-04-03 2014-04-28 엘지전자 주식회사 Controlling image and mobile terminal
KR101328950B1 (en) 2007-04-24 2013-11-13 엘지전자 주식회사 Image display method and image communication terminal capable of implementing the same
KR101460712B1 (en) * 2007-04-26 2014-11-12 엘지전자 주식회사 Mobile communication device and control method thereof
JP4782074B2 (en) * 2007-05-18 2011-09-28 シャープ株式会社 Portable terminal, control method, control program, and storage medium
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
US8319814B2 (en) * 2007-06-22 2012-11-27 Lifesize Communications, Inc. Video conferencing system which allows endpoints to perform continuous presence layout selection
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 (en) * 2007-07-02 2009-04-16 주식회사 케이티프리텔 Method and apparatus for multipoint video telephony service
KR20090004176A (en) * 2007-07-06 2009-01-12 주식회사 엘지텔레콤 Mobile communication terminal having camera module and method for displaying video using the same
KR101378880B1 (en) 2007-07-13 2014-03-28 엘지전자 주식회사 Portable terminal having camera
JP5031476B2 (en) 2007-08-02 2012-09-19 キヤノン株式会社 Zoom lens and imaging apparatus having the same
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
KR101403839B1 (en) * 2007-08-16 2014-06-03 엘지전자 주식회사 Mobile communication terminal with touchscreen and display control method thereof
KR101417002B1 (en) * 2007-08-29 2014-07-08 엘지전자 주식회사 A mobile communication terminal having multilateral image communication function and multilateral method for converting image communication mode thereof
US8046033B2 (en) 2007-09-17 2011-10-25 Lg Electronics Inc. Mobile terminal
KR101334015B1 (en) 2007-10-09 2013-11-28 주식회사 케이티 Portable terminal having function of classifying speaker during multilateral image communication and method for classifying speaker during multilateral image communication
KR101433157B1 (en) 2007-10-26 2014-08-22 삼성전자주식회사 Mobile terminal and method for transmitting image thereof
KR101356167B1 (en) 2007-11-02 2014-01-24 엘지전자 주식회사 Portable terminal
JP2008125105A (en) * 2007-12-14 2008-05-29 Nec Corp Communication terminal device, videophone control method, and program thereof
JP4926034B2 (en) * 2007-12-26 2012-05-09 京セラ株式会社 Compound terminal and display control program
US8040382B2 (en) 2008-01-07 2011-10-18 Dp Technologies, Inc. Method and apparatus for improving photo image quality
US8259157B2 (en) 2008-01-11 2012-09-04 Sony Corporation Teleconference terminal apparatus and image transmitting method
JP2009189075A (en) 2008-02-01 2009-08-20 Denso Corp Communication system
US8205157B2 (en) * 2008-03-04 2012-06-19 Apple Inc. Methods and graphical user interfaces for conducting searches on a portable multifunction device
KR101012300B1 (en) * 2008-03-07 2011-02-08 삼성전자주식회사 User interface apparatus of mobile station having touch screen and method thereof
US20090232129A1 (en) * 2008-03-10 2009-09-17 Dilithium Holdings, Inc. Method and apparatus for video services
JP5058042B2 (en) * 2008-03-24 2012-10-24 シャープ株式会社 Image communication system and image communication method
US8363019B2 (en) 2008-05-26 2013-01-29 Lg Electronics Inc. Mobile terminal using proximity sensor and method of controlling the mobile terminal
KR101442112B1 (en) 2008-05-26 2014-09-18 엘지전자 주식회사 Mobile terminal capable of controlling operation using a proximity sensor and control method thereof
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 (en) 2008-06-05 2008-10-22 中兴通讯股份有限公司 Mobile terminal and picture-phone implementing method thereof
JP5360058B2 (en) * 2008-06-30 2013-12-04 日本電気株式会社 Information processing apparatus, display control method, and program
JP4561888B2 (en) * 2008-07-01 2010-10-13 ソニー株式会社 Information processing apparatus and vibration control method in information processing apparatus
KR20100007625A (en) 2008-07-14 2010-01-22 엘지전자 주식회사 Mobile terminal and method for displaying menu thereof
JP5217724B2 (en) 2008-07-22 2013-06-19 ブラザー工業株式会社 server
NO333026B1 (en) * 2008-09-17 2013-02-18 Cisco Systems Int Sarl Control system for a local telepresence video conferencing system and method for establishing a video conferencing call.
JP5410720B2 (en) * 2008-09-25 2014-02-05 日立コンシューマエレクトロニクス株式会社 Digital information signal transmitting / receiving apparatus and digital information signal transmitting / receiving method
US20100087230A1 (en) * 2008-09-25 2010-04-08 Garmin Ltd. Mobile communication device user interface
JP4577531B2 (en) 2008-10-28 2010-11-10 日本電気株式会社 Authentication server, communication system, connection device allocation method and program
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 (en) 2009-04-08 2011-06-22 候万春 Mobile phone terminal capable of selecting and switching front camera and rear camera
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
EP2285068B1 (en) * 2009-08-07 2014-06-25 BlackBerry Limited Method, mobile device and computer readable medium for mobile telepresence
KR101617289B1 (en) 2009-09-30 2016-05-02 엘지전자 주식회사 Mobile terminal and operation control method thereof
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
US20110242342A1 (en) * 2010-04-05 2011-10-06 Qualcomm Incorporated Combining data from multiple image sensors
US8744420B2 (en) 2010-04-07 2014-06-03 Apple Inc. Establishing a video conference during a phone call
US8725880B2 (en) * 2010-04-07 2014-05-13 Apple, Inc. Establishing online communication sessions between client computing devices
AU2015201127B2 (en) 2010-04-07 2017-02-23 Apple Inc. Establishing a video conference during a phone call
CN102010622B (en) 2010-10-27 2013-02-27 吴传仪 Anti-corrosion and anti-friction material and ash deposition free anti-corrosion and anti-friction powder conveying pipeline thereof

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276335A (en) * 1993-03-22 1994-09-30 Sony Corp Data processor
JPH09247655A (en) * 1996-03-01 1997-09-19 Tokyu Constr Co Ltd Remote control system
JP2002351802A (en) * 2001-05-24 2002-12-06 Cresys:Kk Method and system for data delivery using electronic mail
JP2003274376A (en) * 2002-03-14 2003-09-26 Sanyo Electric Co Ltd Mobile communication apparatus
JP2003299050A (en) * 2002-03-29 2003-10-17 Canon Inc Information distributor, information distribution system, information distributing method, program and recording medium
JP2003134382A (en) * 2002-08-30 2003-05-09 Canon Inc Camera controller
JP2008533838A (en) * 2005-03-09 2008-08-21 クゥアルコム・インコーポレイテッド Region of interest processing for video telephony
JP2007201727A (en) * 2006-01-25 2007-08-09 Nec Saitama Ltd Portable telephone with television telephone function
JP2009188975A (en) * 2008-01-11 2009-08-20 Sony Corp Teleconference terminal apparatus and image transmitting method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102310577B1 (en) * 2020-06-29 2021-10-13 주식회사 씨앤에이아이 Apparatus and method for managing RTP packets

Also Published As

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

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
KR102660942B1 (en) Establishing a video conference during a phone call

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191007

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201204

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210303

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210830

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210922

R150 Certificate of patent or registration of utility model

Ref document number: 6949917

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150