CN102215373B - In conference display adjustments - Google Patents

In conference display adjustments Download PDF

Info

Publication number
CN102215373B
CN102215373B CN201010602653.9A CN201010602653A CN102215373B CN 102215373 B CN102215373 B CN 102215373B CN 201010602653 A CN201010602653 A CN 201010602653A CN 102215373 B CN102215373 B CN 102215373B
Authority
CN
China
Prior art keywords
display
image
video
mobile device
video conference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010602653.9A
Other languages
Chinese (zh)
Other versions
CN102215373A (en
Inventor
E·C·克兰菲尔
S·O·勒梅
吴锡荣
周小松
J·S·阿布安
郑铉国
小R·加西亚
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 Computer 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
Priority claimed from US12/794,768 external-priority patent/US8502856B2/en
Application filed by Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN102215373A publication Critical patent/CN102215373A/en
Application granted granted Critical
Publication of CN102215373B publication Critical patent/CN102215373B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

Some embodiments provide a method for modifying a composite display of a first mobile device that is engaged in a video conference with a second device. The method presents, on the first device, the composite display having a first video captured by the first device and a second video captured by the second device. The method receives, at the first device, an input for modifying the composite display during the video conference. The method modifies the composite display based on the received input.

Description

Display adjustment in meeting
When the model machine of the iPhone 4 of Apple is when being stolen from an engineer of Apple on March 25th, 2010, the invention that will disclose and advocate in the application by advance and without Apple to authorize to public.Before this obviously theft, not yet submit to the application based on US priority application.
Background technology
Many current portable sets, such as intelligent telephone set possesses video capture function.By the camera on telephone set, the user of portable set can take rest image and video.But, after completing video capture, in order to the video of shooting is sent to the opposing party, user directly must send to described the opposing party video usually, or video is uploaded to another location (such as, internet video trustship website (hosting site)).Unfortunately, this does not allow described the opposing party when portable set capture video, checks live video stream.
In addition, the portable set of standard is only equipped with a camera, and process is quite difficult from the information of this camera.Desirable equipment ought to have multi-section camera, and can send real-time video, and described real-time video is the synthesis of the video from least two cameras.Just process the equipment of the video flowing of multiple shooting, and with described equipment connection, be responsible for process the network of the transmission of live video stream, in view of the resource-constrained that can utilize for portable set, this is an especially difficult problem.
Summary of the invention
Some embodiments of the present invention provide to be had two and can take pictures and the mobile device of camera of video.The mobile device of some embodiments has the photograph image of display shooting and the display screen of video image.It also comprises the image of preservation shooting to send the memory of another equipment after a while to.Described equipment also has network interface, during described network interface allows the real time communication session of this equipment between the user of multiple equipment, the image of shooting is sent to one or more equipment.Described equipment also comprises encoder, and it can use described encoder to the Image Coding of shooting, stores so that local or send another equipment to.Described mobile device also comprises decoder, and described decoder allows this equipment to the diagram decoding of being taken by another equipment during real time communication session, or to the image decoding that this locality is preserved.
The example relating to the real time communication session of the transmission of the video image of shooting is video conference.In certain embodiments, any specific time of mobile device during video conference, the video image of a transmission camera shooting is merely able to.But, in other embodiments, mobile device during video conference or other real time communication session, can send the video image from its two camera shootings simultaneously.
With the video conference of another equipment during, the mobile device of some embodiments, by together with the video taken by one portion or two cameras, transmits the content of other type.During the video of the camera shooting that an example of other content this is included in this equipment for video conference, the low resolution of being taken by another camera of equipment or high resolution picture image.Other example of other content this comprises (1) and is kept at file on equipment and other content, (2) screen display of equipment (namely, display content on the screen of the device), (3) during video conference or other real time communication session, from the content that another equipment receives, etc.
The mobile device of some embodiments adopts (in-conference) adjustment technology in novel meeting, adjusts during video conference.Such as, when only transmitting the video of a camera shooting during video conference, the mobile device of some embodiments can become transmit the video taken by its another camera by switching at runtime.In this case, the mobile device of some embodiments participates in this switching notice in any miscellaneous equipment of video conference, makes described miscellaneous equipment can level and smooth conversion between its that one end provides the video taken by these two cameras.
In certain embodiments, the request switching camera can not only originate from during video conference, carries out " this locality " equipment switched between its camera, but also can originate from another " long-range " equipment of the video just receiving local device shooting.In addition, another equipment of device directive switching camera is allowed to be an example of the remote control ability of the equipment of some embodiments.In certain embodiments, exposure adjustment operation (such as, automatic exposure) can be comprised, Focussing operation (such as, automatic focus) etc. by long-range other example operated to device directive.Another example that can adjust in the Local or Remote meeting of novelty of specifying identifies the area-of-interest (ROI) in capture video, with the behavior using described ROI to identify amendment shooting camera, revise the image processing operations of the equipment with shooting camera, or amendment is with the encoding operation of the equipment of shooting camera.
Another example adjusted in the meeting of the novelty of some embodiments relates to the real time modifying of the synthetic video display that equipment produces.Specifically, in certain embodiments, mobile device produces the compound display simultaneously showing the multiple videos taken by the multi-section camera of one or more equipment.In some cases, compound display is placed on video in adjacent viewing area and (such as, is placed in adjacent window).In other cases, compound display is picture-in-picture (PIP) display, described PIP display comprises at least two viewing areas of display two different videos, and one of them viewing area is the main viewing area of background, and another viewing area is that the prospect overlapped on the main viewing area of background inserts viewing area.
The real time modifying of the synthetic video display in some embodiments relates in response to user to the selection of viewing area and movement, mobile one or more viewing area in compound display.When providing the screen rotation of equipment of compound display, some embodiments also rotate this compound display during video conference.In addition, video in user's exchange (swap) PIP display of the mobile device permission equipment of some embodiments (namely, the video that prospect is inserted in display appears in the main display of background, and the video in the main display of background is appeared in prospect insertion display).
Summary of the invention intention above simply introduces some embodiments of the present invention.Do not mean it is introduction or the summary of all subject matters disclosed in the literature.Embodiment below and the accompanying drawing related in a specific embodiment will further illustrate the embodiment described in described summary of the invention, and other embodiment.Therefore, be appreciated that all embodiments that the literature describes, need intactly to investigate summary of the invention, embodiment and accompanying drawing.
Accompanying drawing explanation
Novel feature of the present invention is set forth in accessory claim.But, in order to illustrate, in following accompanying drawing, illustrate several embodiments of the present invention.
The compound display of some embodiments of Fig. 1 graphic extension.
The another kind of compound display of some embodiments of Fig. 2 graphic extension.
Fig. 3 is two Video processing of camera movement equipment of some embodiments of graphic extension and the software architecture of coding module conceptually.
The photographic images processing unit of Fig. 4 some embodiments of graphic extension conceptually.
Fig. 5 concept map explains orally Benq in the example of the different frame rates of different vertical blanking intervals (VBI).
Fig. 6 concept map explains orally Benq in the example of the different interlacing scan frame rate of different VBI.
Another photographic images processing unit of Fig. 7 some embodiments of graphic extension conceptually.
Another photographic images processing unit of Fig. 8 some embodiments of graphic extension conceptually.
Fig. 9 is two video conference of camera movement equipment of some embodiments of graphic extension and the software architecture of processing module conceptually.
The example video conference request sending and receiving sequence of Figure 10 some embodiments of graphic extension conceptually.
The user interface of the video conference setting operation of some embodiments of Figure 11 graphic extension.
The user interface accepting video conference invitation of some embodiments of Figure 12 graphic extension.
Another user interface accepting video conference invitation of some embodiments of Figure 13 graphic extension.
Another user interface of the video conference setting operation of some embodiments of Figure 14 graphic extension.
The process of Figure 15 bit rate of the setting video conference of some embodiments of graphic extension conceptually.
Figure 16 is the video conference of two camera movement equipment of some embodiments of graphic extension and another software architecture of processing module conceptually.
Another software architecture of Figure 17 two camera movement equipment of some embodiments of graphic extension conceptually.
Figure 18 process of being performed by the video conference manager of some embodiments of graphic extension in such as Figure 16 of graphic extension conceptually.
The temporal noise of Figure 19 some embodiments of graphic extension conceptually reduces the software architecture of module.
The process of Figure 20 temporal noise of the reduction video image of some embodiments of graphic extension conceptually.
Figure 21 process of being performed by the image processing manager of some embodiments of graphic extension in such as Fig. 9 of graphic extension conceptually.
The user interface of the exposure adjustment operation of some embodiments of Figure 22 graphic extension.
The user interface of the Focussing operation of some embodiments of Figure 23 graphic extension.
Figure 24 perspective correction process of being performed by the image processing manager of some embodiments of graphic extension in such as Figure 16 of graphic extension conceptually.
Figure 25 conceptually some embodiments of graphic extension example perspective correction operation.
Figure 26 conceptually graphic extension as the software architecture of the encoder-driven device of some embodiments of graphic extension in Figure 16.
Figure 27 image scaling process of being performed by the encoder-driven device of some embodiments of graphic extension in such as Figure 26 of graphic extension conceptually.
Figure 28 conceptually graphic extension by the software architecture of the decoder driver of some embodiments of graphic extension in such as Figure 16.
Figure 29 image zooming-out process of being performed by the decoder driver of some embodiments of graphic extension in such as Figure 28 of graphic extension conceptually.
The encoder-driven device comprising two rate controllers of some embodiments of Figure 30 graphic extension.
Figure 31 conceptually graphic extension as the software architecture of the networking manager of some embodiments of graphic extension in Figure 16.
Some embodiments of Figure 32 graphic extension lock onto the user interface that corner (snap to corner) operates.
Another user interface locking onto corner operation of some embodiments of Figure 33 graphic extension.
The PIP of some embodiments of Figure 34 graphic extension shows the user interface of rotary manipulation.
The PIP of some embodiments of Figure 35 graphic extension shows another user interface of rotary manipulation.
The PIP of some embodiments of Figure 36 graphic extension shows another user interface of rotary manipulation.
The PIP of some embodiments of Figure 37 graphic extension shows another user interface of rotary manipulation.
Prospect in the convergent-divergent PIP display of some embodiments of Figure 38 graphic extension inserts the user interface of viewing area.
Another user interface of insertion viewing area in the convergent-divergent PIP display of some embodiments of Figure 39 graphic extension.
Another user interface of insertion viewing area in the convergent-divergent PIP display of some embodiments of Figure 40 graphic extension.
Another user interface of insertion viewing area in the convergent-divergent PIP display of some embodiments of Figure 41 graphic extension.
The user interface of the area-of-interest in the identification display frame of some embodiments of Figure 42 graphic extension.
Another user interface of area-of-interest in the identification display frame of some embodiments of Figure 43 graphic extension.
Another user interface of area-of-interest in the identification display frame of some embodiments of Figure 44 graphic extension.
The process that two camera movement equipment carries out local switching camera operation of some embodiments of Figure 45 graphic extension.
The user interface of the switching camera operation of some embodiments of Figure 46 graphic extension.
Another user interface of the switching camera operation of some embodiments of Figure 47 graphic extension.
Another user interface of the switching camera operation of some embodiments of Figure 48 graphic extension.
Another user interface of the switching camera operation of some embodiments of Figure 49 graphic extension.
The process that two camera movement equipment carries out long-range switching camera operation of some embodiments of Figure 50 graphic extension.
The Long-distance Control of some embodiments of Figure 51 graphic extension switches the user interface of camera operation.
The Long-distance Control of some embodiments of Figure 52 graphic extension switches another user interface of camera operation.
The Long-distance Control of some embodiments of Figure 53 graphic extension switches another user interface of camera operation.
The Long-distance Control of some embodiments of Figure 54 graphic extension switches another user interface of camera operation.
The process carrying out exposure adjustment operation of Figure 55 some embodiments of graphic extension conceptually.
The user interface of carrying out exposure adjustment operation of some embodiments of Figure 56 graphic extension.
Another user interface of carrying out exposure adjustment operation of some embodiments of Figure 57 graphic extension.
Another user interface of carrying out exposure adjustment operation of some embodiments of Figure 58 graphic extension.
Figure 59 is the exposure adjustment processing that performed by the image processing manager of some embodiments of graphic extension in such as Figure 16 of graphic extension conceptually.
The exposure adjustment operation of Figure 60 some embodiments of graphic extension conceptually.
Figure 61 conceptually some embodiments of graphic extension execution Focussing operation process.
The user interface of the Focussing operation of some embodiments of Figure 62 graphic extension.
Another user interface of the Focussing operation of some embodiments of Figure 63 graphic extension.
Another user interface of the Focussing operation of some embodiments of Figure 64 graphic extension.
The difference display about the video from one or more pairs of camera movement equipment shootings of some embodiments of Figure 65 graphic extension arranges.
Some embodiments of Figure 66 graphic extension the user interface inserted on background video that the prospect of video is superimposed upon in PIP display.
The technology of the prospect of the determination video image of some embodiments of Figure 67 graphic extension.
Some embodiments of Figure 68 graphic extension during video conference, exchange PIP display in insertion display and background display user interface.
The user interface locking onto corner operation of some embodiments of Figure 69 graphic extension.
The user interface locking onto corner and push operation of some embodiments of Figure 70 graphic extension.
The PIP of some embodiments of Figure 71 graphic extension shows the user interface of rotary manipulation.
The PIP of some embodiments of Figure 72 graphic extension shows another user interface of rotary manipulation.
Some embodiments of Figure 73 graphic extension during video conference, from two long-distance videos, select the user interface of a video.
Some embodiments of Figure 74 graphic extension during video conference, from two local videos, select the user interface of a video.
The user interface of the video being used for video conference is selected before the meeting of some embodiments of Figure 75 graphic extension.
The example of the allocated bandwidth between two videos taken by two camera movement equipment of some embodiments of Figure 76 graphic extension.
The arbiter module of Figure 77 rate controller of the two camera movement equipment of management of some embodiments of graphic extension conceptually.
The method that the image taken the camera by two camera movement equipment of Figure 78 some embodiments of graphic extension is conceptually encoded.
The other method that the image taken the camera by two camera movement equipment of Figure 79 some embodiments of graphic extension is conceptually encoded.
Figure 80 is illustrated in the example image synthesis of the method for graphic extension in Figure 79.
The other method that the image taken the camera by two camera movement equipment of Figure 81 some embodiments of graphic extension is conceptually encoded.
The method that the image taken the camera by two camera movement equipment of Figure 82 some embodiments of graphic extension is conceptually decoded.
The other method that the image taken the camera by two camera movement equipment of Figure 83 some embodiments of graphic extension is conceptually decoded.
Figure 84 is the video conference of two camera movement equipment of some embodiments of graphic extension and another software architecture of processing module conceptually.
The user interface of the multipart video-meeting of some embodiments of Figure 85 graphic extension.
Another user interface of the multipart video-meeting of some embodiments of Figure 86 graphic extension.
Another user interface of the multipart video-meeting of some embodiments of Figure 87 graphic extension.
API (API) architecture of Figure 88 some embodiments of graphic extension conceptually.
The architecture of two camera movement computing equipments of some embodiments of Figure 89 graphic extension.
Touch I/O (I/O) equipment of Figure 90 some embodiments of graphic extension conceptually.
The example communication system of Figure 91 some embodiments of graphic extension conceptually.
Another example communication system of Figure 92 some embodiments of graphic extension conceptually.
Embodiment
In the following description, for purpose of explanation, set forth numerous details.But, those of ordinary skill in the art will appreciate that and can put into practice the present invention when not utilizing these details.In other cases, in order to make description of the invention smudgy because of unnecessary details, known structure and equipment is illustrated in block form an.
Some embodiments of the present invention provide a kind of to be had two and can take pictures and the mobile device of camera of video.The example of mobile device comprises the mobile computing device of mobile phone, intelligent telephone set, personal digital assistant (PDA), laptop computer, tablet personal computer or other type any.Photo used herein refers to by each ground of single shot pattern, or by the quick screening-mode picture image taken by camera of several ground at every turn.On the other hand, video refers to a series of video images that camera is taken with special speed (being commonly referred to frame rate).The representative frame rate of capture video is 25 frames/second (fps), 30fps and 60fps.The camera of the mobile device of some embodiments can with these and other frame rate capture video image (that is, frame of video).
The mobile device (1) of some embodiments can show photograph image and the video image of shooting, (2) image of shooting can be preserved, to send another equipment after a while to, (3) can during the real time communication session between the multidigit user of multiple equipment, the image of shooting is sent to one or more equipment, (4) to the Image Coding of shooting, can store so that local or send another equipment to.
The example relating to the real time communication session of the transmission of the video image of shooting is video conference.In certain embodiments, any specific time during video conference, mobile device is merely able to the video image of a transmission camera shooting.But, in other embodiments, during video conference or other real time communication session, mobile device can transmit the video image of its two camera shootings simultaneously.
The mobile device of some embodiments produces compound display, shows while described compound display comprises the multiple videos taken by the multi-section camera of one or more equipment.In some cases, compound display is placed on video in adjacent viewing area and (such as, is placed in adjacent window).A this example of Fig. 1 graphic extension compound display 100, compound display 100 comprises two adjacent viewing areas 105 and 110, these two viewing areas 105 and 110 show simultaneously to be taken by two of an equipment cameras, or two videos being taken by two cameras of two distinct devices participating in video conference.
In other cases, compound display is the PIP display of at least two viewing areas comprising display two different videos, and one of them viewing area is the main viewing area of background, and another viewing area is that the prospect overlapped on the main viewing area of background inserts viewing area.A this example of Fig. 2 graphic extension synthesis PIP display 200.Synthesis PIP display 200 comprises the main viewing area of background 205 and the prospect overlapped on the main viewing area of background inserts viewing area 210.These two viewing areas 205 and 210 show simultaneously to be taken by two of an equipment cameras, or two videos being taken by two cameras of two distinct devices participating in video conference.Although the example synthesis PIP display illustrated in this article and discuss is similar to the synthesis PIP display 200 that the whole prospect of display in the main viewing area of background 205 inserts viewing area 210, but have and overlap on the main viewing area 205 of background, but and other synthesis PIP display that incomplete prospect in the main viewing area of background 205 inserts viewing area 210 is also possible.
Except with the video conference of another equipment during transmit except video content, the mobile device of some embodiments can transmit the content of other type together in company with the video content of meeting.When the video for video conference taken by one of example camera being included in equipment of other content this, the low resolution of being taken by another camera of this equipment or high resolution picture image.Other example of other content this comprises (1) and is kept at file on equipment and other content, (2) screen display of equipment (namely, display content on the screen of the device), (3) during video conference or other real time communication session, from the content that another equipment receives, etc.
The mobile device of some embodiments adopts adjustment technology in novel meeting, adjusts during video conference.Such as, when only transmitting the video of a camera shooting during video conference, the mobile device of some embodiments can become transmit the video taken by its another camera by switching at runtime.In this case, the mobile device of some embodiments participates in this switching notice another equipment any of video conference, and another equipment described in making can provide the level and smooth conversion between this video that two cameras are taken in its that one end.
In certain embodiments, the request switching camera can not only originate from during video conference, carries out " this locality " equipment switched between its camera, but also can originate from another " long-range " equipment of the video just receiving local device shooting.In addition, another equipment of device directive switching camera is allowed to be an example of the remote control ability of the equipment of some embodiments.In certain embodiments, exposure adjustment operation (such as, automatic exposure) can be comprised, Focussing operation (such as, automatic focus) etc. by long-range other example operated to device directive.Another example that can adjust in the Local or Remote meeting of novelty of specifying identifies the area-of-interest (ROI) in capture video, with the behavior using described ROI to identify amendment shooting camera, revise the image processing operations of the equipment with shooting camera, or amendment is with the encoding operation of the equipment of shooting camera.
Another example adjusted in the meeting of the novelty of some embodiments relates to the real time modifying of the synthetic video display that equipment produces.Specifically, in certain embodiments, the real time modifying of synthetic video display relates in response to user to the selection of viewing area and movement, mobile one or more viewing area in compound display.When providing the screen rotation of equipment of compound display, some embodiments also rotate this compound display during video conference.In addition, (namely the mobile device of some embodiments allows the order of the video in user's upset (flip) PIP display of equipment, the video that prospect is inserted in display appears in the main display of background, and the video in the main display of background is appeared in prospect insertion display).
The following describes several more detailed embodiment.I joint provides the explanation of the video processing architecture of some embodiments.Subsequently, II joint describes the photographic images processing unit of some embodiments.In certain embodiments, photographic images processing unit is the assembly of the original image that the responsible process of equipment is taken by the camera of equipment.
Next, III joint describes the video conference architecture of some embodiments.III joint also describes the video conference module of some embodiments, and arranges several modes of single camera video conference.Afterwards, IV joint describes adjustment and control operation in the meeting of some embodiments.V joint describe subsequently some embodiments during video conference, transmit and display from the video conference feature of multiple videos of each equipment.Next, during VI joint is described in video conference, in company with the transmission of non-real-time content real-time video together.Finally, VII joint describes the hardware architecture of two camera apparatus of some embodiments.
I. video capture and process
Fig. 3 is the Video processing of two camera movement equipment of some embodiments of graphic extension and coding module 300 conceptually.In certain embodiments, module 300 processes the image that the camera by two camera movement equipment is taken, and encodes to video.As shown in Figure 3, module 300 comprises photographic images processing unit (CIPU) driver 305, exchange of media module 310, encoder-driven device 320 and video processing module 325.
In certain embodiments, program (user of media content and producer) the switched-media content on exchange of media module 310 permission equipment and the instruction of the process about media content.In Video processing and coding module 300, the exchange of media module 310 of some embodiments between video processing module 325 and CIPU driver 305, and between video processing module 325 and encoder-driven device 320 these instructions of route and media content.In order to the route making described instruction and media content is easier, the exchange of media module 310 of some embodiments provides one group of API (API) of user for media content and producer.In the embodiment that some are such, exchange of media module 310 is one group of one or more framework of the part as the operating system run on two camera movement equipment.An example of this exchange of media module 310 is Core Media frameworks that Apple provides.
The image that video processing module 325 is taken the camera by equipment and/or video carry out image procossing.The example of this operation comprises exposure adjustment operation, Focussing operation, perspective correction, dynamic range adjustment, image scaling, Images uniting etc.In certain embodiments, some image processing operations also can be performed by exchange of media module 310.Such as, as shown in Figure 3, the exchange of media module 310 of some embodiments performs temporal noise reduction (TNR) operation (such as, with TNR 315) of the noise in the video image reducing and taken by the camera of equipment.The other example of this image processing operations of video processing module 325 and exchange of media module 310 is provided below.
By exchange of media module 310, video processing module 325 and CIPU driver 305 and encoder-driven device 320 interface, as mentioned above.CIPU driver 305 serves as the communication interface between photographic images processing unit (CIPU) 330 and exchange of media module 310.As described further below, CIPU 330 is assemblies of two camera apparatus, is responsible for processing the image taken during the image taking or movie shooting operation of the camera of equipment.CIPU driver 305, by exchange of media module 310, receives from the image of one or two camera of equipment and/or the request of video from video processing module 325.CIPU driver 305 passes to CIPU 330 described request, responsively, receive image and/or the video of request from CIPU 330, CIPU driver 305, subsequently by exchange of media module 310, sends to video processing module 325 the image received and/or video.By CIPU driver 305 and exchange of media module 310, the video processing module 325 of some embodiments also sends instruction to CIPU 330, to revise its certain operations (such as, revising the frame rate of camera, exposure adjustment operation, Focussing operation etc.).
Encoder-driven device 320 serves as the communication interface between exchange of media module 310 and encoder hardware 335 (encoding pack such as, on encoder chip, chip system etc.).In certain embodiments, encoder-driven device 320, by exchange of media module 310, receives image and the request to Image Coding from video processing module 325.Encoder-driven device 320 sends to encoder 335 the image that will encode, and encoder 335 carries out photo coding or Video coding to image subsequently.When encoder-driven device 320 receives coded image from encoder 335, encoder-driven device 320 passes through exchange of media module 310, coded image loopback to video processing module 325.
In certain embodiments, video processing module 325 can carry out different operations to it from the coded image of encoder accepts.The example of described operation comprises coded image is kept in the memory of equipment, transmits coded image by the network interface of equipment in video conference, etc.
In certain embodiments, some or all modules of Video processing and coding module 300 are realized as a part for operating system.Such as, some embodiments are embodied as all four assemblies 305,310,320 and 325 of Video processing and coding module 300 part for the operating system of equipment.Other embodiment is embodied as a part for the operating system of equipment exchange of media module 310, CIPU driver 305 and encoder-driven device 320, and using video processing module 325 as the application run on an operating system.In addition, other realization of module 300 is also possible.
Present explanation during video capture session, the operation of Video processing and coding module 300.In order to start video capture session, video processing module 325 is initialized as the several assemblies needed for video capture session.In certain embodiments, these assemblies comprise (1) CIPU 330, (2) proportional zoom of video processing module 325 and synthesis module (not shown), (3) the image processing module (not shown) of video processing module 325, and (4) encoder 335.In addition, when participating in video conference, the video processing module 325 initialization network manager (not shown) of some embodiments.
By exchange of media module 310 and CIPU driver 305, video processing module sends to CIPU 330 its initialization request, starts video capture to make one of equipment or two cameras.In certain embodiments, described request specifies the particular frame speed, exposure and the scaling size that need every portion camera of capture video.Response described request, CIPU 330 starts frame rate, exposure and the scaling size of specifying, and returns the video image from asked camera.These video images are returned to video processing module 325 by CIPU driver 305 and exchange of media module 310, and as mentioned above, before video image is supplied to video processing module 325, exchange of media module 310 pairs of video images carry out TNR operation.At video processing module 325, video image is stored in buffer (not shown), to carry out other image procossing.
The image processing module of video processing module 325 fetches preservation video image in a buffer, to carry out other Video processing.Proportional zoom and synthesis module fetch the video image after process subsequently, so that scaled video image (if the necessary words of real-time display on the display screen of equipment).In certain embodiments, the image that this module is taken with two cameras by equipment, or the image creation composograph taken by the camera of the camera of equipment and another equipment during being used in video conference, to provide the real-time display of the video image of shooting on equipment, or create the composite video image for coding.
Process and/or the video image after synthesizing are provided to encoder 335 by encoder-driven device 320 and exchange of media module 310.Encoder 335 is subsequently to encoding video pictures.Coded image is returned to video processing module 325 (again by encoder-driven device 320 and exchange of media module 310) subsequently, to be kept on equipment, or transmits during video conference.When equipment participates in video conference, network manager (by video processing module 325 initialization) fetches these coded images subsequently, to coded image subpackage, and by the network interface (not shown) of equipment, coded image is sent to one or more miscellaneous equipment.
II. photographic images process
A. single lead
The image taken by the camera of two camera movement equipment of some embodiments is original raw image.Can be used to other operation at these images, before such as image being sent to another equipment (such as, during video conference), preservation image or display image, these images need to transform to the specific color space.In addition, the image of camera shooting needs processed, with error recovery and/or distortion, and the color, size etc. of adjustment image.Therefore, some embodiments, before preservation, transmitting and show this image, are carried out several process to image and are operated.The part process of described image is performed by CIPU 330.
An example of described CIPU is illustrated in Fig. 4.Specifically, Fig. 4 summarizes the photographic images processing unit (CIPU) 400 of some embodiments of ground graphic extension.CIPU 400 comprise or each only process from the image of one of the camera of equipment, or process single processing pipeline (single processing pipeline) 485 of the image of two cameras from equipment according to time division multiplex modes (that is, according to time-interleaved mode) simultaneously.Differently can configure the processing pipeline 485 of CIPU 400, to process different qualities and/or the operation setting of different camera.The example of the different camera characters in some embodiments comprises different resolution, noise transducer, lens type (fixed lens or zoom lens), etc.In addition, in certain embodiments, the example that equipment can be arranged according to the different operating of its operate camera comprises image resolution ratio size, frame rate, zoom level, exposure etc.
As shown in Figure 4, CIPU 400 comprises sensor assembly 415, OK/frame buffer 417, bad pixel correction (BPC) module 420, lens shade (LS) module 425, demosaicing module 430, white balance (WB) module 435, γ module 440, color space transformation (CSC) module 445, tone, saturation and contrast (HSC) module 450, scaler module 455, filter module 460, statistics engine 465, two groups of registers 470, and controller module 475.In certain embodiments, whole modules of CIPU 400 are all realize with hardware (such as, ASIC, FPGA, SOC with microcontroller, etc.), and in other embodiments, some or all module software simulating of CIPU 400.
As shown in Figure 4, two pel array 410a and 410b of sensor assembly 415 and two cameras of equipment, and two sensors 405a and 405b coupled in communication.In certain embodiments, by the mobile Industry Processor Interface (MIPI) of each camera sensor, make described coupled in communication easier.
By described coupled in communication, sensor assembly 415 can forward instruction to camera, to control the various aspects of the operation of every portion camera, and such as its power stage, zoom level, focal length, exposure etc.In certain embodiments, every portion camera has four kinds of operating power patterns.Under the first operating power pattern, camera is de-energized.With regard to the second operating power pattern, camera is energized, but camera is not also configured.Under the third operating power pattern, camera is energized, and the transducer of camera is configured, and the pixel collection photon of camera sensor, and the photon collected is converted to digital value.But, camera sensor does not also send image to sensor assembly 415.Finally, under the 4th kind of operating power pattern, camera is under the operating power pattern identical with the third power mode, except camera sends except image to sensor assembly 415 now.
During the operation of equipment, camera repeatedly can be switched to another kind of operating power pattern from a kind of operating power pattern.When switch operating power mode, some embodiments require that camera is according to said sequence switch operating power mode.So in these embodiments, the camera under the first operating power pattern can only be switched to the second operating power pattern.When camera is in the second operating power pattern, it can be switched to the first operating power pattern or the third operating power pattern.Similarly, camera can be switched to the second operating power pattern or the 4th kind of operating power pattern from the third operating power pattern.When camera is in the 4th kind of operating power pattern, it is merely able to switch back the third operating power pattern.
In addition, lower one or front a kind of operating power pattern needs a certain amount of time is switched to from a kind of operating power pattern.Thus, switch two or three operating power pattern and be slower than a kind of operating power pattern of switching.Different operating power patterns also consumes the power of different amount.Such as, the 4th kind of operating power pattern consumes the power of maximum, and the power that the third operating power pattern consumes is higher than the first and the second operating power pattern, and the power that the second operating power pattern consumes is higher than the first operating power pattern.In certain embodiments, the first operating power pattern does not consume any power.
When camera is not in the 4th kind of operating power pattern of photographic images, can make camera remain on other operating power pattern once.The determination remained under which kind of mode of operation of no camera is depended on, and permission camera consumes how much power and how soon camera needs respond the request starting photographic images.Such as, the camera ratio being configured to work according to the third operating power pattern (such as, standby mode) is configured to the more power of camera consumption being in the first operating power pattern (that is, power-off).But, when instruction camera photographic images, the 4th kind of operating power pattern can be switched to quickly than the camera according to the first operating power work pattern according to the camera of the third operating power work pattern.Thus, according to different requirements (such as, to the response time of the request of photographic images, power consumption), when not photographic images, camera can be configured to according to different operating power work patterns.
As described further below, when video processing module 325 asks one or two cameras to start photographic images, and when sensor assembly 415 receives this request by controller module 475, by the coupled in communication of it and every portion camera, sensor assembly 415 instruction one group or two groups of camera sensor can start photographic images.Baeyer filter is superimposed on each camera sensor, thus each camera sensor exports Baeyer format-pattern, and described Baeyer format-pattern is stored in the pel array be associated with each camera sensor.Baeyer format-pattern is that wherein each pixel only preserves a kind of color value: red, blue or green image.
By coupling of it and pel array 410a and 410b, sensor assembly 415 fetches the primitive Bayer format-pattern be kept in camera image pixel array 410a and 410b.Fetched the speed of image from the pel array of camera by control sensor assembly 415, sensor assembly 415 can control the frame rate of the video image taken by particular camera.By controlling the speed that its image is fetched, sensor assembly 415 can also interweave the reading of the image taken by different camera, to interweave the image procossing of CIPU processing pipeline 485 to the photographic images from different camera.The control that sensor assembly 415 is fetched its image is further illustrated in below in the son joint of II.A.1 and II.A.2.
Sensor assembly 415 image line (that is, the several rows of pixel of image) that it is fetched from pel array 410a and 410b preserve be expert at/frame buffer 417 in.The each image line in row/frame buffer 417 is processed by CIPU processing pipeline 485.As shown in Figure 4, CIPU processing pipeline 485 is made up of BPC module 420, LS module 425, demosaicing module 430, WB module 43, γ module 440, CSC module 445, HSC module 450, scaler module 455 and filter module 460.In certain embodiments, (that is, by row) CIPU processing pipeline 485 processes the image from row/frame buffer 417 line by line, and in other embodiments, and the process of CIPU processing pipeline 485 frame by frame comes voluntarily/the whole image of frame buffer 417.
In the example pipeline of graphic extension in the diagram, BPC module 420 is the modules of fetching image from row/frame buffer 417.BPC module 420 is carried out bad pixel and is eliminated operation, this operation manages to correct the bad pixel that may be caused by one or more defective camera sensor in the image fetched (such as, defective photon sensor not sensor light, sensor light etc. mistakenly).In certain embodiments, BPC module 420, by the specific pixel in movement images and the one or more neighbors in image, detects bad pixel.If the difference between the value of the value of described specific pixel and described neighbor is greater than threshold quantity, the mean value of the value of color (that is, red, green and blue) the several neighbors identical with described specific pixel is so used to replace the value of described specific pixel.
The operation part of BPC module 420 is by for this module, the value be kept in two groups of registers 470 of CIPU 400 controls.Specifically, in order to process the image taken by two of equipment different cameras, some embodiments differently configure CIPU processing pipeline 485 about every portion camera, as mentioned above.By preserving two groups of different values in the different register 470a (Ra) of two groups at CIPU 400 and 470b (Rb), be two different camera arrangement CIPU processing pipeline 485.Often group register 470 comprises a register (Ra or Rb) for each module 420-460 in CIPU processing pipeline 485.The value that one group defines the operation of a processing pipeline module preserved by each register in each Parasites Fauna.Therefore, as shown in Figure 4, Parasites Fauna 470a is used to indicate the mode of operation of each processing pipeline module of a camera (camera A) of two camera movement equipment, and Parasites Fauna 470b is used to indicate the mode of operation of each processing pipeline module of another camera (camera B) of two camera movement equipment.
The example every portion camera differently being configured to CIPU processing pipeline 485 is that the block configuration of CIPU processing pipeline 485 is become to process the image varied in size.Such as, if camera sensor 405a is 640 × 480 pixels, camera sensor 405b is 2048 × 1536 pixels, so Parasites Fauna 470a is configured to hold instruction the value of modules process 640 × 480 pixel image of CIPU processing pipeline 485, and Parasites Fauna 470b is configured to hold instruction the value of modules process 2048 × 1536 pixel image of CIPU processing pipeline 485.
In certain embodiments, different processing pipeline configuration (that is, register value) is stored in during different profiles arranges.In the embodiment that some are such, one of the user of mobile device is allowed to select profile to arrange (such as, by showing user interface on the mobile apparatus), to arrange the operation of or multi-section camera.Such as, user can select camera arrangement to become the profile of shooting high-resolution video to arrange, become the profile of shooting low-resolution video to arrange identical camera arrangement, or two cameras are all configured to the profile setting of taking the static image of high-resolution.Various different configuration is all possible, can be stored in during many different profiles arrange.In the embodiment that other is such, replace allowing user to select profile to arrange, the application selected according to user or activity, automatically select profile to arrange.Such as, if user selects video conference application, so automatically select the profile two camera arrangement being become capture video, if user selects application of taking a picture, so automatically select the profile one of camera being configured to take rest image, etc.
After BPS module 420, LS module 425 receives the image after bad pixel correction.LS module 425 performs correcting lens shadow operation, to correct the image deflects caused by the camera lens producing optical attenuation effect (that is, towards the edge of camera sensor, light reduces gradually).This effect cause image illumination uneven (such as, corner and/or edge darker).In order to correct these image deflects, the LS module 425 of some embodiments estimates the Mathematical Modeling of the illuminance decay of lens.The model estimated is used to the lenses attenuate of compensation image picture subsequently, with the part be not uniformly lighted of illumination image equably.Such as, if the brightness in the corner of image is the half of the brightness of picture centre, so the LS module 425 of some embodiments is multiplied by 2 corner pixels value, to produce uniform image.
Demosaicing module 430 performs demosaicing operation, to produce full-colour image by the image of sample color.As mentioned above, camera sensor exports Baeyer format-pattern, and because each pixel of Baeyer format-pattern only preserves a kind of colour, therefore Baeyer format-pattern is incomplete.Demosaicing module 430, by inserting the colour often organizing color in Baeyer format-pattern, reconstructs red, green, blue (RGB) image by Baeyer format-pattern.
WB module 435 performs white balance operation to the RGB image received from demosaicing module 430, the color similarity of the described content that human eye perceives in the color of picture material and actual life is arrived.WB module 435 adjusts white balance by adjusting the color of image, correctly to present neutral color (such as, grey, white etc.).Such as, the image of a blank sheet of paper under incandescent lamp may be revealed as yellow, and a piece of paper described in human eye perceives is white.In order to solve the difference between the color of image of transducer shooting and the color of the image of human eye perceives, WB module 435 adjusts the colour of image, makes the image taken correctly reflect the color of human eye perceives.
Statistics engine 465 is collected in the view data in each stage of CIPU processing pipeline 485.Such as, Fig. 4 represents that statistics engine 465 is collected in the view data after LS module 425, demosaicing module 430 and WB module 435.Different embodiments collects data from the different phase of the arbitrary number of CIPU processing pipeline 485.Statistics engine 465 processes the data of collecting, and according to the data after process, is adjusted the operation of camera sensor 405a and 405b by controller module 475 and sensor assembly 415.The example of this operation comprises exposure and focuses on.Although Fig. 4 display controls the statistics engine 465 of camera sensor 405a and 405b by controller module 475, but, other embodiment of statistics engine 465 controls camera sensor by sensor assembly 415.
Data after process also can be used for the operation of the modules adjusting CIPU 400.Such as, the statistics engine 465 of some embodiments, according to the data of collecting after WB module 435, adjusts the operation of WB module 435.In the embodiment that some are such, statistics engine 465 provides Automatic white balance (AWB) function, to adjust the white balance operation of WB module 435 by utilizing the data after processing.After other embodiment can use the process of collecting from the stage of the arbitrary number of CIPU processing pipeline 485, data are to adjust the operation of the arbitrary number module in CIPU processing pipeline 485.In addition, statistics engine 465 can also receive instruction from controller module 475, to adjust the operation of one or more modules of CIPU processing pipeline 485.
After receiving image from WB module 435, γ module 440 pairs of images carry out γ correct operation, with the brightness of Code And Decode camera arrangement or tristimulus values.The γ module 440 of some embodiments, by the linear signal of 10-12 bit being converted to the non-uniform encoding of 8 bits, with the γ value of correcting image, is carried out γ value and is corrected.Some embodiments utilize look-up table to correct γ value.
CSC module 445 the image received from γ module 440 from a color space transformation to another color space.Specifically, CSC module 445 image from RGB color space transformation to brightness and colourity (YUV) color space.But, other embodiment of CSC module 445 can be to and from the color space transformation image of arbitrary number.
The tone of the image that HSC module 450 adjustable receives from CSC module 445, saturation, contrast or their combination in any.Such as, HSC module 450 can adjust these character, to reduce noise or to strengthen image.Such as, the saturation of the image taken by low noise camera sensor can be increased, seem more bright-coloured to make image.On the contrary, the saturation of the image taken by strong noise camera sensor can be reduced, to reduce the coloured noise of this image.
After HSC module 450, the scalable image of scaler module 455, to adjust the pixel resolution of image, or the size of data of adjustment image.Such as, scaler module 455 also can reduce the size of image, to be applicable to less display.Such as, scaler module 455 can scaling images in a number of different ways.Such as, scaler module 455 can scale up (that is, amplifying) and reduce (that is, reducing) image in proportion.Scaler module 455 can also bi-directional scaling image, or shifting ground zoomed image.
Filter module 460 to one or more filtering operations of image applications received from scaler module 455, to change one or more attributes of some or all pixels of image.The example of filter comprises low pass filter, high pass filter, band pass filter, two-sided filter, Gaussian filter, etc.Thus, filter module 460 can to any multiple different filtering of image applications.
The controller module 475 of some embodiments is microcontrollers of the operation of control CIPU 400.In certain embodiments, controller module 475 (1) is by sensor assembly 41, control the operation of camera sensor (such as, exposure), (2) operation of control CIPU processing pipeline 485, (3) timing of control CIPU processing pipeline 485 (such as, when switch camera sensor, when switch register, etc.), (4) control photoflash lamp/stroboscope light (not shown), described photoflash lamp/stroboscope light is a part for two camera movement equipment of some embodiments.
The instruction that some embodiment process of controller module 475 receive from statistics engine 465 and CIPU driver 480.In certain embodiments, from two camera movement equipment (namely the instruction received from CIPU driver 480 is, be received from local device) instruction, and in other embodiments, from the instruction (Long-distance Control such as, during video conference) that the instruction of CIPU driver 480 reception is from another equipment.According to the instruction after process, controller module 475 can by the value of planning register 470, the operation of adjustment CIPU 400.In addition, controller module 475 during the operation of CIPU 400, dynamically can plan the value of register 470 again.
As shown in Figure 4, CIPU 400 comprises the number of modules in CIPU processing pipeline 485.But, those of ordinary skill in the art will appreciate that and only by the module of some graphic extensions, or can realize CIPU 400 with other disparate modules.In addition, the process performed by disparate modules can be applied sequentially to image according to different from the order of graphic extension in Fig. 4.
With reference now to Fig. 4, an exemplary operations of CIPU 400 is described.For the purpose of illustrating, one group of register Ra is used to process the image taken by the camera sensor 405a of two camera movement equipment, and one group of register Rb is used to process the image taken by the camera sensor 405b of two camera movement equipment.Controller module 475 receives the instruction produced by the image of one of camera of two camera movement equipment shooting from CIPU driver 480.
The modules of controller module 475 initialization CIPU processing pipeline 485 subsequently, to process the image taken by one of camera of two camera movement equipment.In certain embodiments, this comprises controller module 475 and checks whether the one group of correct register employed in register 470.If such as CIPU driver 480 instruction control unit module 475 produces the image taken by camera sensor 405a, so controller module 475 checks that whether one group of register Ra is one group of register that the module of CIPU 400 reads.If not, so controller module 475 switches between two groups of registers, makes this group register Ra be the one group of register read by the module of CIPU 400.
Concerning each module in CIPU processing pipeline 485, mode of operation is indicated by the value be kept in described one group of register Ra.As previously mentioned, the value in one group of register 470 can by dynamically again regular during the operation of CIPU 400.Thus the process of an image is different from the process of next image.Although the discussion of this exemplary operations of CIPU 400 describes the value of the mode of operation of each module reading and saving instruction modules in a register in CIPU 400, but in the embodiment of some software simulating, change modules parameter being sent to CIPU400 into.
In certain embodiments, controller module 475 postpones special time amount by instruction sensor module 415 after fetching image from pel array 410a, carrys out initializing sensor module 415.In other words, controller module 475 instruction sensor module 415 fetches image with special speed from pel array 410a.
Subsequently, controller module 475 is by sensor assembly 415 instruction camera sensor 405a photographic images.In certain embodiments, controller module 475 also provides exposure parameter and other camera operation parameter to camera sensor 405a.In other embodiments, camera sensor 405a uses the default value of camera sensor operating parameter.According to described parameter, camera sensor 405a takes original image, and described original image is stored in pel array 410a.Sensor assembly 415 fetches described original image from pel array 410a, and image is sent to row/frame buffer 417 to preserve, and CIPU processing pipeline 485 processes this image afterwards.
In some cases, image may be abandoned by row/frame buffer 417.When camera sensor 405a and/or 405b is with two-forty photographic images, the comparable BPC module 420 of sensor assembly 415 can be fetched image from row/frame buffer 417 and be received image quickly, and Image Saving be expert at/frame buffer 417 in (such as, when taking high frame rate video), OK/frame buffer 417 can become and be full of completely.When this occurs, the row/frame buffer 417 of some embodiments abandons image (that is, frame) according to first in first out.That is, when row/frame buffer 417 abandons a two field picture, OK/frame buffer 417 abandon be expert at/frame buffer 417 in other images all before that two field picture of receiving.
The image procossing of CIPU processing pipeline 485 fetches voluntarily/the image of frame buffer 417 from BPC module 420, starts with any bad pixel in correcting image.BPC module 420 sends to LS module 425 image subsequently, with any non-uniform illumination degree in correcting image.After the illuminance of correcting image, LS module 425 sends to demosaicing module 430 image, and demosaicing module 430 processes original image, produces RGB image by original image.Subsequently, WB module 435 receives RGB image from demosaicing module 430, and adjusts the white balance of RGB image.
As mentioned above, statistics engine 465 may have collected some data at each point of CIPU processing pipeline 485.Such as, as shown in diagram in Fig. 4, statistics engine 465 collects data after LS module 425, demosaicing module 430 and WB module 435.According to the data of collecting, the operation of the one or more modules in the operation of statistics engine 465 adjustable camera sensor 405a and/or CIPU processing pipeline 485, to adjust the shooting of the successive image from camera sensor 405a.Such as, according to the data of collecting, statistics engine 465 can determine that the exposure of present image is too low, thus increases the exposure of follow-up shot image by sensor assembly 415 instruction camera sensor 405a.Thus the statistics engine 465 of some embodiments plays the feedback loop of some process operations.
After WB module 435 adjusts the white balance of image, it sends to γ module 440 image, to carry out γ correction (such as, adjusting the gamma curve of image).CSC module 445 receives the image after γ correction from γ module 440, the circumstances in which people get things ready for a trip of going forward side by side spatial alternation.In this example, CSC module 445 becomes YUV image RGB image conversion.In other words, CSC module 445 image that the image conversion one-tenth yuv color space showed by the RGB color space is showed.HSC module 450 receives YUV image from CSC module 445, and adjusts the tone of each pixel in image, saturation and contrast properties.After HSC module 450, scaler module 455 zoomed image (such as, zooming in or out image).After receiving image from scaler module 455, filter module 460 pairs of one or more filtering of image applications.Finally, filter module 460 sends to CIPU driver 480 the image after process.
In this example of operation of above-described CIPU 400, each module in CIPU processing pipeline 485 processes image in some way.But, other image that CIPU 400 processes may not need the process of all modules of CIPU processing pipeline 485.Such as, image may not need blank level adjustment, γ correction, proportional zoom or filtering.Thus, CIPU 400 can according to the various inputs received, such as from the instruction of CIPU driver 480, or the data of being collected by statistics engine 465, with any various mode process image.
The speed (that is, frame rate) of different embodiments differently control treatment image.A kind of mode of control frame speed is the manipulation by vertical blanking interval (VBI).For fetching image line to process some embodiments of image line by line, VBI is the last column of the image fetching the video taken by the camera of two camera movement equipment from pel array, and fetch from pel array video next image the first row between time difference.In other embodiments, VBI is the image fetching the video taken by the camera of two camera movement equipment from pel array, and the time difference between the next image fetching video from pel array.
Wherein can use an example of VBI between sensor assembly 415 and pel array 410a and 410b.Such as, some embodiments of sensor assembly 415 fetch image from pel array 410a and 410b line by line, and other embodiment of sensor assembly 415 fetches image from pel array 410a and 410b one by one image.Thus, by adjusting the VBI of sensor assembly 415, can control frame speed: increase VBI and can reduce frame rate, and reduce VBI and can improve frame rate.
1.VBI is to the application of single camera: frame rate controls
Fig. 5 concept map explains orally Benq in the example of the different frame rates 505,510 and 515 of different VBI.Each sequence is presented at each moment 525-555 along timeline 520, holds the image of the personage of guitar, and described image is by one of the camera shooting of two camera movement equipment.In addition, the time between each moment 525-555 is identical, is called a time quantum.For the purpose of illustrating, referring now to sensor assembly 415 and the pel array 410a of Fig. 4, key diagram 5.Thus, each image representative fetches the moment of image along the sensor assembly 415 of timeline 520 from pel array 410a.
In the frame rate 505 of example, sensor assembly 415 is set to 3 time quantums (such as, being set by controller module 475) about the VBI of pel array 410a.That is, sensor assembly 415 is along timeline 520, fetches a two field picture every two moment from pel array 410a.As shown in the frame rate 505 of example, sensor assembly 415 fetches image in the moment 525,540 and 555.Thus the frame rate 505 of example has the frame rate of every three time quantum one two field pictures.
Except VBI is set to 2 time quantums, the frame rate 510 of example is similar to the frame rate 505 of example.Thus sensor assembly 415, along timeline 520, fetches a two field picture every a moment from pel array 410a.The frame rate 510 of example represents that sensor assembly 415 is in the moment 525,535,545 and 555, fetches image from pel array 410a.VBI due to the frame rate 510 of example is less than the VBI of the frame rate 505 of example, and therefore the frame rate of the frame rate 510 of example is higher than the frame rate of the frame rate 505 of example.
Except sensor assembly 415 is set to except 1 time quantum about the VBI of pel array 410a, the frame rate 515 of example is also similar to the frame rate 505 of example.So sensor assembly 415 along timeline 520, is fetched a two field picture in each moment from pel array 410a by instruction.As shown in the figure, sensor assembly 415, at moment 525-555, fetches image from pel array 410a.The VBI of the frame rate 515 of example is less than the VBI of the frame rate 505 and 510 of example.So the frame rate of the frame rate 515 of example is greater than the frame rate 505 and 510 of example.
2.VBI is to the application of two camera
Some embodiments may wish two cameras (such as, during video conference, transmitting video from two cameras) simultaneously operating two camera movement equipment.The different embodiments comprising two camera movement equipment of single processing pipeline provide the different mechanisms of two cameras of the two camera movement equipment of operation simultaneously.
Mechanism is like this VBI by controlling every portion camera, the process of the image taken by two cameras that interweaves.That is, during the VBI of a camera, one or more images that shooting and process are taken by another camera, vice versa.Because CIPU 400 described above has single processing pipeline 485, therefore this mechanism can realize in the CIPU 400 of some embodiments.In such embodiments, sensor assembly 415 fetches image from one of pel array 410a and 410b, and the image fetched is processed during the VBI of sensor assembly 415 about one other pixel array by CIPU 400.
Sensor assembly 415 can be set to particular value about the VBI of each pel array.But, in certain embodiments, VBI is not configured to fetch and process a two field picture time used little value than CIPU 400.Some embodiments are set to identical value sensor assembly 415 about the VBI of each pel array.Such as, when sensor assembly 415 is configured to identical value about the VBI of each pel array, sensor assembly 415 alternately fetches image from pel array 410a and 410b.Other embodiment is set to different values sensor assembly 415 about the VBI of each pel array.In the embodiment that some are such, sensor assembly 415 is configured to the multiple of sensor assembly 415 about the VBI of one other pixel array about the VBI of a pel array.Such as, sensor assembly 415 is configured to 2 time quantums about the VBI of a pel array, and sensor assembly 415 is configured to 4 time quantums about the VBI of one other pixel array.In this example, relative to each two field picture that sensor assembly 415 is fetched from described one other pixel array, sensor assembly 415 fetches two two field pictures from a described pel array.
Fig. 6 concept map explains orally Benq in the example of the different interleaving frame rate 605,610 and 615 of different VBI.Except Fig. 6 comprises except 13 moment 625-685 of timeline 620, Fig. 6 is similar to Fig. 5.In addition, the image representative holding the personage of guitar fetches the moment of this image along timeline 620 from a pel array, and the image representative having on the personage of trencher cap fetches the moment of image along timeline 620 from one other pixel array.
For the purpose of illustrating, the image supposition holding the personage of guitar is taken by the camera sensor 405a of two camera movement equipment, and the image supposition of the personage having on trencher cap is taken by the camera sensor 405b of two camera movement equipment.In addition, referring now to the sensor assembly 415 of Fig. 4 and pel array 410a and 401b key diagram 6.
In the interlacing frames speed 605 of example, sensor assembly 415 is configured to 2 time quantums about the VBI of pel array 410a and pel array 401b.As shown in the interlacing frames speed 605 of example, sensor assembly 415 is in the moment 625,635,645,655,665,675 and 685 along timeline 620, image is fetched from pel array 410a, and sensor assembly 415 is in the moment 630,640,650,660,670 and 680 along timeline 620, fetches image from pel array 410b.That is, at each time quantum, sensor assembly 415 alternately fetches image from pel array.
Except sensor assembly 415 is configured to except 4 time quantums about the VBI of pel array 410a and pel array 401b, the interlacing frames speed 610 of example is similar to the interlacing frames speed 605 of example.The interlacing frames speed 610 of example shows sensor assembly 415 in the moment 625,645,665 and 685 along timeline 620, image is fetched from pel array 410a, and sensor assembly 415 is in the moment 635,655 and 675 along timeline 620, fetches image from pel array 410b.VBI due to the interlacing frames speed 610 of example is greater than the VBI of the interlacing frames speed 605 of example, and therefore the frame rate of the interlacing frames speed 610 of example is less than the frame rate of the interlacing frames speed 605 of example.
Except sensor assembly 415 is configured to except 6 time quantums about the VBI of pel array 410a and pel array 401b, the interlacing frames speed 615 of example is also similar to the interlacing frames speed 605 of example.As shown in Figure 6, sensor assembly 415, in the moment 625,655 and 685 along timeline 620, fetches image from pel array 410a, and sensor assembly 415 is in the moment 640 and 670 along timeline 620, fetches image from pel array 410b.The VBI of the interlacing frames speed 615 of example is greater than the VBI of the interlacing frames speed 605 and 610 of example.Thus the frame rate of the interlacing frames speed 615 of example is less than the frame rate of the interlacing frames speed 605 and 610 of example.
B. multi-line
Another photographic images processing unit (CIPU) 700 of Fig. 7 some embodiments of graphic extension conceptually.Except CIPU 700 is by two front-end processing pipelines, a memory, and a back-end processing pipeline realizes, instead of outside being realized by single processing pipeline, CIPU 700 realizes the function identical with CIPU 400 described above.Therefore, with reference to the module of CIPU 400, the description of the function of CIPU 700 is described.
As shown in the figure, CIPU 700 comprises for the front-end processing pipeline 715 of camera sensor 405a and pel array 410a, front-end processing pipeline 720, memory 725, controller module 730 and the back-end processing pipeline 735 for camera sensor 405b and pel array 410b.The camera sensor 405a of some embodiments and 405b is the transducer of the camera of two camera movement equipment.
The front-end processing pipeline 715 and 720 of some embodiments performs the parts of images process of CIPU 400.Thus, different embodiments can comprise the module of the different numbers of CIPU 400.Such as, each front-end processing pipeline 715 and 720 of some embodiments comprises the sensor assembly 415 of CIPU 400, BPC module 420, LS module 425, demosaicing module 430, WB module 435 and statistics engine 465.
Although owing to having identical module, front-end processing pipeline 715 performs the image procossing of identical type with 720, but by as above about the different register value that CIPU 400 illustrates, each module in each front-end processing pipeline 715 and 720 differently can be configured.In addition, because each camera sensor 405a and 405b has its front-end processing pipeline, therefore front-end processing pipeline 715 and 720 can process image independently of each other.Such as, front-end processing pipeline 715 and 720 can concurrently (that is, in the identical time), in the different time with different rate processing images.
In certain embodiments, each front-end processing pipeline 715 and 720 can fetch image from the camera sensor of its correspondence and pel array.Such as, the image taken by camera sensor 405a fetched by front-end processing pipeline 715 from pel array 410a, and the image taken by camera sensor 405b fetched by front-end processing pipeline 720 from pel array 410b.When one of front end processing pipeline 715 and 720 fetches image from the camera sensor of its correspondence and pel array, this this image of front-end processing pipeline, and the image after process is sent to memory 725.In addition, each front-end processing pipeline 715 communicates (such as, by the statistics engine of each front-end processing pipeline) as mentioned above with 720 with controller module 730.
Image after the memory 725 storage unit divisional processing of some embodiments, completes process for back-end processing pipeline 735.In these embodiments, memory 725 from the image after front end processing pipeline 715 and 720 receiving unit process, and sends to back-end processing pipeline 735 the image after part process.Some embodiments are embodied as volatile memory (such as memory 725, random access memory (RAM)), and other embodiment is embodied as nonvolatile memory (such as, flash memory, hard disk, CD etc.) memory 725.In addition, the memory 725 of some embodiments is internal storage (such as, RAM), and the memory 725 of other embodiment be external memory storage (such as, compact flash (CF) is blocked, and secure digital (SD) blocks, etc.).
Some embodiments of back-end processing pipeline 735 perform the parts of images process of CIPU 700.In certain embodiments, back-end processing pipeline 735 comprises the module of front-end processing pipeline 715 and 720 CIPU 400 not to be covered.Such as, see example above, back-end processing pipeline 735 should comprise the CSC module 445 of CIPU 400, γ module 440, HSC module 450, scaler module 455 and filter module 460.Thus, the back-end processing pipeline 735 of this embodiment performs the residual image process of the CIPU 400 that front-end processing pipeline 715 and 720 does not perform.Therefore, back-end processing pipeline 735 fetches the image after part process from memory 725, and performs remaining image procossing to the image after part process.After process image, back-end processing pipeline 735 sends to CIPU driver 480 the image after process.
Controller module 730 performs the identical function illustrated above with reference to Fig. 4.As shown in Figure 7, controller module 730 and front-end processing pipeline 715 and 720 and back-end processing pipeline 735 mutual.In certain embodiments, controller module 730 is included in back-end processing pipeline 735, and in other embodiments, controller module 730 is included in one of front-end processing pipeline 715 and 720.
With reference now to camera sensor 405a and 405b, pel array 401a and 410b, front-end processing pipeline 715 and 720, memory 725 and the back-end processing pipeline 735 of graphic extension in the figure 7, the operation of CIPU 700 is described.When one of front end processing pipeline 715 and 720 fetches image from the camera sensor of its correspondence and pel array, this image of front-end processing pipeline, and the image after part process is sent to memory 725.Such as, front-end processing pipeline 715 can fetch from pel array 410a the image taken by camera sensor 405a, or front-end processing pipeline 720 can fetch from pel array 410b the image taken by camera sensor 405b.As mentioned above, front-end processing pipeline 715 and 720 can both parallel processing image.
Back-end processing pipeline 735 fetches the image after part process from memory 725, and the image after the process of processing section is to complete the image procossing of image.In certain embodiments, back-end processing pipeline 735 fetches and processes based on the principle of first in first out the image be kept in memory 725.In other words, specific image in memory 725 is by the reception prior to this specific image with process after being kept in memory 725 all images, but, this specific image processes before the reception being later than this specific image and the image being kept in memory 725.After back-end processing pipeline 735 processes image, it sends to CIPU driver 480 the image after process.
Another photographic images processing unit (CIPU) 800 of Fig. 8 some embodiments of graphic extension conceptually.Except CIPU 800 is realized by two independent processing pipeline, each camera sensor has outside its independent processing pipeline, and CIPU 800 performs the function identical with CIPU 400 described above.Thus, with reference to the module of CIPU 400, the description of the function of CIPU 800 is described.
As shown in the figure, CIPU 800 comprises the processing pipeline 815 for camera sensor 405a and pel array 410a, and for the processing pipeline 820 of camera sensor 405b and pel array 410b.Each processing pipeline 815 and 820 of some embodiments comprises all modules be included in CIPU 400.So each processing pipeline 815 of these embodiments is all identical with the operation of CIPU 400 with the operation of 820.
Because each camera sensor 405a and 405b has its processing pipeline, therefore processing pipeline 815 and 820 can process image independently of each other.Such as, processing pipeline 815 and 820 can concurrently (that is, in the identical time), in the different time with different rate processing images.In addition, by the different register value illustrated above with reference to CIPU 400, each processing pipeline 815 and 820 of some embodiments differently can be configured.
In certain embodiments, the number of modules of CIPU 400 comprises one or more row/frame buffers of some or all operations for performing this module.Such as, the filtration module 460 of some embodiments is realized as execution 3 × 3 low-pass filtering.In such embodiments, continuous three row in 3 × 3 low pass filter process images, so that middle row application 3 × 3 low-pass filtering to described continuous three row.Thus the filtration module 460 of this embodiment at least needs three row/frame buffers, to realize 3 × 3 low-pass filtering.Other module in CIPU 400 also comprises one or more row/frame buffer, such as BPC module 420 and LS module 425.
The processing pipeline of CIPU 800 all can have different row/frame buffer size, so that according to the characteristic customization image procossing of its corresponding camera.Such as, if a camera of two camera movement equipment has 2048 × 1500 element sensors, so the processing pipeline of this 2048 × 1500 element sensor can comprise the wide row/frame buffer of 2048 pixels.Similarly, if another camera of two camera movement equipment has 640 × 480 element sensors, so the processing pipeline of 640 × 480 element sensors can comprise is the wide row/frame buffers of 640 pixels.That is, the large I being included in the row/frame buffer in the modules of a processing pipeline is different from the size of the row/frame buffer be included in the modules of another processing pipeline.
III. video conference
A. video conference architecture
Fig. 9 is the video conference of two camera movement equipment of some embodiments of graphic extension and the software architecture of processing module 900 conceptually.Video conference and processing module 900 comprise and the respective modules illustrated above with reference to Fig. 3 and driver 305,301 and 320 similar CIPU driver 905, exchange of media module 910 and encoder-driven devices 920.Video conference and processing module 900 also comprise video conference module 925, video conference client 945 and network interface 950 for realizing various video conference function.Be similar to Video processing and coding module 300, video conference and processing module 900 process and encode the image taken from the camera of two camera movement equipment.
As referring to Figure 3 as described above, the user of the media content in exchange of media module 910 permission equipment and producer's switched-media content, and the instruction relevant with the process of media content.CIPU driver 905 serves as the communication interface with photographic images processing unit (CIPU) 955, encoder-driven device 920 serve as with encoder hardware 960 (such as, encoding pack in encoder chip, SOC (system on a chip), etc.) communication interface.
The video conference module 925 of some embodiments is responsible for various video conference function, such as image procossing, video conference management and networking.As shown in the figure, video conference module 925 is mutual with exchange of media module 910, video conference client 945 and network interface 950.In certain embodiments, video conference module 925 receives instruction from video conference client 945, and sends instruction to video conference client 945.The video conference module 925 of some embodiments is also by network interface 950, to network transmission data with from network reception data, such as, described network is local area network (LAN) (LAN), WLAN (wireless local area network) (WLAN), wide area network (WAN), network of network (a network of networks), code division multiple access access (CDMA) network, GSM network, etc.
Video conference module 925 comprises image procossing layer 930, management level 935 and network layer 940.In certain embodiments, image procossing layer 930 pairs of image carry out image processing operations, for use in video conference.Such as, the image procossing layer 930 of some embodiments carries out exposure adjustment, image scaling, perspective correction and dynamic range adjustment, following further in detail described in.The image procossing layer 930 of some embodiments sends the request to the image from CIPU955 by exchange of media module 910.
The management level 935 of some embodiments control the operation of video conference module 925.Such as, in certain embodiments, one/two cameras of the two camera movement equipment of management level 935 initialization, process image and audio frequency, to send remote equipment to, and process the image and audio frequency that receive from remote equipment.In certain embodiments, the synthesis (such as PIP) that management level 935 produce for this equipment shows.In addition, management level 935 according to the networking report received from network layer 940, can change the operation of video conference module 925.
In certain embodiments, network layer 940 realizes some or all network functions being used for video conference.Such as, as described below, except other function, the network that the network layer 940 of some embodiments is set up between two camera movement equipment of video conference and remote equipment connects (not shown), image is sent to remote equipment, and receives image from remote equipment.In addition, network layer 940 receives such as packet loss, the networked data of unidirectional stand-by period and round trip delay time and so on, and other various data, processes such data, and data report to management level 935.
The video conference client 945 of some embodiments is the application of the video conference function utilizing video conference module 925, such as video conference application, IP speech (VOIP) application (such as, Skype) or instant messaging application.In certain embodiments, video conference client 945 independently applies, and in other embodiments, video conference client 945 is integrated in Another application.
In certain embodiments, network interface 950 allows video conference module 925 and video conference client 945 send data by network (such as, cellular network, local area network (LAN), wireless network, network of network, internet etc.) and receive the communication interface of data.Such as, if video conference module 925 is wanted to another equipment sending data on internet (such as, the image taken by the camera of two camera movement equipment), so video conference module 925 sends to another equipment described by network interface 950 image.
B. video conference is arranged
The video conference request message sending and receiving sequence 1000 of Figure 10 example of some embodiments of graphic extension conceptually.Figure 10 represents the video conference client 1010 on the equipment of running on 1005, videoconference server 1015, and runs on the video conference request message sending and receiving sequence 1000 between the video conference client 1025 on equipment 1020.In certain embodiments, video conference client 1010 is identical with the video conference client 945 shown in Fig. 9 with 1025.As shown in Figure 10, equipment (that is, an equipment 1005) request video conference, and another equipment (that is, equipment 1020) replys this request.The two camera movement equipment described in this application can perform these two operations (that is, sending request and response request).
Videoconference server 1015 route messages between video conference client of some embodiments.Although some embodiments realize videoconference server 1015 on a computing equipment, but other embodiment realizes videoconference server 1015 on multiple computing equipment.In certain embodiments, videoconference server is the server that can openly access, and it can process the message of numerous meeting with route simultaneously.Each video conference client 1010 and 1025 of some embodiments is through network interface, than network interface 950 as explained above, communicated with videoconference server 1015 by network (such as, cellular network, local area network (LAN), wireless network, network of network, internet etc.).
When video conference client 1010 receives (in operation 1) from the user of equipment 1005 and the request of video conference of equipment 1020 time, the video conference request message sending and receiving sequence 1000 of some embodiments starts.When user's selection of equipment 1005 is presented at a certain user interface (UI) project of the user interface on equipment 1005, the video conference client 1010 of some embodiments receives the request starting video conference.The example of this user interface is illustrated in Figure 11 and Figure 14 described below.
After video conference client 1010 receives request, video conference client 1010 sends (in operation 2) video conference request to videoconference server 1015, and this request, according to the input of user, is designated as addressee equipment 1020.Videoconference server 1015 gives the video conference client 1025 of (in operation 3) equipment 1020 video conference request forward.In certain embodiments, videoconference server 1015 utilizes push technology, video conference request forward to video conference client 1025.That is, when receiving request from video conference client 1010, videoconference server 1015 starts to transmit video conference request to video conference client 1025, instead of waits for that client 1025 sends the request to any message.
When the video conference client 1025 of some embodiments receives video conference request, equipment 1020 shows user interface, to point out to the user of equipment 1020, the user of equipment 1005 have sent the request starting video conference, and the user of prompt facility 1020 accepts or refuses this video conference request.The example of this user interface is illustrated in Figure 12 described below.In certain embodiments, when video conference client 1025 receive (in operation 4) accept request from the video conference request of the user of equipment 1005 time, video conference client 1025 sends (in operation 5) video conference to videoconference server 1015 and accepts.When a certain user interface items of user's selection user interface as illustrated in Figure 12 of equipment 1020, the video conference client 1025 of some embodiments receives the request accepting video request.
After videoconference server 1015 receives video conference acceptance from video conference client 1025, videoconference server 1015 accepts video conference to be transmitted to (in operation 6) video conference client 1010.Some embodiments of videoconference server 1015 utilize above-mentioned push technology, and video conference is accepted to be transmitted to video conference client 1010.
When receiving video conference and accepting, some embodiments set up (in operation 7) video conference between equipment 1005 and equipment 1020.Different embodiments differently sets up video conference.Such as, the video conference of some embodiments is set up and is comprised: the connection between consulting device 1005 and equipment 1020, determine the bit rate of Video coding and exchange video at equipment 1005 and equipment 1020.
In the above example, the user of equipment 1020 accepts video conference request.In certain embodiments, the video conference request of acceptance arrival automatically that equipment 1020 can be configured to (such as, being arranged by the prioritizing selection of equipment), and do not show UI.In addition, the user of equipment 1020 also can refuse (in operation 4) video conference request (such as, by selecting certain user interface items of the user interface of display on equipment 1020).Replace sending video conference to accept, video conference client 1025 sends video conference refusal to videoconference server 1015, and videoconference server 1015 is transmitted to video conference client 1010 video conference refusal.Thus do not set up video conference.
1. video conference arranges user interface
In certain embodiments, according to ongoing call, initiate video conference.That is, when the user and second user's communication of mobile device, through the license of the opposing party, this user can become call into video conference.Concerning some embodiments of the present invention, the startup of this video conference that Figure 11 graphic extension is undertaken by two camera handheld mobile device 1100.Figure 11 utilizes five operational phases 1110,1115,1120,1125 and 1130 of the user interface (" UI ") 1105 of equipment 1100, the startup of graphic extension video conference.
As shown in Figure 11, UI 1105 comprises name field 1135, choice menus 1140 and selectable UI project 1145.The user that name field 1135 is presented at the call other end is intended to ask the name of the personage carrying out with it video conference.In this example, selectable UI project 1145 (it can be realized as selectable button) provides selectable end call (End Call) option, to terminate call to user.Choice menus 1140 shows the menu of selectable UI project, such as speakerphone project 1142, quiet project 1144, numeric keypad project 1146, phone book item 1148, maintenance project 1152, video conference project 1154 etc.Different embodiments differently shows choice menus.Concerning the embodiment of Figure 11 graphic extension, choice menus 1140 comprises several onesize icon, and each icon represents a different operation.Other embodiment provides rotatable menu, or gives specific project with priority (such as, by making these projects become larger).
Referring now to the state in the double teacher 1110,1115,1120,1125 and 1130 of UI 1105 graphic extension in fig. 11, the operation of UI 1105 is described.In the first stage 1110, between handheld mobile device user and Nancy Jones, establish call.Second stage 1115 be presented at user select selectable video conference option one 154 (such as, by point 1150 singly refer to dub), to activate the UI 1105 after video conference instrument.In this example, video conference option one 154 (it can be realized as selectable icon) allows user to start video conference during conversing.In second stage, video conference option one 150 is highlighted, is activated with instruction video meeting instrument.Different embodiments by different modes (such as, by highlighting frame or the text of project), can indicate such selection.
Phase III 1120 is presented at the selection according to selecting video conference option one 154, and equipment 1100 has started the UI 1105 after video conference process.Phase III be equipment wait for set up video conference time (such as, equipment wait for the equipment of the call other end accept or refusal video conference time) transition keep the stage.In the phase III 1120, when setting up video conference and connecting, the user of equipment 1100 still can talk with the user of another equipment (that is, Nancy Jones).In addition, the user by selecting of some embodiments permission equipment 1100 is presented at the optional UI project (not shown) for cancelling video conference request on UI 1105, cancels video conference request in the phase III 1120.During this maintenance stage, different embodiments uses the display of the difference in UI 1105 to indicate this pending state.
As shown in Figure 11, in certain embodiments, the full screen display of the video taken by equipment 1100 is utilized, and the wait state of " Preview (preview) " symbol graphic extension phase III in the bottom of this video.Specifically, in fig. 11, the phase III 1120, by the viewing area 1160 of UI 1105, shows the full frame of the video taken by the camera of equipment and presents, the beginning of graphic extension video conference process.In certain embodiments, the camera in front is when starting video conference, the acquiescence camera of equipment choice.Usually, when starting video conference, described front camera is facing to the user of equipment.Therefore, in the example of graphic extension in fig. 11, the phase III 1120 is illustrated as equipment 1100 full screen video of the user of display device 1100.During being located at the phase III 1120, the wait state of equipment is given prominence in " Preview " instruction appeared under the video in viewing area 1160 further.
In certain embodiments, the cambic 3rd maintenance stage 1120 can differently be represented.Such as, some embodiments allow the user of equipment 1100 to select the camera at the back side as the camera starting video conference.In order to allow this selection, some embodiments allow user (such as, arranged by menu prioritizing selection) camera at the back side is appointed as the acquiescence camera starting video conference, and/or allow user from after selecting video conference option one 154 user, select the camera at the back side in the menu of the camera in the display back side and front.In any one of these situations, UI 1105 (such as, viewing area 1160), during the 3rd keeps the stage 1120, shows the video taken by the camera at the back side.
In addition, other embodiment by display device 1100 take the photograph the less version of video, by showing the rest image be kept on equipment 1100, by providing the message of the wait state of the equipment of highlighting (such as, by display " Conference Being Established " (setting up meeting), by not showing " Preview " instruction, etc., the activation of video conference instrument can be pointed out.In addition, in the phase III 1120, if the UI of some embodiments 1105 provide this stage (such as, when user waits for that long-distance user replies his request), user determines not enter video conference, so allow user to cancel and enter video conference, and return end (End) the button (not shown) of talking state.
Fourth stage 1125 is illustrated in long-distance user and receives video conference request, and after establishing video conference connection, UI 1105 in an interim state.Under this transition state, the size of the viewing area 1160 of the video (in this example, the video taken by the camera in front) of display local user reduces (that is, reducing gradually), gradually as shown in arrow 1175.Viewing area 1160 (that is, the video of local user) reduces, and makes UI 1105 after viewing area 1160, can show the viewing area 1170 (such as, display window 1170) of the video of the camera comprised from remote equipment.In other words, the reducing of video 1160 of local user produces the prospects insertion display 1160 that PIP display 1180, PIP display 1180 has the video of local user, and the main display 1170 of the background of long-distance user.In this example, the front camera that the main display 1170 of background presents remote equipment is taking the Ms of its video (such as, Nancy Jones, the user of remote equipment), or the video of Ms's (such as, Nancy Jones is taking the Ms of its video) of its video taken by the back side camera of remote equipment.Those of ordinary skill will appreciate that the cambic fourth stage shown in Figure 11 is a kind of exemplary method that some embodiments use, and other embodiment can the differently cambic fourth stage of flash demo.
Fourth stage 1125 is the optional UI project 1132 of graphic extension in viewing area 1155 below also.Optional UI project 1132 (it can be realized as selectable button) provides selectable closing session (End Conference) option one 132 under PIP display 1180.User can select closing session option one 132 to terminate video conference (such as, by singly referring to dub).Different embodiments can allow user with different mode closing sessions, as by the switch on conversion mobile device, by sending voice commands, etc.In addition, different embodiments can allow closing session option one 132 to fade away during video conference, thus allows PIP display 1180 to occupy whole viewing area 1185.Subsequently when singly referring to the bottom dubbing viewing area 1185, closing session option one 132 can reappear, and makes user can utilize closing session option one 132.In certain embodiments, the layout of viewing area 1155 is identical with the viewing area 1155 further described below.
Five-stage 1130 is illustrated in the UI 1105 after the animation of end the 4th transition state 1125.Specifically, during five-stage 1130 is illustrated in video conference, the PIP display 1180 presented by UI1105.As mentioned above, PIP display 1180 comprises two video displays: from the larger background display 1170 of remote camera, and insert display 1160 from the less prospect of local camera.
PIP display 1180 just presents a kind of mode of the synthesis view of the video taken by remote equipment and local device.Except this synthesis view, the equipment of some embodiments provides other synthesis view.Such as, replace the larger background display 1170 with long-distance user, larger background display 1170 can be local user, and less prospect insertion display 1160 is long-distance users.As further described below, some embodiments allow user during video conference, are switching as between the local camera providing PIP to show the insertion view of 1180 and the camera of front view and/or remote camera.
In addition, some embodiments allow local video and long-distance video to appear in UI 1105 two viewing areas side by side (such as, left and right display window, or display window up and down), or in the viewing area of two diagonal angle arrangements.In certain embodiments, as further described below, arranged by the prioritizing selection of equipment, or by during video conference, the control that user can select, user can specify the mode of PIP display or acquiescence display mode.
When the user of the equipment 1100 of Figure 11 invites long-distance user to carry out video conference, long-distance user can accept or refuse this invitation.Figure 12 is illustrated in six different stages 1210,1215,1220,1225,1230 and 1235, the UI 1205 of the equipment 1200 of long-distance user, and the equipment that described six phase table are shown in long-distance user presents and accept the sequence of operation that video conference is invited.The description of UI 1205 below equipment 1200 (namely, receive the equipment of video conference request) user be called invitee (invite recipient), the user of equipment 1100 (that is, sending the equipment of video conference request) is called inviter (invite requestor).In addition, in this example, assuming that the equipment 1200 of invitee is two camera apparatus, the same with the equipment of inviter.But, in other example, one or two in these equipment are all single camera apparatus.
First stage 1210 graphic extension is when invitee is from inviter, and John Smith receives the UI 1205 when video conference is invited.As shown in Figure 12, the UI 1205 of first stage comprises name field 1235, message hurdle 1240 and two optional UI projects 1245 and 1250.Name field 1235 shows the name of the personage just asking video conference.In certain embodiments, name field 1235 shows the telephone number of the personage just asking video conference, instead of the name of personage.Message hurdle 1240 shows inviter to the invitation of invitee.In this example, " Video Conference Invitation (video conference invitation) " instruction inviter in message hurdle 1240 is asking to carry out video conference with invitee.Optional UI project 1245 and 1250 (they can be realized as selectable button) provides selectable for invitee " refusal request (Deny Requst) " and " accept request (Accept Request) " option one 245 and 1250 for refusing or accept the invitation.Different embodiments differently can show these options and/or show other option.
When seeing " the Video Conference Invitation " symbol be presented in message hurdle 1240, by selecting " refusal request " option one 245 in UI or " accepting request " option one 250 respectively, invitee can refuse or accept request.Second stage 1215 is illustrated in the example shown in Figure 12, and user selects " accepting request " option one 250.In this example, click " accepting request " option one 250 gently by the finger of user, realize described selection, and highlighting by option one 250, point out described selection.Option one 245 and 1250 (such as to provide other technology in certain embodiments to select " acceptance " or " refusal request ", doublely to click gently, etc.) to point out described selection (such as, highlighting frame or the text of UI project).
Phase III 1220 is presented at the UI 1205 after invitee adheres to video conference.In this stage, UI 1205 enters preview mode, and the full frame of video that preview mode shows from the front camera of remote equipment in viewing area 1244 presents.In this case front camera is facing to the user (that is, the Nancy Jones in this example) of remote equipment.Therefore, her image is shown by described preview mode.This preview mode invitee can be guaranteed her video is properly displayed, and before video conference starts (such as, before beginning actual transmissions video), she pleases oneself to its appearance.In certain embodiments, the symbol of " Preview " symbol and so on can be shown such as under viewing area 1244, to point out that invitee is in preview mode.
Some embodiments allow invitee to select the camera at the back side as the acquiescence camera starting video conference, or select the camera at front or the back side when starting video conference, as further described below.In addition, other embodiment differently shows the preview display (such as, being placed in the less image in corner of viewing area 1244) of invitee.In addition other embodiment does not comprise this preview mode, but after invitee accepts request, starts video conference immediately.
In the phase III, UI 1205 shows two optional UI projects 1275 and 1246.One of them overlaps on viewing area 1244, and another is below viewing area 1244.Optional UI project 1275 is that user can select to start video conference " acceptance " button 1275.Optional UI project 1246 is if invitee determined not add video conference in this stage, so her selectable " end " button 1246.
Fourth stage 1225 is presented at the UI1205 after invitee's selection " acceptance " button 1275.In this example, " acceptance " button 1275 is highlighted, to point out that invitee can start video conference at any time.Such selection can be pointed out in other embodiments by different modes.
Five-stage 1230 is illustrated in after invitee accepts video conference request, UI 1205 in an interim state.In this transition stage, the size of the viewing area 1244 of the video (in this example, described video is taken by the camera in front) of display invitee reduces (that is, reducing gradually), gradually as shown in arrow 1260.The video of invitee reduces, and makes UI 1205 after viewing area 1244, can show the viewing area 1265 (such as, display window 1265) of the video of the camera comprised from inviter.In other words, the reducing of video of invitee produces the prospects insertion viewing area 1244 that PIP display 1280, PIP display 1280 has the video of invitee, and the main display 1265 of the background of inviter.
In this example, the video of the man (that is, John Smith, the user of local device 1100) of its video taken by the front camera that the main display 1265 of background presents local device.In another example, this video can be the video that man's (such as, being taken the man of its video by John Smith) of its video taken by the back side camera of local device.Differently embodiment can the differently cambic five-stage of flash demo.
During the UI of five-stage 1230 also shows and is included in video conference, make the optional UI project 1285 of the audio mute of another user (such as, mute button 1285), terminate the optional UI project 1287 of video conference (such as, closing session button 1287), the viewing area 1155 (such as, tool bar or menu bar) of the optional UI project 1289 (such as, switching camera button 1289) of the switching camera further illustrated below.Thus, invitee can select any optional UI project 1285-1289 (such as, by singly referring to dub), to perform the operation of hope during video conference.Different embodiments allows invitee in different ways, such as, switch the switch on mobile device, by providing voice commands etc., performing and operating arbitrarily.
Although Figure 12 represents the example layout of viewing area 1155, but, some embodiments provide the different layouts of viewing area 1155, the layout of the viewing area 1155 of such as Figure 11, and this layout only includes the optional closing session UI option one 132 for terminating video conference.Other layout of viewing area 1155 can comprise any multiple different optional UI project for performing difference in functionality.In addition, five-stage 1230 represents the viewing area 1155 being presented at the bottom of UI 1205.The different embodiments of viewing area 1155 can be displayed on the diverse location in UI 1205, and/or are defined as different shapes.
Figure 12 is expressed as static state display district (that is, viewing area 1155 is always shown) viewing area 1155.But, in certain embodiments, viewing area 1155 is dynamic display area.In the embodiment that some are such, viewing area 1155 is not shown usually.On the contrary, only having when receiving trigger event (such as, such as dub viewing area 1280 once, the user of voice commands and so on selects), just showing described viewing area 1155.Receiving user's selection (such as, select optional quiet UI project 985), or the time of ormal weight (such as, 3 seconds) after, viewing area 1155 disappears, and the time of described ormal weight can arrange appointment by user by the prioritizing selection of mobile device or video conference application.In the embodiment that some are such, viewing area 1155 is automatically displayed after video conference starts, and disappears according to above mentioned same way.
6th stage 1235 was illustrated in the UI1205 after the animation of end the 5th transition stage.Specifically, during the 6th stage was illustrated in video conference, the PIP display 1280 presented by UI 1205.As mentioned above, PIP display 1280 comprises two video displays: from the larger background display 1265 of local camera, and insert display 1244 from the less prospect of remote camera.PIP display 1280 just presents a kind of mode of the synthesis view of the video taken by remote equipment and local device.Except this synthesis view, the equipment of some embodiments provides other synthesis view.Such as, replace the background display with larger invitee, larger background display can be the video of inviter, and less prospect inserts the video that display can be invitee.As further described below, the insertion view during some embodiments allow user's control PIP to show and front view, switchably to show local camera and remote camera.In addition, some embodiments allow local video and long-distance video to appear in UI 1205 two viewing area (such as, left and right display window, or display window up and down) side by side, or in the viewing area of two diagonal angle arrangements.As further described below, arranged by the prioritizing selection of equipment, or by during video conference, the control that user can select, the mode that user can specify PIP to show or acquiescence display mode.
Although Figure 12 represents the sequence of operation presenting and accept video conference and invite according to six different operational phases, but, some embodiments can realize described operation with the less stage.Such as, some such embodiments can be omitted and present phase III 1220 and fourth stage 1225, thus after user selects " accepting request " option one 250, enter five-stage 1230 from second stage 1215.Described operation is realized (namely with the less stage, present and accept video conference invite) other embodiment can omit first stage 1210 and second stage 1215, thus when invitee receives the invitation of video conference from inviter, present the phase III 1220 to user.
Figure 13 graphic extension by first and phase III are combined into a stage, and is combined into a stage second and fourth stage, performs the example of the operation of graphic extension in Figure 12 with the less stage.Especially, Figure 13 is illustrated in five different stages 1390,1392,1394,1230 and 1235, the UI 1205 of the equipment 1200 of long-distance user.First stage 1390 is similar to the stage 1110, except name field 1295 display name " Jobn Smith ", to point out outside the name of the personage of the call other end.That is, between the user and the user (that is, the John Smith in this example) of local device of remote-moving apparatus, call is established.Second stage 1392 and phase III 1394 are similar to first stage 1210 and the second stage 1215 of Figure 12, outside second stage 1392 and phase III 1394 also show the preview of user (that is, the Nancy Jones in this example) of remote-moving apparatus.Fourth stage 1230 is identical with the 6th stage 1235 with the five-stage 1230 of Figure 12 with five-stage 1235.
Except during conversing, activate outside video conference instrument by selectable option, some embodiments allow the user of two camera apparatus directly to initiate video conference, and need not first make a phone call.The such alternative approach of the another kind of video conference is initiated in Figure 14 graphic extension.Figure 14 is illustrated in the UI 1405 of seven different phases 1410,1415,1420,1425,1430,1435 and 1440, and described seven different phases display starts the alternative operation sequence of video conference.
In the first stage 1410, user browses the Affiliates List on mobile device, finds the personage that he wishes to carry out with it video conference, and the mode of to search contact person with him in order to converse is similar.In second stage 1415, user selects him to be ready to carry out with it the personage 1455 (such as, dubbing 1460 by singly referring in the name 1455 of this people) of video conference.This selection triggers UI 1405 and shows the information of contact person and various user-selectable options.In this example, the name 1455 of Jason is highlighted, to point out that this is the people that user is intended to carry out with it video conference.Different embodiments can point out this selection by different modes.Although second stage 1415 allows the user of equipment 1400 to pass through Affiliates List, user is selected to be intended to the people carrying out with it video conference, but some embodiments allow user to select this people by " Recents (recently) " call history, and the user that described " Recents " call history lists equipment 1400 carries out with it particular number or the name of the personage of video conference or call recently.
In the phase III 1420, after the name 1455 that have selected personage, UI 1405 shows the information 1462 of selected personage, and various optional UI project 1468,1472 and 1470.In this example, one of each optional UI project 1472 (can be realized as optional icon or button) provides video conference instrument.Video conference option one 472 allows user to invite the personage identified according to contact person 1466 to add video conference.Different embodiment differently (such as, with different arrangements) shows information 1462 and optional UI project 1468,1472 and 1470.
Fourth stage 1425 represents that user selects " video conference " option one 472 (such as, by singly referring to dub).In this example, " video conference " option one 472 is highlighted, to point out that video conference instrument 1472 is activated.Differently can point out this selection (such as, by highlighting text or the frame of selected icon) in various embodiments.
Five, the 6th and the 7th stage 1430,1435 and 1440 was similar to the 3rd, the 4th and five-stage 1120,1125 and 1130 of graphic extension in Figure 11, by understanding for the 5th, the 6th and the 7th stage 1430,1435 and 1440 with reference to the discussion in these stages.Briefly, five-stage 1430 graphic extension waits for that long-distance user responds the cambic maintenance stage of video conference invitation.6th stage 1435 was illustrated in after long-distance user accepts video conference request, the size of (video of display local user) viewing area 1480 reduces gradually, make UI 1405 after viewing area 1480, the viewing area 1492 of the video of the camera comprised from long-distance user can be shown.In the 7th stage 1440, during video conference, UI 1405 presents PIP display 1447.In certain embodiments, the 6th stage 1435 is similar to the layout of the viewing area 1155 of Figure 12 described above with the layout of the viewing area 1155 in the 7th stage 1440.
Figure 10,11,12,13 and 14 represents several modes setting up video conference.In certain embodiments, during conversing, voice data is transmitted (such as by a communication port (communication network by such as circuit exchanging communicating network or packet exchange communication network and so on), speech), and during video conference, transmit voice data by another communication port.Thus, in such embodiments, before setting up video conference, voice data is transmitted (such as by a communication port, speech), and once establish video conference, just transmit audio frequency by different communication ports (instead of the communication port used during conversing).
In order to provide the seamless transitions (such as, switch) of voice data from call to video conference, some embodiments before setting up video conference, not finished call.Such as, some embodiments are in finished call and begin through peer-to-peer communications session and transmit before audio/video data, set up reciprocity video conference and connect (such as, after the message sequence completing graphic extension in Figure 10).On the other hand, other embodiment is before finished call and starting presents the audio/video data of reception, set up reciprocity video conference and connect (such as after the message sequence completing graphic extension in Figure 10), and begin through this peer-to-peer communications session transmission audio/video data.
The reciprocity video conference of some embodiments connects the mobile device directly intercommunication mutually (instead of by such as central server communication) allowed in video conference.Some embodiments of equity video conference allow the mutual shared resource of mobile device in video conference.Such as, via the control communication port of video conference, by sending instruction from a mobile device to another mobile device, image is differently processed (namely to order another mobile device described, share its image processing resource), than exposure adjustment operation as will be described in further detail below, Focussing operation and/or switch camera operation, a described mobile device can the operation of another mobile device described in Long-distance Control video conference.
2. dynamic bit rate is arranged
In general, mobile device in video conference is by dissimilar communication network, such as different special and public wireless communication network (such as, the cellular network of such as GSM, UMTS and so on) communication port, mutual transmission data (such as, Voice & Video image).The example of this cordless communication network is described below with reference to Figure 91 and 92.
Because the number of the mobile device at special time access communications network constantly changes, therefore communication network can be used for carrying out the bandwidth of video conference is different at different time.Even if during video conference, available bandwidth also can change.In addition, during video conference, flood communication network with high bit rate, or a large amount of signalings attempting to calculate best video meeting bit rate are worthless.
Due to these reasons, some embodiments adopt the new method of the initial optimal bit rate of designated meeting.In order to identify the initial optimal bit rate of video conference, described method starts video conference with specific bit rate, if these embodiments do not detect the network condition that can worsen Video Frequency Conference Quality, so described method incrementally increases bit rate with specified time interval.
An example of this embodiment of graphic extension in Figure 15.The process 1500 of the bit rate of the setting video conference of Figure 15 graphic extension some embodiments of the present invention conceptually.As video conference arrange a part (such as, a part as the video conference of graphic extension in Figure 10 is set up) perform process 1500, with according to various network condition, dynamically determine the bit rate transmitting data (such as, Voice & Video image).In certain embodiments, process 1500 to be performed by the management level 935 of the video conference module 925 illustrated above with reference to Fig. 9.The more detailed form of this video conference module is described below with reference to Figure 16.
As shown in Figure 15, by bit rate being set to (1505) initial bit rate, start to process 1500.In certain embodiments, initial bit rate is the acquiescence reference speed rate of equipment.But, some embodiments allow user to specify initial bit rate.1505, process 1500, also by by initial bit rate, by one or more communication port, transmits data (such as, Voice & Video image) to remote equipment, starts video conference.
Subsequently, process 1500 and identify the group network conditional parameter that (1510) receive from the remote equipment video conference.In certain embodiments, real time transport protocol (RTP) communication session of local device by setting up when starting video conference, receives a described group network conditional parameter from remote equipment.Such as, some embodiments, by the extension feature of RTP, provide network condition parameter.In addition, by pointing out the existence of extension header in RTP packet header, and definition is about the extension header of additional information, the RTP extension feature of some embodiments can be used to the information (such as, a described group network conditional parameter) transmitting any type.
In various embodiments, each equipment in video conference transmits the different network condition/congestion parameter of many groups.In embodiment described below, a described group network conditional parameter comprises unidirectional stand-by period and bandwidth estimation bit rate.In other embodiments, a described group network conditional parameter comprises packet loss data and two-way time (RTT) delayed data.Thus, different embodiments can comprise any number of different network condition parameter at a described group network conditional parameter.
In certain embodiments, the group network conditional parameter received from the remote equipment of video conference is with by the initial bit rate set in operation 1505, during video conference, from local mobile device (namely, perform the mobile device of process 1500) based on the data (such as, Voice & Video) that send remote equipment to.Such as, in certain embodiments, by utilizing the timestamp of audio packet, calculate audio packet and connected by network, propagate into the remote equipment time used from local mobile device, remote equipment can determine the unidirectional stand-by period.Specifically, in certain embodiments, each audio packet is stamped timestamp.When not having packetization delay, the setting-up time interval that remote equipment should be equal with the difference of timestamp, audio reception divides into groups.But, when there is unidirectional latency delays, remote equipment divided into groups every audio reception with the time larger than the difference of timestamp.
In addition, in certain embodiments, remote equipment receives the time of video packets by checking, receive the time of adjacent video grouping, and the size that described adjacent video is divided into groups, and determines bandwidth estimation bit rate.That is, the time difference receiving the grouping of two continuous videos and the size of second video packets are used to the available bandwidth that estimation network is connected.Some embodiments, by checking the grouping of multipair continuous videos, determine bandwidth estimation bit rate.Example above utilizes the data of particular type (that is, for determining the voice data of unidirectional stand-by period, with for determining the video data of bandwidth estimation bit rate).But, in certain embodiments, the data being connected other type transmitted by the network between local mobile device and remote equipment can also be used.
After identification (1510) described group network condition, process 1500 determines whether (1515) unidirectional stand-by period has deteriorated into the threshold quantity exceeding definition subsequently.In certain embodiments, described threshold quantity is defined as amount of specific stand-by period, if the difference between current unidirectional stand-by period and previous unidirectional stand-by period exceedes specific latency amount, so determines that the unidirectional stand-by period deteriorates into and exceedes threshold quantity.In other embodiments, threshold quantity is defined as the specific change rate of unidirectional stand-by period.Thus, when one group of unidirectional stand-by period, the rate of change of (such as, current unidirectional stand-by period and previous unidirectional stand-by period) exceedes specific rate of change, so determines that the unidirectional stand-by period deteriorates into and exceedes threshold quantity.
When determine the unidirectional stand-by period deteriorate into exceed threshold quantity time, process 1500 terminate.Otherwise process 1500 determines whether (1520) current bit rate reaches bandwidth estimation bit rate.In certain embodiments, the amount of bandwidth available (such as, 15kb/s (kbps)) of bandwidth estimation bit rate indication network connection.When process 1500 determines that current bit rate exceedes bandwidth estimation bit rate, process 1500 terminates.When process 1500 determines that current bit rate does not exceed bandwidth estimation bit rate, process 1500 enters operation 1525.
1525, process 1500 determines whether current bit rate reaches the Maximum Bit Rate of definition.When process 1500 determines that current bit rate exceedes the Maximum Bit Rate of definition, process 1500 terminates.Otherwise process 1500 enters operation 1530, and current bit rate is increased ormal weight.Different embodiments differently defines the amount increasing bit rate.The example of ormal weight increasing current bit rate comprise 32kbps, 64kpbs and arbitrarily multiple other increase the value of bit rate.
Subsequently, process determines whether (1535) official hour amount passes by.Official hour amount can be 1 second, 2 seconds, 5 seconds or other possible time quantum any, because different embodiments differently defines described time quantum.Process 1500 waits for that official hour amount is gone over, so that the bit rate (in operation 1530) that remote equipment can be received newly to increase, the data transmitted from local mobile device (such as, Voice & Video image), and according to the new bit rate determination network condition parameter increased.If process 1500 determines that official hour amount is not also pass by, so process 1500 and return operation 1535, until official hour amount in the past.When official hour amount past tense is determined in process 1500, process 1500 returns operation 1510.Proceed the operation from 1510 of process 1500 as mentioned above, until process 1500 terminates.
At the end of process 1500 (that is, after operation 1515,1520 or 1525), complete the setting of the bit rate of video conference, and determine optimal bit rate.Because the available bandwidth of video conference may change during video conference, therefore, some embodiments continue the group network conditional parameter (that is, unidirectional stand-by period and bandwidth estimation bit rate) according to receiving from remote equipment, adjustment bit rate.By increasing bit rate, during video conference, adjust bit rate.Such as, if process 1500 terminates because the unidirectional stand-by period deteriorates into the threshold quantity that exceedes regulation, and during video conference, the unidirectional stand-by period improves, and so some embodiments increase bit rate.Similarly, if process 1500 terminates because bit rate exceedes bandwidth estimation bit rate, and during video conference, bandwidth estimation bit rate increases, and so some embodiments increase bit rate.
On the contrary, by reducing bit rate, during video conference, bit rate is adjusted.Such as, if during video conference, the unidirectional stand-by period continues to deteriorate into the threshold quantity exceeding regulation, and so some embodiments reduce bit rate.In addition, if during video conference, bit rate continues to exceed bandwidth estimation bit rate (such as, bandwidth estimation bit rate continues to reduce), and so some embodiments reduce bit rate.
In addition, processing 1500 uses unidirectional stand-by period and bandwidth estimation bit rate to determine whether to increase bit rate.But, those of ordinary skill will appreciate that in various embodiments, and any multiple network conditional parameter can be used to determine whether to increase bit rate.Such as, determining whether to increase bit rate can only based on RTT delayed data or packet loss data.
C. video conference architecture
As mentioned above, Figure 16 video conference of two camera movement equipment of some embodiments of graphic extension and software architecture of processing module 1600 conceptually.As shown in the figure, video conference and processing module 1600 comprise client application 1665, video conference module 1602, exchange of media module 1620, buffer 1625, photographic images processing unit (CIPU) driver 1630, encoder-driven device 1635 and decoder driver 1640.In certain embodiments, buffer 1625 is that the image of preservation video is so that the frame buffer of display on the display 1645 of two camera movement equipment.
In certain embodiments, client application 1665 is identical with the video conference client 945 of Fig. 9.As mentioned above, client application 1665 can be integrated in Another application, or is embodied as and independently applies.Client application 1665 can be the application of the video conference function utilizing video conference module 1602, such as video conference application, IP speech (VOIP) application (such as, Skype) or instant messaging application.
The client application 1665 of some embodiments sends instruction to video conference module 1602, such as start the instruction of meeting and closing session, instruction is received from video conference module 1602, the instruction of the user from two camera movement equipment is routed to video conference module 1602, and produces and be presented on two camera movement equipment and the user interface allowing user mutual with application.
D. video conference manager
As shown in Figure 16, video conference module 1602 comprises video conference manager 1604, image processing manager 1608, networking manager 1614 and buffer 1606,1610,1612,1616 and 1618.In certain embodiments, video conference module 1602 is identical with the video conference module 925 of graphic extension in Fig. 9, thus about the identical function of some or all described in video conference module 925 above performing.
In certain embodiments, video conference manager 1604 is responsible for when video conference starts, other modules some or all of of initializes video meeting module 1602 (such as, image processing manager 1608 and networking manager 1614), the operation of video conference module 1602 is controlled during video conference, with at the end of video conference, stop the operation of other modules some or all of of video conference module 1602.
The video conference manager 1604 of some embodiments also processes the image received from the one or more equipment video conference, and the image taken by of two camera movement equipment or two cameras, to be presented on two camera movement equipment.Such as, the decoded picture received from another equipment participating in video conference fetched by the video conference manager 1604 of some embodiments from buffer 1618, with fetch the image (that is, the image taken by two camera movement equipment) processed by CIPU 1650 from buffer 1606.In certain embodiments, before image being presented on two camera movement equipment, video conference manager 1604 goes back proportional zoom and composograph.That is, in certain embodiments, video conference manager 1604 produces PIP or other synthesis view, to show on the mobile apparatus.The image that some embodiment proportional zooms are fetched from buffer 1606 and 1618, and the image that other embodiment proportional zoom is fetched from one of buffer 1606 and 1618.
Although Figure 16 is illustrated as a part for video conference module 1602 video conference manager 1604, but some embodiments of video conference manager 1604 are realized as the assembly be separated with video conference module 1602.Thus, single video conference manager 1604 can be used to management and control several video conference module 1602.Such as, some embodiments will run independently video conference module on the local device with mutual with each party in Multi-Party Conference, and these video conference modules on local device are by a video conference manager administration and control.
Before image is encoded by encoder 1655, the image processing manager 1608 of some embodiments processes the image taken by the camera of two camera movement equipment.Such as, some embodiments of image processing manager 1608 perform the one or more operations in exposure adjustment, Focussing, perspective correction, dynamic range adjustment and image scaling to the image that CIPU 1650 processes.In certain embodiments, image processing manager 1608 controls the frame rate of the coded image of another equipment sent in video conference.
One or more connections between the two camera movement equipment of some embodiments management of networking manager 1614 and another equipment participating in video conference.Such as, the networking manager 1614 of some embodiments, when video conference starts, sets up two connection between camera movement equipment and another equipment of video conference, and at the end of video conference, interrupts these and connect.
During video conference, networking manager 1614 sends the image of being encoded by encoder 1655 to another equipment of video conference, and the image path that another equipment from video conference is received by decoder 1660 to decode.In certain embodiments, networking manager 1614, instead of image processing manager 1608, control the frame rate sending the image of another equipment of video conference to.Such as, some such embodiments of networking manager 1614 should be transmitted to some coded frame in the coded frame of another equipment of video conference, control frame speed by abandoning (that is, not transmitting).
As shown in the figure, the exchange of media module 1620 of some embodiments comprises camera source module 1622, video compressing module 1624 and video decompression module 1626.Exchange of media module 1620 is identical with the exchange of media module 310 shown in Fig. 3, provides more details simultaneously.Camera source module 1622 is by CIPU driver 1630, route messages and media content between video conference module 1602 and CIPU1650, video compressing module 1624 is by encoder-driven device 1635, route messages and media content between video conference module 1602 and encoder 1655, and video decompression module 1626 is by decoder driver 1640, route messages and media content between video conference module 1602 and decoder 1660.Some embodiments are embodied as a part for camera source module 1622 the TNR module 315 (not shown in Figure 16) be included in exchange of media module 310, and other embodiment is embodied as a part for video compressing module 1624 TNR module 315.
In certain embodiments, CIPU driver 1630 is identical with encoder-driven device 320 with the CIPU driver 305 of graphic extension in Fig. 3 with encoder-driven device 1635.The decoder driver 1640 of some embodiments serves as the communication interface between video decompression module 1626 and decoder 1660.In such embodiments, decoder 1660 decode by networking manager 1614 from another equipment of video conference receive and by the image of video decompression module 1626 route.After image is decoded, image is sent back to video conference module 1602 by decoder driver 1640 and video compressing module 1626.
Except carrying out except Video processing during video conference, the video conference of two camera movement equipment of some embodiments and processing module 1600, also during video conference, perform audio processing operation.The software architecture that Figure 17 graphic extension is such.As shown in the figure, video conference and processing module 1600 comprise video conference module 1602 (it comprises video conference manager 1604, image processing manager 1608 and networking manager 1614), exchange of media module 1620 and client application 1665.Other assembly and the module of the video conference shown in Figure 16 and processing module 1600 is eliminated, with simplified illustration in Figure 17.Video conference and processing module 1600 also comprise frame buffer 1705 and 170, audio frequency process manager 1715 and audio driver 1720.In certain embodiments, audio frequency process manager 1715 is realized as independent software module, and in other embodiments, audio frequency process manager 1715 is realized as a part for exchange of media module 1620.
Audio frequency process manager 1715 processes the voice data of being caught by two camera movement equipment, to send another equipment in video conference to.Such as, audio frequency process manager 1715 receives the voice data of being caught by microphone 1725 by audio driver 1720, to audio data coding, afterwards the voice data of coding is kept in buffer 1705, to send another equipment described to.Audio frequency process manager 1715 also processes is caught and the voice data received from another equipment described by another equipment in video conference.Such as, audio frequency process manager 1715 fetches voice data from buffer 1710, and to voice data decoding, decoded voice data is exported to loud speaker 1730 by audio driver 1720 subsequently.
In certain embodiments, video conference module 1602 is the part of larger meeting module together with the buffer of audio frequency process manager 1715 and association thereof.When not exchanging video content, when carrying out multi-party audio meeting among several devices, video conference and processing module 1600 utilize networking manager 1614 and audio frequency process manager 1715, easier to make by the audio exchange of Internet protocol (IP) layer.
With reference now to Figure 18, the operation of the video conference manager 1604 of some embodiments is described.Figure 18 conceptually graphic extension by the video conference manager of some embodiments, the process 1800 that the video conference manager 1604 of graphic extension in such as Figure 16 performs.This can be equal to and is performed by the management level 935 of Fig. 9.In certain embodiments, when the user of two camera movement equipment accepts (such as, by being presented at the user interface on two camera movement equipment) video conference request, or when the request that the user that the user of another equipment accepts two camera movement equipment sends, video conference manager 1604 performs process 1800.
Starting the instruction of video conference by receiving (1805), starting to process 1800.In certain embodiments, instruction receives from client application 1665, or received from user by the user interface be presented on two camera movement equipment, and be transmitted to video conference manager 1604 by client application 1665.Such as, in certain embodiments, when the user of two camera movement equipment accepts video conference request, instruction be received by user interface and forwarded by client application.On the other hand, when the user of another equipment accepts the request sent from local device, some embodiments receive instruction from client application, and do not have user interface interaction (but, can there is the user interface interaction of previous transmission initial request).
Subsequently, the first module that 1800 initialization (1810) are mutual with video conference manager 1604 is processed.The module mutual with video conference manager 1604 of some embodiments comprises CIPU 1650, image processing manager 1608, audio frequency process manager 1715 and the manager 1614 that networks.
In certain embodiments, initialization CIPU 1650 comprises the image of one or two camera shooting of the two camera movement equipment of instruction CIPU 1650 beginning reason.Some embodiments start to fetch image from buffer 1610 by instruction image processing manager 1608, and process and the image fetched of encoding, initialisation image process manager 1608.In order to initialization audio frequency process manager 1715, some embodiment instruction audio frequency process managers 1715 start the voice data that coding microphone 1725 is caught, with the voice data (voice data from another equipment receives) be kept in buffer 1710 of decoding, to export to loud speaker 1730.The initialization of the networking manager 1614 of some embodiments comprises the foundation of instruction networking manager 1614 and is connected with the network of another equipment in video conference.
Process 1800 is determined whether (1815) also remain to have subsequently and is wanted initialized any module.When surplus have want initialized module time, process 1800 returns operation 1810, with another module of initialization.When module in need is initialised all, process 1800 produces (1820) for the composograph be presented on two camera movement equipment (that is, local display).These composographs can comprise and are shown in those composographs in Figure 65 described below (namely, PIP or other compound display), and the various combinations of the image of the camera of the two camera movement equipment from this locality and the image from the camera of another equipment of participation video conference can be comprised.
Next, process 1800 and determine whether (1825) have made change to video conference.Some embodiments are mutual by user and the user interface be presented on two camera movement equipment, receive the change to video conference, and other embodiment is by networking manager 1614, receive the change (that is, Long-distance Control) to video conference from another equipment.In certain embodiments, also can from client application 1665, or other module in video conference module 1602 receives the change arranged video conference.Video conference arranges and also can change due to the change of network condition.
When changing, process 1800 determines that whether (1830) are the changes to network settings to the change of video conference.In certain embodiments, described change or network settings change or image taking arranges change.When being the change to network settings to the change of video conference, process amendment (1840) network settings, enter operation 1845 subsequently.The network settings of some embodiments change the bit rate comprising and changing Image Coding, or transmit the frame rate of image to another equipment.
When not being the change to network settings to the change of video conference, process 1800 determines that described change is the change arranged image taking, thus enters operation 1835.Process 1800 performs the change that (1835) are arranged image taking subsequently.In certain embodiments, switching camera can be comprised (namely to the change that image taking is arranged, any camera capture video on switch dual camera movement equipment), Focussing, exposure adjustment, show or do not show the image of one or two camera from two camera movement equipment, and zoom in or out the image be presented on two camera movement equipment, and other arranges change.
In operation 1845, process 1800 determines whether to terminate video conference.When process 1800 is determined not terminate video conference, process 1800 returns operation 1820.At the end of process 1800 determines that video conference is incited somebody to action, process 1800 terminates.When process 1800 receives from client application 1665 instruction terminating video conference (, receive owing to the user interface by local two camera movement equipment, or the instruction from another equipment participating in video conference receives), some embodiments of process 1800 are determined to terminate video conference.
In certain embodiments, at the end of video conference, video conference manager 1604 performs the various operations be not shown in process 1800.Some embodiment instructions CIPU 1650 stops producing image, and instruction networking manager 1614 interrupts being connected with the network of another equipment in video conference, and instruction image processing manager 1608 stops process and coded image.
E. temporal noise reduces
Some embodiments comprise process video image, reduce module with the special temporal noise reducing the noise in video.The temporal noise reduction module of some embodiments compares the successive image in video sequence, to identify and eliminate harmful noise from video.
This temporal noise of Figure 19 some embodiments of graphic extension conceptually reduces the software architecture of (TNR) module 190.Some embodiments are embodied as a part (such as, being embodied as a part for exchange of media module as shown in Figure 3) for application TNR module 1900, and other embodiment is embodied as TNR module 1900 independent utility used by other application.Other embodiment is in addition embodied as TNR module 1900 part for the operating system run on two camera movement equipment.In certain embodiments, TNR module 1900 is realized by one group of API, and described one group of API provides some or all functions of TNR module 1900 to other application.
As shown in Figure 19, TNR module 1900 comprises TNR manager 1905, difference block 1910, pixel averaging module 1915 and motion history module 1920.Although Figure 19 is expressed as independently module three modules 1910,1915 and 1920, but some embodiments realize the function of these modules described below in individual module.The TNR module 1900 of some embodiments receives input picture, benchmark image and motion history as input.In certain embodiments, input picture is the image processed at present, and benchmark image be in video sequence input picture compare with it at first image.TNR module 1900 exports output image (a kind of input picture of noise reduction of form) and exports motion history.
The flowing of TNR manager 1905 directs data in TNR module 1900 of some embodiments.As shown in the figure, TNR manager 1905 receives input picture, benchmark image and motion history.TNR manager 1905 also exports output image and exports motion history.TNR manager 1905 sends to difference block 1910 input picture and benchmark image, receives difference image from difference block 1910.
In certain embodiments, difference block 1910 processes the data received from TNR manager 1905, and the data after process are sent to TNR manager 1905.As shown in the figure, difference block 1910 receives input picture and benchmark image from TNR manager 1905.The difference block 1910 of some embodiments, by deducting the pixel value of an image from the pixel value of another image, produces difference image.Difference image is sent to TNR manager 1905.The difference image of some embodiments indicates the difference between two images, to identify compared with previous image, and the part changed of input picture, and the part remained unchanged of input picture.
TNR manager 1905 also sends to pixel averaging module 1915 input picture and benchmark image.As shown in the figure, some embodiments also send to pixel averaging module 1915 motion history.But, other embodiment only can send input picture and benchmark image, and does not send motion history.In any one embodiment, TNR manager 1905 all receives the image after process from pixel averaging module 1915.
The pixel averaging module 1915 of some embodiments utilizes motion history to determine whether about the ad-hoc location in image, obtains the mean value of pixel from input picture and benchmark image.In certain embodiments, motion history comprises the probable value of each pixel in input picture.The representative of specific probable value is relative to the respective pixel in benchmark image, and the respective pixel in input picture changes the probability of (that is, dynamic pixel).Such as, if the probable value of the specific pixel in input picture is 20, so indicate relative to the respective pixel in benchmark image, the probability that the specific pixel in input picture has changed is 20%.As another example, if the probable value of the specific pixel in input picture is 0, so indicate relative to the respective pixel in benchmark image, the specific pixel in input picture does not change (that is, static pixels).
Different embodiments differently preserves the probable value of input picture.Some embodiments can be kept at the probable value of each pixel of input picture in a data array.Other embodiment can be kept at (such as, in a group pattern) in the dimension matrix identical with the resolution of the image of video probable value.Such as, if the resolution of the image of video is 320 × 240, so matrix is also 320 × 240.
When except input picture and benchmark image, when pixel averaging module 1915 also receives motion history from TNR manager 1905, pixel averaging module 1915 reads the probable value of each pixel in input picture.If the probable value of the specific pixel in input picture lower than the threshold value specified (such as, 5%, 20%), so pixel averaging module 1915 is according in this specific pixel, probably motion can not be there is, thus the difference between the image of this pixel owing to the supposition of noise, may ask the mean value of the respective pixel value in this particular pixel values and benchmark image.
If the probable value of the specific pixel in input picture is not less than the threshold value of regulation, so pixel averaging module 1915 does not revise the specific pixel (that is, the pixel value maintenance of this pixel and the same in input picture) of input picture.This is because motion is probably positioned at this specific pixel, thus the difference between image is not probably the result of noise.In certain embodiments, when motion history is not sent to pixel averaging module 1915, pixel averaging module 1915 asks the mean value of each pixel in input picture and the respective pixel in benchmark image.To be exported by pixel averaging module 1915 and image after being sent to the process of TNR manager 1905 comprises not by the input image pixels value of average any pixel, and by the average pixel value of the average any pixel of pixel averaging module 1915.
In certain embodiments, motion history module 1920 processes the data received from TNR manager 1905, and result data loopback to TNR manager 1905.The motion history module 1920 of some embodiments receives input picture and motion history from TNR manager 1905.Some embodiments, can in the average middle new motion history (that is, one group of probable value) used of pixel about next input picture to produce these data input Bayes estimator.Other embodiment uses other estimator to produce new motion history.
With reference now to Figure 20, the operation of TNR module 1900 is described.The process 2000 of Figure 20 temporal noise of the image of the reduction video of some embodiments of graphic extension conceptually.2000 are processed from TNR manager 1905 receives (2005) input picture, benchmark image and motion history.Input picture is the image processed in order to noise reduction at present.In certain embodiments, benchmark image is from the previous image the image sequence of the video of CIPU reception.But, in other embodiments, benchmark image is the output image (that is, the output of TNR module 1900) produced by the process of previous input picture.Motion history is the output motion history produced by the process of previous input picture.
When input picture is first image of video, the TNR module 1900 of some embodiments does not process first image (that is, not to first image applications TNR).In other words, TNR manager 1905 receives first image, and is output first image.In other embodiments, when input picture is first image of video, first image is used as input picture and benchmark image, this image of TNR module 1900 process as described below.In addition, when input picture is the first image of video, motion history is empty (that is, null value, Quan Weiling, etc.), and TNR manager 1905 just exports empty motion history, as output motion history.
TNR manager 1905 determines whether (2010) input picture is static subsequently.Determine to make this, some embodiments send to difference block 1910 input picture and benchmark image, receive difference image from difference block 1910.When difference between two images is lower than threshold value (such as, 5% difference, 10% difference etc.) that specify, some embodiments are categorized as still image input picture.
When input picture is still image, TNR manager 1905 sends to pixel averaging module 1915 input picture and benchmark image, to calculate the mean value of the pixel of (2015) input picture and the pixel of benchmark image, to reduce any noise from still image.Process enters operation 2040 described below subsequently.
When input picture is not still image, TNR manager sends to pixel averaging module 1915 to process input picture, benchmark image and motion history.Pixel averaging module 1915 selects a pixel in (2020) input picture.By utilizing motion history, pixel averaging module 1915 determines that whether the probability of motion of (2025) pixel is lower than specific threshold, as mentioned above.
If the probability of selected pixel is lower than specific threshold, so pixel averaging module 1915 calculates the mean value of the respective pixel in the described pixel of (2030) input picture and benchmark image.Otherwise this pixel is not averaging, and output image is by identical with at the input picture of described specific pixel.Pixel averaging module 1915 determines that whether surplus (2035) in the input image subsequently any unselected pixel.If there is also not processed any pixel, so process returns operation 2020 to select next pixel.Pixel averaging module 1915 executable operations 2020-2030, until have evaluated all pixels.
Process upgrades (2040) motion history subsequently.As shown in Figure 19 and as mentioned above, motion history module 1920 upgrades motion history according to input picture.New motion history is exported by TNR manager together with image after the process from pixel averaging module.
F. image processing manager & encoder
To reduce except the temporal noise that performed by CIPU and/or CIPU driver and except image processing operations, some embodiments perform various image processing operations at the image procossing layer 930 of video conference module 925.These image processing operations can comprise the adjustment and image scaling etc. of exposure adjustment, Focussing, perspective correction, dynamic range.
Figure 21 conceptually graphic extension performs the process 2100 of such image processing operations.In certain embodiments, some or all operations processing 2100 are performed by the image processing manager 1608 of Figure 16 and the combination of encoder-driven device 1635.In the embodiment that some are such, image processing manager 1608 performs the process (such as, convergent-divergent, dynamic range adjustment, perspective correction etc.) based on pixel.Some embodiments, during video conference, perform process 2100 to by the image being transmitted to another equipment participating in video conference.
With reference now to Figure 16, process 2100 is described.By fetching (2105) image from buffer 1606, start this process.In certain embodiments, the image fetched is the image (that is, an image in image sequence) of video.This video can be taken by the camera of the equipment performing process 2100 thereon.
Subsequently, process 2100 and (2110) exposure adjustment is performed to the image fetched.Some embodiments, by being presented at the user interface on two camera movement equipment, carry out exposure adjustment.The example exposure adjustment operation of this embodiment of Figure 22 graphic extension.
The three phases 2210,2215 and 2220 of the UI 2205 of Figure 22 reference device 2200, illustrates exposure adjustment operation.First stage 2210 graphic extension comprises the UI 2205 of viewing area 2225 and viewing area 1155.As shown in the figure, viewing area 2225 shows the image 2230 of all black dull man of the sun and face and health.Black dull face and body shows this man and does not obtain appropriate exposure.Image 2230 can be the video image taken by the camera of equipment 2200.As shown in the figure, viewing area 1155 comprises the optional UI project 2250 for terminating video conference.In certain embodiments, the layout of viewing area 1155 is identical with the layout of the viewing area 1155 of Figure 12 described above.
The a certain region of the user by selecting viewing area 2225 of second stage 2215 graphic extension equipment 2200, initiates exposure adjustment operation.In this example, the realization be Anywhere placed in viewing area 2225 by finger 2235 is selected.In certain embodiments, user arranges the menu of adjustment from possible image and selects exposure adjustment.
After phase III 2220 has been presented at exposure adjustment operation, the image 2240 of described man.As shown in the figure, image 2240 is similar to image 2230, but the man in image 2240 is by appropriate exposure.In certain embodiments, the image of appropriate exposure is the image taken after the image of incorrect exposure.The exposure of the successive image that the exposure adjustment operation adjustment of initiating in second stage 2215 is taken by the camera of equipment 2200.
Return Figure 21, process 2100 performs (2115) Focussing to image subsequently.Some embodiments, by being presented at the user interface on two camera movement equipment, carry out Focussing.The example of Figure 23 this Focussing of graphic extension operation conceptually.
Three different phases 2310,2315 and 2320 of the UI 2305 of Figure 23 reference device 2300, graphic extension Focussing operates.First stage 2310 graphic extension comprises the UI 2305 of viewing area 2325 and viewing area 1155.Viewing area 2325 presents the blurred picture 2330 of the man taken by the camera of equipment 2300.The image 2330 misalignment focus of this fuzzy this man of explanation.That is, when the image 2330 of this man taken by camera, the lens of camera are not focused in this man.In addition, image 2330 can be the video image taken by the camera of equipment 2300.As shown in the figure, viewing area 1155 comprises the optional UI project 2350 for terminating video conference.In certain embodiments, the layout of viewing area 1155 is identical with the layout of the viewing area 1155 of the viewing area 1155 of Figure 12 described above.
A region of the user by selecting viewing area 2325 of second stage 2315 graphic extension equipment 2300, initiates Focussing operation.In this example, the realization be Anywhere placed in viewing area 2225 by finger 2335 is selected.In certain embodiments, user arranges the menu of adjustment from possible image and selects Focussing.
Phase III 2320 be presented at Focussing operation after, the image 2340 of described man.As shown in the figure, image 2340 is identical with image 2330, but the man in image 2340 seems more clear.This illustrates that the lens of camera are gathered in this man rightly.In certain embodiments, the appropriate image focused on is the image taken after the image of incorrect focal length.The focal length of the successive image that the Focussing operation adjustment of initiating in second stage 2315 is taken by the camera of equipment 2300.
Return Figure 21, process 2100 pairs of images and carry out (2120) image scaling.Some embodiments carry out image scaling to image, to reduce for the bit number (that is, reducing bit rate) to Image Coding.In certain embodiments, process 2100 and carry out image scaling, as described in reference diagram 26 below.
Process 2100 carries out (2125) perspective correction to image subsequently.In certain embodiments, process 2100 carries out perspective correction, as follows in fig. 24 described in.Such perspective correction relates to the data utilized by identifying two orientation of camera movement equipment and one or more accelerometer of movement and/or gyro sensor acquisition.Described data are used to revise image, to correct incorrect perspective subsequently.
After perspective correction is carried out to image, the dynamic range of process 2100 adjustment (2130) image.In certain embodiments, the dynamic range of image is the scope that each pixel in image can have probable value.Such as, the image with the dynamic range of 0-255 can be adjusted to the scope of 0-128, or other number range any.The dynamic range of adjustment image can reduce the quantity of the bit be used for Image Coding (that is, reducing bit rate), thus makes image smoothing.
The dynamic range of adjustment image also can be used for other object various.An object reduces picture noise (such as, image is taken by noisy camera sensor).In order to reduce noise, the dynamic range of image can be adjusted, black level is redefined, to comprise somber (that is, the black (crush black) of pulverizing).In this way, the noise of image is reduced.Another object of dynamic range adjustment is one or more colors of adjustment or color gamut, to strengthen image.Such as, some embodiments can suppose that the image of front camera shooting is the image of face.Therefore, the dynamic range of this image can be adjusted, to strengthen redness and pink, make the cheek of people seem ruddy/more ruddy.Dynamic range adjustment operation also can be used for other object.
Finally, process 2100 and determine that (2135) are for the one or more rate controller parameters to Image Coding.In certain embodiments, such rate controller parameter can comprise quantization parameter and frame type (such as, predictive frame, bidirectional frame, intracoded frame).This process terminates subsequently.
Although each operation of process 2100 is illustrated perform according to specific order, but, those of ordinary skill will appreciate that the many operations (exposure adjustment, Focussing, perspective correction etc.) in these operations can perform according to random order, and has nothing to do each other.That is, the process of some embodiments can carry out Focussing before exposure adjustment, or can carry out similar amendment to the process of graphic extension in Figure 21.
1. perspective correction
As mentioned above, some embodiments, before display or transmitting image, carry out perspective correction to image.In some cases, one on two camera movement equipment or multi-section camera can not complete face to its subject, and in uncorrected image, object knows from experience the distortion that seems.Perspective correction can be used to process image, make image by the subject that verily reflects in the image appearance In the view of people.
Figure 24 summarizes the image processing manager of ground graphic extension by some embodiments, the perspective correction process 2400 of the image processing manager execution of graphic extension in such as Figure 16.The process 2400 of some embodiments is performed by the image procossing layer 930 (it can comprise image processing manager 1608) shown in Fig. 9.Some embodiments perform process 2400 in the operation 2125 of process 2100, before display or transmitting the nearest video image taken, to correct the perspective of described image.
Process 2400 is from autoacceleration flowmeter sensor receives (2405) data, and in certain embodiments, described accelerometer sensor is a part for two camera movement equipment.The accelerometer sensor of some embodiments measures the rate of change (that is, the acceleration of equipment) along the speed of the equipment of one or more axle.This process also receives (2410) data from gyro sensor, and in certain embodiments, described gyro sensor also can be a part for two camera movement equipment.The gyroscope of some embodiments and accelerometer sensor can by either alone or in combination for identifying the orientation of two camera movement equipment.
Subsequently, process 2400, according to the data obtained from accelerometer and gyro sensor, determines the perspective correction amount that (2415) will carry out.Usually, when described orientation is farther from axle, in order to produce best image, need more perspective correction.Some embodiments, according to the orientation of equipment, calculate the warp parameters (warp parameter) representing perspective correction amount.
After determining the perspective correction amount that will carry out, process 2400 receives the image (2420) taken by the camera of two camera movement equipment.Described process can be carried out to each image in the video sequence taken by this camera.Some embodiments can to carrying out independent calculating from each image of two cameras on two camera movement equipment respectively.
Described process, subsequently according to the perspective correction amount determined, revises (2425) image.Except other of warp parameters or perspective correction amount represents, some embodiments also use baseline image or out of Memory (such as, user's input should carry out about it point that corrects).After amendment image, process 2400 terminates.
Figure 25 conceptually some embodiments of graphic extension example image process operation.Figure 25 graphic extension is by the first image processing operations 2505 not using the first image processing module 2520 of perspective correction to perform, and the second image processing operations 2550 performed by the second image processing module 2565 of use perspective correction.
As shown in the figure, the first image processing operations 2505 is carried out to the first image 2510 of the block 2515 that the aerial prospective by angled downward viewing block produces.Compared with the bottom of block 2515, the top of block from described perspective more close to.Thus, block 2515 seems towards the camera tilt of shooting first image 2510.Figure 25 also illustrates the first image 2525 after the process after being processed by the first image processing module 2520.As shown in the figure, there is identical reprocessing in the block 2515 in the first image 2525 after process, because the first image processing module 2520 does not carry out any perspective correction.
Second image processing operations 2550 is carried out to the second image 2555 of block 2560.Block 2560 is identical with the block 2515 in the first image 2510.Figure 25 also represents the second image 2575 after the process carried out after the process of the second image 2555 at the perspective correction device 2570 by the second image processing module 2565.Perspective correction device 2570 can use process 2400, to correct the perspective of the second image 2555.Point out that the camera of shooting second image 2555 becomes the data (may also according to other data) of downward angular slope according to from accelerometer with gyrostatic, perspective correction device 2575 can correct the second image, make in the second image 2575 after treatment, it seems that block seem watch as the crow flies.
2. convergent-divergent and bit stream process
Image scaling and bit stream process belong to the row in the function performed by the image procossing layer 930 of some embodiments illustrated above with reference to Figure 21.Image scaling (carrying out in operation 2130) relates to scale amplifying or scaled down image (that is, revising the number of the pixel for representing this image) in certain embodiments.In certain embodiments, bit stream process relates in the data insertion bit stream the size of image after instruction convergent-divergent.In certain embodiments, this convergent-divergent and bit stream process are performed by encoder-driven device (such as, driver 1635).
The software architecture of Figure 26 this encoder-driven device 2600 of some embodiments of graphic extension conceptually, and show the example convergent-divergent that undertaken by encoder-driven device 2600 pairs of example image 2605 and bit stream process operates.In certain embodiments, image 2605 be taken by the camera of two camera movement equipment, for sending the image of the video of another equipment in video conference to.See Figure 16, in certain embodiments, video image propagates into buffer 1606 by CIPU driver 1630 and camera source module 1622 from CIPU 1650, and image processing manager 1608 fetches described video image from buffer 1606.In image processing manager 1608 after image procossing (such as, Focussing, exposure adjustment, perspective correction), image is sent to encoder-driven device 1635 by buffer 1610 and video compressing module 1624.
As shown in the figure, encoder-driven device 2600 comprises processing layer 2610 and rate controller 2645.The example of the rate controller of some embodiments is illustrated in Figure 30 described below.Processing layer 2610 comprises image sealer 2615 and bit stream manager 2625.In certain embodiments, these modules carried out various operation to image before and after image is encoded.Although in this example, image sealer is expressed as a part for the processing layer 2610 of encoder-driven device 2600, but some embodiments are embodied as image sealer a part (that is, carrying out image scaling before image and size data are sent to encoder-driven device) for image processing manager 1608 instead of encoder-driven device 2600.
As shown in the figure, before image through-rate controller 2645 is sent to encoder 2650, image sealer 2615 zoomed image.Image 2605 is sent out by scaler 2615 and is become image 2630 by scale smaller.Except scaled down image, some embodiments can also upscale image.
As shown in Figure 26, the image of some embodiment scale smaller input (such as, image 2605), subsequently the image of scale smaller (such as, 2630) spatial redundancy image is overlapped (such as, image 2635) on, the size (just as usually saying) of described spatial redundancy image identical with input picture (that is, the line number of line number and the columns of the pixel of image 2605 and the pixel of spatial redundancy image 2635 is identical with columns).Some embodiments overlap the upper left corner of spatial redundancy image (as shown in the figure the image 2630 of scale smaller, to produce composograph 2640), and other embodiment the image of scale smaller overlap onto spatial redundancy image different piece (such as, central authorities, the upper left corner, directly over, immediately below, lower right etc.).
In certain embodiments, spatial redundancy image is all a kind of color (such as, black, blueness, redness, white etc.) substantially, or have the image of repeat patterns (such as, grid, striped etc.).Such as, the spatial redundancy image 2635 shown in Figure 26 has the cruciform pattern of repetition.Due to the cause of repeatability, the spatial redundancy part of composograph 2640 easily can be become a small amount of data by encoder compresses.In addition, if a series of image is all by scale smaller, and concerning each image in sequence, the spatial redundancy image of use is all identical, and so time compress can be used to the amount being reduced to the data presented required for coded image further.
Some embodiments of image sealer 2615 also produce the size data 2620 of the size (such as, the size of the image 2630 of proportional zoom) of the image after indicating convergent-divergent, and the size data 2620 produced is sent to bit stream manager 2625.The line number of size data 2620 according to the pixel of the image 2630 after convergent-divergent of some embodiments and the columns (that is, height and width) of pixel, the size of the image 2630 after instruction convergent-divergent.In certain embodiments, size data 2620 also indicates the position of image 2630 in composograph 2640 after convergent-divergent.
After image is scaled, composograph 2640 through-rate controller 2645 is sent to encoder 2650.In certain embodiments, following further in detail described in, rate controller 2645 controls the bit rate (that is, size of data) of the image exported by encoder 2650.The encoder 2650 of some embodiments compresses and coded image.Encoder 2650 can use H.264 coding or another kind of coding method.
The bit stream manager 2625 of some embodiments receives the bit stream of one or more coded image from encoder 2650, and size data is inserted in bit stream.Such as, in certain embodiments, bit stream manager 2625 receives size data 2620 from image sealer 2615, and size data 2620 is inserted the bit stream 2655 of the encoded composite image 2640 received from encoder 2650.In this case, the output of bit stream manager 2625 is the amended bit streams 2660 comprising size data 2620.Different embodiments inserts the diverse location in bit stream 2655 size data 2620.Such as, bit stream 2660 shows the beginning that size data 2620 is inserted in bit stream 2660.But, other embodiment is inserted in the ending of bit stream 2655, the centre being inserted in bit stream 2655 or other position any be inserted in bit stream 2655 size data 2620.
In certain embodiments, bit stream 2655 is the bit streams of a series of one or more coded image comprising composograph 2640.In the embodiment that some are such, the image in this series is all scaled to identical size, and size data 2620 indicates the size of the image after these convergent-divergents.Be transmitted to after the equipment of the video conference other end at image, receiving equipment can extract size information from bit stream, and utilize described size information correctly decode receive image.
Figure 27 conceptually graphic extension by the encoder-driven device of two camera movement equipment, such as driver 2600 perform image scaling process 2700.Process 2700 starts from receiving the image (such as, image 2605) (2705) taken by the camera of two camera movement equipment.When two camera apparatus is with two camera photographic images, some embodiments perform process 2700 to the image from two cameras.
Subsequently, the image that 2700 convergent-divergents (2710) receive is processed.As mentioned above, different embodiments is zoomed image 2605 differently.Such as, the image 2605 in Figure 26 is superimposed on spatial redundancy image 2635 by scale smaller, thus produces composograph 2640.
Process 2700 sends to (2715) encoder 2650, to encode the image (such as, comprising the composograph 2640 of the image after convergent-divergent 2630) after convergent-divergent subsequently.Some embodiments of process 2700 send to encoder 2650 the image 2630 (being included in composograph 2640) after convergent-divergent by the rate controller of the bit rate determining encoder encodes image.The encoder 2650 of some embodiments compresses and coded image (such as, utilizing discrete cosine transform, quantification, entropy code etc.), and the bit stream with coded image is returned to encoder-driven device 2600.
Subsequently, process 2700 and the data (such as, size data 2620) of the size of the image after instruction convergent-divergent are sent to (2720) bit stream manager.As shown in Figure 26, in certain embodiments, this operation is carried out (that is, a module in encoder-driven device 2600 sends to size data another module in encoder-driven device 2600) in encoder-driven device 2600.
After image is after scaling encoded by encoder 2650, process 2700 is from encoder accepts (2725) bit stream.As shown in the figure, the bit stream manager that some embodiments are receiving size data in addition receives described bit stream.The bit stream received comprises the composograph of coding, also can comprise the one or more other image in video sequence.
Process 2700 is inserted the data (such as, size data 2620) of the size of the image after instruction convergent-divergent in bit stream subsequently, terminates subsequently.As shown in Figure 26, in certain embodiments, this operation is also performed by bit stream manager.As mentioned above, different embodiments inserts the different piece of bit stream size data.In the example of graphic extension, size data 2620 is inserted in the beginning of bit stream 2655, as shown in the bit stream 2660 that obtains.Now, this bit stream can be transmitted to another equipment participating in video conference, and at another equipment described, this bit stream can decoded and viewing.
In certain embodiments, decoder driver (such as, driver 1640) performs the reverse functions of encoder-driven device.That is, decoder driver is from the bitstream extraction size data received, and gives decoder, and utilize the image that size data convergent-divergent is decoded bit stream.The software architecture of Figure 28 this decoder driver 2800 of some embodiments of graphic extension conceptually, and represent the process of example bit stream and zoom operations undertaken by the bit stream 2825 of decoder driver 2800 pairs of examples.
In certain embodiments, bit stream 2825 be the bit stream of the coded image comprising the video taken by the camera of the equipment of in video conference (such as, bit stream from the encoder-driven device of such as driver 2600 and so on), and be transmitted to the equipment that decoder driver 2800 runs on.See Figure 16, in certain embodiments, this bit stream is received by networking manager 1614, and is sent to buffer 1616, and described bit stream is fetched from buffer 1616 by video decompression module 1626, and is sent to decoder driver 1640.
As shown in the figure, decoder driver 2800 comprises processing layer 2805.Processing layer 2805 comprises image sealer 2810 and bit stream manager 2820.In certain embodiments, these modules 2810 and 2820, before and after image is decoded, carry out various operation to the image received.Although in this example, image sealer 2810 is expressed as a part for the processing layer 2805 of decoder driver 2800, but, some embodiments are embodied as image processing manager 1608 image sealer, instead of a part for decoder driver (namely, after sending image from decoder driver 2800, carry out image scaling).
As shown in the figure, (namely the bit stream manager 2820 of some embodiments receives one or more coded image, image in video sequence) bit stream, and extract size data from this bit stream, send to decoder 2835 to decode bit stream afterwards.Such as, as shown in Figure 28, bit stream manager 2820 receives the bit stream 2825 of a coded image, extracts size data 2815 from bit stream 2825, and sends to decoder 2835 to decode the bit stream 2830 (not having size data 2815) obtained.As shown in the figure, in certain embodiments, bit stream manager 2820 sends to image sealer 2810 the size data 2815 extracted.
The size data 2815 of some embodiments is identical with the size data 2620 inserted in bit stream by encoder-driven device 2600.As above described in the explanation of Figure 26, the line number of size data 2815 according to the pixel of subgraph 2845 of some embodiments and the columns of pixel, the size of instruction subgraph 2845.Size data 2815 also can indicate the position of subgraph 2845 in larger spatial redundancy image 2840.In this example, bit stream 2825 display is inserted in the size data 2815 of the beginning of bit stream 2825.But, as mentioned above, different embodiments inserts the diverse location of bit stream 2825 size data 2815.
The image sealer 2810 of some embodiments utilizes the size data received from bit stream manager 2820, from image, extract subgraph.Such as, Figure 28 graphic extension image sealer 2810 receives the image 2840 comprising subgraph 2845 from decoder 2835.As shown in the figure, the image sealer 2810 of some embodiments extracts subgraph 2845 from image 2840.The image extracted can be displayed on two camera movement equipment subsequently.
Figure 29 conceptually some embodiments of graphic extension by the decoder driver of equipment participating in video conference, the image zooming-out process 2900 that such as driver 2800 performs.By receiving the bit stream (such as, bit stream 2825) of (2905) coded image, start this process.Described bit stream can send another equipment that the equipment certainly run on decoder driver carries out video conference, or can be stored in the memory of described equipment.When described equipment receives image from multiple source, some embodiments carry out process 2900 to the image from each source.
Subsequently, 2900 are processed from bitstream extraction (2910) size data.As mentioned above, described size data can be found by diverse location in the bitstream.Some embodiments are known and are found described size data wherein, and other embodiment finds specific mark, and described mark points out that described size data is arranged in the where of the bit stream of reception.In certain embodiments, size data points out size (pixel count such as, in every a line and the pixel count in each row) and the position of subgraph in coded image of subgraph.
Process 2900 sends to (2915) image sealer the size data extracted subsequently.As shown in Figure 28, in certain embodiments, this operation is carried out (that is, a module in decoder driver sends to size data another module in decoder driver) in decoder driver.
Process 2900 also sends to (2920) decoder, to decode bit stream.In certain embodiments, decoder decompresses and decoding bit stream (such as, utilizing inverse discrete cosine transform, inverse quantization etc.), and the image of reconstruct is returned to decoder driver.
After bit stream is decoded by decoder, process 2900 is from Decoder accepts (2925) decoded picture.As shown in the figure, some embodiments are also receiving the image sealer receipt decoding image of size data from bit stream manager.Process utilizes the size data of reception subsequently, extracts (2930) subgraph from decoded picture.As shown in the figure, as shown in size data 2815, extract subgraph 2845 from the upper left corner of decoded picture 2840.Now, the subgraph of extraction can be displayed on display device (such as, the screen of two camera movement equipment).
3. rate controller
In certain embodiments, two cameras of equipment have different many groups characteristics.Such as, in certain embodiments, front camera is the low resolution camera optimized for the shooting of motion video image, and back side camera is the high-resolution camera optimized for the shooting of rest image.Due to the cost of such as equipment, a variety of causes of function and/or geometry and so on, other embodiment can use the various combination of the camera of different qualities.
The camera with different qualities can introduce different pseudomorphisms.Such as, compared with low resolution camera, high-resolution camera can show more noise.Compared with the image taken by low resolution camera, the image taken by high-resolution camera can show higher levels of space or time complexity.In addition, the different cameras with different optical character can introduce different γ values in the image of shooting.The photosensitive mechanism of difference being used for photographic images by different cameras also can introduce different pseudomorphisms.
Some in the distinctive pseudomorphism of these cameras hide the pseudomorphism produced by other source.Such as, in the image taken by the high-resolution camera with high-level noise, the pseudomorphism as the accessory substance of Video coding process becomes not too visible.Time after coding noise (such as quantizing distortion) is hidden in the distinctive pseudomorphism of camera, Video coding process can use larger quantization step to obtain less bit rate.On the other hand, when less pseudomorphism introduced by camera (such as with regard to low resolution camera), Video coding process can utilize more tiny quantization step, to avoid by the unacceptable vision distortion level quantizing to cause.Thus, compared with ignoring the Video coding process of the distinctive characteristic of these cameras, be optimized to the Video coding process utilizing or compensate the distinctive characteristic of these cameras and can obtain better rate-distortion tradeoff.
In order to distinctive for these cameras characteristic is used for realizing rate-distortion tradeoff, some embodiments realize respectively relative to two kinds of Video coding process that each camera of two cameras is optimized.Figure 30 graphic extension has the example of the system of two Video coding process about two cameras 3060 and 3070.As shown in Figure 30, system 3000 comprises encoder-driven device 3010, rate controller 3020 and 3040 and video encoder 3030.Encoder 3030 becomes bit stream 3080 and 3090 from video camera 3060 with the encoding video pictures of 3070 shootings.
In certain embodiments, video encoder driver 3010 is software modules that one or more processing unit runs.It provides other assembly of video encoder 303 and system, such as video camera, image processing module, interface between network management module and storage buffer.Encoder-driven device 3010 controls the video image of shooting from camera and image processing module to the flowing of video encoder 3030, and it also provides coded bit stream 3080 and 3090 to arrive the pipeline of storage buffer and network management module.
As shown in Figure 30, encoder-driven device 3010 comprises two different instances 3020 and 3040 of rate controller.These Multi-instances can be for two of two different cameras different rate controllers, or about two different cameras, the rate controller configured according to two kinds of different modes.Specifically, in certain embodiments, these two rate controllers 3020 and 3040 represent two independent rate controllers.On the other hand, in other embodiments, these two rate controllers 3020 and 3040 are two kinds of different configurations of single rate controller.
Figure 30 also shows the encoder-driven device 3010 comprising status buffer 3015, the encoding state information of the rate control operation used during status buffer 3015 is kept at video conference.Specifically, in certain embodiments, these two different rate controllers, or during two of identical rate controller kinds of differences are configured in video conference, share the identical encoding state information be kept in status buffer 3015.Unified rate controller operation in this shared permission double vision capture video meeting frequently of state information.This sharing also allows in the meeting of single video capture video, switch best video coding during camera operation (that is, allow the rate control operation taking the photograph the coding of video about current camera institute use by about last camera take the photograph the encoding state information of the rate control operation maintenance of the coding of video).Figure 30 is expressed as a part for encoder-driven device 3010 status buffer 3015, but other embodiment can realize status buffer 3015 outside encoder-driven device 3010.
In status buffer 3015, different embodiments preserves the dissimilar data (such as, dissimilar coding parameter) representing encoding state information.An example of this encoding state information is the current goal bit rate of video conference.A kind of mode identifying target bit rate is described above in III.B joint.Other example of this encoding state information comprises buffer fullness, largest buffer degree of filling, the bit rate of frame of one or more nearest coding and other encoding state information.
Rate controller can use target bit rate (or another encoding state parameter be kept in status buffer) to calculate the one or more parameters used in its rate control operation subsequently.Such as, as further described below, the rate controller of some embodiments uses current target bit rate to carry out the quantization parameter QP of computing macro block or frame.Such as, some embodiments utilize current target bit rate to calculate and quantize adjustment parameter, and these embodiments obtain the quantization parameter QP of macro block and/or frame from quantizing adjustment parameter.Therefore, during camera handover operation in video conference, between (two rate controllers, or two of a rate controller kinds of different configurations) two kinds of rate control operation, share target bit rate allow to benefit from the encoding status data at first rate control operation to the Video coding that last camera is taken to the rate control operation of the Video coding of current camera shooting.
Figure 30 graphic extension comprises the encoder-driven device 3010 of two different rate controller examples 3020 and 3040.But, in other embodiments, these rate controller examples 3020 and 3040 are built in video encoder 3030.Video encoder 3030 becomes digital bit stream 3080 and 3090 by camera 3060 with the encoding video pictures of 3070 shootings.In certain embodiments, video encoder produces the bit stream meeting conventional video encoding standard (such as, H.264 MPEG-4).In the embodiment that some are such, video encoder performs and comprises estimation, discrete cosine transform (" DCT "), quantizes and the encoding operation of entropy code.Video encoder also carries out the decode operation contrary with the function of encoding operation.
In certain embodiments, encoder 3030 comprises for carrying out the quantizer module 3032 quantized.Quantizer module is controlled by the quantization parameter 3022 or 3042 from rate controller 3020 or 3040.In certain embodiments, each quantization parameter is set by the rate controller of correspondence, and is the function of one or more attributes of the camera relevant to this rate controller, as further described below.Rate controller can reduce the bit number for encoding by the quantization step that setting is larger, or increases by the less quantization step of setting the bit number used.By controlling quantization step, rate controller also determines can introduce how many distortions in the video image of coding.Thus rate controller can realize trading off between bit rate and picture quality.When realizing rate-distortion tradeoff, rate controller Monitor bit (n.) rate, so that can not overflow storage buffer, underflow storage buffer or exceed transmission channel capacity.Rate controller is necessary control bit rate also, to provide best possible picture quality and to avoid by the unacceptable image quality distortion quantizing to cause.In certain embodiments, each rate controller is kept at the monitor data represented according to one group of status data value in status buffer 3015.In certain embodiments, rate controller 3020 and 3040 uses the distinctive attribute of camera to optimize rate-distortion tradeoff.
In certain embodiments, each rate controller to its quantization parameter application correction factor, optimizes rate-distortion tradeoff by directly.In the embodiment that some are such, correction factor is predetermined and is built in together with camera in equipment; Equipment does not need these correction factors of dynamic calculation.In other embodiments, system utilizes the input picture taken by camera, dynamically determines the suitable correction factor specific to camera.In the embodiment that some are such, system, in repeatedly encoding, analyzes a series of inputted video image of being taken by camera, to collect some statistics about camera.System utilizes these statisticss to obtain the correction factor of the quantization parameter optimized about this camera subsequently.
In certain embodiments, the distinctive correction factor of these cameras, via the visual masking attribute of video image, is applied to quantization parameter.The visual masking attribute of image or a part of image is the instruction can tolerating how many Coding artifacts in described image or image section.Some embodiments calculate the visual masking attribute of the luminance energy quantizing described image or image section, and other embodiment calculates and quantizes described image or the activation energy of image section or the visual masking attribute of complexity.Have nothing to do with how computation vision shelters attribute, some embodiments utilize visual masking attribute to calculate the correction of a frame of video or shelter quantization parameter.Some such embodiments are calculated as frame level visual masking attribute sheltering quantization parameter with benchmark visual masking attribute function.In certain embodiments, video masking attribute is used with the quantization parameter revised is expressed as:
Wherein MQP framesheltering or revise quantization parameter, QP of frame nominitial or nominal quantization value, and β frameit is the constant being suitable for local statistics.In certain embodiments, benchmark visual masking attribute with nominal quantization parameter QP nombe according to the initial of network condition or periodic evaluation predetermined.
In certain embodiments, the visual masking attribute in equation (1) be calculated as
Wherein avgFrameLuma is the average brightness value of frame, and avgFrameSAD is mean value and the number of the absolute difference of frame.Constant α, β, C, D and E are suitable for local statistics.In certain embodiments, these constants are suitable for the distinctive characteristic of camera.
Some embodiments also calculate video image certain a part, such as macro block shelter quantization parameter.In these cases, shelter quantization parameter to be calculated as macroblock visual and to shelter attribute function:
Wherein, in certain embodiments, β mBthe constant being suitable for local statistics, MQP frameequation (1) and (2) are utilized to calculate.In certain embodiments, the visual masking attribute in equation (3) be calculated as
Wherein avgMBLuma is the average brightness value of macro block, and avgMBSAD is mean value and the number of the absolute difference of macro block.Constant α, β, A, B and C are suitable for local statistics.In certain embodiments, these constants are suitable for the distinctive characteristic of camera.
Be better than and utilize the distinctive constant of multiple camera to calculate the quantization parameter of correction as mentioned above, some embodiments calculate quantization parameter by only utilizing the distinctive coefficient of single camera, and the speed realized specific to camera controls.Such as, known visual masking attribute with and quantization parameter QP frame, some embodiments utilize the distinctive coefficient μ of single camera to carry out the quantization parameter of computing macro block:
In order to calculation equation (5), some embodiments are used separately as visual masking attribute the complexity measure of frame and macro block with
Some embodiments are at QP mBthe different distinctive coefficient of camera of application in calculation.Such as, in certain embodiments, QP mBbe calculated as
Wherein ρ is the coefficient according to the distinctive characteristic adjustment of camera.
As mentioned above, during status buffer 3015 is kept at video conference, the encoding state information that two different rate controller examples 3020 and 3040 can be shared, to obtain better coding result from their rate control operation.In certain embodiments, target bit rate R tit is an example of this shared state information.This bit rate is the desirable bit rate to series of frames coding.In general, this bit rate with bps to represent for unit, and is determine according to the process such as described in III.B joint above.
As mentioned above, the rate controller of some embodiments utilizes target bit rate to calculate frame and/or the macroblock quantization parameter QP that it exports to video encoder 3030.Such as, some embodiments utilize current target bit rate to calculate and quantize adjustment parameter, and these embodiments obtain the quantization parameter QP of macro block and/or frame from the quantification adjustment parameter calculated.In certain embodiments, quantizing adjustment parameter is utilize by the bit rate of former frame, or the fraction representation that calculates divided by current target bit rate of the runtime average of the bit rate of former frame.In other embodiments, described adjustment parameter is not accurate Calculation in this manner, contrary (1) is in general proportional to the runtime average of the bit rate of former frame or the bit rate of former frame, and (2) are inversely proportional to current target bit rate.
After calculating such quantification adjustment parameter, the rate controller of some embodiments utilizes its macro block of calculating of this parameter adjustment and/or frame quantization parameter.A kind of mode of carrying out this adjustment the macro block calculated and/or frame quantization parameter is multiplied by quantize adjustment parameter.The another kind of mode of carrying out this adjustment is according to quantification adjustment calculation of parameter offset quantizing parameter value, subsequently this offset parameter is applied to macro block and/or the frame quantization parameter (such as deducting) of calculating.The rate controller of these embodiments exports to video encoder 3030 the macro block of adjustment and/or frame quantization parameter subsequently.
In other embodiments, rate controller utilizes target bit rate to calculate other parameter used in its rate control operation.Such as, in certain embodiments, rate controller utilizes the visual masking strength of this target bit rate correction macro block or frame.
G. network manager
The networking manager 3100 of Figure 31 some embodiments of graphic extension conceptually, the software architecture of the networking manager 1614 of graphic extension in such as Figure 16.As mentioned above, the manager 3100 that the networks network managed between the remote equipment in the two camera movement equipment and video conference that it runs on connects (such as, connection establishment, connect monitoring, connection adjustment, disconnecting etc.).During video conference, the networking manager 3100 of some embodiments also processes the data sending remote equipment to, and the data that process receives from remote equipment.
As shown in Figure 31, the manager 3100 that networks comprises session negotiation manager 3105, transmitter module 3115, general transmission buffer 3120, general transmission buffer-manager 3122, virtual transportation protocol (VTP) manager 3125, receiver module 3130 and media transfer management device 3135.
Session negotiation manager 3105 comprises protocol manager 3110.Protocol manager 3110 is guaranteed during video conference, and transmitter module 3115 uses correct communication protocol to transmit data to remote equipment, and forces the rule of obeying the communication protocol used.Some embodiments of protocol manager 3110 support various communications protocols, such as real time transport protocol (RTP), transfer control agreement (TCP), User Datagram Protoco (UDP) (UDP) and HTTP (HTTP), etc.
Session negotiation manager 3105 is responsible for setting up the connection between two camera movement equipment and the one or more remote equipments participating in video conference, and interrupts these connections after the conference.In certain embodiments, session negotiation manager 3105 be also responsible for setting up between the remote equipment in two camera movement equipment and video conference (such as, to transmit and receiver, video and/or audio stream) multimedia communication sessions (such as, utilizing Session initiation Protocol (SIP)).
Session negotiation manager 3105 also receives feedback data from media transfer management device 3135, according to feedback data, by general transmission buffer-manager 3122, determine the operation (being such as, transmit or abandon packet/frame) of general transmission buffer 3120.In certain embodiments, this feedback can comprise unidirectional stand-by period and bandwidth estimation bit rate.In other embodiments, feedback comprises packet loss information and round trip delay time (such as, according to the grouping of the remote equipment sent in video conference and determine from the reception of the confirmation of remote equipment).According to the information from media transfer management device 3135, session negotiation manager 3105 can determine whether sending too much grouping, with instruction general transmission buffer-manager 3122, general transmission buffer 3120 is allowed to transmit less grouping (that is, adjustment bit rate as shown in Figure 15).
Transmitter module 3115 from video buffer (such as, the buffer 1612 of Figure 16) fetch coded image (such as, form with bit rate), and to image subpackage by general transmission buffer 3120 and virtual transportation protocol manager 3125, to send the remote equipment in video conference to.Produce coded image and send to the mode of transmitter module 3115 can based on the instruction received from media transfer management device 3115 and/or session negotiation manager 3105 or data coded image.In certain embodiments, one component group is divided into the bit stream that image subpackage relates to receiving, (namely each grouping all has specific size, the size of being specified according to specific protocol by session negotiation manager 3105), with the header (such as, address header, agreement specify header etc.) increasing any needs.
General transmission buffer-manager 3122, according to the data received from session negotiation manager 3105 and/or instruction, controls the operation of general transmission buffer 3120.Such as, data can be transmitted, stop transmitting data, abandoning data etc. by instruction general transmission buffer-manager 3122 order general transmission buffer 3120.As mentioned above, in certain embodiments, when the remote equipment of conference participation is as lost packets, according to the confirmation received from remote equipment, this situation can be identified.In order to reduce packet loss, instruction general transmission buffer-manager 3122 grouping can be transmitted with lower speed to remote equipment.
The data received from transmitter module 3115 preserved by general transmission buffer 3120, and by VTP manager 3125, these data sent to remote equipment.As mentioned above, according to the instruction received from general transmission buffer-manager 3122, the discardable grouping of general transmission buffer 3120 (such as, the image of video).
In certain embodiments, RTP is used to transmit packet (such as, audio packet and video packets) by UDP during video conference.Other embodiment utilizes RTP to transmit packet by TCP during video conference.In various embodiments, also other transport-layer protocols can be used.
Some embodiments, with pair of end slogan (that is, source port number and destination port numbers), define the specific communications passage between two mobile devices.Such as, a communication port between mobile device can use pair of end slogan (such as, source port 50 and destination port one 00) definition, and another the different communication port between mobile device can define different port numbers (such as, source port 75 and destination port one 50) with another.Some embodiments also utilize a pair Internet protocol (IP) address to define communication port.In certain embodiments, different communication ports is used to transmit dissimilar packet.Such as, video data packets, audio data packet and control signal packet can be transmitted in independent communication port.Thus, video communication passage transmits video data packets, and audio communication channel transmits audio data packet.
In certain embodiments, the information receiving during communication port is used for video conference between local mobile device and remote equipment is controlled.The example of this information receiving comprises and sends and receive request, notice and the confirmation to described request and notice.Another example of information receiving comprises the transmission remote control commands message from an equipment to another equipment.Such as, by the control communication port through local device, the instruction of the operation of Long-distance Control remote equipment is sent from local device to remote equipment, remote control operation described below can be performed (such as, commander equipment only sends the image from particular camera, or only utilizes particular camera photographic images).Different embodiments utilizes different agreements, and such as transfer control agreement (RTCP), RTP expansion, SIP etc. realize described control communication in real time.Such as, some embodiments utilize RTP to expand and between two mobile devices, transmit one group of control message in video conferences, and between described two mobile devices, transmit another group control message during using SIP to be grouped in video conference.
The VTP manager 3125 of some embodiments allows by single communication passage (such as, utilize identical pair of end slogan), transmit the dissimilar packet of specifying and being transmitted by different communication ports (such as, utilizing different multipair port numbers).Identification data packet type is related to for a kind of technology of this object, the communication port that will be transmitted by it is prescribed by the port numbers identification data of specifying for a pair grouping of extracting packet, specified data grouping is carried out by by the transmission of described single communication passage (that is, all packets are transmitted by identical pair of end slogan) with the pair of end slogan by the pair of end slogan of packet being modified as described single communication passage.
In order to understand a pair initial port number of often kind of packet, some embodiments preserve the mapping relative to a pair initial port number of data packet type.Some such embodiments utilize the packet type field of agreement to distinguish the different grouping be multiplexed in a communication port subsequently.Such as, some embodiments with VTP manager are multiplexed to audio frequency, video and control packet in a rtp streaming, utilize RTP packet type field to distinguish in a RTP passage, be transmitted to another equipment in video conference audio frequency, video and control packet.In the embodiment that some are such, VTP manager also gives another equipment described the control message route in SIP grouping.
Some embodiment identification checks packet signature (that is, packet header form), to distinguish the different grouping (such as, distinguishing the grouping utilizing RTP to transmit and the grouping utilizing SIP to transmit) utilizing different agreements to transmit.In such embodiments, after the packet determining different agreement, check the field of the packet (such as, utilizing voice data and the video data of RTP) using same protocol as mentioned above, to identify different data types.In this manner, VTP manager 3125, by single communication passage, transmits the predetermined different pieces of information grouping transmitted by different communication ports.
Although be described above a kind of mode by the dissimilar data of single communication combination of channels, but other embodiment utilizes other technology that different packet types is multiplexed in a communication stream.Such as, a kind of technology of some embodiments relates to a pair initial port number noticing packet, and described a pair initial port number is kept in packet itself, to extract after a while.Dissimilar data assemblies between also existing two video conferencing participants to a port to other technology in passage.
When VTP manager 3125 is by virtual communication passage, when receiving packet from remote equipment, VTP manager 3125 checks that the signature of packet is to identify the different grouping utilizing different agreements to send.This signature can be used to distinguish SIP grouping and RTP grouping.The VTP manager of some embodiments also utilizes some or all packet type field of dividing into groups, and DeMux is multiplexed into the various dissimilar grouping (such as, audio frequency, video and control packet) in single virtual passage.After these dissimilar groupings of identification, the port that VTP manager is preserved according to it is checked the number and the mapping of packet type, and the port check mark of each dissimilar grouping with its correspondence is associated.VTP 3125 is subsequently with the pair of end slogan of the pair of end slogan Update Table grouping identified, and forwarding data grouping is to unpack.In other embodiment utilizing different technology different packet types to be multiplexed in single channel, VTP manager uses different technology to resolve grouping.
By utilizing the multiplexed grouping different with DeMux of such technology, VTP manager 3125 creates single virtual communication port (such as, single port number), video data, voice data and control signal data are transmitted by described single virtual communication port, and by described single virtual communication port from remote equipment audio reception, video and control packet.Thus, from the viewpoint of network, data are transmitted by described single virtual communication port, and from the viewpoint of session negotiation manager 3105 and protocol manager 3110, video data, voice data and control signal data are transmitted by different communication ports.
Be similar to the image of the remote equipment sent in video conference, the image transmitted from the remote equipment video conference receives by packet format.Receiver module 3130 receives grouping, and unpacks grouping so that reconstructed image, afterwards Image Saving in video buffer (such as, the buffer 1616 of Figure 16) to decode.In certain embodiments, image is unpacked and relates to any header of removing, and by grouping reconstruct, only there is the bit stream of view data (may have size data).
Media transfer management device 3135 processes from the feedback data of network reception (such as, unidirectional stand-by period, bandwidth estimation bit rate, packet loss data, round trip delay time data, etc.), dynamically and adaptively to adjust the speed (that is, bit rate) of transfer of data.In some other embodiments, media transfer management device 3135 also controls fault-tolerant according to the feedback data after process, also feedback data can be sent to video conference manager 1604, to adjust other operation of video conference module 1602, such as proportional zoom, size adjustment and coding.Except when when the remote equipment in meeting can not process all groupings, make general transmission buffer abandon outside grouping, video conference module and encoder can use comparatively low bit rate to Image Coding, to make will to send less grouping concerning each image.
In certain embodiments, media transfer management device 3135 also can other variable of watch-dog, such as can affect power consumption and the thermal level of the operating power pattern how configuring camera, as mentioned above.These data also can be used as the additional input (such as, if equipment just overheats, so media transfer management device 3135 can manage process is slowed down) added in feedback data.
With reference now to Figure 16, several exemplary operations of networking manager 3100 are described.First the remote equipment image that camera by two camera movement equipment is taken sent in video conference is described, illustrates afterwards from remote equipment and receive image.Transmitter module 3115 is fetched the coded image of the remote equipment be transmitted to video conference from buffer 1612.
The appropriate agreement (such as, transmitting the RTP of Voice & Video) that protocol manager 3110 is determined to use, session negotiation manager 3105 this notice of settlement to transmitter module 3115.Afterwards, transmitter module 3115 pairs of images carry out subpackage, and the image of subpackage is sent to general transmission buffer 3120.General transmission buffer-manager 3122 receives instruction from session negotiation manager 3105, transmits with order general transmission buffer 3120 or abandons image.VTP manager 3125 receives grouping from general transmission buffer 3120, and process grouping, to give remote equipment by single communication passage grouping queries.
When receiving image from remote equipment, VTP manager 3125 is by virtualized single communication passage, the image of subpackage is received from remote equipment, and process grouping is used for receiving the communication port of image (such as to pass through distribution, video communication passage), image is directed to receiver module 3130.
Receiver module 3130 unpacks grouping with reconstructed image, and image is sent to buffer 1616, to be decoded by decoder 1660.Receiver module 3130 is also transmitted to media transfer management device 3130 (such as, from the confirmation that the reception of the remote equipment in video conference is divided into groups) control signal message.
Be described above several exemplary operations of networking manager 3100.These are illustrative example, because other embodiment various will utilize different modules, or when various function differently distributes between the modules, perform these operations or different operations.In addition, module or other module of networking manager 3100 can perform other operation, such as dynamic bit rate adjustment.
IV. adjustment and control operation in meeting
A. picture-in-picture amendment
1. lock onto corner (snap-to-corner)
Some embodiments of the present invention allow the user of two camera movement equipment by the one or more viewing areas forming compound display that move around, and revise the compound display be presented on equipment.Such example is the insertion viewing area of PIP display of moving around.The such example performed during Figure 32 is illustrated in video conference.In video conference, due to a variety of causes, such as insert viewing area when prospect and blocked the area-of-interest of background display area, user may want mobile prospect to insert viewing area.
Figure 32 is with reference to five different phases 3210,3215,3220,3225 and 3230 of UI 3205, and the movement of viewing area 3240 in the UI 3205 of equipment is inserted in graphic extension.First stage 3210 is illustrated in the UI 3205 during the video conference between the local user of this equipment and the long-distance user of remote equipment.UI 3205 in Figure 32 shows with after starting video conference, and the PIP shown in the five-stage of Figure 11 shows identical PIP display.In this example, the video taken by the equipment of local user is displayed on and inserts in viewing area 3240, and the video taken by the equipment of long-distance user is displayed in background display area 3235.As shown in the figure, viewing area 1155 comprises the optional UI project 3245 for terminating video conference.In certain embodiments, the layout of viewing area 1155 is identical with the layout of the viewing area 1155 of Figure 12 described above.
Second stage 3215 graphic extension user by selecting inserts viewing area 3240, starts and locks onto corner operation.In this example, be placed on any place of inserting in viewing area 3240 by finger 3255, realize selecting.As shown in the figure, with the thick frame 3260 inserting viewing area 3240, this selection is shown.Different embodiments can point out such selection by different modes, as by highlighting district 3240, swings etc. by making viewing area 3240.
Phase III 3220 is illustrated in user and starts the insertion viewing area 3240 of PIP display 3250 from the UI 3205 after a region PIP display 3250 moves to another region that this PIP shows in 3250.In this example, the lower right corner that viewing area 3240 has started to move to from the lower left corner of PIP display 3250 PIP display 3250 is inserted, as shown in arrow 3265.In this example, select insertion display in second stage 3215 after, user points 3255 by dragging it towards the lower right corner of PIP display 3250, mobile insertion viewing area 3240.Some embodiments are provided in PIP display 3250 to move around inserts other technology of viewing area 3240.
Fourth stage 3225 be illustrated in user from the screen of equipment 3200 remove its finger 3255 after state under UI 3205.In this state, the lower right corner of inserting the PIP display 3250 that viewing area 3240 is still identified towards pointing movement according to the user in the phase III 3220 is moved.In other words, start to move towards the lower right corner of PIP display 3250 to insert after viewing area 3240, even if remove finger 3255, UI 3205 still keep this movement at finger 3255.In order to keep described movement, before user removes its finger 3255, the UI 3205 of some embodiments requires that the drag operation of user is greater than specific threshold quantity (such as, be greater than specific distance, or be longer than the specific time); Otherwise these embodiments can, after mobile a little insertion viewing area 3240, make insertion viewing area 3240 remain on its initial position, the lower left corner, or mobile insertion viewing area 3240.
But, even if although user is before insertion viewing area arrives its reposition, stopped his drag operation, some embodiments still allow to insert viewing area and continue mobile, but other embodiment requires that user keeps drag operation, until insert viewing area to arrive its reposition.Some embodiments provide mobile other technology inserting viewing area.Such as, some embodiments require user insertion viewing area 3240 actual start mobile before, appointment will be directed to where insertion viewing area 3240, etc.Some embodiments also by only with different angles inclination movement equipment, make viewing area can slide and lock onto corner.
Five-stage 3230 be illustrated in insert viewing area 3240 arrive its be positioned at PIP display 3250 the lower right corner reposition after UI 3205.In five-stage 3230, the elimination instruction of thick frame 3260 locks onto corner operation and completes.
In order to make the movement of graphic extension in the above-mentioned 3rd, the 4th and five-stage 3220,3225 and 3230 easier, the UI 3205 of some embodiments adopts once user makes insertion viewing area move towards certain corner of PIP display 3250, just allows to insert the locking discipline (snapping rule) of viewing area quick lock in this corner.Such as, when user exceedes threshold quantity towards particular corner dragging insertion viewing area 3240, the UI 3205 of some embodiments identifies the direction of motion inserting viewing area 3240, determine that described motion exceedes threshold quantity, thus automatically mobilely subsequently insert viewing area 3240, and the next grid point inserted in UI 3205 that viewing area 3240 can be locked into is inputted further without user.In certain embodiments, the unique mesh point provided for locking insertion viewing area 3240 is the grid point in four corners being positioned at PIP display 3250.Other embodiment provides to be inserted in the UI 3205 that can be locked into of viewing area 3240 (such as, in PIP display 3250) other grid point (that is, inserting other grid point that the side of viewing area 3240 or summit can be set to thereon or align with it).
Other embodiment can not adopt grid point, make insert viewing area can be placed in PIP display 3250 in arbitrfary point.Embodiment other again provide allow user to open or close UI lock onto grid point feature.In addition, except the video taken from equipment, different embodiments can allow user to various project, and such as icon etc. perform and lock onto corner operation.
Two other example 3330 and 3335 locking onto corner operation in Figure 33 graphic extension UI 3205.What these were other locks onto corner operation display according to the vertical of user or diagonal angle drag operation, by insertion viewing area 3240 that is vertical or diagonal angle movement in PIP display 3250.
Even if Figure 32 and 33 illustrates insert the movement of viewing area in PIP display, but those of ordinary skill will appreciate that other embodiment can utilize similar technology mobile display district in the PIP display of other type or the compound display of other type.Such as, as further described below, the PIP display of some embodiments has the prospect insertion display of two or more, by utilizing and technology like the technology type illustrated above with reference to Figure 32 and 33, can move these and inserting display in PIP display.In addition, some embodiments utilize similar technology to move around in compound display viewing area (such as, drag movement by user, a viewing area is moved to the right side of screen from the left side of screen).In addition, the movement of one or more viewing areas of compound display can cause the change of the image processing operations of two camera movement equipment, such as responds the input of user, makes video conference manager 1604 again synthesize viewing area in compound display.As further described below, some embodiments adopt when the second viewing area is moved to primary importance from the 3rd position, the locking that the first viewing area is pushed open from primary importance and push technology.
2. rotate
When the user of the mobile device for video conference rotates described mobile device in the session, the PIP display presented during some embodiments are rotated in video conference.Figure 34 graphic extension when making equipment 3400 rotate to horizontal level from upright position, the rotation of the UI1105 of equipment 3400.When the long limit of screen is vertical, equipment 3400 is held by perpendicular, and when the long limit shielded is level, equipment 3400 is held by horizontal.In the example of graphic extension in Figure 34, the longitudinal view that UI 1105 optimizes from perpendicular the holding for equipment rotates horizontal the holding becoming equipment 3400 and the transverse views optimized.This spinfunction make when mobile device 3400 by perpendicular hold or horizontal hold time, user can watch with the UI 1105 of stand up position display.
Figure 34 according to six different operational phases 3410,3415,3420,3425,3430 and 3435, the rotation of graphic extension UI 1105.First stage 3410 is illustrated in the UI1105 during the video conference between the local user of this equipment and the long-distance user of remote equipment.UI 1105 in Figure 34 shows with after setting up video conference, and the PIP shown in the five-stage of Figure 11 shows identical PIP display 1180.In this example, the video of the equipment shooting of local user is presented at and inserts in viewing area 1160, and the video of the equipment shooting of long-distance user is presented in background display area 1170.Viewing area 1155 under PIP display 1180 comprises user and can select to terminate video conference (such as, by singly referring to dub) optional UI project 3485 (such as, " closing session (End Conference) " button 3485).
Second stage 3415 is illustrated in the UI 1105 that user starts after banking equipment 3400.In this example, user starts equipment 3400 to be held by horizontal, as shown in arrow 3460 from erecting to hold to tilt to.The outward appearance of UI 1105 does not change.In other cases, user may change into want equipment 3400 from horizontal hold to tilt to held by perpendicular, in these cases, UI1105 switches to the vertical view optimized from the view of level optimization.
Phase III 3420 is illustrated in equipment 3400 from by the perpendicular UI 1105 held the state after tilting to by horizontal holding.In this state, the outward appearance of UI 1105 does not still change.In certain embodiments, be tilted beyond threshold quantity making equipment 3400 and after remaining above threshold quantity a period of time, trigger rotary manipulation.In the example of graphic extension in Figure 34, assuming that threshold quantity and rotary speed can not cause UI 1105 to rotate, until equipment be placed on horizontal level after short period interval.Different embodiments has different threshold quantity for triggering rotary manipulation and stand-by period.Such as, some embodiments can have the threshold value of so low triggering rotary manipulation, make the orientation of not tube apparatus 3400, all make UI 1105 seem as it is always shown with stand up position.In other embodiments, the user of equipment 3400 can specify when to trigger rotary manipulation (such as, being arranged by menu prioritizing selection).In addition, some embodiments after equipment is tilted beyond threshold quantity, can not postpone described rotation.In addition, different embodiments can allow to trigger rotary manipulation by different modes, as by the switch switched on mobile device, by sending voice commands, according to the selection undertaken by menu, etc.
Fourth stage 3425 is illustrated in the UI 1105 started after rotary manipulation.Some embodiment flash demo rotational display districts, to provide the feedback about rotary manipulation to user.The example of a kind of animation that Figure 34 graphic extension is such.Specifically, Figure 34 its fourth stage 3425 show viewing area 1180 start together with 1155 rotate.Viewing area 1180 and 1155 rotates around the axle 3465 (that is, z-axis) at the center through UI 1105.Viewing area 1180 is rotated identical quantity with 1155, but rotates along the direction contrary with the rotation (such as, by the inclination of equipment 3400) of equipment 3400.In this example, because equipment 3400 has been rotated in a clockwise direction 90 ° (by becoming horizontal hold from perpendicular holding), therefore rotary manipulation can make viewing area 1180 and 1155 half-twist in the counterclockwise direction.When viewing area 1180 and 1155 rotates, viewing area 1180 and 1155 reduces pari passu, with applicable UI 1105, viewing area 1180 and 1155 still can be appeared on UI 1105 completely.Some embodiments can provide the message (such as, by display words " Rotating (rotation) ") of the state of indicating equipment 3400.
Five-stage 3430 is illustrated in viewing area 1180 and 1155 and is rotated counterclockwise UI 1105 after 90 ° from longitudinal view to transverse views.In this stage, viewing area 1180 and 1155 is rotated, but is not also deployed into the whole width of UI 1105.Arrow 3475 points out the ending at five-stage, and viewing area 1180 and 1155 will start side direction and launch, with the whole width of applicable UI 1105.Different embodiments can not comprise this stage, because side by side can carry out described expansion with the rotation in fourth stage 3425.
6th stage 3435 was illustrated in viewing area 1180 and 1155 and is unfolded, thus occupied the UI 1105 after the whole display of UI 1105.As mentioned above, other embodiment can differently realize this rotation.Concerning some embodiments, only the screen rotation of equipment is exceeded threshold quantity and just can trigger described rotary manipulation, and the orientation of not tube apparatus 3400.
In addition, other embodiment can be provided for the different animations indicating rotary manipulation.The rotary manipulation performed in Figure 34 relates to the central rotation of viewing area 1180 and 1155 around UI 1105.On the other hand, viewing area can be made to rotate separately around the central shaft of their viewing areas separately.A kind of such method has been shown in Figure 35.Figure 35 represents the alternative approach of the rotation of the viewing area 1170 and 1160 of the PIP display 1180 of flash demo UI 1105.The PIP display 1180 of graphic extension in Figure 35 and the PIP of graphic extension in Figure 11 show 1180 identical.
Figure 35 shows the rotation of 1180 according to six different operational phases 3410,3415,3420,3525,3530 and 3535, graphic extension PIP.The operation of the front three phases of UI 1105 with illustrate in the UI 1105 such as in Figure 34 before the operation of three phases identical.In the phase III of Figure 34 and 35, equipment 3500 all becomes horizontal hold from perpendicular holding, and the rotation of UI 1105 does not also start.
The alternative approach rotated described in fourth stage 3525 graphic extension flash demo.In fourth stage, rotary manipulation starts.Specifically, fourth stage 3525 shows the beginning of the rotation of viewing area 1170 and 1160.Viewing area 1170 and 1160 rotates around the axle 3567 and 3565 (that is, z-axis) at the center through each viewing area respectively.Viewing area 1170 is rotated identical amount with 1160, but rotates along the direction contrary with the rotation (such as, by the inclination of equipment 3500) of equipment 3500.With graphic extension similar in the fourth stage 3425 of Figure 34 above, because equipment 3500 has been rotated in a clockwise direction 90 ° (by becoming horizontal hold from perpendicular holding), therefore rotary manipulation can make viewing area 1170 and 1160 half-twist in the counterclockwise direction.When viewing area 1170 and 1160 rotates, viewing area 1170 and 1160 is scaled with applicable UI 1105, and viewing area 1170 and 1160 still can be appeared on UI 1105 completely.
Five-stage 3530 is illustrated in viewing area 1170 and 1160 and is all rotated counterclockwise UI 1105 after 90 ° from longitudinal view to transverse views.In this stage, viewing area 1170 and 1160 is rotated, but is not also deployed into the whole width of UI 1105.In addition, viewing area 1160 is not also moved to its final position.Insert the final position of viewing area 1160 in PIP display 1180 to be determined (such as, inserting viewing area 1160 to show 1180 lower left corner at PIP) by the position as shown in 1180 at PIP in the insertion viewing area 1160 as shown in the first stage 3410.In this stage, insert viewing area 1160 still in the upper left corner of UI 1105.
Arrow 3580 points out the ending at five-stage 3530, and viewing area 1170 and 1160 will start side direction and launch, until main viewing area 1170 is applicable to the whole width of the UI 1105 of the horizontal equipment held.In addition, arrow 3575 points out that inserting viewing area 1160 will slide into the lower left corner of PIP display 1180.
Different embodiments differently can realize this point.In certain embodiments, the movement of inserting viewing area 1160 can occur with the expansion of main viewing area 1170 simultaneously, or can occur in sequence.In addition, some embodiments can insert viewing area 1160 by convergent-divergent before main viewing area 1170 is launched, in expansion or after launching, to produce new PIP display 1180.In this example, when rotating in viewing area 1160 and 1170, viewing area 1155 disappears.But, in certain embodiments, viewing area 1155 can during rotation be retained on UI 1105, and rotates together with 1170 with viewing area 1160.
6th stage 3535 was illustrated in insertion viewing area 1160 and arrives its reposition, and viewing area 1160 and 1170 is appropriately launched, with the UI 1105 after the whole width of applicable UI 1105.In this example, insert the lower left corner that viewing area 1160 is positioned at PIP display 1180 now, overlap on main viewing area 1170.PIP show 1180 existing have to show 1180 identical display arrangements with the PIP of first stage 3410.The viewing area 1155 occurred under PIP display 1180 in 6th stage indicates rotary manipulation to complete.As mentioned above, only the screen rotation of equipment is exceeded threshold quantity and just can trigger described rotary manipulation, and the orientation of not tube apparatus 3500.
In the example illustrated above with reference to Figure 34 and 35, the orientation of viewing area 1170 also changes (that is, from longitudinally becoming laterally).That is, in the phase III 3420, after rotational display district 1170, show 1180 by horizontal development PIP, make it be applicable to whole UI 1105, the orientation of viewing area 1170 is from longitudinally becoming laterally.In certain embodiments, when equipment 3500 is by rotation, the video taken by remote equipment rotates, but the orientation showing the viewing area of the video taken by remote equipment remains unchanged.Such example is illustrated in Figure 36.Figure 36 is similar to Figure 35, and except the video be presented in viewing area 1170 rotates, but viewing area 1170 keeps showing along the longitudinal direction.
The example that wherein viewing area 1155 remains on the rotary manipulation of same position (instead of rotating like that as shown in Figure 35 and horizontal development, to fill up PIP display 1180) is also illustrated in Figure 36.In addition, Figure 36 comprises the layout of the viewing area 1155 identical with the layout of the viewing area 1155 illustrated in fig. 12 above.As shown in the figure, in the stage 3640,3645,3650,3655,3685 and 3690, when equipment 3500 rotates, viewing area 1155 is retained in same position.
Some embodiments provide a kind of rotary manipulation, wherein show the directed change (instead of keeping identical orientation like that as shown in Figure 35) of the viewing area of the video taken by local device, be reflected in rotary manipulation is carried out to local device after the orientation of local device.The example of this rotary manipulation in the stage 3640,3645,3650,3655,3685 and 3690, graphic extension UI1105 that Figure 36 reference six is different.In Figure 36, the first stage 3640 shows along the longitudinal direction inserts viewing area 1160, inserts viewing area 1160 and shows the video taken by the camera of equipment 3500.Second is identical with 3420 with the phase III 3415 with second of Figure 35 with 3650 with the phase III 3645, because their indication equipments 3500 are in the inclination in each stage of rotary manipulation.Now, the camera of equipment 3500 is at transversely direction photographic images.In order to point out this transformation, some embodiments provide as the animation as shown in the 4th and five-stage 3655 and 3685, and other embodiment does not provide any animation.
In fourth stage 3655, be presented at the image inserted in viewing area 1160 and rotated, but insert viewing area 1160 itself and do not rotated because second and the phase III 3445 and 3650 in the inclination of equipment 3500 insertion viewing area 1160 is rotated to horizontal direction.In five-stage 3685, the image rotating inserted in viewing area 1160 is inserted viewing area 1160 by horizontal development to fill, insert viewing area 1160 to start to move towards the lower left side region of PIP display 1180, to be placed in inserting viewing area 1160 and to insert the PIP display identical relative position of viewing area 1160 in the first stage 3640.
In certain embodiments, the orientation showing the viewing area of the video taken by remote equipment also changes, be reflected in rotary manipulation is carried out to remote equipment after the orientation of remote equipment.Four different phases of the UI 1105 of Figure 37 graphic extension equipment 3500, wherein (1) shows the change in orientation of the viewing area (viewing area 1160 in this example) of the video taken by local device, with be reflected in rotary manipulation is carried out to local device after the orientation of local device, (2) show the change in orientation of the viewing area (viewing area 1170 in this example) of video taken by remote equipment, be reflected in rotary manipulation is carried out to remote equipment after the orientation of local device.
Identical with the UI 1105 in Figure 36 in the first stage 3705, UI 1105.Specifically, the first stage 3705 shows the viewing area 1160 and 1170 of portrait orientation, because equipment 3500 is by portrait orientation display, and remote equipment is the (not shown) of portrait orientation.From the first stage 3705 to second stage 3710, by equipment 3500 from stand up position to lateral attitude half-twist, rotary manipulation is carried out to local device.Second stage 3710 is presented at the UI 1105 after the rotary manipulation of finishing equipment 3500.In second stage, the video be presented in viewing area 1170 and 1160 rotates to stand up position.But, the viewing area 1160 of local capture video is only had to rotate to transversal orientation from portrait orientation, because only carried out rotary manipulation to local device (that is, equipment 3500).Viewing area 1170 keeps portrait orientation.
From second stage 3710 to the phase III 3715, by remote equipment is rotated to lateral attitude (not shown) from stand up position, rotary manipulation is carried out to remote equipment.Phase III 3715 has been presented at the UI 1105 after the rotary manipulation of remote equipment.In the phase III, the viewing area 1170 being presented at video in viewing area 1170 and long-range capture video rotates to transversal orientation from portrait orientation, because only carried out rotary manipulation to remote equipment.Thus the phase III of UI 1105 all shows the viewing area 1170 and 1160 of local and remote capture video by transversal orientation.
From the phase III 3715 to fourth stage 3720, by equipment 3500 from lateral attitude to stand up position half-twist, rotary manipulation is carried out to local device.Fourth stage 3720 has been presented at the UI 1105 after this rotary manipulation.In fourth stage 3720, the video be presented in viewing area 1160 and 1170 rotates to stand up position.But, the viewing area 1160 of local capture video is only had to rotate to portrait orientation from transversal orientation, because only carried out rotary manipulation to local device (that is, equipment 3500).Viewing area 1170 keeps transversal orientation.
From fourth stage 3720 to the first stage 3705, by remote equipment from lateral attitude to stand up position half-twist (not shown), rotary manipulation is carried out to remote equipment.In this case, the first stage 3705 has been presented at the viewing area 1170 after this rotary manipulation.So the UI 1105 in this stage shows the viewing area 1160 and 1170 of portrait orientation.Although Figure 37 illustrates the operation of a series of different rotary, but other embodiment according to any many different sequences, can carry out any many rotary manipulations.
Figure 34,35,36 and 37 illustrates during video conference the rotary manipulation that local and remote device carries out.When carrying out rotary manipulation to local mobile device, some embodiments inform remote equipment rotary manipulation, to allow remote equipment can carry out any amendment (such as the viewing area of the video of rotational display local device) to the video of local device.Similarly, when carrying out rotary manipulation to remote equipment, remote equipment to local device, makes local device can carry out any amendment to the video of remote equipment this operational notification.During some embodiments are provided in video conference, between local device and remote equipment, transmit the control communication port of the notice of rotary manipulation.
Although Figure 34,35,36 and 37 graphic extensions can realize the different modes of animation that rotates, but those of ordinary skill will appreciate that other embodiment can show the animation of rotation by different modes.In addition, the animation of rotary manipulation can cause the change of the image processing operations of local mobile device, such as makes video conference manager 1604 with different angle again compound display district in UI 1105, and proportional zoom display image in the display area.
3. window size adjustment
The user of some embodiments permission mobile device adjusts the size of the insertion viewing area of the PIP display presented during video conference.Different embodiments provides convergent-divergent to insert the different technologies of viewing area.Figure 38 graphic extension convergent-divergent inserts a kind of method of viewing area.In the method, the user by selecting of mobile device inserts a corner of viewing area, expands subsequently or reduces and insert viewing area, adjust the size inserting viewing area.
In Figure 38, the UI 3800 of mobile device 3825, during the video conference of the long-distance user with another mobile device, presents PIP display 3865.PIP display 3865 comprises two video displays: the main viewing area 3830 of background and prospect insert viewing area 3835.The main viewing area of background 3830 occupies most PIP and shows 3865, and prospect to insert viewing area 3835 less and overlap on the main viewing area 3830 of background.In this example, the main viewing area 3830 of background presents the video of the personage holding guitar, and this personage is assumed that the personage of its video taken by the front camera by remote equipment, or takes the personage of its video by the back side camera of remote equipment.Prospect inserts the video that viewing area 3835 presents the personage worn a hat, and in this example, this personage is assumed that the personage of its video taken by the front camera by local device, or takes the personage of its video by the back side camera of local device.PIP display 3865 below be comprise be marked as " End Conference (closing session) " optional UI project 3860 (such as, button 3860) viewing area 1155, optional UI project 3860 allows this project of user by selecting to terminate video conference.
PIP display 3865 just presents a kind of mode of the synthesis view of the video taken by remote equipment and local device.Some embodiments can provide other synthesis view.Such as, replace the comparatively overall background had for the video from remote equipment to show, larger background display can be the video from local device, and less prospect insertion display can be the video from remote equipment.In addition, some embodiments allow local video and long-distance video to appear in UI3800 two viewing area (such as, left and right display window, or display window up and down) side by side, or in the viewing area of two diagonal angle arrangements.In certain embodiments, PIP display mode or acquiescence display mode can be specified by user.In other embodiments, PIP display also can comprise a larger background display, and the prospect insertion display that two less.
Figure 38 according to four operational phases of UI 3800, graphic extension zoom operations.In the first stage 3805, prospect is inserted viewing area 3835 and is significantly less than the main viewing area 3830 of background.In addition in this example, prospect inserts the lower right corner that viewing area 3835 is positioned at PIP display 3865.In other example, prospect inserts viewing area 3835 can have different sizes, or is arranged in the zones of different of PIP display 3865.
In second stage 3810, initiate zoom operations.In this example, by selecting user to want a corner of the insertion viewing area 3835 of convergent-divergent (such as, being placed on the upper left corner of inserting viewing area 3835 by finger 3840), this operation is initiated.The second stage 3810 of UI 3800 points out this selection with the thick frame 3845 inserting viewing area 3835.In this stage, user can expand or reduce insertion viewing area 3835 (such as, by dragging its finger 3840 away from insertion viewing area 3835 or towards insertion viewing area 3835 in PIP display 3865).
Phase III 3815 is illustrated in as shown in arrow 3850, by moving its finger 3840 (namely in this example away from insertion viewing area 3835, by moving his finger towards the diagonal angle, the upper left corner of UI 3800), user starts to expand the UI 3800 inserted after viewing area 3835.In addition as shown in arrow 3855, the movement of finger 3840 expands pari passu at height and Width inserts viewing area 3835.In other example, user can utilize identical technology (that is, by dragging finger towards insertion viewing area 3835), reduces and inserts viewing area 3835.
Fourth stage 3820 is presented at the UI 3800 completed after the convergent-divergent inserting viewing area 3835.In this example, once insert viewing area 3835 reached desirable size, so user is just by stopping the dragging of its finger 3840, and removes his finger from PIP display 3865, completes the convergent-divergent inserting viewing area 3835.As the result of this process, the insertion viewing area 3835 after convergent-divergent is greater than its initial size in the first stage 3805.The elimination instruction of thick frame 3845 have now been completed inserts viewing area zoom operations.
Some embodiments provide and allow user during video conference, and in PIP display 3865, convergent-divergent inserts other technology of viewing area 3835.A kind of other technology like this of Figure 39 graphic extension.Figure 39 graphic extension is a kind of by selecting the edge (that is, at one of side inserting viewing area 3835) inserting viewing area 3835, expands subsequently or reduces and insert viewing area 3835, carry out the technology that convergent-divergent inserts viewing area 3835.
Figure 39 according to four operational phases of the UI 3800 of Figure 38, this zoom operations of graphic extension.The first stage 3805 of Figure 39 is identical with the first stage 3805 in Figure 38.Specifically, in this stage, the less prospect in the lower right corner that UI 3800 graphic extension of equipment 3925 has the main viewing area of larger background 3830 and is positioned at PIP display 3865 inserts the PIP display 3865 of viewing area 3835.Although Figure 38 and 39 is illustrated in convergent-divergent in identical UI 3800 and inserts two kinds of different technologies of viewing area 3835, but those of ordinary skill will appreciate that some embodiments will not provide this two kinds of technology in identical UI.
The beginning of second stage 3910 graphic extension zoom operations.In this example, this user of user by selecting wants a side (such as, finger 3840 is placed on and inserts on the top margin of viewing area 3835 or side) of the insertion viewing area 3835 of convergent-divergent, initiates zoom operations.In this example, user is placed on his finger 3840 on the top margin of insertion viewing area 3835, to realize described selection.The second stage 3910 thick frame 3845 inserting viewing area 3835 indicates this selection.
Phase III 3915 is illustrated in as shown in arrow 3950, and user moves apart insertion viewing area 3835 (that is, vertically moving towards the top of PIP display 3865) by making it point 3840, starts to expand the UI 3800 inserted after viewing area 3835.In addition, as shown in arrow 3955, the movement of finger 3840 expands all in proportion at height and Width inserts viewing area 3835.In other example, user, by utilizing identical technology (that is, by dragging finger 3840 towards insertion viewing area 3835), reduces viewing area 3835.
Fourth stage 3920 has been presented at the UI3800 after the convergent-divergent inserting viewing area 3835.In this example, once insert after viewing area 3835 reaches desirable size, so user is just by stopping the dragging of its finger 3840, and removes his finger 3840 from the display screen of equipment, inserts the convergent-divergent of viewing area 3835.As the result of this process, the insertion viewing area 3835 after convergent-divergent is greater than its initial size in the first stage 3805.The elimination instruction of thick frame 3845 have now been completed inserts viewing area zoom operations.
Response drag operation, some embodiments are at height and Width, and adjustment pari passu inserts the size of viewing area 3835, as shown in Figure 38 and 39.Other embodiment can allow user to adjust height and/or the width of insertion viewing area 3835, and does not affect another attribute.The example of a kind of such convergent-divergent process of Figure 40 graphic extension.
Specifically, the UI 3800 similar with the UI 3800 of Figure 38 of Figure 40 graphic extension mobile device 4025, except when when selecting the level in the lump at the edge inserting viewing area 3835 or this edge vertical mobile, the UI 3800 of Figure 40 allows to insert viewing area 3835 in the horizontal direction and/or outside vertical direction expansion.Showing 3865 similar PIP with the PIP of Figure 38 and show 3865, except inserting now viewing area 3835 except the upper right corner of PIP display 3865 in Figure 40 graphic extension UI 3800.PIP display 3865 comprises two video displays: the main viewing area 3830 of background and prospect insert viewing area 3835.In this example, the main viewing area 3830 of background presents the video taken by the front camera of remote equipment or back side camera.Prospect is inserted viewing area 3835 and is presented the video taken by the front camera of local device or background camera.
Be similar to Figure 38, Figure 40 according to four operational phases of UI 3800, graphic extension zoom operations.First stage 4005 is similar with the first stage 3805 of Figure 38, except inserting now viewing area 3835 except the upper right corner.Other three phases 4010,4015 and 4020 is similar to three phases 3910,3915 and 3920, except inserting the selection on the base of viewing area 3835 and mobile only cause inserting viewing area 3835 and vertically expand, and do not affect insert viewing area 3835 width outside.
Figure 38,39 and 40 provides a corner or side by selecting to insert viewing area 3835, allows the example embodiment of the insertion viewing area 3835 of user's convergent-divergent PIP display 3865.Some embodiments provide convergent-divergent to insert other technology of window 3835.Such as, some embodiments of Figure 41 graphic extension allow the inside by selecting to insert viewing area 3835, and convergent-divergent inserts viewing area 3835.In this approach, user by two fingers 4155 and 4156 are placed on screen, and drags described two fingers away from each other or closely, and the size of viewing area 3835 is inserted in adjustment.
In Figure 41, the UI 3800 of mobile device 4140, during the video conference of the long-distance user with another mobile device, provides PIP to show 3865.In order to simplify the explanation of UI 3800, showing 3865 similar PIP in Figure 41 graphic extension UI 3800 with the PIP of Figure 38 and showing 3865.
Figure 41 according to seven operational phases of UI 3800, this zoom operations of graphic extension.Front four-stage 3805,4110,4115 and 4120 represents the expansion of inserting viewing area 3835, and then three phases represents reducing of insertion viewing area 3835.First stage 3805 in Figure 41 is identical with the first stage 3805 in Figure 38.Specifically, in this stage, UI 3800 graphic extension has the PIP display 3865 of the main viewing area of larger background 3830 and less prospect insertion viewing area 3835.In this example, the main viewing area 3830 of background presents the video taken by the front camera of remote equipment or back side camera.Prospect is inserted viewing area 3835 and is presented the video taken by the front camera of local device or back side camera.
Second stage 4110 is illustrated in the UI 3800 initiated after zoom operations.In this example, this user of user by selecting wants the insertion viewing area 3835 (such as, inserting in viewing area 3835 by two fingers 4155 and 4156 are placed on) of convergent-divergent, initiates zoom operations.The second stage 4110 of UI 3800 points out this selection with the thick frame 4190 inserting viewing area 3835.
Phase III 4115 is illustrated in as shown in arrow 4160, (namely user by mutually remotely moving its finger 4155 and 4156, towards the upper left corner moveable finger 4155 of PIP display 3865, lower right corner moveable finger 4156 towards PIP display 3865), start to expand the UI 3800 inserted after viewing area 3835.As shown in arrow 4165, the movement of finger 4155 and 4156 expands pari passu at height and Width inserts viewing area 3835.
Fourth stage 4120 has been presented at the UI3800 after the convergent-divergent inserting viewing area 3835.In this example, user by stopping the dragging of its finger 4155 and 4156, and removes its finger 4155 and 4156 from the display screen of equipment, inserts the convergent-divergent of viewing area 3835.As the result of this process, the insertion viewing area 3835 after convergent-divergent is greater than its initial size in the first stage 3805.The elimination instruction of thick frame 4190 has completed now inserts viewing area zoom operations.
At five-stage 4125, insert on viewing area 3835 by two fingers 4155 and 4156 are placed on, user reselects and inserts viewing area 3835.6th stage 4130 was illustrated in as shown in arrow 4170, and user, by closely moving its finger 4155 and 4156, starts to reduce the UI 3800 inserted after viewing area 3835.As shown in arrow 4175, the movement of finger 4155 and 4156 reduces pari passu at height and Width inserts viewing area 3835.
7th stage 4135 was similar to the fourth stage 4120 of Figure 41, except by described operation, outside the size inserting viewing area 3835 has reduced.The elimination instruction of thick frame 4190 has completed now inserts viewing area zoom operations.
The above-mentioned explanation of Figure 38-41 illustrates several example user interface of the insertion viewing area allowing user's convergent-divergent PIP display.In certain embodiments, the convergent-divergent inserting viewing area can cause the change of the image processing operations of two camera movement equipment, such as makes video conference manager 1604 respond the input of user, changes proportional zoom and the synthesis of the insertion viewing area in PIP display.In addition, in certain embodiments, the layout of the viewing area 1155 in Figure 38-41 is identical with the layout of the viewing area 1155 of Figure 12 described above.
4. identify area-of-interest
Some embodiments allow user during video conference, identify the area-of-interest (ROI) in the video of display, to revise image procossing (such as, image processing manager 1608 in Figure 16), coding (such as, encoder 1655 in Figure 16), the behavior during video conference of mobile device and camera thereof, or their combination.Different embodiments provides different technology to identify this area-of-interest in video.Figure 42 graphic extension for identifying the area-of-interest of video, to improve the user interface of some embodiments of the picture quality of video.
In Figure 42, the UI 4200 of mobile device 4225, during the video conference of the long-distance user with another mobile device, presents PIP display 4265.PIP display in Figure 42 shows similar with the PIP in Figure 41 substantially.Specifically, the PIP display in Figure 42 comprises two video displays: the main display 4230 of background and prospect insert display 4235.In this example, the main display 4230 of background presents the video of the personage setting and wear a hat, described tree and personage are assumed that the front camera by remote equipment takes tree and the personage of its video, or take tree and the personage of its video by the back side camera of remote equipment.Prospect inserts the video that display 4235 presents man, and in this example, described man is assumed that the man of its video taken by the front camera by local device, or takes the personage of its video by the back side camera of local device.PIP display below be comprise be marked as " End Conference (closing session) " optional UI project 4260 (such as, button 4260) viewing area 1155, optional UI project 4260 allows this project of user by selecting to terminate video conference.
This PIP display just presents a kind of mode of the synthesis view of the video taken by remote equipment and local device.Some embodiments can provide other synthesis view.Such as, replace the comparatively overall background had for the video from remote equipment to show, larger background display can be the video from local device, and less prospect insertion display can be the video from remote equipment.In addition, some embodiments allow local video and long-distance video to appear in UI two viewing area (such as, left and right display window, or display window up and down) side by side, or in the viewing area of two diagonal angle arrangements.In other embodiments, PIP display also can comprise a larger background display, and the prospect insertion display that two less.In certain embodiments, PIP display mode or acquiescence display mode can be specified by user.
Figure 42 is according to four operational phases of UI 4200, and graphic extension ROI identifies operation.As shown in the first stage 4205, the video be presented in background display 4230 has very low quality (that is, video image is fuzzy).In this example, the user of mobile device 4225 is intended to occur that the region recognition of the face 4270 of personage is area-of-interest in background display 4230.
In second stage 4210, initiate the operation identifying area-of-interest.In this example, be presented on the video in background display 4230 by selection among, user wants to be identified as the region of area-of-interest (such as, by on the screen of the device, position near the character facial 4270 of the display in background display 4230 dubs finger 4250), initiate this operation.
As shown in the phase III 4215, the regional choice of user make UI 4200 draw the region selected around user around frame 4275 (such as, dashed rectangle 4275).Fourth stage 4220 is presented at the UI 4200 after the mark terminating area-of-interest.As the result of this process, compared with the first stage 4205, the quality of the video in area-of-interest significantly improves.Elimination instruction around frame 4275 has completed now ROI and has selected operation.In certain embodiments, ROI identification process is also to the change that display same video on a remote device causes the change that causes local device 4225 with it identical.Such as, in this example, the image quality shown in the area-of-interest of same video on a remote device also significantly improves.
In certain embodiments, user can zoom in or out around frame 4275 (such as in the phase III 4215, be placed in display frame by finger 4250, and towards the upper right corner moveable finger 4250 of screen, with amplifying ring around frame 4275, or towards the lower left corner moveable finger 4250 of screen, to reduce around frame 4275).Some embodiments also allow user at phase III 4215 rotating ring around frame 4275 (such as, be placed in display frame by finger 4250, and in display frame level or vertical moveable finger 4250).In some other embodiments, the selection in described region can not make UI 4200 draw around frame 4275 in the phase III 4215.
Other embodiment provides the different technologies allowing user to identify the area-of-interest in video.A kind of other technology like this of Figure 43 graphic extension.In Figure 43, user, by drawing the shape of Sensurround region-of-interest, identifies area-of-interest.In this example, described shape is rectangle, but also can be other shape (such as, other polygon any, circle, ellipse etc.).Some embodiments, in the equipment UI of that technology being also provided in graphic extension in Figure 42, provide the alternative technique of Figure 43.But, other embodiment does not provide these two kinds of technology in identical UI.
Figure 43 is according to five operational phases of UI 4200, and this ROI mark of graphic extension operates.First stage 4205 in Figure 43 is identical with the first stage 4205 in Figure 42.Specifically, in the first stage 4205, UI 4200 graphic extension has the main display 4230 of larger background, and the less prospect in the lower left corner being positioned at PIP display 4265 inserts the PIP display 4265 of display 4235.
In second stage 4310, initiate the operation identifying area-of-interest.In this example, definition is selected to be presented on the primary importance of the area-of-interest in the video presented in the main display 4230 of background (such as by continuing for some time, by on the screen of the device, continue for some time finger 4350 be placed on background display 4230 in shown character facial 4270 near position on), initiate described operation.Utilize the round dot 4355 of the selected primary importance of closing on background display area 4230 in the phase III 4315, UI 4200, instruction have selected described primary importance 4370.
Fourth stage 4320 be illustrated in user have selected definition area-of-interest the second place 4375 after UI 4200.In this example, by such as shown in arrow 4360, after round dot 4355 occurs, from primary importance, in the screen of equipment, drag finger 4350, and the position stopped between the cap of the display in background display area 430 and the tree of display, user selects the second place 4375.As shown in fourth stage, this dragging causes UI4200 to draw the rectangular shaped rim 4365 of area-of-interest, and described rectangular shaped rim 4365 has the first and second positions 4370 and 4375 on its opposed apexes.
UI4200 after the mark that five-stage 4325 is illustrated in area-of-interest has completed.In this example, user, by upon identifying the area-of-interest of expectation, just stops the dragging of finger 4350 and removes finger 4350 from the display screen of equipment, having carried out the mark of area-of-interest.Five-stage 4325 graphic extension is by this dilatory (drawing) process, and compared with the first stage 4205, the quality of the video in area-of-interest significantly improves.In certain embodiments, the same with the change that it causes local device 4225, this heave also causes identical change to the display frame on remote equipment.Such as, in this example, the picture quality shown in the area-of-interest of same video on a remote device can significantly improve.
Figure 42 above and the description of 43 illustrate the area-of-interest identified in video, to improve the different modes of the picture quality of institute's identified region.In certain embodiments, the image quality improving the area-of-interest identified can cause the change of the encoding operation of two camera movement equipment, such as when to Video coding, to the more bit of identified region allocation.
Some embodiments permission user identifies the area-of-interest in video, to make different changes to mobile device or its camera.Such as, the area-of-interest in Figure 44 graphic extension identification video, to expand or to reduce the example of area-of-interest in display frame.In this approach, user, by selecting a certain region in display frame as the center of area-of-interest as, expands subsequently or reduces described area-of-interest, identifies the area-of-interest in video.
In Figure 44, the UI 4400 of mobile device 4425, during the video conference of the long-distance user with another mobile device, presents PIP display 4265.PIP display 4265 in Figure 44 shows 4265 similar substantially with the PIP of Figure 42, but the prospect of Figure 44 inserts the lower left corner that display 4235 is positioned at PIP display 4265.
Figure 44 is according to four operational phases of UI 4400, and graphic extension ROI selects operation.As shown in the first stage 4405, background display 4430 presents the man in left side had in background display 4430, and the video of tree 4440 on the right side of background display 4430.In addition, tree 4440 is relatively little, only occupies the right side of background display area 4430.In this example, the user of mobile device 4425 is intended to background display area 4430 occurring the region recognition of tree 4440 is area-of-interest.
In second stage 4410, initiate the operation identifying area-of-interest.In this example, by select to be presented among the video in background display 4430, user wishes to be identified as the region 4440 of area-of-interest (such as, by two fingers 4445 and 4446 being placed on background display area 4430, showing the place of tree 4440), initiate described operation.In second stage 4410, by dragging its finger 4445 and 4446 away from each other, user can make area-of-interest 4440 expand, and occupies the background display area 4430 of greater part.By closely dragging its finger 4445 and 4446, user can also make area-of-interest 4440 reduce, thus occupies the background display area 4430 of smaller portions.
Phase III 4415 is illustrated in as shown in arrow 4450, (namely user by moving its finger 4445 and 4446 away from each other, finger 4445 moves towards the upper left corner of background display area 4430, finger 4446 moves towards the lower right corner of background display area 4430), start to make area-of-interest 4440 to expand to occupy UI4400 after the background display area 4430 of greater part.In certain embodiments, finger is mobile also to the change that the display of remote equipment causes the change that causes local device with it the same.Such as, in this example, the area-of-interest of same video will expand, thus occupy the background display area 4430 of the greater part of remote equipment.In certain embodiments, the expansion of the area-of-interest in local display and/or long-range display causes one or two mobile device or their other operations one or more of its camera amendment, as further described below.
UI 4400 after the mark that fourth stage 4420 is presented at area-of-interest has completed.In this example, once after area-of-interest reaches the ratio of expectation in background display area 4430, so user is by stopping the dragging of the finger 4445 and 4446 of user, and removes finger 4445 and 4446 from the display screen of equipment, has carried out the mark of area-of-interest.As the result of this process, area-of-interest occupies most background display area 4430.Complete now the mark operation of area-of-interest.
Some examples above illustrate how user identifies the area-of-interest in video, with the picture quality (such as, by increasing the bit rate to the encoding region of interest of video) in area-of-interest selected by improving in video.In certain embodiments, the area-of-interest in identification video causes the image processing operations of mobile device, the change of such as exposure, proportional zoom, focusing etc.Such as, the area-of-interest identifying in video can cause the image (such as, identifying the area-of-interest wanting zoom) of video conference manager 1604 differently proportional zoom and synthetic video.
In other embodiments, the area-of-interest in identification video causes the change (such as, frame rate, zoom, exposure, proportional zoom, focusing etc.) of the operation of the camera of mobile device.In other other embodiment, the area-of-interest in identification video causes the change of the encoding operation of mobile device, such as to the more bit of region allocation, proportional zoom etc. that identify.In addition, although example ROI mark described above operation only can cause the one in above-mentioned amendment to revise to mobile device or its camera, but in some other embodiments, ROI identifies operation and can cause more than a kind of amendment the operation of mobile device or its camera.In addition, in certain embodiments, the layout of the viewing area 1155 of Figure 42-44 is identical with the layout of the viewing area 1155 of Figure 12 described above.
B. camera is switched
During some embodiments are provided in video conference, switch the method for camera (that is, changing the camera of photographic images).Different embodiments provides the distinct methods realizing switching camera operation.(namely some embodiments provide the camera of this equipment of switching performed by two camera movement equipment, local to switch) method, and other embodiment provides the method for the camera (that is, long-range switching) of another pair of camera movement equipment switching another equipment described in instruct video meeting for two camera movement equipment.In addition other embodiment provides the method for carrying out local switching and long-range switching simultaneously.IV.B.1 joint carries out the local process switching camera operation by illustrating on two camera movement equipment.IV.B.2 joint will illustrate the process carrying out long-range switching camera operation on two camera movement equipment.
1. local switching camera
Some embodiments of Figure 45 graphic extension perform at local two camera movement equipment, with the video conference of remote-moving apparatus comprising at least one camera during, between two cameras of local device, carry out the process 4500 switched.In certain embodiments, process 4500 to be performed by the video conference manager 1604 shown in Figure 16.For the purpose of illustrating, discussion below calls camera 1 by a camera of local two camera movement equipment, and another camera of local two camera movement equipment is called camera 2.
By in local two beginning (4505) video conference between camera movement equipment and remote-moving apparatus, start to process 4500.Subsequently, process 4500 and the video image of the current selected camera (such as, camera 1) from local two camera movement equipment is sent to (4510) remote-moving apparatus, to show on remote-moving apparatus.4510, process 4500, also according to the video image that described video image and it receive from remote-moving apparatus, produces and display composograph.
Process 4500 determines whether (4515) receive the request terminating video conference subsequently.As mentioned above, in certain embodiments, the request of the user of local two camera movement equipment can be answered (such as, user interface by local two camera movement equipment), or answer the request of the user of remote-moving apparatus (such as, user interface by remote-moving apparatus), terminate video conference.When process 4500 receives the request terminating video conference, process 4500 terminates.
When process 4500 do not receive terminate the request of video conference time, process 4500 determine (4520) local two camera movement equipment subsequently user whether this local device of instruction switch the camera being used for video conference.When process 4500 determines that (4520) described local device is not switched camera by instruction, process 4500 returns operation 4510.But, when process 4500 determines that (4520) described local device is switched camera by instruction, process 4500 enters operation 4525.
4525, process 4500 sends to remote-moving apparatus and points out that local two camera movement equipment will switch the notice of camera.In certain embodiments, process 4500, by as mentioned above, sends described notice by the video conference control channel that VTP manager 3125 is multiplexed with voice-grade channel together with video channel.
After its notice of transmission, process 4500 is carried out (4530) and is switched camera operation.In certain embodiments, carry out (4530) switching camera operation and comprise instruction CIPU stopping camera 1 capture video image, start with camera 2 capture video image.These instructions only can switch the image of catching from the pel array associated with camera 2 by instruction CIPU, and start to process these images.On the other hand, in certain embodiments, can with one group of initiation parameter to the instruction of CIPU, described one group of initiation parameter instruction CIPU:(1) according to specific one group of setting operation camera 2, (2) video produced by camera 2 is caught with specific frame rate, and/or (3) are according to the video image of specific one group of setting (such as, resolution etc.) process from camera 2.
In certain embodiments, switch camera instruction (4530) and also comprise the instruction untapped camera being switched to the 4th kind of operating power pattern as above.In this example, switch camera instruction comprise to camera 2, the instruction that is switched to its 4th kind of operating power pattern.In addition, switch camera instruction also comprise to camera 1, be switched to another kind of operating power pattern from its 4th kind of operating power pattern, such as the first operating power pattern, to save electric power, or be switched to the third operating power pattern, make when being required photographic images, it can be switched to the 4th kind of operating power pattern fast, and starts the instruction of photographic images.Switch camera operation 4530 and also relate to the image (instead of the image taken by camera 1) that synthesis is taken by the camera 2 of local two camera movement equipment and the image received from remote-moving apparatus, to show on two camera movement equipment.
After 4530 instructions switch camera, process 4500 is carried out (4535) and is switched camera animation, to be presented at the transformation between the display from the image of camera 1 and the display from the image of camera 2 on local two camera movement equipment.After switching camera animation on local two camera movement equipment, process 4500 circulates through operation 4510-4520, terminates video conference request or new switching camera requests until receive.
How some embodiments of Figure 46 graphic extension allow to switch camera operation by the UI1105 of two camera movement equipment request, and these embodiments how flash demo switch an example of camera operation.Figure 46 is according to eight of UI 1105 of this equipment different operational phase 4610,4615,4620,4625,4630,4635,4640 and 4645, and graphic extension switches camera operation.The front four-stage graphic extension of UI 1105 receives the example of the switching camera requests of user.In some embodiments of the invention, the user of this equipment has other mechanism producing this request.
First stage 4610 is identical with the first stage 1130 of the UI 1105 of Figure 11, and it represents the UI 1105 after setting up video conference.In this stage, UI 1105 display comprises the PIP display of two video displays: from the larger background display of remote camera, and insert display from the less prospect of local camera.In this example, the main viewing area 1170 of background presents the video of a Ms, in this example, described Ms is assumed that the Ms being taken its video by remote equipment, and prospect inserts the video that viewing area 1160 presents a man, in this example, described man is assumed that the man of its video taken by the front camera by local device.
Second stage 4615 shows the selection of the PIP viewing area 1180 by UI 1105 subsequently, starts to switch camera operation.As shown in the figure, by the finger 4670 of user being placed in PIP display 1180, described selection is realized.Phase III 4620 display comprises for during video conference, asks the UI 1105 of the optional UI project 4675 (such as, switching camera button 4675) carrying out switching between the camera of local device 4600.The user that fourth stage 4625 is illustrated in local device 4600 selects after (such as, by singly referring to dub) optional UI project 4675, and highlighting by optional UI project 4675 UI 1105 pointed out after this selection.By selecting this optional UI project 4675, user instruction equipment 4600, during video conference, is switched to the back side camera of equipment 4600 from the front camera of equipment 4600.In other example of the back side camera capture video of equipment 4600 wherein, user to be switched to the front camera of equipment 4600 by commander equipment 4600 to the selection of optional UI project 4675 from the back side camera of equipment 4600.After fourth stage, video conference manager sends instruction to CIPU, and remote equipment starts to switch camera operation.
The example of the switching camera animation on rear four-stage 4630,4635, the 4640 and 4645 graphic extension local device of UI 1105.This animation intention causes the impression be displayed concurrently from the video of the front camera of local device and the shooting of back side camera the tow sides observing pane, and at any time, described observation pane is merely able to allow user see one of its tow sides.When switching camera in video conference intermediate request, make this observation pane seemingly around vertical axis revolving, the video showing the camera that a side of the video of a camera presents the first forward direction user observing pane is made to be rotated away from user, until another side of its observed pane replaces, another side described shows the video of another camera.The rotation animation of this observation pane experienced and phenomenon be by (1) in the viewing area for a camera, reduce the video image from this camera gradually, and to described video image application perspective correction operation, (2) are in described viewing area subsequently, expand the video image from another camera gradually, and reduce to realize the operation of the perspective correction of described video image.
Therefore, five-stage 4630 graphic extension is around the beginning of vertical axis 4682 " observing the rotation of pane ".In order to provide the rotation phenomenon observing pane, UI 1105 reduces the size of the video image of the front camera in video viewing area 1160, and applies pivot operation, and to seem compared with the left side of video image, the right side of video image is further from user.
Pane half-twist is observed in 6th stage 4635 graphic extension, makes user can only see the edge of pane, as be presented at the central authorities of viewing area 1160 fine rule 4686 shown in.The graphic extension of 7th stage 4640 is observed pane and is continued to rotate, and the back side observing pane 4688 is engendered in front of the user now, to show the video of the back side camera shooting from user.Equally, in certain embodiments, this performance of rotation animation is the size of video image in video viewing area 4688 by reducing back side camera, and applies pivot operation, to make compared with the right side of video image, the left side of video image realizes further from user.
8th stage 4645 graphic extension represents completing of the animation switching camera operation.Specifically, this stage shows the video image of the automobile taken by the back side camera of equipment 4600 in viewing area 1160.
The example illustrated above with reference to Figure 46 calls switching camera operation by switching camera user interface.Other embodiment differently calls switching camera operation.Such as, some embodiments, by the UI during making the optional UI project of switching camera for good and all be presented at video conference, such as, on the UI 1105 of Figure 47, call switching camera operation.In Figure 47, switch camera button 1289 and be displayed in viewing area 1155 together with mute button 1285 and closing session button 1287.The layout of viewing area 1155 is identical with the layout of the viewing area 1155 illustrated above with reference to Figure 12.
Figure 47 is according to six stages: the switching camera operation of 4610,4790,4630,4635,4640 and 4645, graphic extension UI 1105.The first stage 4610 of Figure 47 is similar to the first stage 4610 of Figure 46, except the layout display mute button 1285 of viewing area 1155, and closing session button 1287 and switching camera button 1289, instead of outside single closing session button.The user that second stage 4790 is illustrated in local device 4600 selects (such as, by utilize finger 4670 singly refer to dub) switch UI 1105 after camera optional UI project 1289.In this example, by selecting optional UI project 1289, user instruction equipment 4600, during video conference, is switched to the back side camera of equipment 4600 from the front camera of equipment 4600.The rear four-stage of Figure 47 and the rear four-stage of Figure 46 similar, except viewing area 1155 layout with above in the first stage 4610 illustrate layout identical except, so be not described further, to avoid by the fuzzy description of the invention of unnecessary details.
In certain embodiments, when remote-moving apparatus receive from the different cameras of local two camera movement equipment image (namely, local two camera movement equipment switches camera) time, remote-moving apparatus also carries out switching camera animation, be presented at the image of a camera from two camera movement equipment display and from the image of another camera of local two camera movement equipment display between transformation.Figure 48 according to five operational phases 4810,4815,4820,4825 and 4830 of UI 4805, the example of one of this switching camera of graphic extension animation.Figure 48 represents that the example on remote-moving apparatus 4800 switches camera animation.Each operational phase is identical with the example animation of Figure 46, and except being carry out except animation to the image be presented in viewing area 4835, viewing area 4835 is the places of the image shown on remote-moving apparatus 4800 from local two camera movement equipment.Thus, the image being presented at the man in viewing area 4835 is become on the vertical axis 4855 being positioned at viewing area 4850 central authorities, to rotate 180 ° seemingly, with the transformation between the display of the image of the display and automobile 4870 that represent the image of the man in viewing area 4835 by flash demo.Realizing of the realization of the switching camera animation of some embodiments and animation described above is identical.
Example above illustrates the switching camera animation on the remote equipment with particular user interface layout.Other embodiment can realize this switching camera animation on the remote equipment with different user interface layout.Such as, Figure 49 graphic extension has a this example of the remote equipment 4800 of different user interface layout 4805.Especially, the UI 4805 of Figure 49 has the mute button 1285 be included in viewing area 1155, closing session button 1287 and switches camera button 1289, and during video conference, described viewing area 1155 is for good and all presented at the side of compound display 4850.The layout of these three buttons is described above with reference to Figure 48.Except different user interface layout, the double teacher 4810,4815,4820,4825 of Figure 49 with 4830 with the double teacher 4810 of Figure 48,4815,4820,4825 identical with 4830.
2. long-range switching camera
During Figure 50 is illustrated in video conference, switch the process 5000 of two cameras of remote double camera apparatus.Process 5000 is performed by the video conference manager of the equipment comprising at least one camera.In the following discussion, the equipment that user switches camera by its instruct remote is called as local device, and the equipment switching its two cameras is called as remote equipment.In addition, in the following discussion, remote equipment is considered to switch between its front camera (in other words camera 1) and its back side camera (in other words camera 2).
Below with reference to Figure 51,52,53 and 54, the process 5000 of Figure 50 is described.The UI 5105 of Figure 51 graphic extension local device 5100, during video conference, user asks remote equipment to switch between its two cameras by local device 5100.The operational phase 5110,5115,5120,5125,5130,5135,5140 and 5145 that eight of Figure 51 graphic extension UI 5105 are different.Figure 54 graphic extension receives the UI 5405 of the remote equipment 5400 switching camera requests from local device 5100.The operational phase 5410,5415,5420,5425,5430 and 5435 that six of Figure 54 graphic extension UI 5405 are different.
As shown in Figure 50, by starting (5005) video conference between local device and remote equipment, start to process 5000.Process 5000 subsequently (5010) receives the image from a camera (such as, the front camera from each equipment) of each equipment, according to the composograph of these Computer image genration video conferences.5010, process 5000 also sends to remote equipment the video image from local device.
Subsequently, process 5000 and determine whether (5015) receive the request terminating video conference.As mentioned above, in certain embodiments, the request of the user of Local or Remote equipment can be answered, terminate video conference.When process 5000 receives the request terminating video conference, process 5000 terminates.
When process 5000 does not receive the request terminating video conference, process 5000 determines (5020) to perform the user (that is, the user of local device) of the equipment of process 5000 thereon subsequently, and whether this device request remote equipment of instruction switches between its camera for video conference.When process 5000 determine (5020) it does not initiated long-range switching camera by instruction time, process 5000 returns operation 5010.When process 5000 determine (5020) it initiated long-range switching camera by instruction time, process 5000 enters the operation 5025 further illustrated below.
Front four-stage 5110,5115,5120 and 5125 graphic extension of the UI 5105 of Figure 51 receives the example of the request of the camera of the switching remote equipment of user.First and second stages 5100 are identical with 4615 with first and second stages 4610 of Figure 46 with 5115.Phase III 5120 is identical with the phase III 4620, switches the optional UI project 5175 of camera except the phase III 5120 not only comprises request local device 5100, and comprises request remote equipment 5100 and switch outside the optional UI project 5180 of camera.The user of fourth stage 5125 graphic extension local device 5100 select to ask remote equipment switch camera UI project 5180 (such as, by optional UI project 5180 singly refer to dub 5170).By highlighting optional UI project 5180, point out described selection.Figure 51 represents the example carrying out this operation, but other embodiment can differently carry out asking remote equipment to switch the operation of camera.
The example illustrated above with reference to Figure 51, by long-range switching camera user interface, calls long-range switching camera operation.Other embodiment differently calls long-range switching camera operation.Such as, some embodiments, by the UI during making the optional UI project of switching camera for good and all be presented at video conference, such as, on the UI 5105 of Figure 52, call switching camera operation.In Figure 52, long-range switching camera button 5288 is displayed in viewing area 1155 together with mute button 5282, closing session button 5284 and the local camera button 5286 that switches.
Figure 52 according to six different stages 5110,5290,5130,5135,5140 and 5145, the long-range switching camera operation of the UI 5105 of graphic extension equipment 5100.The first stage 5110 of Figure 52 is similar to the first stage 5110 of Figure 51, except the layout display mute button 5282 of viewing area 1155, local switching camera button 5286, long-range switching camera button 5288 and closing session button 5284.Second stage 5290 is illustrated in the UI 1105 after the optional UI project 5288 of user's selection (such as, by singly referring to dub 5170) long-range switching camera of local device 5100.The rear four-stage of Figure 52 is similar to the rear four-stage of Figure 51, except viewing area 1155 layout with above in the first stage 5110 describe layout identical except, so be not described further, to avoid by the fuzzy description of the invention of unnecessary details.
Some embodiments provide the layout similar with the layout of graphic extension in Figure 52, except the optional UI project of long-range switching camera is presented in PIP display 5165, instead of are presented at outside in viewing area 1155.The layout 5105 that Figure 53 graphic extension is such.Specifically, Figure 53 represents the PIP display with the optional UI project 5180 of long-range switching camera, and only has mute button 5282, the local viewing area 1155 switching camera button 5286 and closing session button 5284.
As mentioned above, when user asks long-range switching camera, process 5000 enters operation 5025.In operation 5025, process 5000 sends to remote equipment the request switching camera.In certain embodiments, this request is by as mentioned above, is sent together with video channel with voice-grade channel by the video conference control channel that VTP manager is multiplexed.
After the request switching camera is received, process 5000 determines whether (5030) remote equipment has responded the request switching camera.In certain embodiments, remote equipment, automatically by video conference control channel, sends acceptance response (that is, sending confirmation) to local device.But, in other embodiments, the user of remote equipment must accept this request by the user interface of remote equipment.
The first two stage 5410 and 5415 graphic extension long-distance user of the UI 5405 of Figure 54 accepts the example of the request of the camera switching remote equipment 5400.First stage 5410 shows (1) for showing the viewing area 5440 described request being notified the text of long-distance user, (2) for accepting the optional UI project 5465 of the request of the camera switching remote equipment (such as, " permission (Allow) " button 5465), (3) for refusing the optional UI project 5470 (such as, " refusal (Reject) " button 5470) of the request of the camera switching remote equipment.The user that second stage 5415 is illustrated in remote equipment subsequently selects (such as, by singly referring to dub 5480) for accept switch camera request UI project 5465 after UI 5405, by highlighting optional UI project 5465, the described selection of indicating user.
When process 5000 determine (5030) it does not receive from remote equipment response time, process 5000 determines whether (5035) receive the request terminating video conference.If so, so process 5000 to terminate.Otherwise, process receives (5040) image from the currently used camera of remote equipment and local device, produce the composograph of video conference according to these images, the video image of local device is sent to remote equipment, and returns operation 5030 subsequently.
When process 5000 determine (5030) it have received from remote equipment response time, process 5000 determines whether (5045) remote equipment accepts to switch the request of camera.If not, so process 5000 and return operation 5010, continue to receive the image from the described camera of another equipment.Otherwise, process 5100 receives (5050) image from another camera of remote equipment, carry out (5055) subsequently on the local device and switch camera animation, to show the transformation between the video of remote camera and the video (that is, at the reception image of operation 5050) of the remote camera of current utilization previously utilized.After operation 5055, process returns operation 5010 described above.
About an example of this long-range switching camera animation on rear four operational phases 5130,5135,5140 and 5145 graphic extension local device 5100 of UI 5105 graphic extension in Figure 51.The example animated type of this example animation and graphic extension in the stage 4815,4820,4825 and 4830 of Figure 48 seemingly, except Figure 51 is in viewing area 5150, show the video of the tree taken with the back side camera by remote equipment, replace by outside the animation of the video of the Ms of the front camera shooting of remote equipment.The animation that the rear four-stage graphic extension of Figure 52 with Figure 53 is identical with the animation in Figure 51, except the viewing area 1155 of Figure 52 and 53 comprises except the optional UI project different from the viewing area 1155 in Figure 51.
In certain embodiments, when remote equipment switches camera, the UI of remote equipment also carries out switching camera animation, to show the transformation between two cameras.About rear four operational phases 5420,5425,5430 and 5435 graphic extension of UI 5405 graphic extension in Figure 54 when remote equipment 5400 switches camera, be presented at the example of the switching camera animation on remote equipment 5400.The animated type of this animation and graphic extension in the stage 4630,4635,4640 and 4645 of Figure 46 seemingly, except the video of the tree that the animation in viewing area 5445 is taken with the back side camera by remote equipment 5400, replace by outside the video of the Ms of the front camera shooting of remote equipment 5400.
As mentioned above, Figure 46,47,48,49,51,52,53 and 54 represents the various examples of the switching camera animation performed on a user interface.In certain embodiments, the change that camera animation causes the image processing operations of corresponding pair of camera movement equipment is switched, the proportional zoom that such as can be performed by video conference manager 1604 and image processing manager 1608, synthesis and perspective distortion.
C. adjustment is exposed
During video conference between two camera movement equipment and another mobile device, different embodiments provides the different technologies of the exposure adjusting the image taken by the camera of any one mobile device.Some embodiments provide the technology of the exposure adjusting image take by the camera of another equipment to the user of two camera movement equipment, and the technology of the exposure of the image that other embodiment provides adjustment to be taken by the camera of two camera movement equipment to user.Below by some exemplary examples of detailed description.
During Figure 55 is illustrated in video conference, two camera movement equipment of some embodiments carry out the process 5500 of long-range exposure adjustment operation.In the following discussion, the equipment that user adjusts its exposure by its instruct remote equipment is called as local device.In certain embodiments, process 5500 to be performed by the video conference manager of local device.In addition, illustrate that process 5500, Figure 56,57 and 58 illustrates that the user of local device asks remote equipment to carry out the various modes of exposure adjustment operation with reference to Figure 56,57 and 58.
As shown in Figure 55, by starting (5505) video conference between local device and remote equipment, start to process 5500.Process 5500 receives (5510) video from remote equipment subsequently, with the display screen display at local device.Subsequently, process 5500 and determine whether (5515) receive the request terminating video conference.As mentioned above, some embodiments can receive from the user of Local or Remote equipment the request terminating video conference.When process 5500 receives the request terminating video conference, process 5500 terminates.
But, when process 5500 does not receive the request terminating video conference, process 5500 determines whether (5520) receive the request of the exposure of the camera of adjustment remote equipment subsequently.When the request of the exposure of the camera not receiving adjustment remote equipment is determined in process 5500, process 5500 returns operation 5510, receives the other video from remote equipment shooting.Figure 56,57 and 58 graphic extensions provide three the different examples producing this request to user.In Figure 56,57 and 58, the PIP that first stage 5610,5710 and 5810 all shows local device 5600,5700 and 5800 shows 5625,5750 and 5835, PIP display 5625,5750 and 5835 display two videos: the video taken by the camera of local device, and another video taken by the camera of remote equipment.In the first stage 5610,5710 and 5810, the man in background display 5635,5760 and 5845 is more black dull, indicates this man not by appropriate exposure.
Second stage 561 graphic extension of Figure 56 is by selecting the video (such as, by clicking background display 5635) of remote equipment, and the user of local device 5600 asks remote equipment to carry out exposing a kind of mode of adjustment.In this manner, UI 5605 makes user carry out exposing the expectation that adjust with the instruct remote equipment of user to area-of-interest to the selection of the area-of-interest limited by square frame 5645 to associate automatically, thus the video conference manager contact remote equipment of instruction local device, to carry out exposure adjustment operation.Definition area-of-interest by remote equipment for exposing the calculating of adjustment.
The second stage 5715 being similar to the second stage 5615, Figure 57 of Figure 56 represents the selection of local user to the video of remote equipment, except this selection instruction UI 5705 shows the optional UI project 5770 as shown in the phase III 5720.The user of fourth stage 5725 graphic extension local device selects optional UI project 5770, carries out exposure adjustment operation as mentioned above with instruct remote equipment.
The second stage 5815 of Figure 58 is similar to the second stage of Figure 57, the selection instruction UI of user to the video of remote equipment is but replaced to show single optional UI project, the selection instruction UI 5805 of user shows the menu of optional UI project 5855,5860,5865 and 580, as shown in the phase III 5820.Project 5855 that optional UI project comprises " automatic focus (Auto Focus) ", " automatic exposure (Auto Exposure) " project 5860, " switching camera (Switch Camera) " project 5865 and " cancelling (Cancel) " project 5870.In certain embodiments, " switching camera " optional UI project 5865 is used to ask local switching camera operation, and in other embodiments, " switching camera " optional UI project 5865 is used to ask long-range switching camera operation.Fourth stage 5825 graphic extension user selects " automatic exposure " project 5860, carries out exposure adjustment operation as mentioned above with instruct remote equipment.
When (5520) local user's instruction local device request exposure adjustment operation is determined in process 5500, process 5500 sends (5525) order by video conference control channel to remote equipment, to adjust by taking at present and the exposure of video of taking to the camera that local device transmits video.After operation 5525, process 5500 returns operation 5510 described above.
In certain embodiments, before remote equipment carries out exposure adjustment operation, require that the user of remote equipment provides license, and in other embodiments, after receiving request from local device, remote equipment carries out exposure adjustment operation automatically.In addition, in certain embodiments, some video conference functions are realized by video conference manager 1604.In the embodiment that some are such, video conference manager 1604 adjusts the transducer of the remote equipment camera used exposure by instruction CIPU 1650 is arranged, and performs exposure adjustment operation.
Figure 56,57 and 58 final stage 5620,5730 and 5830 show the video of remote equipment more brightly, this indicates this man by appropriate exposure.Although Figure 56,57 and 58 provides the example of the exposure adjustment request receiving the exposure correcting remote equipment, but some embodiments provide the mode of the exposure of the camera of request local device adjustment local device to the user of local device.The mode that can adjust the exposure of its camera with the request remote equipment of graphic extension in Figure 56,57 and 58 produces such request similarly.
Figure 56-58 described above represents several user interfaces for carrying out exposure adjustment operation.In certain embodiments, exposure adjustment operation can cause the change of the image processing operations of two camera movement equipment, such as calls the exposure adjustment processing 5900 further described below.Exposure adjustment operation can also cause the change of the operation of the camera of two camera movement equipment of capture video, and the exposure such as changing camera is arranged.
1. exposure adjustment method
Figure 59 conceptually graphic extension by the image processing manager of some embodiments, the exposure adjustment processing 5900 that the image processing manager of graphic extension in such as Figure 16 performs.In certain embodiments, process 5900 be above with reference to Figure 55,56,57 and 58 parts of exposure adjustment operation illustrated.In the embodiment that some are such, image processing manager 1608 performs process 5900, and arranged by the exposure sending instruction adjustment camera to video conference manager 1604, described video conference manager 1604 instruction CIPU 1650 adjusts camera sensor 405a or 405b, as mentioned above.
In certain embodiments, process 5900 is performed by the image procossing layer 930 shown in Fig. 9, and in other embodiments, process 5900 is performed by the statistics engine 465 shown in Fig. 4.Some embodiments carry out process 5900 to the image that the camera by (Local or Remote) equipment in video conference is taken, and other embodiment performs process 5900 with the form of a part for the process 2100 of graphic extension in Figure 21 (such as, operating 2110).Some embodiments carry out exposure adjustment operation, are not too bright to expose what taken by the camera of two camera movement equipment, image that neither be too dark.In other words, process 5900 is performed, with according to making the maximized as far as possible mode photographic images of the quantity of details.
By receiving the image that (5905) are taken by the camera of two camera movement equipment, start to process 5900.In certain embodiments, when the image received is the first two field picture taken by the camera of the equipment in video conference, process 5900 (that is, before the first two field picture, there is not any image determining exposure value according to it) is not carried out to the first two field picture.The pixel value that (5910) receive the regulation region in image is read in process 5900 subsequently.Different embodiments differently defines described region.Some such embodiments define difform region, such as square, rectangle, triangle, circle etc., and other this embodiment is at the diverse location of image, such as center, directly over, immediately below etc. definition described region.
Subsequently, the mean value that 5900 calculate the pixel value in the regulation region of (5915) image is processed.Process 5900 determines whether the calculating mean value of (5920) pixel value equals specific setting.Different embodiments defines different particular values.Such as, some embodiments are defined as described particular value the median pixel value of the dynamic range of image.In certain embodiments, the scope of definition numerical value, instead of single value.In such embodiments, process 5900 and determine that the calculating mean value of (5920) pixel value is whether within the prescribed limit of numerical value.
When the calculating mean value of pixel value is not equal to specific setting, process 5900 is according to calculating mean value adjustment (5925) exposure value.When the calculating mean value of pixel value equals specific setting, process 5900 terminates.In certain embodiments, exposure value represents the time quantum that camera sensor is exposed.In certain embodiments, the exposure value after adjustment is used to expose the next frame image taken by the camera receiving image by shooting.After according to the mean value adjustment exposure value calculated, process 5900 terminates.
In certain embodiments, repeat process 5900, until the calculating mean value of pixel value equals specific setting (or in prescribed limit of numerical value).Some embodiments, during video conference, constantly carry out process 5900, and other embodiment are during video conference, carry out process 5900 with predetermined time interval (such as, 5 seconds, 10 seconds, 30 seconds etc.).In addition, during video conference, the process 5900 of some embodiments, before carrying out process 5900, dynamically redefines specific pixel value.
The example of Figure 60 exposure adjustment operation of some embodiments of graphic extension conceptually.Example 6000,6010 and 6015 is all presented at left side the image 6020 that the camera by two camera movement equipment is taken.Specifically, image 6020 shows the black dull personage back to the sun.The exposure of black dull personage's indicating image is not high enough to the face or the health that expose personage.The right side of each example 6000,6010 and 6015 is illustrated respectively in the image 6025,6030 and 6035 of image 6020 shooting afterwards.In certain embodiments, the image on image 6020 and right side is the image of the video taken by the camera of two camera movement equipment.In other embodiments, the image on image 620 and right side is the rest image do not taken in the same time by the camera of two camera movement equipment.
The graphic extension of first example 6000 is without any the operation of exposure adjustment.Thus, image 6025 seems identical with image 6020.Owing to not carrying out any exposure adjustment, therefore with the figure kind in image 6020 seemingly, the personage in image 6025 is still black dull.
In second example 6010, exposure adjustment operation is carried out to image 6020.In certain embodiments, exposure adjustment operation utilizes regulation region 6040 to carry out by process 5900.According to exposure adjustment operation, the exposure of camera is adjusted, and camera utilizes the exposure photographic images 6030 after adjustment.As shown in Figure 60, the personage in image 6030 is not as black dull in image 6025.But, in image 6030 face of personage and health still unintelligible.
3rd example 6015 represents the exposure adjustment operation carried out image 6020.Be similar to second example 6010, the exposure adjustment operation of the example 6015 of some embodiments utilizes regulation region 6045 to carry out by process 5900.According to exposure adjustment operation, the exposure of camera is adjusted, and camera utilizes the exposure photographic images 6035 after adjustment.As shown in Figure 60, the personage in image 6035 is by correct exposure, because the face of personage and health are all visible.
In certain embodiments, the selection in regulation region can be undertaken by the user of two camera movement equipment.Equipment itself can by the feedback loop of the exposure mentioned in CIPU 400 above adjustment, automatically adjusts its regulation region for exposure adjustment operation.Statistics engine 465 in Fig. 4 can collect data, to determine whether exposure is suitable for the image taken, and adjusts camera sensor (such as, by being connected with the direct of sensor assembly 415) accordingly.
D. Focussing
During Figure 61 is illustrated in video conference, the process 6100 of the focal length of the two camera movement equipment of adjustment.In the following discussion, user is called as local device by the equipment of the camera focal of its instruct remote equipment adjustment remote equipment.In certain embodiments, the process 6100 of Figure 61 is performed by the video conference manager 1604 of local device.In addition, illustrate that the user that process 6100, Figure 62 and 63 is local device provides request remote equipment to perform two kinds of way of example of Focussing operation below with reference to Figure 62 and 63.
As shown in Figure 61, by starting (6105) video conference between local device and remote equipment, start to process 6100.Process 6100 receives (6110) subsequently from video of remote equipment, so that in the display screen display of local device.Subsequently, 6115, process 6100 determines whether to receive the request terminating video conference.As mentioned above, in certain embodiments, the request of the user of Local or Remote equipment can be answered, terminate video conference.When process 6100 receives the request terminating video conference, process 6100 terminates.
Otherwise (6120) are determined in process 6100, and whether it receives the request of focal length of the remote camera of adjustment remote equipment.When process 6100 determines that it does not receive the request of the focal length of the remote camera of adjustment remote equipment, process 6100 returns operation 6110, receives the other video from remote equipment.Three kinds of different modes of Figure 62, the 63 this requests of generation provided to user with the different embodiment of 64 graphic extension.In Figure 62,63 and 64, the PIP that first stage 6210,6310 and 6472 all shows local device 6200,6300 and 6471 shows 6225,6335 and 6482, PIP display 6225,6335 and 6482 all shows two videos, the video taken by local device, and another video taken by remote equipment.Viewing area 1155 and 1155 in Figure 62 and 63 shows closing session button.But, in Figure 64, the layout of viewing area 1155 is identical with the layout of the viewing area 1155 of Figure 12 described above.In addition, the switching camera button 6488 shown in viewing area 1155 can be selected, to call local switching camera operation in certain embodiments, or call long-range switching camera operation in other embodiments.As shown in the first stage 6210,6310 and 6472, the video being presented at the remote equipment in background display 6235,6345 and 6480 is fuzzy.
Second stage 6215 graphic extension of Figure 62 is by selecting the video (such as, the single-point 6240 by the video of remote equipment) of remote equipment simply, and the user of local device is to the method for remote device requests Focussing.According to the method, UI 6205 automatically user to the instruct remote equipment of the selection of the area-of-interest limited by square frame 6245 and user to described area-of-interest executable operations (such as, Focussing operate) expectation associate, thus the video conference manager 1604 contact remote equipment of instruction local device 6200, to perform adjustment operation (such as, Focussing operation).The area-of-interest of definition is used for the calculating of Focussing by remote equipment.
The second stage 6315 of Figure 63 represents the selection (such as, by user dubbing the video of remote equipment) of local user to long-distance video similarly.But, be different from the example of graphic extension in Figure 62, this selection instruction UI 6305 in Figure 63 shows the menu as the optional UI project 6355,6360,6365 and 6370 (they can be realized as optional button) as shown in the phase III 6320.These optional UI projects comprise " automatic focus (Auto Focus) " project 6360, " automatic exposure (Auto Exposure) " project 6365, " switching camera (Switch Camera) " project 6370 and " cancelling (Cancel) " project 6355.In certain embodiments, " switching camera " optional UI project 6370 is used to ask local switching camera operation, and in other embodiments, " switching camera " optional UI project 6370 is used to ask long-range switching camera operation.Fourth stage 6325 subsequently graphic extension local user selects automatic focus project 6360.
The second stage 6474 of Figure 64 represents that local user is to the selection (such as, by user's dubbing the video of remote equipment) of long-distance video again similarly.But, be different from the example of graphic extension in Figure 63, this selection instruction UI 6478 in Figure 64 asks Focussing to operate (that is, in second stage 6474).After the operation of end Focussing, UI 6478 shows the menu (that is, in the phase III 6476) of optional UI project 6484 and 6486, and optional UI project 6484 and 6486 can be realized as selectable buttons.These optional UI projects comprise " automatic exposure " project 6486 and " cancellation " project 6484.
When process 6100 determines that (6120) local user's instruction local device request Focussing operates, process 6100 is by video conference control channel, (6140) order is sent, to adjust the focal length that the camera of its video was caught and transmitted to remote equipment at present to remote equipment.After 6140, process returns operation 6110 described above.
In certain embodiments, before remote equipment carries out this operation, the user of remote equipment must provide permission, and in other embodiments, when after the request receiving local device, remote equipment automatically performs this operation.In addition, in certain embodiments, the focal length of the camera used during video conference of Focussing operation adjustment remote equipment is arranged.In the embodiment that some are such, as mentioned above, some video conference functions are realized by video conference module 1602.In these embodiments, video conference manager 1604 instruction CIPU 1650 adjusts the transducer of the remote equipment camera used.
Figure 62,63 and 64 final stage 6220,6330 and 6476 represent the video of the appropriate remote equipment focused on.Although Figure 62,63 and 64 provides the example of the Focussing request receiving the focal length correcting remote equipment, but, some embodiments allow the user of local device to ask local device to adjust the focal length of the camera of local device.The request remote equipment that can be similar to shown in Figure 62,63 and 64 adjusts the method for the focal length of its camera, produces such request.
Figure 62,63 and 64 graphic extensions allow user to carry out three kinds of example user interface of Focussing operation.In certain embodiments, Focussing operation causes taking the change of the operation of the camera of two camera movement equipment of the video be presented in UI, such as changes the focal length of camera.
As above, described in Figure 56 and 62, the area-of-interest of regulation is respectively used to the exposure adjustment of video and the calculating of Focussing by remote-moving apparatus.But, in some other embodiments, user can be used to instruct remote equipment to the selection of area-of-interest and carry out one or more operation.Such as, in certain embodiments, according to the area-of-interest of definition, carry out exposure adjustment and Focussing, thus instruct remote equipment can carry out two operations.
E. frame rate controls
During video conference, some embodiments may wish the speed (that is, frame rate) adjusting or keep to transmit to another equipment in video conference the video image taken by the camera of two camera movement equipment.Such as, assuming that bandwidth is fixed, some such embodiments reduce the frame rate of video, and to improve the image quality of video image, and other such embodiment increases the frame rate of video, with smoothed video (that is, reducing shake).
During different embodiments is provided in video conference, control the different technologies of the frame rate of video image.The VBI of the sensor assembly 415 of the example adjustment camera illustrated above, the speed of the image taken by camera with control treatment.As another example, some embodiments of the management level 935 of the video conference module 925 shown in Fig. 9 carry out control frame speed by abandoning image.Similarly, some embodiments of image procossing layer 930 carry out control frame speed by abandoning image.Some embodiments provide other technology in addition to carry out control frame speed, such as abandon the frame in general transmission buffer 3120.
V. two camera
A. assembled view
1. picture-in-picture: the display of two remote camera
Some embodiments allow two camera movement equipment according to any one in several display arrangement, show from during video conference, the video taken from this mobile device and the video from another pair of camera movement equipment shooting.The example of the difference display arrangement of the video that Figure 65 graphic extension is taken from one or more pairs of camera movement equipment.In Figure 65, the user of two camera movement equipment 6500 (device A) and the another one user of another pair of camera movement equipment 6505 (equipment B) carry out video conference mutually.
Figure 65 represents four kinds of examples that the display of device A arranges in left side.Four kinds of display arrangements of device A are the first view 6510, second view 6515, three-view diagram 6520 and the 4th view 6525.In addition, Figure 65 also represents four kinds of examples that the display of equipment B arranges on right side.Four kinds of display arrangements of equipment B are the first view 6565, second view 6570, three-view diagram 6575 and the 4th view 6580.In this example, device A only shows two videos taken from the camera of device A, and equipment B shows two videos taken from the camera of device A, and shows one or two video taken from the camera of equipment B.
In the first view 6510, the UI 6585 of device A provides compound display 6512.Compound display 6512 comprises two viewing areas: the viewing area 6530 showing the video of the back side camera shooting from device A, and display is from the viewing area 6535 of the video of the front camera shooting of device A.In this example, viewing area 6530 is positioned at the first half of compound display 6512, and viewing area 6535 is positioned at the Lower Half of compound display 6512.In the first view 6510, these two viewing area sizes are identical.The viewing area 6530 on top is just showing the video on mountain range, and the supposition of described mountain range is the mountain range just taken by the back side camera of device A.Viewing area 6535 is just showing tree and the man that attaches the names of pre-determined candidates, and described tree and the man that attaches the names of pre-determined candidates supposition are the tree and the man that attaches the names of pre-determined candidates just taken by the front camera of device A
UI 6585 in second view 6515 provides compound display 6517, compound display 6517 comprises two viewing areas identical with the first view 6510, except viewing area 6535 (showing the video of the front camera shooting from device A) is being positioned at the first half of compound display 6517, viewing area 6530 (showing the video of the back side camera shooting from device A) is positioned at outside the Lower Half of compound display 6517.
In three-view diagram 6520, UI 6585 provides PIP to show 6595.PIP display 6595 comprises two viewing areas: as a setting viewing area, the viewing area 6535 of the video that shows the front camera shooting from device A, and insert viewing area as prospect, the viewing area 6530 of the video that shows the back side camera shooting from device A.In this view, background display area 6535 occupy most PIP show 6595, and insert viewing area 6530 less and overlap a part background display area 6535 on.
UI 6585 in 4th view 6525 also presents the PIP display 6598 of the viewing area 6530 and 6535 comprised as shown in three-view diagram 6520.Be different from PIP display 6595, PIP display 6598 comprises the viewing area 6530 (taking the back side camera from device A) of main display as a setting, and inserts the viewing area 6535 (taking the front camera from device A) of display as prospect.In addition, PIP display 6598 presents (that is, the width of PIP display 598 is greater than height) by transverse views.
The possible synthesis view of four kinds of the UI of example illustrations devices illustrated A above-wherein show two longitudinally stacked views of two viewing areas 6530 and 6535 of the video of two cameras of the first equipment, and two PIP views.Concerning the UI of device A, other view is also possible.Such as, two viewing areas can level or diagonal angle stacked, or different PIP views can be used.
Each view about equipment B graphic extension represents that the UI of equipment B can adopt different views.These views comprise two cameras from device A, and one of equipment B or multi-section camera shooting video.In the first view 6565 of equipment B, the UI6590 of equipment B provides PIP to show 6568.PIP display 6568 comprises the compound display district 6569 identical with the compound display 6512 be presented in device A, and shows the insertion viewing area 6550 of the video taken by one of the camera of equipment B (such as, front camera).Compound display district 6569 comprises the viewing area 6531 of display from the video of the back side camera shooting of device A, and display is from the viewing area 6536 of the video of the front camera shooting of equipment B.The compound display 6569 of the video of display device A occupies most PIP and shows 6568, and it is less and overlap on compound display 6569 to insert viewing area 6550.Viewing area 6550 shows the video of smiling face, and described smiling face's supposition is the smiling face just being taken its video by the front camera of equipment B.
The UI 6590 of the equipment B in the second view 6570 provides PIP to show 6572.PIP display 6572 comprises viewing area 6550 (showing the video of the front camera shooting from equipment B), and has the compound display 6573 of the viewing area 6531 and 6536 showing the video taken from the camera of device A.Compound display 6573 is identical with the compound display 6517 in the second view 6515 of device A, and occupies most PIP display 6572.The same with in the PIP display 6568 in the first view 6565, viewing area 6550 is less and overlap on compound display 6573.Specifically, in these two views, viewing area 6550 overlaps display from a part for the viewing area 6531 of the video of the back side camera shooting of device A.
In three-view diagram 6575, UI 6590 provides and to show 6595 similar PIP with the PIP in the three-view diagram 6520 of device A and show 6577.PIP display 6577 also comprises other viewing area 6550, inserts viewing area as second, and second inserts viewing area 6550 overlaps on background display area 6536.Two are inserted the bottom of viewing area 6531 and 6550 Horizontal Tile in the main viewing area 6536 of background.
UI 6590 in 4th view 6580 provides compound display 6582.Compound display 6582 comprises three display: PIP displays 6583, viewing area 6550 and viewing area 6540 (such as, for showing the video taken by the back side camera of equipment B).PIP display 6583 and the PIP in the 4th view 6525 of device A show 6598 identical, and occupy most compound display district 6582.Viewing area 6540 and 6550 is less, and Horizontal Tile is under PIP viewing area 6583.
Although Figure 65 illustrates four kinds of possibility views of equipment B, but other many view is also possible.The background compound display of the video of device A can Horizontal Tile, instead of vertical tile, inserting viewing area can overlap on the camera viewing area, front of device A, instead of overlap on camera viewing area, the back side, larger viewing area can the video of camera of display device B, instead of the video of the camera of device A, insert viewing area and can be positioned at different positions, etc.
The arrow 6560 of often organizing coming from each view of device A shows not exist the requirement that his-and-hers watches are shown in the display in device A and represent the relevance between display on device B.Such as, even if device A is pressing the list view district video of view 6510 (such as, arrangement according to the user of device A selects), equipment B also can by four of graphic extension kind of arrangement, or press one of any display video (such as, according to the arrangement that the user of equipment B selects) of unshowned other arrangement multiple in Figure 65.In other words, the display arrangement of device A and the display of equipment B arrange irrelevant.Some embodiments do not send another equipment viewing area to from an equipment, and (such as, in an encoded form), described video is presented in the viewing area of its correspondence by equipment just to transmit video.
2. special PIP
Some embodiments allow the user of two camera movement equipment during video conference, in PIP display, the prospect of video are superimposed upon on another video.In certain embodiments, the prospect of video is mixed in another video in such a manner, makes them show as the display of the single video taken by single camera.Figure 66 is illustrated in PIP display, inserts the example of this superposition of prospect on background video of video.
Figure 66 is according to seven operational phases 6620,6625,6630,6635,6640,6660 and 6665 of UI 6670, and this video superimpose of graphic extension operates.During first stage 6620 is illustrated in the video conference with remote equipment, there is the UI 6670 of two camera movement equipment 6600 of PIP display 6682.As shown in the first stage 6620, PIP display 6682 comprises two video displays: the main display 6610 of background and prospect insert display 6605.The main display of background 6610 occupies most UI 6670, and prospect to insert display 6605 less and overlap in the main display 6610 of background.
In this example, background display area 6610 shows the video on mountain range, and the supposition of described mountain range is the mountain range taken by one of camera of remote equipment.Prospect inserts the video that viewing area 6605 shows the personage that attaches the names of pre-determined candidates, and described personage's supposition is the personage being taken its video by one of camera of local device.PIP display 6682 be below be labeled as " End Conference (closing session) " optional UI project 6685 (such as, button 6685), described optional UI project 6685 allows this project of user by selecting (such as, by clicking or double-click this button), terminate video conference.
Calling of second stage 6625 graphic extension selectable menu 6675.In certain embodiments, by selecting (such as touching) PIP viewing area 6682, the menu of optional UI project 6675 can be called.Replace this call operation, or be combined with this call operation, some embodiments also allow user to pass through other operation, as by different contact action or one or more other physics inputs utilizing equipment, call the menu of optional UI project 6675.
Phase III 6630 shows UI 6670, UI 6670 and has call the one group optional UI project for selecting video superimpose to operate.In this example, in PIP display 6682, display has the pop-up menu 6675 of several optional UI project.The menu 6675 of optional UI project comprises " Flip PIP (upset PIP) ", and optional UI project 6640 (such as, button 6640), " Specialized PIP (special PIP) " optional UI project 6645 (such as, button 6645), " Cancel (cancellation) " optional UI project 6690 (such as, button 6690).In this example, select " Flip PIP " button 6640 that UI 6670 can be caused to exchange background display 6610 and insert display 6605 (will discuss in detail in the next section), select " Specialized PIP " button 6645 that UI 6670 can be caused to start the operation of video superimpose, and select " Cancel " button 6690 can remove pop-up menu 6675 from PIP display 6682.Other embodiment comprises different or more project at PIP pop-up menu 6675.
Fourth stage 6635 is illustrated in user and have selected UI 6670 after " Specialized PIP " button 6645 (such as by dubbing button 6645 with his finger 6695).By highlighting button 6645 in UI display 6670, indicate this selection.Some embodiments use different instruction display (such as, highlighting the text in the frame of selected item or selected item).
Five-stage 6640 represents the UI 6670 after starting video superimpose and operating.In this stage, UI 6670 allows user to select him to want which video to carry out extracting using as prospect from, and he wants to use which video as the background in overlay video.UI 6670, by being presented at the pop-up menu 6680 with several optional UI project in PIP display 6682, provides various option.The pop-up menu 6680 of optional UI project comprises " Select Inset (selecting to insert display) ", and optional UI project 6655 (such as, button 6655), " Select Main (selecting main display) " optional UI project 6650 (such as, button 6650), " Cancel " optional UI project 6692 (such as, button 6692).
Select " Select Inset " button 6655 can cause UI 6670 that the prospect of the insertion video 6605 of the camera from local device (that is, the man attached the names of pre-determined candidates) is superimposed upon on the main video 6610 of background from the camera of remote equipment.On the other hand, " Select Main " button 6650 is selected can to cause UI 6670 that the prospect (that is, mountain range) of main for the background of the camera from remote equipment video 6610 is superimposed upon from the insertion video 6605 on the camera of local device.In certain embodiments, this causes the switching of two video push (feed), make the video at present in insertion viewing area 6605 will occupy most UI 6670, the video at present in main viewing area 6610 will be applied on ahorse main video.Select " Cancel " button 6692 can abandon video superimpose operation, and remove pop-up menu 6680 from PIP viewing area 6682.
6th stage 6600 was illustrated in the UI 6670 after user's selection " Select Inset " button 6655 (such as, by dubbing button 6655 with his finger 6695).By highlighting button 6655 in UI display 6670, indicate this selection.Some embodiments utilize different instruction display (such as, highlighting the text in the frame of selected item or selected item).
7th stage 6665 was illustrated in the UI 6670 after video superimpose operation.As shown in UI 6670, from viewing area 6605, extract the prospect (that is, the man attached the names of pre-determined candidates) inserting viewing area 6605.Eliminate from screen in addition and insert the window frame of display 6605 and background (that is, except described prospect other all).Finally, in such a manner prospect (that is, the man attached the names of pre-determined candidates) is mixed in background video 6610, makes it show as single video.Various different technology can be used to remove the background inserting video.Some embodiment identifications relative to other pixel not movement pixel, find invariable pattern or color, use the baseline image compared with the image comprising prospect and deduct difference or use different technology.
Although the example illustrations of Figure 66 illustrates when being superimposed on background display area 6610, the prospect of insertion viewing area 6605 is retained in the same position in UI, but this just superposes an example that can how to realize.Some embodiments move to ad-hoc location in UI 6670 (such as, one of center, corner, etc.) foreground video.Be similar to the feature shown in IV.A.1 and IV.A.3 joint, some embodiments allow the user of local device in UI, drag the foreground video of superposition back and forth, or change the size of the foreground video superposed.
Different technology can be used to determine which or which part of video image is video superimpose as above operation " prospect ".Which or which part (if any) of a this method determination video image of some embodiments is dynamic.Dynamic part is considered to " prospect ", because (that is, without motion) that the background of video image is normally static.In such embodiments, at specific a period of time inner analysis video image.If in described a period of time, the difference between the value of specific pixel is not more than the threshold value (such as, 5%, 10%, 15%) of regulation, so thinks that described specific pixel is static pixels.After analyzing each pixel in video image, the dynamic pixel (that is, not being static pixel) of video image is considered to " prospect " of video image.
An example of this technology of prospect that Figure 67 graphic extension can be performed by video conference manager 1604 or image processing manager 1608, that determine video image.Specifically, Figure 67 graphic extension shows a series of six image 6705-6730 of the video of personage and the tree of attaching the names of pre-determined candidates.In this example, assuming that described personage is not completely still on one's feet, may to speak.As mentioned above, each pixel in video image is analyzed, to determine that pixel is dynamic or static.Such as, whether the difference between the value determining the pixel 6735 in image 6705-6730 is greater than the threshold value of regulation.Here, because pixel 6735 represents the part ground except personage, therefore think that pixel 6735 is static.After analyzing all pixels in image 6705-6730, determine that the personage in image is dynamic, and the remainder of image is static.Thus, described personage is " prospect " that will be extracted by the operation illustrated above with reference to Figure 66.
3. exchange the video in picture-in-picture display
Some embodiments allow the user of two camera movement equipment during video conference, exchange two viewing areas (that is, in PIP display, insert viewing area and become background display area, background display area becomes inserts viewing area) in PIP display.During Figure 68 is illustrated in video conference, the insertion viewing area 6605 in exchange PIP display 6682 and the example of background display area 6610.
Figure 68 is according to eight operational phases of the UI 6670 of the equipment 6800 in Figure 66, and graphic extension exchanges PIP operation.Front three phases in Figure 68 is identical with the front three phases in Figure 66.In these stages, by utilizing the touch-screen of local device to select, user makes menu 6675 appear in UI 6670.
The fourth stage 6840 of Figure 68 is illustrated in the UI 6670 after user's selection " Flip PIP " button 6640 (such as, by dubbing button 6640 with his finger 6695).By highlighting button 6640 in UI display 6670, indicate this selection.Some embodiments utilize different instruction display (such as, highlighting the text in the frame of selected item or selected item).
Five-stage 6845 is illustrated in and starts to exchange the UI 6670 after PIP operation.Some embodiments are by rotary movement, and flash demo inserts the exchange of display 6605 and background display 6610.An example of this flash demo of Figure 68 graphic extension.In this example, by PIP display 6682 (before execution swap operation) at a surface thereof, the upset of new PIP display 6684 (after performing swap operation) the observation pane on its another side, can illustrate this animation.Observation pane rotates 180 ° around the vertical axis 6686 at the center being positioned at PIP display 6682.At five-stage 6845, observe pane and start to rotate around vertical axis 6686.
In the 6th stage 6850, observe pane and be expressed as rotating about 90 °.This indicates with the fine rule 6688 (that is, observing the edge of pane) being presented at screen center.The graphic extension of 7th stage 6855 observes the rotation of pane close to completing.The another side that new PIP display 6684 starts from observing pane occurs, and horizontal extension is to the screen being full of equipment.PIP display 6684 is included in two viewing areas 6605 and 6610 of carrying out after swap operation.Present the viewing area 6605 of the video (camera from local device) of the man that attaches the names of pre-determined candidates now in the background of PIP display 6684, present the display 6610 of the video (camera from remote equipment) on mountain range now in the prospect of PIP display 6684, described prospect overlaps in display 6605.8th stage 6860 represented completing of exchange display operation.
Those of ordinary skill will appreciate that the animation shown in Figure 68 is the one in the multiple possibility animation of PIP insertion/background swap operation.Such as, different embodiments can along horizontal rotational shaft observe pane, instantaneously exchange these two viewing areas, expansion a viewing area reduce another viewing area simultaneously, etc.Some embodiments provide a kind of always for the animation of swap operation, and other embodiment allows user to select from several animation, or use different animations (such as, passing through Stochastic choice).In addition, swap operation can cause the change of the image processing operations of two camera movement equipment, such as causes video conference manager 1604 to respond the input of user, changes proportional zoom and the synthesis of video.
4. lock onto corner
Some embodiments of the present invention allow the user of two camera movement equipment by the one or more viewing areas forming compound display that move around, amendment compound display.An example of this movement is described above in IV.A.1 joint.When PIP display comprises more than one insertion viewing area, this movement of inserting display is also possible.
This example performed during Figure 69 is illustrated in video conference.The example of graphic extension in Figure 69 is similar with the example of graphic extension in figure 3, two insertion viewing areas 6905 and 6910 are comprised except Figure 69 graphic extension moves around, instead of outside the insertion viewing area 6910 of the only PIP display 6965 of a this insertion viewing area.
In Figure 69, during the video conference of the long-distance user with another equipment, the UI 6960 of mobile device 6900 presents PIP display 6965.PIP display 6965 in Figure 69 comprises three video displays: the main display 6915 of background and two prospects insert display 6905 and 6910.In this example, the main display 6915 of background presents sings while the video of the personage played the guitar, and described video is assumed to be it is the video taken by the back side camera of remote equipment.Prospect inserts the video that display 6905 presents the personage holding racket, and in this example, this video is assumed to be it is the video taken by the back side camera of local device.Another prospect inserts the video that display 6910 presents the personage worn a hat, and in this example, this personage supposition is the personage being taken its video by the front camera of local device.PIP display 6965 is below the optional UI project 6970 (such as, button 6970) being labeled as " End Conference ", optional UI project 6970 allow user by selecting it and terminate video conference.
PIP display 6965 just presents a kind of mode of the synthesis view of the video taken by remote equipment and local device.Some embodiments can provide other synthesis view.Such as, replace having the comparatively overall background display 6915 from the video of remote equipment, larger background display 6915 can be the video from local device, and less prospect insertion display 6905 and 6910 can be the video from remote equipment.In addition, some embodiments allow local video and long-distance video to appear at and insert display 6905 and 6910 in side, background display 6915 at opposite side, or in the UI 6910 that is arranged side by side of these three displays all.In other embodiments, PIP display 6965 can comprise larger background display 6915 and/or less prospect insertion display.In certain embodiments, the mode of PIP display 6965 or acquiescence display mode can be specified by user.
Figure 69 by reference to five different operational phases 6920,6925,6930,6935 and 6940, two in the UI 6960 of graphic extension equipment 6900 movements of inserting one of viewing areas.First stage 6920 is illustrated in the UI 6960 during the video conference between the local user of equipment 6900 and the long-distance user of remote equipment.
Second stage 6925 graphic extension is by selecting to insert viewing area 6910, and user starts to lock onto corner operation.In this example, be placed on by finger 6950 and insert in viewing area 6910 Anywhere, make a choice.As shown in the figure, this selection is shown with the thick frame 6962 inserting viewing area 6910.Different embodiments can point out such selection by different modes, inserts viewing area 6910 as by highlighting, by making insertion viewing area 6910 swing, etc.
Phase III 6930 be illustrated in user start PIP display 6965 insertion viewing area 6910 from PIP display 6965 a region move to PIP display 6965 in another region after UI 6960.In this example, insert viewing area 6910 to have started to move, as shown in arrow 6955 from the lower right corner of PIP display 6965 to the upper right corner of PIP display 6965.After viewing area 6910 is inserted in selection, user, by dragging its finger 6950 towards the upper right corner of PIP display 6965, moves and inserts viewing area 6910.Some embodiments are provided in PIP display 6965 to move around inserts other technology of viewing area 6910.
Fourth stage 6935 be illustrated in user from the screen of equipment 6900 remove its finger 6950 after state UI 6960.In this state, still towards pointing mobile according to the user in the phase III, the upper right corner that the is PIP display 6965 of identification is moved to insert viewing area 6910.In other words, finger 6950 start insert viewing area 6910 towards PIP display 6965 the upper right corner movement after, even if after removing finger 6950, UI 6960 still keeps this movement.In order to keep described movement, the UI 6960 of some embodiments requires that the drag operation of user is greater than specific threshold quantity (such as, be greater than specific distance, or be longer than the specific time) before user removes its finger; Otherwise these embodiments can, after mobile a little insertion viewing area, make this insertion viewing area remain on its initial lower right position, or this insertion viewing area mobile.
But, even if although user is before insertion viewing area arrives its reposition, stopped his drag operation, some embodiments still allow to insert viewing area and continue mobile, but other embodiment requires that user keeps drag operation, until insert viewing area to arrive its reposition.Some embodiments provide mobile other technology inserting viewing area.Such as, some embodiments require user viewing area 6910 actual start mobile before, appointment will be directed to where viewing area 6910, etc.Some embodiments also by only with different angles inclination movement equipment, make viewing area can slide and lock onto corner.
Five-stage 6940 is illustrated in and inserts viewing area 6910 and arrive it and be positioned at UI 6960 after the reposition in the upper right corner of PIP viewing area 6965.In five-stage thick frame 6962 elimination instruction lock onto corner operation complete.
In order to make the movement of graphic extension in the above-mentioned 3rd, the 4th and five-stage 6930,6935 and 6940 easier, the UI 6960 of some embodiments adopts once user makes insertion viewing area 6910 move towards certain corner of PIP display 6965, just allows to insert the locking discipline of viewing area 6910 quick lock in this corner.Such as, when user exceedes threshold quantity towards particular corner dragging insertion viewing area 6910, the UI 6960 of some embodiments identifies the direction of motion inserting viewing area 6910, determine that described motion exceedes threshold quantity, thus automatically mobilely subsequently insert viewing area 6910, and the next grid point inserted in UI 6960 that viewing area 6910 can be locked into is inputted further without user.In certain embodiments, the unique mesh point provided for locking insertion viewing area 6910 is the grid point in four corners being positioned at PIP display 6965.Other embodiment provides other grid point of (such as, in PIP display 6965) in the insertion UI 6960 that viewing area 6910 can be locked into.
Other embodiment can not adopt grid point, make insert viewing area 6910 can be placed in PIP display in arbitrfary point.Embodiment other again provide allow user to open or close UI lock onto grid point feature.In addition, except the video taken from equipment, different embodiments can allow user to various project, and such as icon etc. perform and lock onto corner operation.As mentioned above, the movement of one or more viewing areas of compound display can cause the change of the image processing operations of two camera movement equipment, such as causes video conference manager 1604 to respond the input of user, again synthesizes the viewing area in compound display.
5. push and locking
The user of the two camera movement equipment of example illustrations explanation permission in Figure 69 inserts one of viewing areas two, moves to the corner that locks onto not being inserted into another corner that display occupies operate from a corner of PIP display.Some embodiments can realize inserting first the position that display moves to the second insertion display, also insert second the propelling movement feature that display is pushed to reposition.This example performed during Figure 70 is illustrated in video conference.
Figure 70 is by reference to six different phases 7020,7025,7030,7035,7040 and 7045 of UI 6960, and graphic extension inserts the corner of display from PIP display to the movement of not inserted another corner showing the PIP display occupied by another.First stage 7020 is illustrated in the UI 6960 during the video conference between the local user of this equipment and the long-distance user of remote equipment.UI 6960 in Figure 70 represents and after beginning video conference, the PIP that the PIP shown in the first stage of Figure 69 is identical shows 6965.In this example, the video taken by the equipment of local user is displayed on and inserts in viewing area 6905 and 6910, and the video taken by the equipment of long-distance user is displayed in background display area 6915.
Second stage 7025 graphic extension user by selecting inserts viewing area 6905, starts to lock onto corner operation.In this example, be placed on any place of inserting in viewing area 6905 by finger 7055, select.As shown in the figure, this selection is shown with the thick frame 7065 inserting viewing area 6905.The different mode of different embodiments indicates such selection, as by highlighting district 6905, by making viewing area 6905 swing, etc.
Phase III 7030 graphic extension is as shown in arrow 7050, start to shift to the lower right corner of PIP display 6965 (by during phase III inserting the lower left corner of viewing area 6905 from PIP display 6965 user, insert after viewing area 6905 in selection, drag his finger 7055 towards the lower right corner of PIP display 6965) after UI 6960.Some embodiments are provided in PIP display 6965 to move around inserts other technology of viewing area 6905.
Fourth stage 7035 is illustrated in the UI 6960 inserted after contact insertion viewing area 6910, viewing area 6905.When contacting, insert viewing area 6910 to move towards the corner that the next one is nearest.In this example, direction (as shown in the arrow 7075) movement that viewing area 6910 starts the upper right corner along PIP display 6965 is inserted.With the thick frame 7070 inserting viewing area 6910, show the activation of this push operation.Different embodiments can indicate this activation by different modes, as by highlighting district 6910, etc.
Five-stage 7040 be illustrated in insert viewing area 6905 be locked into the state be previously inserted into after the lower right corner that viewing area 6910 occupies under UI.In this example, this insertion viewing area is still moved towards the upper right corner of PIP display 6965.In addition, thick frame 7065 is no longer shown.As long as user's drag operation of phase III 7030 is greater than the threshold value making insertion viewing area 6905 lock onto right corner to fall, just insertion viewing area 6910 is removed from its corner, and lock onto next minimum corner always.
Some embodiments comprise to be determined to adopt which kind of mode to push one group of rule of the second insertion viewing area 6910.In Figure 70 when graphic extension, some embodiments manage the rotation continuing to keep inserting viewing area.That is, move in the counterclockwise direction owing to inserting viewing area 6905, therefore viewing area 6910 is also moved counterclockwise.The classification of the possible position that some embodiments provide pushed insertion viewing area 6910 to move to, and select in this list first position be not occupied.Such as, when the insertion viewing area being positioned at the lower right corner is pushed by the insertion viewing area from the lower left corner, the upper right corner may be first position in this list.But, if the 3rd insertion viewing area is positioned at the upper right corner, so some embodiments can move to the next option (such as, the upper left corner, center or the lower left corner) in list.Other embodiment can insert viewing area along with the second insertion viewing area pushes the 3rd together, makes equipment not need to determine the reposition of the 3rd insertion viewing area.
6th stage 7045 was illustrated in inserts viewing area 6910 and arrives it and be positioned at UI 6960 after the reposition in the upper right corner of PIP viewing area 6965.In this stage, the elimination instruction of thick frame 7070 locks onto corner-push operation and completes.Be similar to the corner that is pushed to illustrated with reference to Figure 68 to operate, the movement of one or more viewing areas of compound display can cause the change of the image processing operations of two camera movement equipment, such as cause video conference manager 1604 to respond the input of user, again synthesize the viewing area in compound display.
6. rotate
When the user of the mobile device for video conference rotates this equipment in the session, the PIP display presented during some embodiments are rotated in video conference.Figure 71 graphic extension is when equipment 7100 is rotated to horizontal level from upright position, and the UI of this equipment shows the rotation of 7175.When the long limit of screen is vertical, equipment 7100 is held by perpendicular, and when the long limit level of screen, equipment 7100 is held by horizontal.In the example of graphic extension in Figure 71, longitudinal views of optimizing from perpendicular the holding for equipment of UI display 7175 rotate to as horizontal the holding of equipment 7100 and the transverse views optimized.This spinfunction make when mobile device 7100 by perpendicular hold or horizontal hold time, user can both watch with the UI 7175 of stand up position display.In Figure 71, the example of graphic extension is similar to the example of graphic extension in Figure 34, comprises two insertion viewing areas and be not a PIP display of inserting viewing area except Figure 71 graphic extension rotation.
In Figure 71, during the video conference of the long-distance user with another mobile device, the UI 7175 of mobile device presents PIP display 7180.PIP display 7180 in Figure 71 comprises three video displays: the main display 7115 of background and two prospects insert display 7110 and 7160.In this example, the main display 7115 of background presents the video on mountain range, and described video supposition is the video taken by the front of remote equipment or back side camera.Prospect inserts the video that display 7110 presents the smiling face in room, and described video supposes to be taken by the front of local device or back side camera.Another prospect inserts the video that display 7160 presents the guitar player of singing, and described guitar player supposition is the guitar player just being taken its video by another camera of local device.PIP display 7180 is " closing session " button 7155 below, and user can select this button to terminate video conference (such as, by singly referring to dub).This PIP display just presents a kind of mode of the synthesis view of the video taken by remote equipment and local device.Some embodiments can provide other synthesis view, and such as tiled view or different PIP show.
Figure 71 according to six different operational phases 7120,7125,7130,7135,7140 and 7145, the rotation of graphic extension UI 7175.First stage 7120 is illustrated in the UI7175 during the video conference between the local user of this equipment and the long-distance user of remote equipment.
Second stage 7125 is illustrated in the UI 7175 that user starts after banking equipment 7100.In this example, equipment 7100 has started equipment 7100 to be held by horizontal, as shown in arrow 7185 from erecting to hold to tilt to.The outward appearance of UI 7175 does not change.In other cases, user may change into want equipment 7100 from by horizontal hold to tilt to held by perpendicular, in these cases, UI display 7175 is switched to the vertical view optimized from the view of level optimization.
Phase III 7130 is illustrated in equipment 7100 from by the perpendicular UI 7175 held the state after tilting to by horizontal holding.In this state, the outward appearance of UI display 7175 does not still change.In certain embodiments, be tilted beyond threshold quantity at equipment 7100, and after remaining above threshold quantity a period of time, triggered rotary manipulation.In the example of graphic extension in Figure 71, assuming that threshold quantity and rotary speed can not make UI show 7175 rotate, until equipment be placed on horizontal level after short period interval.Different embodiments has different threshold quantity for triggering rotary manipulation and stand-by period.Such as, some embodiments can have the threshold value of so low triggering rotary manipulation, make the orientation of not tube apparatus 7100, all make UI 7175 seem as it always shows with stand up position.In other embodiments, the user of equipment 7100 can specify when to trigger rotary manipulation (such as, being arranged by menu prioritizing selection).In addition, some embodiments after equipment is tilted beyond threshold quantity, can not postpone described rotation.In addition, different embodiments can allow to trigger rotary manipulation by different modes, as by the switch switched on mobile device, by sending voice commands, according to the selection undertaken by menu, etc.
Fourth stage 7135 is illustrated in the UI 7175 started after rotary manipulation.Some embodiment flash demo rotational display districts, to provide the feedback about rotary manipulation to user.The example of a kind of animation that Figure 71 graphic extension is such.Specifically, Figure 71 its fourth stage 7135 show viewing area 7110,7115 start together with 7160 rotate.Viewing area 7110,7115 and 7160 rotates around the axle 7165 (that is, z-axis) at the center through UI display 7175.Viewing area 7110,7115 is rotated identical quantity with 7160, but rotates along the direction contrary with the rotation (such as, by the inclination of equipment 7100) of equipment 7100.In this example, because equipment 7100 has been rotated in a clockwise direction 90 ° (by becoming horizontal hold from perpendicular holding), therefore rotary manipulation can make viewing area 7110,7115 and 7160 half-twist in the counterclockwise direction.When viewing area 7110,7115 and 7160 rotates, viewing area 7110,7115 and 7160 reduces pari passu, with applicable UI display 7175, viewing area 7110,7115 and 7160 still can be appeared in UI 7175 completely.Some embodiments can provide the message (such as, by display words " Rotating (rotation) ") of the state of indicating equipment 7100.
Five-stage 7140 is illustrated in viewing area 7110,7115 and 7160 and is rotated counterclockwise UI 7175 after 90 ° from longitudinal view to transverse views.In this stage, viewing area 7110,7115 and 7160 is rotated, but is not also deployed into the whole width of UI 7175.Arrow 7170 points out the ending at five-stage, and viewing area 7110,7115 and 7160 will start side direction and launch, with the whole width of applicable UI 7175.Different embodiments can not comprise this stage, because side by side can carry out described expansion with the rotation in fourth stage 7135.
6th stage 7145 was illustrated in viewing area 7110,7115 and 7160 and is unfolded, with the UI 7175 after the whole display occupying UI 7175.As mentioned above, other embodiment can differently realize this rotation.Concerning some embodiments, only the screen rotation of equipment is exceeded threshold quantity and just can trigger described rotary manipulation, and the orientation of not tube apparatus 7100.
In addition, other embodiment can be provided for the different animations indicating rotary manipulation.The rotary manipulation performed in Figure 71 relates to the central rotation of UI display 7175 around UI display 7175.On the other hand, viewing area can be made to rotate separately around the central shaft of their viewing areas separately.Illustrate a kind of such method in Figure 72, Figure 72 represents the alternative approach of the rotation of the PIP viewing area 7180 of flash demo UI 7175.The PIP display of graphic extension in Figure 72 and the PIP of graphic extension in Figure 71 show 7180 identical.
Figure 72 shows the rotation of 7180 according to six different operational phases 7120,7125,7130,7220,7225 and 7230, graphic extension PIP.The operation of the front three phases of UI 7175 with illustrate in the UI 7175 such as in Figure 71 before the operation of three phases identical.In the phase III of Figure 71 and 72, equipment all becomes horizontal hold from perpendicular holding, and the rotation of UI 7175 does not also start.
The alternative approach rotated described in fourth stage 7220 graphic extension flash demo.In fourth stage, rotary manipulation starts.Specifically, fourth stage 7220 shows the beginning of the rotation of viewing area 7110,7115 and 7160.Viewing area 7110,7115 and 7160 rotates around the axle 7250 (that is, z-axis) at the center through each viewing area respectively.Viewing area 7110,7115 is rotated identical amount with 7160, but rotates along the direction contrary with the rotation (such as by the inclination of equipment 7100) of equipment 7100.In this example, because equipment 7100 has been rotated in a clockwise direction 90 ° (by becoming horizontal hold from perpendicular holding), therefore rotary manipulation can make viewing area 7110,7115 and 7160 half-twist in the counterclockwise direction.When viewing area 7110,7115 and 7160 rotates, they are also scaled, with applicable UI display 7175, viewing area 7110,7115 and 7160 still can be appeared on UI 7175 completely.
Five-stage 7225 is illustrated in viewing area 7110,7115 and 7160 and is all rotated counterclockwise UI 7175 after 90 ° from longitudinal view to transverse views.In this stage, viewing area 7110,7115 and 7160 is rotated, but is not also deployed into the whole width of UI 7175, or arrives their final position.The final position of viewing area in PIP display 7115 is determined (such as by the position as shown in 7115 at PIP in the viewing area as shown in the first stage 7120, insert the lower left corner of display 7110 in PIP display 7180, and insert the lower right corner of display 7160 in PIP display 7180).
Arrow 7170 points out the ending at five-stage, and viewing area 7115,7110 and 7160 will start side direction and launch, until main viewing area 7115 is applicable to the whole width of UI 7175.In addition, arrow 7255 points out that inserting viewing area 7110 and 7160 will move, thus arrives them and show final position in 7180 at PIP.In other words, insert viewing area 7110 and the downward lower left corner towards PIP display 7180 is moved, and another inserts the lower right corner that PIP display 7180 is shifted in viewing area 7160.Different embodiments can differently realize this animation, such as, by utilizing locking and the push operation of graphic extension in Figure 71.6th stage 7230 was illustrated in viewing area 7110,7115 and 7160 and has been unfolded thus has occupied the whole display of UI 7175 and the UI 7175 moved to after their final position.
As mentioned above, other embodiment can differently realize this rotation.Such as, similar with graphic extension in Figure 36 and 37, some embodiments provide a kind of rotary manipulation, wherein show the directed change of the viewing area of the video taken by local device, with be reflected in rotary manipulation is carried out to local device after the orientation of local device, some embodiments provide a kind of rotary manipulation, wherein show the directed change of the viewing area of the video taken by remote equipment, with be reflected in rotary manipulation is carried out to remote equipment after the orientation of remote equipment, some embodiments provide wherein viewing area 1155 to be retained in the rotary manipulation of same position, some embodiments provide different layouts in viewing area (such as, the layout of the viewing area 1155 of Figure 12), or their combination.
Concerning some embodiments, only make the screen rotation of equipment exceed threshold quantity and just can trigger rotary manipulation, and the orientation of not tube apparatus 7100.Described above in addition, local device and remote equipment, by controlling communication port, notify the rotary manipulation carried out an equipment in two equipment, mutually with the amendment allowing the video of another equipment to a described equipment to carry out any correspondence.In addition, the animation of rotary manipulation also can cause the change of the image processing operations of the operation of camera or two camera movement equipment, such as make video conference manager 1604 again synthesize one or more viewing areas of the one-tenth different angles in UI 1105, and proportional zoom is presented at the image in one or more viewing area.
7. select viewing remote view
As mentioned above, some embodiments allow the user of two camera movement equipment before beginning video conference, or when starting video conference, select which camera for video conference.Replace this ability, or be combined with this ability, some embodiments allow the user of this equipment to select between two videos, described two videos be show in video conference and or from two video cameras of remote equipment, or two video cameras of local device from user.A video in two long-distance videos is selected in Figure 73 graphic extension in a meeting, and a video in two local videos is selected in Figure 74 graphic extension in a meeting.
Figure 73 according to six operational phases 7335,7340,7345,7350,7355 and 7360 of the UI 7375 be presented on local device 7300, the selection of long-distance video described in graphic extension.First stage 7335 graphic extension have with have two cameras mobile device long-distance user video conference during, the UI 7375 of the initial p IP that presents display 7390.
As shown in the first stage 7335, initial p IP display 7390 comprises three displays: the main display 7315 of background and two prospects insert display 7305 and 7310.Background display 7315 occupies most PIP viewing area 7390, and prospect insertion display 7305 and 7310 overlaps in the part background display 7315 on UI 7375 respectively.In this example, background display 7315 be presented on microphone before the video of personage, described video supposition is the video taken by the back side camera of remote equipment.First prospect inserts the video that display 7305 presents the face of man, and in this example, the supposition of this video is the video taken by one of camera of local device 7300.Second prospect inserts the video that display 7310 presents the personage worn a hat, and in this example, the supposition of this video is the video taken by the front camera of remote equipment.
Initial p IP display 7390 just presents a kind of mode of the synthesis view of the video taken by the camera of local device and remote equipment.Some embodiments can provide other synthesis view.Such as, background display can present the video of one of the camera from local device, and less prospect inserts the video showing front camera and the back side camera that can present from remote equipment.In addition, in some cases, PIP display can only include all from a background video display and a foreground video display of remote equipment.In certain embodiments, PIP display mode or acquiescence display mode can be specified by user.
Second stage 7340 graphic extension video selects the beginning of operation.In this example, by calling one group of optional UI project that will be presented in PIP display 7390, this operation is initiated.Described one group of optional UI project presents the option for selecting display long-distance video.In certain embodiments, by selecting any viewing area of the broadcasting long-distance video on (such as, by touching) UI 7375, described one group of optional UI project is called.In other embodiments, by selecting any place on (such as, by touching) UI 7375, each project described can be called.Replace this call operation, or be combined with this call operation, some embodiments also allow user to pass through other operation, as by different contact action, or utilize one or more other physics inputs of equipment, call described one group of optional UI project.
Phase III 7345 shows UI 7375, UI 7375 and has one group of optional UI project 7380 for selecting long-distance video called.In this example, one group in pop-up menu form optional UI project 7380 is displayed in PIP viewing area 7390, overlaps in this PIP display.Described one group of optional UI project 7380 (they can be realized as selectable buttons) comprises " Select R1 " optional UI project 7320 (such as, button 7320), " Select R2 " optional UI project 7325 (such as, button 7325), " Select Both " optional UI project 7330 (such as, button 7330), and " Cancel " optional UI project 7385 (such as, button 7385).In this example, select " Select R1 " button 7320 that UI 7375 can be made to show by the video (being presented on background to show in 7315) of the back side camera shooting of remote equipment.Select " SelectR2 " button 7325 that UI 7375 can be made to show by the video (prospect that is presented on is inserted in display 7310) of the front camera shooting of remote equipment.Select " Select Both " button 7330 that UI 7375 can be made to continue the front camera of display by remote equipment and two videos of back side camera shooting.Select " Cancel " button 7385 can cancel this operation.In certain embodiments, the video taken by local device is not by the impact of the selection carried out on this menu.
Fourth stage 7350 is illustrated in user and have selected UI 7375 after " Select R1 " button 7320 (such as, by dubbing button 7320 with his finger 7365).By highlighting the button 7320 on UI 7375, indicate this selection.Some embodiments utilize different instruction display (such as, highlight the frame of selected item, or the text in selected item).
Five-stage 7355 is illustrated in user and have selected video from R1 so that the animation of the UI 7375 after display.In this example, by such as shown in arrow 7370, make unwanted prospect insert viewing area 7310 and skid off the right hand edge that PIP shows 7390, UI 7375 removes unwanted prospect and inserts viewing area 7310.Other embodiment utilizes different animations to eliminate unwanted insertion viewing area, such as makes this insertion viewing area fade out or fades out, move this insertion viewing area or eliminate this insertion viewing area simply immediately along different directions.
After 6th stage 7360 was presented at and terminates video selection operation, the UI 7375 during video conference.Video viewing area 7310 is no longer presented on UI 7375.In this stage, UI7375 presents the video viewing area 7315 that new PIP display 7395, PIP display 7395 comprises main display as a setting, and as inserting the video viewing area 7305 of display.
In certain embodiments, this video selects operation that remote equipment also can be made only to show the video of selection, but in other embodiments, video selection operates remote equipment without any impact.In certain embodiments, this video selection operation can make remote equipment stop transmitting unwanted video to local device.In fact, in certain embodiments, lid video selection operation can make the camera of remote equipment stop the unwanted video of shooting.In certain embodiments, the user of remote equipment can veto these impacts on remote equipment.
Example above illustrates that the remote view of selection is the situation of the remote view be presented in the main display of background.In certain embodiments, when user selects to be presented at the remote view inserted in one of display, the remote view of selection is displayed in the main display of background.In this case, some such embodiments utilize and animation like the animated type that shows in Figure 68.In addition, the selection of long-distance video can cause the change of the image processing operations of local two camera movement equipment, such as makes video conference manager 1604 respond the input of user, one or more long-distance videos of only synthesis selection in compound display.
8. select viewing local view
Figure 74 according to six operational phases 7435,7440,7445,745,7455 and 7460 of the UI 7475 be presented on local device 7400, the selection of graphic extension local video.First stage 7435 graphic extension UI 7475, UI 7475 have with have at least one camera mobile device long-distance user video conference during the initial p IP that presents show 7490.PIP display 7490 and the PIP in the first stage 7335 in Figure 73 show similar, except being different from Figure 73, background display 7415 presents the video of the man taken by the camera of remote equipment, the prospect in left side is inserted display 7410 and is presented the video holding the personage of guitar taken by the back side camera of local mobile device, and the prospect on right side is inserted display 7405 and presented outside the video of the man worn a hat taken by the front camera of local mobile device 7400.Thus, an only display long-distance video, and show two local videos.
Second stage 7440 graphic extension video selects the beginning of operation.In this example, to being presented in PIP display 7490 by calling, for selecting one of display long-distance video group of optional UI project, initiating this operation.In certain embodiments, by selecting any viewing area of the broadcasting local video in (such as, by touching) UI display 7475, described one group of optional UI project can be called.In other embodiments, by selecting any place in (such as, by touching) UI display 7475, each project described can be called.Replace this call operation, or be combined with this call operation, some embodiments also allow user to pass through other operation, as by different contact action, or utilize one or more other physics inputs of equipment, call described one group of optional UI project.
Phase III 7445 shows UI 7475, UI 7475 and has one group of optional UI project 7480 for selecting local video called.In this example, one group in pop-up menu form optional UI project 7480 is displayed in PIP viewing area 7490, overlaps in this PIP display.Described one group of optional UI project 7480 comprises " Select L1 " optional UI project 7420 (such as, button 7420), " Select L2 " optional UI project 7425 (such as, button 7425), " Select Both " optional UI project 7430 (such as, button 7430), and " Cancel " the optional UI project 7485 (such as, button 7485) for cancelling this operation.In this example, select " Select L1 " button 7420 that UI 7475 can be made to show by the video (prospect that is presented on is inserted in display 7410) of the back side camera shooting of local device.Select " SelectL2 " button 7425 that UI 7475 can be made to show by the video (prospect that is presented on is inserted in display 7405) of the front camera shooting of local device.Select " Select Both " button 7430 that UI 7475 can be made to continue two videos of display by two cameras shootings of local device, and select " Cancel " button 7485 can cancel this operation.In certain embodiments, the video taken by remote equipment is not by the impact of the selection undertaken by this menu.
Fourth stage 7450 is illustrated in user and have selected UI 7475 after " Select L2 " button 7425 (such as, by dubbing button 7425 with his finger 7465).By highlighting the button 7425 on UI 7475, indicate this selection.Some embodiments utilize different instruction display (such as, highlight the frame of selected item, or the text in selected item).
Five-stage 7455 is presented at user and have selected video from L2 so that the animation of the UI 7475 after display.In this example, by such as shown in arrow 7470, make unwanted prospect insert display 7410 and skid off the left hand edge that PIP shows 7490, UI 7475 removes unwanted prospect and inserts display 7410.Other embodiment utilizes different animations to eliminate unwanted insertion viewing area, such as makes this insertion viewing area fade out or fades out, move this insertion viewing area or eliminate this insertion viewing area simply immediately along different directions.
6th stage be presented at video select operation after, the UI7475 during video conference.Video viewing area 7410 is no longer on UI 7425.In this stage, UI 7475 presents the long-distance videos display 7415 that new PIP display 7495, PIP display 7495 comprises main display as a setting, and shows 7405 as the local video inserting display.In certain embodiments, this video selects the operation only local display of impact, because two videos are still transmitted to remote equipment.Other embodiment stops the camera capture video from removing.
Example above illustrates that the local view of selection is the situation of the view be presented in the main display of background.In certain embodiments, when user selects to be presented at the local view inserted in one of display, the local view of selection is displayed in the main display of background.In this case, some such embodiments utilize and animation like the animated type that shows in Figure 68.When the local view in the main display of background is removed, utilization is inserted remote view by other embodiment.
Be similar to the remote view illustrated above with reference to Figure 73 and select operation, the selection of local video can cause the change of the image processing operations of local two camera movement equipment, video conference manager 1604 is such as made to respond the input of user, one or more long-distance videos of only synthesis selection in compound display.The selection of local video also can cause the change of the operation of one or more cameras of local device.Such as, some embodiments make the camera of unwanted video stop transmitting unwanted video to remote equipment, and other embodiment makes this camera stop the unwanted video of shooting.
9. select to transmit local view
Each height joint above illustrates the amendment to video display in meeting.Some embodiments also allow the user of two camera movement equipment before beginning video conference, select which camera for video conference.Before Figure 75 is illustrated in meeting, from two videos that the two camera movement equipment by user are taken, select a video, for the operation of video conference.
Figure 75 is according to eight operational phases of UI 7500, and graphic extension is used for the selection of the local video of video conference.The UI 7500, UI 7500 of the two camera movement equipment 7518 of first stage 7502 graphic extension has the initial p IP presented after user asks the video conference of the long-distance user of beginning and mobile device and shows 7542.
As shown in the first stage 7502, initial p IP display 7542 comprises two video displays: the main display 7520 of background and prospect insert display 7522.The main display 7520 of background and prospect insert display 7522.The main display of background 7520 occupies most of display screen of equipment, and prospect to insert display 7522 less and overlap in the main display of background.In this example, background display 7520 presents the video of the personage holding guitar, and the supposition of this video is the video taken by the back side camera of equipment.Prospect inserts the video that display 7522 presents the personage worn a hat, and in this example, the supposition of this video is the video taken by the front camera of equipment.
Initial p IP display 7542 just presents a kind of mode of the synthesis view of the video taken by the camera of local device.Some embodiments can provide other synthesis view.Such as, background display can present the video of the front camera from equipment, and less prospect inserts the video that display can present the back side camera from equipment.In addition, some embodiments allow two videos to appear in UI 7500 two viewing area (such as, left and right display window, or display window up and down) side by side, or in the viewing area of two diagonal angle arrangements.In certain embodiments, PIP display mode or acquiescence display mode can be specified by user.Be the optional UI project 7540 (such as, button 7540) being labeled as " End Conference " below PIP display, optional UI project 7540 allows this project of user by selecting and terminates video conference.
In the first stage 7502, the user of mobile device 7518 has asked to carry out video conference with long-distance user, and is waiting for that long-distance user responds." Preview, Waiting for response... (preview, positive wait-for-response ...) " in the bottom surface of display frame explain graphic extension this waiting period.
Second stage 7504 graphic extension video selects the beginning of operation.In this example, by calling one group of optional UI project that will be presented in PIP display 7542, this operation is initiated.Described one group of optional UI project presents for selecting local video, to send the various options of the remote equipment of video conference to.In certain embodiments, while wait long-distance user response, by selecting any place in (such as, touching) UI display 7500 in the time before meeting, described one group of optional UI project can be called.Replace this call operation, or be combined with this call operation, some embodiments also allow user to pass through other operation, as by different contact action, or utilize one or more other physics inputs of equipment, call described one group of optional UI project.
Phase III 7506 graphic extension has one group of UI 7500 selecting the optional UI project 7526 of video for user called.In this example, one group in pop-up menu form optional UI project 7526 is presented in PIP viewing area 7542, and overlaps in PIP display.In this example, described one group of optional UI project comprises: " Transmit L1 " project 7528 (such as, button 7528); " Transmit L2 " project 7530 (such as, button 7530); " Transmit Both " project 7532 (such as, button 7532); " Cancel " project 7534 (such as, button 7534).In this example, select " Transmit L1 " button 7528 can make UI 7500 during video conference, only the video that the back side camera by equipment is taken is sent to remote equipment.Select " Transmit L2 " button 7530 can make UI 7500 during video conference, only the video that the front camera by equipment is taken is sent to remote equipment.Select " Transmit Both " button 7532 can make UI 7500 that two videos that the front and back camera by equipment is taken are sent to the long-distance user of video conference, and select " Cancel " button 7534 can cancel this operation.
Fourth stage 7508 is illustrated in user and have selected UI 7500 after " Transmit L1 " button 7528 (such as, by dubbing button 7528 with his finger 7524).By highlighting the button 7528 on PIP viewing area 7542, indicate this selection.Some embodiments utilize different instruction display (such as, highlighting the text in the frame of selected item or selected item).
Five-stage 7510 is illustrated in the video that user have selected the back side camera of equipment, with the animation of the UI 7500 after sending remote equipment to.In this example, by such as shown in arrow 756, make unwanted prospect insert display 7522 and skid off the right hand edge that PIP shows 7542, UI 7500 removes unwanted prospect and inserts display 7522.In the 6th stage 7512, insert display 7522 and be completely removed from PIP viewing area 7542.Different embodiments utilizes different animations to remove unwanted viewing area, such as makes this viewing area fade out or fades out, move this viewing area or eliminate this viewing area immediately simply along different directions.
7th stage 7514 was illustrated in the animation that long-distance user has accepted the UI 7500 after video conference request.By eliminating " Preview, the Waiting for response... " annotation in display frame, highlight the acceptance of video conference request.In this stage, the background display area 7520 as the video of the back side camera from equipment narrows down to the lower left corner of PIP viewing area 7542 gradually, as shown in arrow 7538.Background display 7520 is reduced, and makes UI 7500 can show the viewing area 7544 comprising the video of the camera from long-distance user after viewing area 7520.Some embodiments narrow down to different positions local camera, utilize the tiling compound display of two videos of display, or make remote view become the insertion viewing area of PIP display.
8th stage 7516 represented the UI 7500 after completing video and selecting to operate.UI 7500 presents new PIP and shows the insertions display 7520 that 7546, PIP display 7546 comprises the video from local device shooting, and the background display 7544 of the video sent from remote equipment.
B. bandwidth & frame rate
In certain embodiments, local mobile device can be made to redistribute distribute to the bandwidth of each video taken by two of local mobile device cameras (that is, front camera and back side camera) during video conference to the adjustment of the size of the viewing area of remote-moving apparatus.Two examples that this bandwidth between two cameras that Figure 76 is illustrated in local device is redistributed.
Each example in Figure 76 relates to the UI 7635 of the back side camera sensor 7605 of local device, the front camera sensor 7610 of local device, the video conference module 7615 of local device and remote-moving apparatus 7620.Back side camera sensor 7605 and front camera sensor 7610 catch the video of respective back surfaces camera from local device and front camera.The video of catching is sent to video conference module 7615, and video conference module 7615 processes the video of catching, and they are sent to remote equipment, to show in UI 7635.
In Figure 76, the UI 7635 of remote equipment presents compound display.Compound display represents the video taken by the front camera of local device and back side camera.From video capture tree and the man that wears a hat of front camera, and from the video capture mountain landscape of back side camera.As shown in figure 76, according to the arrangement of the viewing area for display video and the size of viewing area, available many different modes show this two videos in UI 7635.In each example, video conference module 7615 according to the relative size of the viewing area in remote equipment, distributes total output bandwidth at first between each video.Specifically, the video be presented in the larger viewing area in UI 7635 is assigned with the total bandwidth of major part, and the video be presented in the less viewing area in UI7635 is assigned with the bandwidth of smaller portions.In certain embodiments, when video is displayed in the viewing area of formed objects, between these two videos, divide total output bandwidth equally.
The amount distributing to the bandwidth of each video in these two videos can affect the mode processing each video most.Such as, video may need the bandwidth larger than the bandwidth distributing to this video.In this case, the frame rate of video is adjusted, or the size of video image is by scale smaller, to adapt to less bandwidth.The frame rate reducing video causes video to seem " discontinuous ", and the size of scale smaller video image can reduce the region showing this video.So when video is assigned with a certain amount of bandwidth, some embodiments adjust the frame rate of this video, the size of scale smaller video image, or the combination carrying out both, to guarantee to transmit this video in the bandwidth of distributing.Those of ordinary skill in the art will appreciate that the adjustment alterable of frame rate and average frame size, to obtain best overall video quality, still guarantees to transmit this video in the bandwidth of distributing simultaneously.
The example (1) of Figure 76, with two operational phases of UI 7635, illustrates a kind of situation that bandwidth is redistributed.The UI 7635 of the remote equipment 7620 in the first stage 7670 presents the compound display comprising two displays: a top at UI 7635, another is in the bottom of UI 7635.In this example, the viewing area 7625 at top shows the video taken by the front camera of local device, and the viewing area 7630 of bottom shows the video taken by the back side camera of local device.As shown in the first stage 7670, the viewing area 7625 at top is greater than the viewing area 7630 of bottom.Thus the video from the front camera of local device is assigned with the bandwidth of 80%, the video from the back side camera of local device is assigned with the bandwidth of 20%.In order to ensure in the bandwidth of distributing, the video of the back side camera from local device can being sent to remote equipment from local device, adjusting frame rate and/or the scaling size of this video.
The user that second stage 7675 is illustrated in remote equipment increases the size of viewing area, bottom, make the size of viewing area, top 7625 and viewing area, bottom 7630 be similar to identical after UI 7635.As a result, each video is redistributed the total bandwidth of 50% by video conference module 7615.
The example (2) of Figure 76, with two operational phases of UI 7635, illustrates the another kind of situation that bandwidth is redistributed.In the first stage 7680 of example (2), UI 7635 presents PIP display.This PIP display comprises two displays: the main viewing area 7650 of background and prospect insert viewing area 7655.The main viewing area of background 7650 occupies most PIP and shows, and prospect to insert viewing area 7655 less and overlap on the main viewing area 7650 of background.In this example, background display area 7650 presents the video taken by the front camera of this equipment.Insert viewing area 7655 and present the video taken by the back side camera of this equipment.As shown at this stage, background display area 7650 is greater than inserts viewing area 7655.Thus the video from the front camera of equipment is assigned with the bandwidth of 80%, the video from the back side camera of equipment is assigned with the bandwidth of 20%.In order to ensure in the bandwidth of distributing, the video of the back side camera from local device can be sent to remote equipment from local device, the frame rate of adjustment video and/or scaling size.
The user that second stage 7685 is illustrated in remote equipment has exchanged the UI 7635 after the display of these two videos.Specifically, background display area 7660 presents the video taken by the back side camera of equipment now, and insertion viewing area 7665 presents the video taken by the front camera of equipment now.Because the size of the viewing area of these two videos changes, be therefore assigned with the bandwidth of 80% from the video of the back side camera of equipment, the video from the front camera of equipment is assigned with the bandwidth of 20%.Thus, be reduced from the frame rate of the video of the front camera of local device and/or the large young pathbreaker of scaling.Those of ordinary skill in the art will appreciate that the bandwidth distribution illustrated in Figure 76 is example, and during video conference, other technology of distributing bandwidth between two cameras is also possible.
1. frame rate controls
Be similar to the frame rate control operation in meeting described above, some embodiments may wish to adjust separately or remain on the speed transmitting the video image taken by every portion camera of two camera movement equipment to another equipment in video conference.Some such embodiments provide similar techniques described above.Such as, some embodiments, by the VBI of the sensor assembly 415 of adjustment every portion camera, control the frame rate of every portion camera.Other embodiment also provides other technology, and the frame that such as can be performed by the sensor assembly 415 of every portion camera and/or general transmission buffer 3120 abandons.
2. the bandwidth of passing ratio convergent-divergent controls
As mentioned above, during the video conference between two camera movement equipment and another equipment, in certain hour amount, the quantity (that is, network connects bandwidth) being connected the view data that can transmit by one or more network is limited.In order to maximize and maintain the throughput that network connects, the different embodiments of two camera movement equipment provide different modes to control in special time amount, are connected the quantity of view data transmitted by network.In certain embodiments, throughput is the Mean Speed transmitted by the success message of communication port (such as, network connects).
When transmitting the image taken by two cameras of two camera movement equipment, a kind of such method adjusts the size from the image of one or two camera of two camera movement equipment, to control the quantity being connected the view data transmitted by network.The size of the image that some embodiment scale smaller are taken by two camera movement equipment, to be reduced by the quantity that network connects the view data transmitted, and the size of other embodiment upscale image, to increase through the quantity that network connects the view data transmitted.
Some embodiments, when convergent-divergent, keep the depth-width ratio (that is, even convergent-divergent) of image.Other embodiment zoomed image, makes the depth-width ratio of the image after convergent-divergent be different from the depth-width ratio (that is, being out of shape convergent-divergent) of original image.
In addition, proportional zoom can be carried out in the different phase of image processing process.The proportional zoom of some embodiments can be undertaken by camera sensor.In such embodiments, the multirow of the discardable image of camera sensor or multi-column data (that is, pixel value).In the embodiment that some are such, remaining view data by interpolation, with the profile of smoothed image.
The proportional zoom of other embodiment is performed by the scaler module 455 of CIPU 400.In certain embodiments, proportional zoom is performed by video conference manager 1604, and as mentioned above, in other embodiments, proportional zoom is performed by encoder.Thus, the different embodiments of two camera movement equipment differently carry out proportional zoom.
3. Bit-Rate Control Algorithm
Some embodiments provide different mechanism to manage bit rate to the Video coding that the camera by two camera movement equipment is taken.In certain embodiments, two camera movement equipment comprises the rate controller for every portion camera.Some embodiments provide fixed bit rate Managed Solution.According to this scheme, each rate controller is set to fixed bit rate, and the gross bit rate making the video from the camera of two on mobile device is constant.Other embodiment provides precedence scheme, and wherein when requiring to reduce gross bit rate, one of two videos from the camera of equipment always obtain the priority higher than another video.
In certain embodiments, arbiter module manages two rate controllers of two cameras.The example of this arbiter module of Figure 77 graphic extension.As shown in Figure 77, rate controller 7700 sets the bit rate of front camera, and rate controller 7705 sets the bit rate of back side camera.Rate controller sends to encoder 7715 the image from camera sensor.Arbiter module 7710 is connected with two rate controllers, and according to the video size etc. of each video in such as available bandwidth, two videos, controls the setting of the bit rate of each rate controller 7700 and 7705 in any number of ways.To guarantee under available bandwidth, two videos all can be sent to remote equipment.In addition, arbiter 7710 can be configured to realize above mentioned fixed rate scheme, or precedence scheme.
In some other embodiments, two rate controllers for two cameras can intercom mutually.According to this scheme, rate controller can exchange the information of their videos separately, and sets the bit rate of video accordingly.Provide several examples of rate controller speed administrative mechanism.But, other different mechanisms many are also possible.
4. Video processing
Some embodiments of two camera movement equipment in different situations, differently process the image taken by two cameras of two camera movement equipment.Such as, when processing the PIP composograph comprising the image taken by two cameras of two camera movement equipment, some embodiments carry out TNR process 2000 to PIP composograph selectively.Some this embodiments only carry out TNR process 2000 to the master image in PIP composograph, and other this embodiment only carries out TNR process 2000 to the insertion image in PIP composograph.
As another example of the image that process is taken by two cameras of mobile device, some embodiments are according to the various changes of video conference, such as user to the adjustment of the viewing area of display video (such as, main viewing area/insertion the viewing area of amplifying the insertion viewing area of PIP display, defining area-of-interest in the video of display, exchanging PIP display, etc.), to the change of total available bandwidth, etc., the image that proportional zoom is taken by two cameras of two camera movement equipment.Some such embodiments scaling images in the manner described above.That is, image can by encoder 1655, video conference manager 1604, scaler module 455 and camera sensor (that is, 405a or the 405b) proportional zoom with its photographic images.
5. encode
As mentioned above, some embodiments send the video of two cameras from two camera movement equipment.Thus, these embodiments can to the Video coding taken by two cameras, to send remote equipment to during video conference.Different embodiments provides different modes to carry out encoded video to transmit.Figure 78 graphic extension utilizes multiplexer (MUX) 7815, coder module 7825, buffer 7830 and composite module 7835 to process video, so that the method for transmission.
According to selection signal, MUX 7815 obtains an input signal, and the input signal selected is exported to encoder 7825.Such as, if selection signal designation MUX 7815 obtains the input signal from C1, so MUX 7815 selects this input signal, and exports this input signal.Available various ways, as by the instruction from video conference manager 1604, provides described selection signal.By MUX 7815, encoder 7825 alternately becomes bitstream format the Image Coding received from MUX7815, and the Image Saving of coding in buffer 7830.Composite module 7835 combines (that is, multiplexed) is kept at one or more bit streams in buffer 7830, and exports single bit stream.
Now according to three phases 7860,7865 and 7870, the operation of this coding method is described.Be configured in the first stage 7860, MUX 7815 receive the image 7805 taken by camera C 1, and export to encoder 7825 to encode.Encoder 7825 to receive Image Coding and produce bit stream 7850, bit stream 7850 is stored in buffer 7830 subsequently.Second stage 7865 is similar to the first stage 7860, except MUX 7815 is configured to receive the image 7810 taken by camera C 2, and exports to encoder 7825, so that outside coding.Similarly, encoder to receive Image Coding and produce bit stream 7855, bit stream 7855 is stored in buffer 7830.In the phase III 870, composite module 7835 fetches bit stream 7850 and 7855 from buffer 7830, and they are combined into a bit stream, to send remote equipment to.
Figure 79 graphic extension to two Video codings from two camera movement equipment, to send the another kind of method of remote equipment during video conference to.In this approach, from first camera of mobile device frame of video (namely, image) and to be synthesized from another frame of video of second camera of mobile device be a frame of video, the frame of video of synthesizing afterwards is encoded into bit stream, to send to remote equipment.As shown in Figure 79, this method comprises synthesizer 7915, buffer 7920 and encoder 7925.
As shown in the figure, synthesizer 7915 synthesizes the image 7905 from first camera and the image 7910 from second camera, to form composograph 7955.Different embodiments is composograph 7905 and 7910 differently.Such as, the synthesizer 7915 of some embodiments by two graphical arrangement are become (as shown in Figure 80) adjacent one another are, composograph.Composograph 8030 and 8035 graphic extension utilizes two example composographs of this technology.In composograph 8030, the image 7905 from first camera is arranged on the image 7910 from the second camera.And composograph 8035 presentation video 7905 is arranged in the left side of image 7910.
At some in other embodiment, synthesizer 7915, by two images 7905 and 7910 are superimposed upon above larger background image, synthesizes two images 7905 and 7910.Composograph 8040 graphic extension of Figure 80 utilizes the example composograph of this technology.In composograph 8040, image 7905 and 7910 diagonal angle arranges, and is superimposed upon (that is, image 7905 is positioned at the upper left corner of background image, and image 7910 is positioned at the lower right corner of background image) in blank image.In certain embodiments, camera sensor may vary in size, thus shooting has the image of different pixels resolution.In such an embodiment, synthesizer 7915 can according to such as by the similar manner composograph 7905 and 7910 of composograph 8045 graphic extension of Figure 80.After these two images of synthesis, synthesizer 7915 is kept at composograph in buffer 7920.Encoder 7925 fetches composograph from buffer 7920, and composograph is encoded into bit stream, and sends it to the remote equipment of video conference.
With reference now to the synthesizer 7915 of graphic extension in Figure 79, buffer 7920 and encoder 7925, illustrate that each operates.First, first camera sends to synthesizer 7915 using the image 7905 of the part as a series of images in video.Meanwhile, second camera sends to synthesizer 7915 using the image 7910 of the part as a series of images in video.Synthesizer 7915 composograph 7905 and 7910 in the manner described above subsequently, to form composograph 7955.Afterwards, synthesizer 7915 sends to buffer 7920 composograph 7955.Buffer 7920 preserves composograph subsequently, afterwards composograph is sent to encoder 7925.Finally, encoder 7925 is encoded into bit stream composograph, and sends it to the remote equipment of video conference.
Figure 81 graphic extension to two Video codings from two camera movement equipment, to send another method of remote equipment during video conference to.In this approach, two videos from this equipment are shown with the form of compound display, obtain the screenshot capture of compound display, and are encoded into bit stream, to send to remote equipment.As shown in Figure 81, this method comprises encoder 8115.In certain embodiments, encoder 8115 synthetic images is encoded, and sends to remote equipment.
With reference now to the encoder 8115 of graphic extension in Figure 81, illustrate that each operates.First, the video from two cameras of two camera movement equipment is shown on the screen of the device with the form of compound display.Described compound display can present video by any-mode.Such as, the compound display in some embodiments can be presented on PIP display two videos, in the PIP display 8105 of such as graphic extension in Figure 81.In other embodiments, compound display can be presented on two viewing areas side by side two videos, or in the viewing area of two diagonal angle arrangements.Obtain the screenshot capture of PIP display 8105, such as image 8110, and send it to encoder 8115.Encoder is encoded into bit stream 8120 a series of screenshot capture subsequently, sends it to the remote equipment of video conference afterwards.Although be described above several distinct methods to two Video codings, but other method is also possible.
6. decode
Some embodiments of two camera movement equipment can receive the bit stream with the method coding illustrated with reference to figure 78-81 above.In such embodiments, two camera movement equipment can receive (such as, by video conference control channel) instruction for the information to the method for Video coding.Figure 82 graphic extension is a kind of to by communication network, from the bit stream decoding of two videos that another equipment receives, so that during video conference, is presented at the method on two camera movement equipment.Specifically, this method is used for the bit stream decoding with the encoding method encodes illustrated with reference to figure 78 above.
As shown in Figure 82, this scheme uses separation module 8235, buffer 8230 and 8290 and decoder module 8225.Separation module 8235 is separated (that is, DeMux) bit stream and becomes one or more bit stream, and bit stream is kept in buffer 8230.Decoder 8225 fetches the bit stream of coding, to their decodings to produce video, subsequently video is kept in buffer 8290.
With reference now to the separation module 8235 of graphic extension in Figure 82, buffer 8230 and 8290 and decoder module 8225, the operation of this method is described.First, two camera movement equipment, by communication network, receives bit stream 7845 (that is, at networking manager 1614) from another equipment video conference.Separation module 8235 is separated into two bit streams 8255 and 8260 the bit stream received, because the bit stream received is the multiplexed bit stream of two bit streams.The bit stream representative of each coding is from the video data of one of two cameras of equipment shooting.Subsequently, separation module 8235 is kept at bit stream 8255 and 8260 in buffer 8230.
Afterwards, decoder 8225 fetches bit stream 8250 (it is two bit streams 8255 and 8260) from buffer 8230, and decoder 8225 pairs of bit streams 8250 are decoded, and to produce video 8280, and video 8280 are kept in buffer 8290.Decoder 8225 also to another decoding in bit stream 8255 and 8260, and is kept at the video produced in buffer 8290.Now, two videos can be retrieved from buffer 8290, and are saved or are presented on two camera movement equipment.
Figure 83 graphic extension is to the method for the bit stream decoding with the method coding illustrated with reference to Figure 79.As shown in Figure 83, the method comprises decoder 8325, buffer 8320 and decombiner 8315.
In certain embodiments, the bit stream of the method coding of graphic extension in decoder 8325 reception Figure 79, bit stream decoding is become one or more composograph, and described composograph is stored in buffer 8320 subsequently.Decombiner 8315 extracts this two images from each composograph.In order to extract this two images from composograph, decombiner 8315 also receives the information of the instruction position of each image in composograph (such as, by video conference communication control channel, from the synthesis video conference and the equipment of coded image receive information).
With reference now to the decoder 8325 of graphic extension in Figure 83, buffer 8320 and decombiner 8315, the operation of this method is described.First, decoder 325, from the bit stream of another mobile device receiver, video of video conference, such as uses the bit stream of the video of the method generation illustrated with reference to Figure 79.Decoder 8325 becomes to comprise one or more composographs of composograph 7955 this bit stream decoding, and they are kept in buffer 8320.Buffer 8320 preserves composograph subsequently, afterwards they is sent to decombiner 8315.When decombiner receives composograph 7955 from buffer 8320, it is separated into two images 7905 and 7910 identical with 7910 with the image 7905 in Figure 79 composograph 7955.
When the system acceptance of the system illustrated from such as Figure 81 and so on is to bit stream, decoder, the decoder 8325 in such as Figure 83 becomes a series of screenshot capture bit stream decoding.Described a series of screenshot capture is shown on the screen of the device as video, and does not further process.
VI. many sources
As mentioned above, video can be taken by two cameras of two camera movement equipment, and sends another equipment in video conference to.Some embodiments can in company with the video of a camera shooting from two camera movement equipment together, transmit and be presented at different media content on two camera movement equipment or arbitrary content, instead of transmit the video of two cameras shootings from two camera movement equipment.In other words, the video that these embodiments can be taken in company with the camera by two camera movement equipment together, sends the content from multiple source.
Figure 84 is the video conference of two camera movement equipment of some embodiments of graphic extension and the another kind of software architecture of processing module conceptually.The video conference of Figure 84 and processing module are similar to video conference and the processing module 1600 of Figure 16, except this video conference and processing module comprise display driver 8485 and memory 8475, and exchange of media module 1620 comprises outside media source module 8470 and screen capture module 8480.
Media source module 8470 route media content between video conference module 8402 and memory 8475 of some embodiments.The example of media content comprises video, image, document and music.Other embodiment is kept at the media content of other type in memory 8475.The memory 8475 of some embodiments be internal storage (such as, RAM), and the memory 8475 of other embodiment be external memory storage (such as, compact flash (CF) card, secure digital (SD) card, etc.).
In certain embodiments, screen capture module 8480 is by display driver 8485, and route is presented at the image of the content on the display of two camera movement equipment.In certain embodiments, display driver 8485 is responsible for the content of catching on display, and Content Transformation is become image.Different embodiments catches display different content over the display.Such as, some embodiments catch display all the elements over the display.Other embodiment catch display specific viewing area (such as, the viewing area of current active window, PIP display viewing area, etc.).
With reference now to Figure 84, some exemplary operations of video conference and processing module are described.In order to the video transfer medium content together that companion is taken from the camera of two camera movement equipment, the video conference module 8402 of some embodiments carries out the operation identical with the video conference module 1602 illustrated in figure 16 above, except replacing fetching image from CIPU 1650, video conference manager 1604, by media source module 8470, is fetched outside media content from memory 8475.In order to transmit the image of the content on the display being presented at two camera movement equipment, some embodiments of video conference manager 1604, by display driver 8485, fetch the image of the content on the display being presented at two camera movement equipment.The image of some embodiments to the media content shown over the display or content carries out the process similar with the process carried out the image fetched from CIPU 1650 (such as, perspective correction, convergent-divergent etc.), and other embodiment does not carry out any process.
Discussion above describes the video taken in company with camera by two camera movement equipment together, sends several examples of the content from various source.But, other embodiment can transmit other dissimilar content.Such as, in the video conference relating to multiple participant, some embodiments are the video received from the equipment of in video conference, and the video taken by the camera of two camera movement equipment sends another equipment to.Thus, the video taken in company with a camera by two camera movement equipment together, can send the content of any number of different types from any number of source.
VII. multipart video-meeting
The above-mentioned each joint relating to video conference describes the video conference with two participants.But, the multipart video-meeting (that is, the participant of more than three) by the mobile device of some embodiments is also possible.In certain embodiments, all participants in multipart video-meeting can mutually see and hear.Other embodiment provides one INVENTIONBroadcast video meeting in many ways, one of them participant (such as, broadcaster) can see and hear other participants all, and other participants all can see and hear this broadcaster, but other participant can not see or hears (unless such as obtaining the approval of broadcaster) mutually.
A. the user interface of multipart video-meeting
During multipart video-meeting, some embodiments provide the various participant for display video meeting, and select the different UI of the one or more particular participant that will watch.Such as, some embodiments of mobile device provide all participants simultaneously showing multipart video-meeting, and allow the user of mobile device to select one of participant to watch the UI of (such as, by amplifying the image of selected participant).Figure 85 illustrates an example of this UI.
Figure 85 is with reference to five different phases 8505,8510,8515,8520 and 8525 of UI 8530, be illustrated in all participants simultaneously showing multipart video-meeting in the UI 8530 of mobile device 8500, and select one of participant so that the sequence of operations of viewing.First stage 8505 is illustrated in the UI 8530 after the multipart video-meeting between other three users establishing miscellaneous equipment.As shown in the figure, UI 8530 comprises compound display 8535 and viewing area 1155.Compound display 8535 comprises four viewing areas 8565,8570,8575 and 8580 showing the image taken by the camera of the participant of multipart video-meeting.In this example, viewing area 8565 represents user's (that is, viewing area 8565 shows the image taken by the front camera of mobile device 8500) of mobile device 8500.Viewing area 1155 is identical with the viewing area 1155 illustrated in fig. 12 above.
Second stage 8510 represents one of the viewing area in the user by selecting compound display district 8530 of mobile device 8500, starts participant and selects operation.Especially, second stage 8510 represents that user selects viewing area 870 (such as, by dubbing finger 8550 on viewing area 8570).
The phase III 8515 of UI 8530 has been illustrated in the compound display 8555 after participant selects to operate.Some embodiments provide the animation (not shown) of display second stage 8510 and the transformation between the phase III 8515.Compound display 8555 comprises PIP display 8560, PIP display 8560 the viewing area of the participant selected in second stage 8510 (namely, viewing area 8570) be shown as background display area, and the viewing area 8565 of user is shown as the insertion viewing area of PIP display 8560.In this example, PIP display 8560 display is stretched horizontally with the image of viewing area 8570 selected by applicable transversal orientation.In certain embodiments, this image is not stretched, and selects the image of viewing area to keep its portrait orientation (that is, as shown in Figure 36, being filled in the redundant space of both sides, background display area by secret note).In addition, compound display 8555 also comprises compound display 8585, and compound display 8585 shows the image of the scale smaller of two unselected viewing areas 8575 and 8580.
Fourth stage 8520 represents the user by selecting PIP display 8560 (such as, by PIP display 8560 dubs finger 8550) of mobile device 8500, starts participant and cancels selection operation.Five-stage 8525 is illustrated in participant and cancels compound display 8535 after selection has operated.
Figure 85 represents all participants simultaneously showing multipart video-meeting, carries out participant and selects to operate and carry out the exemplary operational sequence that participant cancels selection operation.Other sequence of operation is also possible.Such as, after the phase III 8515, replace starting participant and cancel selection operation, user can select to be presented at and not select one of viewing area in compound display 8585, to exchange the background display area (that is, the viewing area previously selected) newly selecting viewing area and PIP display 8560 in viewing area 8585.Thus, during multipart video-meeting, user can exchange the background display area of viewing area in viewing area 8585 and PIP display 8560 at any time and arbitrarily in multiple times.In addition, when any during multipart video-meeting, user can carry out participant and cancel selection operation, to return compound display 8535.In addition, different embodiments allows user in different ways, such as switching the switch on mobile device 8500, by sending voice commands etc., selecting specific participant.
Some embodiments provide the technology such as automatically selecting participant according to speech detection.In such embodiments, when one of participant speaks, the viewing area of this participant is elected as the background display area of PIP display 8560 automatically.When a different participant speaks, the viewing area of this participant is elected as the background display area of PIP display 8560 automatically.In certain embodiments, when the participant of multipart video-meeting does not speak, after mourn in silence (such as, 3 seconds) of ormal weight, display display compound display 8535.In certain embodiments, when the user of mobile device 8500 speaks, on the UI 8530 of mobile device 8500, any operation does not also occur.
Figure 86 graphic extension shows all participants of multipart video-meeting simultaneously and selects one of participant so that the sequence of operation of another example of viewing.Seven different phases 8505,8605,8610,8615,8620,8625 and 8630 of Figure 86 reference UI 8645, this operation in the UI 8645 of graphic extension mobile device 850.First stage 8505 is identical with the first stage 8505 of graphic extension in Figure 85, because the UI 8645 after it is presented between other three users establishing miscellaneous equipment multipart video-meeting.
Second stage 8605 graphic extension is by selecting viewing area 8570 (such as, by two fingers are placed on viewing area 8570), and the user of mobile device 8500 starts participant and selects operation.Phase III 8610 represents that participant selects the conversion stage operated.In this stage, user drags two fingers away from each other, makes viewing area 8570 become larger simultaneously, and is full of the viewing area for showing compound display 835.This example represents that viewing area 8570 is selected, but other viewing area 8565,8575 and 8580 also can be selected arbitrarily.In certain embodiments, the user of mobile device 8500 is not allowed to select the viewing area (that is, the viewing area 8565 in this example) of this user.
The fourth stage 8615 of UI 8645 has been presented at the PIP display 8635 of the UI8645 after participant selects to operate.Some embodiments require that user continues to drag two fingers away from each other, until viewing area 8570 is full of the background display area 8640 of PIP display 8635, and other embodiment is only required before user removes finger, the drag operation of user is greater than specific threshold quantity (such as, be greater than specific distance, or be greater than specific time quantum).When user drag operation meet or when exceeding specific threshold amount, UI 8645 continues the amplification of viewing area 8570, until it be full of PIP display 8635 background display area 8640.Otherwise participant selects operation not complete, and UI 8645 returns compound display 8535.As shown in the figure, the viewing area (that is, viewing area 8570) of selection is the background display area 8640 of PIP display 8635, and the viewing area 8565 of user is the insertion viewing area of PIP display 8635.Some embodiments provide the animation (not shown) of the transformation between display phase III 8610 and fourth stage 8615.
Five-stage 8620 graphic extension is by selecting the background display area 8640 (such as, by two fingers are placed on background display area 8640) of PIP display 8635, and the user of mobile device 8500 starts participant and cancels selection operation.6th stage 8625 represented that participant cancelled the conversion stage of selection operation.This stage graphic extension user closely drags finger, to reduce the viewing area of the background display area 8640 being used to PIP display 8635.Be similar to the operation illustrated in the phase III 8610, some embodiments required before user removes finger, and the drag operation of user is greater than specific threshold amount (such as, be greater than specific distance, or be greater than specific time quantum).Otherwise participant cancels selection operation and does not complete, and UI 8645 returns PIP display 8635.7th stage 8630 of UI 8645 represents cancels compound display 8535 after selection operation completing participant.
Figure 86 graphic extension shows all participants of multipart video-meeting simultaneously, carries out participant and selects operation, and carries out another exemplary operational sequence that participant cancels selection operation.But, some embodiments allow the user of mobile device 8500 to repeat participant to select operation and participant to cancel selection to operate.The embodiment that Figure 87 graphic extension one is such.
Specifically, Figure 87 is with reference to seven different phases 8505,8705,8615,8710,8715,8720 and 8725 of UI 8730, and graphic extension is repeatedly carried out participant and selected operation and participant to cancel the exemplary sequence of selection operation.First stage 8505 is identical with the first stage 8505 of 86 with above mentioned Figure 85.Second stage 8705 is similar to the second stage 8605 of Figure 86, except user is by dubbing viewing area 8570 once (instead of two fingers are placed on viewing area 8570), selects outside viewing area 8570.Phase III 8615 is identical with the fourth stage 8615 of Figure 86, because it represents the PIP display 8635 after completing participant and selecting to operate.Fourth stage 8710 is similar to the five-stage 8620 of Figure 86, except user is by dubbing background display area 8640 once (instead of two fingers are placed on background display area 8640), selects PIP to show outside the background display area 8640 of 8645.
Five-stage 8715 is identical with the 7th stage 8630 of Figure 86, because it represents the compound display 8535 after participant completes cancellation selection operation.6th stage 8720 was similar to second stage 8510, selected except operation except carrying out participant to viewing area 8575.Similarly, the 7th stage 8725 was similar to the phase III 8705, because it is expressed as the background display area 8640 of PIP display 8635 the viewing area (that is, viewing area 8575) selected.Although Figure 87 merely illustrates a little participant selection and participant cancels selection operation, but during multipart video-meeting, any this operation repeatedly can be carried out.
In addition, during some embodiments are provided in video conference, the UI of the participant of different number can be shown.Such as, when mobile device is uprightly held (that is, portrait orientation), the UI of some embodiments only shows some participants of multipart video-meeting, when mobile device is laterally held (that is, transversal orientation), shows other participant.Other embodiment, when mobile device is laterally held, shows all participants.In addition, some embodiments provide animation to indicate and Figure 34,35,36 and 37 in transformation between the diverse location of similar mobile device of graphic extension and/or orientation.Other different animation is also possible.
As during video conference, show another example of the UI of the participant of different number, some embodiments allow the user of mobile device during video conference, select the multidigit participant that will simultaneously watch.For the purpose of illustrating, see the first stage 8505 of Figure 85, some such embodiments allow the user of mobile device 8500 to select two or more viewing areas in viewing area 8565,8570,8575 and 8580 (such as, by dubbing the corresponding viewing area in compound display 8535).The viewing area selected can be shown according to various mode subsequently, any one in the display arrangement of such as compound display, PIP display, graphic extension in Figure 65, and other various multi-player display arrangement.In addition, although describe the example of some embodiments, but, those of ordinary skill will appreciate that the multidigit participant of multipart video-meeting can be selected and be shown to different embodiments according to any various ways.
B. the user interface of INVENTIONBroadcast video meeting in many ways
As mentioned above, INVENTIONBroadcast video meeting only allows a participant to hear and sees other participants all in many ways, and other participant can not mutually hear or see.In order to make INVENTIONBroadcast video meeting in many ways easier, some embodiments are provided for showing the UI of the broadcaster of INVENTIONBroadcast video meeting in many ways and the numerous different of other participant.Such as, some embodiments provide student-teacher formula UI layout, are similar to the layout of the phase III 8515 of graphic extension in Figure 85.Thus, with reference now to the described phase III 8515, the student-teacher formula UI layout of some embodiments is described.
In these embodiments, only have broadcaster to be displayed in the whole viewing area of PIP display 8560 and (that is, do not show insertion viewing area).In many ways other participant of INVENTIONBroadcast video meeting is displayed on below PIP display 8560, is similar to the viewing area of display in compound display 8585.With described similar above, in certain embodiments, when mobile device is in vertical pattern, in compound display 8585, show other participant of defined amount, and when mobile device is in transverse mode, other or all participants in compound display 8585, can be shown.In addition, other embodiment provides the different UI of broadcaster and other participant showing INVENTIONBroadcast video meeting in many ways.
C. the audio frequency of multipart video-meeting is controlled
In addition, the mobile device of some embodiments provides the different technologies of the audio frequency of the multiple participants controlling multipart video-meeting.Such as, some embodiments of mobile device allow the user of mobile device by being presented at the list group volume control (such as, volume sliding shoe) on the UI of this embodiment, control the audio frequency of every participant in multipart video-meeting.In other embodiments, mobile device allows the user of mobile device by one group of volume control, is such as presented at the volume sliding shoe in the viewing area of each participant, controls the volume of the audio frequency of every participant in multipart video-meeting respectively.Some embodiments only provide mute button, instead of one group of volume control.Thus, in the embodiment that some are such, the user of mobile device is merely able to quiet or cancels all participants of quiet multipart video-meeting, and in other this embodiment, and the user of mobile device can be quiet or cancel each participant of quiet multipart video-meeting respectively.In addition, other technology controlling the audio frequency of the participant of multipart video-meeting is also possible, as by the switch switched on mobile device, by sending voice commands etc.
VIII. electronic system
Many above-mentioned characteristic sum application are realized as software process, and described software process is defined as the one group of instruction be recorded on computer-readable recording medium (also referred to as computer-readable medium).When these instructions are performed by one or more processing unit (such as, one or more processor, the core core of processor, or other processing unit), they make processing unit perform the action indicated in instruction.The example of computer-readable medium includes but not limited to CD-ROM, flash drive, RAM chip, hard disk drive, EPROM etc.Computer-readable medium does not comprise carrier wave that is wireless or that transmitted by wired connection and the signal of telecommunication.
In this manual, term " software " intention comprises the firmware resided in read-only memory, or is kept at the application in magnetic storage, and they can be read in memory, so that by processor process.In addition, in certain embodiments, multiple software inventions can be realized as the subdivision of more large program, remains different software inventions simultaneously.In certain embodiments, multiple software inventions also can be realized as independently program.Finally, any combination of the separable programming of software inventions described herein is together realized also within the scope of the invention.In certain embodiments, when be installed to operate in one or more electronic system time, the one or more specific machine of the operation that software program definition performs and realizes software program realizes.
At caller code by one or more interface and the mutual environment of other program code invoked, some embodiments are realized as the software process comprising one or more API (API).Can comprise further the various function calls of various parameter, message or other variously call by API, transmit between caller and called code.In addition, API can provide to caller code and be used in definition in API and the ability of the data type realized in invoked program code or classification.
At least some embodiment comprises calls component software by API and the mutual environment of invoked component software.A kind of method operated by API in this environment comprises by API, transmits one or more function call, message, other variously calls or parameter.
In certain embodiments, one or more API (API) can be used.Such as, some embodiments of exchange of media module 310 (or 910) provide one group of API to other component software, for accessing the various Video processing and encoding function that describe in Fig. 3 and 9, the function of the TNR module 1900 such as described in Figure 19.
API is the interface realized by program code components or nextport hardware component NextPort (hereinafter referred to " API realizes assembly "), allows different program code components or nextport hardware component NextPort (hereinafter referred to " API Calls assembly ") access and use to realize one or more functions that assembly provides, method, process, data structure, classification and/or other service by API.AIP can be defined in one or more parameters that API Calls assembly and AIP realize transmitting between assembly.
API allows developer's (can be third party developer) of API Calls assembly to utilize and realizes by API the regulation feature that assembly provides.An API Calls assembly can be there is, or more than one API Calls assembly can be there is.API can be that computer system or program library are for supporting the source code interface that the service request of self-application provides.Operating system (OS) can have multiple API, to allow the one or more such API of application call run on OS, service (such as program library) can have multiple API, to allow the one or more such API of application call using this service.Can utilize when setting up application, the programming language that can explained or compile specifies API.
In certain embodiments, API realizes the API that assembly can provide more than one, and each API provides access to be realized the different views of the different situations of the different aspect of the function that assembly realizes by API, or has the different views of described different situation.Such as, the API that API realizes assembly can provide first group of function, and can third party developer be exposed to, another API that API realizes assembly can be hidden (not being exposed), and the subset of first group of function is provided, also provide another group function, the test such as not in first group of function or debug function.In other embodiments, API realizes assembly API Calls other assembly one or more by lower floor itself, thus is API Calls assembly, is again that API realizes assembly.
API defines when access with when utilizing API to realize the specific characteristic of assembly, the language that API Calls assembly uses and parameter.Such as, one or more API Calls that API Calls assembly is exposed by API or enable (such as specializing with function or method call), access API realizes the specific characteristic of assembly, and via API Calls or enable, utilizes parameter to transmit data and control information.API realizes assembly can respond API Calls from API Calls assembly, returns numerical value by API.Although API defines the grammer of API Calls and result (such as, how to enable API Calls, and what API Calls doing), but API can not represent AIP calls the function how completing and specified by API Calls.Each API Calls is that the one or more API realized between assembly by called side (API Calls assembly) and API are transmitted.Transmit API Calls can comprise and send, just open, enable, call, receive, to return or response function calls or message; In other words, transmit and can describe the action that API Calls assembly or API realize assembly.The function call of API or other enable by parameter list or other structure, send or receive one or more parameter.Parameter can be constant, key (key), data structure, object, object type, variable, data type, pointer, array, list or function or method pointer or quote the data or other modes of another object that will be transmitted by API.
In addition, data type or classification can be provided by API, and realize assembly realization by API.Thus API Calls assembly can utilize the definition provided in API, explanatory variable, use the pointer of this type or classification, use or illustrate the constant of this type or classification.
Usually, API can be used to access and realize service that assembly provides or data by API, or initiates the execution being realized operation that assembly provides or calculating by API.Such as, API realize assembly and API Calls assembly can be operating system, program library, device driver, API, application program or other module one of any (should understand that API realizes the module that assembly and API Calls assembly can be identical types, or type module different from each other).In some cases, imbody API can be carried out with firmware, microcode or other hardware logic at least partly and realize assembly.In certain embodiments, API can allow client-side program to use the service provided by software development kit (SDK) storehouse.In other embodiments, application or other client-side program can use the API provided by application architecture.In these embodiments, application or client-side program can comprise calling the function provided by SDK and provided by API or method, or are used in definition and the data type provided by API or object in SDK.In these embodiments, application architecture can be program and provides the main event responding the various events defined by described framework circulation.API allows applications exploiting application architecture, allocate event and the response to event.In some implementations, API Calls can to the ability of application report hardware device or state, comprise the ability relevant to various aspects or state, such as input capability and state, fan-out capability and state, disposal ability, power supply status, memory capacity and state, communication capacity etc., and API can partly by other rudimentary logic realization that firmware, microcode or part are run on a hardware component.
API Calls assembly can be local component (namely, assembly is realized in identical data handling system) with API, or realized the remote component (that is, realizing assembly from API in different data handling systems) of component communication through API and API by network.Should understand that API realizes assembly and also can serve as API Calls assembly (namely, it can carry out API tune to the AIP being realized assembly exposure by different API), by realizing the API being exposed to different API Calls assemblies, API Calls assembly also can serve as API and realize assembly.
API also allows multiple API Calls assembly of writing with different programming languages and API to realize component communication (thus API can be included in API and realize changing the feature of calling and replying between assembly and API Calls assembly); But, specific programming language can be utilized to realize API.In one embodiment, API Calls assembly is adjustable with the API from different provider, such as from one group of API of OS provider, another another group API organizing API and organize the founder of API from another provider (such as, the provider of software library) or another from plug-in unit provider.
Figure 88 is the block diagram that graphic extension can use example A PI architecture in some embodiments of the invention.As shown in fig. 88, API architecture 8800 comprises the API realizing API 8820 and realizes assembly 8810 (such as, operating system, program library, device driver, API, application program, software or other module).API 8820 specifies one or more functions, method, classification, object, agreement, data structure, form and/or the API that can be used by API Calls assembly 8830 to realize the further feature of assembly.API 8820 can specify at least one calling convention, and described calling convention specifies how the API function realized in assembly 8810 receives the parameter from API Calls assembly 8830, and how this function returns to API Calls assembly result.API Calls assembly 8830 (such as, operating system, program library, device driver, API, application, software or other module) send API Calls by API 8820, to access and to utilize the API specified by API 8820 to realize the feature of assembly 8810.API realizes assembly 8810 can respond API Calls, returns numerical value by API 8820 to API Calls assembly 830.
Recognize API realize assembly 8810 can comprise by API 8820 specify and can not for other function, method, classification, data structure and/or the further feature of API Calls assembly 8830.Should understand that API Calls assembly 8830 can realize assembly 8810 on the same system with API, or can remote location be positioned at, and access API by network utilisation API 8820 and realize assembly 8810.Although Figure 88 graphic extension and the mutual single API Calls assembly 8830 of API 8820, but should understand that other API Calls assembly can use API8820, other API Calls assembly described can be write with the language different from API Calls assembly 8830 (or with identical language).
API realizes assembly 8810, API 8820 and API Calls assembly 8830 and can be stored in machine readable media, and described machine readable media comprises protects stored any mechanism with the form that machine (such as computer or other data handling system) is readable.Such as, machine readable media comprises disk, CD, random access memory, read-only memory, flash memory device etc.
Figure 89 is an example of two camera movement computing equipment architecture 8900.The realization of mobile computing device can comprise one or more processing unit 8905, memory interface 8910 and Peripheral Interface 8915.These assemblies forming computing equipment architecture can be independent assemblies, or are integrated in one or more integrated circuit.These each assemblies also available one or more communication bus or holding wire are coupled in together.
Peripheral Interface 8915 can with various transducer and subsystem, comprise camera subsystem 8920, radio communication subsystem 8925, audio subsystem 8930, I/O subsystem 8935 etc. and couple.Peripheral Interface 8915 can realize the communication between processor and ancillary equipment.The ancillary equipment of such as orientation sensor 8945 or acceleration transducer 8950 and so on can couple with Peripheral Interface 8915, with convenient directed and acceleration function.
Camera subsystem 8920 can with one or more optical pickocff 8940, such as charge coupled device (CCD) optical pickocff, complementary metal oxide semiconductors (CMOS) (CMOS) optical pickocff couple.The camera subsystem 8920 coupled with transducer can convenient camera-enabled, such as image and/or video data capture.Radio communication subsystem 8925 can be used for convenient communication function.Radio communication subsystem 8925 can comprise radio frequency receiver and reflector, and optical receiver and reflector.They can be realized as by one or more communication network, the work such as such as GSM network, Wi-Fi network, blueteeth network.Audio subsystem 8930 couples with loud speaker and microphone, allows the function of speech, such as speech recognition, digital record etc. with facility.
I/O subsystem 8935 relates to the transmission by Peripheral Interface between the I/O ancillary equipment of such as display, touch-screen and so on and the data/address bus of CPU.I/O subsystem 8935 can comprise touch screen controller 8955 and other input control device 8960, with these functions convenient.Touch screen controller 8955 can couple with touch-screen 8965, and utilizes any one in multiple Touch technologies, detects the contact on screen and movement.Other input control device 8960 can with other input-output apparatus, such as one or more button couples.
Memory interface 8910 can couple with memory 8970, and memory 8970 can comprise high-speed random access memory and/or nonvolatile memory, such as flash memory.Memory can preserve operating system (OS) 8972.OS 8972 can comprise process basic system services and perform the instruction of hardware dependent tasks.
Memory also can comprise makes communication instruction 8974 easier with the communication of one or more other equipment; The graphic user interface instruction 8976 of convenient graphic user interface process; Facility relates to the process of image/video and the image/video processing instruction 8978 of function; Facility relates to the process of phone and the telephone order 8980 of function; Facility and media communication and the exchange of media and the processing instruction 8982 that process relevant process and function; Facility relates to the process of camera and the camera instruction 8984 of function; With the video conference instruction 8986 of convenient video conference process and function.Above-mentioned instruction does not need to be realized as independently software program or module.Available hardware and/or software, comprise the various functions realizing mobile computing device with one or more signal transacting and/or application-specific integrated circuit (ASIC).
Above-described embodiment can comprise can receive touch input, to pass through wired or wireless communication passage 9002 as shown in Figure 90, with the touch I/O equipment 9001 that computing system 9003 is mutual.Touch I/O equipment 9001 can be used to replace or in conjunction with other input equipment, such as keyboard, mouse etc., user's input is supplied to computing system 9003.One or more touch I/O equipment 9001 can be used for user's input to be supplied to computing system 9003.Touch the part (such as, the touch-screen of laptop computer) that I/O equipment 9001 can be computing system 9003, or independent of computing system 9003.
Touch I/O equipment 9001 and can comprise transparent, translucent, opaque touch sensitive panel wholly or in part, or their combination in any.Touch I/O equipment 9001 can be embodied as touch-screen, touch pad, play the touch-screen of touch pad effect (such as, replace the touch-screen of touch pad of laptop computer), to be combined with other input equipment any or the touch-screen or the touch pad (such as, being placed in the touch-screen on keyboard or touch pad) that merge or have for receiving any multidimensional object touching the Touch sensitive surface inputted.
In one example in which, the touch I/O equipment 9001 being embodied as touch-screen can comprise the transparent and/or translucent touch sensitive panel on the display that is partly or entirely placed at least partially.According to this embodiment, touch the graph data that I/O equipment 9001 transmits from computing system 9003 (and/or another source) for display, and for receiving user's input.In other embodiments, touch I/O equipment 9001 and can be embodied as the integrated touch screen wherein making touch-sensitive assembly/equipment be combined with display module/equipment.In other embodiment, touch-screen can be used as display assistant images data, or the auxiliary or additional display of the graph data identical with basic display unit and reception touch input.
Touching I/O equipment 9001 can be configured to according to electric capacity, resistance, optics, acoustics, induction, machinery or chemical measurement result, or the one or many about nearby device 9001 touches or close to the measurable any phenomenon of generation touched, the one or many on checkout equipment 9001 touches or the close position touched.Software, hardware, firmware or their combination in any can be used to the measurement result processing the touch detected, to identify and to follow the tracks of one or more gesture.Gesture may correspond to and touches or close touch in touching the fixing or revocable one or many on I/O equipment 9001.By substantially side by side, incessantly or one after the other according to predetermined way, such as dub, press, swing, wipe, twist, change directed, pressure and alternatively press, on touch I/O equipment 9001, mobile one or more finger or other object, can make gesture.Gesture can with finger between, or any other one or more finger pinching, slide, hit, rotate, bend, drag or dub action characterize (but being not limited thereto).Single gesture can with a hand or two hands, be realized by one or more user or their combination in any.
Computing system 9003 can use graph data driving display, with display graphics user interface (GUI).GUI can be configured to receive touch input by touching I/O equipment 9001.The touch I/O equipment 9001 being embodied as touch-screen can show GUI.On the other hand, GUI can be displayed on and touch on display that I/O equipment 9001 is separated.GUI can comprise the graphic elements of the ad-hoc location be presented in interface.Graphic elements can include but not limited to the virtual input device of various display, comprises virtual scroll wheel, dummy keyboard, virtual knob, virtual push button, any virtual UI etc.User can do gesture at the one or more ad-hoc locations associated with the graphic elements of GUI touching I/O equipment 9001.In other embodiments, gesture is done in one or more positions that user can have nothing to do in the position of the graphic elements with GUI.The gesture that touch I/O equipment 9001 makes can be handled directly or indirectly, controls, revises, moves, encourages, starts or usually affect the graphic elements in GUI, such as cursor, icon, media file, list, text, all or part of image etc.Such as, with regard to touch-screen, user by graphic elements on the touchscreen does gesture, directly and graphic elements mutual.On the other hand, touch pad generally provides indirectly mutual.Gesture also affects the GUI element (such as, causing user interface to occur) do not shown, or can affect other action in computing system 9003 (such as, affecting GUI, the state of application or operating system or pattern).In conjunction with the cursor of display, touch I/O equipment 9001 can do or does not do gesture.Such as, just do the situation of gesture on a touchpad, cursor (or designator) can be displayed on display screen or touch-screen, by the touch input controllable cursor on touch pad, with mutual with the Drawing Object on display screen.Directly do on the touchscreen wherein in other embodiment of gesture, user can in cursor or designator display or when not showing on the touchscreen, the object interaction directly and on touch-screen.
Respond or according to the touch touched on I/O equipment 9001 or close to touching, provide feedback by communication port 9002 to user.Feedback can changeably or immutablelyly with optics, machinery, electrically, sense of smell, the mode such as acoustics, or their combination in any transmits.
These function available digital electronic circuits above-mentioned, to realize with computer software, firmware or hardware.Various technology can utilize one or more computer program to realize.Programmable processor and computer can be included in or be packaged into mobile device.Process and logic flow can perform by one or more programmable processor with by one or more Programmable Logic Device.General and dedicated computing equipment and memory device are by interconnection of telecommunication network.
Some embodiments comprise electronic building brick computer program instructions is kept in machine readable or computer-readable medium (calling computer-readable recording medium, machine readable media or machinable medium on the other hand), such as microprocessor, memory and memory storage.The example of this computer-readable medium comprises RAM, ROM, read-only optical disc (CD-ROM), CD-R (CD-R), CD-RW (CD-RW), read-only digital versatile disc (such as, DVD-ROM, DVD-dual layer-ROM), various can record/rewritable DVD (such as, DVD-RAM, DVD-RW, DVD+RW etc.), flash memory (such as SD card, small-sized SD card, miniature SD card etc.), magnetic and/or solid-state hard drive, read-only and can blue light be recorded cD, high-density optical disk, arbitrarily other optics or magnetic medium and floppy disk.Computer-readable medium can preserve the computer program that can be performed by least one processing unit, comprises the many groups instruction for realizing various operation.The example of computer program or computer code comprises machine code, the machine code such as produced by compiler, and comprises the file by computer, electronic building brick or the high-level code that utilizes the microprocessor of interpreter to perform.
Although discussion above relates generally to microprocessor or the multi-core processor of executive software, but some embodiments are by one or more integrated circuit, and such as application-specific integrated circuit (ASIC) (ASIC) or field programmable gate array (FPGA) perform.In certain embodiments, such integrated circuit performs and is kept at circuit originally instruction with it.
The term " computer " used in any claim of specification and the application, " server ", " processor " and " memory " all refer to electronic equipment or other technical equipment.People or crowd got rid of in these terms.Concerning specification, term " display " meaning shows on an electronic device.The term " computer-readable medium " used in any claim of specification and the application is confined to protect stored tangible entity with computer-readable form completely.Any wireless signal, wired download signal and other instant signal any got rid of in these terms.
Figure 91 conceptually graphic extension according to some embodiments, for connecting the example communication system 9100 of some participants of video conference.As shown in the figure, communication system 9100 comprises some mobile devices 9115, some cellular basestations (in other words Node B) 9110, some radio network controllers (RNC) 9105, and core network 9125.Cellular basestation and RNC are referred to collectively as Universal Mobile Telecommunications System (UMTS) grounding wireless access network network (UTRAN) 9130.Each RNC9105 with together be called as Radio Access Network (RAN) one or more cellular basestations 9110 connect.
Each cellular basestation 9110 covers a service area 9120.As shown in the figure, the mobile device 9115 in each service area passes through Uu interface, with serving cell site 9110 wireless connections of service area 9120.Uu interface uses the dihedral protocol stack of tool: control plane and user plane.User plane support circuit-switched, packet switching and broadcast data stream.Control plane carries the signaling message of network.
Each cellular basestation is connected with RNC by Iub interface.Each RNC 9105 is connected with core network 9125 by Iu-cs with Iu-ps interface.Iu-cs interface is used for circuit switched service (such as, speech), and Iu-ps interface is used for packet-switched services (such as, data).Iur interface is used for two RNC to link together.
Therefore, communication system 9100 support circuit-switched service and packet-switched services.Such as, circuit switched service allows to transmit communicating data (such as, speech) by the circuit switching equipment via communication system 9100, converses.Packet-switched services allows the transportation protocol layer (such as UDP or TCP) by utilizing on Internet protocol layer (such as IP), and the PSE via communication system 9100 transmits videoconference data, carries out video conference.In certain embodiments, before, the call that illustrates in chapters and sections-video conference is set in video conference and changes the circuit switched service and packet-switched services that (such as, switching) utilize the communication system of such as communication system 9100 and so on to support.That is, in such embodiments, call is undertaken by the circuit switching equipment of communication system 9100, and video conference is undertaken by the PSE of communication system 9100.
Although the example communication system in Figure 91 illustrates the third generation (3G) technology UTRAN mobile radio system, but should note in certain embodiments, the second generation (2G) communication system, other 3G communication system, such as 3GPP2 Evolution-Data Optimized or evolution-just data (EV-DO) and third generation partner program 2 (3GPP2) code division multiple access access 1X (CDMA1X), forth generation (4G) communication system, WLAN (wireless local area network) (WLAN), some participants being connected meeting can be used to micro-wave access global inter communication (WiMAX) communication system.The example of 2G system comprises global system for mobile communications (GSM), general packet radio service (GPRS) and enhancing data rate GSM evolution (EDGE).2G communication system architecture is similar to the architecture shown in Figure 91, and except 2G communication system architecture uses base station transceiver (BTS) to replace Node B 9110, and base station controller (BSC) replaces outside RNC 9105.In 2G communication system, the A interface between BSC and core network is used for circuit switched service, and the Gb Interface between BSC and core network is used for packet-switched services.
In certain embodiments, communication system 9100 utilizes the service provider of communication system 9100 to run by supplying mobile device 9115 at first to allow mobile device 9115.Some embodiments, by configuration and registered user's identification module (SIM) in mobile device 9115, provide mobile device 9115.In other embodiments, the memory configuration utilizing mobile device 9115 and registration mobile device 9115 is changed into.In addition, other service (after client buys mobile device 9115) can be provided, such as the data, services of similar GPRS, Multimedia Messaging Service (MMS) and instant messaging.Once be supplied, mobile device 9115 just serviced operator activates, thus allows to use communication system 9100.
In certain embodiments, communication system 9100 is dedicated communications networks.In such embodiments, mobile device 9115 can in (such as, for mobile device 9115 that communication system 9100 provides) communication (such as, carrying out voice call, swap data) each other.In other embodiments, communication system 9100 is public communication networks.Thus except the mobile device 9115 provided for communication system 9110, mobile device 9115 can also communicate with the miscellaneous equipment outside communication system 9100.Some in miscellaneous equipment outside communication system 9100 comprise by other network, such as public switch telephone network or another kind of cordless communication network, the telephone set be connected with communication system 9100, computer and miscellaneous equipment.
Long Term Evolution (LTE) specification is used for defining 4G communication system.Figure 92 conceptually graphic extension in certain embodiments, for connecting the example of the 4G communication system 9200 of some participants of video conference.As shown in the figure, communication system 9200 comprises some mobile devices 9115, some evolved Node B (eNB) 9205, mobile management entity (MME) 9215, gateway (S-GW) 9220, packet data network (PDN) gateway 9225 and home subscriber server (HSS) 9235.In certain embodiments, communication system 9200 comprises one or more MME 9215, one or more S-GW 9220, one or more PDN Gateway 9225 and one or more HSS 9235.
ENB 9205 provides air interface for mobile device 9115.As shown in the figure, each eNB9205 covers service area 9210.Mobile device equipment 9115 in each service area 9210 passes through LTE-Uu interface, with eNB 9205 wireless connections of service area 9210.Figure 92 also represents that eNB 9205 is interconnected by X2 interface.In addition, eNB 9205 is connected with MME 9215 by S1-MME interface, is connected with S-GW 9220 by S1-U interface.ENB 9205 collective is called as the UTRAN (E-TRAN) 9230 of evolution.
ENB 9205 provides various function, such as provided for radio resources management (such as, radio bearer controls, connects mobility control etc.), user plane data is towards the route of S-GW 9220, signal measurement and measurement report, the MME when mobile device connects selects, etc.The function of MME9215 comprises idle pulley mobile device tracking and paging, radio bearer enabling and stop using, the selection of the S-GW 9220 when mobile device connects, non access stratum (NAS) signaling termination, by the subscription authentication mutual with HSS 9235, etc.
The function of S-GW 9220 comprises (1) route and forwards user data packets, and (2) manage and preserve mobile device context, the parameter of such as IP carrying service and network internal routing iinformation.The function of PDN Gateway 9225 comprises exit point and the entrance of the traffic by becoming mobile device, provides the connectedness from mobile device to external packet data networks (not shown).Connective while mobile radio station can have more than one PDN Gateway, to access multiple packet data network.PDN Gateway 9225 also serves as 3GPP and non-3 gpp technology, the ambulant anchor point (anchor) such as between WiMAXt 3GPP2 (such as, CDMA 1X and EV-DO).
As shown in the figure, MME 9215 is connected with S-GW 9220 by S11 interface, is connected with HSS 9235 by S6a interface.S-GW 9220 is connected by S8 interface with PDN Gateway 9220.MME 9215, S-GW 9220 and PDN Gateway 9225 collective are called as block core evolution (EPC).EPC is the primary clustering of system architecture evolution (SAE) architecture, and system architecture evolution (SAE) architecture is the Core Network Architecture of 3GPP LTE wireless communication standard.EPC is pure grouping system.Such as, EPC does not have speech media gateway.The service of such as speech and SMS and so on is packet switching route, and is provided by the application function utilizing EPC to serve.The call that utilization like this illustrates above-video conference changes as an example, and in certain embodiments, call and video conference are all undertaken by the PSE of communication system 9200.In the embodiment that some are such, after the conversation is over, the packet switched channels for conversing continues the voice data being used to video conference.But, in other this embodiment, creating different packet switched channels (such as, when setting up video conference), by the packet switched channels that newly creates instead of when the call ends, utilizing the packet switched channels of call to transmit voice data.
In addition, the quantity of bandwidth that provides of these different technologies from 44 kilobits/second (kbps) of GPRS to LTE more than 10 mbit (Mbps).Following concerning LTE, expectation downloading rate is 100Mbps, and uploading rate is 50Mbps.
Although describe the present invention about numerous details, but those of ordinary skill in the art will appreciate that can imbody the present invention in other specific forms, and do not depart from spirit of the present invention.In addition, numerous accompanying drawings illustrates various process conceptually.These concrete operations processed can be performed not in accordance with the exact sequence of described expression and description.Specific operation can not be performed in continuous print sequence of operations, and different specific operations can be performed in various embodiments.In addition, process can utilize a few height process to realize, or is realized as a part for larger grand process.
In addition, many embodiments are described about the video conference between two camera movement equipment above.But, many embodiments that those of ordinary skill in the art will appreciate that in these embodiments can be used on and relate to two camera movement equipment and another equipment, such as single camera movement equipment, computer, there is video conference capabilities telephone set etc. between video conference situation in.In addition, at single camera movement equipment and have in other computing equipment of video conference capabilities, many embodiments described above can be used.Thus those of ordinary skill in the art understands the present invention and does not limit by example details above, but is limited by the claim of adding.

Claims (21)

1. first mobile device, comprising:
The first mobile device comprising touch-sensitive display panel presents the display screen of compound display, described compound display has the first video taken by the first mobile device, with the second video taken with the second equipment of the video conference of the first mobile device by participation, described compound display is picture-in-picture display, described picture-in-picture display has the insertion display of performance first video, with the main display of performance second video, described insertion display is less than described main display and overlaps in main display at least partially;
Communication interface, during being received in video conference at the first mobile device, the position that position insertion being shown by (i) and touch-sensitive display panel are just being touched is associated, (ii) select to insert display in response to described association, (iii) determine that the contact position while contact is kept on touch-sensitive display panel moves, revise the input of compound display; With
Image processor, for according to the input received, revises compound display by moving insertion display along the moving direction of contact.
2. according to the first mobile device according to claim 1, even if wherein mobile insertion display comprises after the contact with screen has been terminated, insert the latched position showing and also do not arrive in compound display simultaneously, continue mobile insertion to show, described latched position has been designated as in compound display for placing described position of inserting one end of display.
3., according to the first mobile device according to claim 1, wherein mobile insertion display comprises:
If the movement of contact position exceedes specified quantitative, even if so after the contact with screen has been terminated, continue mobile insertion and show; And
If the movement of contact position does not exceed specified quantitative, so after contact has been terminated, do not move and insert display.
4., according to the first mobile device according to claim 1, wherein insert display is moved to picture-in-picture display second corner from first corner of picture-in-picture display.
5. according to the first mobile device according to claim 1,
Wherein when the display screen of the first mobile device rotates, produce described input, and
Wherein revise compound display and comprise rotating synthesizing display.
6. according to the first mobile device according to claim 5, wherein make the screen of the first mobile device rotate along first direction, and compound display is rotated along the second direction contrary with first direction.
7. according to the first mobile device according to claim 1,
Wherein receive described input and comprise the selection received the part inserting display, and the movement to described part, and
Wherein said amendment comprises the size changing and insert display.
8., according to the first mobile device according to claim 7, the movement of wherein said part comprises described part towards the movement of inserting the center shown, and described amendment comprises the size reducing and insert display.
9., according to the first mobile device according to claim 7, the movement of wherein said part comprises described part away from the movement of inserting the center shown, and wherein said amendment comprises the size of amplifying and inserting display.
10. according to the first mobile device according to claim 1,
Wherein said amendment comprises to exchange inserts display and main display, makes to insert display performance second video, and main display performance first video.
11. according to the first mobile device according to claim 1,
Wherein receive described input and comprise selection first video, and
Wherein said amendment comprises moves the first video relative to compound display.
12. a kind of first mobile device, comprising:
First mobile device presents the display screen of compound display, and described compound display has the first video taken by the first mobile device, and by participating in the second video taken with the second equipment of the video conference of the first mobile device;
Communication interface, for revising the input of compound display during being received in video conference at the first mobile device, wherein when the display screen of the first mobile device rotates, produce described input, the compound display wherein presented on the first mobile device independently can rotate with the display screen of the first mobile device; And
Image processor, for the input according to reception, shown by rotating synthesizing and revise compound display, wherein, when the display screen of the first mobile device rotates with first direction, described image processor is by revising described compound display with the second direction rotating synthesizing contrary with first direction display.
13. a kind of first mobile device, comprising:
First mobile device presents the display screen of compound display, described compound display is picture-in-picture display, the insertion that described picture-in-picture display has the first video that performance is taken by the first mobile device shows, with performance by the main display participating in the second video taken with the second equipment of the video conference of the first mobile device, wherein said insertion display is less than described main display and overlaps in main display at least partially;
Communication interface, for revising the input of compound display during being received in video conference at the first mobile device, wherein when the first mobile device rotates, produces described input; And
Image processor, for the input according to reception, shown by rotating synthesizing and revise compound display, wherein when main display and insertion are presented at the first orientation, described image processor revises described compound display by inserting display to the second directional-rotation directed different from described first.
14. according to the first mobile device according to claim 13, is wherein shown by rotating synthesizing and revises compound display and comprise: revise compound display by being rotatably inserted into display around the first axle and rotating main display around the second axle different from the first axle.
15. according to the first mobile device according to claim 13, is wherein shown by rotating synthesizing and revises compound display and comprise: shown by rotating synthesizing compound display is remained on stand up position revise compound display.
16. a kind of first mobile device, comprising:
First mobile device presents the display screen of compound display, and described compound display has the first video taken by the first mobile device, and by participating in the second video taken with the second equipment of the video conference of the first mobile device;
Communication interface, for revising the input of compound display during being received in video conference at the first mobile device, wherein when the display screen of the first mobile device rotates, produces described input; And
Image processor, for according to the input received, is shown by rotating synthesizing and presents animation and revise compound display, and described animate compound display is around the rotation of the axle at the center by compound display.
17. according to the first mobile device according to claim 16, and wherein said animation comprises reducing of compound display, makes, during the rotation of compound display, to show whole compound display.
18. according to the first mobile device according to claim 17, and wherein in the ending of animation, compound display is unfolded with the orientation of applicable screen.
19. a kind of first mobile device, comprising:
First mobile device presents the display screen of compound display, described compound display has the first video taken by the first mobile device, with the second video taken with the second equipment of the video conference of the first mobile device by participation, described compound display comprises picture-in-picture display, described picture-in-picture display has the insertion display of performance first video, with the main display of performance second video, wherein said insertion display is less than described main display and overlaps in main display at least partially;
Communication interface, for revising the input of compound display during being received in video conference at the first mobile device, wherein when the display screen of the first mobile device rotates, produces described input;
Image processor, for according to the input received, is shown by rotating synthesizing and revises compound display; And
Network interface, for receiving the notice of the rotation of the second equipment,
Wherein, described image display is further used for the orientation of main display to become the second orientation from the first directed change.
20. according to the first mobile device according to claim 19, and wherein the first orientation is transversal orientation, and the second orientation is portrait orientation.
21. according to the first mobile device according to claim 19, and wherein the first orientation is portrait orientation, and the second orientation is transversal orientation.
CN201010602653.9A 2010-04-07 2010-09-25 In conference display adjustments Active CN102215373B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US32187110P 2010-04-07 2010-04-07
US61/321,871 2010-04-07
US12/794,768 2010-06-06
US12/794,768 US8502856B2 (en) 2010-04-07 2010-06-06 In conference display adjustments

Publications (2)

Publication Number Publication Date
CN102215373A CN102215373A (en) 2011-10-12
CN102215373B true CN102215373B (en) 2014-12-24

Family

ID=44746473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010602653.9A Active CN102215373B (en) 2010-04-07 2010-09-25 In conference display adjustments

Country Status (1)

Country Link
CN (1) CN102215373B (en)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9307194B2 (en) * 2012-02-03 2016-04-05 Samsung Sds Co., Ltd. System and method for video call
CN102625129A (en) * 2012-03-31 2012-08-01 福州一点通广告装饰有限公司 Method for realizing remote reality three-dimensional virtual imitated scene interaction
CN103118242A (en) * 2012-11-16 2013-05-22 佳都新太科技股份有限公司 Video call image rectification method
CN103929747A (en) * 2013-01-16 2014-07-16 中兴通讯股份有限公司 Dimension to dimension (D2D) discovery application and completion method and corresponding device
CN108549119A (en) 2013-07-04 2018-09-18 核心光电有限公司 Small-sized focal length lens external member
CN109120823B (en) 2013-08-01 2020-07-14 核心光电有限公司 Thin multi-aperture imaging system with auto-focus and method of use thereof
CN103702064B (en) * 2013-12-27 2019-01-18 三亚中兴软件有限责任公司 A kind of video-meeting method, terminal and system
CN103841353B (en) * 2014-02-24 2017-08-01 广州华多网络科技有限公司 Video interactive method, terminal, server and system
US9392188B2 (en) 2014-08-10 2016-07-12 Corephotonics Ltd. Zoom dual-aperture camera with folded lens
US9516220B2 (en) 2014-10-02 2016-12-06 Intel Corporation Interactive video conferencing
US10021346B2 (en) 2014-12-05 2018-07-10 Intel IP Corporation Interactive video conferencing
CN104735467B (en) * 2015-03-31 2019-03-15 北京奇艺世纪科技有限公司 Video picture-in-pictures advertisement generation method and device
KR102143309B1 (en) 2015-08-13 2020-08-11 코어포토닉스 리미티드 Dual aperture zoom camera with video support and switching/non-switching dynamic control
CN107230187B (en) * 2016-03-25 2022-05-24 北京三星通信技术研究有限公司 Method and device for processing multimedia information
CN107197356B (en) * 2017-06-06 2020-08-14 海信视像科技股份有限公司 Method and device for displaying screen menu in television and television
CN108965899A (en) * 2017-11-22 2018-12-07 北京视联动力国际信息技术有限公司 A kind of method of video image processing and device based on view networking
CN113075776B (en) 2017-11-23 2023-08-29 核心光电有限公司 mobile electronic device
CN111971949B (en) * 2018-03-28 2021-07-13 富士胶片株式会社 Image processing system, image processing method, and information processing apparatus
KR20200135778A (en) 2018-04-23 2020-12-03 코어포토닉스 리미티드 An optical-path folding-element with an extended two degree of freedom rotation range
US11635596B2 (en) 2018-08-22 2023-04-25 Corephotonics Ltd. Two-state zoom folded camera
CN109257546A (en) * 2018-09-26 2019-01-22 北京大米未来科技有限公司 A kind of image display method, device, electronic equipment and medium
CN110502198B (en) * 2018-09-29 2023-06-16 国核自仪系统工程有限公司 Interface display system based on FPGA
CN110505428B (en) * 2019-08-28 2021-06-15 联想(北京)有限公司 Information processing method and electronic equipment
US20230005413A1 (en) * 2019-09-17 2023-01-05 Sharp Nec Display Solutions, Ltd. Display control device, display device, display control method
CN114641805A (en) * 2020-02-22 2022-06-17 核心光电有限公司 Split screen feature for macro photography
EP3902244B1 (en) * 2020-04-23 2022-03-23 Axis AB Controlling a pan-tilt-zoom camera
CN117572549A (en) 2020-05-30 2024-02-20 核心光电有限公司 System and method for obtaining ultra-macro images
US11637977B2 (en) 2020-07-15 2023-04-25 Corephotonics Ltd. Image sensors and sensing methods to obtain time-of-flight and phase detection information
CN112969083A (en) * 2021-02-20 2021-06-15 深圳市颍创科技有限公司 Method and system for simultaneously displaying main picture and sub-picture in PIP picture in vertical screen mode
CN114020198B (en) * 2021-09-30 2023-01-17 荣耀终端有限公司 Display method and electronic equipment
CN115002384B (en) * 2021-12-24 2023-01-31 荣耀终端有限公司 Method for transmitting data, electronic device and readable storage medium
CN115118921B (en) * 2022-08-29 2023-01-20 全时云商务服务股份有限公司 Method and system for video screen-combining self-adaptive output in cloud conference

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1473430A (en) * 2000-11-01 2004-02-04 ���˹���Ѷ��� Mixed-media telecommunication call set-up
US7148911B1 (en) * 1999-08-09 2006-12-12 Matsushita Electric Industrial Co., Ltd. Videophone device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7697024B2 (en) * 2005-11-03 2010-04-13 Broadcom Corp. Method and system of tracking and stabilizing an image transmitted using video telephony
KR100817315B1 (en) * 2006-09-25 2008-03-27 삼성전자주식회사 Mobile terminal for receiving digital broadcasting having touch screen and method for controlling pip screen thereof
JP5410720B2 (en) * 2008-09-25 2014-02-05 日立コンシューマエレクトロニクス株式会社 Digital information signal transmitting / receiving apparatus and digital information signal transmitting / receiving method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7148911B1 (en) * 1999-08-09 2006-12-12 Matsushita Electric Industrial Co., Ltd. Videophone device
CN1473430A (en) * 2000-11-01 2004-02-04 ���˹���Ѷ��� Mixed-media telecommunication call set-up

Also Published As

Publication number Publication date
CN102215373A (en) 2011-10-12

Similar Documents

Publication Publication Date Title
CN102215373B (en) In conference display adjustments
CN102215217B (en) Establishing a video conference during a phone call
CN104270597B (en) Video conference is established during call
CN102215372B (en) Remote control operations in a video conference
CN102215374B (en) Camera is switched during the video conference of multi-camera mobile device
KR102660942B1 (en) Establishing a video conference during a phone call

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant