一种拍摄视频的方法及电子设备转让专利

申请号 : CN202210677485.2

文献号 : CN115278048B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 卞超康凤霞葛璐

申请人 : 华为技术有限公司

摘要 :

一种拍摄视频的方法及电子设备,涉及拍照技术领域,可在录制视频的过程中切换摄像头,一次拍摄便可以得到多摄像头视角拍摄的视频文件,提升了用户的拍摄体验。电子设备可显示第一界面;该第一界面是正在录制视频的取景界面,第一界面包括第一摄像头采集的第一预览图像;接收用户对第一界面的第一操作;响应于第一操作,显示包括第二摄像头采集的第二预览图像的第二界面;接收用户对第一界面的第二操作,第二操作用于触发电子设备停止录制视频;生成第一视频文件,第一视频文件包括第一视频流和第二视频流,第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。

权利要求 :

1.一种拍摄控制方法,其特征在于,应用于电子设备,所述方法包括:

所述电子设备显示第一界面,所述第一界面是电子设备拍照或录像的取景界面,所述第一界面包括所述电子设备的第一摄像头采集的第一预览图像;

响应于第一操作,所述电子设备显示多个第一控件;所述多个第一控件的形式为多个预览窗,每个预览窗上显示有对应摄像头采集的预览图像;所述多个第一控件包括第一逻辑控件和第二逻辑控件,所述第一逻辑控件对应于第一逻辑摄像头,所述第二逻辑控件对应于第二逻辑摄像头,所述第一逻辑控件用于触发所述电子设备使用所述第一逻辑摄像头,所述第二逻辑控件用于触发所述电子设备使用所述第二逻辑摄像头,所述第一逻辑摄像头和所述第二逻辑摄像头是所述电子设备的同一个物理摄像头在不同变焦倍率下实现的。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

响应于作用于所述第一逻辑控件的点击操作,所述电子设备将所述第一界面中的所述第一预览图像切换为所述电子设备的所述第一逻辑摄像头采集的第二预览图像。

3.根据权利要求1所述的方法,其特征在于,所述第一界面包括摄像头切换选项,所述摄像头切换选项用于触发所述电子设备切换所述电子设备的前置摄像头和后置摄像头。

4.根据权利要求1‑3中任一项所述的方法,其特征在于,所述变焦倍率为光学变焦倍率或数字变焦倍率。

5.根据权利要求4所述的方法,其特征在于,所述第一逻辑控件和所述第二逻辑控件上显示有对应的变焦倍率。

6.根据权利要求1所述的方法,其特征在于,所述电子设备显示多个第一控件,包括:所述电子设备在所述第一界面,以第一显示方式显示所述第一摄像头对应的第一控件,以第二显示方式显示所述电子设备的摄像头中除所述第一摄像头之外的其他摄像头对应的第一控件;

其中,所述第一显示方式与所述第二显示方式不同;以所述第一显示方式显示所述第一摄像头对应的第一控件,用于指示所述第一摄像头是所述电子设备的预览摄像头,所述第一界面显示所述第一摄像头采集的预览图像。

7.根据权利要求6所述的方法,其特征在于,所述方法还包括:

响应于作用于所述第一逻辑控件的点击操作,所述电子设备以所述第一显示方式显示所述第一逻辑控件,以所述第二显示方式显示所述电子设备的摄像头中除所述第一逻辑摄像头之外的其他摄像头对应的第一控件;

其中,以所述第一显示方式显示所述第一逻辑控件,用于指示所述第一逻辑摄像头是所述电子设备的预览摄像头,所述第一界面显示所述第一逻辑摄像头采集的预览图像。

8.根据权利要求6或7所述的方法,其特征在于,所述第一显示方式包括加粗框的显示方式,所述第二显示方式包括未加粗框的显示方式。

9.根据权利要求1所述的方法,其特征在于,所述电子设备显示多个第一控件,包括:所述电子设备在所述第一界面中用于显示摄像头切换选项的位置显示所述多个第一控件;或者,所述电子设备在所述第一界面的取景框中显示所述多个第一控件。

10.根据权利要求1所述的方法,其特征在于,在所述电子设备显示多个第一控件之后,所述方法还包括:响应于作用于第三控件的点击操作,所述电子设备隐藏所述多个第一控件。

11.根据权利要求1所述的方法,其特征在于,所述电子设备显示多个第一控件,包括:响应于作用于摄像头切换选项的点击操作,如果所述电子设备的预设功能已开启,所述电子设备则在所述第一界面显示所述多个第一控件;

其中,所述预设功能是所述在拍照或录像的取景界面进行多摄像头切换的功能。

12.一种电子设备,其特征在于,所述电子设备包括显示屏、多个摄像头、存储器和一个或多个处理器;所述显示屏、所述多个摄像头、所述存储器和所述处理器耦合;所述多个摄像头用于采集图像,所述显示屏用于显示所述处理器生成的图像,以及所述多个摄像头采集的图像,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;当所述处理器执行所述计算机指令时,使得所述电子设备执行:显示第一界面,所述第一界面是电子设备拍照或录像的取景界面,所述第一界面包括所述电子设备的第一摄像头采集的第一预览图像;

响应于第一操作,显示多个第一控件;所述多个第一控件的形式为多个预览窗,每个预览窗上显示有对应摄像头采集的预览图像;所述多个第一控件包括第一逻辑控件和第二逻辑控件,所述第一逻辑控件对应于第一逻辑摄像头,所述第二逻辑控件对应于第二逻辑摄像头,所述第一逻辑控件用于触发所述电子设备使用所述第一逻辑摄像头,所述第二逻辑控件用于触发所述电子设备使用所述第二逻辑摄像头,所述第一逻辑摄像头和所述第二逻辑摄像头是所述电子设备的同一个物理摄像头在不同变焦倍率下实现的。

13.根据权利要求12所述的电子设备,其特征在于,当所述处理器执行所述计算机指令时,还使得所述电子设备执行:响应于作用于所述第一逻辑控件的点击操作,将所述第一界面中的所述第一预览图像切换为所述电子设备的所述第一逻辑摄像头采集的第二预览图像。

14.根据权利要求12所述的电子设备,其特征在于,所述第一界面包括摄像头切换选项,所述摄像头切换选项用于触发所述电子设备切换所述电子设备的前置摄像头和后置摄像头。

15.根据权利要求12‑14中任一项所述的电子设备,其特征在于,所述变焦倍率为光学变焦倍率或数字变焦倍率。

16.根据权利要求15所述的电子设备,其特征在于,所述第一逻辑控件和所述第二逻辑控件上显示有对应的变焦倍率。

17.根据权利要求12所述的电子设备,其特征在于,所述显示多个第一控件,包括:在所述第一界面,以第一显示方式显示所述第一摄像头对应的第一控件,以第二显示方式显示所述电子设备的摄像头中除所述第一摄像头之外的其他摄像头对应的第一控件;

其中,所述第一显示方式与所述第二显示方式不同;以所述第一显示方式显示所述第一摄像头对应的第一控件,用于指示所述第一摄像头是所述电子设备的预览摄像头,所述第一界面显示所述第一摄像头采集的预览图像。

18.根据权利要求17所述的电子设备,其特征在于,当所述处理器执行所述计算机指令时,还使得所述电子设备执行:响应于作用于所述第一逻辑控件的点击操作,以所述第一显示方式显示所述第一逻辑控件,以所述第二显示方式显示所述电子设备的摄像头中除所述第一逻辑摄像头之外的其他摄像头对应的第一控件;

其中,以所述第一显示方式显示所述第一逻辑控件,用于指示所述第一逻辑摄像头是所述电子设备的预览摄像头,所述第一界面显示所述第一逻辑摄像头采集的预览图像。

19.根据权利要求17或18所述的电子设备,其特征在于,所述第一显示方式包括加粗框的显示方式,所述第二显示方式包括未加粗框的显示方式。

20.根据权利要求12所述的电子设备,其特征在于,所述显示多个第一控件,包括:在所述第一界面中用于显示摄像头切换选项的位置显示所述多个第一控件;或者,在所述第一界面的取景框中显示所述多个第一控件。

21.根据权利要求12所述的电子设备,其特征在于,当所述处理器执行所述计算机指令时,还使得所述电子设备执行:响应于作用于第三控件的点击操作,所述电子设备隐藏所述多个第一控件。

22.根据权利要求12所述的电子设备,其特征在于,所述显示多个第一控件,包括:响应于作用于摄像头切换选项的点击操作,如果所述电子设备的预设功能已开启,则在所述第一界面显示所述多个第一控件;

其中,所述预设功能是所述在拍照或录像的取景界面进行多摄像头切换的功能。

23.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1‑11中任一项所述的方法。

说明书 :

一种拍摄视频的方法及电子设备

[0001] 本申请要求于2020年11月30日提交国家知识产权局、申请号为202011377560.0、发明名称为“一种拍摄视频的方法及电子设备”,于2020年11月30日提交国家知识产权局、申请号为202011385330.9、发明名称为“一种拍摄控制方法及电子设备”,以及于2020年11月30日提交国家知识产权局、申请号为202011381353.2、发明名称为“一种拍摄视频的方法及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。

技术领域

[0002] 本申请实施例涉及拍照技术领域,尤其涉及一种拍摄视频的方法及电子设备。

背景技术

[0003] 现有的手机一般具有拍照功能,越来越来的人使用手机拍摄照片和视频来记录生活的点点滴滴。例如,手机录制视频的过程包括以下步骤(1)和步骤(2)。步骤(1):手机显示图1A所示的录制视频的取景界面101后,响应于用户对开始录制按钮102的点击操作,开始录制视频,并显示图1B所示的录制视频界面103。该录制视频界面103包括停止录制按钮104。步骤(2):手机响应于用户对图1B所示的停止录制按钮104的点击操作,停止录制视频并生成已录制的视频。
[0004] 目前,大多数手机中配置有多个摄像头,如前置摄像头和后置摄像头。不同摄像头的硬件参数不同,并且不同摄像头在手机上的位置不同。因此,当手机被固定在一个取景环境时,不同摄像头采集到该取景环境的图像不同。为了拍摄出趣味性更高的视频,在录制一段视频的过程中,需要切换使用手机中不同的摄像头来采集图像。但是,现有方案中并不支持录制视频过程切换摄像头。
[0005] 一些方案中,可以采用分段录制的方式,依次使用手机中不同的摄像头多次拍摄,得到多个临时视频文件;最后,将多个临时视频文件整合成一个完成的视频文件。这样,便可以得到切换使用不同摄像头拍摄的视频文件。

发明内容

[0006] 本申请实施例提供一种拍摄视频的方法及电子设备,可以在录制视频的过程中切换摄像头,一次拍摄便可以得到多摄像头视角拍摄的视频文件,提升了用户的拍摄体验。
[0007] 第一方面,本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的电子设备。其中,电子设备可显示第一界面。该第一界面是电子设备正在录制视频的取景界面,该第一界面包括多个摄像头中的第一摄像头采集的第一预览图像。然后,电子设备可以接收用户对第一界面的第一操作。该第一操作用于触发电子设备切换使用多个摄像头中的第二摄像头。响应于该第一操作,电子设备可显示第二界面,该第二界面也是电子设备正在录制视频的取景界面。不同的是,该第二界面包括第二摄像头采集的第二预览图像。也就是说,电子设备将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像。最后,电子设备可接收用户对第二界面的第二操作,该第二操作用于触发电子设备停止录制视频。电子设备可生成第一视频文件。例如,第一界面还包括停止录制按钮。上述第二操作可以是用户对该停止录制按钮的点击操作(如单击操作)。
[0008] 其中,上述第一视频文件可以包括第一视频流和第二视频流,该第一视频流包括多帧第一预览图像,该第二视频流包括多帧第二预览图像。上述第二摄像头与第一摄像头不同
[0009] 本申请中,电子设备录制视频的过程中,可以接收用户对电子设备正在录制视频的取景界面(如第一界面)的第一操作。然后,电子设备可以响应于该第一操作,将第一摄像头采集的第一预览图像切换为第二摄像头采集的第二预览图像,即实现在录制视频的过程中,切换电子设备的摄像头。最后,接收到用户的第二操作(如对停止录制按钮的点击操作),电子设备可生成包括第一视频流和第二视频流的完整的视频文件。
[0010] 综上所述,采用本申请实施例的方法,可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合,手机接收到用户对停止录制按钮的点击操作,可以实时生成上述多视角的视频文件,供用户随时查看。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0011] 进一步的,采用本申请实施例的方法,并不会限制电子设备录制视频的时长。也就是说,电子设备执行本申请的方法,可以根据用户的需求录制任意时长的视频文件。
[0012] 在第一方面的一种可能的设计方式中,上述第一界面还包括用于触发电子设备切换使用第二摄像头的第一控件;上述第一操作为用户对第一控件的点击操作。其中,在第一界面显示用于触发电子设备切换摄像头的第一控件,可以方便用户操作电子设备在录制视频的过程中切换摄像头。
[0013] 在第一方面的另一种可能的设计方式中,上述第一操作还可以是用户在上述第一界面输入的预设手势,如S形手势或者√手势等。
[0014] 在第一方面的另一种可能的设计方式中,上述第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头。或者,上述第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0015] 也就是说,采用本申请实施例的方法,可以在电子设备录制视频的过程中,进行前置摄像头和后置摄像头的切换。
[0016] 在第一方面的另一种可能的设计方式中,上述多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,所述摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头;所述第一摄像头和所述第二摄像头是所述多个摄像头中的任意两个摄像头,所述第一摄像头与所述第二摄像头不同。
[0017] 也就是说,采用本申请实施例的方法,可以在电子设备录制视频的过程中,可以切换电子设备中的任意摄像头的切换,该任意摄像头可以是电子设备中各种类型的前置摄像头或后置摄像头。
[0018] 在第一方面的另一种可能的设计方式中,上述第一界面和第二界面均可以包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。
[0019] 其中,多个第二控件中包括第一控件,第一控件用于触发电子设备切换使用第二摄像头,第一操作为用户对第一控件的点击操作。
[0020] 例如,以电子设备包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头为例。上述多个第二控件可以包括“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。“前置主摄”控件对应于电子设备的前置主摄像头,“后置主摄”控件对应于电子设备的后置主摄像头,“前置长焦”控件对应于电子设备的前置长焦摄像头,“前置广角”控件对应于电子设备的前置广角摄像头,“后置长焦”控件对应于电子设备的后置长焦摄像头,用于触发电子设备显示后置长焦摄像头采集的预览图像,“后置广角”控件对应于电子设备的后置广角摄像头。
[0021] 在第一方面的另一种可能的设计方式中,在上述第一界面中,第一摄像头对应的第二控件处于第一显示状态,其他摄像头对应的第二控件处于第二显示状态。在第二界面中,第二摄像头对应的第二控件处于第一显示状态,其他摄像头对应的第二控件处于第二显示状态。
[0022] 其中,处于第一显示状态的第二控件对应的摄像头是电子设备的预览摄像头;处于第二显示状态的第二控件对应的摄像头不是预览摄像头。如此,用户便可以根据各个第二控件的显示状态,识别出电子设备的预览摄像头。
[0023] 在第一方面的另一种可能的设计方式中,上述电子设备显示第一界面,可以包括:电子设备显示第三界面;其中,第三界面是电子设备正在录制视频的取景界面,第三界面包括第一摄像头采集的第一预览图像,第三界面还包括第三控件,第三控件用于触发电子设备显示多个第二控件;响应于用户对第三控件的点击操作,电子设备显示包括多个第二控件的第一界面。
[0024] 例如,上述第三控件可以是摄像头切换选项。在这种设计方式中,电子设备正在录制视频的取景界面(如第三界面)可以显示第三控件。响应于用户对该第三控件的点击操作,电子设备才可以显示多个第二控件。
[0025] 在第一方面的另一种可能的设计方式中,电子设备开始录制视频后,并不能响应于第一操作在录制视频的过程中切换摄像头。而是在开始录制视频后,响应于用户开启预设功能(如录制视频过程中切换摄像头的功能)后,才可以响应于第一操作在录制视频的过程中切换摄像头。
[0026] 具体的,在电子设备显示第一界面之前,电子设备可以显示第四界面。其中,该第四界面是电子设备录制视频的取景界面,该第四界面包括开始录制按钮,该开始录制按钮用于触发电子设备开始录制视频。响应于用户对该开始录制按钮的点击操作,该电子设备可以显示包括第一摄像头采集的第一预览图像的第五界面。其中,该第五界面包括预设功能开关,该预设功能开关用于触发电子设备开启或关闭预设功能,该预设功能为录制视频过程中切换摄像头的功能。然后,电子设备可以接收用户对预设功能开关的第三操作,该第三操作用于触发电子设备开启预设功能。
[0027] 其中,上述电子设备显示第一界面,可以包括:响应于用户对预设功能开关的第三操作,电子设备显示包括第一控件的第一界面,第一控件用于触发电子设备切换使用第二摄像头。
[0028] 在这种设计方式中,电子设备可以通过预设功能开关的状态指示电子设备开启/关闭预设功能。这样,用户便可以通过观察该预设功能开关的状态,判断预设功能是否开启/关闭。当然,用户也可以通过观察电子设备正在录制视频的取景界面是否包括上述第一控件,判断预设功能是否开启/关闭。
[0029] 在第一方面的另一种可能的设计方式中,响应于用户对所述预设功能开关的所述第三操作,所述电子设备便可以启动所述多个摄像头中除所述第一摄像头之前的其他摄像头,但电子设备不会在该第一界面不显示所述其他摄像头采集图像。
[0030] 一般而言,电子设备录制视频的过程中,只有一个摄像头开启以采集图像。这样,电子设备在录制视频的过程中,如果电子设备要将预览摄像头由第一摄像头切换为第二摄像头,则启动第二摄像头需要一定的时间,则取景界面可能会出现短时间(如1秒)的黑屏或空白,影响用户体验。
[0031] 为了在电子设备录制视频的过程中,实现摄像头的无感切换,电子设备可以提前启动第二摄像头。具体的,电子设备可提前启动上述多个摄像头中除第一摄像头之前的其他摄像头。
[0032] 其中,电子设备提前启动上述其他摄像头。这样,无论电子设备切换使用哪一个摄像头,都不会因为启动摄像头需要一定时间使得取景界面的出现短时间(如1秒)的黑屏或空白。采用本方案,可以在电子设备录制视频的过程中,实现摄像头的无感切换,可以提升用户的拍摄体验。
[0033] 在第一方面的另一种可能的设计方式中,电子设备开始录制视频后,如果电子设备的预设功能已开启,电子设备则可以响应于第一操作在录制视频的过程中切换摄像头。但是,电子设备开始录制视频后,如果电子设备的预设功能还未开启,电子设备则不能响应于第一操作在录制视频的过程中切换摄像头。
[0034] 具体的,在电子设备显示第一界面之前,该电子设备可显示第四界面。其中,该第四界面是所述电子设备录制视频的取景界面,所述第五界面包括开始录制按钮和所述第一摄像头采集的图像,该开始录制按钮用于触发所述电子设备开始录制视频。
[0035] 其中,上述电子设备显示第一界面,可以包括:响应于用户对所述开始录制按钮的点击操作,若所述电子设备的预设功能已开启,所述电子设备则显示包括第一控件的所述第一界面,所述第一控件用于触发所述电子设备切换使用所述第二摄像头。其中,所述预设功能为录制视频过程中切换摄像头的功能,所述电子设备的设置界面或通知栏包括用于开启或关闭所述预设功能的预设功能开关。
[0036] 在这种设计方式中,电子设备响应于用户的开始录制视频的操作,便可以在录制视频的取景界面显示第一控件。如此,便可以接收用户对该第一控件的点击操作,切换摄像头,以为用户提供在录制视频的过程中切换摄像头的服务。
[0037] 在第一方面的另一种可能的设计方式中,响应于用户对所述开始录制按钮的点击操作,若所述电子设备的预设功能已开启,所述电子设备可以启动多个摄像头中除第一摄像头之前的其他摄像头,但第一界面不显示该其他摄像头采集图像。其中,该其他摄像头包括第二摄像头。
[0038] 其中,电子设备提前启动上述其他摄像头。这样,无论电子设备切换使用哪一个摄像头,都不会因为启动摄像头需要一定时间使得取景界面的出现短时间(如1秒)的黑屏或空白。采用本方案,可以在电子设备录制视频的过程中,实现摄像头的无感切换,可以提升用户的拍摄体验。
[0039] 在第一方面的另一种可能的设计方式中,为了降低电子设备的功耗,电子设备可以不提前启动电子设备中的多个摄像头,而是响应于用户对第一界面的第一操作,才启动第二摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低电子设备的功耗。
[0040] 在第一方面的另一种可能的设计方式中,在响应于第一操作,电子设备将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像之后,本申请实施例的方法还可以包括:响应于用户对预设功能开关的第四操作,电子设备关闭第一摄像头。这样,可以降低电子设备的功耗。
[0041] 在第一方面的另一种可能的设计方式中,电子设备在一次拍摄视频的过程中,可能会至少两次切换摄像头。例如,电子设备将预览摄像头由第一摄像头切换为第二摄像头后,还可以再将预览摄像头由第二摄像头切换为第三摄像头。
[0042] 具体的,本申请实施例的方法可以包括:电子设备显示第一界面;电子设备接收用户对第一界面的第一操作,该第一操作用于触发电子设备切换使用多个摄像头中的第二摄像头;响应于该第一操作,电子设备将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像;电子设备再次接收用户对第一界面的第一操作(如用户对多个第二控件中第三摄像头对应的第三控件的点击操作),该第一操作用于触发电子设备切换使用多个摄像头中的第三摄像头;响应于该第一操作,电子设备将第一界面中的第二预览图像切换为第三摄像头采集的第三预览图像;电子设备接收用户对第一界面的第二操作,该第二操作用于触发电子设备停止录制视频。电子设备可生成第二视频文件。该第二视频文件包括第一视频流、第二视频流和第三视频流,该第一视频流包括多帧第一预览图像,该第二视频流包括多帧第二预览图像,该第三视频流包括多帧第三预览图像。
[0043] 第二方面,本申请实施例提供一种电子设备,该电子设备包括显示屏、多个摄像头、存储器和一个或多个处理器。显示屏、多个摄像头、存储器和处理器耦合。多个摄像头用于采集图像。显示屏用于显示处理器生成的图像,以及多个摄像头采集的图像。存储器用于存储计算机程序代码,计算机程序代码包括计算机指令。
[0044] 其中,当处理器执行计算机指令时,使得电子设备执行以下操作:显示第一界面;其中,第一界面是电子设备正在录制视频的取景界面,第一界面包括多个摄像头中的第一摄像头采集的第一预览图像;接收用户对第一界面的第一操作;其中,第一操作用于触发电子设备切换使用多个摄像头中的第二摄像头,第二摄像头与第一摄像头不同;响应于第一操作,显示第二界面,该第二界面是电子设备正在录制视频的取景界面,该第二界面包括第二摄像头采集的第二预览图像;接收用户对第二界面的第二操作,第二操作用于触发电子设备停止录制视频;生成第一视频文件,第一视频文件包括第一视频流和第二视频流,第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0045] 在第二方面的一种可能的设计方式中,上述第一界面包括用于触发电子设备切换使用第二摄像头的第一控件;第一操作为用户对第一控件的点击操作。
[0046] 在第二方面的另一种可能的设计方式中,上述第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头。或者,第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0047] 在第二方面的另一种可能的设计方式中,上述多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头;第一摄像头和第二摄像头是多个摄像头中的任意两个摄像头,第一摄像头与第二摄像头不同。
[0048] 在第二方面的另一种可能的设计方式中,上述第一界面和第二界面均包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。
[0049] 其中,多个第二控件中包括第一控件,第一控件用于触发电子设备切换使用第二摄像头,第一操作为用户对第一控件的点击操作。
[0050] 在第二方面的另一种可能的设计方式中,在上述第一界面中,第一摄像头对应的第二控件处于第一显示状态,其他摄像头对应的第二控件处于第二显示状态;在上述第二界面中,第二摄像头对应的第二控件处于第一显示状态,其他摄像头对应的第二控件处于第二显示状态。
[0051] 其中,处于第一显示状态的第二控件对应的摄像头是电子设备的预览摄像头;处于第二显示状态的第二控件对应的摄像头不是预览摄像头。
[0052] 在第二方面的另一种可能的设计方式中,当所述处理器执行计算机指令时,使得电子设备还执行以下步骤:显示第三界面;其中,第三界面是电子设备正在录制视频的取景界面,第三界面包括第一摄像头采集的第一预览图像,第三界面还包括第三控件,第三控件用于触发电子设备显示多个第二控件;响应于用户对第三控件的点击操作,显示包括多个第二控件的第一界面。
[0053] 在第二方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:显示第四界面;其中,第四界面是电子设备录制视频的取景界面,第四界面包括开始录制按钮,开始录制按钮用于触发电子设备开始录制视频;响应于用户对开始录制按钮的点击操作,启动第一摄像头,显示包括第一摄像头采集的第一预览图像的第五界面;其中,第五界面包括预设功能开关,预设功能开关用于触发电子设备开启或关闭预设功能,预设功能为录制视频过程中切换摄像头的功能;接收用户对预设功能开关的第三操作,第三操作用于触发电子设备开启预设功能;响应于用户对预设功能开关的第三操作,显示包括第一控件的第一界面,第一控件用于触发电子设备切换使用第二摄像头。
[0054] 在第二方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:响应于用户对预设功能开关的第三操作,启动上述多个摄像头中除第一摄像头的其他摄像头,但第一界面不显示该其他摄像头采集图像。其中,上述其他摄像头包括第二摄像头。
[0055] 在第二方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:显示第四界面;其中,第四界面是电子设备录制视频的取景界面,该第四界面包括开始录制按钮和第一摄像头采集的图像,开始录制按钮用于触发电子设备开始录制视频;响应于用户对开始录制按钮的点击操作,若电子设备的预设功能已开启,则显示包括第一控件的第一界面,第一控件用于触发电子设备切换使用第二摄像头。其中,预设功能为录制视频过程中切换摄像头的功能,电子设备的设置界面或通知栏包括用于开启或关闭预设功能的预设功能开关。
[0056] 在第二方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:响应于用户对开始录制按钮的点击操作,若电子设备的预设功能已开启,启动上述多个摄像头中除第一摄像头的其他摄像头,但第一界面不显示该其他摄像头采集图像。其中,上述其他摄像头包括第二摄像头。
[0057] 在第二方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:响应于用户对第一界面的第一操作,启动第二摄像头。
[0058] 在第二方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:响应于用户对预设功能开关的第四操作,电子设备关闭第一摄像头。
[0059] 可以理解地,上述提供的第二方面及其任一种可能的设计方式所述的电子设备所能达到的有益效果,可参考如第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
[0060] 第三方面,本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的电子设备。其中,电子设备可显示第一界面。其中,该第一界面是电子设备正在录制视频的取景界面,该第一界面包括多个摄像头中的第一摄像头采集的第一预览图像。然后,电子设备响应于用户在第一界面的第一操作,可显示第二界面。该第一操作用于触发电子设备暂停录制视频,该第二界面是电子设备暂停录制视频的界面,第二界面包括第一摄像头采集的第二预览图像,第二界面还包括第一控件,第一控件用于触发电子设备使用多个摄像头中的第二摄像头,第二摄像头与第一摄像头不同。之后,电子设备响应于用户对第一控件的点击操作,将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像,继续录制视频。其中,第二界面还包括停止录制按钮。最后,电子设备响应于用户对停止录制按钮的点击操作,停止录制视频;生成第一视频文件。其中,第一视频文件包括第一视频流和第二视频流,第一视频流包括多帧第一预览图像,第二视频流包括多帧第三预览图像。
[0061] 采用本申请实施例的方法,电子设备响应于用户在第一界面的第一操作,可以暂停录制视频,但并不会生成视频文件。并且,电子设备可以响应于用户的操作,随时继续录制视频。在上述暂停录制视频的过程中,电子设备可以接收用户的操作,进行摄像头的切换。例如,响应于用户对暂停录制按钮的第一操作,电子设备可显示包括第一控件的第二界面。该第一控件用于触发电子设备使用多个摄像头中的第二摄像头。然后,响应于用户对第一控件的点击操作,电子设备将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像,继续录制视频。
[0062] 综上所述,采用本申请实施例的方法,电子设备可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合,响应于用户对停止录制按钮的点击操作,可以实时生成上述多视角的视频文件,供用户随时查看。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0063] 进一步的,采用本申请实施例的方法,并不会限制电子设备录制视频的时长。也就是说,电子设备执行本申请实施例的方法,可以根据用户的需求录制任意时长的视频文件。
[0064] 在第三方面的一种可能的设计方式中,上述第一界面包括暂停录制按钮,上述第一操作是用户对暂停录制按钮的点击操作。
[0065] 在该设计方式中,电子设备可以在正在录制视频的取景界面(即第一界面)显示暂停录制按钮。一般而言,电子设备正在录制视频的取景界面包括停止录制按钮。暂停录制按钮与该停止录制按钮不同。响应于用户对停止录制按钮的点击操作,电子设备可以停止录制视频,生成视频文件。但是,响应于用户对暂停录制按钮的点击操作,电子设备可以暂停录制视频,但并不会生成视频文件。
[0066] 在第三方面的一种可能的设计方式中,电子设备响应于用户对第一控件的点击操作,可以将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像;但是,并不会继续录制视频。而是在接收到用户对第二界面中暂停录制按钮的第二操作后,才会继续录制视频。
[0067] 具体的,上述电子设备响应于用户对第一控件的点击操作,将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像,继续录制视频,可以包括:电子设备响应于用户对第一控件的点击操作,将第二界面中的第二预览图像切换为第二摄像头采集的第四预览图像;电子设备响应于用户对第二界面的第二操作,在第二界面显示第二摄像头采集的第三预览图像,并继续录制视频。该第二操作用于触发电子设备继续录制视频。
[0068] 应理解,本申请实施例中,响应于用户对第一控件的点击操作,电子设备可以先显示将第二界面中第一摄像头采集的第二预览图像切换为第二摄像头采集的第四预览图像,即进行摄像头的切换。但是,此时电子设备并未开始录制视频。也就是说,电子设备不会缓存第二摄像头采集的第四预览图像。如此,则可以给用户留出一段时间来观察和调整第二摄像头的拍摄视角,以及调整拍摄对象的姿态(即摆拍)。当用户调整好拍摄视角和姿态后,便可以对第二界面中暂停录制按钮输入第二操作。电子设备可以在第二界面显示第二摄像头采集的第三预览图像,并继续录制视频。也就是说,电子设备可以缓存第二摄像头采集的第三预览图像。
[0069] 在第三方面的另一种可能的设计方式中,第二界面还包括暂停录制按钮。第二操作是用户对暂停录制按钮的点击操作。
[0070] 在第三方面的另一种可能的设计方式中,上述第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头。或者,上述第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0071] 也就是说,采用本申请实施例的方法,可以在电子设备录制视频的过程中,进行前置摄像头和后置摄像头的切换。
[0072] 在第三方面的另一种可能的设计方式中,上述电子设备响应于用户对所述暂停录制按钮的第一操作,可以启动所述第二摄像头。
[0073] 其中,虽然电子设备响应于用户在第一界面的第一操作,启动了第二摄像头,该第二摄像头可以采集图像;但是,此时电子设备并不会显示第二摄像头采集的图像。此时,第一摄像头作为电子设备的预览摄像头,电子设备显示的仍是第一摄像头采集的第二预览图像。在电子设备接收到用户对第一控件的点击操作后,响应于用户对第一控件的点击操作,第二摄像头才可以作为电子设备的预览摄像头,电子设备才会显示第二摄像头采集的第四预览图像或第三预览图像。
[0074] 可以理解的是,响应于用户对所述暂停录制按钮的第一操作,电子设备启动第二摄像头后,响应于用户对第一控件的点击操作,电子设备便可以实现第一摄像头采集的第二预览图像向第二摄像头采集的第三预览图像的无缝切换。采用该设计方式,可以在录制视频的过程中,实现摄像头的无缝切换。
[0075] 在第三方面的另一种可能的设计方式中,上述电子设备响应于用户对第一控件的点击操作,可以启动所述第二摄像头。这样,虽然不能实现摄像头的无缝切换,但是用户点击第一控件时电子设备才会进行摄像头切换,电子设备才会显示第二摄像头采集的预览图像。在电子设备存在显示第二摄像头采集的预览图像的需求的情况下,才启动第二摄像头。这样,可以减少用户点击暂停录制按钮至用户点击第一控件这段时间内,第二摄像头工作所带来的功耗。在该设计方式中,可以降低电子设备的功耗。
[0076] 在第三方面的另一种可能的设计方式中,上述电子设备响应于用户对第一控件的点击操作,可以关闭第一摄像头。这样,可以减少电子设备的功耗。
[0077] 在第三方面的另一种可能的设计方式中,上述多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头;第一摄像头和第二摄像头是多个摄像头中的任意两个摄像头。
[0078] 也就是说,采用本申请的方法,可以在电子设备录制视频的过程中,可以切换电子设备中的任意摄像头的切换,该任意摄像头可以是电子设备中各种类型的前置摄像头或后置摄像头。
[0079] 在第三方面的另一种可能的设计方式中,上述第二界面包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。
[0080] 其中,第一控件是多个第二控件中的任一个控件,第一控件用于触发电子设备使用第二摄像头。
[0081] 例如,以电子设备包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头为例。上述多个第二控件可以包括“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。“前置主摄”控件对应于电子设备的前置主摄像头,“后置主摄”控件对应于电子设备的后置主摄像头,“前置长焦”控件对应于电子设备的前置长焦摄像头,“前置广角”控件对应于电子设备的前置广角摄像头,“后置长焦”控件对应于电子设备的后置长焦摄像头,用于触发电子设备显示后置长焦摄像头采集的预览图像,“后置广角”控件对应于电子设备的后置广角摄像头。
[0082] 在第三方面的另一种可能的设计方式中,电子设备响应于用户在第一界面的第一操作,显示第二界面,包括:电子设备响应于用户在第一界面的第一操作,显示第三界面;其中,第三界面是电子设备录制视频的取景界面,第三界面包括第一摄像头采集的第二预览图像,第三界面还包括第三控件;电子设备响应于用户对第三控件的点击操作,电子设备显示包括多个第二控件的第二界面。
[0083] 在第三方面的另一种可能的设计方式中,本申请的方法还可以包括:电子设备响应于用户在第一界面的第一操作,启动多个摄像头中除第一摄像头之外的其他摄像头。或者,本申请的方法还可以包括:电子设备响应于用户对第一控件的点击操作,启动多个摄像头中除第一摄像头之外的其他摄像头。
[0084] 在第三方面的另一种可能的设计方式中,本申请的方法还可以包括:所述电子设备响应于用户对所述第一控件的点击操作,关闭所述多个摄像头中除所述第二摄像头之外的其他摄像头。这样,可以减少电子设备的功耗。
[0085] 在第三方面的另一种可能的设计方式中,在电子设备显示第一界面之前,本申请的方法还可以包括:电子设备显示第四界面;其中,第四界面是电子设备录制视频的取景界面,第四界面包括开始录制按钮和第一摄像头采集的图像,开始录制按钮用于触发电子设备开始录制视频。
[0086] 其中,上述电子设备显示第一界面,可以包括:响应于用户对开始录制按钮的点击操作,若电子设备的预设功能已开启,电子设备则显示包括暂停录制按钮的第一界面。其中,预设功能为录制视频过程中切换摄像头的功能,电子设备的设置界面或通知栏包括用于开启或关闭预设功能的预设功能开关。
[0087] 在第三方面的另一种可能的设计方式中,在电子设备显示第一界面之前,本申请的方法还可以包括:电子设备显示第五界面;响应于用户对第五界面中开始录制按钮的点击操作,电子设备显示第六界面。其中,第五界面是电子设备录制视频的取景界面,第五界面包括开始录制按钮,开始录制按钮用于触发电子设备开始录制视频。其中,第六界面包括第一摄像头采集的第一预览图像,还包括预设功能开关,预设功能开关用于触发电子设备开启或关闭预设功能,预设功能为录制视频过程中切换摄像头的功能。
[0088] 其中,电子设备显示第一界面,包括:响应于用户对预设功能开关的第三操作,电子设备显示包括暂停录制按钮的第一界面。
[0089] 第四方面,本申请实施例提供一种电子设备,该电子设备包括显示屏、多个摄像头、存储器和一个或多个处理器。显示屏、多个摄像头、存储器和处理器耦合。多个摄像头用于采集图像,显示屏用于显示处理器生成的图像,以及多个摄像头采集的图像,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令。
[0090] 当处理器执行计算机指令时,使得电子设备执行以下操作:显示第一界面;其中,第一界面是电子设备正在录制视频的取景界面,第一界面包括多个摄像头中的第一摄像头采集的第一预览图像;响应于用户在第一界面的第一操作,显示第二界面;其中,第一操作用于触发电子设备暂停录制视频,第二界面是电子设备暂停录制视频的界面,第二界面包括第一摄像头采集的第二预览图像,第二界面还包括第一控件,第一控件用于触发电子设备使用多个摄像头中的第二摄像头,第二摄像头与第一摄像头不同;响应于用户对第一控件的点击操作,将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像,继续录制视频;其中,第二界面还包括停止录制按钮;响应于用户对停止录制按钮的点击操作,停止录制视频;生成第一视频文件;其中,第一视频文件包括第一视频流和第二视频流,第一视频流包括多帧第一预览图像,第二视频流包括多帧第三预览图像。
[0091] 在第四方面的一种可能的设计方式中,第一界面包括暂停录制按钮,所述第一操作是用户对所述暂停录制按钮的点击操作。
[0092] 在第四方面的一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对第一控件的点击操作,将第二界面中的第二预览图像切换为第二摄像头采集的第四预览图像;其中,第二界面还包括暂停录制按钮;响应于用户在第二界面的第二操作,在第二界面显示第二摄像头采集的第三预览图像,并继续录制视频。该第二操作用于触发电子设备继续录制视频。
[0093] 在第四方面的另一种可能的设计方式中,第二界面还包括暂停录制按钮,所述第二操作是用户对所述暂停录制按钮的点击操作。
[0094] 在第四方面的另一种可能的设计方式中,上述第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头;或者,第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0095] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户在第一界面的第一操作,启动第二摄像头;或者,响应于用户对所述第一控件的点击操作,启动所述第二摄像头。
[0096] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对第一控件的点击操作,关闭第一摄像头。
[0097] 在第四方面的另一种可能的设计方式中,上述多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头;第一摄像头和第二摄像头是多个摄像头中的任意两个摄像头。
[0098] 在第四方面的另一种可能的设计方式中,上述第二界面包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。其中,第一控件是多个第二控件中的任一个控件,第一控件用于触发电子设备使用第二摄像头。
[0099] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户在第一界面的第一操作,显示第三界面;其中,第三界面是电子设备录制视频的取景界面,第三界面包括第一摄像头采集的第二预览图像,第三界面还包括第三控件;响应于用户对第三控件的点击操作,电子设备显示包括多个第二控件的第二界面。
[0100] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户在第一界面的第一操作,启动多个摄像头中除第一摄像头之外的其他摄像头;或者,响应于用户对第一控件的点击操作,启动多个摄像头中除第一摄像头之外的其他摄像头。
[0101] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对第一控件的点击操作,关闭多个摄像头中除第二摄像头之外的其他摄像头。
[0102] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:显示第四界面;其中,第四界面是电子设备录制视频的取景界面,第四界面包括开始录制按钮和第一摄像头采集的图像,开始录制按钮用于触发电子设备开始录制视频;响应于用户对开始录制按钮的点击操作,若电子设备的预设功能已开启,则显示包括暂停录制按钮的第一界面。其中,预设功能为录制视频过程中切换摄像头的功能,电子设备的设置界面或通知栏包括用于开启或关闭预设功能的预设功能开关。
[0103] 在第四方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:显示第五界面;其中,第五界面是电子设备录制视频的取景界面,第五界面包括开始录制按钮,开始录制按钮用于触发电子设备开始录制视频;响应于用户对开始录制按钮的点击操作,显示第六界面;其中,第六界面包括第一摄像头采集的第一预览图像,还包括预设功能开关,预设功能开关用于触发电子设备开启或关闭预设功能,预设功能为录制视频过程中切换摄像头的功能;响应于用户对预设功能开关的第三操作,显示包括暂停录制按钮的第一界面。
[0104] 可以理解地,上述提供的第四方面及其任一种可能的设计方式所述的电子设备所能达到的有益效果,可参考如第三方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
[0105] 第五方面,本申请实施例提供一种拍摄控制方法,该方法可以应用于电子设备,该电子设备包括电子设备的摄像头。
[0106] 其中,电子设备可以显示第一界面。该第一界面是电子设备拍照或录像的取景界面。该第一界面包括电子设备的摄像头中第一摄像头采集的第一预览图像。然后,响应于用户在第一界面的第一操作,电子设备可以在第一界面显示多个第一控件,每个第一控件对应电子设备的摄像头中的一个摄像头,用于触发电子设备使用对应的摄像头。最后,响应于用户对多个第一控件中第二控件的点击操作,电子设备可以将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像,第二摄像头是电子设备的摄像头中第二控件对应的摄像头。
[0107] 本申请实施例中,电子设备显示拍照或录像的取景界面(即第一界面)时,可以接收用户在第一界面的第一操作。然后,电子设备响应于第一操作,可以在第一界面显示多个第一控件。其中,每个第一控件对应手机中的一个摄像头。如此,电子设备便可以接收用户对任一个第一控件(如第二控件)的点击操作,切换使用电子设备中的摄像头。采用本申请实施例的方法,可以在拍照或录像时按照用户的需求动态选择摄像头,以满足用户在不同场景下的拍摄需求,可以提升用户的拍摄体验。
[0108] 在第五方面的一种可能的设计方式中,上述第一界面包括摄像头切换选项,该摄像头切换选项用于触发电子设备切换电子设备的前置摄像头和后置摄像头。第一操作是用户对摄像头切换选项的点击操作。也就是说,响应于用户对摄像头切换选项的点击操作,电子设备可在第一界面显示多个第一控件。
[0109] 在第五方面的一种可能的设计方式中,上述多个第一控件中的每个第一控件上显示有对应摄像头的类型指示信息。该类型指示信息用于指示对应摄像头的摄像头类型,并指示对应摄像头类型为前置摄像头或后置摄像头。其中,摄像头类型至少包括:主摄像头、长焦摄像头、广角摄像头和超广角摄像头。
[0110] 例如,多个第一控件中的各个第一控件上分别显示有如下类型指示信息,“前置主摄”、“前置长焦”、“前置广角”、“后置主摄”、“后置长焦”、“后置广角”。
[0111] 在第五方面的另一种可能的设计方式中,上述每个第一控件上显示有对应摄像头的代理信息;代理信息用于指示对应摄像头为前置摄像头或后置摄像头,还包括对应摄像头的编号。其中,对应摄像头的编号包括对应摄像头的摄像头标识。
[0112] 在第五方面的另一种可能的设计方式中,上述每个第一控件为多个预览窗,每个预览窗上显示有对应摄像头采集的预览图像。应理解,在每个第一控件上显示对应摄像头采集的预览图像,可以直观的向用户展示每个摄像头的拍摄效果和拍摄视角等,有利于用户从多个摄像头中选择拍摄效果和拍摄视角等满足用户需求的摄像头。这样,可以提升用户的拍摄体验。
[0113] 在第五方面的另一种可能的设计方式中,上述方法还可以包括:响应于用户对第二控件的点击操作,电子设备启动第二摄像头。
[0114] 其中,电子设备在第一控件显示摄像头的类型指示信息或代理信息的情况下,第一控件中不需要显示摄像头的预览图像。因此,为了减少电子设备的功耗,该电子设备响应于用户对摄像头切换选项的点击操作,可以不启动电子设备的摄像头中除第一摄像头之外的其他摄像头;而是响应于用户对第二控件的点击操作才启动第二摄像头。这样,可以降低电子设备的功耗。
[0115] 在第五方面的另一种可能的设计方式中,上述方法还可以包括:响应于上述第一操作,电子设备启动电子设备的摄像头中除第一摄像头之外的其他摄像头。
[0116] 其中,电子设备在第一控件显示摄像头采集的预览图像的情况下,响应于用户对摄像头切换选项的点击操作,电子设备便可以启动多个摄像头中除第一摄像头之外的其他摄像头。这样,电子设备才可以在每个第一控件中显示对应摄像头采集的预览图像。
[0117] 在第五方面的另一种可能的设计方式中,上述方法还可以包括:响应于用户对第二控件的点击操作,电子设备关闭电子设备的摄像头中除第二摄像头之外的其他摄像头。
[0118] 应理解,电子设备接收到用户对第二控件的点击操作后,便可以明确用户想要使用第二摄像头。此时,关闭电子设备中除第二摄像头之外的其他摄像头,可以降低电子设备的功耗。
[0119] 在第五方面的另一种可能的设计方式中,上述多个第一控件可以包括第一逻辑控件和第二逻辑控件。第一逻辑控件用于触发电子设备使用第一逻辑摄像头,第二逻辑控件用于触发电子设备使用第二逻辑摄像头。其中,第一逻辑摄像头和第二逻辑摄像头是电子设备的同一个物理摄像头在不同变焦倍率下实现的,变焦倍率为光学变焦倍率或数字变焦倍率。
[0120] 应注意,在本申请实施例的一种情况下,上述多个第一控件中的每个第一控件可以对应电子设备的一个物理摄像头,如前置主摄像头、前置长焦摄像头、后置主摄像头和后置长焦摄像头等。
[0121] 在本申请实施例的另一种情况下,上述多个第一控件中可能会有至少两个第一控件对应同一物理摄像头,该至少两个第一控件对应电子设备的至少两个逻辑摄像头,如第一逻辑控件对应第一逻辑摄像头,第二逻辑控件对应第二逻辑摄像头。该至少两个逻辑摄像头(如第一逻辑摄像头和第二逻辑摄像头)本质上是一个物理摄像头。不同的是,该至少两个逻辑摄像头的变焦倍率不同。例如,第一逻辑摄像头可以是电子设备的后置长焦摄像头在1.0x的变焦倍率下实现的,第二逻辑摄像头可以是电子设备的后置长焦摄像头在2.0x的变焦倍率下实现的。
[0122] 在第五方面的另一种可能的设计方式中,上述第一逻辑控件和第二逻辑控件上显示有对应的变焦倍率。这样,可以方便用户根据变焦倍率选择对应的逻辑摄像头。
[0123] 在第五方面的另一种可能的设计方式中,上述电子设备在第一界面显示多个第一控件,可以包括:电子设备在第一界面,以第一显示方式显示第一摄像头对应的第一控件(即上述第二控件),以第二显示方式显示电子设备的摄像头中除第一摄像头之外的其他摄像头对应的第一控件。
[0124] 其中,第一显示方式与第二显示方式不同;以第一显示方式显示第一摄像头对应的第一控件,用于指示第一摄像头是电子设备的预览摄像头,第一界面显示第一摄像头采集的预览图像;电子设备的摄像头中除第一摄像头之外的其他摄像头包括第二摄像头。
[0125] 应理解,电子设备以两种不同的显示方式显示预览摄像头对应的第一控件和非预览摄像头对应的第一控件,可以方便用户可以快速识别出电子设备的预览摄像头是哪一个摄像头。
[0126] 在第五方面的另一种可能的设计方式中,本申请的方法还可以包括:响应于用户对多个第一控件中第二控件的点击操作,电子设备以第一显示方式显示第二摄像头对应的第一控件(即上述第二控件),以第二显示方式显示电子设备的摄像头中除第二摄像头之外的其他摄像头对应的第一控件。
[0127] 其中,以第一显示方式显示第二摄像头对应的第一控件,用于指示第二摄像头是电子设备的预览摄像头,第一界面显示第二摄像头采集的预览图像;电子设备的摄像头中除第二摄像头之外的其他摄像头包括第一摄像头。
[0128] 应理解,电子设备将预览摄像头由第一摄像头切换为第二摄像头后,可以以第一显示方式显示切换后的预览摄像头。这样,可以方便用户可以快速识别出电子设备的预览摄像头是哪一个摄像头。
[0129] 在第五方面的另一种可能的设计方式中,上述电子设备在第一界面显示多个第一控件,可以包括:电子设备在第一界面中用于显示摄像头切换选项的位置显示多个第一控件;或者,电子设备在第一界面的取景框中显示多个第一控件。这种设计方式给出电子设备的取景界面中用于显示多个第一控件的两种可能的位置。
[0130] 在第五方面的另一种可能的设计方式中,在响应于用户对摄像头切换选项的点击操作,电子设备在第一界面显示多个第一控件之后,上述方法还可以包括:响应于用户对摄像头切换选项的点击操作,电子设备隐藏第一界面的多个第一控件。也就是说,电子设备响应于用户对摄像头切换选项的一次点击操作,可在第一界面显示多个第一控件。电子设备响应于用户对摄像头切换选项的再次点击操作,可隐藏第一界面中的多个第一控件。电子设备可以根据用户的需求,在第一界面显示或隐藏多个第一控件。
[0131] 在第五方面的另一种可能的设计方式中,上述响应于用户对摄像头切换选项的点击操作,电子设备在第一界面显示多个第一控件,可以包括:响应于用户对摄像头切换选项的点击操作,如果电子设备的预设功能已开启,电子设备则在第一界面显示多个第一控件。
[0132] 其中,预设功能是在拍照或录像的取景界面进行多摄像头切换的功能;电子设备的设置界面或通知栏包括用于开启或关闭预设功能的预设功能开关。
[0133] 第六方面,本申请实施例提供一种电子设备,该电子设备包括显示屏、电子设备的摄像头、存储器和一个或多个处理器、该显示屏、多个摄像头、存储器和处理器耦合。上述电子设备的摄像头用于采集图像。上述显示屏用于显示处理器生成的图像,以及多个摄像头采集的图像。上述存储器用于存储计算机程序代码,计算机程序代码包括计算机指令。
[0134] 其中,当处理器执行计算机指令时,使得电子设备执行以下操作:显示第一界面,第一界面是电子设备拍照或录像的取景界面,第一界面包括电子设备的第一摄像头采集的第一预览图像;响应于用户在第一界面的第一操作,在第一界面显示多个第一控件,每个第一控件对应电子设备的一个摄像头,用于触发电子设备使用对应的摄像头;响应于用户对多个第一控件中第二控件的点击操作,将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像,第二摄像头是第二控件对应的摄像头。
[0135] 在第六方面的一种可能的设计方式中,上述第一界面包括摄像头切换选项,该摄像头切换选项用于触发电子设备切换所述电子设备的前置摄像头和后置摄像头。上述第一操作是用户对摄像头切换选项的点击操作。
[0136] 在第六方面的另一种可能的设计方式中,上述每个第一控件上显示有对应摄像头的类型指示信息;类型指示信息用于指示对应摄像头的摄像头类型,并指示对应摄像头类型为前置摄像头或后置摄像头。
[0137] 其中,摄像头类型至少包括:主摄像头、长焦摄像头、广角摄像头和超广角摄像头。
[0138] 在第六方面的另一种可能的设计方式中,上述每个第一控件上显示有对应摄像头的代理信息;代理信息用于指示对应摄像头为前置摄像头或后置摄像头,还包括对应摄像头的编号。
[0139] 其中,对应摄像头的编号包括对应摄像头的摄像头标识。
[0140] 在第六方面的另一种可能的设计方式中,上述多个第一控件为多个预览窗,每个预览窗上显示有对应摄像头采集的预览图像。
[0141] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对第二控件的点击操作,启动第二摄像头。
[0142] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于上述第一操作,启动电子设备的摄像头中除第一摄像头之外的其他摄像头。
[0143] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对第二控件的点击操作,关闭电子设备的摄像头中除第二摄像头之外的其他摄像头。
[0144] 在第六方面的另一种可能的设计方式中,上述多个第一控件包括第一逻辑控件和第二逻辑控件,该第一逻辑控件用于触发电子设备使用第一逻辑摄像头,该第二逻辑控件用于触发电子设备使用第二逻辑摄像头。
[0145] 其中,第一逻辑摄像头和第二逻辑摄像头是电子设备的同一个物理摄像头在不同变焦倍率下实现的。该变焦倍率为光学变焦倍率或数字变焦倍率。
[0146] 在第六方面的另一种可能的设计方式中,上述第一逻辑控件和所述第二逻辑控件上显示有对应的变焦倍率。
[0147] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:在第一界面,以第一显示方式显示第一摄像头对应的第一控件,以第二显示方式显示电子设备的摄像头中除第一摄像头之外的其他摄像头对应的第一控件。
[0148] 其中,第一显示方式与第二显示方式不同;以第一显示方式显示第一摄像头对应的第一控件,用于指示第一摄像头是电子设备的预览摄像头,第一界面显示第一摄像头采集的预览图像;电子设备的摄像头中除第一摄像头之外的其他摄像头包括第二摄像头。
[0149] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对多个第一控件中第二控件的点击操作,以第一显示方式显示第二摄像头对应的第一控件,以第二显示方式显示电子设备的摄像头中除第二摄像头之外的其他摄像头对应的第一控件。
[0150] 其中,以第一显示方式显示第二摄像头对应的第一控件,用于指示第二摄像头是电子设备的预览摄像头,第一界面显示第二摄像头采集的预览图像;电子设备的摄像头中除第二摄像头之外的其他摄像头包括第一摄像头。
[0151] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:在第一界面中用于显示摄像头切换选项的位置显示多个第一控件;或者,在第一界面的取景框中显示多个第一控件。
[0152] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对摄像头切换选项的点击操作,隐藏第一界面的多个第一控件。
[0153] 在第六方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下操作:响应于用户对摄像头切换选项的点击操作,如果电子设备的预设功能已开启,则在第一界面显示多个第一控件。
[0154] 其中,预设功能是在拍照或录像的取景界面进行多摄像头切换的功能;电子设备的设置界面或通知栏包括用于开启或关闭预设功能的预设功能开关。
[0155] 可以理解地,上述提供的第六方面及其任一种可能的设计方式所述的电子设备所能达到的有益效果,可参考如第五方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
[0156] 第七方面,本申请提供一种拍摄视频的方法,该方法可应用于包括多个摄像头的电子设备。该方法中,电子设备可显示第一界面。该第一界面是电子设备正在录像的取景界面,该第一界面包括第一取景框和第二取景框。其中,第一取景框显示多个摄像头中第一摄像头采集的第一预览图像,第二取景框显示多个摄像头中第二摄像头采集的第二预览图像。
[0157] 之后,电子设备可接收用户对第一界面的第一操作,该第一操作用于触发电子设备停止录制视频。响应于该第一操作,电子设备可显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,以及包括第一视频流和第二视频流的视频文件。其中,第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0158] 其中,一些第一视频文件只包括一个取景框中的视频流,而另一些第一视频文件则可以包括多个取景框中的视频流。其中,上述多个第一视频文件是电子设备生成的临时视频文件,电子设备并不会保存该多个第一视频文件中的所有视频文件。用户可以按照需求选择需要保存的第一视频文件(即临时视频文件)。
[0159] 通过该方法,电子设备在多景录像模式下,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[0160] 在第七方面的一种可能的设计方式中,本申请中,电子设备可接收用户对多个第一视频文件中第二视频文件的选择操作。响应于该选择操作,电子设备可保存用户选择的第二视频文件。
[0161] 在第七方面的另一种可能的设计方式中,上述第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头。或者,上述第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0162] 也就是说,采用本申请的方法,可以在电子设备多景录制视频的过程中,同时使用前置摄像头和后置摄像头进行多景录像。
[0163] 在第七方面的另一种可能的设计方式中,上述多个摄像头包括多种类型的前置摄像头和后置摄像头。其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头。第一摄像头和第二摄像头是多个摄像头中的任意两个摄像头,第一摄像头与第二摄像头不同。
[0164] 也就是说,采用本申请的方法,可以在电子设备多景录制视频的过程中,可以同时使用电子设备中各种类型的前置摄像头或后置摄像头进行多景录像。
[0165] 在第七方面的另一种可能的设计方式中,电子设备在多景录像的过程中,还可以切换任一个取景框中的摄像头。例如,以切换第一取景框的摄像头为例。在电子设备接收用户对第一界面的第一操作之前,电子设备可以接收用户对第一取景框的第二操作。该第二操作用于触发电子设备将第一摄像头切换为多个摄像头中的第三摄像头。响应于第二操作,电子设备可以将第一界面中的第一预览图像切换为第三摄像头采集的第三预览图像。第三摄像头与第一摄像头和第二摄像头均不同。
[0166] 其中,多个第一视频文件还包括:包括第三视频流的视频文件,包括第一视频流和第三视频流的视频文件,包括第一视频流、第三视频流和第二视频流的视频文件;第三视频流包括多帧第三预览图像。
[0167] 采用该设计方式的方法,电子设备可以在多景录像的过程中切换摄像头。并且,每切换一次摄像头,电子设备便可以生成一个临时视频文件,以供用户停止录像后,选择需要的视频文件。这样,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[0168] 在第七方面的另一种可能的设计方式中,上述第一取景框包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。
[0169] 其中,多个第二控件中包括第一控件,第一控件用于触发电子设备切换使用第三摄像头,第二操作为用户对第一控件的点击操作。
[0170] 例如,以电子设备包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头为例。上述多个第二控件可以包括“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。“前置主摄”控件对应于电子设备的前置主摄像头,“后置主摄”控件对应于电子设备的后置主摄像头,“前置长焦”控件对应于电子设备的前置长焦摄像头,“前置广角”控件对应于电子设备的前置广角摄像头,“后置长焦”控件对应于电子设备的后置长焦摄像头,用于触发电子设备显示后置长焦摄像头采集的预览图像,“后置广角”控件对应于电子设备的后置广角摄像头。
[0171] 在第七方面的另一种可能的设计方式中,在电子设备接收用户对第一界面的第一操作之前,电子设备可接收用户对第一界面的第三操作。该第三操作用于触发电子设备在第一取景框暂停录像。响应于第三操作,电子设备显示第三界面;其中,第三界面是第一取景框暂停录像,第二取景框正在录像的取景界面;在第三界面,第一取景框显示第一摄像头采集的第四预览图像,第二取景框显示第二摄像头采集的第二预览图像。响应于用户在第一界面的第三操作操作,电子设备可以暂停录制视频,但并不会生成视频文件。并且,电子设备可以响应于用户的操作,随时继续录制视频。
[0172] 具体的,电子设备可接收用户在第三界面的第四操作。该第四操作用于触发电子设备继续录制视频。响应于第四操作,电子设备显示第四界面。其中,第四界面是电子设备正在录像的取景界面。在第四界面,第一取景框显示第一摄像头采集的第五预览图像,第二取景框显示第二摄像头采集的第二预览图像。
[0173] 上述电子设备接收用户对第一界面的第一操作,可以包括:电子设备接收用户对第四界面的第一操作,该第一操作用于触发电子设备停止录制视频。
[0174] 其中,多个第一视频文件还包括:包括第四视频流的视频文件,包括第一视频流和第四视频流的视频文件,包括第一视频流、第四视频流和第二视频流的视频文件,第四视频流包括多帧第五预览图像。
[0175] 采用该设计方式的方法,电子设备可以在录制视频的过程中暂停录制视频。并且,每暂停一次电子设备可以保存一个临时视频文件,以供用户停止录像后,选择需要的视频文件。这样,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[0176] 在第七方面的另一种可能的设计方式中,上述第一界面还包括暂停录制按钮,该暂停录制按钮用于触发电子设备在第一取景框暂停录像。第三操作是用户对第一界面中暂停录制按钮的点击操作。第三界面还包括暂停录制按钮,上述第四操作是用户对第三界面中暂停录制按钮的点击操作。
[0177] 在第七方面的一种可能的设计方式中,电子设备还可以在暂停录像的过程中切换摄像头。
[0178] 在第七方面的一种可能的设计方式中,上述多个摄像头可以包括电子设备的物理摄像头和/或逻辑摄像头。其中,其逻辑摄像头是电子设备的物理摄像头在不同变焦倍率下实现的。
[0179] 例如,上述逻辑摄像头可以为后置1.0x摄像头,后置2.0x摄像头或前置3.0x摄像头等。其中,1.0x、2.0x和3.0x均为变焦倍率。“3.0x”表示变焦倍率为3倍。“2.0x”表示变焦倍率为2.0倍。“1.0x”表示变焦倍率为1.0倍。本申请中的变焦倍率可以为光学变焦倍率或者数字变焦倍率。
[0180] 第八方面,本申请提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的电子设备。该方法中,电子设备可以显示第一界面。该第一界面是电子设备正在录制视频的取景界面,该第一界面包括多个摄像头中的第一摄像头采集的第一预览图像。之后,电子设备可接收用户对第一界面的第二操作;该第二操作用于触发电子设备切换使用多个摄像头中的第二摄像头,第二摄像头与第一摄像头不同。响应于第二操作,电子设备可以将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像。最后,电子设备可以接收用户对第一界面的第一操作。该第一操作用于触发电子设备停止录制视频。响应于第一操作,电子设备可以显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,以及包括第一视频流和第二视频流的视频文件;第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0181] 本申请中,电子设备可以在单景录像的过程中切换摄像头。并且,每切换一次摄像头,电子设备便可以生成一个临时视频文件。上述多个第一视频文件是电子设备生成的临时视频文件。一些第一视频文件只包括一个取景框中的视频流,而另一些第一视频文件则可以包括多个取景框中的视频流。用户可以按照需求选择需要保存的第一视频文件(即临时视频文件)。这样,便可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[0182] 在第八方面的一种可能的设计方式中,电子设备可接收用户对多个第一视频文件中第二视频文件的选择操作。响应于该选择操作,电子设备可保存用户选择的第二视频文件。
[0183] 在第八方面的另一种可能的设计方式中,上述第一界面包括用于触发电子设备切换使用第二摄像头的第一控件;第二操作为用户对第一控件的点击操作。
[0184] 在第八方面的另一种可能的设计方式中,上述第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头。或者,第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0185] 在第八方面的另一种可能的设计方式中,上述多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头;第一摄像头和第二摄像头是多个摄像头中的任一两个摄像头,第一摄像头与第二摄像头不同。
[0186] 在第八方面的另一种可能的设计方式中,上述第一界面包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。其中,多个第二控件中包括第一控件,第一控件用于触发电子设备切换使用第二摄像头,第二操作为用户对第一控件的点击操作。
[0187] 在第八方面的另一种可能的设计方式中,在电子设备将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像之后,电子设备接收用户对第一界面的第一操作之前,本申请的方法还包括:电子设备可以接收用户在第一界面的第三操作。该第三操作用于触发电子设备暂停录像。响应于第三操作,电子设备显示第三界面。其中,第三界面是电子设备暂停录像的取景界面,第三界面包括第二摄像头采集的第三预览图像。电子设备接收用户在第三界面的第四操作。该第四操作用于触发电子设备继续录像。响应于第四操作,电子设备显示第四界面;其中,第四界面是电子设备正在录像的取景界面,第四界面包括第二摄像头采集的第四预览图像。
[0188] 上述电子设备接收用户对第一界面的第一操作,可以包括:电子设备接收用户对第四界面的第一操作,第一操作用于触发电子设备停止录制视频。其中,多个第一视频文件还包括:包括第三视频流的视频文件,包括第二视频流和第三视频流的视频文件,包括第一视频流、第二视频流和第三视频流的视频文件,第三视频流包括多帧第四预览图像。
[0189] 在第八方面的另一种可能的设计方式中,上述第一界面还包括暂停录制按钮,该暂停录制按钮用于触发电子设备暂停录像,上述第三操作是用户对第一界面中暂停录制按钮的点击操作。上述第三界面还包括暂停录制按钮,第四操作是用户对第三界面中暂停录制按钮的点击操作。
[0190] 第九方面,本申请提供一种电子设备,该电子设备包括显示屏、多个摄像头、存储器和一个或多个处理器。该显示屏、多个摄像头、存储器和处理器耦合。上述多个摄像头用于采集图像,上述显示屏用于显示处理器生成的图像,以及多个摄像头采集的图像。上述存储器用于存储计算机程序代码。上述,计算机程序代码包括计算机指令;当处理器执行计算机指令时,使得电子设备执行以下操作:
[0191] 显示第一界面;其中,第一界面是电子设备正在录像的取景界面,第一界面包括第一取景框和第二取景框,第一取景框显示多个摄像头中第一摄像头采集的第一预览图像,第二取景框显示多个摄像头中第二摄像头采集的第二预览图像;接收用户对第一界面的第一操作,第一操作用于触发电子设备停止录制视频;响应于第一操作,显示用于预览多个第一视频文件的第二界面;其中,多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,以及包括第一视频流和第二视频流的视频文件;第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0192] 在第九方面的一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:接收用户对第二界面中多个第一视频文件中第二视频文件的选择操作;响应于用户对第二视频文件的选择操作,保存第二视频文件。
[0193] 在第九方面的另一种可能的设计方式中,第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头;或者,第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0194] 在第九方面的另一种可能的设计方式中,多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头。
[0195] 其中,第一摄像头和第二摄像头是多个摄像头中的任一两个摄像头,第一摄像头与第二摄像头不同。
[0196] 在第九方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:接收用户对第一取景框的第二操作;其中,第二操作用于触发电子设备将第一摄像头切换为多个摄像头中的第三摄像头;响应于第二操作,将第一界面中的第一预览图像切换为第三摄像头采集的第三预览图像。第三摄像头与第一摄像头和第二摄像头均不同。
[0197] 其中,多个第一视频文件还包括:包括第三视频流的视频文件,包括第一视频流和第三视频流的视频文件,包括第一视频流、第三视频流和第二视频流的视频文件;第三视频流包括多帧第三预览图像。
[0198] 在第九方面的另一种可能的设计方式中,第一取景框包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。
[0199] 其中,多个第二控件中包括第一控件,第一控件用于触发电子设备切换使用第三摄像头,第二操作为用户对第一控件的点击操作。
[0200] 在第九方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:在接收用户对第一界面的第一操作之前,响应于用户在第一界面的第三操作,显示第三界面;其中,第三操作用于触发电子设备在第一取景框暂停录像;第三界面是第一取景框暂停录像,第二取景框正在录像的取景界面;在第三界面,第一取景框显示第一摄像头采集的第四预览图像,第二取景框显示第二摄像头采集的第二预览图像;响应于用户在第三界面的第四操作,显示第四界面;其中,第四操作用于触发电子设备继续录像;第四界面是电子设备正在录像的取景界面;在第四界面,第一取景框显示第一摄像头采集的第五预览图像,第二取景框显示第二摄像头采集的第二预览图像。
[0201] 其中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:接收用户对第四界面的第一操作。其中,多个第一视频文件还包括:包括第四视频流的视频文件,包括第一视频流和第四视频流的视频文件,包括第一视频流、第四视频流和第二视频流的视频文件,第四视频流包括多帧第五预览图像。
[0202] 在第九方面的另一种可能的设计方式中,第一界面还包括暂停录制按钮,暂停录制按钮用于触发电子设备暂停录像,第三操作是用户对第一界面中暂停录制按钮的点击操作。第三界面还包括暂停录制按钮,第四操作是用户对第三界面中暂停录制按钮的点击操作。
[0203] 第十方面,本申请提供一种电子设备,该电子设备包括显示屏、多个摄像头、存储器和一个或多个处理器。该显示屏、多个摄像头、存储器和处理器耦合。上述多个摄像头用于采集图像,上述显示屏用于显示处理器生成的图像,以及多个摄像头采集的图像。上述存储器用于存储计算机程序代码。上述,计算机程序代码包括计算机指令;当处理器执行计算机指令时,使得电子设备执行以下操作:
[0204] 显示第一界面;其中,第一界面是电子设备正在录制视频的取景界面,第一界面包括多个摄像头中的第一摄像头采集的第一预览图像;接收用户对第一界面的第二操作;其中,第二操作用于触发电子设备切换使用多个摄像头中的第二摄像头,第二摄像头与第一摄像头不同;响应于第二操作,将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像;接收用户对第一界面的第一操作,第一操作用于触发电子设备停止录制视频;响应于第一操作,显示用于预览多个第一视频文件的第二界面;其中,多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,以及包括第一视频流和第二视频流的视频文件;第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0205] 在第十方面的一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:接收用户对第二界面中多个第一视频文件中第二视频文件的选择操作;响应于用户对第二视频文件的选择操作,保存第二视频文件。
[0206] 在第十方面的另一种可能的设计方式中,第一界面包括用于触发电子设备切换使用第二摄像头的第一控件;第二操作为用户对第一控件的点击操作。
[0207] 在第十方面的另一种可能的设计方式中,第一摄像头是电子设备的前置摄像头,第二摄像头是电子设备的后置摄像头;或者,第一摄像头是电子设备的后置摄像头,第二摄像头是电子设备的前置摄像头。
[0208] 在第十方面的另一种可能的设计方式中,多个摄像头包括多种类型的前置摄像头和后置摄像头;其中,摄像头的类型至少包括:主摄像头、广角摄像头和长焦摄像头;第一摄像头和第二摄像头是多个摄像头中的任一两个摄像头,第一摄像头与第二摄像头不同。
[0209] 在第十方面的另一种可能的设计方式中,第一界面包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发电子设备切换使用对应的摄像头。其中,多个第二控件中包括第一控件,第一控件用于触发电子设备切换使用第二摄像头,第二操作为用户对第一控件的点击操作。
[0210] 在第十方面的另一种可能的设计方式中,当处理器执行计算机指令时,使得电子设备还执行以下步骤:响应于用户在第一界面的第三操作,显示第三界面;其中,第三操作用于触发电子设备暂停录像;第三界面是电子设备暂停录像的取景界面,第三界面包括第二摄像头采集的第三预览图像;响应于用户对第三界面的第四操作,显示第四界面;其中,第四操作用于触发电子设备继续录像;第四界面是电子设备正在录像的取景界面,第四界面包括第二摄像头采集的第四预览图像。
[0211] 当处理器执行计算机指令时,使得电子设备还执行以下步骤:接收用户对第四界面的第一操作。其中,多个第一视频文件还包括:包括第三视频流的视频文件,包括第二视频流和第三视频流的视频文件,包括第一视频流、第二视频流和第三视频流的视频文件,第三视频流包括多帧第四预览图像。
[0212] 在第十方面的另一种可能的设计方式中,上述第一界面还包括暂停录制按钮,暂停录制按钮用于触发电子设备暂停录像,第三操作是用户对第一界面中暂停录制按钮的点击操作。第三界面还包括暂停录制按钮,第四操作是用户对第三界面中暂停录制按钮的点击操作。
[0213] 可以理解地,上述提供的第八方面及其任一种可能的设计方式所述的电子设备所能达到的有益效果,可参考如第七方面及其任一种可能的设计方式中的有益效果,此处不再赘述。上述提供的第十方面及其任一种可能的设计方式所述的电子设备所能达到的有益效果,可参考如第九方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
[0214] 第十一方面,本申请实施例提供一种芯片系统,该芯片系统应用于包括显示屏和多个摄像头的电子设备。该芯片系统包括一个或多个接口电路和一个或多个处理器。该接口电路和处理器通过线路互联。该接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,电子设备执行如第一方面、第三方面、第五方面、第七方面和第九方面及其任一种可能的设计方式所述的方法。
[0215] 第十二方面,本申请实施例提供一种计算机存储介质,该计算机存储介质包括计算机指令,当该计算机指令在电子设备上运行时,使得该电子设备执行如第一方面、第三方面、第五方面、第七方面和第九方面及其任一种可能的设计方式所述的方法。
[0216] 第十三方面,本申请实施例提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面、第三方面、第五方面、第七方面和第九方面及其任一种可能的设计方式所述的方法。其中,该计算机可以是上述第一方面、第三方面、第五方面、第七方面和第九方面及其任一种可能的设计方式中所述的电子设备。
[0217] 可以理解地,上述第十一方面所述的芯片系统,第第二方面所述的计算机存储介质,第十三方面所述的计算机程序产品所能达到的有益效果,可参考如第一方面、第三方面、第五方面、第七方面和第九方面及其任一种可能的设计方式中的有益效果,此处不再赘述。

附图说明

[0218] 图1A‑图1C为常规技术中一种手机拍摄视频的显示界面示意图;
[0219] 图1D‑图1E为常规技术中另一种手机拍摄视频的显示界面示意图;
[0220] 图2为本申请实施例提供的一种电子设备的硬件结构示意图;
[0221] 图3A‑图3C为本申请实施例提供的一种手机中前置摄像头位置和数量示意图;
[0222] 图3D为图3C所示的三个前置摄像头的视野范围示意图;
[0223] 图3E‑图3G为本申请实施例提供的一种手机中后置摄像头位置和数量示意图;
[0224] 图3H为图3G所示的三个后置摄像头的视野范围示意图;
[0225] 图4为本申请实施例提供的一种电子设备的软件架构示意图;
[0226] 图5为本申请实施例提供的一种拍摄视频的方法流程图;
[0227] 图6A‑图6B为本申请实施例提供的一种电子设备的显示界面示意图;
[0228] 图6C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0229] 图7A为本申请实施例提供的一种电子设备将第一界面的第一预览图像切换为第二预览图像的原理示意图;
[0230] 图7B为本申请实施例提供的一种视频文件的内容组成示意图;
[0231] 图7C为本申请实施例提供的一种电子设备生成视频文件的原理示意图;
[0232] 图8A‑图8B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0233] 图8C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0234] 图9A为本申请实施例提供的另一种视频文件的内容组成示意图;
[0235] 图9B为本申请实施例提供的一种电子设备的显示界面示意图;
[0236] 图9C为本申请实施例提供的另一种拍摄视频的方法流程图;
[0237] 图10A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0238] 图10B‑图10C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0239] 图10D为本申请实施例提供的另一种拍摄视频的方法流程图;
[0240] 图11为本申请实施例提供的另一种电子设备的显示界面示意图;
[0241] 图12为本申请实施例提供的另一种电子设备的显示界面示意图;
[0242] 图13为本申请实施例提供的另一种电子设备的显示界面示意图;
[0243] 图14为本申请实施例提供的另一种拍摄视频的方法流程图;
[0244] 图15A‑图15B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0245] 图15C为本申请实施例提供的另一种视频文件的内容组成示意图;
[0246] 图16A‑图16B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0247] 图16C‑图16D为本申请实施例提供的另一种电子设备的显示界面示意图;
[0248] 图16E‑图16F为本申请实施例提供的另一种电子设备的显示界面示意图;
[0249] 图16G‑图16H为本申请实施例提供的另一种电子设备的显示界面示意图;
[0250] 图16I为本申请实施例提供的另一种电子设备的显示界面示意图;
[0251] 图17A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0252] 图17B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0253] 图18为本申请实施例提供的另一种电子设备的显示界面示意图;
[0254] 图19为本申请实施例提供的另一种拍摄视频的方法流程图;
[0255] 图20为本申请实施例提供的一种电子设备的芯片系统的结构示意图;
[0256] 图21为本申请实施例提供的一种电子设备的软件架构示意图;
[0257] 图22为本申请实施例提供的一种拍摄视频的方法流程图;
[0258] 图23A‑图23C为本申请实施例提供的一种电子设备的显示界面示意图;
[0259] 图23D为本申请实施例提供的另一种拍摄视频的方法流程图;
[0260] 图23E为本申请实施例提供的另一种拍摄视频的方法流程图;
[0261] 图24A为本申请实施例提供的一种电子设备的显示界面示意图;
[0262] 图24B为本申请实施例提供的一种电子设备将第二界面的第二预览图像切换为第三预览图像的原理示意图;
[0263] 图24C为本申请实施例提供的一种视频文件的内容组成示意图;
[0264] 图24D为本申请实施例提供的一种电子设备生成视频文件的原理示意图;
[0265] 图25A‑图25D为本申请实施例提供的另一种电子设备的显示界面示意图;
[0266] 图26为本申请实施例提供的另一种视频文件的内容组成示意图;
[0267] 图27为本申请实施例提供的另一种拍摄视频的方法流程图;
[0268] 图28为本申请实施例提供的另一种电子设备的显示界面示意图;
[0269] 图29为本申请实施例提供的另一种电子设备的显示界面示意图;
[0270] 图30A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0271] 图30B为本申请实施例提供的另一种拍摄视频的方法流程图;
[0272] 图30C‑图30E为本申请实施例提供的另一种电子设备的显示界面示意图;
[0273] 图31为本申请实施例提供的另一种拍摄视频的方法流程图;
[0274] 图32A‑图32C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0275] 图32D为本申请实施例提供的另一种拍摄视频的方法流程图;
[0276] 图33A‑图33C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0277] 图33D‑图33E为本申请实施例提供的另一种电子设备的显示界面示意图;
[0278] 图33F‑图33G为本申请实施例提供的另一种电子设备的显示界面示意图;
[0279] 图33H为本申请实施例提供的另一种电子设备的显示界面示意图;
[0280] 图34A‑图34C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0281] 图34D‑图34E为本申请实施例提供的另一种电子设备的显示界面示意图;
[0282] 图35A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0283] 图35B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0284] 图36为本申请实施例提供的另一种拍摄视频的方法流程图;
[0285] 图37A‑图37D为常规技术中一种手机拍摄视频的显示界面示意图;
[0286] 图37E为常规技术中手机调整摄像头焦距并拍摄图片或视频的流程图;
[0287] 图38为本申请实施例提供的一种电子设备的软件架构示意图;
[0288] 图39为本申请实施例提供的一种拍摄控制方法流程图;
[0289] 图40A‑图40B为本申请实施例提供的一种电子设备的显示界面示意图;
[0290] 图40C‑图40D为本申请实施例提供的另一种电子设备的显示界面示意图;
[0291] 图41A‑图41B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0292] 图42A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0293] 图42B‑图42C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0294] 图42D为本申请实施例提供的另一种电子设备的显示界面示意图;
[0295] 图43为本申请实施例提供的另一种电子设备的显示界面示意图;
[0296] 图44为本申请实施例提供的另一种电子设备的显示界面示意图;
[0297] 图45为本申请实施例提供的另一种电子设备的显示界面示意图;
[0298] 图46A‑图46B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0299] 图47为本申请实施例提供的另一种电子设备的显示界面示意图;
[0300] 图48为本申请实施例提供的另一种电子设备的显示界面示意图;
[0301] 图49A‑图49B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0302] 图50为本申请实施例提供的另一种电子设备的显示界面示意图;
[0303] 图51A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0304] 图51B‑图51C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0305] 图51D‑图51F为本申请实施例提供的另一种电子设备的显示界面示意图;
[0306] 图51G为本申请实施例提供的一种电子设备基于摄像头的类型切换摄像头的原理示意图;
[0307] 图51H为本申请实施例提供的一种电子设备基于摄像头采集的预览图像切换摄像头的原理示意图;
[0308] 图51I为本申请实施例提供的一种电子设备基于摄像头的代理信息切换摄像头的原理示意图;
[0309] 图52A‑图52B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0310] 图53A为本申请实施例提供的另一种电子设备的显示界面示意图;
[0311] 图53B为本申请实施例提供的另一种电子设备的显示界面示意图;
[0312] 图53C为本申请实施例提供的另一种电子设备的显示界面示意图;
[0313] 图53D为本申请实施例提供的另一种电子设备的显示界面示意图;
[0314] 图54为本申请实施例提供的另一种电子设备的显示界面示意图;
[0315] 图55为本申请实施例提供的一种拍摄控制方法流程图;
[0316] 图56A‑图56D为常规技术中一种手机录像的显示界面示意图;
[0317] 图56E为常规技术中一种手机录像的方法流程框图示意图;
[0318] 图57为本申请实施例提供的一种电子设备的软件架构示意图;
[0319] 图58A为本申请实施例提供的一种拍摄视频的方法流程图;
[0320] 图58B为本申请实施例提供的一种拍摄视频的方法流程图;
[0321] 图59A‑图59D为本申请实施例提供的一种手机录像的显示界面示意图;
[0322] 图59E为本申请实施例提供的一种多个第一视频文件的内容示意图;
[0323] 图60为本申请实施例提供的另一种拍摄视频的方法流程图;
[0324] 图61A‑图61C为本申请实施例提供的另一种手机录像的显示界面示意图;
[0325] 图61D为本申请实施例提供的一种多个第一视频文件的内容示意图;
[0326] 图62A‑图62D为本申请实施例提供的另一种手机录像的显示界面示意图;
[0327] 图62E为本申请实施例提供的另一种多个第一视频文件的内容示意图;
[0328] 图63A为本申请实施例提供的另一种拍摄视频的方法流程图;
[0329] 图63B‑图63E为本申请实施例提供的另一种手机录像的显示界面示意图;
[0330] 图63F‑图63H为本申请实施例提供的另一种多个第一视频文件的内容示意图;
[0331] 图64为本申请实施例提供的另一种手机录像的显示界面示意图;
[0332] 图65A为本申请实施例提供的另一种拍摄视频的方法流程图;
[0333] 图65B为本申请实施例提供的另一种拍摄视频的方法流程图;
[0334] 图66A‑图66E为本申请实施例提供的另一种手机录像的显示界面示意图;
[0335] 图66F为本申请实施例提供的另一种多个第一视频文件的内容示意图;
[0336] 图67A‑图67B为本申请实施例提供的另一种手机录像的显示界面示意图;
[0337] 图68A‑图68B为本申请实施例提供的另一种手机录像的显示界面示意图;
[0338] 图69A为本申请实施例提供的另一种拍摄视频的方法流程图;
[0339] 图69B‑图69F为本申请实施例提供的另一种手机录像的显示界面示意图;
[0340] 图69G‑图69L为本申请实施例提供的另一种多个第一视频文件的内容示意图;
[0341] 图70A‑图70B为本申请实施例提供的另一种手机录像的显示界面示意图;
[0342] 图71为本申请实施例提供的另一种多个第一视频文件的内容示意图;
[0343] 图72为本申请实施例提供的一种拍摄控制方法流程图。

具体实施方式

[0344] 以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
[0345] 为了便于理解,本申请实施例这里详细介绍手机录制视频的过程,以说明采用常规技术在录制视频的过程中,手机无法切换摄像头。
[0346] 一般而言,手机响应于用户对“相机”应用图标的点击操作,可以显示拍照的取景界面。当用户想要使用手机录制视频时,则可以触发手机显示录制视频的取景界面。例如,图1A示出了手机拍照的取景界面101。该拍照的取景界面101包括取景框102和“录制视频”选项103。该取景框102用于显示摄像头(如手机的后置摄像头)采集的预览图像。“录制视频”选项103用于触发手机进入录制视频模式。
[0347] 响应于用户对取景界面101中的“录制视频”选项103的点击操作,手机可以显示如图1B所示的录制视频的取景界面104。该录制视频的取景界面104包括开始录制按钮108、取景框105、计时选项106、相册选项107和摄像头切换选项109。
[0348] 其中,开始录制按钮108用于触发手机开始录制视频。取景框105用于显示摄像头采集的预览图像。计时选项106用于在手机开始录制视频到手机结束录制视频,这段时间进行计时,并显示手机录制视频的时长。相册选项107用于显示手机最近拍摄的照片或者视频。例如,假设手机最近拍摄了两个人手牵手的照片。如图1B所示,相册选项107上显示两个人手牵手的照片。摄像头切换选项109用于触发手机切换使用前置摄像头或者后置摄像头采集图像。
[0349] 响应于用户对图1B所示的开始录制按钮108的点击操作,手机可以开始录制视频。例如,手机录制视频的时长为8秒(s)时,手机可显示图1C所示的录制视频的取景界面110。
该录制视频的取景界面110中,计时选项112的计时时长为00:00:08。该录制视频的取景界面110中取景框111中的预览图像与图1B所示的取景框105中的预览图像不同。该录制视频的取景界面110中包括停止录制按钮113。该停止录制按钮113用于触发手机停止录制视频,并生成已录制的视频。
[0350] 响应于用户对图1C所示的停止录制按钮113的点击操作,手机可显示图1D所示的录制视频的取景界面114。该录制视频的取景界面114中包括开始录制按钮108、取景框115、计时选项116、相册选项117和摄像头切换选项109。其中,图1D所示的计时选项116的计时时长为00:00:00,表示手机已停止录制视频。图1D所示的相册选项117所显示的图像为图1C中取景框111中的预览图像,表示手机已生成录制的视频。
[0351] 对比图1B、图1C和图1D所示的录制视频的取景界面可知:图1B和图1D所示的取景界面包括摄像头切换选项109,而图1C所示的取景界面不包括摄像头切换选项109。该摄像头切换选项109用于触发手机切换使用前置摄像头或者后置摄像头采集图像。也就是说,手机在开始录制视频前和停止录制视频后,可以响应于用户对取景界面中摄像头切换选项109的操作,切换摄像头;但是,在录制视频的过程中,是无法切换摄像头的。
[0352] 例如,响应于用户对图1D所示的摄像头切换选项109的点击操作,手机可显示图1E所示的录制视频的取景界面118。该录制视频的取景界面118中取景框119中显示的预览图像是手机的前置摄像头采集的图像。而图1A、图1B、图1C或图1D中取景框中显示的预览图像是手机的后置摄像头采集的图像。
[0353] 本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的电子设备。采用本申请实施例的方法,可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0354] 示例性的,本申请实施例中的电子设备可以是手机、平板电脑、智能手表、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra‑mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等包括多个摄像头的设备,本申请实施例对该电子设备的具体形态不作特殊限制。
[0355] 下面将结合附图对本申请实施例的实施方式进行详细描述。请参考图2,为本申请实施例提供的一种电子设备200的结构示意图。如图2所示,电子设备200可以包括:处理器210,外部存储器接口220,内部存储器221,通用串行总线(universal serial bus,USB)接口230,充电管理模块240,电源管理模块241,电池242,天线1,天线2,移动通信模块250,无线通信模块260,音频模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,传感器模块280,按键290,马达291,指示器292,摄像头293,显示屏294,以及用户标识模块(subscriber identification module,SIM)卡接口295等。
[0356] 其中,上述传感器模块280可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器和骨传导传感器等传感器。
[0357] 可以理解的是,本实施例示意的结构并不构成对电子设备200的具体限定。在另一些实施例中,电子设备200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
[0358] 处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural‑network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
[0359] 控制器可以是电子设备200的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
[0360] 处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器210的等待时间,因而提高了系统的效率。
[0361] 在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(inter‑integrated circuit,I2C)接口,集成电路内置音频(inter‑integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general‑purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
[0362] 可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备200的结构限定。在另一些实施例中,电子设备200也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
[0363] 充电管理模块240用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块240可以通过USB接口230接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块240可以通过电子设备200的无线充电线圈接收无线充电输入。充电管理模块240为电池242充电的同时,还可以通过电源管理模块241为电子设备供电。
[0364] 电源管理模块241用于连接电池242,充电管理模块240与处理器210。电源管理模块241接收电池242和/或充电管理模块240的输入,为处理器210,内部存储器221,外部存储器,显示屏294,摄像头293,和无线通信模块260等供电。电源管理模块241还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块241也可以设置于处理器210中。在另一些实施例中,电源管理模块241和充电管理模块240也可以设置于同一个器件中。
[0365] 电子设备200的无线通信功能可以通过天线1,天线2,移动通信模块250,无线通信模块260,调制解调处理器以及基带处理器等实现。
[0366] 天线1和天线2用于发射和接收电磁波信号。电子设备200中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
[0367] 移动通信模块250可以提供应用在电子设备200上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块250可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块250可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。
[0368] 无线通信模块260可以提供应用在电子设备200上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi‑Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
[0369] 无线通信模块260可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块260经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器210。无线通信模块260还可以从处理器210接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
[0370] 在一些实施例中,电子设备200的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得电子设备200可以通过无线通信技术与网络以及其他设备通信。
[0371] 电子设备200通过GPU,显示屏294,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏294和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
[0372] 显示屏294用于显示图像,视频等。该显示屏294包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light‑emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active‑matrix organic light emitting diode,AMOLED),柔性发光二极管(flex light‑emitting diode,FLED),Miniled,MicroLed,Micro‑oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。
[0373] 电子设备200可以通过ISP,摄像头293,视频编解码器,GPU,显示屏294以及应用处理器等实现拍摄功能。
[0374] ISP用于处理摄像头293反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头293中。
[0375] 摄像头293用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal‑oxide‑semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备200可以包括N个摄像头293,N为大于1的正整数。
[0376] 示例性的,上述N个摄像头293可以包括:一个或多个前置摄像头和一个或多个后置摄像头。例如,以上述电子设备200是手机为例。图3A所示的手机包括一个前置摄像头,如前置摄像头301。图3B所示的手机包括两个前置摄像头,如前置摄像头302和前置摄像头303。图3C所示的手机包括三个前置摄像头,如前置摄像头a、b和c。图3E所示的手机包括两个后置摄像头,如后置摄像头304和305。图3F所示的手机包括四个后置摄像头,如后置摄像头306、307、308和309。图3G所示的手机包括三个后置摄像头,如后置摄像头1、2和3。
[0377] 上述N可以为3,该手机可以包括图3A所示的前置摄像头301、图3E所示的后置摄像头304和后置摄像头305。或者,N可以为5,手机可以包括图3A所示的前置摄像头301、图3F所示的后置摄像头306、后置摄像头307、后置摄像头308和后置摄像头309。当然,上述手机中摄像头的数量包括但不限于上述实例中所述的数量。例如,N还可以为6,手机包括三个前置摄像头(如图3C所示的前置摄像头a、前置摄像头b和前置摄像头c)和三个后置摄像头(如图3G所示的后置摄像头1、后置摄像头2和后置摄像头3)。
[0378] 其中,上述N个摄像头239可以包括以下一种或多种摄像头:主摄像头、长焦摄像头、广角摄像头、超广角摄像头、微距摄像头、鱼眼摄像头、红外摄像头、深度摄像头和黑白摄像头。
[0379] (1)主摄像头。
[0380] 主摄像头具有进光量大、分辨率高,以及视野范围居中的特点。主摄像头一般作为电子设备(如手机)的默认摄像头。也就是说,电子设备(如手机)响应于用户启动“照相机”应用的操作,可以默认启动主摄像头,在预览界面显示主摄像头采集的图像。摄像头的视野范围由摄像头的视场角(field of vie,FOV)决定。摄像头的FOV越大,摄像头的视野范围则越大。
[0381] (2)长焦摄像头。
[0382] 长焦摄像头的焦距较长,可适用于拍摄距离手机较远的拍摄对象(即远处的物体)。但是,长焦摄像头的进光量较小。在暗光场景下使用长焦摄像头拍摄图像,可能会因为进光量不足而影响图像质量。并且,长焦摄像头的视野范围较小,不适用于拍摄较大场景的图像,即不适用于拍摄较大的拍摄对象(如建筑或风景等)。
[0383] (3)广角摄像头。
[0384] 广角摄像头的视野范围较大,可适用于拍摄较大的拍摄对象(如建筑或风景等)。但是,广角摄像头的分辨率较低。并且,采用广角摄像头拍摄得到的图像所呈现的拍摄对象容易畸变,即拍摄对象的图像容易畸形。
[0385] (4)超广角摄像头。
[0386] 超广角摄像头与上述广角摄像头是同一种摄像头。或者,相比于上述广角摄像头,该超广角摄像头的视野范围更大。
[0387] (5)微距摄像头。
[0388] 微距摄像头是一种用作微距摄影的特殊镜头,主要用于拍摄十分细微的物体,如花卉及昆虫等。使用微距镜头拍摄细小的自然景物,可以拍摄到人们一般无法看到的微观景象。
[0389] (6)鱼眼摄像头。
[0390] 鱼眼摄像头是一种焦距为16mm或更短的并且视场角接近或等于180°的辅助镜头。鱼眼摄像头可以被认为是一种极端的广角摄像头。这种摄像头的前镜片直径很短且呈抛物状向镜头前部凸出,与鱼的眼睛颇为相似,因此称为叫鱼眼摄像头。鱼眼摄像头拍摄的图像与人们眼中的真实世界的图像存在很大的差别;因此,鱼眼摄像头一般获取特殊拍摄效果时使用。
[0391] (7)红外摄像头。
[0392] 红外摄像头具有光谱范围大的特点。例如,红外摄像头不仅可以感知可见光,还可以感知红外光。在暗光场景(即可见光较弱)下,利用红外摄像头可感知红外光的特点,使用红外摄像头拍摄图像,可提升图像质量。
[0393] (8)深度摄像头。
[0394] 飞行时间(time of flight,ToF)摄像头或者结构光摄像头等均为深度摄像头。以深度摄像头是ToF摄像头为例。ToF摄像头具有准确获取拍摄对象的深度信息的特点。ToF摄像头可适用于人脸识别等场景中。
[0395] (9)黑白摄像头。
[0396] 黑白摄像头没有滤光片。因此,相比于彩色摄像头而言,黑白摄像头的进光量较大。但是,黑白摄像头采集到的图像只能呈现出不同等级的灰度,不能呈现出拍摄对象的真实色彩。需要说明的是,上述主摄像头、长焦摄像头和广角摄像头等均为彩色摄像头。
[0397] 可以理解的是,不同摄像头在手机上的位置不同。因此,当手机被固定在一个取景环境时,不同摄像头的视野范围可能不同,其所采集到该取景环境的图像则不同。
[0398] 例如,以手机包括图3C所示的三个前置摄像头a、b和c为例。这三个前置摄像头按照由左向右的顺序依次排布;因此,这三个前置摄像头的视野范围不同,其所采集的同一取景环境的图像则不同。如图3C所示,前置摄像头a相比对前置摄像头b和c设置在手机偏左的位置;因此,如图3D所示,相比于前置摄像头b的视野范围B和前置摄像头c的视野范围C,前置摄像头a的视野范围A偏左。如图3C所示,前置摄像头b设置在前置摄像头a和b的中间;因此,如图3D所示,相比于前置摄像头a的视野范围A和前置摄像头c的视野范围C,前置摄像头b的视野范围B偏中间。如图3C所示,前置摄像头c相比对前置摄像头a和b设置在手机偏右的位置;因此,如图3D所示,相比于前置摄像头a的视野范围A和前置摄像头b的视野范围B,前置摄像头c的视野范围C偏右。
[0399] 例如,以手机包括图3G所示的三个后置摄像头1、2和3为例。这三个后置摄像头按照由上向下的顺序依次排布;因此,这三个后置摄像头的视野范围不同,其所采集的同一取景环境的图像则不同。如图3G所示,后置摄像头1相比对后置摄像头2和3设置在手机偏上的位置;因此,如图3H所示,相比于后置摄像头2的视野范围II和后置摄像头3的视野范围III,后置摄像头1的视野范围1偏上。如图3G所示,后置摄像头2设置在后置摄像头1和3的中间,因此相比于后置摄像头1的视野范围1和后置摄像头3的视野范围III,后置摄像头2的视野范围II偏中间。如图3G所示,后置摄像头3相比对后置摄像头1和2设置在手机偏下的位置,因此相比于后置摄像头1的视野范围1和后置摄像头2的视野范围II,后置摄像头3的视野范围III偏下。
[0400] 当然,影响摄像头的视野范围的因素不仅包括摄像头在电子设备上的位置,还包括该摄像头的硬件参数(如视场角)。摄像头在电子设备上的位置影响的是摄像头的视野范围的位置(如上述偏左、偏右、偏上或偏下的位置等);而摄像头的硬件参数(如视场角)影响的则是摄像头的视野范围的大小。
[0401] 示例性的,主摄像头(如后置主摄像头)的视野范围可以为1.0X‑8.0X;广角摄像头(如后置广角摄像头)的视野范围为0.6X‑1.0X;长焦摄像头(如后置长焦摄像头)的视野范围为8.0X。其中,1.0X、8.0X和0.6X均为变焦倍率。“1×”表示变焦倍率为1倍。“8.0X”表示变焦倍率为8.0倍。“0.6X”表示变焦倍率为0.6倍。其中,本申请实施例中所述的变焦倍率可以为光学变焦倍率或数字变焦倍率。
[0402] 例如,图3D所示的前置摄像头a(如广角摄像头)的视野范围A大于前置摄像头b(如主摄像头)的视野范围B。又例如,图3H所示的后置摄像头3(如广角摄像头)的视野范围III大于后置摄像头2(如主摄像头)的视野范围II。
[0403] 其中,用户使用电子设备200(如手机)录制视频的过程中,根据上述各种摄像头的特征(如摄像头在手机上的位置和摄像头的硬件参数),基于不同的拍摄目的,可能会切换使用至少两种摄像头。例如,用户想要使用手机拍摄远处的物体时,可以切换使用长焦摄像头;用户想要使用手机拍摄远处较大的拍摄对象时,可以使用广角摄像头。
[0404] 数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备200在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
[0405] 视频编解码器用于对数字视频压缩或解压缩。电子设备200可以支持一种或多种视频编解码器。这样,电子设备200可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
[0406] NPU为神经网络(neural‑network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备200的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
[0407] 外部存储器接口220可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备200的存储能力。外部存储卡通过外部存储器接口220与处理器210通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
[0408] 内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行电子设备200的各种功能应用以及数据处理。例如,在本申请实施例中,处理器210可以通过执行存储在内部存储器221中的指令,内部存储器221可以包括存储程序区和存储数据区。
[0409] 其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备200使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
[0410] 电子设备200可以通过音频模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
[0411] 音频模块270用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块270还可以用于对音频信号编码和解码。在一些实施例中,音频模块270可以设置于处理器210中,或将音频模块270的部分功能模块设置于处理器210中。扬声器270A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器270B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风270C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
[0412] 耳机接口270D用于连接有线耳机。耳机接口270D可以是USB接口230,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
[0413] 压力传感器用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器可以设置于显示屏294。陀螺仪传感器可以用于确定电子设备200的运动姿态。气压传感器用于测量气压。磁传感器包括霍尔传感器。电子设备200可以利用磁传感器检测翻盖皮套的开合。加速度传感器可检测电子设备200在各个方向上(一般为三轴)加速度的大小。当电子设备200静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。距离传感器用于测量距离。电子设备200可以通过红外或激光测量距离。接近光传感器可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备200通过发光二极管向外发射红外光。电子设备200使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备200附近有物体。
[0414] 环境光传感器用于感知环境光亮度。环境光传感器也可用于拍照时自动调节白平衡。环境光传感器还可以与接近光传感器配合,检测电子设备200是否在口袋里,以防误触。指纹传感器用于采集指纹。电子设备200可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。温度传感器用于检测温度。触摸传感器,也称“触控面板”。
触摸传感器可以设置于显示屏294,由触摸传感器280K与显示屏294组成触摸屏,也称“触控屏”。触摸传感器用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。
[0415] 按键290包括开机键,音量键等。按键290可以是机械按键。也可以是触摸式按键。电子设备200可以接收按键输入,产生与电子设备200的用户设置以及功能控制有关的键信号输入。
[0416] 马达291可以产生振动提示。马达291可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏294不同区域的触摸操作,马达291也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
[0417] 指示器292可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
[0418] SIM卡接口295用于连接SIM卡。SIM卡可以通过插入SIM卡接口295,或从SIM卡接口295拔出,实现和电子设备200的接触和分离。电子设备200可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口295可以支持Nano SIM卡,Micro SIM卡,SIM卡等。
[0419] 以下实施例中的方法均可以在具有上述硬件结构的电子设备200中实现。
[0420] 其中,电子设备200的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备200的软件结构。
[0421] 图4是本申请实施例提供的电子设备200的软件结构框图。分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层(简称应用层)410,应用程序框架层(简称框架层)420,硬件抽象层(hardware abstract layer,HAL)层430,以及内核层(Kernel,也称为驱动层)440。
[0422] 其中,应用层(Application)410可以包括一系列应用程序包。该应用层可以包括多个应用程序包。该多个应用程序包可以为相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息以及桌面启动(Launcher)等应用程序。例如,如图4所示,该应用层410可以包括相机系统应用(也称为相机应用)411。
[0423] 如图4所示,相机系统应用411可以用于在录制视频模式下,在录制视频的取景界面展示底层上报的视频流。其中,电子设备200可以包括多个摄像头,每个摄像头都可以用于采集图像,摄像头采集的连续多帧图像可组成视频流。也就是说,上述每个摄像头都可以用于采集视频流。
[0424] 例如,假设电子设备200包括前置摄像头和后置摄像头;图4所示的视频流1可以是前置摄像头采集的视频流,称为前置视频流;图4所示的视频流2可以是后置摄像头采集的视频流,称为后置视频流。
[0425] 虽然电子设备200的多个摄像头都可以采集视频流;但是,一般而言,只会有一个摄像头采集的视频流展示在录制视频的取景界面。其中,在录制视频的取景界面展示的视频流可以称为预览视频流。采集该预览视频流的摄像头可以称为预览摄像头。通过相机系统应用411展示的预览视频流,用户可以实时查看当前视频流的取景情况。该预览视频流可以是上述视频流1或者视频流2。
[0426] 本申请实施例中,用户可以根据自己的需要,动态切换摄像头。例如,如图4所示,相机系统应用411还用于提供如下功能:在录制视频模式下,如果用户选择切换摄像头(即开启录制视频过程中切换摄像头的功能),则可以在录制视频的取景界面显示(即出现)切换摄像头图标(即本申请实施例中所述的第一控件)。响应于用户对该切换摄像头图标(即第一控件)的点击操作,相机系统应用411可以切换预览摄像头,以刷新视频流(即刷新预览视频流)。例如,当预览摄像头是前置摄像头时,预览视频流是视频流1。响应于用户对该切换摄像头图标的点击操作,相机系统应用411可以将预览摄像头切换为后置摄像头,预览视频流刷新为视频流2。
[0427] 其中,每个摄像头的相机标识(Camera ID)不同。应用层410可以通过摄像头的Camera ID指示底层(如内核层440)启动对应的摄像头,并根据预览摄像头的Camera ID指示底层(如框架层420)处理该预览摄像头采集的预览视频流。应用层410还可以根据用户的操作,通过摄像头的Camera ID指示底层(如内核层440)关闭对应的摄像头。
[0428] 进一步的,在录制视频模式下,如果用户关闭切换摄像头(即关闭录制视频过程中切换摄像头的功能),相机系统应用411则不会在录制视频的取景界面显示切换摄像头图标(即第一控件)。并且,相机系统应用411还可以指示底层关闭闲置视频流。其中,闲置视频流可以包括电子设备的多个摄像头采集的视频流中除预览视频流之外的其他视频流。相机系统应用411可以通过关闭闲置摄像头的方式,关闭闲置视频流。该闲置摄像头可以包括电子设备的多个摄像头中除预览摄像头之外的其他摄像头。其中,关闭闲置摄像头可以降低电子设备的功耗。
[0429] 框架层(Framework)420为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图4所示,框架层可以提供相机API,如Camera API(API 1|API 2)421、视频处理(Media Recorder)模块422、相机服务(Camera Service)423、相机拓展服务(Camera Service Extra)425和硬件开发工具包(hardware software development kit,Hw SDK)
424。
[0430] 其中,Camera API(API 1|API 2)421作为底层(如硬件抽象层430)与应用层410交互的接口。具体的,Camera API(API 1|API 2)421可以接收来自上层(如应用层410)的开启录制视频过程中切换摄像头的功能的通知,并通过相机服务423、相机拓展服务425和HwSDK 424处理该开启录制视频过程中切换摄像头的功能的通知。然后,通过HAL层430指示内核层
440开启闲置摄像头,并通过HAL层430获得预览摄像头和闲置摄像头采集的视频流。Camera API(API 1|API 2)421还可以接收来自上层(如应用层410)摄像头切换通知。该摄像头切换通知包括待切换为预览摄像头的Camera ID。
[0431] 一般情况下,应用层410与用户交互,触发电子设备200开始录制视频后,Media Recorder模块422可以将呈现给用户的Surface view的预览视频流实时录制并做好随时生成视频文件的准备。
[0432] 本申请实施例中,当应用层410与用户交互,触发电子设备200切换预览摄像头时,应用层410可以实时刷新Surface view,如将Surface view更新后切换后的预览摄像头采集的视频流。此时,Media Recorder模块422不需要做任何操作(如不需要生成视频文件),只要去Surface view获取视频流即可。这样一来,电子设备200切换摄像头对Media Recorder模块422无感知,当应用层410与用户交互触发电子设备200停止录制视频后,即使录制视频过程中切换了摄像头,也可以生成一个完整的视频文件。该完整的视频文件包括切换前后的多个摄像头采集的预览视频流。
[0433] HAL层430用于连接框架层420和内核层440。例如,HAL层430可以在框架层420和内核层440之间进行数据传输(如透传)。当然,HAL层430也可以对来自底层(即内核层440)的数据进行处理,然后再传输给框架层420。例如,HAL层430可以将内核层440的关于硬件设备的参数转换为框架层420和应用层410可识别的软件程序语言。例如,HAL层430可以包括HAL3.0。
[0434] 本申请实施例中,HAL层430可根据来自上层(如框架层420和应用层410)的通知管理多个摄像头采集的视频流,如根据上次的通知指示底层(如内核层440)关闭/开启摄像头的视频流。
[0435] 内核层440包括相机驱动441、图像信号处理器ISP 443和Camera器件442。该Camera器件442可以包括多个摄像头,每个摄像头包括相机镜头和图像传感器器等。其中,上述图像信号处理器ISP 443可以与摄像头(如Camera器件442)单独设置。在另一些实施例中,上述图像信号处理器ISP 443可以设置在摄像头(如Camera器件442)中。
[0436] 其中,图像信号处理器ISP 443和Camera器件442是拍摄视频或图片的主要设备。取景环境反射的光信号经过相机镜头照射在图像传感器上可转换为电信号,该电信号经过图像信号处理器ISP 443的处理,可作为原始参数流(即视频流),由相机驱动441向上层传输。并且,相机驱动441还可以接收来自上层的通知(如指示开启或关闭摄像头的通知),根据该通知向Camera器件442发送功能处理参数流,以开启或关闭对应的摄像头。
[0437] 以下实施例中以上述电子设备200是手机为例,对本申请实施例的方法进行说明。
[0438] 本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的手机。在第一种应用场景中,该多个摄像头包括第一摄像头和第二摄像头。该第一摄像头是手机的后置摄像头,第二摄像头是手机的前置摄像头;或者,该第一摄像头是手机的前置摄像头,第二摄像头是手机的后置摄像头。在这种应用场景中,采用本申请实施例的方法,手机可以在录制视频的过程中,切换使用手机的前置摄像头和后置摄像头。示例性的,如图5所示,该拍摄视频的方法可以包括S501‑S505:
[0439] S501、手机显示第一界面。该第一界面是手机正在录制视频的取景界面。该第一界面包括多个摄像头中第一摄像头采集的第一预览图像。
[0440] 示例性的,手机可以显示图6A所示的第一界面601。其中,该第一界面601可以包括停止录制按钮603,该第一界面601中计时选项607的计时时长为00:00:08。在手机正在录制视频的情况下,手机录制视频的取景界面中才可以包括停止录制按钮,该手机录制视频的取景界面中计时选项才可以计时。由此可见,上述第一界面601是手机正在录制视频的取景界面。
[0441] 并且,该第一界面601的取景框中显示有第一摄像头(如手机的后置摄像头)采集的第一预览图像602。
[0442] S502、手机接收用户对第一界面的第一操作。该第一操作用于触发电子设备切换使用多个摄像头中的第二摄像头。
[0443] 在一种实现方式中,上述第一界面可以包括第一控件。该第一控件可以用于触发手机切换摄像头。例如,图6A所示的第一界面601中包括第一控件604,该第一控件604也称为切换摄像头的图标。上述第一操作可以是用户对图6A所示的第一控件604的点击操作(如单击操作)。
[0444] 在另一种实现方式中,上述第一操作还可以是用户在上述第一界面输入的预设手势,如S形手势或者√手势等。该预设手势可以预先配置在手机中。并且,手机可以在录像的取景界面向用户提示该预设手势,以及该预设手势所触发的功能(即录制视频过程中切换摄像头的功能)。
[0445] 其中,第二摄像头与第一摄像头不同。例如,第一摄像头是手机的后置摄像头的情况下,第二摄像头是手机的前置摄像头。
[0446] S503、响应于第一操作,手机显示第二界面。该第二界面是手机正在录制视频的取景界面。该第二界面包括多个摄像头中第二摄像头采集的第二预览图像。
[0447] 也就是说,手机可以将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像。
[0448] 例如,以上述第一操作是用户对图6A所示的第一控件604的点击操作为例。响应于用户对图6A所示的第一控件604的第一操作,手机可显示图6B所示的手机正在录制视频的取景界面(即第二界面)605。
[0449] 其中,响应于用户对图6A所示的第一控件604的第一操作,手机正在录制视频的取景界面(即第一界面)中的预览图像,由图6A所示的第一预览图像602切换为图6B所示的第二预览图像606。第一预览图像602和第二预览图像606是不同摄像头采集的图像,因此,如图6A和图6B所示,第一预览图像602和第二预览图像606不同。
[0450] 一般而言,手机录制视频的过程中,只有一个摄像头开启以采集图像。这样,手机在录制视频的过程中,如果手机要将预览摄像头由第一摄像头切换为第二摄像头,则启动第二摄像头需要一定的时间,则取景界面可能会出现短时间(如1秒)的黑屏或空白,影响用户体验。例如,手机录制视频的过程中,只开启第一摄像头的情况下,响应于用户对图8A所示的第一控件604的第一操作,手机可显示图9B所示的录制视频的取景界面901(如显示1秒),然后再自动显示图8B所示的手机录制视频的取景界面803。
[0451] 为了在手机录制视频的过程中,实现摄像头的无感切换,本申请实施例中,手机执行S501‑S502的过程中,不仅手机的第一摄像头在采集图像,手机的第二摄像头也在采集图像。具体的,采用本申请实施例的方法,手机可提前启动多个摄像头。需要注意的是,虽然第一摄像头和第二摄像头都在采集图像;但是,手机执行S501时,第一摄像头作为预览摄像头,手机在第一界面显示第一摄像头采集的第一预览图像,不显示第二摄像头采集的图像。而手机执行S503时,第二摄像头作为预览摄像头,手机在第二界面显示第二摄像头采集的第二预览图像,不显示第一摄像头采集的图像。
[0452] 也就是说,采用本申请实施例的方法,多个摄像头(如第一摄像头和第二摄像头)均采集图像,准备为SurfaceView提供视频流。例如,如图7A所示,第一摄像头提供视频流1的同时,第二摄像头提供视频流2。手机执行S501时,第一摄像头作为预览摄像头,SurfaceView显示视频流1(即第一视频流)。手机执行S503,将预览摄像头由第一摄像头切换为第二摄像头后,第二摄像头作为预览摄像头,SurfaceView显示视频流2(即第二视频流)。
[0453] 示例性的,本申请实施例中,手机可以在手机进入录像模式时,便启动手机中的多个摄像头,以在手机录制视频的过程中,实现摄像头的无感切换。
[0454] 如此,手机启动多个摄像头采集图像,使得多个摄像头都准备好视频流供SurfaceView显示。这样,无论手机切换使用哪一个摄像头,都不会因为启动摄像头需要一定时间使得取景界面的出现短时间(如1秒)的黑屏或空白。采用本方案,可以在手机录制视频的过程中,实现摄像头的无感切换,可以提升用户的拍摄体验。
[0455] 需要注意的是,手机在执行S501的过程中,可以缓存包括上述多帧第一预览图像的视频流。但是,响应于上述第一操作,手机并不会暂停或停止录制视频,手机也不会生成由多帧第一预览图像组成的视频流的视频文件。而是继续录制视频,并缓存包括多帧第二预览图像的视频流,直至接收到用户的第二操作,手机响应于该第二操作才会停止录制视频,并生成第一视频文件。其中,手机接收到第二操作后,生成第一视频文件,以及第一视频文件的详细描述,可以参考以下实施例中的内容,这里不予赘述。
[0456] 在一些实施例中,为了降低手机的功耗,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第一界面的第一操作,才启动第二摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[0457] 在一些实施例中,为了降低手机的功耗,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第一界面的第一操作,才启动第二摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[0458] S504、手机接收用户在第二界面的第二操作。该第二操作用于触发手机停止录制视频。
[0459] 其中,上述第二界面(即手机正在录制视频的取景界面)可以包括停止录制按钮。上述第二操作可以是用户对该停止录制按钮的点击操作(如单击操作)。例如,图6A所示的录制视频的取景界面601、图6B所示的录制视频的取景界面605和图6C所示的录制视频的取景界面609均包括停止录制按钮603。手机可以在录制视频的过程中,随时接收用户对录制视频的取景界面中停止录制按钮603的第二操作,停止录制视频并生成录制的视频文件。
[0460] 应理解,在手机录制视频的过程中,手机录制视频的取景界面中计时选项的计时时长可以随着时间的推移而发生变化。例如,图6A所示的计时选项607的计时时长为00:00:08,随着时间的推移,图6B所示的计时选项608的计时时长为00:00:09,图6C所示的计时选项610的计时时长为00:00:18。
[0461] 示例性的,假设手机在录制视频的时长为00:00:18时,接收到用户的第二操作。例如,如图6C所示,当计时选项610的计时时长为00:00:18时,手机接收到用户对停止录制按钮603的第二操作。
[0462] S505、手机生成第一视频文件。该第一视频文件包括第一视频流和第二视频流,该第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0463] 例如,手机接收用户对图6C所示的停止录制按钮603的第二操作,可以生成图7B所示的第一视频文件。如图7B所示,该第一视频文件包括:第一视频流和第二视频流。该第一视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第一预览图像。上述第二视频流包括上述第二摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第二预览图像。
[0464] 需要说明的是,在手机执行S501的过程中,第一摄像头作为手机的预览摄像头,第一摄像头所采集的图像(即第一预览图像)被显示在手机录制视频的取景界面中;在手机执行S502‑S503之后,第二摄像头作为手机的预览摄像头,第二摄像头所采集的图像(即第二预览图像)被显示在手机录制视频的取景界面中。
[0465] 应理解,手机执行S505生成的视频文件包括:手机录制视频的过程中,显示在手机录制视频的取景界面中的所有预览图像。
[0466] 例如,假设手机从00:00:00录制视频开始到00:00:08都是第一摄像头作为预览摄像头,未切换过摄像头。
[0467] 由图6A‑图6C可知:在00:00:00‑00:00:08这段时间,第一摄像头作为预览摄像头;在00:00:09‑00:00:18这段时间,第二摄像头作为预览摄像头。因此,如图7B所示,手机执行S505生成的第一视频文件可以包括:00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流;以及00:00:09‑00:00:18这段时间,第二摄像头采集的第二视频流。
[0468] 其中,在00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流可以包括:00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在手机的显示屏上的多帧第一预览图像。00:00:09‑00:00:18这段时间,第二摄像头采集的第二视频流可以包括:00:00:09‑
00:00:18这段时间,由第二摄像头采集并显示在手机的显示屏上的多帧第二预览图像。
[0469] 本申请实施例这里结合图4和图7C,说明本申请实施例中手机执行S505生成第一视频文件的原理。
[0470] 其中,手机的SurfaceView中的预览视频流(包括多帧这预览图像)是由手机的预览摄像头采集并显示在显示屏上的。即SurfaceView中的预览视频流是用户想要拍摄并生成的视频流。因此,如图7C所示,从手机开始录制视频,视频处理(Media Recorder)模块422便实时从SurfaceView中获取预览视频流并缓存获取到的视频流。这样,手机收到第二操作(即停止录制视频的操作),视频处理(Media Recorder)模块422便可以生成包括缓存的视频流的视频文件。
[0471] 采用本申请实施例的方法,手机在录制视频的过程中可以切换摄像头。其中,如图7C所示,手机切换摄像头后可以继续录制视频,并不会影响视频处理(Media Recorder)模块422实时从SurfaceView中获取第一视频流,并缓存该第一视频流。
[0472] 由上述描述可知:手机的预览摄像头由第一摄像头切换为第二摄像头后,SurfaceView中的预览视频流也会随之切换,如SurfaceView中的预览视频流由第一摄像头采集的第一视频流切换为第二摄像头采集的第二视频流。因此,手机切换摄像头后,视频处理(Media Recorder)模块422从SurfaceView中获取的预览视频流,也会由第一摄像头采集的第一视频流变为第二摄像头采集的第二视频流。这样,视频处理(Media Recorder)模块
422便可以获取并缓存第二视频流。接收到用户的第二操作(即停止录制视频的操作),手机可停止录制视频。此时,视频处理(Media Recorder)模块422可以生成包括缓存的第一视频流和第二视频流的第一视频文件。
[0473] 需要说明的是,手机执行S505生成的视频文件,如图7B所示的第一视频文件,是一个完整的视频文件。通过本申请实施例的方法,手机结束录制视频后,可以生成并生成一个完整的第一视频文件。也就是说,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。
[0474] 本申请实施例中,手机录制视频的过程中,可以接收用户对手机正在录制视频的取景界面(如第一界面)的第一操作,如对用于触发手机切换摄像头的第一控件的点击操作。然后,手机可以响应于该第一操作,将第一界面中第一摄像头采集的第一预览图像切换为第二摄像头采集的第二预览图像,即实现在录制视频的过程中,切换手机的摄像头。最后,手机接收到用户的第二操作(如对停止录制按钮的点击操作),可生成包括第一视频流和第二视频流的完整的视频文件。
[0475] 综上所述,采用本申请实施例的方法,可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合,接收到用户对停止录制按钮的点击操作,可以实时生成上述多视角的视频文件,供用户随时查看。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0476] 进一步的,采用本申请实施例的方法,并不会限制手机录制视频的时长。也就是说,手机执行本申请实施例的方法,可以根据用户的需求录制任意时长的视频文件。
[0477] 在另一些实施例中,手机在一次拍摄视频的过程中,可能会至少两次切换摄像头。例如,假设手机在录制视频的时长为00:00:18时,并未接收到用户的第二操作,而是在手机在录制视频的时长为00:01:09时,又一次接收到用户的第一操作。
[0478] 例如,随着时间的推移,手机可显示图8A所示的录制视频的取景界面801,该录制视频的取景界面801中计时选项805的计时时长为00:01:09。该录制视频的取景界面801的取景框中包括第二预览图像802。
[0479] 手机可以接收到用户对图8A所示的第一控件(也称为切换摄像头的图标)604的第一操作。响应于用户对图8A所示的第一控件604的第一操作,手机可将第二预览图像802切换为第一摄像头采集的第三预览图像。例如,手机可显示图8B所示的手机正在录制视频的取景界面803。该录制视频的取景界面803的取景框包括第三预览图像804。其中,第二预览图像802和第三预览图像804是不同摄像头采集的图像,因此,如图8A和图8B所示,第二预览图像802和第三预览图像804不同。其中,第三预览图像804与第一预览图像602均为第一摄像头采集的图像。例如,对比图8B和图6A可知,第三预览图像804与第一预览图像602大致相同。
[0480] 在手机录制视频的过程中,手机录制视频的取景界面中计时选项的计时时长可以随着时间的推移而发生变化。例如,图8A所示的计时选项805的计时时长为00:01:09,随着时间的推移,图8B所示的计时选项806的计时时长为00:01:10,图8C所示的计时选项808的计时时长为00:01:20。
[0481] 假设手机在录制视频的时长为00:01:20时,接收到用户的第二操作。例如,如图8C所示,当计时选项808的计时时长为00:01:20时,手机接收到用户对图8C所示的停止录制按钮603的第二操作。接收到用户对图8C所示的停止录制按钮603的第二操作,手机可以生成图9A所示的第二视频文件。如图9A所示,该第二视频文件包括:第一视频流、第二视频流和第三视频流。该第一视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第一预览图像。该第二视频流包括上述第二摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第二预览图像。该第三视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第三预览图像。
[0482] 应理解,手机所生成的第二视频文件包括手机录制视频的过程中,显示在手机录制视频的取景界面中的所有预览图像。
[0483] 例如,假设手机从00:00:00录制视频开始到00:00:08都是第一摄像头作为预览摄像头,未切换过摄像头。由上述描述结合图6A‑图6C和图8A可知:在00:00:00‑00:00:08这段时间,第一摄像头作为预览摄像头;在00:00:09‑00:01:09这段时间,第二摄像头作为预览摄像头;在00:01:10‑00:01:20这段时间,第一摄像头作为预览摄像头。因此,如图9A所示,手机生成的第二视频文件可以包括:00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流;00:00:09‑00:01:09这段时间,第二摄像头采集的第二视频流;以及,00:01:10‑00:01:20这段时间,第一摄像头采集的第三视频流。
[0484] 其中,在00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流可以包括:00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在手机的显示屏上的多帧第一预览图像。00:00:09‑00:01:09这段时间,第二摄像头采集的第二视频流可以包括:00:00:09‑
00:01:09这段时间,由第二摄像头采集并显示在手机的显示屏上的多帧第二预览图像。00:
01:10‑00:01:20这段时间,第一摄像头采集的第三视频流可以包括:00:01:10‑00:01:20这段时间,由第一摄像头采集并显示在手机的显示屏上的多帧第三预览图像。
[0485] 需要说明的是,手机生成的第二视频文件(如图9A所示的第二视频文件),是一个完整的视频文件。通过本申请实施例的方法,手机结束录制视频后,可以生成并生成一个完整的视频文件。也就是说,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0486] 在一些实施例中,手机开始录制视频后,并不能响应于第一操作在录制视频的过程中切换摄像头。而是在开始录制视频后,响应于用户开启预设功能(如录制视频过程中切换摄像头的功能)后,才可以响应于第一操作在录制视频的过程中切换摄像头。具体的,如图9C所示,在上述S501之前,本申请实施例的方法还可以包括S901‑S903。如图9C所示,图5所示的S501可以包括S904。
[0487] S901、手机显示第四界面。该第四界面是手机录制视频的取景界面。该第四界面包括开始录制按钮。该开始录制按钮用于触发手机开始录制视频。
[0488] 其中,虽然第四界面与上述第一界面都是手机录制视频的取景界面;但是,上述第一界面是手机正在录制视频的取景界面,即手机已经开始录制视频的取景界面;而第四界面则是手机还未开始录制视频的取景界面。例如,第一界面包括停止录制按钮,而该第四界面包括开始录制按钮。
[0489] 应理解,手机显示第四界面时,该手机已经进入录像模式。在录像模式下,只要手机接收到用户对开始录制按钮的点击操作,该手机便可以开始录制视频。例如,手机可显示图1B所示的第四界面104,该第四界面104是手机录制视频的取景界面。该第四界面104包括开始录制按钮108。
[0490] S902、响应于用户对第四界面中开始录制按钮的点击操作,手机显示第五界面。该第五界面是手机正在录制视频的取景界面。该第五界面包括预设功能开关。
[0491] 其中,该预设功能开关用于触发手机开启或关闭预设功能。该预设功能为录制视频过程中切换摄像头的功能。
[0492] 例如,响应于用户对图1B所示的第四界面104中开始录制按钮108的点击操作(如单击操作),手机可显示图10A所示的第五界面1001。该第五界面1001是手机正在录制视频的取景界面,如该第五界面1001包括停止录制按钮603。该第五界面1001还包括预设功能开关(如切换开关)1002。该切换开关1002用于触发手机开启或关闭预设功能。
[0493] 应注意,第五界面和第一界面均为手机正在录制视频的取景界面。不同的是:手机显示上述第一界面时,手机的预设功能已开启,手机响应于用户在第一界面的第一操作可切换摄像头。而手机显示上述第五界面时,手机的预设功能还未开启,手机响应于用户对第五界面中预设功能开关的点击操作,才可以开启预设功能。
[0494] S903、手机接收用户对预设功能开关的第三操作,该第三操作用于触发手机开启预设功能。
[0495] 其中,该预设功能为录制视频过程中切换摄像头的功能。
[0496] S904、响应于用户对预设功能开关的第三操作,手机显示上述第一界面,如包括第一控件的第一界面。
[0497] 例如,手机可接收用户对图10A所示的预设功能开关(如切换开关)1002的第三操作。响应于用户对预设功能开关(如切换开关)1002的第三操作,手机可显示图10B所示的第一界面1003。该第一界面1003中包括第一控件604。该第一控件604用于触发手机切换摄像头。该第一界面1003还包括预设功能开关1004。
[0498] 在一些实施例中,手机可以在第五界面显示处于第三显示状态的预设功能开关,在第一界面显示处于第四显示状态的预设功能开关。其中,第三显示状态用于指示手机还未开启预设功能,第四显示状态用于指示手机已开启预设功能。例如,手机在图10A所示的第五界面1001显示处于第三显示状态的预设功能开关1002,如白底黑字的“切换开关”;手机在图10B所示的第一界面1003显示处于第四显示状态的预设功能开关1004,如黑底白字的“切换开关”。
[0499] 本实施例中,手机可以通过预设功能开关的状态指示手机开启/关闭预设功能。这样,用户便可以通过观察该预设功能开关的状态,判断预设功能是否开启/关闭。当然,用户也可以通过观察手机正在录制视频的取景界面是否包括上述第一控件,判断预设功能是否开启/关闭。
[0500] 在另一些实施例中,手机还可以在录制视频的过程中,响应于用户的操作,关闭上述预设功能。具体的,在上述S904之后,本申请实施例的方法还可以包括S905‑S906。S905:手机接收用户对预设功能开关的第四操作,该第四操作用于触发手机关闭预设功能。S906、响应于用户对预设功能开关的第四操作,手机可关闭预设功能,并显示第六界面。该第六界面是手机正在录制视频的取景界面。手机显示该第六界面时,不能响应于用户的第一操作,切换摄像头。例如,该第六界面不包括上述第一控件,因此不能响应于用户的第一操作,切换摄像头。
[0501] 应注意,手机可以在S904之后,手机执行S502‑S503的过程中执行S905‑S906。也就是说,在手机切换摄像头的前后,该手机都可以执行S905‑S906,关闭预设功能。
[0502] 例如,响应于用户对图10B所示的预设功能开关((如切换开关)1004的第四操作,手机可显示图10C所示的第六界面1005。该第六界面1005是手机正在录制视频的取景界面。该第六界面1005不包括上述第一控件。可选的,该第六界面1005还包括处于第三显示状态的预设功能开关1002,如白底黑字的“切换开关”。
[0503] 本实施例中,手机可以响应于用户的第三操作,按照用户的需求开启/关闭预设功能。其中,按照用户的需求开启/关闭预设功能,不仅可以提升用户拍摄体验;关闭预设功能还可以关闭闲置摄像头,从而还可以减少手机的功耗。
[0504] 在另一些实施例中,手机开始录制视频后,如果手机的预设功能已开启,手机则可以响应于第一操作在录制视频的过程中切换摄像头。但是,手机开始录制视频后,如果手机的预设功能还未开启,手机则不能响应于第一操作在录制视频的过程中切换摄像头。
[0505] 具体的,如图10D所示,在上述S501之前,本申请实施例的方法还可以包括S1001。如图10D所示,图5所示的S501可以包括S1002。
[0506] S1001、手机显示第四界面。该第四界面是手机录制视频的取景界面。该第四界面包括开始录制按钮。该开始录制按钮用于触发手机开始录制视频。
[0507] 其中,该第四界面的详细描述,可以参考上述S901中对第四界面的介绍,本申请实施例这里不予赘述。例如,手机可显示图1B所示的第四界面104,该第四界面104是手机录制视频的取景界面。该第四界面104包括开始录制按钮108。
[0508] S1002、响应于用户对第四界面中开始录制按钮的点击操作,若手机的预设功能已开启,手机显示第一界面,如包括第一控件的第一界面。
[0509] 例如,响应于用户对图1B所示的第四界面104中开始录制按钮108的点击操作,手机可显示图11所示的第一界面1101。该第一界面1101包括第一控件604。该第一界面1101还包括停止录像按钮和计时选项等。
[0510] 在该实施例中,手机可以通过以下任一种实现方式,开启上述预设功能,即录制视频的过程中切换摄像头的功能。
[0511] 实现方式(1):手机响应于用户在设置界面输入的开启预设功能的操作,开启预设功能。
[0512] 例如,如图12所示,手机的设置界面1201包括预设功能开关,如“录像切换摄像头”开关1202。响应于用户对该“录像切换摄像头”开关1202的开启操作,手机可启动预设功能。其中,手机开启预设功能后,手机可显示图11所示的第一界面1101,即录制视频的取景界面。响应于用户对该“录像切换摄像头”开关1202的关闭操作,手机可关闭预设功能。其中,手机关闭预设功能后,手机可显示图1C所示的录制视频的取景界面110。
[0513] 图12所示的设置界面1201还包括手机的“飞行模式”开关、“WLAN”选项、“蓝牙”选项和“移动网络”选项等。其中,这些开关和选项的具体功能,可以参考常规技术中对设置界面的各个开关和选项的详细介绍,这里不予赘述。
[0514] 实现方式(2):手机响应于用户在手机的通知栏输入的开启预设功能的操作,开启预设功能。
[0515] 例如,手机响应于用户在手机的显示屏(如触摸屏)的顶部的下拉操作,可显示图13所示的通知栏1301。该通知栏1301包括预设功能开关,如“录像切换摄像头”开关1302。响应于用户对该“录像切换摄像头”开关1302的开启操作,手机可启动预设功能。其中,手机开启预设功能后,手机可显示图11所示的第一界面1101,即录制视频的取景界面。响应于用户对该“录像切换摄像头”开关1302的关闭操作,手机可关闭预设功能。其中,手机关闭预设功能后,手机可显示图1C所示的录制视频的取景界面110。
[0516] 图13所示的通知栏1301还包括手机的“飞行模式”开关、“WLAN”选项、“蓝牙”选项、“移动网络”选项和“手电筒”开关等。其中,这些开关和选项的具体功能,可以参考常规技术中对通知栏的各个开关和选项的详细介绍,这里不予赘述。
[0517] 本实施例中,手机响应于用户的开始录制视频的操作,便可以在录制视频的取景界面显示第一控件。如此,便可以接收用户对该第一控件的点击操作,切换摄像头,以为用户提供在录制视频的过程中切换摄像头的服务。
[0518] 在另一些实施例中,如果手机开启了预设功能,且手机处于录像模式,该手机则可以启动手机中的多个摄像头采集图像,以在手机录制视频的过程中,实现摄像头的无感切换。其中,手机启动多个摄像头采集图像,以在手机录制视频的过程中实现摄像头的无感切换的原理,可以参考上述实施例中的详细描述,这里不予赘述。
[0519] 在该实施例中,为了降低手机的功耗,手机关闭上述预设功能后,手机则可以关闭闲置摄像头(即非预览摄像头),即关闭闲置摄像头(即非预览摄像头)的视频流。
[0520] 在第二种应用场景中,该多个摄像头可以包括多种类型的前置摄像头和后置摄像头。在本申请实施例中摄像头的类型可以包括:主摄像头、长焦摄像头、广角摄像头、超广角摄像头、微距摄像头、鱼眼摄像头、红外摄像头、深度摄像头和黑白摄像头中至少两种。在这种应用场景中,采用本申请实施例的方法,手机可以在录制视频的过程中,切换使用手机的前置摄像头和后置摄像头。
[0521] 示例性的,以下实施例中,以手机包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头为例,介绍本实施例的方法。如图14所示,本申请实施例的方法可以包括S1401‑S1405。
[0522] S1401、手机显示第一界面。该第一界面是手机正在录制视频的取景界面。该第一界面包括多个摄像头中第一摄像头采集的第一预览图像,该第一界面还包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头。
[0523] 示例性的,手机可显示图15A所示的第一界面1501。其中,该第一界面1501包括停止录制按钮1503,该第一界面1501中计时选项的计时时长为00:00:08。在手机正在录制视频的情况下,手机录制视频的取景界面中才会包括停止录制按钮,该手机录制视频的取景界面中计时选项才会计时。由此可见,该第一界面1501是手机正在录制视频的取景界面。
[0524] 并且,该第一界面1501的取景框中显示有第一摄像头(如手机的后置摄像头)采集的第一预览图像1502。该第一摄像头可以是手机的多个摄像头中的任一个摄像头。例如,以下实施例中,第一摄像头是手机的后置主摄像头为例。
[0525] 如图15A所示,该第一界面1501还包括多个第二控件,如“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[0526] 其中,图15A所示的“前置主摄”控件对应于手机的前置主摄像头,用于触发手机显示前置主摄像头采集的预览图像。图15A所示的“前置长焦”控件对应于手机的前置长焦摄像头,用于触发手机显示前置长焦摄像头采集的预览图像。图15A所示的“前置广角”控件对应于手机的前置广角摄像头,用于触发手机显示前置广角摄像头采集的预览图像。
[0527] 图15A所示的“后置主摄”控件对应于手机的后置主摄像头,用于触发手机显示后置主摄像头采集的预览图像。图15A所示的“后置长焦”控件对应于手机的后置长焦摄像头,用于触发手机显示后置长焦摄像头采集的预览图像。图15A所示的“后置广角”控件对应于手机的后置广角摄像头,用于触发手机显示后置广角摄像头采集的预览图像。
[0528] 在一些实施例中,S1401中,手机可以在第一界面,以区别于其他摄像头的第二控件的方式,显示第一摄像头的第二控件。例如,手机可以在第一界面显示处于第一显示状态的第一摄像头的第二控件,在第一界面显示处于第二显示状态的其他摄像头的第二控件。
[0529] 示例性的,以第一摄像头是手机的后置主摄像头为例。如图15A所示,手机可以在第一界面显示处于第一显示状态(如黑底白字)的“后置主摄”控件。处于第一显示状态的“后置主摄”控件用于指示手机当前显示后置主摄像头采集的预览图像。
[0530] 如图15A所示,手机可以在第一界面显示处于第二显示状态(如白底黑字)的“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置长焦”控件和“后置广角”控件。处于第二显示状态的第二控件用于指示手机当前不显示该第二控件对应的摄像头采集的预览图像。
[0531] 其中,手机以区别于其他摄像头的第二控件的方式,显示第一摄像头的第二控件,有利于用户快速识别出手机的预览摄像头。
[0532] S1402、手机接收用户对多个第二控件中第一控件的第一操作。该第一操作用于触发电子设备切换使用多个摄像头中的第二摄像头。
[0533] 其中,第一控件是多个第二控件中的任一个第二控件。第二摄像头是第一控件对应的摄像头。该第二摄像头与第一摄像头不同。该第二摄像头可以是上述多个摄像头中、除第一摄像头之外的任一摄像头。例如,在第一摄像头是手机的后置主摄像头的情况下,该第二摄像头可以是前置主摄像头、前置广角摄像头、前置长焦摄像头、后置广角摄像头或者后置长焦摄像头中的任一种摄像头。
[0534] 以下实施例中,以第一摄像头是手机的后置主摄像头,第二摄像头是前置主摄像头为例。在这种情况下,第一控件是图15A所示的“前置主摄”控件。第一操作可以是用户对图15A所示的“前置主摄”控件的点击操作(如单击操作)。
[0535] S1403、响应于对第一控件的第一操作,手机显示第二界面。该第二界面是手机正在录制视频的取景界面。该第二界面包括多个摄像头中第二摄像头采集的第二预览图像。
[0536] 其中,该第二界面也包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头。在一些实施例中,S1403中,手机可以在第二界面,以区别于其他摄像头的第二控件的方式,显示第二摄像头的第二控件。例如,手机可以在第二界面显示处于第一显示状态的第二摄像头的第二控件,在第二界面显示处于第二显示状态的其他摄像头的第二控件。
[0537] 示例性的,以第二摄像头是手机的前置主摄像头为例。如图15B所示,手机可以在第二界面显示处于第一显示状态(如黑底白字)的“前置主摄”控件。处于第一显示状态的“前置主摄”控件用于指示手机当前显示前置主摄像头采集的预览图像。如图15B所示,手机可以在第二界面显示处于第二显示状态(如白底黑字)的“后置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置长焦”控件和“后置广角”控件。处于第二显示状态的第二控件用于指示手机当前不显示该第二控件对应的摄像头采集的预览图像。
[0538] 也就是说,手机可以将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像。
[0539] 例如,响应于用户对图15A所示的“前置主摄”控件的第一操作,手机可显示图15B所示的手机正在录制视频的取景界面(即第二界面)1504。也就是说,响应于用户对图15A所示的“前置主摄”控件的第一操作,手机正在录制视频的取景界面(即第一界面)中的预览图像,由图15A所示的第一预览图像1502切换为图15B所示的第二预览图像1505。第一预览图像602和第二预览图像606是不同摄像头采集的图像,因此,如图15A和图15B所示,第一预览图像1502和第二预览图像1505不同。
[0540] 需要注意的是,手机在执行S1401的过程中,可以缓存包括上述多帧第一预览图像的视频流。但是,响应于上述第一操作,手机并不会暂停或停止录制视频,手机也不会生成由多帧第一预览图像组成的视频流的视频文件。而是继续录制视频,并缓存包括多帧第二预览图像的视频流,直至接收到用户的第二操作,手机响应于该第二操作才会停止录制视频,并生成第一视频文件。其中,手机生成第一视频文件,以及第一视频文件的详细描述,可以参考以下实施例中的内容,这里不予赘述。
[0541] S1404、手机接收用户在第二界面的第二操作。该第二操作用于触发手机停止录制视频。
[0542] 其中,S1404的详细描述可以参考上述实施例对S504的介绍,这里不予赘述。
[0543] S1405、手机生成第一视频文件。该第一视频文件包括第一视频流和第二视频流,该第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[0544] 示例性的,假设手机在录制视频的时长为00:00:18时,接收到用户的第二操作。手机可生成图7B所示的第一视频文件。
[0545] 本申请实施例中,手机录制视频的过程中,可以接收用户对手机正在录制视频的取景界面(如第一界面)的第一操作,如对用于触发手机切换摄像头的第一控件的点击操作。然后,手机可以响应于该第一操作,将第一界面中第一摄像头采集的第一预览图像切换为第二摄像头采集的第二预览图像,即实现在录制视频的过程中,切换手机的摄像头。最后,响应于用户的第二操作(如对停止录制按钮的点击操作),手机可生成包括第一视频流和第二视频流的完整的视频文件。
[0546] 综上所述,采用本申请实施例的方法,可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合,接收到用户对停止录制按钮的点击操作,可以实时生成上述多视角的视频文件,供用户随时查看。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0547] 进一步的,采用本申请实施例的方法,并不会限制手机录制视频的时长。也就是说,手机执行本申请实施例的方法,可以根据用户的需求录制任意时长的视频文件。
[0548] 在另一些实施例中,手机在一次拍摄视频的过程中,可能会至少两次切换摄像头。例如,假设手机在录制视频的时长为00:00:18时,并未接收到用户的第二操作,而是在手机在录制视频的时长为00:01:09时,又一次接收到用户对“前置长焦”控件的第一操作。响应于用户对“前置长焦”控件的第一操作,手机可将第二预览图像1505切换为前置长焦摄像头(即第三摄像头)采集的第三预览图像。
[0549] 假设手机在录制视频的时长为00:01:20时,接收到用户的第二操作;并且在00:01:10‑00:01:20这段时间,手机未切换摄像头。接收到用户对停止录制按钮的第二操作,手机可以生成图15C所示的第二视频文件。
[0550] 如图15C所示,该第二视频文件包括:第一视频流、第二视频流和第三视频流。该第一视频流包括上述后置主摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第一预览图像。该第二视频流包括前置主摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第二预览图像。该第三视频流包括前置长焦摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第三预览图像。也就是说,如图15C所示,手机生成的第二视频文件可以包括:00:00:00‑00:00:08这段时间,后置主摄像头采集的第一视频流;00:00:09‑00:01:09这段时间,前置主摄像头采集的第二视频流;以及,00:01:10‑00:01:20这段时间,前置长焦摄像头采集的第三视频流。
[0551] 其中,在00:00:00‑00:00:08这段时间,后置主摄像头采集的第一视频流可以包括:00:00:00‑00:00:08这段时间,由后置主摄像头采集并显示在手机的显示屏上的多帧第一预览图像。00:00:09‑00:01:09这段时间,前置主摄像头采集的第二视频流可以包括:00:00:09‑00:01:09这段时间,由前置主摄像头采集并显示在手机的显示屏上的多帧第二预览图像。00:01:10‑00:01:20这段时间,前置长焦摄像头采集的第三视频流可以包括:00:01:
10‑00:01:20这段时间,由前置长焦摄像头采集并显示在手机的显示屏上的多帧第三预览图像。
[0552] 需要说明的是,手机生成的第二视频文件(如图15C所示的第二视频文件)是一个完整的视频文件。通过本申请实施例的方法,手机结束录制视频后,可以生成并生成一个完整的视频文件。也就是说,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0553] 应理解,本申请实施例中,上述多个第二控件在第一界面或第二界面的位置包括但不限于图15A或图15B所示的位置。
[0554] 示例性的,手机还可以在第一界面(即手机正在录制视频的取景界面)的取景框内显示该多个第二控件。例如,手机可显示图16A所示的第一界面(即手机正在录制视频的取景界面)1601。该第一界面1601的取景框内显示有第一预览图像1602。该第一界面1601的取景框内还显示有多个第二控件,“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。响应于用户对图16A所示的多个第二控件中第一控件(如“前置主摄”控件)1603的第一操作,手机可显示图16B所示的第二界面1604。也就是说,响应于用户对图16A所示的“前置主摄”控件的第一操作,手机正在录制视频的取景界面(即第一界面)中的预览图像,由图16A所示的第一预览图像1602切换为图16B所示的第二预览图像1605。
[0555] 在另一些实施例中,为了避免上述多个第二控件显示在手机录制视频的取景界面时,占据取景界面中取景框中的显示区域,影响用户查看预览图像。一般情况下,手机不会在第一界面显示上述多个第二控件。手机响应于用户的预设操作,才可以在第一界面显示该多个第二控件。例如,手机可显示图16C所示的第一界面1606,该第一界面1606不包括多个第二控件。响应于用户在第一界面1606的预设操作(如由显示屏右侧边框输入的由右向左的滑动操作),手机可显示图16A所示的第一界面1601。
[0556] 响应于用户对图16A所示的多个第二控件中第一控件(如“前置主摄”控件)1603的第一操作,手机可显示图16D所示的第一界面1607。该第一界面1607不包括多个第二控件。响应于用户在第一界面1607的预设操作(如由显示屏右侧边框输入的由右向左的滑动操作),手机可显示图16B所示的第一界面1605。
[0557] 应注意,该实施例中手机在第一界面不显示多个第二控件,不是因为手机未开启预设功能;而是为了避免上述多个第二控件占据取景界面中取景框中的显示区域,影响用户查看预览图像。
[0558] 在该实施例中,手机在录制视频的过程中,可以不显示多个第二控件。而是根据用户的需求,当用户想要切换摄像头时,响应于用户的操作才显示该多个第二控件。这样,不仅可以支持手机在录制视频的过程中切换摄像头,还可以避免上述多个第二控件占据取景界面中取景框中的显示区域,可以提升用户的拍摄体验。
[0559] 在另一些实施例中,手机在显示包括多个第二控件的第一界面之前,可以显示包括第三控件的第三界面。该第三控件可以是摄像头切换选项。该第三控件用于触发手机显示多个第二控件。该第三界面是手机录制视频的取景界面。该第三界面不包括多个第二控件。响应于用户对该第三控件的点击操作,手机可以显示包括多个第二控件的第一界面(即录制视频的取景界面)。例如,手机可以显示图16E所示的第三界面1608,该第三界面1608包括第三控件(如摄像头切换选项)1609。响应于用户对该第三控件1609的点击操作,手机可以显示图16F所示的第一界面1610,该第一界面1610包括多个第二控件1611。或者,响应于用户对该第三控件1609的点击操作,手机可以显示图16A或图15A所示的第一界面。
[0560] 可选的,图16F所示的第一界面1609还包括第三控件(如摄像头切换选项)1609。响应于用户对图16F所示的第三控件1609的点击操作,手机可以隐藏第一界面1609中的多个第二控件1611,显示图16E所示的录制视频的取景界面1608。
[0561] 本申请实施例中,手机在录制视频的取景界面显示的多个第二控件,至少可以包括以下三种实现方式。
[0562] 实现方式(a):
[0563] 如图15A、图15B、图16A、图16B或图16F中任一附图所示,多个第二控件中的每个第一控件上显示有对应摄像头的类型指示信息。在本申请实施例中,一个摄像头的类型指示信息用于指示该摄像头的摄像头类型,还可以指示该摄像头为前置摄像头或后置摄像头。
[0564] 例如,响应于用户对图16E所示的摄像头切换选项1609的点击操作,手机可以显示图16F所示的第一界面1610。如图16F所示,多个第二控件1611上的各个第二控件上分别显示有如下类型指示信息,“前置主摄”、“前置长焦”、“前置广角”、“后置主摄”、“后置长焦”、“后置广角”。其中,类型指示信息“前置主摄”用于指示第二控件对应前置主摄像头。类型指示信息“前置长焦”用于指示第二控件对应前置长焦摄像头。类型指示信息“前置广角”用于指示第二控件对应前置广角摄像头。类型指示信息“后置主摄”用于指示第二控件对应后置主摄像头。类型指示信息“后置长焦”用于指示第二控件对应后置长焦摄像头。类型指示信息“后置广角”用于指示第二控件对应后置广角摄像头。
[0565] 实现方式(b):
[0566] 多个第二控件中的每个第二控件上显示有对应摄像头采集的预览图像。例如,如图16G所示,第一界面1612包括多个第二控件,如第二控件1613、第二控件1614、第二控件1615、第二控件1616、第二控件1617和第二控件1618。
[0567] 其中,第二控件1613中显示有后置主摄像头采集的预览图像。第二控件1614中显示有后置广角摄像头采集的预览图像。第二控件1615中显示有后置长焦摄像头采集的预览图像。第二控件1616中显示有前置主摄像头采集的预览图像。第二控件1617中显示有前置广角摄像头采集的预览图像。第二控件1618中显示有前置长焦摄像头采集的预览图像。
[0568] 因此,上述第二控件1613也可以称为“后置主摄”控件,上述第二控件1614也可以称为“后置广角”控件,上述第二控件1615还可以称为“后置长焦”控件;上述第二控件1616还可以称为“前置主摄”控件,上述第二控件1617还可以称为“前置广角”控件,上述第二控件1618还可以称为“前置长焦”控件。手机还可以显示图16H所示的第一界面1619。
[0569] 其中,图16G所示的第一界面1612和图16H所示的第一界面1619还包括摄像头切换选项。响应于用户对图16G或图16H所示的摄像头切换选项的点击操作,手机可隐藏上述多个第二控件,显示图16E所示的第一界面1608。
[0570] 应理解,在每个第一控件上显示对应摄像头采集的预览图像,可以直观的向用户展示每个摄像头的拍摄效果和拍摄视角等,有利于用户从多个摄像头中选择拍摄效果和拍摄视角等满足用户需求的摄像头。这样,可以提升用户的拍摄体验。
[0571] 实现方式(c):
[0572] 多个第二控件中的每个第二控件上显示有对应摄像头的代理信息。在本申请实施例中,一个摄像头的代理信息可以指示该摄像头为前置摄像头或后置摄像头,还可以包括该摄像头的编号。
[0573] 在一种情况下,摄像头的编号可以是手机为摄像头分配的。例如,摄像头的编号可以是摄像头的Camera ID。不同摄像头的Camera ID不同。在另一种情况下,摄像头的编号可以是用户在手机中为摄像头分配的。不同前置摄像头的编号不同,不同后置摄像头的编号不同。
[0574] 示例性的,响应于用户对图16E所示的摄像头切换选项1609的点击操作,手机可显示图16I所示的拍照的取景界面(即第一界面)1620。如图16I所示,第一界面1620包括多个第二控件1621。例如,以摄像头的编号为1、2、3为例。该多个第二控件1621可以包括“前置摄像头1”控件、“前置摄像头2”控件、“前置摄像头3”控件、“后置摄像头1”控件、“后置摄像头2”控件、“后置摄像头3”控件。
[0575] 其中,代理信息“前置摄像头1”用于指示第二控件(如“前置摄像头1”控件)对应一个前置摄像头,该前置摄像头的编号为1。例如,编号为1是前置摄像头是前置主摄像头。代理信息“前置摄像头2”用于指示第二控件(如“前置摄像头2”控件)对应一个前置摄像头,该前置摄像头的编号为2。例如,编号为2是前置摄像头是前置广角摄像头。代理信息“前置摄像头3”用于指示第二控件(如“前置摄像头3”控件)对应一个前置摄像头,该前置摄像头的编号为3。例如,编号为3是前置摄像头是前置长焦摄像头。
[0576] 代理信息“后置摄像头1”用于指示第二控件(如“后置摄像头1”控件)对应一个后置摄像头,该后置摄像头的编号为1。例如,编号为1是后置摄像头是后置主摄像头。代理信息“后置摄像头2”用于指示第二控件(如“后置摄像头2”控件)对应一个后置摄像头,该后置摄像头的编号为2。例如,编号为2是后置摄像头是后置广角摄像头。代理信息“后置摄像头3”用于指示第二控件(如“后置摄像头3”控件)对应一个后置摄像头,该后置摄像头的编号为3。例如,编号为3是后置摄像头是后置长焦摄像头。
[0577] 在另一些实施例中,手机可以采用上述实现方式(a)‑实现方式(c)中的至少一种实现方式,在第一界面显示多个第二控件。其中,手机在第一界面显示多个第二控件的具体实现方式可以预先配置在手机中,也可以由用户在手机中设置。其中,手机接收并根据用户设置,显示多个第二控件的具体方法可以参考常规技术中的相关描述这里不予赘述。
[0578] 在另一些实施例中,在上述S1401之前,本申请实施例的方法还可以包括S901‑S903。上述S1401可以包括S904′。S904′:响应于用户对预设功能开关的第三操作,手机显示包括多个第二控件的第一界面。其中,S901‑S903和S904′的详细描述,可以参考上述实施例的相关介绍,这里不予赘述。
[0579] 在另一些实施例中,在上述S1401之前,本申请实施例的方法还可以包括S1001。上述S1401可以包括S1002′。S1002′:响应于用户对第四界面中开始录制按钮的点击操作,手机显示包括多个第二控件的第一界面。其中,S1001和S1002′的详细描述,可以参考上述实施例的相关介绍,这里不予赘述。
[0580] 在另一些实施例中,上述第一种应用场景或第二种应用场景的方法还可以应用于手机的多景拍摄场景。其中,手机在多景拍摄场景下,可以显示多个取景框,每个取景框可显示一个摄像头采集的预览图像。例如,手机在多景拍摄场景下,可显示图17A或图18所示的录制视频的取景界面。
[0581] 在第一种应用场景下,如图17A所示,手机可显示两个取景框,取景框1701显示前置摄像头采集的第一预览图像1702,取景框1703显示后置摄像头采集的第一预览图像1704。取景框1701中包括停止录像按钮1706和第一控件1705。取景框1702中包括停止录像按钮1707和第一控件1708。
[0582] 其中,手机可以针对取景框1701和取景框1703,分别执行上述第一种应用场景中的方法,在录制视频的过程中切换摄像头。例如,手机响应于用户对图17A所示的取景框1701中第一控件1705的第一操作,可显示图17B所示的录制视频的取景界面。
[0583] 图17B所示的录制视频的取景界面包括取景框1701和取景框1703。取景框1701中的预览图像由上述前置摄像头采集的第一预览图像1702切换为后置摄像头采集的第二预览图像1709。
[0584] 需要说明的是,手机针对取景框1701执行上述第一种应用场景中的方法,并不会影响取景框1703中视频的录制。并且,手机针对取景框1703执行上述第一种应用场景中的方法,并不会影响取景框1701中视频的录制。例如,响应于用户对图17A所示的第一控件1705的第一操作,相比于图17A所示的取景框1701,虽然图17B所示的取景框1701中的预览图像切换为后置摄像头采集的第二预览图像1709;但是,如图17B所示,取景框1702中仍显示后置摄像头采集的第一预览图像。
[0585] 其中,手机针对取景框1701和/或取景框1703在录制视频的过程中切换摄像头的具体方法,可以参考上述实施例对S501‑S505的详细介绍,这里不予赘述。
[0586] 在第二种应用场景下,如图18所示,手机可显示两个取景框,如取景框1801和取景框1802。其中,取景框1801显示前置摄像头采集的第一预览图像,取景框1802显示后置摄像头采集的第一预览图像。取景框1801中包括停止录像按钮和多个第二控件。取景框1802中包括停止录像按钮和多个第二控件。
[0587] 其中,手机可以针对取景框1801和取景框1802,分别执行上述第二种应用场景中的方法,在录制视频的过程中切换摄像头。需要说明的是,手机针对取景框1801执行上述第二种应用场景中的方法,并不会影响取景框1802中视频的录制。并且,手机针对取景框1802执行上述第二种应用场景中的方法,并不会影响取景框1801中视频的录制。
[0588] 其中,手机针对取景框1801和/或取景框1802在录制视频的过程中切换摄像头的具体方法,可以参考上述实施例对S1401‑S1405的详细介绍,这里不予赘述。
[0589] 示例性的,本申请实施例这里以手机包括摄像头1(即第一摄像头)和摄像头2(即第二摄像头)为例,结合附图4以及上述实施例所述的方法步骤,介绍本申请实施例中手机拍摄视频的方法流程。
[0590] 其中,手机进入拍照模式后,应用层410的系统相机应用411可以触发底层执行1901,默认启动手机的主摄像头1。该主摄像头1是手机的默认摄像头,如后置主摄像头。例如,系统相机应用411可以通过框架层420向硬件抽象层HAL 430发送携带摄像头1的相机标识Camera ID‑1的通知,该通知用于指示硬件抽象层HAL 430执行1902,根据Camera ID‑1启动摄像头1的视频流1。其中,硬件抽象层HAL 430可以指示内核层(Kernel)启动相机标识为Camera ID‑1的摄像头1,从而便可以从内核层(Kernel)440得到该摄像头1的视频流1。内核层(Kernel)440的相机驱动441可以根据Camera ID‑1启动Camera器件442中的摄像头1。
[0591] 其中,内核层(Kernel)440的Camera器件442采集视频流的原理为:Camera器件442可以将取景环境中反射的光信号转换为电信号,并由图像信号处理器ISP 443对该电信号进行处理得到视频流。
[0592] 然后,硬件抽象层HAL 430可以对来自底层(如内核层440)的数据(如视频流1)进行处理,然后再传输给框架层420。例如,HAL层430可以将内核层440的关于硬件设备的参数转换为框架层420和应用层410可识别的软件程序语言。
[0593] 框架层420可以接收硬件抽象层HAL 430传输的来自底层(如内核层440)的视频流1。框架层420的相机服务423可以通过API 1|API 2接口421向上层(如应用层410)传输该视频流1。应用层410的系统相机应用411接收到该视频流1后,可以在取景界面呈现该视频流
1,如执行1907在SurfaceView刷新该视频流1。
[0594] 之后,手机可执行1904进入录像模式,然后开始录制视频。例如,手机可执行S901显示包括开始录制按钮的第四界面,然后执行S902响应于用户对开始录制按钮的点击操作,显示包括预设功能开关(即用于开启/关闭预设功能的开关)的第五界面并开始录制视频。此时,摄像头1作为手机的预览摄像头。
[0595] 然后,手机可执行1905由用户动态选择切换摄像头(即开启预设功能)。例如,手机可执行S903接收用户对预设功能开关的第三操作,即用于开启预设功能的操作。手机执行1905开启预设功能后,应用层410便可以向硬件抽象层HAL 430发送通知,以指示硬件抽象层HAL430执行1903,根据Camera ID‑2启动摄像头2(即闲置摄像头)的视频流。此时,手机的摄像头1和摄像头2均启动。
[0596] 之后,手机可以执行1906,手机的取景界面便可以出现摄像头切换图标(即第一控件)。例如,手机可执行S904响应于用户对预设功能开关的第三操作,显示包括第一控件的第一界面。在1906中用户点击摄像头切换图标后,应用层410便可以执行1907刷新SurfaceView中的视频流,如将SurfaceView中的视频流由视频流1切换为视频流2。此时,摄像头2作为手机的预览摄像头。
[0597] 其中,如图19所示,应用层410可以接收来自底层的两路视频流,如视频流1和视频流2。应用层410可以执行1908实时刷新SurfaceView中的视频流。其中,SurfaceView中实时显示手机的预览摄像头采集的视频流。
[0598] 由于SurfaceView中实时显示手机的预览摄像头采集的视频流;因此,框架层420的视频处理模块422实时从SurfaceView获取并缓存视频流,便可以缓存呈现在手机录制视频的取景界面的所有视频流。从而,响应于用户结束录制视频1910的操作,视频处理模块422便可以执行1911即时生成并生成视频文件,该视频文件包括视频处理模块422缓存的视频流。
[0599] 进一步的,在手机执行1906之前,手机开启预设功能后,手机可再次执行1905由用户动态选择切换摄像头,可关闭预设功能。手机执行1905关闭预设功能后,应用层410便可以向硬件抽象层HAL 430发送通知,以指示硬件抽象层HAL 430执行1909,根据Camera ID‑2关闭摄像头2(即闲置摄像头)的视频流。
[0600] 本申请另一些实施例提供了一种电子设备,该电子设备可以包括:上述显示屏(如触摸屏)、存储器和一个或多个处理器。该显示屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中手机执行的各个功能或者步骤。该电子设备的结构可以参考图2所示的电子设备200的结构。
[0601] 本申请实施例还提供一种芯片系统,如图20所示,该芯片系统2000包括至少一个处理器2001和至少一个接口电路2002。处理器2001和接口电路2002可通过线路互联。例如,接口电路2002可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路2002可用于向其它装置(例如处理器2001)发送信号。示例性的,接口电路2002可读取存储器中存储的指令,并将该指令发送给处理器2001。当所述指令被处理器2001执行时,可使得电子设备执行本申请任一实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
[0602] 本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行本申请任一方法实施例中手机执行的各个功能或者步骤。
[0603] 本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本申请任一方法实施例中手机执行的各个功能或者步骤。
[0604] 以下实施例中的方法均可以在具有上述硬件结构的电子设备200中实现。
[0605] 其中,电子设备200的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备200的软件结构。
[0606] 图21是本申请实施例提供的电子设备200的软件结构框图。分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层(简称应用层)2110,应用程序框架层(简称框架层)2120,硬件抽象层(hardware abstract layer,HAL)层2130,以及内核层(Kernel,也称为驱动层)2140。
[0607] 其中,应用层(Application)2110可以包括一系列应用程序包。该应用层可以包括多个应用程序包。该多个应用程序包可以为相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息以及桌面启动(Launcher)等应用程序。例如,如图21所示,该应用层2110可以包括相机系统应用(也称为相机应用)2111。
[0608] 如图21所示,相机系统应用2111可以用于在录制视频模式(即录像模式)下,在录制视频的取景界面展示底层上报的视频流。其中,电子设备200可以包括多个摄像头,每个摄像头都可以用于采集图像,摄像头采集的连续多帧图像可组成视频流。也就是说,上述每个摄像头都可以用于采集视频流。
[0609] 例如,假设电子设备200包括前置摄像头和后置摄像头;图21所示的视频流1可以是前置摄像头采集的视频流,称为前置视频流;图21所示的视频流2可以是后置摄像头采集的视频流,称为后置视频流。虽然电子设备200的多个摄像头都可以采集视频流;但是,一般而言,只会有一个摄像头采集的视频流展示在录制视频的取景界面。其中,在录制视频的取景界面展示的视频流可以称为预览视频流。采集该预览视频流的摄像头可以称为预览摄像头。通过相机系统应用2111展示的预览视频流,用户可以实时查看当前视频流的取景情况。该预览视频流可以是上述视频流1或者视频流2。
[0610] 本申请实施例中,用户可以根据自己的需要,动态切换摄像头。例如,如图21所示,相机系统应用2111还用于提供如下功能:在录制视频模式(即录像模式)下,相机系统应用2111启动拍摄(即手机开始录制视频)后,响应于用户的暂停操作,可以暂停拍摄(即暂停拍摄视频)。其中,启动拍摄后,电子设备正在录制视频的取景界面可以包括一个暂停录制按钮,上述暂停操作可以是用户对该暂停录制按钮的点击操作。响应于用户的暂停操作,相机系统应用2111暂停拍摄后,录制视频的取景界面可以出现切换摄像头图标(即第一控件)。
该切换摄像头图标用于触发手机切换摄像头。响应于用户对该切换摄像头图标(即第一控件)的点击操作,相机系统应用2111可以切换预览摄像头,以刷新视频流(即刷新预览视频流)。例如,当预览摄像头是前置摄像头时,预览视频流是视频流1。响应于用户对该切换摄像头图标的点击操作,相机系统应用2111可以将预览摄像头切换为后置摄像头,预览视频流刷新为视频流2。
[0611] 其中,每个摄像头的相机标识(Camera ID)不同。应用层2110可以通过摄像头的Camera ID指示底层(如内核层2140)启动对应的摄像头,并根据预览摄像头的Camera ID指示底层(如框架层2120)处理该预览摄像头采集的预览视频流。应用层2110还可以根据用户的操作,通过摄像头的Camera ID指示底层(如内核层2140)关闭对应的摄像头。
[0612] 进一步的,在录制视频模式下,如果用户再次点击上述暂停录制按钮,可以关闭切换摄像头(即关闭录制视频过程中切换摄像头的功能),相机系统应用2111则不会在录制视频的取景界面显示切换摄像头图标(即第一控件)。并且,相机系统应用2111还可以指示底层关闭闲置视频流。其中,闲置视频流包括电子设备的多个摄像头采集的视频流中除预览视频流之外的其他视频流。相机系统应用2111可以通过关闭闲置摄像头的方式,关闭闲置视频流。该闲置摄像头包括电子设备的多个摄像头中除预览摄像头之外的其他摄像头。其中,关闭闲置摄像头可以降低电子设备的功耗。
[0613] 框架层(Framework)2120为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图21所示,框架层可以提供相机API,如Camera API(API 1|API 2)2121、视频处理(Media Recorder)模块2122、相机服务(Camera Service)2123、相机拓展服务
(Camera Service Extra)2125和硬件开发工具包(hardware software development kit,Hw SDK)2124。
[0614] 其中,Camera API(API 1|API 2)2121作为底层(如硬件抽象层2130)与应用层2110交互的接口。具体的,Camera API(API 1|API 2)2121可以接收来自上层(如应用层
2110)的开启录制视频过程中切换摄像头的功能的通知,并通过相机服务2123、相机拓展服务2125和HwSDK 2124处理该开启录制视频过程中切换摄像头的功能的通知。然后,通过HAL层2130指示内核层2140开启闲置摄像头,并通过HAL层2130获得预览摄像头和闲置摄像头采集的视频流。Camera API(API 1|API 2)2121还可以接收来自上层(如应用层2110)摄像头切换通知。该摄像头切换通知包括待切换为预览摄像头的Camera ID。
[0615] 一般情况下,应用层2110与用户交互,触发电子设备200开始录制视频后,Media Recorder模块2122可以将呈现给用户的Surface view的预览视频流实时录制并做好随时生成视频文件的准备。
[0616] 本申请实施例中,当应用层2110与用户交互,触发电子设备200切换预览摄像头时,应用层2110可以实时刷新Surface view,如将Surface view更新后切换后的预览摄像头采集的视频流。此时,Media Recorder模块2122不需要做任何操作(如不需要生成视频文件),只要去Surface view获取视频流即可。这样一来,电子设备200切换摄像头对Media Recorder模块2122无感知,当应用层2110与用户交互触发电子设备200停止录制视频后,即使录制视频过程中切换了摄像头,也可以生成一个完整的视频文件。该完整的视频文件包括切换前后的多个摄像头采集的预览视频流。
[0617] HAL层2130用于连接框架层2120和内核层2140。例如,HAL层2130可以在框架层2120和内核层2140之间进行数据透传。当然,HAL层2130也可以对来自底层(即内核层2140)的数据进行处理,然后再传输给框架层2120。例如,HAL层2130可以将内核层2140的关于硬件设备的参数转换为框架层2120和应用层2110可识别的软件程序语言。例如,HAL层2130可以包括HAL3.0。
[0618] 本申请实施例中,HAL层2130可根据来自上层(如框架层2120和应用层2110)的通知管理多个摄像头采集的视频流,如根据上次的通知指示底层(如内核层2140)关闭/开启摄像头的视频流。
[0619] 内核层2140包括相机驱动2141、图像信号处理器ISP 2143和Camera器件2142。该Camera器件2142可以包括多个摄像头,每个摄像头包括相机镜头和图像传感器器等。其中,上述图像信号处理器ISP 2143可以与摄像头(如Camera器件2142)单独设置。在另一些实施例中,上述图像信号处理器ISP 2143可以设置在摄像头(如Camera器件2142)中。
[0620] 其中,图像信号处理器ISP 2143和Camera器件2142是拍摄视频或图片的主要设备。取景环境反射的光信号经过相机镜头照射在图像传感器上可转换为电信号,该电信号经过图像信号处理器ISP 2143的处理,可作为原始参数流(即视频流),由相机驱动2141向上层传输。并且,相机驱动2141还可以接收来自上层的通知(如指示开启或关闭摄像头的通知),根据该通知向Camera器件2142发送功能处理参数流,以开启或关闭对应的摄像头。
[0621] 以下实施例中以上述电子设备200是手机为例,对本申请实施例的方法进行说明。
[0622] 本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的手机。在第一种应用场景中,该多个摄像头包括第一摄像头和第二摄像头。该第一摄像头是手机的后置摄像头,第二摄像头是手机的前置摄像头;或者,该第一摄像头是手机的前置摄像头,第二摄像头是手机的后置摄像头。在这种应用场景中,采用本申请实施例的方法,手机可以在录制视频的过程中,切换使用手机的前置摄像头和后置摄像头。示例性的,如图22所示,该拍摄视频的方法可以包括S2201‑S2207。
[0623] S2201、手机显示第一界面。该第一界面是手机正在录制视频的取景界面。该第一界面包括多个摄像头中第一摄像头采集的第一预览图像。
[0624] 示例性的,手机可显示图23A所示的第一界面2301。其中,该第一界面2301包括停止录制按钮2303,该第一界面2301中计时选项2307的计时时长为00:00:08。在手机正在录制视频的情况下,手机录制视频的取景界面中才会包括停止录制按钮,该手机录制视频的取景界面中计时选项才会计时。由此可见,该第一界面2301是手机正在录制视频的取景界面。
[0625] 并且,该第一界面2301的取景框中显示有第一摄像头(如手机的后置摄像头)采集的第一预览图像2302。该第一界面2301还包括暂停录制按钮2304。该暂停录制按钮2304用于触发手机暂停录制视频。
[0626] 其中,手机显示第一界面录制视频的过程中,可以缓存显示在第一界面的第一预览图像。这样,手机响应于用户对停止录制按钮的点击操作,便可以生成包括多帧第一预览图像的视频文件。
[0627] S2202、手机接收用户在第一界面的第一操作。该第一操作用于触发手机暂停录制视频。
[0628] 在一种实现方式中,上述第一界面可以包括暂停录制按钮。该第一操作可以是用户对第一界面中暂停录制按钮的点击操作。例如,如图23A所示,第一界面2301包括暂停录制按钮2304。该第一操作可以是用户对暂停录制按钮2304的点击操作。用户点击图23A所示的暂停录制按钮2304,用于触发手机暂停录制视频。
[0629] 在另一种实现方式中,上述第一操作还可以是用户在上述第一界面输入的预设手势,如S形手势或者√手势等。该预设手势可以预先配置在手机中。并且,手机可以在录像的取景界面向用户提示该预设手势,以及该预设手势所触发的功能(即录制视频过程中切换摄像头的功能)。
[0630] S2203、响应于上述第一操作,手机显示第二界面。该第二界面是手机暂停录制视频的取景界面,该第二界面包括第一摄像头采集的第二预览图像,还包括第一控件。
[0631] 例如,响应于用户对图23A所示的暂停录制按钮2304的第一操作,手机可以显示图23B所示的第二界面2307。该第二界面2307是手机暂停录制视频的取景界面。例如,相比于图23A所示的第一界面2301中计时选项2306的计时时长,该第二界面2307中计时选项2306的计时时长并未发生变化,均为00:00:08。也就是说,在第二界面2307,手机已经暂停录制视频。
[0632] 但是,该第二界面2307的取景框可以显示第一摄像头采集的第二预览图像2308。不同的是,在手机暂停录制视频的过程中,手机不会缓存上述第二预览图像。这样,手机响应于用户对停止录制按钮的点击操作,所生成的视频文件则不会包括该第二预览图像。
[0633] 应注意,上述第二界面还包括第一控件。该第一控件用于触发手机使用多个摄像头中的第二摄像头。例如,图23B所示的第二界面2307包括第一控件2310。在上述第一摄像头是后置摄像头的情况下,该第一控件2310可用于触发手机使用前置摄像头(即第二摄像头)。例如,在该实施例中,第一控件可以是摄像头切换选项。
[0634] 需要说明的是,上述暂停录制按钮2304与停止录制按钮2303不同。响应于用户对该停止录制按钮2303的点击操作,手机可以停止录制视频,生成视频文件。例如,响应于用户对图1C所示的停止录制按钮113的点击操作,手机可以停止录制视频,生成图1D所示的相册选项117对应的视频文件。即手机中最新生成的照片/视频文件,由图1C所示的相册选项107对应的照片变为图1D所示的相册选项117对应的视频文件。
[0635] 但是,响应于用户对图23A所示的暂停录制按钮2304的点击操作,手机可以暂停录制视频,但并不会生成视频文件。例如,响应于用户对图23A所示的暂停录制按钮2304的点击操作,如图23B所示,手机所显示的第二界面2307中相册选项2305对应的照片与图23A所示的2307中相册选项2305对应的照片相同。也就是说,响应于用户对图23A所示的暂停录制按钮2304的点击操作,手机未生成视频文件。其中,手机响应于用户对暂停录制按钮2304的点击操作,不生成视频文件的原理,可以参考以下实施例对图24D的详细介绍,本申请实施例这里不予赘述。
[0636] 需要说明的是,本申请实施例中,手机暂停录制视频并不表示手机的取景界面的预览图像不会更新。手机还是会显示第一摄像头实时采集的预览图像(如第二预览图像)。但是,手机暂停录制视频后,虽然手机的取景界面还是会显示第一摄像头实时采集的第二预览图像;但手机不会再缓存显示在取景界面的第二预览图像。
[0637] S2204、手机接收用户对第二界面中的第一控件的点击操作。
[0638] S2205、响应于用户对第一控件的点击操作,手机将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像,继续录制视频。
[0639] 例如,手机响应于用户对图23B所示的第一控件2310的点击操作,手机可显示图23C所示的手机正在录制视频的取景界面(即第二界面)2312。
[0640] 其中,响应于用户对图23B所示的第一控件2310的点击操作,手机暂停录制视频的取景界面(即第二界面)中的预览图像,由图23B所示的第二预览图像2308切换为图23C所示的第三预览图像2313,并且手机可以继续录制视频。例如,图23C所示的手机正在录制视频的取景界面2312中,计时选项2311开始计时,其计时时长由图23B所示的00:00:08变为图23C所示的00:00:09。其中,第二预览图像2308和第三预览图像2313是不同摄像头采集的图像,因此,如图23B和图23C所示,第二预览图像2308和第三预览图像2313不同。
[0641] 在另一些实施例中,手机响应于用户对第一控件的点击操作,可以将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像;但是,并不会继续录制视频。而是在接收到用户在第二界面的第二操作后,才会继续录制视频。具体的,如图23D所示,S2205可以包括S2205a‑S2205c。
[0642] S2205a、响应于用户对第一控件的点击操作,手机将第二界面中的第二预览图像切换为第二摄像头采集的第四预览图像。
[0643] 例如,响应于用户对图23B所示的第一控件2310的点击操作,手机可显示图23E所示的第二界面2314。其中,响应于用户对图23B所示的第一控件2310的点击操作,手机暂停录制视频的取景界面(即第二界面)中的预览图像,由图23B所示的第二预览图像2308切换为图23E所示的第四预览图像2315。与上述实施例的方案不同的是,响应于用户对第一控件的点击操作,手机并未继续录制视频。例如,例如,相比于图23B所示的第二界面2308中计时选项2306的计时时长,该第二界面2314中计时选项2306的计时时长并未发生变化,均为00:00:08。
[0644] S2205b、手机接收用户在第二界面的第二操作,该第二操作用于触发手机继续录制视频。
[0645] 例如,该第二界面中包括暂停录制按钮。该第二操作可以是用户对第二界面中暂停录制按钮的点击操作。
[0646] S2205c、响应于上述第二操作,手机在第二界面显示第二摄像头采集的第三预览图像,并继续录制视频。
[0647] 例如,响应于用户对图23E所示的第二界面2314中暂停录制按钮2309的第二操作,手机可显示图23C所示的手机正在录制视频的取景界面2312。该取景界面2312中包括第二摄像头采集的第三预览图像2313。
[0648] 其中,图23C所示的手机正在录制视频的取景界面2312的详细描述可以参考上述实施例中的相关介绍,这里不予赘述。
[0649] 应理解,本申请实施例中,手机执行S2205a,响应于用户对第一控件的点击操作,可以先显示将第二界面中第一摄像头采集的第二预览图像切换为第二摄像头采集的第四预览图像,即进行摄像头的切换。但是,此时手机并未开始录制视频。也就是说,手机不会缓存第二摄像头采集的第四预览图像。如此,则可以给用户留出一段时间来观察和调整第二摄像头的拍摄视角,以及调整拍摄对象的姿态(即摆拍)。当用户调整好拍摄视角和姿态后,便可以对第二界面中暂停录制按钮输入第二操作。手机执行S2205b‑S2205c,可以在第二界面显示第二摄像头采集的第三预览图像,并继续录制视频。也就是说,手机可以缓存第二摄像头采集的第三预览图像。
[0650] 其中,本申请实施例中的暂停录制按钮可以包括两种状态,如第一状态和第二状态。该第一状态用于指示手机正在录制视频,该第二状态用于指示手机暂停录制视频。例如,如图23A或图23C所示,手机显示处于第一状态的暂停录制按钮2304;此时,手机正在录制视频。又例如,如图23B或图23E所示,手机显示处于第二状态的暂停录制按钮2309;此时,手机暂停录制视频。
[0651] 需要说明的是,本申请实施例中,手机继续录制视频,表示手机可以实时缓存第二摄像头实时采集的、并显示在手机的取景界面的第三预览图像。其中,上述第三预览图像和第四预览图像都是手机切换摄像头后,第二摄像头采集的、并显示在手机的取景界面中的预览图像。但是,手机不会缓存第四预览图像,只缓存第三预览图像。
[0652] 在一些实施例中,手机执行S2202之后,响应于用户对暂停录制按钮的第一操作,便可以启动第二摄像头。如此,在手机执行S2202“接收用户对暂停录制按钮的第一操作”到手机执行S2204“接收用户对第二界面中第一控件的点击操作”这段时间,手机便可以完成第二摄像头的启动流程,第二摄像头便可以采集图像。
[0653] 因此,在执行S2204接收到用户对第二界面中第一控件的点击操作后,该手机响应于用户对第一控件的点击操作,便可以直接将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像。而不是响应于用户对第一控件的点击操作,才启动第二摄像头。这样,可以实现第二界面中第二预览图像与第三预览图像或第四预览图像的无缝切换,可以提升用户拍摄视频过程中的视觉体验。
[0654] 需要注意的是,虽然手机响应于用户对暂停录制按钮的第一操作,启动了第二摄像头,该第二摄像头可以采集图像;但是,此时手机并不会显示第二摄像头采集的图像。此时,第一摄像头作为手机的预览摄像头,手机显示的仍是第一摄像头采集的第二预览图像。在手机接收到用户对第一控件的点击操作后,响应于用户对第一控件的点击操作,第二摄像头才可以作为手机的预览摄像头,手机才会显示第二摄像头采集的第四预览图像或第三预览图像。
[0655] 例如,手机执行S2201的过程中,如图24B所示,第一摄像头作为预览摄像头提供视频流1,SurfaceView显示视频流1(即包括多帧第一预览图像的第一视频流)。此时,第二摄像头并未启动,第二摄像头不采集图像。手机执行S2202‑S2203,可暂停拍摄(即暂停录制视频)。其中,手机暂停拍摄时,可启动第二摄像头。此时,该第二摄像头可采集图像。但是,暂停录制视频的过程中,第一摄像头仍作为预览摄像头,SurfaceView显示第一摄像头采集的多帧第二预览图像,并不显示第二摄像头采集的图像。手机执行S2205,将预览摄像头由第一摄像头切换为第二摄像头后,如图24B所示,第二摄像头作为预览摄像头,SurfaceView显示视频流2(即包括多帧第三预览图像的第二视频流)。
[0656] 在一些实施例中,为了降低手机的功耗,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第二界面中的第一控件的点击操作,才启动第二摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[0657] 在另一些实施例中,手机将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像或第四预览图像之后,便可以关闭第一摄像头。这样,可以减少手机的功耗。
[0658] 需要注意的是,手机在执行S2201的过程中,可以缓存包括上述多帧第一预览图像的视频流。但是,响应于用户对暂停录制按钮的第一操作,手机并不会停止录制视频,手机也不会生成包括由多帧第一预览图像组成的视频流的视频文件。而是暂停录制视频,直至接收到用户对第二界面中第一控件的点击操作或用户对上述暂停录制按钮的第二操作,才会开始缓存包括多帧第三预览图像的视频流。之后,手机响应于用户对停止录制按钮的点击操作,才会停止录制视频,生成第一视频文件。其中,手机响应于用户对停止录制按钮的点击操作生成第一视频文件,以及第一视频文件的详细描述,可以参考以下实施例中的内容,这里不予赘述。
[0659] S2206、手机接收用户对第二界面中停止录制按钮的点击操作。
[0660] 其中,上述第二界面(即手机正在录制视频的取景界面)可以包括停止录制按钮。例如,图23B所示的录制视频的取景界面2307、图23C所示的录制视频的取景界面2312和图
23E所示的录制视频的取景界面2314均包括停止录制按钮2303。手机可以在录制视频的过程中,随时接收用户对录制视频的取景界面中停止录制按钮2303的点击操作,响应于用户对该停止录制按钮2303的点击操作,手机可停止录制视频,生成录制的视频文件。
[0661] 应理解,在手机录制视频的过程中,手机录制视频的取景界面中计时选项的计时时长可以随着时间的推移而发生变化。例如,图23A、图23B和图23E所示的计时选项2306的计时时长为00:00:08,随着时间的推移,图23C所示的计时选项2311的计时时长为00:00:09,图24A所示的计时选项2402的计时时长为00:00:18。
[0662] 示例性的,假设手机在录制视频的时长为00:00:18时,接收到用户的第二操作。例如,如图24A所示,当计时选项2402的计时时长为00:00:18时,手机接收到用户对第二界面2401中停止录制按钮2303的点击操作。
[0663] S2207、响应于用户对停止录制按钮的点击操作,手机停止录制视频,生成第一视频文件。该第一视频文件包括第一视频流和第二视频流,该第一视频流包括多帧第一预览图像,第二视频流包括多帧第三预览图像。
[0664] 例如,响应于用户对图24A所示的停止录制按钮2303的第二操作,手机可以停止录制视频,生成图24C所示的第一视频文件。如图24C所示,该第一视频文件包括:第一视频流和第二视频流。该第一视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第一预览图像。上述第二视频流包括上述第二摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第三预览图像。
[0665] 需要说明的是,在手机执行S2201的过程中,第一摄像头作为手机的预览摄像头,第一摄像头所采集的图像(即第一预览图像)被显示在手机录制视频的取景界面中。例如,如图24D所示,手机开始拍摄(即录制视频)后,暂停拍摄(即暂停录制视频)之前,SurfaceView中显示包括多帧第一预览图像的第一视频流。
[0666] 在手机执行S2202‑S2204的过程中,第一摄像头仍作为手机的预览摄像头,第一摄像头所采集的图像(即第二预览图像)被显示在手机录制视频的取景界面中。例如,如图24D所示,手机暂停拍摄(即暂停录制视频)之后,继续拍摄(即继续拍摄视频)之前,SurfaceView中显示包括多帧第二预览图像的视频流。
[0667] 在手机执行S2205‑S2207的过程中,第二摄像头作为手机的预览摄像头,第二摄像头所采集的图像(即第三预览图像)被显示在手机录制视频的取景界面中。例如,如图24D所示,手机继续拍摄(即继续录制视频)之后,SurfaceView中显示包括多帧第三预览图像的第二视频流。
[0668] 应理解,手机所生成的视频文件包括:手机录制视频的过程中,显示在手机录制视频的取景界面中的预览图像(如多帧第一预览图像和多帧第三预览图像);但不包括手机暂停录制视频过程中,显示在手机录制视频的取景界面中的预览图像(如多帧第二预览图像)。
[0669] 例如,假设手机从00:00:00录制视频开始到00:00:08都是第一摄像头作为预览摄像头,未切换过摄像头。由图23A‑图23C可知:在00:00:00‑00:00:08这段时间,第一摄像头作为预览摄像头;在00:00:09‑00:00:18这段时间,第二摄像头作为预览摄像头。因此,如图24C所示,手机执行S2207生成的第一视频文件可以包括:00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流;以及00:00:09‑00:00:18这段时间,第二摄像头采集的第二视频流。
[0670] 其中,在00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流可以包括:00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在手机的显示屏上的多帧第一预览图像。00:00:09‑00:00:18这段时间,第二摄像头采集的第二视频流可以包括:00:00:09‑
00:00:18这段时间,由第二摄像头采集并显示在手机的显示屏上的多帧第三预览图像。
[0671] 本申请实施例这里结合图21和图24D,说明本申请实施例中手机执行S2207生成第一视频文件的原理。
[0672] 例如,如图24D所示,手机继续拍摄(即继续录制视频)之后,SurfaceView中显示包括多帧第三预览图像的第二视频流。
[0673] 应理解,手机录制视频过程中,SurfaceView中显示的预览视频流是用户想要拍摄并生成的视频流。因此,如图24D所示,手机开始拍摄(即录制视频)后,暂停拍摄(即暂停录制视频)之前,视频处理(Media Recorder)模块2122可以从SurfaceView获取并缓存第一视频流。
[0674] 但是,手机暂停拍摄(即录制视频)的过程中,SurfaceView中显示的预览视频流并不是用户想要拍摄的视频流。因此,如图24D所示,手机暂停拍摄(即暂停录制视频)之后,继续拍摄(即继续拍摄视频)之前,视频处理(Media Recorder)模块2122不会从SurfaceView获取视频流,进而不会缓存包括多帧第二预览图像的视频流。
[0675] 手机继续拍摄(即录制视频)后,SurfaceView中显示的预览视频流是用户想要拍摄的视频流。因此,如图24D所示,手机继续拍摄(即继续录制视频)之后,视频处理(Media Recorder)模块2122不会从SurfaceView获取并缓存第二视频流。
[0676] 如此,响应于用户对停止录制按钮的点击操作,视频处理(Media Recorder)模块2122便可以生成包括缓存的第一视频流和第二视频流的第一视频文件。
[0677] 需要说明的是,手机执行S2207生成的视频文件(如图24C所示的第一视频文件)是一个完整的视频文件。通过本申请实施例的方法,手机结束录制视频后,可以生成一个完整的第一视频文件。也就是说,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。
[0678] 采用本申请实施例的方法,可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合,响应于用户对停止录制按钮的点击操作,可以实时生成上述多视角的视频文件,供用户随时查看。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0679] 进一步的,采用本申请实施例的方法,并不会限制手机录制视频的时长。也就是说,手机执行本申请实施例的方法,可以根据用户的需求录制任意时长的视频文件。
[0680] 在另一些实施例中,手机执行S2202‑S2203暂停录制视频之后,可能并不会执行S2204‑S2205切换摄像头。例如,手机执行S2202‑S2203暂停录制视频之后,用户可能只是想要在手机暂停录制视频的过程中,调整摄像头的拍摄视角和拍摄对象的姿态(即摆拍)。当用户调整好姿态后,便可以对第二界面中暂停录制按钮输入第二操作。在该实施例中,在S2202‑S2203之后,本申请实施例的方法还包括S2208‑S2211。S2208:手机接收用户对第二界面中暂停录制按钮的第二操作,该第二操作用于触发手机继续录制视频。S2209:响应于该第二操作,手机在第二界面显示第一摄像头采集的第七预览图像,并继续录制视频。S2210:手机接收用户对第二界面中停止录制按钮的点击操作。S2211:响应于用户对停止录制按钮的点击操作,手机停止录制视频,生成第三视频文件。该第三视频文件包括第一视频流和第四视频流,该第一视频流包括多帧第一预览图像,第四视频流包括多帧第七预览图像。
[0681] 在该实施例中,手机暂停录制视频,可以给用户留出一段时间来调整摄像头的拍摄视角和拍摄对象的姿态(即摆拍)。当用户调整好姿态后,便可以对第二界面中暂停录制按钮输入第二操作,继续录制视频。这样,可以提升手机录制视频的拍摄效果,提升用户的拍摄满意度。
[0682] 在另一些实施例中,手机在一次拍摄视频的过程中,可能会至少两次切换摄像头。例如,假设手机在录制视频的时长为00:00:18时,并未接收到用户对停止拍摄按钮的点击操作,而是在手机在录制视频的时长为00:01:09时,又一次接收到用户对暂停拍摄按钮的点击操作。例如,随着时间的推移,手机可显示图25A所示的录制视频的取景界面2501,该录制视频的取景界面2501中计时选项2503的计时时长为00:01:09。该录制视频的取景界面
2501的取景框中包括第三预览图像2502。
[0683] 手机可以接收到用户对图25A所示的暂停录制按钮2304的第一操作。图25A所示的暂停录制按钮2304处于第一状态。响应于用户对图25A所示的暂停录制按钮2304的第一操作,手机可显示图25B所示的第七界面2504。该第七界面2504是暂停录制视频的取景界面,该第七界面2504的取景框显示有第二摄像头采集的第五预览图像2505。该第七界面包括处于第二状态的暂停录制按钮2309。该第七界面还包括第一控件2310。
[0684] 手机可以接收到用户对图25B所示的第一控件(也称为切换摄像头的图标)2310的点击操作。响应于用户对图25B所示的第一控件2310的点击操作,如图25C所示,手机可将第七界面2504中的第五预览图像2505切换为第一摄像头采集的第六预览图像2507。例如,手机可显示图25C所示的手机正在录制视频的取景界面(即第七界面)2506。该录制视频的取景界面2506的取景框包括第六预览图像2507。其中,第六预览图像2507和第五预览图像2505是不同摄像头采集的图像;因此,如图25C和图25B所示,第六预览图像2507和第五预览图像2505不同。其中,上述第一预览图像2302、第二预览图像2308和第六预览图像2507均为第一摄像头采集的图像。例如,对比图25C和图23A可知,第六预览图像2507与第一预览图像
2302大致相同。
[0685] 在手机录制视频的过程中,手机录制视频的取景界面中计时选项的计时时长可以随着时间的推移而发生变化。例如,图25A所示的计时选项2503的计时时长为00:01:09,随着时间的推移,图25C所示的计时选项2508的计时时长为00:01:10,图25D所示的计时选项2511的计时时长为00:01:20。图25D的取景界面2509包括预览图像2510。
[0686] 假设手机在录制视频的时长为00:01:20时,接收到用户的第二操作。例如,如图25D所示,当计时选项2511的计时时长为00:01:20时,手机接收到用户对图25D所示的停止录制按钮2303的点击操作。响应于用户对图25C所示的停止录制按钮2303的点击操作,手机可以停止录制视频,生成图26所示的第二视频文件。如图26所示,该第二视频文件包括:第一视频流、第二视频流和第三视频流。该第一视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第一预览图像。该第二视频流包括上述第二摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第三预览图像。该第三视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第六预览图像。
[0687] 应理解,响应于用户对图25D所示的停止录制按钮2303的点击操作,手机所生成的第二视频文件包括手机录制视频的过程中,显示在手机录制视频的取景界面中的所有预览图像。
[0688] 例如,假设手机从00:00:00录制视频开始到00:00:08都是第一摄像头作为预览摄像头,未切换过摄像头。由上述描述结合图23A‑图23C和图25C‑图25D可知:在00:00:00‑00:00:08这段时间,第一摄像头作为预览摄像头;在00:00:09‑00:01:09这段时间,第二摄像头作为预览摄像头;在00:01:10‑00:01:20这段时间,第一摄像头作为预览摄像头。因此,如图
26所示,响应于用户对图25D所示的停止录制按钮2303的点击操作,手机生成的第二视频文件可以包括:00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流;00:00:09‑00:
01:09这段时间,第二摄像头采集的第二视频流;以及,00:01:10‑00:01:20这段时间,第一摄像头采集的第三视频流。
[0689] 其中,在00:00:00‑00:00:08这段时间,第一摄像头采集的第一视频流可以包括:00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在手机的显示屏上的多帧第一预览图像。00:00:09‑00:01:09这段时间,第二摄像头采集的第二视频流可以包括:00:00:09‑
00:01:09这段时间,由第二摄像头采集并显示在手机的显示屏上的多帧第三预览图像。00:
01:10‑00:01:20这段时间,第一摄像头采集的第三视频流可以包括:00:01:10‑00:01:20这段时间,由第一摄像头采集并显示在手机的显示屏上的多帧第六预览图像。
[0690] 需要说明的是,手机生成的第二视频文件(如图26所示的第二视频文件)是一个完整的视频文件。通过本申请实施例的方法,手机结束录制视频后,可以生成一个完整的视频文件。也就是说,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0691] 在一些实施例中,手机响应于用户对第二界面中暂停录制按钮的第一操作,便可以启动第一摄像头。如此,在手机“接收用户对暂停录制按钮的第一操作”到手机“接收用户对第七界面中第一控件的点击操作”这段时间,手机便可以完成第一摄像头的启动流程,第一摄像头便可以采集图像。
[0692] 因此,在手机接收到用户对第七界面中第一控件的点击操作后,该手机响应于用户对第一控件的点击操作,便可以直接将第七界面中的第五预览图像切换为第一摄像头采集的第六预览图像。而不是响应于用户对第一控件的点击操作,才启动第一摄像头。这样,可以实现第七界面中第五预览图像与第六预览图像的无缝切换,可以提升用户拍摄视频过程中的视觉体验。
[0693] 当然,在另一些实施例中,为了降低手机的功耗,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第七界面中第一控件的点击操作,才启动第一摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[0694] 需要注意的是,虽然手机响应于用户对第二界面中暂停录制按钮的第一操作,启动了第一摄像头,该第一摄像头可以采集图像;但是,此时手机并不会显示第一摄像头采集的图像。此时,第二摄像头作为手机的预览摄像头,手机显示的仍是第二摄像头采集的第五预览图像。在手机接收到用户对第一控件的点击操作后,响应于用户对第一控件的点击操作,第一摄像头才可以作为手机的预览摄像头,手机才会显示第一摄像头采集的第六预览图像。
[0695] 并且,手机将第七界面中的第五预览图像切换为第一摄像头采集的第六预览图像之后,便可以关闭第二摄像头。这样,可以减少手机的功耗。
[0696] 在一些实施例中,手机开始录制视频后,如果手机的预设功能已开启,手机则可以显示包括上述暂停录制按钮的第一界面。如果手机的预设功能还未开启,手机所显示的录制视频的取景界面则不包括上述暂停录制按钮。
[0697] 具体的,如图27所示,在上述S2201之前,本申请实施例的方法还可以包括S2701。如图27所示,图22所示的S2201可以包括S2702。
[0698] S2701、手机显示第四界面。该第四界面是手机录制视频的取景界面。该第四界面包括开始录制按钮。该开始录制按钮用于触发手机开始录制视频。
[0699] 其中,虽然第四界面与上述第一界面都是手机录制视频的取景界面;但是,上述第一界面是手机正在录制视频的取景界面,即手机已经开始录制视频的取景界面;而第四界面则是手机还未开始录制视频的取景界面。例如,第一界面包括停止录制按钮,而该第四界面包括开始录制按钮。
[0700] 应理解,手机显示第四界面时,该手机已经进入录像模式(即录制视频模式)。在录像模式下,只要手机接收到用户对开始录制按钮的点击操作,该手机便可以开始录制视频。例如,手机可显示图1B所示的第四界面104,该第四界面104是手机录制视频的取景界面。该第四界面104包括开始录制按钮108。
[0701] S2702、响应于用户对第四界面中开始录制按钮的点击操作,若手机的预设功能已开启,手机显示第一界面。
[0702] 其中,上述预设功能是录制视频的过程中切换摄像头的功能。
[0703] 例如,响应于用户对图1B所示的第四界面104中开始录制按钮108的点击操作,若手机的预设功能已开启,手机可显示图28所示的第一界面2801。该第一界面2801包括暂停录制按钮2304。该第一界面2801还包括停止录制按钮和计时选项等。响应于用户对图1B所示的第四界面104中开始录制按钮108的点击操作,若手机的预设功能还未开启,手机可显示图1C所示的录制视频的取景界面110。该取景界面110不包括暂停录制按钮。
[0704] 在该实施例中,手机可以通过以下任一种实现方式,开启上述预设功能,即录制视频的过程中切换摄像头的功能。
[0705] 实现方式(1):手机响应于用户在设置界面输入的开启预设功能的操作,开启预设功能。
[0706] 例如,如图29所示,手机的设置界面2901包括预设功能开关,如“录像切换摄像头”开关2902。响应于用户对该“录像切换摄像头”开关2902的开启操作,手机可启动预设功能。其中,手机开启预设功能后,手机可显示图28所示的第一界面2801,即录制视频的取景界面。响应于用户对该“录像切换摄像头”开关2902的关闭操作,手机可关闭预设功能。其中,手机关闭预设功能后,手机可显示图1C所示的录制视频的取景界面110。
[0707] 图29所示的设置界面2901还包括手机的“飞行模式”开关、“WLAN”选项、“蓝牙”选项和“移动网络”选项等。其中,这些开关和选项的具体功能,可以参考常规技术中对设置界面的各个开关和选项的详细介绍,这里不予赘述。
[0708] 实现方式(2):手机响应于用户在手机的通知栏输入的开启预设功能的操作,开启预设功能。
[0709] 例如,手机响应于用户在手机的显示屏(如触摸屏)的顶部的下拉操作,可显示图30A所示的通知栏3001。该通知栏3001包括预设功能开关,如“录像切换摄像头”开关3002。
响应于用户对该“录像切换摄像头”开关3002的开启操作,手机可启动预设功能。其中,手机开启预设功能后,手机可显示图28所示的第一界面2801,即录制视频的取景界面。响应于用户对该“录像切换摄像头”开关3002的关闭操作,手机可关闭预设功能。其中,手机关闭预设功能后,手机可显示图1C所示的录制视频的取景界面110。
[0710] 图30A所示的通知栏3001还包括手机的“飞行模式”开关、“WLAN”选项、“蓝牙”选项、“移动网络”选项和“手电筒”开关等。其中,这些开关和选项的具体功能,可以参考常规技术中对通知栏的各个开关和选项的详细介绍,这里不予赘述。
[0711] 本实施例中,手机响应于用户的开始录制视频的操作,便可以在录制视频的取景界面显示暂停录制按钮。如此,手机便可以响应于用户对暂停录制按钮的第一操作,在取景界面显示第一控件。然后,手机可以接收用户对该第一控件的点击操作切换摄像头,为用户提供在录制视频的过程中切换摄像头的服务。
[0712] 在另一些实施例中,手机开始录制视频后,并不能在录制视频的过程中切换摄像头。而是在开始录制视频后,响应于用户开启预设功能(如录制视频过程中切换摄像头的功能)后,才可以显示包括暂停录制按钮的第一界面,然后才可以执行本申请实施例的方法,在录制视频的过程中切换摄像头。具体的,如图30B所示,在上述S2201之前,本申请实施例的方法还可以包括S3001‑S3003。如图30B所示,图22所示的S2201可以包括S3004。
[0713] S3001、手机显示第五界面。该第五界面是手机录制视频的取景界面。该第五界面包括开始录制按钮。该开始录制按钮用于触发手机开始录制视频。
[0714] 其中,虽然第五界面与上述第一界面都是手机录制视频的取景界面;但是,上述第一界面是手机正在录制视频的取景界面,即手机已经开始录制视频的取景界面;而第五界面则是手机还未开始录制视频的取景界面。例如,第一界面包括停止录制按钮,而该第五界面包括开始录制按钮。
[0715] 应理解,手机显示第五界面时,该手机已经进入录像模式。在录像模式下,只要手机接收到用户对开始录制按钮的点击操作,该手机便可以开始录制视频。例如,手机可显示图1B所示的第五界面104,该第五界面104是手机录制视频的取景界面。该第五界面104包括开始录制按钮108。
[0716] S3002、响应于用户对第五界面中开始录制按钮的点击操作,手机显示第六界面。该第六界面是手机正在录制视频的取景界面。该第六界面包括预设功能开关。
[0717] 其中,该预设功能开关用于触发手机开启或关闭预设功能。该预设功能为录制视频过程中切换摄像头的功能。
[0718] 例如,响应于用户对图1B所示的第五界面104中开始录制按钮108的点击操作(如单击操作),手机可显示图30C所示的第六界面3003。该第六界面3003是手机正在录制视频的取景界面,如该第六界面3003包括停止录制按钮。该第六界面3003还包括预设功能开关(如切换开关)3004。该切换开关3004用于触发手机开启或关闭预设功能。
[0719] 应注意,第六界面和第一界面均为手机正在录制视频的取景界面。不同的是:手机显示上述第一界面时,手机的预设功能已开启,第一界面包括暂停录制按钮。而手机显示上述第六界面时,手机的预设功能还未开启,该第六界面不包括暂停录制按钮。手机响应于用户对第六界面中预设功能开关的点击操作,才可以开启预设功能,显示包括暂停录制按钮的第一界面。
[0720] S3003、手机接收用户对预设功能开关的第三操作,该第三操作用于触发手机开启预设功能。
[0721] 其中,该预设功能为录制视频过程中切换摄像头的功能。
[0722] S3004、响应于用户对预设功能开关的第三操作,手机显示上述第一界面。
[0723] 例如,手机可接收用户对图30C所示的预设功能开关(如切换开关)3004的第三操作。响应于用户对预设功能开关(如切换开关)3004的第三操作,手机可显示图30D所示的第一界面3005。该第一界面3005中包括暂停录制按钮2304。该暂停录制按钮2304用于触发手机暂停录制视频。该第一界面3005还包括预设功能开关3006。
[0724] 在一些实施例中,手机可以在第六界面显示处于第一状态的预设功能开关,在第一界面显示处于第二状态的预设功能开关。其中,第一状态用于指示手机还未开启预设功能,第二状态用于指示手机已开启预设功能。例如,手机在图30C所示的第六界面3003显示处于第一状态的预设功能开关3004,如白底黑字的“切换开关”;手机在图30D所示的第一界面3005显示处于第二状态的预设功能开关3006,如黑底白字的“切换开关”。
[0725] 本实施例中,手机可以通过预设功能开关的状态指示手机开启/关闭预设功能。这样,用户便可以通过观察该预设功能开关的状态,判断预设功能是否开启/关闭。当然,用户也可以通过观察手机正在录制视频的取景界面是否包括暂停录制按钮2304,判断预设功能是否开启/关闭。
[0726] 在另一些实施例中,手机还可以在录制视频的过程中,响应于用户的操作,关闭上述预设功能。具体的,在上述S3004之后,本申请实施例的方法还可以包括S3005‑S3006。S3005:手机接收用户对预设功能开关的第五操作,该第五操作用于触发手机关闭预设功能。S3006、响应于用户对预设功能开关的第五操作,手机可关闭预设功能,并显示第八界面。该第八界面是手机正在录制视频的取景界面。该第八界面不包括暂停录制按钮2304,因此不能在录制视频的过程中,切换摄像头。
[0727] 应注意,手机可以在S3004之后,手机执行S2202‑S2203的过程中执行S3005‑S3006。也就是说,在手机切换摄像头的前后,该手机都可以执行S3005‑S3006,关闭预设功能。
[0728] 例如,响应于用户对图30D所示的预设功能开关((如切换开关)3006的第五操作,手机可显示图30E所示的第八界面3007。该第八界面3007是手机正在录制视频的取景界面。该第八界面3007不包括暂停录制按钮2304。可选的,该第八界面3007还包括处于第一状态的预设功能开关3008,如白底黑字的“切换开关”。
[0729] 本实施例中,手机可以响应于用户的第三操作,按照用户的需求开启/关闭预设功能。其中,按照用户的需求开启/关闭预设功能,不仅可以提升用户拍摄体验;关闭预设功能还可以关闭闲置摄像头,从而还可以减少手机的功耗。
[0730] 在第二种应用场景中,该多个摄像头可以包括多种类型的前置摄像头和后置摄像头。在本申请实施例中摄像头的类型可以包括:主摄像头、长焦摄像头、广角摄像头、超广角摄像头、微距摄像头、鱼眼摄像头、红外摄像头、深度摄像头和黑白摄像头中至少两种。在这种应用场景中,采用本申请实施例的方法,手机可以在录制视频的过程中,切换使用手机的任意两个摄像头。
[0731] 示例性的,以下实施例中,以手机包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头为例,介绍本实施例的方法。如图31所示,本申请实施例的方法可以包括S3101‑S3107。
[0732] S3101、手机显示第一界面。该第一界面是手机正在录制视频的取景界面。该第一界面包括多个摄像头中第一摄像头采集的第一预览图像。
[0733] 例如,手机可显示图23A所示的第一界面2301,该第一界面2301包括暂停录制按钮2304。其中,第一界面的详细描述可以参考上述实施例对S2201的介绍,本申请实施例这里不予赘述。
[0734] S3102、手机接收用户在第一界面的第一操作。该第一操作用于触发手机暂停录制视频。
[0735] 其中,该第一操作的详细描述,可以参考上述实施例对S2202中第一操作的介绍,这里不予赘述。
[0736] S3103、响应于上述第一操作,手机显示第二界面。该第二界面是手机暂停录制视频的取景界面。该第二界面包括第一摄像头采集的第二预览图像,还包括多个第二控件。
[0737] 示例性的,响应于用户对图23A所示的暂停录制按钮2304的第一操作,手机可显示图32A所示的第二界面3201。该第二界面3201是手机暂停录制视频的取景界面。例如,相比于图23A所示的第一界面2301中计时选项2306的计时时长,该第二界面2307中计时选项2306的计时时长并未发生变化,均为00:00:08。也就是说,在第二界面3201,手机已经暂停录制视频。
[0738] 但是,该第二界面3201的取景框可以显示第一摄像头采集的第二预览图像3202。不同的是,手机停止录制视频后,手机生成的视频文件(如第一视频文件)不会包括该第二视频文件。
[0739] 其中,上述第一摄像头可以是手机的多个摄像头中的任一个摄像头。例如,以下实施例中,第一摄像头是手机的后置主摄像头为例。
[0740] 上述第二界面还包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头。例如,如图32A所示,上述第二界面3201还包括多个第二控件,如“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[0741] 其中,图32A所示的“前置主摄”控件对应于手机的前置主摄像头,用于触发手机显示前置主摄像头采集的预览图像。图32A所示的“前置长焦”控件对应于手机的前置长焦摄像头,用于触发手机显示前置长焦摄像头采集的预览图像。图32A所示的“前置广角”控件对应于手机的前置广角摄像头,用于触发手机显示前置广角摄像头采集的预览图像。
[0742] 图32A所示的“后置主摄”控件对应于手机的后置主摄像头,用于触发手机显示后置主摄像头采集的预览图像。图32A所示的“后置长焦”控件对应于手机的后置长焦摄像头,用于触发手机显示后置长焦摄像头采集的预览图像。图32A所示的“后置广角”控件对应于手机的后置广角摄像头,用于触发手机显示后置广角摄像头采集的预览图像。
[0743] 上述第一控件是多个第二控件中的任一个第二控件。第二摄像头是第一控件对应的摄像头。该第二摄像头与第一摄像头不同。该第二摄像头可以是上述多个摄像头中、除第一摄像头之外的任一摄像头。例如,在第一摄像头是手机的后置主摄像头的情况下,该第二摄像头可以是前置主摄像头、前置广角摄像头、前置长焦摄像头、后置广角摄像头或者后置长焦摄像头中的任一种摄像头。
[0744] 以下实施例中,以第一摄像头是手机的后置主摄像头,第二摄像头是前置主摄像头为例。在这种情况下,第一控件是图32A所示的“前置主摄”控件。图32A所示的“前置主摄”控件用于触发手机使用多个摄像头中的前置主摄像头。
[0745] 其中,第二界面的其他详细描述(如第二界面是手机暂停录制视频的取景界面,该第二界面包括第一摄像头采集的第二预览图像),可以参考上述实施例对S2203的相关介绍,这里不予赘述。
[0746] S3104、手机接收用户对多个第二控件中第一控件的点击操作。
[0747] 例如,手机可以接收用户对图32A所示的第一控件,如“前置主摄”控件的点击操作。
[0748] S3105、响应于用户对第一控件的点击操作,手机将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像,继续录制视频。
[0749] 例如,手机响应于用户对图32A所示的“前置主摄”控件(即第一控件)的点击操作,手机可显示图32C所示的手机正在录制视频的取景界面3205。
[0750] 其中,响应于用户对图32A所示的“前置主摄”控件(即第一控件)的点击操作,手机暂停录制视频的取景界面(即第二界面)中的预览图像,由图32A所示的第二预览图像3202切换为图32C所示的第三预览图像3206,并且手机可以继续录制视频。
[0751] 例如,图32C所示的手机正在录制视频的取景界面3206中,计时选项2311开始计时,其计时时长由图32A所示的00:00:08变为图32C所示的00:00:09。其中,第二预览图像3202和第三预览图像3206是不同摄像头采集的图像,因此,如图32A和图32C所示,第二预览图像3202和第三预览图像3202不同。
[0752] 在另一些实施例中,手机响应于用户对第一控件的点击操作,可以将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像;但是,并不会继续录制视频。而是在接收到用户对第二界面中暂停录制按钮的第二操作后,才会继续录制视频。具体的,如图32D所示,S3105可以包括S3105a‑S3105c。
[0753] S3105a、响应于用户对第一控件的点击操作,手机将第二界面中的第二预览图像切换为第二摄像头采集的第四预览图像。
[0754] 例如,响应于用户对图32A所示的“前置主摄”控件(即第一控件)的点击操作,手机可显示图32B所示的第二界面3203。其中,响应于用户对图32A所示的“前置主摄”控件的点击操作,手机暂停录制视频的取景界面(即第二界面)中的预览图像,由图32A所示的第二预览图像3202切换为图32B所示的第四预览图像3204。与上述实施例的方案不同的是,响应于用户对第一控件的点击操作,手机并未继续录制视频。例如,例如,相比于图32A所示的第二界面3201中计时选项2306的计时时长,该第二界面3203中计时选项2306的计时时长并未发生变化,均为00:00:08。
[0755] S3105b、手机接收用户在第二界面的第二操作。该第二操作用于触发手机继续录制视频。
[0756] 示例性的,第二界面包括暂停录制按钮。第二操作可以是用户对第二界面中暂停录制按钮的点击操作。例如,手机可接收用户对图32B所示的第二界面3203中暂停录制按钮2309的第二操作。
[0757] S3105c、响应于上述第二操作,手机在第二界面显示第二摄像头采集的第三预览图像,并继续录制视频。
[0758] 例如,响应于用户对图32B所示的暂停录制按钮2309的第二操作,手机可显示图32C所示的手机正在录制视频的取景界面3205。其中,图32C所示的手机正在录制视频的取景界面3205的详细描述可以参考上述实施例中的相关介绍,这里不予赘述。
[0759] 其中,本申请实施例中的暂停录制按钮可以包括两种状态,如第一状态和第二状态。该第一状态用于指示手机正在录制视频,该第二状态用于指示手机暂停录制视频。例如,如图23A或图32C所示,手机显示处于第一状态的暂停录制按钮2304;此时,手机正在录制视频。又例如,如图32A或图32B所示,手机显示处于第二状态的暂停录制按钮2309;此时,手机暂停录制视频。
[0760] 在一些实施例中,手机执行S3102之后,响应于用户对暂停录制按钮的第一操作,便可以启动多个摄像头中除第一摄像头(如前置主摄像头)之外的其他摄像头。该其他摄像头包括第二摄像头(如前置主摄像头)。如此,在手机执行S3102“接收用户对暂停录制按钮的第一操作”到手机执行S3104“接收用户对第一控件的点击操作”这段时间,手机便可以完成第二摄像头的启动流程,第二摄像头便可以采集图像。
[0761] 因此,在执行S3204接收到用户对第二界面中第一控件的点击操作后,该手机响应于用户对第一控件的点击操作,便可以直接将第二界面中的第二预览图像切换为第二摄像头采集的第三预览图像或第四预览图像。而不是响应于用户对第一控件的点击操作,才启动第二摄像头。这样,可以实现第二界面中第二预览图像与第三预览图像或第四预览图像的无缝切换,可以提升用户拍摄视频过程中的视觉体验。
[0762] 当然,在另一些实施例中,为了降低手机的功耗,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第二界面中第一控件的点击操作,才启动第二摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[0763] 在另一些实施例中,手机响应于用户对第一控件(如“前置主摄”控件)的点击操作,可以启动第二摄像头(如前置主摄像头)。
[0764] 在另一些实施例中,手机响应于用户对第一控件(如“前置主摄”控件)的点击操作,可以关闭上述第一摄像头。这样,可以减少手机的功耗。具体的,手机可以关闭多个摄像头中除第二摄像头之外的其他摄像头,该其他摄像头包括第一摄像头。
[0765] S3106、手机接收用户对第二界面中停止录制按钮的点击操作。
[0766] 其中,上述第二界面(即手机正在录制视频的取景界面)可以包括停止录制按钮。例如,图32C所示的录制视频的取景界面3205、图32A所示的录制视频的取景界面3201和图
32B所示的录制视频的取景界面3203均包括停止录制按钮2303。手机可以在录制视频的过程中,随时接收用户对录制视频的取景界面中停止录制按钮2303的点击操作,响应于用户对该停止录制按钮2303的点击操作,手机可停止录制视频并生成录制的视频文件。
[0767] 应理解,在手机录制视频的过程中,手机录制视频的取景界面中计时选项的计时时长可以随着时间的推移而发生变化。例如,图23A、图32A和图32B所示的计时选项2306的计时时长为00:00:08,随着时间的推移,图32C所示的计时选项2311的计时时长为00:00:09,图24A所示的计时选项2402的计时时长为00:00:18。
[0768] 示例性的,假设手机在录制视频的时长为00:00:18时,接收到用户对停止录制按钮的点击操作。例如,如图24A所示,当计时选项2402的计时时长为00:00:18时,手机接收到用户对第二界面2401中停止录制按钮2303的点击操作。
[0769] S3107、响应于用户对停止录制按钮的点击操作,手机停止录制视频,生成第一视频文件。该第一视频文件包括第一视频流和第二视频流,该第一视频流包括多帧第一预览图像,第二视频流包括多帧第三预览图像。
[0770] 例如,响应于用户对图24A所示的停止录制按钮2303的第二操作,手机可以停止录制视频,生成图24C所示的第一视频文件。如图24C所示,该第一视频文件包括:第一视频流和第二视频流。该第一视频流包括上述第一摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第一预览图像。上述第二视频流包括上述第二摄像头作为预览摄像头的情况下,手机的显示屏显示的多帧第三预览图像。
[0771] 其中,上述第一视频文件的详细描述,可以参考第一种应用场景中对第一视频文件的详细介绍,这里不予赘述。
[0772] 采用本申请实施例的方法,可以在录制视频的过程中切换摄像头。并且,采用该方法,一次拍摄便可以得到多视角的视频文件,不会生成多个临时视频文件,也不需要对临时视频文件进行整合。相比于分段录制的方案,可以简化视频的录制过程,提高拍摄视频的效率,提升用户的拍摄体验。
[0773] 其中,在第二种应用场景中,手机在一次拍摄视频的过程中,也可能会至少两次切换摄像头。手机在一次拍摄视频的过程中至少两次切换摄像头的方法,可以参考上述第一种应用场景中的详细描述,这里不予赘述。
[0774] 应理解,本申请实施例中,上述多个第二控件在第一界面的位置包括但不限于图32A或图32B所示的位置。示例性的,手机还可以在第二界面(即手机正在录制视频的取景界面)的取景框内显示该多个第二控件。例如,手机可显示图33A所示的第二界面(即手机正在录制视频的取景界面)3301。该第二界面3301的取景框内显示有第一预览图像3302。该第二界面3301的取景框内还显示有多个第二控件,“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。响应于用户对图33A所示的多个第二控件中第一控件(如“前置主摄”控件)的点击操作,手机可显示图33B所示的第二界面3303。也就是说,响应于用户对图33A所示的“前置主摄”控件的点击操作,手机正在录制视频的取景界面(即第二界面)中的预览图像,由图33A所示的第二预览图像3302切换为图33B所示的第三预览图像3304。
[0775] 在另一些实施例中,为了避免上述多个第二控件显示在手机录制视频的取景界面时,占据取景界面中取景框中的显示区域,影响用户查看预览图像。一般情况下,手机不会在第二界面显示上述多个第二控件。手机响应于用户的预设操作,才可以在第二界面显示该多个第二控件。例如,手机执行S2203或S3103可显示图33C所示的第二界面3305,该第二界面3305不包括多个第二控件。响应于用户在第二界面3305的预设操作(如由显示屏右侧边框输入的由右向左的滑动操作),手机可显示图33A所示的第二界面3301。
[0776] 应注意,该实施例中手机在第二界面不显示多个第二控件,不是因为手机未开启预设功能;而是为了避免上述多个第二控件占据取景界面中取景框中的显示区域,影响用户查看预览图像。
[0777] 在该实施例中,手机在录制视频的过程中,可以不显示多个第二控件。而是根据用户的需求,当用户想要切换摄像头时,响应于用户的操作才显示该多个第二控件。这样,不仅可以支持手机在录制视频的过程中切换摄像头,还可以避免上述多个第二控件占据取景界面中取景框中的显示区域,可以提升用户的拍摄体验。
[0778] 在另一些实施例中,上述响应于用户对暂停录制按钮的第一操作,手机显示第二界面(即S3103)可以包括S3103a‑S3103c。
[0779] S3103a、响应于用户对暂停录制按钮的第一操作,手机显示第三界面。该第三界面是手机暂停录制视频的取景界面,该第三界面包括第一摄像头采集的第二预览图像,还包括第三控件。
[0780] 例如,响应于用户对图23A所示的暂停录制按钮2304的第一操作,手机可显示图33D所示的第三界面3306。该第三界面3306是手机暂停录制视频的取景界面。如图33D所示,该第三界面3306不仅包括第一摄像头(如后置主摄像头)采集的第二预览图像,还包括第三控件3307。例如,在该实施例中,第三控件可以是摄像头切换选项。该第三控件用于触发手机显示多个第二控件。
[0781] S3103b、手机接收用户对第三界面中第三控件的第四操作(如点击操作)。
[0782] S3103c、响应于用户对第三控件的第四操作,手机显示包括多个第二控件的第二界面。
[0783] 例如,手机可以接收用户对图33D所示的第三控件3307的第四操作。响应于用户对第三控件3307的第四操作,手机可显示图33E所示的第二界面3308。该第二界面3308包括多个第二控件3309。可选的,图33E所示的第二界面3308还包括第三控件(如摄像头切换选项)3307。响应于用户对图33E所示的第三控件3307的第六操作,手机可以隐藏第二界面3308中的多个第二控件3309,显示图33D所示的第三界面3306。
[0784] 在该实施例中,在接收用户对暂停录制按钮的第一操作之后,手机可以随时接收用户对该暂停录制按钮的第二操作。响应于用户对该暂停录制按钮的第二操作,手机可以继续录制视频。
[0785] 本申请实施例中,手机在第二界面显示的多个第二控件,至少可以包括以下三种实现方式。
[0786] 实现方式(a):
[0787] 如图32A、图32B、图33A、图33B或图33E中任一附图所示,多个第二控件中的每个第一控件上显示有对应摄像头的类型指示信息。在本申请实施例中,一个摄像头的类型指示信息用于指示该摄像头的摄像头类型,还可以指示该摄像头为前置摄像头或后置摄像头。
[0788] 例如,响应于用户对图33D所示的第三控件(如摄像头切换选项)3307的点击操作,手机可以显示图33E所示的第二界面3308。如图33E所示,多个第二控件3309上的各个第二控件上分别显示有如下类型指示信息,“前置主摄”、“前置长焦”、“前置广角”、“后置主摄”、“后置长焦”、“后置广角”。其中,类型指示信息“前置主摄”用于指示第二控件对应前置主摄像头。类型指示信息“前置长焦”用于指示第二控件对应前置长焦摄像头。类型指示信息“前置广角”用于指示第二控件对应前置广角摄像头。类型指示信息“后置主摄”用于指示第二控件对应后置主摄像头。类型指示信息“后置长焦”用于指示第二控件对应后置长焦摄像头。类型指示信息“后置广角”用于指示第二控件对应后置广角摄像头。
[0789] 实现方式(b):
[0790] 多个第二控件中的每个第二控件上显示有对应摄像头采集的预览图像。例如,如图33F所示,第一界面3310包括多个第二控件,如第二控件3311、第二控件3312、第二控件3313、第二控件3314、第二控件3315和第二控件3316。
[0791] 其中,第二控件3311中显示有后置主摄像头采集的预览图像。第二控件3312中显示有后置广角摄像头采集的预览图像。第二控件3313中显示有后置长焦摄像头采集的预览图像。第二控件3314中显示有前置主摄像头采集的预览图像。第二控件3315中显示有前置广角摄像头采集的预览图像。第二控件3316中显示有前置长焦摄像头采集的预览图像。
[0792] 因此,上述第二控件3311也可以称为“后置主摄”控件,上述第二控件3312也可以称为“后置广角”控件,上述第二控件3313还可以称为“后置长焦”控件;上述第二控件3314还可以称为“前置主摄”控件,上述第二控件3315还可以称为“前置广角”控件,上述第二控件3316还可以称为“前置长焦”控件。手机还可以显示图33G所示的第二界面3317。
[0793] 其中,图33F所示的第一界面3312和图33G所示的第一界面3319还包括摄像头切换选项。响应于用户对图33F或图33G所示的摄像头切换选项的点击操作,手机可隐藏上述多个第二控件,显示图33D所示的第一界面3308。
[0794] 应理解,在每个第一控件上显示对应摄像头采集的预览图像,可以直观的向用户展示每个摄像头的拍摄效果和拍摄视角等,有利于用户从多个摄像头中选择拍摄效果和拍摄视角等满足用户需求的摄像头。这样,可以提升用户的拍摄体验。
[0795] 实现方式(c):
[0796] 多个第二控件中的每个第二控件上显示有对应摄像头的代理信息。在本申请实施例中,一个摄像头的代理信息可以指示该摄像头为前置摄像头或后置摄像头,还可以包括该摄像头的编号。
[0797] 在一种情况下,摄像头的编号可以是手机为摄像头分配的。例如,摄像头的编号可以是摄像头的Camera ID。不同摄像头的Camera ID不同。在另一种情况下,摄像头的编号可以是用户在手机中为摄像头分配的。不同前置摄像头的编号不同,不同后置摄像头的编号不同。
[0798] 示例性的,响应于用户对图33D所示的第三控件(如摄像头切换选项)3307的点击操作,手机可显示图33H所示的拍照的取景界面(即第一界面)3318。如图33H所示,第一界面3318包括多个第二控件3319。例如,以摄像头的编号为1、2、3为例。该多个第二控件3318可以包括“前置摄像头1”控件、“前置摄像头2”控件、“前置摄像头3”控件、“后置摄像头1”控件、“后置摄像头2”控件、“后置摄像头3”控件。
[0799] 其中,代理信息“前置摄像头1”用于指示第二控件(如“前置摄像头1”控件)对应一个前置摄像头,该前置摄像头的编号为1。例如,编号为1是前置摄像头是前置主摄像头。代理信息“前置摄像头2”用于指示第二控件(如“前置摄像头2”控件)对应一个前置摄像头,该前置摄像头的编号为2。例如,编号为2是前置摄像头是前置广角摄像头。代理信息“前置摄像头3”用于指示第二控件(如“前置摄像头3”控件)对应一个前置摄像头,该前置摄像头的编号为3。例如,编号为3是前置摄像头是前置长焦摄像头。
[0800] 代理信息“后置摄像头1”用于指示第二控件(如“后置摄像头1”控件)对应一个后置摄像头,该后置摄像头的编号为1。例如,编号为1是后置摄像头是后置主摄像头。代理信息“后置摄像头2”用于指示第二控件(如“后置摄像头2”控件)对应一个后置摄像头,该后置摄像头的编号为2。例如,编号为2是后置摄像头是后置广角摄像头。代理信息“后置摄像头3”用于指示第二控件(如“后置摄像头3”控件)对应一个后置摄像头,该后置摄像头的编号为3。例如,编号为3是后置摄像头是后置长焦摄像头。
[0801] 在另一些实施例中,手机可以采用上述实现方式(a)‑实现方式(c)中的至少一种实现方式,在第二界面显示多个第二控件。其中,手机在第二界面显示多个第二控件的具体实现方式可以预先配置在手机中,也可以由用户在手机中设置。其中,手机接收并根据用户设置,显示多个第二控件的具体方法可以参考常规技术中的相关描述这里不予赘述。
[0802] 在另一些实施例中,在上述S3101之前,本申请实施例的方法还可以包括S2701‑S2702。其中,S2701‑S2702的详细描述,可以参考上述实施例的相关介绍,这里不予赘述。
[0803] 在另一些实施例中,在上述S3101之前,本申请实施例的方法还可以包括S3001‑S3003。S3101可以包括S3004。其中,S3001‑S3004的详细描述,可以参考上述实施例的相关介绍,这里不予赘述。
[0804] 在另一些实施例中,上述第一种应用场景或第二种应用场景的方法还可以应用于手机的多景拍摄场景。其中,手机在多景拍摄场景下,可以显示多个取景框,每个取景框可显示一个摄像头采集的预览图像。例如,手机在多景拍摄场景下,可显示图34A所示的手机正在录制视频的取景界面。
[0805] 在第一种应用场景下,如图34A所示,手机可显示两个取景框,取景框3401显示前置摄像头采集的第一预览图像3402,取景框3403显示后置摄像头采集的第一预览图像3404。取景框3401中包括暂停录制按钮3405。该暂停录制按钮3405用于触发手机停止录制前置摄像头采集的第一预览图像3402。取景框3402中包括暂停录制按钮3407。暂停录制按钮3407用于触发手机停止录制后置摄像头采集的第一预览图像3404。图34A所示的取景界面还包括停止录制按钮3406。该停止录制按钮3406用于触发手机停止录制视频,并生成包括取景框3401和取景框3403中播放的视频流的视频文件。
[0806] 其中,手机可以针对取景框3401和取景框3403,分别执行上述第一种应用场景中的方法,在录制视频的过程中切换摄像头。例如,手机可执行S2203,响应于用户对图34A所示的取景框3401中暂停录制按钮3405的点击操作,显示图34B所示的第二界面,即手机暂停录制视频的取景界面。图34B所示的第二界面包括两个取景框,取景框3401和取景框3403。其中,图34B所示的取景框3401显示前置摄像头采集的第二预览图像3408,取景框3403显示后置摄像头采集的第一预览图像3404。
[0807] 图34B所示的取景框3401中还包括第一控件3410,以及暂停录制按钮3409。其中,第一控件3410和暂停录制按钮3409的详细介绍,可以参考上述实施例中的相关描述,这里不予赘述。
[0808] 手机响应于用户对图34B所示的第一控件3410的点击操作,如图34C所示,可在取景框3401显示后置摄像头采集的第三预览图像3411,取景框3403仍显示后置摄像头采集的第一预览图像3404。
[0809] 需要说明的是,手机针对取景框3401执行上述第一种应用场景中的方法,并不会影响取景框3403中视频的录制。并且,手机针对取景框3403执行上述第一种应用场景中的方法,并不会影响取景框3401中视频的录制。例如,响应于用户对图34B所示的暂停录制按钮3405的点击操作,如图34C所示,取景框3403仍显示后置摄像头采集的第一预览图像3404。
[0810] 其中,手机针对取景框3401和/或取景框3403在录制视频的过程中切换摄像头的具体方法,可以参考上述实施例对S2201‑S2207的详细介绍,这里不予赘述。
[0811] 在第二种应用场景下,如图35A所示,手机可显示两个取景框,取景框3501显示前置摄像头采集的第一预览图像,取景框3502显示后置摄像头采集的第一预览图像。取景框3501中包括暂停录制按钮3504和多个第二控件。该暂停录制按钮3504用于触发手机停止录制取景框3501中显示的前置摄像头采集的第一预览图像。取景框3502中包括暂停录制按钮
3505和多个第二控件。图35A所示的取景界面还包括停止录制按钮3503。该暂停录制按钮
3505用于触发手机停止录制取景框3502中显示的后置摄像头采集的第一预览图像。停止录制按钮3503用于触发手机停止录制视频,并生成包括取景框3501和取景框3502中播放的视频流的视频文件。
[0812] 其中,手机可以针对取景框3501和取景框3502,分别执行上述第二种应用场景中的方法,在录制视频的过程中切换摄像头。需要说明的是,手机针对取景框3501执行上述第二种应用场景中的方法,并不会影响取景框3502中视频的录制。并且,手机针对取景框3502执行上述第二种应用场景中的方法,并不会影响取景框3501中视频的录制。
[0813] 其中,手机针对取景框3501和/或取景框3502在录制视频的过程中切换摄像头的具体方法,可以参考上述实施例对S3101‑S3107的详细介绍,这里不予赘述。
[0814] 在上述多景拍摄场景下,手机可以在每个取景框分别显示一个暂停录制按钮。每个取景框中的暂停录制按钮用于控制手机暂停或者继续录制对应取景框中的视频。在这种情况下,如上述实施例所述,每个取景框可以单独控制。因此,多个取景框中录制视频的计时时长可能是不同步的。例如,如图34B或图34C所示,取景框3401和取景框3403中的计时时长不同步。在这种情况下,响应于用户对停止录制按钮的点击操作,手机所生成的视频文件中,不同取景框中视频流的时长则不同。例如,假设手机接收到用户对图34C所示的录制视频的取景界面中停止录制按钮3406的点击操作。响应于用户对图34C所示停止录制按钮3406的点击操作,手机所生成的视频文件中,一个取景框(如取景框3401)的视频流的时长为00:00:09,另一个取景框(如取景框3403)的视频流的时长为00:00:10。手机播放该视频文件的过程中,播放至00:00:09‑00:00:10时,取景框3401中的视频流可以停留在最后一帧图像,而取景框3403则可以实时播放视频流。
[0815] 在另一些实施例中,在上述多景拍摄场景下,手机录制视频的取景界面中仅包括一个暂停录制按钮和一个停止录制按钮。例如,如图34D所示,手机录制视频的取景界面仅包括一个暂停录制按钮3412和一个停止录制按钮3406。该暂停录制按钮3412用于触发手机停止录制取景框3401中显示的前置摄像头采集的第一预览图像3402,并停止录制取景框3403中显示的后置摄像头采集的第一预览图像3404。停止录制按钮3406用于触发手机停止录制视频,并生成包括取景框3401和取景框3403中播放的视频流的视频文件。响应于用户对图34D所示的暂停录制按钮3412的点击操作,手机可显示图34E所示的暂停录制视频的取景界面。如图34E所示,取景框3401中包括第一控件3413,取景框3403中包括第一控件3414。
第一控件3413用于触发手机切换取景框3401的摄像头,第一控件3414用于触发手机切换取景框3403的摄像头。
[0816] 又例如,如图35B所示,手机录制视频的取景界面仅包括一个暂停录制按钮3506和停止录制按钮3503。该暂停录制按钮3506用于触发手机停止录制取景框3501中显示的前置摄像头采集的第一预览图像,并停止录制取景框3502中显示的后置摄像头采集的第一预览图像。停止录制按钮3503用于触发手机停止录制视频,并生成包括取景框3501和取景框3502中播放的视频流的视频文件。
[0817] 在该实施例中,手机录制视频的取景界面中多个取景框可以统一控制。因此,多个取景框中录制视频的计时时长是同步的。
[0818] 示例性的,本申请实施例这里以手机包括主摄像头1(即第一摄像头)和摄像头2(即第二摄像头)为例,结合附图21以及上述实施例所述的方法步骤,介绍本申请实施例中手机拍摄视频的方法流程。
[0819] 其中,手机进入拍照模式后,应用层2110的系统相机应用2111可以触发底层执行2601,默认启动手机的主摄像头1。该主摄像头1是手机的默认摄像头,如后置主摄像头。例如,系统相机应用2111可以通过框架层2120向硬件抽象层HAL 2130发送携带摄像头1的相机标识Camera ID‑1的通知,该通知用于指示硬件抽象层HAL 2130执行2602,根据Camera ID‑1启动摄像头1的视频流1。其中,硬件抽象层HAL 2130可以指示内核层(Kernel)启动相机标识为Camera ID‑1的摄像头1,从而便可以从内核层(Kernel)2140得到该摄像头1的视频流1。内核层(Kernel)2140的相机驱动2141可以根据Camera ID‑1启动Camera器件2142中的摄像头1。
[0820] 其中,内核层(Kernel)2140的Camera器件2142采集视频流的原理为:Camera器件2142可以将取景环境中反射的光信号转换为电信号,并由图像信号处理器ISP 2143对该电信号进行处理得到视频流。
[0821] 然后,硬件抽象层HAL 2130可以对来自底层(如内核层2140)的数据(如视频流1)进行处理,然后再传输给框架层2120。例如,HAL层2130可以将内核层2140的关于硬件设备的参数转换为框架层2120和应用层2110可识别的软件程序语言。
[0822] 框架层2120可以接收硬件抽象层HAL 2130传输的来自底层(如内核层2140)的视频流1。框架层2120的相机服务2123可以通过API 1|API 2接口2121向上层(如应用层2110)传输该视频流1。应用层2110的系统相机应用2111接收到该视频流1后,可以在取景界面呈现该视频流1,如执行2607在SurfaceView刷新该视频流1。
[0823] 之后,手机可执行2603进入录像模式,显示包括开始录制按钮的取景界面。然后,手机可执行2604开始拍摄(即开始录制视频),如手机响应于用户对开始录制按钮的点击操作,可显示包括暂停录制按钮的第一界面并开始录制视频。此时,摄像头1作为手机的预览摄像头。然后,手机可执行2605暂停拍摄,如手机可响应于用户对上述第一界面中暂停录制按钮的点击操作暂停录制视频。并且,手机执行2605,应用层2110便可以向硬件抽象层HAL 2130发送通知,以指示硬件抽象层HAL 2130执行2602,根据Camera ID‑2启动摄像头2(即闲置摄像头)的视频流。此时,手机的摄像头2均启动。
[0824] 之后,手机可执行2606手机的取景界面便可以出现摄像头切换图标(即第一控件)。例如,响应于用户对暂停录制按钮的点击操作,可显示包括第一控件(即摄像头切换图标)的第二界面。在2606中用户点击摄像头切换图标后,应用层2110便可以执行2607刷新SurfaceView中的视频流,如将SurfaceView中的视频流由视频流1切换为视频流2。此时,摄像头2作为手机的预览摄像头。例如,响应于用户对该第一控件的点击操作,手机可将第二界面中的第二预览图像切换为第二摄像头(如摄像头2)采集的第三预览图像。
[0825] 其中,如图36所示,应用层2110可以接收来自底层的视频流1或视频流2。应用层2110可以执行2608实时刷新SurfaceView中的视频流。其中,SurfaceView中实时显示手机的预览摄像头采集的视频流。
[0826] 由于SurfaceView中实时显示手机的预览摄像头采集的视频流;因此,框架层2120的视频处理模块2122实时从SurfaceView获取并缓存视频流,便可以缓存呈现在手机录制视频的取景界面的所有视频流。从而,响应于用户结束录制视频2609的操作,视频处理模块2122便可以执行3610即时生成视频文件,该视频文件包括视频处理模块2122缓存的视频流。
[0827] 为了便于理解,本申请实施例这里详细介绍手机拍摄照片或录制视频的过程,以说明采用常规技术在拍摄照片的过程中或录制视频前,手机仅支持前置摄像头和后置摄像头的切换,无法按照用户的需求动态选择摄像头的问题。
[0828] 一般而言,手机响应于用户对“相机”应用图标的点击操作,可以显示拍照的取景界面。当用户想要使用手机录制视频时,则可以触发手机显示录制视频的取景界面,如图37A所示,手机拍照的取景界面3701。其中,该拍照的取景界面3701的取景框中显示有手机的默认摄像头(如后置摄像头)采集的预览图像3702。该拍照的取景界面3701还包括摄像头切换选项3705和“录像”选项3706。其中,摄像头切换选项3705用于触发手机切换使用前置摄像头或者后置摄像头采集图像。“录像”选项3706用于触发手机进入录制视频模式(即录像模式)。
[0829] 假设图37A所示的预览图像3702是后置摄像头采集的图像。响应于用户对摄像头切换选项3705的点击操作,手机可显示图37B所示的拍照的取景界面3703。该拍照的取景界面3703的取景框中显示有手机的前置摄像头采集的预览图像3704。该拍照的取景界面3703还包括摄像头切换选项3705和“录像”选项3706。响应于用户对图37B所示的摄像头切换选项3705的点击操作,手机可显示图37A所示的拍照的取景界面3701。
[0830] 由此可见,采用常规技术,在拍照模式下手机响应于用户对摄像头切换选项3705的点击操作,仅支持前置摄像头和后置摄像头的切换。
[0831] 响应于用户对图37A所示的“录像”选项3706的点击操作,手机可以进入录像模式,显示图37C所示的录像的取景界面3707。录像的取景界面3707的取景框包括后置摄像头采集的预览图像3708。该录像的取景界面3707还包括摄像头切换选项3705和计时选项3709。响应于用户对图37C所示的摄像头切换选项3705的点击操作,手机可显示图37D所示的录像的取景界面1370。该录像的取景界面1370的取景框中显示有手机的前置摄像头采集的预览图像3711。该录像的取景界面1370还包括摄像头切换选项3705和计时选项3709。响应于用户对图37D所示的摄像头切换选项3705的点击操作,手机可显示图37C所示的录像的取景界面3707。
[0832] 由此可见,采用常规技术,在录像模式下手机响应于用户对摄像头切换选项3705的点击操作,仅支持前置摄像头和后置摄像头的切换。
[0833] 综上所述,采用常规技术,在拍照模式或录像模式下,手机响应于用户对摄像头切换选项3705的点击操作,仅支持前置摄像头和后置摄像头的切换。而手机中不仅包括一个前置摄像头和一个后置摄像头。
[0834] 例如,如图3C所示,手机可包括三个前置摄像头,如前置摄像头a、前置摄像头b和前置摄像头c;如图3G所示,手机可包括三个后置摄像头,如后置摄像头1、后置摄像头2和后置摄像头3。上述三个前置摄像头和三个后置摄像头可以包括以下至少两种类型的摄像头:主摄像头(如前置主摄像头和后置主摄像头)、长焦摄像头、广角摄像头、超广角摄像头、红外摄像头、深度摄像头和黑白摄像头等。
[0835] 在一些常规方案中,还可以通过调整摄像头的焦距Zoom值,来满足用户在不同场景下的拍摄需求。例如,如图37E所示,手机进入相机APP后,可以切换前后置(即切换前后置摄像头)来选择合适的摄像头来采集图像;然后,再调整焦距Zoom值,以满足用户的拍摄需求;最后,手机可以响应于用户的拍摄操作,生成图片或视频文件。
[0836] 其中,采用上述方案,虽然可以在切换前后置摄像头的基础上,调整摄像头的焦距Zoom值;但是,调整焦距Zoom值也只是在使用前置主摄像头或后置主摄像头的焦距Zoom值,其调整范围有限,并不能满足用户在多个不同场景下的拍摄需求。
[0837] 综上所述,采用常规技术,在拍照模式或录像模式下,手机响应于用户对摄像头切换选项3705的点击操作,仅可以支持前置主摄像头和后置后摄像头的切换,无法按照用户的需求动态选择不同类型的摄像头,进而无法满足用户在不同场景下的拍摄需求。
[0838] 本申请实施例提供一种拍摄控制方法,该方法可以应用于包括电子设备的摄像头的电子设备。例如,该电子设备的摄像头包括前置摄像头和后置摄像头。采用本申请实施例的方法,可以在拍照模式或录像模式下,按照用户需求在电子设备的摄像头之间进行动态切换,可以提升用户的拍摄体验。
[0839] 以下实施例中的方法均可以在具有上述硬件结构的电子设备200中实现。
[0840] 其中,电子设备200的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备200的软件结构。
[0841] 图38是本申请实施例提供的电子设备200的软件结构框图。分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层(简称应用层)3810,应用程序框架层(简称框架层)3820,硬件抽象层(hardware abstract layer,HAL)层3830,以及内核层(Kernel,也称为驱动层)3840。
[0842] 其中,应用层(Application)410可以包括一系列应用程序包。该应用层可以包括多个应用程序包。该多个应用程序包可以为相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息以及桌面启动(Launcher)等应用程序。例如,如图38所示,该应用层3810可以包括相机系统应用(也称为相机应用)3811。
[0843] 如图38所示,相机系统应用3811进入拍照模式或录像模式后,可以在拍照的取景界面或录像的取景界面展示底层上报的视频流。其中,电子设备200可以包括多个摄像头,每个摄像头都可以用于采集图像,摄像头采集的连续多帧图像可组成视频流。也就是说,上述每个摄像头都可以用于采集视频流。
[0844] 例如,假设电子设备200(如手机)包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头,后置主摄像头是电子设备200的默认摄像头。因此,手机进入拍照模式或录像模式后,后置摄像头作为预览摄像头,手机可显示后置主摄像头(即默认摄像头)采集的视频流。
[0845] 其中,每个摄像头的相机标识(Camera ID)不同。应用层3810可以通过摄像头的Camera ID指示底层(如内核层3840)启动对应的摄像头,并根据预览摄像头的Camera ID指示底层(如框架层3820)处理该预览摄像头采集的预览视频流。应用层3810还可以根据用户的操作,通过摄像头的Camera ID指示底层(如内核层3840)关闭对应的摄像头。
[0846] 本申请实施例中,用户可以根据自己的需要,动态切换摄像头。例如,如图38所示,相机系统应用3811还用于提供如下功能:在拍照模式或录像模式下,如果用户选择切换摄像头(即点击切换摄像头选项),则可以在拍照或录像的取景界面为用户提供“选择摄像头”的功能,如显示多个第一控件,每个第一控件对应一个摄像头。响应于用户对多个第一控件中第二控件的选择操作,相机系统应用3811可以将预览摄像头(如后置主摄像头)切换为用户选择的第二控件对应的摄像头(如后置长焦摄像头),并呈现摄像头选择后的结果(即刷新视频流)。例如,当预览摄像头是后置主摄像头时,预览视频流是后置主摄像头采集的视频流。响应于用户对该第二控件的点击操作,相机系统应用3811可以将预览摄像头切换为第二控件对应的摄像头(如后置长焦摄像头),预览视频流被刷新为第二控件对应的摄像头(如后置长焦摄像头)采集的视频流。
[0847] 例如,应用层3810可以通过第二控件对应的摄像头的Camera ID指示底层(如内核层3840)启动对应的摄像头,并根据预览摄像头的Camera ID指示底层(如框架层3820)处理该预览摄像头采集的预览视频流。
[0848] 框架层(Framework)3820为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图38所示,框架层可以提供相机API,如Camera API(API 1|API 2)3821、相机服务(Camera Service)423、相机拓展服务(Camera Service Extra)422和硬件开发工具包(hardware software development kit,Hw SDK)3824。
[0849] 其中,Camera API(API 1|API 2)3821作为底层(如硬件抽象层3830)与应用层3810交互的接口。具体的,Camera API(API 1|API 2)3821可以接收来自上层(如应用层
3810)的通知,并通过相机服务423、相机拓展服务422和HwSDK 3824处理该通知。然后,通过HAL层3830指示内核层3840开启闲置摄像头,并通过HAL层3830获得预览摄像头的视频流。
Camera API(API 1|API 2)3821还可以接收来自上层(如应用层3810)摄像头切换通知。该摄像头切换通知包括待切换为预览摄像头的Camera ID。
[0850] HAL层3830用于连接框架层3820和内核层3840。例如,HAL层3830可以在框架层3820和内核层3840之间进行数据透传。当然,HAL层3830也可以对来自底层(即内核层3840)的数据进行处理,然后再传输给框架层3820。例如,HAL层3830可以将内核层3840的关于硬件设备的参数转换为框架层3820和应用层3810可识别的软件程序语言。例如,HAL层3830可以包括HAL3.0。
[0851] 本申请实施例中,HAL层3830可根据来自上层(如框架层3820和应用层3810)的通知管理多个摄像头采集的视频流,如根据上次的通知指示底层(如内核层3840)关闭/开启摄像头的视频流。
[0852] 内核层3840包括相机驱动3841、图像信号处理器ISP 3843和Camera器件3842。该Camera器件3842可以包括多个摄像头,每个摄像头包括相机镜头和图像传感器器等。其中,上述图像信号处理器ISP 3843可以与摄像头(如Camera器件3842)单独设置。在另一些实施例中,上述图像信号处理器ISP 3843可以设置在摄像头(如Camera器件3842)中。
[0853] 其中,图像信号处理器ISP 3843和Camera器件3842是拍摄视频或图片的主要设备。取景环境反射的光信号经过相机镜头照射在图像传感器上可转换为电信号,该电信号经过图像信号处理器ISP 3843的处理,可作为原始参数流(即视频流),由相机驱动3841向上层传输。并且,相机驱动3841还可以接收来自上层的通知(如指示开启或关闭摄像头的通知),根据该通知向Camera器件3842发送功能处理参数流,以开启或关闭对应的摄像头。
[0854] 以下实施例中以上述电子设备200是手机为例,对本申请实施例的方法进行说明。
[0855] 本申请实施例提供一种拍摄控制方法,该方法可以应用于包括摄像头的手机。本申请实施例中摄像头的类型可以包括:主摄像头、长焦摄像头、广角摄像头、超广角摄像头、微距摄像头、鱼眼摄像头、红外摄像头、深度摄像头和黑白摄像头中一种或多种。在这种应用场景中,采用本申请实施例的方法,手机可以在拍照模式或录像模式下,切换使用手机的任意两个摄像头。
[0856] 示例性的,以下实施例中,以手机包括前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头为例,介绍本实施例的方法。如图39所示,该拍摄控制方法可以包括S3901‑S3903:
[0857] S3901、手机显示第一界面。该第一界面是手机拍照或录像的取景界面,该第一界面包括第一摄像头采集的第一预览图像。
[0858] 示例性的,以第一界面是手机拍照的取景界面为例。手机可显示图40A所示的拍照的取景界面(即第一界面)601。该第一界面4001包括第一摄像头(如后置主摄像头)采集的第一预览图像4002。
[0859] S3902、响应于用户在第一界面的第一操作,手机在第一界面显示多个第一控件,每个第一控件对应手机中的一个摄像头,用于触发手机使用对应的摄像头。
[0860] 在一种实现方式中,上述第一界面可以包括摄像头切换选项。该摄像头切换选项用于触发手机切换摄像头。例如,图40A所示的该第一界面4001还包括摄像头切换选项4003,该摄像头切换选项4003用于触发手机切换摄像头。上述第一操作可以是用户对图40A所示的摄像头切换选项4003的点击操作(如单击操作)。
[0861] 在另一种实现方式中,上述第一操作还可以是用户在上述第一界面输入的预设手势,如S形手势或者√手势等。该预设手势可以预先配置在手机中。并且,手机可以在录像的取景界面向用户提示该预设手势,以及该预设手势所触发的功能。
[0862] 例如,手机可接收用户对图40A所示的摄像头切换选项4003的点击操作。一般而言,响应于用户对图40A所示的摄像头切换选项4003的点击操作,手机可将预览摄像头由后置摄像头(如后置主摄像头)切换为前置摄像头(如前置主摄像头),或者可将预览摄像头由前置摄像头(如前置主摄像头)切换为后置摄像头(如后置主摄像头)。也就是说,常规技术仅支持前置摄像头和后置摄像头的切换。
[0863] 而本申请实施例中,响应于用户对图40A所示的摄像头切换选项4003的点击操作,手机可显示图40B所示的拍照的取景界面(即第一界面)4004。如图40B所示,第一界面4004不仅包括第一摄像头采集的第一预览图像4006,还包括多个第一控件4005。例如,该多个第一控件4005可以包括:“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[0864] 其中,本申请实施例中所述的“前置主摄”控件对应于手机的前置主摄像头,用于触发手机显示前置主摄像头采集的预览图像。“前置长焦”控件对应于手机的前置长焦摄像头,用于触发手机显示前置长焦摄像头采集的预览图像。“前置广角”控件对应于手机的前置广角摄像头,用于触发手机显示前置广角摄像头采集的预览图像。
[0865] “后置主摄”控件对应于手机的后置主摄像头,用于触发手机显示后置主摄像头采集的预览图像。“后置长焦”控件对应于手机的后置长焦摄像头,用于触发手机显示后置长焦摄像头采集的预览图像。“后置广角”控件对应于手机的后置广角摄像头,用于触发手机显示后置广角摄像头采集的预览图像。
[0866] 如图40B所示,手机可在手机拍照的取景界面上原本用于显示摄像头切换选项的位置,显示上述多个第一控件4005。当然,该多个第一控件的显示位置和显示方式包括但不限于图40B所示的显示位置和显示方式。
[0867] 例如,响应于用户对图40A所示的摄像头切换选项4003的点击操作,手机可显示图40C所示的拍照的取景界面(即第一界面)607。如图40C所示,第一界面4007不仅包括第一摄像头采集的第一预览图像4009,还包括多个第一控件4008。例如,该多个第一控件4008可以包括:“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[0868] 又例如,响应于用户对图40A所示的摄像头切换选项4003的点击操作,手机可显示图40D所示的拍照的取景界面(即第一界面)610。如图40D所示,第一界面4010不仅包括第一摄像头采集的第一预览图像4011,还包括多个第一控件4012。例如,该多个第一控件4012可以包括:“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[0869] 其中,与图40B所示的第一界面4005不同的是,图40C所示的第一界面4007和图40D所示的第一界面4010还包括摄像头切换选项4003。响应于用户对图40C或图40D所示的摄像头切换选项4003的点击操作,手机可隐藏上述多个第一控件(如多个第一控件4008或多个第一控件4012),显示图40A所示的第一界面4001。
[0870] 在本申请实施例中,手机在拍照的取景界面显示的多个第一控件,至少可以包括以下三种实现方式。
[0871] 实现方式(1):
[0872] 如图40B、图40C或图40D中任一附图所示,多个第一控件中的每个第一控件上显示有对应摄像头的类型指示信息。在本申请实施例中,一个摄像头的类型指示信息用于指示该摄像头的摄像头类型,还可以指示该摄像头为前置摄像头或后置摄像头。
[0873] 例如,如图40B所示,多个第一控件4005中的各个第一控件上分别显示有如下类型指示信息,“前置主摄”、“前置长焦”、“前置广角”、“后置主摄”、“后置长焦”、“后置广角”。其中,类型指示信息“前置主摄”用于指示第一控件对应前置主摄像头。类型指示信息“前置长焦”用于指示第一控件对应前置长焦摄像头。类型指示信息“前置广角”用于指示第一控件对应前置广角摄像头。类型指示信息“后置主摄”用于指示第一控件对应后置主摄像头。类型指示信息“后置长焦”用于指示第一控件对应后置长焦摄像头。类型指示信息“后置广角”用于指示第一控件对应后置广角摄像头。
[0874] 实现方式(2):
[0875] 多个第一控件为多个预览窗,每个预览窗上显示有对应摄像头采集的预览图像。例如,响应于用户对图40A所示的摄像头切换选项4003的点击操作,手机可显示图41A所示的拍照的取景界面(即第一界面)701。如图41A所示,第一界面4101不仅包括第一摄像头采集的第一预览图像708,还包括多个第一控件。例如,图41A可以包括第一控件4102、第一控件4103、第一控件4104、第一控件4105、第一控件4106和第一控件4107。该第一控件4102、第一控件4103、第一控件4104、第一控件4105、第一控件4106和第一控件4107均为预览窗。
[0876] 其中,第一控件4102中显示有后置主摄像头采集的预览图像。第一控件4103中显示有后置广角摄像头采集的预览图像。第一控件4104中显示有后置长焦摄像头采集的预览图像。第一控件4105中显示有前置主摄像头采集的预览图像。第一控件4106中显示有前置广角摄像头采集的预览图像。第一控件4107中显示有前置长焦摄像头采集的预览图像。
[0877] 因此,上述第一控件4102也可以称为“后置主摄”控件,上述第一控件4103也可以称为“后置广角”控件,上述第一控件4104还可以称为“后置长焦”控件;上述第一控件4105还可以称为“前置主摄”控件,上述第一控件4106还可以称为“前置广角”控件,上述第一控件4107还可以称为“前置长焦”控件。手机执行S3902可显示图41B所示的第一界面4109。
[0878] 其中,图41A所示的第一界面4101和图41B所示的第一界面4109还包括摄像头切换选项4003。响应于用户对图41A或图41B所示的摄像头切换选项4003的点击操作,手机可隐藏上述多个第一控件,显示图40A所示的第一界面4001。
[0879] 应理解,在每个第一控件上显示对应摄像头采集的预览图像,可以直观的向用户展示每个摄像头的拍摄效果和拍摄视角等,有利于用户从多个摄像头中选择拍摄效果和拍摄视角等满足用户需求的摄像头。这样,可以提升用户的拍摄体验。
[0880] 实现方式(3):
[0881] 多个第一控件中的每个第一控件上显示有对应摄像头的代理信息。在本申请实施例中,一个摄像头的代理信息可以指示该摄像头为前置摄像头或后置摄像头,还可以包括该摄像头的编号。
[0882] 在一种情况下,摄像头的编号可以是手机为摄像头分配的。例如,摄像头的编号可以是摄像头的Camera ID。不同摄像头的Camera ID不同。在另一种情况下,摄像头的编号可以是用户在手机中为摄像头分配的。不同前置摄像头的编号不同,不同后置摄像头的编号不同。
[0883] 示例性的,响应于用户对图40A所示的摄像头切换选项4003的点击操作,手机可显示图42A所示的拍照的取景界面(即第一界面)4201。如图42A所示,第一界面4201不仅包括第一摄像头采集的第一预览图像4202,还包括多个第一控件4203。例如,以摄像头的编号为1、2、3为例。该多个第一控件4203可以包括“前置摄像头1”控件、“前置摄像头2”控件、“前置摄像头3”控件、“后置摄像头1”控件、“后置摄像头2”控件、“后置摄像头3”控件。
[0884] 其中,代理信息“前置摄像头1”用于指示第一控件(如“前置摄像头1”控件)对应一个前置摄像头,该前置摄像头的编号为1。例如,编号为1是前置摄像头是前置主摄像头。代理信息“前置摄像头2”用于指示第一控件(如“前置摄像头2”控件)对应一个前置摄像头,该前置摄像头的编号为2。例如,编号为2是前置摄像头是前置广角摄像头。代理信息“前置摄像头3”用于指示第一控件(如“前置摄像头3”控件)对应一个前置摄像头,该前置摄像头的编号为3。例如,编号为3是前置摄像头是前置长焦摄像头。
[0885] 代理信息“后置摄像头1”用于指示第一控件(如“后置摄像头1”控件)对应一个后置摄像头,该后置摄像头的编号为1。例如,编号为1是后置摄像头是后置主摄像头。代理信息“后置摄像头2”用于指示第一控件(如“后置摄像头2”控件)对应一个后置摄像头,该后置摄像头的编号为2。例如,编号为2是后置摄像头是后置广角摄像头。代理信息“后置摄像头3”用于指示第一控件(如“后置摄像头3”控件)对应一个后置摄像头,该后置摄像头的编号为3。例如,编号为3是后置摄像头是后置长焦摄像头。
[0886] 其中,图42A所示的第一界面4201还包括摄像头切换选项4003。响应于用户对图42A所示的摄像头切换选项4003的点击操作,手机可隐藏上述多个第一控件(如多个第一控件4203),显示图40A所示的第一界面4001。
[0887] 在上述实施例中,多个第一控件中每个第一控件可以对应手机中的一个摄像头。例如,在前置主摄像头、前置广角摄像头、前置长焦摄像头、后置主摄像头、后置广角摄像头和后置长焦摄像头的情况下,如图40B、图40C、图40D、图41A、图41B或图42A所示的多个第一控件中的每个第一控件对应手机中的一个摄像头。
[0888] 在另一些实施例中,多个第一控件中,可能会有至少两个第一控件对应手机中的同一个摄像头。该至少两个第一控件用于触发手机切换使用该摄像头,并以不同变焦倍率处理并显示该摄像头采集的预览图像。
[0889] 例如,以手机采用上述实现方式(1)显示多个第一控件为例。手机执行S3902可以显示图42B所示的第一界面4205。该第一界面4205中包括多个第一控件4206。该多个第一控件4206包括:“后置长焦1.0x”控件、“后置长焦2.0x”控件、“后置长焦3.0x”控件、“前置主摄”控件、“前置广角”控件、“后置主摄”控件、“前置长焦”控件和“后置广角”控件。
[0890] 又例如,以手机采用上述实现方式(2)显示多个第一控件为例。手机执行S3902可以显示图42C所示的第一界面4207。该第一界面4207中包括多个第一控件。图42C所示的第一界面4207中包括“后置长焦1.0x”控件、“后置长焦2.0x”控件、“后置长焦3.0x”控件、“前置主摄”控件、“前置广角”控件、“后置主摄”控件、“前置长焦”控件和“后置广角”控件。
[0891] 其中,1.0x、2.0x和3.0x均为变焦倍率。“3.0x”表示变焦倍率为3倍。“2.0x”表示变焦倍率为2.0倍。“1.0x”表示变焦倍率为1.0倍。本申请实施例中所述的变焦倍率可以为光学变焦倍率或者数字变焦倍率。响应于用户对图42B或图42C所示的“后置长焦2.x”控件(即第一逻辑控件)的点击操作,手机可以切换使用手机的后置长焦摄像头,并以2.0倍的光学倍率处理并显示该后置长焦摄像头采集的预览图像。响应于用户对图42B或图42C所示的“后置长焦3.0x”控件(即第二逻辑控件)的点击操作,手机可以切换使用手机的后置长焦摄像头,并以3.0倍的变焦倍率处理并显示该后置长焦摄像头采集的预览图像。
[0892] 其中,手机可以针对手机中的部分或全部摄像头显示至少两个不同变焦倍率下的第一控件。同一摄像头的第一控件对应的变焦倍率可以预先配置在手机中,或者可以由用户在手机中设置。
[0893] 需要说明的是,本申请实施例所述的手机(即电子设备)可以包括一个摄像头(即一个物理摄像头)。在这种情况下,手机在第一界面所显示的多个第一控件可以对应该物理摄像头的多个逻辑摄像头。每个逻辑摄像头是该物理摄像头在不同变焦倍率下实现的。
[0894] 例如,多个第一控件包括第一逻辑控件(如图42B或图42C所示的“后置长焦2.x”控件)和第二逻辑控件(如图42B或图42C所示的“后置长焦3.0x”控件)。第一逻辑控件用于触发电子设备使用第一逻辑摄像头,第二逻辑控件用于触发电子设备使用第二逻辑摄像头。其中,第一逻辑摄像头和第二逻辑摄像头是电子设备的同一个物理摄像头(如后置长焦摄像头)在不同变焦倍率下实现的。
[0895] 在一些实施例中,为了区分手机当前的预览摄像头(如第一摄像头)和手机中的其他摄像头,手机可以以区别于其他摄像头对应的第一控件的方式,显示手机的预览摄像头对应的第一控件。
[0896] 其中,在手机执行S3901‑S3902的过程中,手机的预览摄像头是第一摄像头。因此,手机执行S3902在第一界面显示多个第一控件时,可以以第一显示方式显示第一摄像头对应的第一控件,以第二显示方式显示除第一摄像头之外其他摄像头对应的第一控件。其中,第一显示方式与第二显示方式不同。通过第一显示方式和第二显示方式,用户可以识别出手机当前的预览摄像头是手机中的哪一个摄像头。
[0897] 例如,以该第一摄像头(即预览摄像头)是手机的后置主摄像头为例。如图40B、图40C或图40D中任一附图所示,手机可以以第一显示方式(如黑底白字的显示方式)显示后置主摄像头对应的第一控件,如“后置主摄”控件;手机可以以第二显示方式(如白底黑字的显示方式)显示其他摄像头对应的第一控件,如“后置长焦”控件、“后置广角”控件、“前置主摄”控件、“前置长焦”控件和“前置广角”控件。
[0898] 如图41A或图41B所示,手机可以以第一显示方式(如加粗黑框的显示方式)显示后置主摄像头对应的第一控件,如“后置主摄”控件;手机可以以第二显示方式(如未加粗黑框的显示方式)显示其他摄像头对应的第一控件,如“后置长焦”控件、“后置广角”控件、“前置主摄”控件、“前置长焦”控件和“前置广角”控件。
[0899] 其中,第一显示方式和第二显示方式包括但不限于上述示例所列举的显示方式,本申请实施例第一显示方式和第二显示方式的具体形式不做限制。只要通过两种不同的显示方式,使用户可以识别出手机当前的预览摄像头是手机中的哪一个摄像头即可。
[0900] 在另一些实施例中,手机还可以根据预览摄像头采集的图像和/或手机所处的场景信息等,向用户推荐摄像头。例如,如果预览摄像头采集的图像为建筑物或风景的图像等,手机则可以推荐用户使用后置广角摄像头。其中,上述场景信息可以包括位置信息和时间信息等。又例如,如果手机的位置信息指示手机位于风景区,手机则可以推荐用户使用后置广角摄像头。又例如,在手机使用前置摄像头作为预览摄像头的情况下,如果该预览摄像头采集的图像中包括人脸图像,手则可以推荐用户使用前置广角摄像头。又例如,如果预览摄像头采集的图像中拍摄对象的尺寸较小,手机则可以推荐用户使用后置长焦摄像头。并且,手机还可以根据预览摄像头采集的图像中拍摄对象的尺寸,向用户推荐摄像头的变焦倍率。例如,当预览摄像头采集的图像中包括人脸图像,且该人脸图像的尺寸是整个预览图像的尺寸的1/2,手机则可以推荐用户使用变焦倍率4.0x。
[0901] 以手机推荐用户使用后置长焦摄像头为例。如图42D所示,手机可以发出推荐提示信息4204,如“建议切换使用后置长焦摄像头!”。需要说明的是,手机根据预览摄像头采集的图像和/或手机所处的场景信息等,向用户推荐摄像头的具体方法,可以参考常规技术中的相关描述,本申请实施例这里不予赘述。
[0902] S3903、响应于用户对多个第一控件中第二控件的点击操作,手机将第一界面中第一摄像头采集的第一预览图像切换为第二摄像头采集的第二预览图像。
[0903] 其中,上述第二控件是多个第一控件中,第二摄像头对应的第一控件。该第二摄像头与第一摄像头不同。该第二摄像头可以是上述电子设备的摄像头中、除第一摄像头之外的任一摄像头。例如,在第一摄像头是手机的后置主摄像头的情况下,该第二摄像头可以是前置主摄像头、前置广角摄像头、前置长焦摄像头、后置广角摄像头或者后置长焦摄像头中的任一种摄像头。
[0904] 以下实施例中,以第一摄像头是手机的后置主摄像头,第二摄像头是前置广角摄像头为例。在这种情况下,第二控件可以是图40B、图40C、图40D、图41A或图41B中任一附图所示的“前置广角”控件,或者该第二控件可以是图42A所示的“前置摄像头2”控件。
[0905] 例如,响应于用户对图40B所示的“前置广角”控件(即第二控件)的点击操作,手机可显示图43所示的第一界面4301。该第一界面4301中包括第二摄像头(如前置广角摄像头)采集的第二预览图像4302。也就是说,响应于用户对图40B所示的“前置广角”控件的点击操作,手机将第一界面中的第一预览图像4002切换为第二预览图像4302。
[0906] 又例如,响应于用户对图41A所示的“前置广角”控件(即第二控件)的点击操作,手机可显示图44所示的第一界面4401。该第一界面4401中包括第二摄像头(如前置广角摄像头)采集的第二预览图像4402。也就是说,响应于用户对图41A所示的“前置广角”控件的点击操作,手机将第一界面中的第一预览图像702切换为第二预览图像4402。
[0907] 其中,图44所示的第一界面4401还包括摄像头切换选项4003。响应于用户对图44所示的摄像头切换选项4003的点击操作,手机可隐藏上述多个第一控件(如多个第一控件4403),显示图45所示的第一界面4501。该第一界面4501包括第二摄像头采集的第二预览图像4502,不包括多个第一控件。
[0908] 应注意,如图43或图44所示,响应于用户对第二控件的点击操作,手机可以以第一显示方式(如黑底白字的显示方式)显示第二摄像头对应的第一控件(即第二控件),如“前置广角”控件;手机可以以第二显示方式(如白底黑字的显示方式)显示其他摄像头对应的第一控件,如“后置主摄”控件、“后置长焦”控件、“后置广角”控件、“前置主摄”控件和“前置长焦”控件。
[0909] 在另一些实施例中,响应于用户对图40B、图40C、图40D、图41A或图41B中任一附图所示的“前置广角”控件或者图42A所示的“前置摄像头2”控件(即第二控件)的点击操作,手机可显示图45所示的第一界面4501。该第一界面4501包括第二摄像头采集的第二预览图像4502。也就是说,响应于用户对第二控件的点击操作,手机将第一界面中的第一预览图像切换为第二预览图像4502。需要注意的是,图45所示的第一界面4501中不包括多个第一控件。
[0910] 本申请实施例中,手机拍照的过程中,可以接收用户对第一界面中摄像头切换选项的点击操作。然后,手机可以响应于用户对摄像头切换选项的点击操作,可以在第一界面显示多个第一控件。其中,每个第一控件对应手机中的一个摄像头。如此,手机便可以接收用户对任一个第一控件(如第二控件)的点击操作,切换使用手机中的摄像头。采用本申请实施例的方法,可以在拍照的过程中按照用户的需求动态选择摄像头,以满足用户在不同场景下的拍摄需求,可以提升用户的拍摄体验。
[0911] 在另一些实施例中,以上述第一界面是手机录像的取景界面为例。手机执行S3901,可显示图12图46A所示的录像的取景界面(即第一界面)1201。该第一界面120界面
4601包括第一摄像头(如后置主摄像头)采集的第一预览图像120图像4602。该第一界面120界面4601还包括摄像头切换选项4603,该摄像头切换选项4603用于触发手机切换摄像头。
需要注意的是,上述第一界面是手机还未开始录像的取景界面。
[0912] 然后,手机可接收用户对图46A所示的摄像头切换选项4603的点击操作。一般而言,响应于用户对图46A所示的摄像头切换选项4003的点击操作,手机可将预览摄像头由后置摄像头(如后置主摄像头)切换为前置摄像头(如前置主摄像头),或者可将预览摄像头由前置摄像头(如前置主摄像头)切换为后置摄像头(如后置主摄像头)。也就是说,常规技术仅支持前置摄像头和后置摄像头的切换。
[0913] 而本申请实施例中,手机执行S3902,响应于用户对图46A所示的摄像头切换选项4603的点击操作,手机可显示图46B所示的录像的取景界面(即第一界面)1204。如图46B所示,第一界面4604不仅包括第一摄像头采集的第一预览图像4605,还包括多个第一控件
4605。例如,该多个第一控件4606可以包括:“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[0914] 如图46B所示,手机可在手机录像的取景界面的取景框中显示多个第一控件4606。当然,该多个第一控件的显示位置和显示方式包括但不限于图46B所示的显示位置和显示方式。例如,手机可在手机录像的取景界面上原本用于显示摄像头切换选项的位置,显示上述多个第一控件4606,附图未示出。
[0915] 在本申请实施例中,手机在录像的取景界面显示的多个第一控件,至少可以包括上述实现方式(1)‑实现方式(3)。
[0916] 例如,在上述实现方式(1)中,如图46B所示,多个第一控件中的每个第一控件上显示有对应摄像头的类型指示信息。在本申请实施例中,一个摄像头的类型指示信息用于指示该摄像头的摄像头类型,还可以指示该摄像头为前置摄像头或后置摄像头。
[0917] 例如,如图46B所示,多个第一控件4606上的各个第一控件上分别显示有如下类型指示信息,“前置主摄”、“前置长焦”、“前置广角”、“后置主摄”、“后置长焦”、“后置广角”。其中,类型指示信息“前置主摄”用于指示第一控件对应前置主摄像头。类型指示信息“前置长焦”用于指示第一控件对应前置长焦摄像头。类型指示信息“前置广角”用于指示第一控件对应前置广角摄像头。类型指示信息“后置主摄”用于指示第一控件对应后置主摄像头。类型指示信息“后置长焦”用于指示第一控件对应后置长焦摄像头。类型指示信息“后置广角”用于指示第一控件对应后置广角摄像头。
[0918] 又例如,在上述实现方式(2)中,响应于用户对图46A所示的摄像头切换选项4603的点击操作,手机可显示图47所示的拍照的取景界面(即第一界面)4701。如图47所示,第一界面4701不仅包括第一摄像头采集的第一预览图像4708,还包括多个第一控件。例如,图46A可以包括第一控件4702、第一控件4703、第一控件4704、第一控件4705、第一控件4706和第一控件4707。其中,第一控件4702也可以称为“后置主摄”控件,第一控件4703也可以称为“后置广角”控件,第一控件4704还可以称为“后置长焦”控件;第一控件4705还可以称为“前置主摄”控件,第一控件4706还可以称为“前置广角”控件,第一控件4707还可以称为“前置长焦”控件。
[0919] 应理解,在每个第一控件上显示对应摄像头采集的预览图像,可以直观的向用户展示每个摄像头的拍摄效果和拍摄视角等,有利于用户从多个摄像头中选择拍摄效果和拍摄视角等满足用户需求的摄像头。这样,可以提升用户的拍摄体验。
[0920] 又例如,在实现方式(3)中,响应于用户对图46A所示的摄像头切换选项4603的点击操作,手机可显示图48所示的拍照的取景界面(即第一界面)4801。如图48所示,第一界面4801不仅包括第一摄像头采集的第一预览图像4802,还包括多个第一控件4803。例如,以摄像头的编号为1、2、3为例。该多个第一控件4803可以包括“前置摄像头1”控件、“前置摄像头
2”控件、“前置摄像头3”控件、“后置摄像头1”控件、“后置摄像头2”控件、“后置摄像头3”控件。其中,“前置摄像头1”控件、“前置摄像头2”控件、“前置摄像头3”控件、“后置摄像头1”控件、“后置摄像头2”控件、“后置摄像头3”控件的详细描述,可以参考上述实施例中的相关内容,本实施例这里不予赘述。
[0921] 其中,图46B所示的第一界面4604、图47所示的第一界面4701和图48所示的第一界面4801还包括摄像头切换选项4603。响应于用户对图46B、图47或图48所示的摄像头切换选项4603的点击操作,手机可隐藏上述多个第一控件,显示图46A所示的第一界面4601。
[0922] 在一些实施例中,在手机录像的取景界面中,手机执行S3902在第一界面显示多个第一控件时,可以以第一显示方式显示第一摄像头对应的第一控件,以第二显示方式显示除第一摄像头之外其他摄像头对应的第一控件。
[0923] 例如,以该第一摄像头(即预览摄像头)是手机的后置主摄像头为例。如图46B所示,手机可以以第一显示方式(如黑底白字的显示方式)显示后置主摄像头对应的第一控件,如“后置主摄”控件;手机可以以第二显示方式(如白底黑字的显示方式)显示其他摄像头对应的第一控件,如“后置长焦”控件、“后置广角”控件、“前置主摄”控件、“前置长焦”控件和“前置广角”控件。
[0924] 如图47所示,手机可以以第一显示方式(如加粗黑框的显示方式)显示后置主摄像头对应的第一控件,如“后置主摄”控件;手机可以以第二显示方式(如未加粗黑框的显示方式)显示其他摄像头对应的第一控件,如“后置长焦”控件、“后置广角”控件、“前置主摄”控件、“前置长焦”控件和“前置广角”控件。
[0925] 其中,第一显示方式和第二显示方式包括但不限于上述示例所列举的显示方式,本申请实施例第一显示方式和第二显示方式的具体形式不做限制。只要通过两种不同的显示方式,使用户可以识别出手机当前的预览摄像头是手机中的哪一个摄像头即可。
[0926] 之后,手机可接收并响应用户对多个第一控件中第二控件(如图46B所示的“前置广角”控件、图47所示的“前置广角”控件4706或图48所示的“前置摄像头2”控件)的点击操作。
[0927] 例如,手机执行S3903,响应于用户对图46B所示的“前置广角”控件的点击操作,可显示图49A所示的第一界面4901。该第一界面4901中包括第二摄像头(如前置广角摄像头)采集的第二预览图像4902。也就是说,响应于用户对图46B所示的“前置广角”控件的点击操作,手机将第一界面中的第一预览图像4605切换为第二预览图像4902。
[0928] 其中,图49A所示的第一界面4901还包括摄像头切换选项4603。响应于用户对图49A所示的摄像头切换选项4603的点击操作,手机可隐藏上述多个第一控件(如多个第一控件4403),显示图49B所示的第一界面4904。该第一界面4904包括第二摄像头采集的第二预览图像4905,不包括多个第一控件。
[0929] 应注意,如图49A所示,响应于用户对第二控件的点击操作,手机可以以第一显示方式(如黑底白字的显示方式)显示第二摄像头对应的第一控件(即第二控件),如“前置广角”控件;手机可以以第二显示方式(如白底黑字的显示方式)显示其他摄像头对应的第一控件,如“后置主摄”控件、“后置长焦”控件、“后置广角”控件、“前置主摄”控件和“前置长焦”控件。
[0930] 在另一些实施例中,响应于用户对图46B所示的“前置广角”控件、图47所示的“前置广角”控件4706或者图48所示的“前置摄像头2”控件(即第二控件)的点击操作,手机可显示图49B所示的第一界面4904。该第一界面4904包括第二摄像头采集的第二预览图像4905。也就是说,响应于用户对第二控件的点击操作,手机将第一界面中的第一预览图像切换为第二预览图像4905。需要注意的是,图49B所示的第一界面4905中不包括多个第一控件。
[0931] 本申请实施例中,手机显示录像的取景界面(即第一界面)时,可以接收用户对第一界面中摄像头切换选项的点击操作。然后,手机可以响应于用户对摄像头切换选项的点击操作,可以在第一界面显示多个第一控件。其中,每个第一控件对应手机中的一个摄像头。如此,手机便可以接收用户对任一个第一控件(如第二控件)的点击操作,切换使用手机中的摄像头。采用本申请实施例的方法,可以在录像时按照用户的需求动态选择摄像头,以满足用户在不同场景下的拍摄需求,可以提升用户的拍摄体验。
[0932] 在另一些实施例中,手机执行S3902,响应于用户对摄像头切换选项的点击操作,如果手机的预设功能已开启,手机则可以在第一界面显示多个第一控件。但是,如果手机的预设功能还未开启,手机则可以直接将预览摄像头由后置摄像头(如后置主摄像头)切换为前置摄像头(如前置主摄像头),或者将预览摄像头由前置摄像头(如前置主摄像头)切换为后置摄像头(如后置主摄像头)。即直接进行前置摄像头和后置摄像头的切换。
[0933] 具体的,上述S3902可以包括:响应于用户对摄像头切换选项的点击操作,如果手机的预设功能已开启,手机则在第一界面显示多个第一控件。该预设功能是手机在拍照或录像的取景界面进行多摄像头切换的功能。
[0934] 在本申请实施例中,手机可以通过以下任一种实现方式,开启上述预设功能,即录制视频的过程中切换摄像头的功能。
[0935] 实现方式(a):手机响应于用户在手机的通知栏输入的开启预设功能的操作,开启预设功能。
[0936] 示例性的,手机响应于用户在手机的显示屏(如触摸屏)的顶部的下拉操作,可显示图50所示的通知栏5001。该通知栏5001包括预设功能开关,如“多摄像头切换”开关5002。响应于用户对该“多摄像头切换”开关5002的开启操作,手机可启动预设功能。响应于用户对该“多摄像头切换”开关5002的关闭操作,手机可关闭预设功能。
[0937] 图50所示的通知栏5001还包括手机的“飞行模式”开关、“WLAN”选项、“蓝牙”选项、“移动网络”选项和“手电筒”开关等。其中,这些开关和选项的具体功能,可以参考常规技术中对通知栏的各个开关和选项的详细介绍,这里不予赘述。
[0938] 实现方式(b):手机响应于用户在设置界面输入的开启预设功能的操作,开启预设功能。
[0939] 示例性的,如图51A所示,手机的设置界面5101包括预设功能开关,如“多摄像头切换”开关5102。响应于用户对该“多摄像头切换”开关5102的开启操作,手机可启动预设功能。响应于用户对该“多摄像头切换”开关5102的关闭操作,手机可关闭预设功能。
[0940] 图51A所示的设置界面5101还包括手机的“飞行模式”开关、“WLAN”选项、“蓝牙”选项和“移动网络”选项等。其中,这些开关和选项的具体功能,可以参考常规技术中对设置界面的各个开关和选项的详细介绍,这里不予赘述。
[0941] 在该实现方式(b)中,如图51B所示,手机的设置界面5103还包括预设选项,如“多摄像头切换”选项5104。响应于用户对该“多摄像头切换”选项5104的点击操作,手机可显示图51C所示的多摄像头切换界面5105。该多摄像头切换界面5105包括预设功能开关,如“多摄像头切换”开关5106。响应于用户对该“多摄像头切换”开关5106的开启操作,手机可启动预设功能。响应于用户对该“多摄像头切换”开关5106的关闭操作,手机可关闭预设功能。
[0942] 例如,手机开启预设功能后,响应于用户对图40A所示的第一界面4001中摄像头切换选项4003的点击操作,手机可显示图40B、图40C、图40D、图41A、图41B或图42A所示的第一界面。手机关闭预设功能后,响应于用户对图40A所示的第一界面4001中摄像头切换选项4003的点击操作,手机可显示图37B所示的拍照的取景界面3703。
[0943] 又例如,手机开启预设功能后,响应于用户对图46A所示的第一界面4601中摄像头切换选项4603的点击操作,手机可显示图46B、图47或图48所示的第一界面。手机关闭预设功能后,响应于用户对图46A所示的第一界面4601中摄像头切换选项4603的点击操作,手机可显示图37B所示的拍照的取景界面3703。
[0944] 本实施例中,手机响应于用户对摄像头切换选项的点击操作,在手机的预设功能已开启的情况下,才可以在第一界面显示多个第一控件。如此,便可以接收用户对该多个第一控件中任一第一控件的点击操作,切换摄像头,以为用户提供在拍照或录像的过程中切换摄像头的服务。
[0945] 在一些实施例中,手机在第一界面(如手机拍照或录像的取景界面)显示的多个第一控件的实现方式,如实现方式(1)、实现方式(2)或实现方式(3),可以预先配置在手机中。例如,可以预先在手机中配置,采用上述实现方式(1),在第一控件显示对应摄像头的类型指示信息。又例如,可以预先在手机中配置,采用上述实现方式(2),在第一控件显示对应摄像头采集的预览图像。又例如,可以预先在手机中配置,采用上述实现方式(3),在第一控件显示对应摄像头的代理信息。
[0946] 在另一些实施例中,可以由用户选择手机在第一界面显示的多个第一控件的实现方式。在一种设计中,手机可以接收用户在“设置”应用中对上述实现方式(1)、实现方式(2)或实现方式(3)的选择操作,确定第一控件的显示内容。例如,手机可显示图51B所示的设置界面5103;响应于用户对设置界面5103中“多摄像头切换”选项5104的点击操作,手机可显示图51C所示的多摄像头切换界面5105。该多摄像头切换界面5105包括第一选项(如“显示摄像头代理”选项)5108、第二选项(如“显示摄像头类型”选项)5109和第三选项(如“显示摄像头预览画面”选项)5110。然后,手机可以接收用户对多摄像头切换界面5105中第一选项5108、第二选项5109或第三选项5110中至少一项的选择操作。
[0947] 在另一些实施例中,响应于用户对摄像头切换选项的点击操作,可以由用户选择手机在第一界面显示的多个第一控件的实现方式。例如,响应于用户对图40A所示的摄像头切换选项的点击操作603的点击操作,手机可以先显示图51C所示的多摄像头切换界面5105。然后,手机可以接收用户对多摄像头切换界面5105中第一选项5108、第二选项5109或第三选项5110中至少一项的选择操作。响应于用户对多摄像头切换界面5105中第一选项
5108、第二选项5109或第三选项5110中至少一项的选择操作,手机可以在第一界面显示多个第一控件,并按照用户的选择在第一控件显示摄像头的代理信息、类型指示信息或预览图像。
[0948] 其中,如果手机接收到用户对第一选项(如“显示摄像头代理”选项)5108的选择操作,手机则可以采用上述实现方式(3),在第一控件显示摄像头的代理信息。如果手机接收到用户对第二选项(如“显示摄像头类型”选项)5109的选择操作,手机则可以采用上述实现方式(1),在第一控件显示摄像头的类型指示信息。如果手机接收到用户对第三选项(如“显示摄像头预览画面”选项)5110的选择操作,手机则可以采用上述实现方式(2),在第一控件显示摄像头采集的预览图像。
[0949] 需要说明的是,手机可以接收用户对多摄像头切换界面5105中第一选项5108、第二选项5109或第三选项5120中任一个选项的点击操作,也可以接收用户对第一选项5108、第二选项5109或第三选项5120中至少两个选项的点击操作。例如,假设用户选择了第二选项5109或第三选项5120;那么,手机则可以显示图41B、图42C或图47所示的第一界面。
[0950] 在另一些实施例中,响应于用户对摄像头切换选项的点击操作,可以由用户选择手机是否在第一界面手机在第一界面显示哪些物理摄像头对应的第一控件,并选择手机是否显示同一物理摄像头的不同变焦倍率对应的第一控件。
[0951] 例如,响应于用户对图40A所示的摄像头切换选项的点击操作603的点击操作,手机可以先显示图51D所示的多摄像头切换界面5111。相比于上述多摄像头切换界面5105,多摄像头切换界面5111还包括“选择相机”选项5112。然后,手机可以接收用户对“选择相机”选项5112的点击操作。响应于用户对“选择相机”选项5112的点击操作,手机可以显示图51E所示的相机设置界面5113。该相机设置界面5113包括提示信息5114。该提示信息5114用于提示用户在相机设置界面5113设置手机显示哪些物理摄像头对应的第一控件,并设置手机显示不同变焦倍率的逻辑相机对应的第一控件。例如,该提示信息5114可以为“请选择待使用的物理摄像头,并设置物理摄像头的变焦倍率”。
[0952] 相机设置界面5113还包括手机中多个物理摄像头的设置选项,如后置主摄像头的设置选项5115、后置长焦摄像头的设置选项5116、后置广角摄像头的设置选项5117和前置主摄像头的设置选项5118等。其中,手机可以接收用户对一个或多个物理摄像头的设置选项的选择操作,在第一界面显示用户选择的物理摄像头对应的第一控件。
[0953] 手机还可以接收用户对任一个物理摄像头的设置选项的设置操作(如单击操作、双击操作或者长按操作);响应于用户对任一个物理摄像头的设置选项的设置操作,手机还可以显示该物理摄像头的变焦倍率设置界面。该物理摄像头的变焦倍率设置界面可以包括手机中预先设定的一个或多个变焦倍率设置项。
[0954] 例如,手机响应于用户对图51E所示的后置主摄像头的设置选项5115的设置操作,可以显示图51F所示的后置主摄像头的变焦倍率设置界面5119。该变焦倍率设置界面5119提示信息5120,如“请设置后置摄像头的变焦倍率”。该变焦倍率设置界面5119包括5X设置项5121、3X设置项5122和2X设置项5123等。可选的,该变焦倍率设置界面5119还可以“自定义变焦倍率”设置项5124。响应于用户对该“自定义变焦倍率”设置项5124,手机可以接收用户自定义设置的变焦倍率。
[0955] 综上所述,通过上述方案,手机可以根据用户的设置,在第一界面显示手机中部分或全部物理摄像头对应的第一控件;和/或,一个或多个物理摄像头不同变焦倍率对应的第一控件。当然,手机还可以根据用户的设置,在第一界面显示一个或多个逻辑摄像头对应的第一控件,本申请实施例对此不作限制。
[0956] 逻辑相机(变焦倍率)开关5114被开启后,逻辑相机设置界面5113还可以手机中各个摄像头的变焦倍率设置选项,如后置主摄像头的变焦倍率设置选项5115、后置长焦摄像头的变焦倍率设置选项5116和后置广角摄像头的变焦倍率设置选项5117等。手机可以接收用户对逻辑相机设置界面5113中各个摄像头的变焦倍率设置选项的设置操作,设置各个物理摄像头对应的逻辑摄像头的变焦倍率。
[0957] 在一些实施例中,结合上述实现方式(1),手机在第一控件中显示摄像头的类型指示信息。也就是说,在实现方式(1)中,第一控件中不需要显示摄像头的预览图像。因此,手机执行S3902,响应于用户对摄像头切换选项的点击操作,可以不启动多个摄像头中除第一摄像头之外的其他摄像头。具体的,手机可以响应于用户对第二控件的点击操作,可以启动该第二控件对应的第二摄像头。
[0958] 本实施例这里结合图38,介绍手机采用实现方式(1)的方式,执行本申请提供的拍摄控制方法的具体流程。
[0959] 手机接收到用户对第二控件的点击操作后,在图51G中的5121所示“用户选择摄像头类型”(如用户选择图51C所示的“显示摄像头类型”选项5109)的情况下,手机可以执行图51G所示的5122“应用控制系统确定用户选择的第二控件对应的第二摄像头的Camera ID”。
其中,该应用控制系统可以包括图38所示的应用程序层410和应用程序框架层3821。
[0960] 然后,应用控制系统向底层控制系统通知该第二摄像头的Camera ID。例如,该底层控制系统可以是图38所示的内核层3840。其中,应用控制系统可以通过硬件抽象层HAL 3830向底层控制系统通知该第二摄像头的Camera ID。
[0961] 之后,手机可以执行图51G所示的5123“底层控制系统判断预览摄像头的Camera ID与第二控件对应的摄像头的Camera ID是否一致”。如果一致,手机则可以执行图51G所示的5126“不切换摄像头”。如果不一致,手机则可以执行图51G所示的5124,由底层控制系统“将预览摄像头切换为第二摄像头,并关闭原预览摄像头(即第一摄像头)”。
[0962] 最后,手机可执行图51G所示的5125,由底层控制系统“通知应用控制系统显示第二摄像头的视频流”。
[0963] 在一些实施例中,结合上述实现方式(2),手机在第一控件中显示摄像头采集的预览图像。因此,在这种现实方式中,手机执行S3902,响应于用户对摄像头切换选项的点击操作,便可以启动多个摄像头中除第一摄像头之外的其他摄像头。
[0964] 本实施例这里结合图38,介绍手机采用实现方式(2)的方式,执行本申请提供的拍摄控制方法的具体流程。
[0965] 手机接收到用户对第二控件的点击操作后,在图51H中的5131所示“用户选择摄像头预览”(如用户选择图51C所示的“显示摄像头预览画面”选项5110)的情况下,手机可以执行图51H所示的5132“应用控制系统确定所有摄像头的Camera ID”。应用控制系统可以向底层控制系统通知所有摄像头的Camera ID。
[0966] 然后,手机可以执行图51H所示的5133“底层控制系统开启所有摄像头(即开启所有摄像头的视频流)”。底层控制系统可以将所有摄像头的视频流送显,手机执行图51H所示的5134“应用控制系统显示所有摄像头的视频流”。如此,用户则可以按照需求选择视频流,如图51H中的5135所示“用户按需选择第二控件对应的摄像头的视频流”。之后,手机可执行5136“应用控制系统确定用户选择的第二控件对应的第二摄像头的Camera ID”。
[0967] 最后,应用控制系统可以向底层控制系统通知该第二摄像头的Camera ID。如此,手机可执行5137“底层控制系统将第二摄像头作为预览摄像头,在取景界面显示第二摄像头采集的视频流”,以及5138“底层控制系统关闭第二摄像头之前的其他所有摄像头(即关闭其他所有摄像头的视频流)”。
[0968] 在一些实施例中,结合上述实现方式(3),手机在第一控件中显示摄像头的代理信息。也就是说,在实现方式(2)中,第一控件中不需要显示摄像头的预览图像。因此,手机执行S3902,响应于用户对摄像头切换选项的点击操作,可以不启动多个摄像头中除第一摄像头之外的其他摄像头。具体的,手机可以响应于用户对第二控件的点击操作,可以启动该第二控件对应的第二摄像头。
[0969] 本实施例这里结合图38,介绍手机采用实现方式(3)的方式,执行本申请提供的拍摄控制方法的具体流程。
[0970] 手机接收到用户对第二控件的点击操作后,在图51I中的5141所示“用户选择摄像头代理”(如用户选择图51C所示的“显示摄像头代理”选项5108)的情况下,手机可以执行图51I所示的5142“应用控制系统确定用户选择的第二控件对应的第二摄像头的Camera ID”。
然后,应用控制系统向底层控制系统通知该第二摄像头的Camera ID。
[0971] 然后,手机可以执行图51I所示的5143“底层控制系统判断预览摄像头的Camera ID与第二控件对应的摄像头的Camera ID是否一致”。如果一致,手机则可以执行图51I所示的5146“不切换摄像头”。如果不一致,手机则可以执行图51I所示的5144,由底层控制系统“将预览摄像头切换为第二摄像头,并关闭原预览摄像头(即第一摄像头)”。
[0972] 最后,手机可执行图51I所示的5145,由底层控制系统“通知应用控制系统显示第二摄像头的视频流”。
[0973] 一般而言,手机拍照或录像的过程中,只有一个摄像头开启以采集图像。这样,手机在拍照或录像的过程中,如果手机要将预览摄像头由第一摄像头切换为第二摄像头,则启动第二摄像头需要一定的时间,则取景界面可能会出现短时间(如1秒)的黑屏或空白,影响用户体验。例如,手机拍照的过程中,只开启第一摄像头的情况下,响应于用户对上述第二控件的点击操作,手机可显示图52A所示的拍照的取景界面5201(如显示1秒),然后再自动显示图45所示的手机拍照的取景界面。又例如,手机录像的过程中,只开启第一摄像头的情况下,响应于用户对上述第二控件的点击操作,手机可显示图52B所示的录像的取景界面5202(如显示1秒),然后再自动显示图49B所示的手机录像的取景界面。
[0974] 为了在手机拍照或录像时,实现摄像头的无感切换,在上述实现方式(1)‑实现方式(3),中,手机可以提前启动第二摄像头,而不是响应于用户对第二控件的点击操作,才启动第二摄像头以采集图像。
[0975] 具体的,手机响应于用户对S3901中所述的第一界面中摄像头切换选项的点击操作,便可以启动手机中的所有摄像头。其中,手机执行S3901显示第一界面时,手机中的第一摄像头已启动;因此,响应于用户对S3901中所述的第一界面中摄像头切换选项的点击操作,手机可启动手机中除第一摄像头之外的其他所有摄像头。
[0976] 应理解,如果手机接收到用户对S3901中所述的第一界面中摄像头切换选项的点击操作,则表示该用户想要切换手机的摄像头。但是,手机接收到用户对摄像头切换选项的点击操作后,并不能明确用户想要切换使用手机的哪个摄像头。在这种情况下,为了实现切换摄像头图时,第一界面中的预览图像的无缝切换,手机可以启动所有摄像头。这样,当手机接收到用户对第二控件的点击操作后,便可以实现第一界面中的预览图像的无缝切换。例如,响应于用户对上述第二控件的点击操作,手机可直接显示图45所示包括第二预览图像4502的第一界面4501或者图49B所示包括第二预览图像4905的第一界面4904。
[0977] 如此,无论手机切换使用哪一个摄像头,都不会因为启动摄像头需要一定时间使得取景界面的出现短时间(如1秒)的黑屏或空白。采用本方案,可以在手机拍照或录像的过程中,实现摄像头的无感切换,可以提升用户的拍摄体验。
[0978] 在另一些实施例中,为了降低手机的功耗,响应于用户对第二控件的点击操作,手机可以关闭电子设备的摄像头中除第二摄像头之外的其他摄像头。
[0979] 应理解,手机接收到用户对第二控件的点击操作后,便可以明确用户想要使用第二摄像头。此时,关闭手机中除第二摄像头之外的其他摄像头,可降低手机的功耗。
[0980] 在另一些实施例中,本申请实施例的方法还可以应用于手机的多景拍摄场景。其中,手机在多景拍摄场景下,可以显示多个取景框,每个取景框可显示一个摄像头采集的预览图像。例如,手机在多景拍摄场景下,可显示图53A所示的拍照或录像的取景界面。
[0981] 如图53A所示,手机可显示两个取景框,取景框5301显示前置广角摄像头采集的第一预览图像5302,取景框5303显示后置广角摄像头采集的第一预览图像5304。取景框5301中包括拍摄按钮(如拍照按钮或开始录制按钮)5306和摄像头切换选项5305。取景框5302中包括拍摄按钮(如拍照按钮或开始录制按钮)5307和摄像头切换选项5308。
[0982] 其中,手机可以针对取景框5301和取景框5303,分别执行上述方法,按照用户的需求切换摄像头。例如,手机响应于用户对图53A所示的取景框5301中摄像头切换选项5305的点击操作,可显示图53B所示的取景界面。
[0983] 图53B所示的取景界面包括取景框5301和取景框5303。取景框5301仍显示前置广角摄像头采集的第一预览图像5302。取景框5303仍显示后置广角摄像头采集的第一预览图像5304。
[0984] 与图53A不同的是,图53B所示的取景框5301还包括多个第一控件5309,如“后置主摄”控件、“后置广角”控件、“后置长焦”控件、“前置主摄”控件、“前置广角”控件和“前置长焦”控件。其中,如图53B所示,手机以显示方式1(即第一显示方式,如特别加粗黑框的方式)显示“前置广角”控件1913,以显示方式2(即第二显示方式,如未加粗黑框的方式)显示“后置主摄”控件、“后置长焦”控件、“前置主摄”控件和“前置长焦”控件,以显示方式3(如一般加粗黑框的方式)显示“后置广角”控件1912。其中,本申请实施例中,以显示方式1显示第一控件(如图53B所示的“前置广角”控件1913)用于指示该第一控件为对应取景框(如取景框5301)所显示的预览图像对应的摄像头(如前置广角摄像头)。以显示方式3显示第一控件(如图53B所示的“后置广角”控件1912)用于指示该第一控件为对应取景框(如取景框5303)所显示的预览图像对应的摄像头(如后置广角摄像头)。
[0985] 其中,以显示方式1和显示方式3显示的第一控件对应的摄像头采集的预览图像,已经显示在手机的取景界面中。因此,一般而言,以显示方式1和显示方式3显示的第一控件对应的摄像头,是取景框中不可切换的摄像头。在另一些情况下,在一个取景框中,以显示方式1显示的第一控件对应的摄像头,是该取景框中不可切换的摄像头;而以显示方式3显示的第一控件对应的摄像头,针对该取景框中可以切换的摄像头。
[0986] 需要说明的是,手机针对取景框5301执行上述方法,并不会影响取景框5303中的显示内容。并且,手机针对取景框5303执行上述方法,也不会影响取景框5301中的显示内容。例如,响应于用户对图53B所示的摄像头切换选项5308的点击操作,可显示图53C所示的取景界面。
[0987] 图53C所示的取景界面包括取景框5301和取景框5303。相比于图53B所示的取景框5301,图53C所示的取景框5301仍显示前置广角摄像头采集的第一预览图像5302,以及多个第一控件5309。相比于图53B所示的取景框5303,图53C所示的取景框5303仍显示后置广角摄像头采集的第一预览图像5304。
[0988] 与图53B不同的是,图53C所示的取景框5303还包括多个第一控件1910,如“后置主摄”控件、“后置广角”控件、“后置长焦”控件、“前置主摄”控件、“前置广角”控件和“前置长焦”控件。其中,如图53C所示,手机在取景框5303中,以显示方式1显示“后置广角”控件,以显示方式2(如未加粗黑框的方式)显示“后置主摄”控件、“后置长焦”控件、“前置主摄”控件和“前置长焦”控件,以显示方式3显示“前置广角”控件。
[0989] 响应于用户对图53C所示的多个第一控件5309中“前置长焦”控件(即第二控件)的点击操作,手机可显示图53D所示的取景界面。图53D所示的取景界面包括取景框5301和取景框5303。其中,图53D所示的取景框5301显示前置长焦摄像头采集的第二预览图像1911。
[0990] 需要说明的是,在多景拍摄的场景中,手机可以采用上述实现方式(2)的显示方式在第一控件显示摄像头采集的预览图像。或者,在多景拍摄的场景中,手机可以采用上述实现方式(1)的显示方式在第一控件显示摄像头的类型指示信息,如显示图54所示的取景界面。或者,在多景拍摄的场景中,手机可以采用上述实现方式(3)的显示方式在第一控件显示摄像头的代理信息(附图未示出)。
[0991] 其中,上述显示方式1包括但不限于特别加粗黑框的方式。例如,显示方式1还可以包括图54所示的黑底白字的显示方式。上述显示方式3包括但不限于一般加粗黑框的方式。例如,显示方式3还可以包括图54所示的灰底黑字的显示方式。
[0992] 示例性的,本申请实施例结合图38以及上述实施例所述的方法步骤,介绍本申请实施例中手机拍摄控制方法流程。
[0993] 其中,手机进入拍照模式后,应用层3810的系统相机应用3811可以触发底层执行5501,默认启动手机的主摄像头1。该主摄像头1是手机的默认摄像头,如后置主摄像头。例如,系统相机应用3811可以通过框架层3820向硬件抽象层HAL 3830发送携带后置主摄像头的相机标识Camera ID的通知,该通知用于指示硬件抽象层HAL 3830执行5502,根据后置主摄像头的Camera ID启动后置主摄像头的视频流。其中,硬件抽象层HAL 3830可以指示内核层(Kernel)启动相机标识为该Camera ID的后置主摄像头,从而便可以从内核层(Kernel)
3840得到该后置主摄像头的视频流。内核层(Kernel)3840的相机驱动3841可以根据Camera ID启动Camera器件3842中的后置主摄像头。
[0994] 其中,内核层(Kernel)3840的Camera器件3842采集视频流的原理为:Camera器件3842可以将取景环境中反射的光信号转换为电信号,并由图像信号处理器ISP 3843对该电信号进行处理得到视频流。
[0995] 然后,硬件抽象层HAL 3830可以对来自底层(如内核层3840)的数据(如视频流1)进行处理,然后再传输给框架层3820。例如,HAL层3830可以将内核层3840的关于硬件设备的参数转换为框架层3820和应用层3810可识别的软件程序语言。
[0996] 框架层3820可以接收硬件抽象层HAL 3830传输的来自底层(如内核层3840)的视频流。框架层3820的相机服务423可以通过API 1|API 2接口3821向上层(如应用层3810)传输该视频流。应用层3810的系统相机应用3811接收到该视频流后,可以在取景界面呈现该视频流,如执行5506在SurfaceView刷新该视频流。
[0997] 之后,手机可能会接收到用户对摄像头切换选项的点击操作,如用户切换摄像头5504。其中,手机接收到用户对摄像头切换选项的点击操作后,手机可以识别用户选择方案
5505。例如,手机可以接收用户对图51C所示的第一选项5108、第二选项5109或第三选项
5110的选择操作,来确定用户选择方案。其中,该用户选择方案可以包括以下三种:摄像头代理550a、摄像头类型550A和摄像头预览5501‑I。
[0998] 其中,如果用户选择方案为摄像头代理550a,手机则可以在第一界面显示多个第一控件,并在每个第一控件上显示对应摄像头的代理信息,如图55所示的可选择的代理550b。如果用户选择方案为摄像头代理550A,手机则可以在第一界面显示多个第一控件,并在每个第一控件上显示对应摄像头的类型指示信息,如图55所示的可选择的类型550B。如果用户选择方案为摄像头预览5501‑I,手机则可以在第一界面显示多个第一控件,并在每个第一控件上显示对应摄像头采集的预览图像,如图55所示的可选择的预览550‑II。
[0999] 在一些实施例中,如果用户选择方案为摄像头预览5501‑I,则可以通知硬件抽象层HAL3830执行5503,启动手机中所有的闲置摄像头,以显示各个摄像头采集的预览图像。
[1000] 最后,手机可以执行5507,根据选择的代理/类型/预览,确定用户选择切换的摄像头的Camera ID。然后,则可以通知硬件抽象层HAL 3830执行5503,根据用户选择切换的摄像头的Camera ID启动用户选择切换的摄像头;通知硬件抽象层HAL 3830执行5508,关闭其他摄像头。
[1001] 为了便于理解,本申请实施例这里详细介绍手机进行多景录像的过程,以说明采用常规技术在多景录像的场景下,响应于用户对停止拍摄按钮的点击操作,手机只能保存包括多景录像过程的所有视频流的一个视频文件。
[1002] 一般而言,手机响应于用户对“相机”应用图标的点击操作,可以显示拍照的取景界面。当用户想要使用手机录制视频时,则可以触发手机显示录像的取景界面。例如,图56A示出了手机拍照的取景界面5601。该拍照的取景界面5601包括取景框5602、“录像”选项和“多景录像”选项5603。该取景框5602用于显示摄像头(如手机的后置摄像头)采集的预览图像。“录制”选项用于触发手机进入录像模式。“多景录像”选项5603用于触发手机进入多景录像模式。
[1003] 响应于用户对取景界面5601中的“多景录像”选项103的点击操作,手机可以显示如图56B所示的多景录像的取景界面5600。该录制视频的取景界面5600包括取景框5610和取景框5620。取景框5600中显示有手机的一个摄像头(如前置摄像头)采集的预览图像5611,取景框5620中显示有手机的另一个摄像头(如后置摄像头)采集的预览图像5621。上述录制视频的取景界面5600还包括开始录制按钮5612。
[1004] 其中,开始录制按钮5612用于触发手机开始录制视频。响应于用户对图56B所示的开始录制按钮112的点击操作,手机可以开始录制视频。例如,手机录制视频的时长为8秒(s)时,手机可显示图56C所示的录制视频的取景界面5630。该录制视频的取景界面5630中,计时选项的计时时长为00:00:08。如图56C所示,该录制视频的取景界面5630中,取景框5610中显示预览图像5631,取景框5620中显示预览图像5632。该录制视频的取景界面660中包括停止录制按钮5633。该停止录制按钮5633用于触发手机停止录制视频,并保存已录制的视频。
[1005] 响应于用户对图56C所示的停止录制按钮5633的点击操作,手机可保存包括视频流1和视频流2的视频文件a。该视频流1包括多帧预览图像5631,该视频流2包括多帧预览图像5632。
[1006] 例如,如图56D所示,手机可以显示视频文件的播放界面5640。响应于用户对图56D所示的播放按钮5641的点击操作,手机可以播放包括视频流1和视频流2的视频文件,该视频流1包括图56C所示的预览图像5631,视频流2包括图56D所示的预览图像5632。但是,手机无法为用户提供仅包括多景录像过程中一个取景框录制的视频流(如上述视频流1或视频流2)的视频文件(也称为双景视频文件)。
[1007] 综上所述,如图56E所示,手机进入相机APP后,可以进入双景录像模式;然后,响应于用户对开始录制按钮的点击操作,拍摄双景视频;最后,响应于用户对停止录制按钮的点击操作,完成拍摄,生成单个双景视频文件。
[1008] 本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的电子设备。采用本申请实施例的方法,在多景录像的过程中,响应于用户对停止录制按钮的点击操作,可以生成多个临时视频文件,如包括视频流1的临时视频文件1、包括视频流2的临时视频文件2,以及包括视频流1和视频流2的临时视频文件3;然后,按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[1009] 以下实施例中的方法均可以在具有上述硬件结构的电子设备200中实现。
[1010] 其中,电子设备200的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备200的软件结构。
[1011] 图57是本申请实施例提供的电子设备200的软件结构框图。分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层(简称应用层)5710,应用程序框架层(简称框架层)5720,硬件抽象层(hardware abstract layer,HAL)层5730,以及内核层(Kernel,也称为驱动层)5740。
[1012] 其中,应用层(Application)5710可以包括一系列应用程序包。该应用层可以包括多个应用程序包。该多个应用程序包可以为相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息以及桌面启动(Launcher)等应用程序。例如,如图57所示,该应用层5710可以包括相机系统应用(也称为相机应用)5711。
[1013] 相机系统应用5711可以用于在录像模式(如单景录像模式或多景录像模式)下,在录像的取景界面展示底层上报的视频流。其中,电子设备200可以包括多个摄像头,每个摄像头都可以用于采集图像,摄像头采集的连续多帧图像可组成视频流。也就是说,上述每个摄像头都可以用于采集视频流。例如,如图57所示,以多景录像模式为例。在多景录像模式下,电子设备200可以在录像的取景界面显示多个取景框,每个取景框用于显示一个摄像头采集的视频流。
[1014] 例如,假设电子设备200包括前置摄像头和后置摄像头,上述多个录像模式为双景录像模式。在双景录像模式下,电子设备200可以在录像的取景界面显示两个取景框,如取景框1和取景框2。取景框1用于显示前置摄像头采集的连续多帧图像组成的视频流a,取景框2用于显示后置摄像头采集的连续多帧图像组成的视频流b。
[1015] 本申请实施例中,电子设备200在多景录像模式下开始录像后,响应于用户对暂停录制按钮的点击操作,可以生成多个临时视频文件。每个临时视频文件可以包括一个或多个摄像头采集的视频流。例如,电子设备200在双景录像模式下开始录像后,响应于用户对暂停录制按钮的点击操作,可以生成三个临时视频文件,如临时视频文件1、临时视频文件2和临时视频文件3。临时视频文件1包括上述视频流a,临时视频文件2包括上述视频流b,临时视频文件3包括上述视频流a和视频流b。
[1016] 本申请实施例中,用户可以根据自己的需要,选择保存多个临时视频文件中一个或多个视频文件。即通过本申请实施例,可以在多景录像的过程中按照用户需求保存视频文件,可以提升用户的拍摄体验。
[1017] 示例性的,如图57所示,相机系统应用5711还用于提供如下功能:在多景录像模式下,电子设备200开始录制(即拍摄)视频后,接收用户对停止录制按钮的点击操作;响应于用户对停止录制按钮的点击操作,电子设备200停止拍摄,预览多个临时视频文件;电子设备200接收用户对多个临时视频文件中一个或多个视频文件的选择操作,按需选择保存视频文件。
[1018] 进一步的,相机系统应用5711还用于提供如下功能:在多景录像模式下,开始录制之前,支持用户选择切换摄像头;在多景录像模式下,拍摄中(即录制视频的过程中)切换摄像头录制。其中,电子设备200每切换一次摄像头,都可以保存一个临时视频文件。该临时视频文件可以包括电子设备200切换摄像头之前,所采集的视频流。
[1019] 其中,每个摄像头的相机标识(Camera ID)不同。应用层5710可以通过摄像头的Camera ID指示底层(如内核层5740)启动对应的摄像头,并根据预览摄像头的Camera ID指示底层(如框架层5720)处理该预览摄像头采集的预览视频流。应用层5710还可以根据用户的操作,通过摄像头的Camera ID指示底层(如内核层5740)关闭对应的摄像头。
[1020] 框架层(Framework)5720为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图57所示,框架层可以提供相机API,如Camera API(API 1|API 2)5721、视频处理(Media Recorder)模块5722、相机服务(Camera Service)5723、相机拓展服务
(Camera Service Extra)5725和硬件开发工具包(hardware software development kit,Hw SDK)5724。
[1021] 其中,Camera API(API 1|API 2)5721作为底层(如硬件抽象层5730)与应用层5710交互的接口。具体的,Camera API(API 1|API 2)5721可以接收来自上层(如应用层
5710)的开启录制视频过程中切换摄像头的功能的通知,并通过相机服务5723、相机拓展服务5725和HwSDK 5724处理该开启录制视频过程中切换摄像头的功能的通知。然后,通过HAL层5730指示内核层5740开启闲置摄像头,并通过HAL层5730获得预览摄像头和闲置摄像头采集的视频流。Camera API(API 1|API 2)5721还可以接收来自上层(如应用层5710)摄像头切换通知。该摄像头切换通知包括待切换为预览摄像头的Camera ID。
[1022] 一般情况下,应用层5710与用户交互,触发电子设备200开始录制视频后,Media Recorder模块5722可以将呈现给用户的Surface view的预览视频流实时录制并做好随时生成视频文件的准备。
[1023] 本申请实施例中,Surface view可以包括每个取景框对应的Surface view,Media Recorder模块5722可以将每一个取景框对应的Surface view的预览视频流实时录制并做好随时生成视频文件的准备。其中,Media Recorder模块5722可以针对每个取景框对应的Surface view的预览视频流,生成一个临时视频文件。Media Recorder模块5722还可以针对所有取景框对应的Surface view的预览视频流,生成一个临时视频文件。
[1024] 并且,电子设备200每切换一次摄像头,Media Recorder模块5722便可以针对切换前摄像头采集的视频流生成一个临时视频文件。本申请实施例中,当应用层5710与用户交互,触发电子设备200切换预览摄像头时,应用层5710可以实时刷新Surface view,如将Surface view更新为切换后的预览摄像头采集的视频流。此时,Media Recorder模块5722可以生成包括切换前预览摄像头采集的视频流的临时视频文件。当应用层5710与用户交互触发电子设备200停止录制视频后,即使录制视频过程中切换了摄像头,也可以生成一个完整的视频文件。该完整的视频文件包括切换前后的多个摄像头采集的预览视频流。
[1025] HAL层5730用于连接框架层5720和内核层5740。例如,HAL层5730可以在框架层5720和内核层5740之间进行数据传输(如透传)。当然,HAL层5730也可以对来自底层(即内核层5740)的数据进行处理,然后再传输给框架层5720。例如,HAL层5730可以将内核层5740的关于硬件设备的参数转换为框架层5720和应用层5710可识别的软件程序语言。例如,HAL层5730可以包括HAL3.0。
[1026] 本申请实施例中,HAL层5730可根据来自上层(如框架层5720和应用层5710)的通知管理多个摄像头采集的视频流,如根据上次的通知指示底层(如内核层5740)关闭/开启摄像头的视频流。
[1027] 内核层5740包括相机驱动5741、图像信号处理器ISP 5743和Camera器件5742。该Camera器件5742可以包括多个摄像头,每个摄像头包括相机镜头和图像传感器器等。其中,上述图像信号处理器ISP 5743可以与摄像头(如Camera器件5742)单独设置。在另一些实施例中,上述图像信号处理器ISP 5743可以设置在摄像头(如Camera器件5742)中。
[1028] 其中,图像信号处理器ISP 5743和Camera器件5742是拍摄视频或图片的主要设备。取景环境反射的光信号经过相机镜头照射在图像传感器上可转换为电信号,该电信号经过图像信号处理器ISP 5743的处理,可作为原始参数流(即视频流),由相机驱动5741向上层传输。并且,相机驱动5741还可以接收来自上层的通知(如指示开启或关闭摄像头的通知),根据该通知向Camera器件5742发送功能处理参数流,以开启或关闭对应的摄像头。
[1029] 以下实施例中以上述电子设备200是手机为例,对本申请实施例的方法进行说明。
[1030] 本申请实施例提供一种拍摄视频的方法,该方法可以应用于包括多个摄像头的手机。具体的,该方法可以应用于多景拍摄场景或者单景拍摄场景。
[1031] 在多景拍摄场景中,手机处于多景录像模式。在多景录像模式下,手机录像的取景界面包括多个取景框,不同取景框可以显示不同摄像头采集的预览图像。在多景录像模式下,手机可以同时以多摄像头的视角拍摄视频。示例性的,本申请实施例这里以上述多景录像模式为双景录像模式,上述多个取景框包括第一取景框和第二取景框为例,介绍本申请实施例的方法。如图58A所示,该拍摄视频的方法可以包括S5801‑S5803:
[1032] S5801、手机显示第一界面。该第一界面是手机正在录像的取景界面,该第一界面包括第一取景框和第二取景框。第一取景框显示多个摄像头中第一摄像头采集的第一预览图像,第二取景框显示第二摄像头采集的第二预览图像。
[1033] 示例性的,手机可以显示图59A所示的第一界面5900。其中,该第一界面5900可以包括停止录制按钮5905,该第一界面5900中计时选项5906的计时时长为00:00:08。在手机正在录制视频(即录像)的情况下,手机录像的取景界面中才可以包括停止录制按钮,该手机录像的取景界面中计时选项才可以计时。由此可见,上述第一界面5900是手机正在录像视频的取景界面。
[1034] 并且,如图59A所示,第一界面5900可以包括第一取景框5901和第二取景框5902,即该第一界面5900是多景拍摄场景下,手机正在录像的取景界面。该第一取景框5901显示多个摄像头中第一摄像头采集的第一预览图像5903。第二取景框5902显示多个摄像头中第二摄像头采集的第二预览图像5904。
[1035] 在第一种情况的一种实现方式中,上述多个摄像头可以包括手机的前置摄像头(即物理摄像头)和后置摄像头(即物理摄像头)。该第一摄像头是前置摄像头,第二摄像头是后置摄像头。或者,该第一摄像头是后置摄像头,第二摄像头是前置摄像头。在这种实现方式中,上述多个摄像头均为物理摄像头。
[1036] 在第一种情况的另一种实现方式中,上述多个摄像头可以包括手机的物理摄像头(如前置摄像头或后置摄像头)和逻辑摄像头(如前置摄像头的逻辑摄像头和/或后置摄像头的逻辑摄像头)。
[1037] 在第一种情况的另一种实现方式中,上述多个摄像头可以包括多个逻辑摄像头(如前置摄像头的逻辑摄像头和/或后置摄像头的逻辑摄像头)。
[1038] 其中,逻辑摄像头是手机的物理摄像头在不同变焦倍率下实现的。例如,上述逻辑摄像头可以为后置1.0x摄像头,后置2.0x摄像头或前置3.0x摄像头等。
[1039] 其中,1.0x、2.0x和3.0x均为变焦倍率。“3.0x”表示变焦倍率为3倍。“2.0x”表示变焦倍率为2.0倍。“1.0x”表示变焦倍率为1.0倍。本申请实施例中所述的变焦倍率可以为光学变焦倍率或者数字变焦倍率。
[1040] 在第二种情况的一种实现方式中,上述多个摄像头可以包括多种类型的前置摄像头和后置摄像头。在本申请实施例中摄像头的类型可以包括:主摄像头、长焦摄像头、广角摄像头、超广角摄像头、微距摄像头、鱼眼摄像头、红外摄像头、深度摄像头和黑白摄像头中至少两种。上述第一摄像头和第二摄像头可以是多个摄像头中的任意两个摄像头。在这种实现方式中,上述多个摄像头均为物理摄像头。
[1041] 在第二种情况的另一种实现方式中,上述多个摄像头可以包括手机的物理摄像头(如前置主摄像头、后置主摄像头、前置广角摄像头、前置长焦摄像头、后置长焦摄像头和后置广角摄像头等)和逻辑摄像头(如前置主摄像头的逻辑摄像头和/或后置主摄像头的逻辑摄像头等)。
[1042] 在第一种情况的另一种实现方式中,上述多个摄像头可以包括多个逻辑摄像头(如前置主摄像头的一个或多个逻辑摄像头和/或后置主摄像头的一个或多个逻辑摄像头等)。
[1043] 例如,图59A中以上述第一种情况中,多个摄像头均为物理摄像头为例。第一摄像头是手机的前置摄像头,第二摄像头是手机的后置摄像头。图59A所示的第一预览图像5903是前置摄像头采集的图像,第二预览图像5904是后置摄像头采集的图像。
[1044] S5802、手机接收用户对第一界面的第一操作。该第一操作用于触发手机停止录制视频。
[1045] 其中,上述第一界面(即手机正在录像的取景界面)可以包括停止录制按钮。上述第一操作可以是用户对该停止录制按钮的点击操作(如单击操作)。例如,图59A所示的录像的取景界面5900包括停止录制按钮5905。手机可以在录像的过程中,随时接收用户对录像的取景界面中停止录制按钮5905的第一操作,响应于该第一操作停止录制视频并保存录制的视频文件。
[1046] S5803、响应于第一操作,手机显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,以及包括第一视频流和第二视频流的视频文件。第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[1047] 示例性的,响应于用户对图59A所示的停止录制按钮5905的第一操作,手机可以显示图59B所示的第二界面5910。该第二界面5910用于预览多个第一视频文件(如第一视频文件5911、第一视频文件5912和第一视频文件5913)。该第一视频文件5911、第一视频文件5912和第一视频文件5913是手机响应于上述第一操作生成的临时视频文件。
[1048] 例如,第二界面5910中包括多个视频的预览窗,如第一视频文件5911的预览窗、第一视频文件5912的预览窗和第一视频文件5913的预览窗。响应于用户对第二界面中每个第一视频文件的预览操作,手机可以在对应的预览窗播放该第一视频文件。例如,第一视频文件5911的预览窗包括播放按钮5915。上述预览操作可以是用户对播放按钮5915的点击操作。
[1049] 其中,手机可以接收用户对第二界面中一个或多个第一视频文件的选择操作。上述第二界面5910还可以包括“保存”按钮5914。该“保存”按钮5914用于触发手机保存用户选择的第一视频文件(即第二视频文件)。
[1050] 本申请实施例这里介绍上述第一视频文件5911、第一视频文件5912和第一视频文件5913的详细内容。
[1051] 其中,如图59E所示,第一视频文件5911包括第一视频流,该第一视频流包括多帧第一预览图像5903。如图59E所示,第一视频文件5912包括第二视频流,该第二视频流包括多帧第二预览图像5904。如图59E所示,第一视频文件5913包括第一视频流和第二视频流。
[1052] 如图59A所示,当第一界面5900中计时选项5906的计时时长为00:00:08时,手机接收到用户对停止录制按钮5905的点击操作(即第一操作)。因此,如图59E所示,第一视频流包括:在00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在显示屏的多帧第一预览图像5903。如图59E所示,第二视频流包括:在00:00:00‑00:00:08这段时间,由第二摄像头采集并显示在显示屏的多帧第二预览图像5904。
[1053] 如图58B所示,在S5803之后,本申请实施例的方法还包括S5804。
[1054] S5804、响应于用户对多个第一视频文件中第二视频文件的选择操作,手机保存第二视频文件。
[1055] 示例性的,上述选择操作可以包括用户对第二界面中第一视频文件的单击操作,双击操作或者长按操作等任一种操作。例如,手机可以接收用户对图59B所示的第二界面5910中第一视频文件5911和第一视频文件5913的选择操作,显示图59C所示的第二界面
5915。在第二界面5915中,第一视频文件5911和第一视频文件5913处于被选中的状态。其中,被用户选择的第一视频文件5911和第一视频文件5913是上述第二视频文件。然后,手机可以接收用户对第二界面5915中“保存”按钮5915的点击操作;响应于用户对“保存”按钮
5915的点击操作,手机可以保存第二视频文件(如第一视频文件5911和第一视频文件
5913)。
[1056] 在另一些实施例中,S5803所述的第二界面还可以包括第一取景框的预览摄像头(如第一摄像头)采集的预览图像,第二取景框的预览摄像头(如第二摄像头)采集的预览图像。例如,手机可以显示图59D所示的第二界面5916。该第二界面5916用于预览多个第一视频文件(如第一视频文件5911、第一视频文件5912和第一视频文件5913)。该第二界面5916还包括显示在第一取景框5901的预览图像5917,以及显示在第二取景框5902的预览图像5918。
[1057] 其中,显示在第一取景框5901的预览图像5917是第一取景框5901的预览摄像头(如第一摄像头)采集的,显示在第二取景框5902的预览图像5918是第二取景框5902的预览摄像头(如第二摄像头)采集的。
[1058] 本申请实施例中,在多景录像模式下,手机正在录像的过程中,响应于用户的第一操作(如对停止录制按钮的点击操作),可以显示用于预览多个第一视频文件的第二界面。该多个第一视频文件是手机生成的临时视频文件。其中,一些第一视频文件只包括一个取景框中的视频流,而另一些第一视频文件则可以包括多个取景框中的视频流。这样,用户则可以按照需求选择需要保存的第一视频文件(即临时视频文件)。具体的,手机可以响应于用户对多个第一视频文件中第二视频文件的选择操作,保存用户选择的第二视频文件。通过该方法,手机在多景录像模式下,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[1059] 在一些实施例中,在多景录像模式下,手机可以在正在录像的过程中切换摄像头。具体的,在多景录像模式下,手机可以在正在录像的过程中,切换任一个取景框的预览摄像头。以手机响应于用户的操作,切换第一取景框的预览摄像头为例。如图60所示,在上述S5801之后,S5802之前,本申请实施例的方法还可以包括S6001‑S6002。
[1060] S6001、手机接收用户对第一取景框的第二操作。该第二操作用于触发手机将第一摄像头切换为多个摄像头中的第三摄像头。
[1061] S6002、响应于上述第二操作,手机将第一界面中的第一预览图像切换为第三摄像头采集的第三预览图像。
[1062] 在上述第一种情况下,第一摄像头是前置摄像头,第二摄像头是后置摄像头;或者,第一摄像头是后置摄像头,第二摄像头是前置摄像头。在这种情况下,第三摄像头与第一摄像头不同,如第三摄像头与第二摄像头可以是同一摄像头。
[1063] 以第一摄像头是前置摄像头,第二摄像头的后置摄像头,第三摄像头是后置摄像头为例。手机可以显示图61A所示的第一界面6100。该第一界面6100中,第一取景框5901中显示有前置摄像头(即第一摄像头)采集的第一预览图像5903,第二取景框5902中显示有后置摄像头(即第二摄像头)采集的第二预览图像5904。第一取景框5901还包括摄像头切换选项6101,即第一控件6101。该第一控件6101用于触发手机将第一取景框5901的预览摄像头由前置摄像头切换为后置摄像头。第二取景框5902还包括摄像头切换选项6102,即第一控件6102。该第一控件6102用于触发手机将第二取景框5902的预览摄像头由后置摄像头切换为前置摄像头。
[1064] S6001和S6002所述的第二操作,可以是用户对图61A所示的第一控件6101的点击操作。响应于用户对图61A所示的第一控件6101的点击操作,手机可以显示图61B所示的录像的取景界面6103。在录像的取景界面6103中,第一取景框5901中的预览图像由图61A所示的前置摄像头(即第一摄像头)采集的第一预览图像5903切换为图61B所示的后置摄像头(即第三摄像头)采集的第三预览图像6104。
[1065] 在S6002之后,手机可以执行S5802‑S5803。在该实施例中,手机执行S5803,多个第一视频文件不仅可以包括:上述包括第一视频流的视频文件,上述包括第二视频流的视频文件,上述包括第一视频流和第二视频流的视频文件;该多个第一视频文件还可以包括:包括第三视频流的视频文件,包括第三视频流以及第一视频流和/或第二视频流的视频文件。该第三视频流包括多帧第三预览图像。具体的,如图60所示,上述S5803可以替换为S6003。
[1066] S6003、响应于第一操作,手机显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第三视频流的视频文件,包括第一视频流和第三视频流的视频文件,包括第二视频流的视频文件,包括第一视频流、第三视频流和第二视频流的视频文件。第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像,第三视频流包括多帧第三预览图像。
[1067] 例如,响应于用户对图61B所示的停止录制按钮5905的点击操作,手机可以显示图61C所示的第二界面6110。该第二界面6110用于预览多个第一视频文件(如第一视频文件
6111、第一视频文件6112、第一视频文件6113、第一视频文件6114和第一视频文件6115)。该第一视频文件6111、第一视频文件6112、第一视频文件6113、第一视频文件6114和第一视频文件6115是手机响应于上述第一操作生成的临时视频文件。
[1068] 例如,第二界面6110中包括多个视频的预览窗,如第一视频文件6111的预览窗、第一视频文件6112的预览窗、第一视频文件6113的预览窗、第一视频文件6114的预览窗和第一视频文件6115的预览窗。响应于用户对第二界面中每个第一视频文件的预览操作,手机可以在对应的预览窗播放该第一视频文件。
[1069] 本申请实施例这里介绍上述第一视频文件6111的预览窗、第一视频文件6112的预览窗、第一视频文件6113的预览窗、第一视频文件6114的预览窗和第一视频文件6115的详细内容。
[1070] 其中,如图61D所示,第一视频文件6111包括第一视频流,该第一视频流包括多帧第一预览图像5903。如图61D所示,第一视频文件6112包括第三视频流,该第三视频流包括多帧第三预览图像6104。如图61D所示,第一视频文件6114包括第一视频流和第三视频流。如图61D所示,第一视频文件6113包括第二视频流,该第二视频流包括多帧第二预览图像
5904。如图61D所示,第一视频文件6115包括第一视频流、第二视频流和第三视频流。
[1071] 如图61A所示,当第一界面6100中计时选项5906的计时时长为00:00:08时,手机接收到用户对第一控件6101的点击操作(即第二操作)。因此,如图61D所示,第一视频流包括00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在显示屏的多帧第一预览图像
5903。如图61B所示,当第一界面6103中计时选项5906的计时时长为00:00:10时,手机接收到用户对停止录制按钮5905的点击操作(即第一操作)。因此,如图61D所示,第三视频流包括00:00:09‑00:00:10这段时间,由第三摄像头采集并显示在显示屏的多帧第三预览图像
6104;第二视频流包括00:00:00‑00:00:10这段时间,由第二摄像头采集并显示在显示屏的多帧第二预览图像5904。
[1072] 本申请实施例这里介绍在包括S6001‑S6002的实施例中,手机生成上述第一视频文件6111、第一视频文件6112、第一视频文件6113、第一视频文件6114和第一视频文件6115的原理。
[1073] 其中,手机的SurfaceView中的预览视频流(包括多帧这预览图像)是由手机的预览摄像头采集并显示在显示屏上的。即SurfaceView中的预览视频流是用户想要拍摄并保存的视频流。因此,从手机开始录像,视频处理(Media Recorder)模块5722便实时从SurfaceView中获取预览视频流并缓存获取到的视频流。
[1074] 本申请实施例中,SurfaceView可以分为第一取景框的SurfaceView和第二取景框的SurfaceView。视频处理(Media Recorder)模块5722可以分别从第一取景框的SurfaceView和第二取景框的SurfaceView实时获取预览视频流并缓存获取到的视频流。
[1075] 具体的,响应于用户对第一取景框的第二操作,视频处理(Media Recorder)模块5722便可以生成包括第一视频流(包括第一摄像头采集的多帧第一预览图像)的第一视频文件6111。响应于第一操作,第一取景框的SurfaceView中的预览视频流切换为第三摄像头采集的第二预览图像组成的视频流,视频处理(Media Recorder)模块5722可以实时从第一取景框的SurfaceView获取并缓存第三摄像头采集的第三预览图像组成的视频流。
[1076] 需要说明的是,在手机执行S6001‑S6002的过程中,并不会影响视频处理(Media Recorder)模块5722从第二取景框的SurfaceView实时获取并缓存第二摄像头采集的第二预览图像组成的视频流。
[1077] 最后,响应于用户对停止录制按钮的点击操作(即第一操作),视频处理(Media Recorder)模块5722便可以生成包括第二视频流(包括第二摄像头采集的多帧第二预览图像)的第一视频文件6113,并生成包括第三视频流(包括第三摄像头采集的多帧第三预览图像)的第一视频文件6112。并且,视频处理(Media Recorder)模块5722还可以生成包括上述第一视频流和第三视频流的第一视频文件6114,生成包括第一视频流、第二视频流和第三视频流的第一视频文件6115。
[1078] 在上述第二种情况下,上述多个摄像头可以包括多种类型的前置摄像头和后置摄像头。在本申请实施例中摄像头的类型可以包括:主摄像头、长焦摄像头、广角摄像头、超广角摄像头、微距摄像头、鱼眼摄像头、红外摄像头、深度摄像头和黑白摄像头中至少两种。
[1079] 在第二种情况下,第一界面的第一取景框中可以包括多个第二控件,每个第二控件对应多个摄像头中的一个摄像头,用于触发手机切换使用对应的摄像头。例如,图62C所示的第一界面6205中,第一取景框5901中包括多个第二控件6201,如“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[1080] 其中,图62C所示的“前置主摄”控件对应于手机的前置主摄像头,用于触发手机显示前置主摄像头采集的预览图像。图62C所示的“前置长焦”控件对应于手机的前置长焦摄像头,用于触发手机显示前置长焦摄像头采集的预览图像。图62C所示的“前置广角”控件对应于手机的前置广角摄像头,用于触发手机显示前置广角摄像头采集的预览图像。
[1081] 图62C所示的“后置主摄”控件对应于手机的后置主摄像头,用于触发手机显示后置主摄像头采集的预览图像。图62C所示的“后置长焦”控件对应于手机的后置长焦摄像头,用于触发手机显示后置长焦摄像头采集的预览图像。图62C所示的“后置广角”控件对应于手机的后置广角摄像头,用于触发手机显示后置广角摄像头采集的预览图像。
[1082] 当然,第一界面的第二取景框中可以包括多个第二控件。例如,图62C所示的第一界面6205中,第二取景框5902中包括多个第二控件6202。多个第二控件6202的详细描述可以参考上述实施例对多个第二控件6201的介绍,这里不予赘述。
[1083] 在第二种情况的一些实施例中,手机可以以区别于其他摄像头的第二控件的方式,显示第一取景框的预览摄像头的第二控件和第二取景框的预览摄像头的第二控件。
[1084] 示例性的,手机可以在第一取景框,以第一显示方式显示第一取景框的预览摄像头(如第一摄像头)的第二控件,以第二显示方式显示第二取景框的预览摄像头(如第二摄像头)的第二控件,以第三显示方式显示其他摄像头的第二控件。手机可以在第二取景框,以第二显示方式显示第一取景框的预览摄像头(如第一摄像头)的第二控件,以第一显示方式显示第二取景框的预览摄像头(如第二摄像头)的第二控件,以第三显示方式显示其他摄像头的第二控件。
[1085] 其中,以第一显示方式所显示的第二控件对应的摄像头,是当前取景框的预览摄像头。以第二显示方式所显示的第二控件对应的摄像头,是录像的取景界面中其他取景框的预览摄像头。以第三显示方式所显示的第二控件对应的摄像头,不是当前录像的取景界面的预览摄像头。
[1086] 例如,以第一显示方式为黑底白字的显示方式,第二显示方式为灰底黑字的显示方式,第三显示方式为白底黑字的显示方式为例。假设图62A所示的第一取景框5901的预览摄像头(即第一摄像头)是前置广角摄像头,第二取景框5902的预览摄像头(即第二摄像头)是后置广角摄像头。如图62A所示,在第一取景框5901,手机以黑底白字的显示方式(即第一显示方式)显示“前置广角”控件,以灰底黑字的显示方式(即第二显示方式)显示“后置广角”控件,以白底黑字的显示方式(即第三显示方式)显示其他第二控件,如“后置主摄”控件、“前置主摄”控件、“后置长焦”控件和“前置长焦”控件。如图62A所示,在第一取景框5902,手机以黑底白字的显示方式(即第一显示方式)显示“后置广角”控件,以灰底黑字的显示方式(即第二显示方式)显示“前置广角”控件,以白底黑字的显示方式(即第三显示方式)显示其他第二控件,如“后置主摄”控件、“前置主摄”控件、“后置长焦”控件和“前置长焦”控件。
[1087] 在第二种情况的另一些实施例中,第一界面的第一取景框5901中包括第三控件。该第三控件用于触发手机显示或隐藏多个第二控件。例如,如图61A所示,第一取景框5901中包括第三控件6101,该第三控件6101可以是切换摄像头选项。响应于用户对图61A所示的第三控件6101的点击操作,可以显示图62B所示的第一界面6204。该第一界面6204的第一取景框5901中包括多个第二选项6201。其中,响应于用户对第一界面6204的第二取景框5902中切换摄像头选项6102(即第三控件6102)的点击操作,手机也可以在第二取景框5902显示多个第二控件(附图未示出)。在另一些实施例中,响应于用户对图62B所示的第一界面6204中切换摄像头选项6101(即第三控件6101)的点击操作,手机可隐藏多个第二选项6201,显示图61A所示的第一界面6100。
[1088] 在第二种情况的上述实施例中,S6001和S6002所述的第二操作,可以是用户对图62A所示多个第二控件6201中第一控件的点击操作。示例性的,手机可以接收用户对图62A或图62B所示的多个第二控件6201中第一控件(如“前置长焦”控件)的点击操作。
[1089] 例如,响应于用户对图62B所示的多个第二控件6201中“前置长焦”控件的点击操作,手机可以显示图62C所示的录像的取景界面6205。在录像的取景界面6205中,第一取景框5901中的预览图像由图62B所示的前置广角摄像头(即第一摄像头)采集的第一预览图像5903切换为图62C所示的前置长焦摄像头(即第三摄像头)采集的第三预览图像907。
[1090] 响应于用户对图62C所示的停止录制按钮5905的点击操作,手机可以显示图62D所示的第二界面6210。该第二界面6210用于预览多个第一视频文件(如第一视频文件6211、第一视频文件6212、第一视频文件6213、第一视频文件6214和第一视频文件6215)。该第一视频文件6211、第一视频文件6212、第一视频文件6213、第一视频文件6214和第一视频文件6215是手机响应于上述第一操作生成的临时视频文件。
[1091] 例如,第二界面6210中包括多个视频的预览窗,如第一视频文件6211的预览窗、第一视频文件6212的预览窗、第一视频文件6213的预览窗、第一视频文件6214的预览窗和第一视频文件6215的预览窗。响应于用户对第二界面中每个第一视频文件的预览操作,手机可以在对应的预览窗播放该第一视频文件。
[1092] 本申请实施例这里介绍上述第一视频文件6211的预览窗、第一视频文件6212的预览窗、第一视频文件6213的预览窗、第一视频文件6214的预览窗和第一视频文件6215的详细内容。
[1093] 其中,如图62E所示,第一视频文件6211包括第一视频流,该第一视频流包括多帧第一预览图像5903。如图62E所示,第一视频文件6212包括第三视频流,该第三视频流包括多帧第三预览图像907。如图62E所示,第一视频文件6214包括第一视频流和第三视频流。如图62E所示,第一视频文件6213包括第二视频流,该第二视频流包括多帧第二预览图像5904。如图62E所示,第一视频文件6215包括第一视频流、第二视频流和第三视频流。
[1094] 如图62B所示,当第一界面6204中计时选项5903的计时时长为00:00:09时,手机接收到用户对“前置长焦”控件的点击操作(即第二操作)。因此,如图62E所示,第一视频流包括00:00:00‑00:00:09这段时间,由第一摄像头采集并显示在显示屏的多帧第一预览图像5903。如图62B所示,当第一界面6205中计时选项6206的计时时长为00:00:10时,手机接收到用户对停止录制按钮5905的点击操作(即第一操作)。因此,如图62E所示,第三视频流包括00:00:09‑00:00:10这段时间,由第三摄像头采集并显示在显示屏的多帧第三预览图像
907;第二视频流包括00:00:00‑00:00:10这段时间,由第二摄像头采集并显示在显示屏的多帧第二预览图像5904。
[1095] 其中,在包括S6001‑S6002的实施例中,手机执行生成上述第一视频文件6211、第一视频文件6212、第一视频文件6213、第一视频文件6214和第一视频文件6215的原理,可以参考上述实施例中手机生成第一视频文件6111、第一视频文件6112、第一视频文件6113、第一视频文件6114和第一视频文件6115的原理,本申请实施例这里不予赘述。
[1096] 采用本申请实施例的方法,可以在录像的过程中切换摄像头。并且,每切换一次摄像头,手机便可以生成一个临时视频文件,以供用户停止录像后,选择需要的视频文件。这样,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[1097] 在另一些实施例中,在多景录像模式下,手机还可以暂停录像,每暂停一次手机可以保存一个临时视频文件。具体的,手机可以接收用户在第一界面的第三操作。该第三操作用于触发手机在第一取景框暂停录像。响应于该第三操作,手机可在第一取景框暂停录像。
[1098] 如图63A所示,在S5801之后,S5802之前,本申请实施例的方法还可以包括S6301‑S6304。如图63A所示,上述S5802可以包括S6305,S5803可以包括S6306。
[1099] S6301、手机接收用户在第一界面的第三操作。
[1100] 在一种实现方式中,第一界面可以包括暂停录制按钮,该暂停录制按钮用于触发手机在第一取景框暂停录像。例如,图63B所示的第一界面6300中,第一取景框5901中包括暂停录制按钮1003,第一取景框5902中包括暂停录制按钮1004。上述第三操作可以是用户对暂停录制按钮1004的点击操作。例如,手机可以接收用户对图63B所示的第一取景框5901中暂停录制按钮1003的第三操作(如点击操作)。
[1101] 在另一种实现方式中,上述第三操作可以是用户在第一界面输入的预设手势1。该预设手势1可以预先配置在手机中,或者可以由用户在手机中设置。例如,该预设手势1可以为L形手势。
[1102] S6302、响应于该第三操作,手机显示第三界面。其中,第三界面是第一取景框暂停录像,第二取景框正在录像的取景界面;在第三界面,第一取景框显示第一摄像头采集的第四预览图像,第二取景框显示第二摄像头采集的第二预览图像。
[1103] 例如,响应于用户对图63B所示的暂停录制按钮1003的第三操作,手机可以显示图63C所示的第三界面6310。该第三界面6310中第一取景框5901显示第一摄像头采集的第四预览图像6311,第二取景框5902显示第二摄像头采集的第二预览图像6302;第三界面6310还包括暂停录制按钮6312。其中,暂停录制按钮1003处于第一状态,暂停录制按钮6312处于第二状态。
[1104] 手机执行S6301‑S6302暂停录像之后,用户可能只是想要在手机暂停录像的过程中,调整摄像头的拍摄视角和拍摄对象的姿态(即摆拍)。当用户调整好姿态后,便可以对第三界面中暂停录制按钮输入第四操作,继续录像。这样,可以提升手机录像的拍摄效果,提升用户的拍摄满意度。
[1105] S6303、手机接收用户在第三界面的第四操作。
[1106] 在一种实现方式中,第三界面可以包括暂停录制按钮,该暂停录制按钮用于触发手机在继续录像。上述第四操作可以是用户对第三界面中暂停录制按钮的点击操作。
[1107] 在另一种实现方式中,上述第四操作可以是用户在第一界面输入的预设手势2。该预设手势2可以预先配置在手机中,或者可以由用户在手机中设置。例如,该预设手势2可以为√形手势。
[1108] S6304、响应于第四操作,手机显示第四界面。其中,第四界面是手机正在录像的取景界面;在第四界面,第一取景框显示第一摄像头采集的第五预览图像,第二取景框显示第二摄像头采集的所述第二预览图像。
[1109] 例如,手机可以接收用户对第三界面6310中暂停录制按钮6312的第四操作(如点击操作)。响应于用户对暂停录制按钮6312的第四操作,手机可以继续录像,并显示图63D所示的第四界面6320。在第四界面6320,第一取景框5901显示第一摄像头采集的第五预览图像6321,第二取景框5902显示第二摄像头采集的所述第二预览图像6302。
[1110] 需要说明的是,图63B所示的第一预览图像6301、图63C所示的第四预览图像6311,以及图63D所示的第五预览图像6321均为第一摄像头采集的预览图像。但是,第一预览图像6301是手机在第一取景框5901录像过程中采集的预览图像,第四预览图像6311是手机在第一取景框5901暂停录像过程中采集的预览图像,第五预览图像6321是手机在第一取景框
5901继续录像过程中采集的预览图像。因此,手机的视频处理(Media Recorder)模块5722可以缓存包括多帧第一预览图像6301的视频流(即第一视频流)和包括多帧第五预览图像
6321的视频流(即第四视频流),而不会缓存包括多帧第四预览图像6311的视频流。
[1111] S6305、手机接收用户对第四界面的第一操作。该第一操作用于触发手机停止录制视频。
[1112] 例如,该第一操作可以是用户对第四界面6320中停止录制按钮5905的点击操作。手机可以接收用户对该图63D所示的停止录制按钮5905的点击操作。
[1113] S6306、响应于第一操作,手机显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第四视频流的视频文件,包括第一视频流和第四视频流的视频文件,包括第二视频流的视频文件,包括第一视频流、第四视频流和第二视频流的视频文件。
[1114] 例如,响应于用户对图63D所示的停止录制按钮5905的点击操作,手机可以显示图63E所示的第二界面1030。该第二界面1030用于预览多个第一视频文件(如第一视频文件
6331、第一视频文件6332、第一视频文件6333、第一视频文件6334和第一视频文件6335)。该第一视频文件6331、第一视频文件6332、第一视频文件6333、第一视频文件6334和第一视频文件6335是手机响应于上述第一操作生成的临时视频文件。
[1115] 例如,第二界面1030中包括多个视频的预览窗,如第一视频文件6331的预览窗、第一视频文件6332的预览窗、第一视频文件6333的预览窗、第一视频文件6334的预览窗和第一视频文件6335的预览窗。响应于用户对第二界面中每个第一视频文件的预览操作,手机可以在对应的预览窗播放该第一视频文件。
[1116] 本申请实施例这里介绍上述第一视频文件6331、第一视频文件6332、第一视频文件6333、第一视频文件6334和第一视频文件6335的详细内容。
[1117] 其中,如图63F所示,第一视频文件6331包括第一视频流,该第一视频流包括多帧第一预览图像6301。如图63F所示,第一视频文件6332包括第四视频流,该第四视频流包括多帧第五预览图像6321。如图63G或图63H所示,第一视频文件6333包括第一视频流和第四视频流。如图63F所示,第一视频文件6334包括第二视频流,该第二视频流包括多帧第二预览图像6302。如图63F所示,第一视频文件6335包括第一视频流、第四视频流和第二视频流。
[1118] 如图63G所示,在一种实现方式中,第一视频文件6333包括第一视频流和第四视频流。其中,图63G所示的第一视频文件6333的时长为10秒(s)。手机在播放第一视频文件6333的过程中,可以先播放第一视频流的每一帧图像,然后再播放第四视频流的每一帧图像。
[1119] 如图63H所示,在另一种实现方式中,第一视频文件6333包括第一视频流和第四视频流。其中,图63G所示的第一视频文件6333的时长为12秒(s)。手机在播放第一视频文件6333的过程中,可以先播放第一视频流的每一帧图像;在播放第一视频流的最后一帧图像后的2s(即00:00:08‑00:00:10)内,可以播放该第一视频流的最后一帧图像或者预设图像;
然后,从00:00:10开始,再播放第四视频流的每一帧图像。其中,上述预设图像可以是空白图像。手机在上述2s内播放第一视频流的最后一帧图像或者预设图像,可以为用户展示出视频暂停的效果。
[1120] 同样的,手机播放第一视频文件6335的过程中,手机可以按照播放上述第一视频文件6333的方式在第一取景框5901播放第一视频流和第四视频流;同时,手机可以在第二取景框播放第二视频流。
[1121] 如图63B所示,当第一界面6300中计时选项1005的计时时长为00:00:08时,手机接收到用户对暂停录制按钮1003的点击操作(即第三操作)。因此,如图63F或图63G所示,第一视频流包括00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在显示屏的多帧第一预览图像6301。如图63C所示,当第三界面6310中计时选项1013的计时时长为00:00:10时,手机接收到用户对暂停录制按钮6312的点击操作(即第四操作);如图63D所示,当第四界面6320中计时选项1022的计时时长为00:00:12时,手机接收到用户对停止录制按钮5905的点击操作(即第一操作)。因此,如图63G所示,第四视频流包括00:00:10‑00:00:12这段时间,由第一摄像头采集并显示在显示屏的多帧第五预览图像6321。如图63F所示,第二视频流包括00:00:00‑00:00:12这段时间,由第二摄像头采集并显示在显示屏的多帧第二预览图像
6302。
[1122] 其中,在S6306之后,手机可以执行S5804。S6306之后,手机执行S5804详细描述本申请实施例这里不予赘述。
[1123] 本申请实施例这里介绍在包括S6301‑S6304的实施例中,手机生成上述第一视频文件6331、第一视频文件6332、第一视频文件6333、第一视频文件6334和第一视频文件6335的原理。
[1124] 其中,响应于用户对第一取景框中暂停录制按钮的第三操作,视频处理(Media Recorder)模块5722便可以生成包括第一视频流(包括第一摄像头采集的多帧第一预览图像)的第一视频文件6331。响应于用户对暂停录制按钮的第四操作,视频处理(Media Recorder)模块5722可以实时从第一取景框的SurfaceView获取并缓存第一摄像头采集的第五预览图像6321组成的视频流。
[1125] 需要说明的是,在手机执行S6301‑S6304的过程中,并不会影响视频处理(Media Recorder)模块5722从第二取景框的SurfaceView实时获取并缓存第二摄像头采集的第二预览图像组成的视频流。
[1126] 最后,响应于用户对停止录制按钮的点击操作(即第一操作),视频处理(Media Recorder)模块5722便可以生成包括第二视频流(包括第二摄像头采集的多帧第二预览图像)的第一视频文件6334,并生成包括第四视频流(包括第一摄像头采集的多帧第五预览图像)的第一视频文件6332。并且,视频处理(Media Recorder)模块5722还可以生成包括第一视频流和第四视频流的第一视频文件6333,并生成包括第一视频流、第四视频流和第二视频流的第一视频文件6335。
[1127] 在另一些实施例中,手机可以在暂停录像的过程中切换摄像头。例如,手机可以接收用户对图63C所示第三界面6310中第一取景框5901的“后置长焦”控件的点击操作,将第一取景框5901的预览摄像头切换为后置长焦摄像头。其中,手机在暂停录像的过程中切换摄像头的具体方法,本申请实施例这里不予赘述。
[1128] 在一些实施例中,手机在双景录像的过程中,还可以响应于用户的操作,在第一界面增加第三取景框,实现三景录像。具体的,本申请实施例的方法可以包括S5801、S6201a‑S6201b和S5802‑S5804。S6201a:手机接收用户对第一界面的第五操作,该第五操作用于触发手机在第一界面增加第三取景框。S6201b:响应于该第五操作,手机显示包括第一取景框、第二取景框和第三取景框的第一界面。该第一取景框用于显示第一摄像头采集的第一预览图像,第二取景框显示第二摄像头采集的第二预览图像,第三取景框显示第四摄像头采集的第六预览图像。
[1129] 在该实施例中,手机执行S5802‑S5803所显示的第二界面可预览的多个第一视频文件,不仅可以包括:包括第一视频流的视频文件,包括第二视频流的视频文件,包括第一视频流和第二视频流的视频文件;还可以包括:包括第五视频流的视频文件,包括第五视频流以及第一视频流和/或第二视频流的视频文件。
[1130] 其中,该第五视频流包括多帧第六预览图像。第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[1131] 其中,S6201a‑S6201b的具体实现方式,可以参考常规技术中的详细介绍,本申请实施例这里不予赘述。
[1132] 在另一些实施例中,手机在双景录像的过程中,还可以响应于用户的操作,关闭第一界面的第一取景框或第二取景框,实现单景录像。具体的,本申请实施例的方法可以包括S5801、S6202a‑S6202b和S5802‑S5804。S6202a:手机接收用户对第一界面的第六操作,该第六操作用于触发手机关闭第一界面的第一取景框。S6202b:响应于该第六操作,手机显示包括第二取景框的第一界面,并关闭第一摄像头。
[1133] 在该实施例中,手机执行S5802‑S5803所显示的第二界面可预览的多个第一视频文件,可以包括:包括第一视频流的视频文件,包括第二视频流的视频文件,包括第一视频流和第二视频流的视频文件。其中,该第一视频流包括第一摄像头采集的多帧第一预览图像,第二视频流包括第二摄像头采集的多帧第二预览图像。
[1134] 其中,S6202a‑S6202b的具体实现方式,可以参考常规技术中的详细介绍,本申请实施例这里不予赘述。
[1135] 需要说明的是,由于手机在双景录像的过程中,关闭了第一取景框;因此,第一视频流的计时时长小于第二视频流的计时时长。例如,假设手机在录像的计时时长为00:00:08时,关闭了第一取景框,并且手机在录像的计时时长为00:00:12时停止录像。在这种情况下,手机在播放包括第一视频流和第二视频流的第一视频文件的过程中,在00:00:00‑00:
00:08这段时间,可以依次播放第一视频流中的每帧图像,并依次播放第二视频流中的每帧图像;在00:00:09‑00:00:12这段时间,可以显示第一视频流的最后一帧图像或者预设图像,并继续依次播放第二视频流中的每帧图像。
[1136] 在另一些实施例中,上述第一取景框和第二取景框可以分别计时。例如,手机可显示图64所示的第一界面6400。该第一界面6400包括第一取景框5901和第二取景框5902。第一取景框5901包括计时选项6401,第二取景框5902包括计时选项6402。
[1137] 并且,上述第一取景框和第二取景框分别可以包括用于触发手机开始录像和停止录像的按钮,如开始录制按钮和停止录制按钮。例如,第一取景框5901包括停止录制按钮6403,第二取景框5902包括停止录像按钮6404。其中,停止录制按钮6403用于触发手机停止录制第一取景框5901中的视频流,停止录像按钮6404用于触发手机停止录制第二取景框
5902中的视频流。
[1138] 假设手机在计时选项6401的计时时长为00:00:08时,接收到用户对停止录制按钮6403的点击操作。响应于用户对停止录制按钮6403的点击操作,手机可以保存包括第一视频流的第二视频文件。该第一视频流包括多帧第一预览图像6405,该第一视频流的时长为
00:00:08。之后,手机在计时选项6402的计时时长为00:00:10时,接收到用户对停止录制按钮6404的点击操作,手机可以显示用于预览多个第一视频文件的第二界面。该多个第一视频文件可以包括:包括第二视频流的视频文件,包括第一视频流和第二视频流的视频文件。
该第二视频流包括多帧第二预览图像6406,该第二视频流的时长为00:00:10。
[1139] 需要说明的是,由于手机在双景录像的过程中,先停止录制第一取景框中的视频流;因此,第一视频流的计时时长小于第二视频流的计时时长。例如,第一视频流的时长为00:00:08,第二视频流的时长为00:00:10。在这种情况下,手机在播放包括第一视频流和第二视频流的第一视频文件的过程中,在00:00:00‑00:00:08这段时间,可以依次播放第一视频流中的每帧图像,并依次播放第二视频流中的每帧图像;在00:00:09‑00:00:10这段时间,可以显示第一视频流的最后一帧图像或者预设图像,并继续依次播放第二视频流中的每帧图像。其中,预设图像可以是空白图像。手机在00:00:09‑00:00:10内播放第一视频流的最后一帧图像或者预设图像,可以为用户展示出视频停止的效果。
[1140] 在单景拍摄场景中,手机处于单景录像模式。在单景录像模式下,手机录像的取景界面包括一个取景框。手机录像的过程中可以切换摄像头,从而该取景框中可以切换显示不同摄像头采集的预览图像。如图65A所示,该拍摄视频的方法可以包括S6501‑S6505:
[1141] S6501、手机显示第一界面。该第一界面是手机正在录像的取景界面,该第一界面包括第一摄像头采集的第一预览图像。
[1142] 示例性的,手机可以显示图66A所示的第一界面6601。其中,该第一界面6601可以包括停止录制按钮6603,该第一界面6601中计时选项6607的计时时长为00:00:08。在手机正在录像的情况下,手机录像的取景界面中才可以包括停止录制按钮,该手机录像的取景界面中计时选项才可以计时。由此可见,上述第一界面6601是手机正在录像的取景界面。
[1143] 并且,该第一界面6601的取景框中显示有第一摄像头(如手机的后置摄像头)采集的第一预览图像6602。
[1144] S6502、手机接收用户对第一界面的第二操作。该第二操作用于触发手机切换使用多个摄像头中的第二摄像头,第二摄像头与第一摄像头不同。
[1145] 在上述第一种情况的一种实现方式中,上述第一界面可以包括第一控件。该第一控件可以用于触发手机切换摄像头。例如,图66A所示的第一界面5901中包括第一控件6604,该第一控件104也称为摄像头切换选项或切换摄像头的图标。上述第二操作可以是用户对图66A所示的第一控件6604的点击操作(如单击操作)。
[1146] 在上述第一种情况的另一种实现方式中,上述第二操作还可以是用户在上述第一界面输入的预设手势,如S形手势或者√手势等。该预设手势可以预先配置在手机中。并且,手机可以在录像的取景界面向用户提示该预设手势,以及该预设手势所触发的功能(即录制视频过程中切换摄像头的功能)。
[1147] 其中,第二摄像头与第一摄像头不同。例如,第一摄像头是手机的后置摄像头的情况下,第二摄像头是手机的前置摄像头。
[1148] S6503、响应于第二操作,手机将第一界面中的第一预览图像切换为第二摄像头采集的第二预览图像。
[1149] 例如,以上述第二操作是用户对图66A所示的第一控件6604的点击操作为例。响应于用户对第一控件6604的第二操作,手机可显示图66B所示的第一界面6605。
[1150] 其中,响应于用户对图66A所示的第一控件6604的第二操作,手机的第一界面中的预览图像,由图66A所示的第一预览图像6602切换为图66B所示的第二预览图像6606。第一预览图像6602和第二预览图像6606是不同摄像头采集的图像,因此,如图66A和图66B所示,第一预览图像6602和第二预览图像6606不同。
[1151] S6504、手机接收用户对第一界面的第一操作。该第一操作用于触发手机停止录制视频。
[1152] 其中,上述第一界面(即手机正在录制视频的取景界面)可以包括停止录制按钮。上述第一操作可以是用户对该停止录制按钮的点击操作(如单击操作)。例如,图66A所示的录制视频的取景界面6601和图66B所示的录制视频的取景界面6605均包括停止录制按钮
6603。手机可以在录制视频的过程中,随时接收用户对录制视频的取景界面中停止录制按钮6603的第一操作,响应于该第一操作停止录制视频并保存录制的视频文件。
[1153] 应理解,在手机录制视频的过程中,手机录制视频的取景界面中计时选项的计时时长可以随着时间的推移而发生变化。例如,图66A所示的计时选项6607的计时时长为00:00:08,随着时间的推移,图66B所示的计时选项6608的计时时长为00:00:09。示例性的,假设手机在录制视频的时长为00:00:09时,接收到用户的第一操作。
[1154] S6505、响应于第一操作,手机显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,以及包括第一视频流和第二视频流的视频文件。第一视频流包括多帧第一预览图像,第二视频流包括多帧第二预览图像。
[1155] 例如,响应于用户对图66B所示的停止录制按钮6603的第一操作,手机可以显示图66C所示的第二界面6610或图66D所示的第二界面6615。图66C所示的第二界面6610包括提示信息6609,如“请选择想要保存的视频!”。该第二界面6610用于预览多个第一视频文件(如第一视频文件6611、第一视频文件6612和第一视频文件6613)。该第一视频文件6611、第一视频文件6612和第一视频文件6613是手机响应于上述第一操作生成的临时视频文件。
[1156] 例如,第二界面6610或第二界面6615中包括多个视频的预览窗,如第一视频文件6611的预览窗、第一视频文件6612的预览窗和第一视频文件6613的预览窗。响应于用户对第二界面中每个第一视频文件的预览操作,手机可以在对应的预览窗播放该第一视频文件。例如,第一视频文件6611的预览窗包括播放按钮。上述预览操作可以是用户对播放按钮的点击操作。
[1157] 其中,手机可以接收用户对第二界面中一个或多个第一视频文件的选择操作。上述第二界面6610还可以包括“保存”按钮6614。该“保存”按钮6614用于触发手机保存用户选择的第一视频文件(即第二视频文件)。
[1158] 本申请实施例这里介绍上述第一视频文件6611、第一视频文件6612和第一视频文件6613的详细内容。
[1159] 其中,如图66F所示,第一视频文件6611包括第一视频流,该第一视频流包括多帧第一预览图像6602。如图66F所示,第一视频文件6612包括第二视频流,该第二视频流包括多帧第二预览图像6606。如图66F所示,第一视频文件6613包括第一视频流和第二视频流。
[1160] 如图66A所示,当第一界面6601中计时选项6607的计时时长为00:00:08时,手机接收到用户对第一控件6604的点击操作(即第二操作)。如图66B所示,当第一界面6605中计时选项6608的计时时长为00:00:10时,手机接收到用户对停止录制按钮6605的点击操作(即第一操作)。因此,如图66F所示,第一视频流包括:在00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在显示屏的多帧第一预览图像6602。如图66F所示,第二视频流包括:在00:00:09‑00:00:10这段时间,由第二摄像头采集并显示在显示屏的多帧第二预览图像
6606。
[1161] 如图65B所示,S6505之后,本申请实施例的方法还包括S6506。
[1162] S6506、响应于用户对多个第一视频文件中第二视频文件的选择操作,手机保存第二视频文件。
[1163] 例如,假设手机接收到用户对图66C所示的第二界面6610中第一视频文件6611和第一视频文件6613的单击操作,双击操作或者长按操作等任一种操作,显示图66E所示的第二界面6616。然后,响应于用户对图66E中“保存”按钮6614的点击操作,手机可以保存第二视频文件(如第一视频文件6611和第一视频文件6613)。
[1164] 本申请实施例中,在单景录像模式下,手机可以在录像的过程中切换摄像头。并且,每切换一次摄像头,手机便可以生成一个临时视频文件,以供用户停止录像后,选择需要的视频文件。这样,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[1165] 在单景拍摄场景中,针对上述第二种情况,上述第一界面可以包括多个第二控件。第一控件是多个第二控件中的一个控件。每个第二控件对应多个摄像头中的一个摄像头,用于触发手机切换使用对应的摄像头。例如,图67A所示的第一界面6701包括多个第二控件
6702,如“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[1166] 其中,图67A所示的“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件的详细介绍,可以参考上述实施例对图62C中相关控件的介绍,本申请实施例这里不予赘述。
[1167] 在第二种情况的一些实施例中,手机可以以区别于其他摄像头的第二控件的方式,显示第一界面的预览摄像头的第二控件。示例性的,手机可以以第一显示方式显示第一界面的预览摄像头的第二控件,以第三显示方式显示其他摄像头的第二控件。例如,如图67A所示,手机以黑底白字的显示方式(即第一显示方式)显示“后置主摄”控件,以白底黑字的显示方式(即第三显示方式)显示其他第二控件,如“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置长焦”控件和“后置广角”控件。
[1168] 在第二种情况的上述实施例中,S6502所述的第二操作,可以是用户对图67A所示多个第二控件6702中第一控件的点击操作。示例性的,手机可以接收用户对图67A所示的多个第二控件6702中第一控件(如“前置主摄”控件)的点击操作。
[1169] 例如,响应于用户对图67A所示的多个第二控件6702中“前置主摄”控件的点击操作,手机可以显示图67B所示的录像的取景界面6704。在录像的取景界面6704中,预览图像由图67A所示的后置主摄像头(即第一摄像头)采集的第一预览图像6703切换为图67B所示的前置主摄像头(即第二摄像头)采集的第二预览图像6705。
[1170] 响应于用户对图67B所示的停止录制按钮6706的点击操作,手机可以显示图66C所示的第二界面6610。该第二界面6610用于预览多个第一视频文件(如第一视频文件6611、第一视频文件6612和第一视频文件6613)。该第一视频文件6611、第一视频文件6612和第一视频文件6613是手机响应于上述第一操作生成的临时视频文件。
[1171] 采用本申请实施例的方法,在单景录像模式下,手机可以在录像的过程中切换摄像头。并且,每切换一次摄像头,手机便可以生成一个临时视频文件,以供用户停止录像后,选择需要的视频文件。这样,可以按照用户需求保存用户选择的临时视频文件,可以提升用户的拍摄体验。
[1172] 在另一些实施例中,如图66A所示,第一界面6601还包括第三控件(如摄像头切换选项)6604。响应于用户对图66A所示的第三控件6604的点击操作,显示图67A所示的第一界面6701或图68A所示的第一界面6801。响应于用户对图68A所示的第一界面6801中第三控件6807的点击操作,手机可以隐藏第一界面6801中的多个第二控件6803,显示图66A所示的第一界面6601。
[1173] 应理解,本申请实施例中,上述多个第二控件在第一界面的位置包括但不限于图62A、图67A所示的位置。
[1174] 在单景拍摄模式下,手机还可以在第一界面(即手机正在录像的取景界面)的取景框内显示该多个第二控件。例如,手机可显示图68A所示的第一界面(即手机正在录制视频的取景界面)6801。该第一界面6801的取景框内显示有第一预览图像6802。该第一界面6801的取景框内还显示有多个第二控件6803,“前置主摄”控件、“前置长焦”控件、“前置广角”控件、“后置主摄”控件、“后置长焦”控件和“后置广角”控件。
[1175] 在多景拍摄模式下,手机还可以显示图68B所示的第一界面6804。在该第一界面6804中,第一取景框5901中包括多个第二控件6805,第二取景框5902中包括多个第二控件
6806。
[1176] 在另一些实施例中,在单景录像模式下,手机还可以暂停录像,每暂停一次手机可以保存一个临时视频文件。如图69A所示,在S6503之后,S6504之前,本申请实施例的方法还可以包括S6901‑S6904。如图69A所示,上述S6504可以包括S6905,S6505可以包括S6906。在S6906之后,手机可以执行S6506。
[1177] S6901、手机接收用户在第一界面的第三操作。
[1178] 其中,第一界面可以包括暂停录制按钮,该暂停录制按钮用于触发手机暂停录像。例如,图69B所示的第一界面6901包括暂停录制按钮6903。第三操作可以是用户对第一界面中暂停录制按钮的点击操作。或者,第三操作还可以是用户在第一界面输入的预设手势1。
[1179] 例如,手机执行S6501可显示图69B所示的第一界面6901。该第一界面6901包括第一摄像头采集的第一预览图像6902,该第一界面6901还包括第一控件6604和暂停录制按钮6903。手机执行S6502,可接收用户对图69B所示第一控件6604的第二操作。手机执行S6503,响应于用户对图69B所示第一控件6604的第二操作,手机可将预览摄像头由第一摄像头切换为第二摄像头,显示图69C所示的第一界面6904。该第一界面6904包括暂停录制按钮
6903。该暂停录制按钮6903用于触发手机暂停录像。手机可以接收用户对第一界面6904中暂停录制按钮6903的第三操作(如单击操作)。第一界面6904还包括第二摄像头采集的第二预览图像6905。
[1180] 当然,手机也可以接收用户对图69B所示的暂停录制按钮6903的第三操作(如单击操作),响应于用户对图69B所示的暂停录制按钮6903,手机也可以暂停录像。
[1181] S6902、响应于第三操作,手机显示第三界面。该第三界面是手机暂停录像的取景界面,该第三界面包括第二摄像头采集的第三预览图像。
[1182] 例如,响应于用户对图69C所示的暂停录制按钮6903的第三操作,手机可以显示图69D所示的第三界面6907。该第三界面6907包括第二摄像头采集的第三预览图像6908;第三界面6907还包括暂停录制按钮6909。其中,暂停录制按钮6903处于第一状态,暂停录制按钮
6909处于第二状态。
[1183] 手机执行S6901‑S6902暂停录像之后,用户可能只是想要在手机暂停录像的过程中,调整摄像头的拍摄视角和拍摄对象的姿态(即摆拍)。当用户调整好姿态后,便可以对第三界面中暂停录制按钮输入第四操作,继续录像。这样,可以提升手机录像的拍摄效果,提升用户的拍摄满意度。
[1184] S6903、手机接收用户在第三界面的第四操作。
[1185] 其中,第三界面可以包括暂停录制按钮,该暂停录制按钮用于触发手机继续录像。第四操作可以是用户对第三界面中暂停录制按钮的点击操作。或者,第四操作还可以是用户在第三界面输入的预设手势2。
[1186] S6904、响应于第四操作,手机显示第四界面。该第四界面是手机正在录像的取景界面,该第四界面包括第二摄像头采集的第四预览图像。
[1187] 例如,手机可以接收用户对第三界面6907中暂停录制按钮6909的第四操作(如点击操作)。响应于用户对暂停录制按钮6909的第四操作,手机可以继续录像,并显示图69E所示的第四界面6911。第四界面6911包括第二摄像头采集的第五预览图像6912。
[1188] 需要说明的是,图69C所示的第二预览图像6905、图69D所示的第三预览图像6908,以及图69E所示的第四预览图像6912均为第二摄像头采集的预览图像。但是,第二预览图像6905是手机录像过程中采集的预览图像,第三预览图像6908是手机暂停录像过程中采集的预览图像,第四预览图像6912是手机继续录像过程中采集的预览图像。因此,手机的视频处理(Media Recorder)模块5722可以缓存包括多帧第二预览图像6905的视频流(即第一视频流)和包括多帧第四预览图像6912的视频流(即第三视频流),而不会缓存包括多帧第三预览图像6908的视频流。
[1189] S6905、手机接收用户对第四界面的第一操作,该第一操作用于触发手机停止录制视频。
[1190] 例如,该第一操作可以是用户对第四界面6911中停止录制按钮6603的点击操作。手机可以接收用户对该图69E所示的停止录制按钮6603的点击操作。
[1191] S6906、响应于第一操作,手机显示用于预览多个第一视频文件的第二界面。该多个第一视频文件包括:包括第一视频流的视频文件,包括第二视频流的视频文件,包括第一视频流和第二视频流的视频文件,包括第三视频流的视频文件,包括第二视频流和第三视频流的视频文件,包括第一视频流、第二视频流和第三视频流的视频文件。第一视频文件包括多帧第一预览图像,第二视频文件包括多帧第二预览图像,第三视频流包括多帧第四预览图像。
[1192] 例如,响应于用户对图69E所示的停止录制按钮6603的点击操作,手机可以显示图69F所示的第二界面1620。该第二界面1620用于预览多个第一视频文件(如第一视频文件
6921、第一视频文件6922、第一视频文件6923、第一视频文件6924、第一视频文件6925和第一视频文件6926)。该第一视频文件6921、第一视频文件6922、第一视频文件6923、第一视频文件6924、第一视频文件6925和第一视频文件6926是手机响应于上述第一操作生成的临时视频文件。
[1193] 例如,第二界面1620中包括多个视频的预览窗,如第一视频文件6921的预览窗、第一视频文件6922的预览窗、第一视频文件6923的预览窗、第一视频文件6924的预览窗、第一视频文件6925的预览窗和第一视频文件6926的预览窗。响应于用户对第二界面中每个第一视频文件的预览操作,手机可以在对应的预览窗播放该第一视频文件。
[1194] 本申请实施例这里介绍上述第一视频文件6921、第一视频文件6922、第一视频文件6923、第一视频文件6924、第一视频文件6925和第一视频文件6926的详细内容。
[1195] 其中,如图69G所示,第一视频文件6921包括第一视频流,该第一视频流包括多帧第一预览图像6902。如图69G所示,第一视频文件6922包括第二视频流,该第二视频流包括多帧第二预览图像6905。如图69G所示,第一视频文件6923包括第一视频流和第二视频流。如图69H所示,第一视频文件6924包括第三视频流,该第三视频流包括多帧第四预览图像
6912。如图69I所示,第一视频文件6925包括第二视频流和第三视频流。如图69K所示,第一视频文件6926包括第一视频流、第二视频流和第三视频流。
[1196] 如图69B所示,当第一界面6901中计时选项6607的计时时长为00:00:08时,手机接收到用户对第一控件6604的点击操作(即第二操作)。因此,如图69G、图69I或图69K所示,第一视频流包括00:00:00‑00:00:08这段时间,由第一摄像头采集并显示在显示屏的多帧第一预览图像6902。并且,如图69C所示,当第一界面6904中计时选项6608的计时时长为00:00:10时,手机接收到用户对暂停录制按钮6903的点击操作(即第三操作)。因此,如图69G、图69I或图69K所示,第二视频流包括00:00:09‑00:00:10这段时间,由第二摄像头采集并显示在显示屏的多帧第二预览图像6905。
[1197] 如图69D所示,当第三界面6907中计时选项6906的计时时长为00:00:12时,手机接收到用户对暂停录制按钮6909的点击操作(即第四操作);如图69E所示,当第四界面6911中计时选项6910的计时时长为00:00:14时,手机接收到用户对停止录制按钮6603的点击操作(即第一操作)。因此,如图69H、图69I、图69J、图69K图69L所示,第三视频流包括00:00:13‑00:00:14这段时间,由第二摄像头采集并显示在显示屏的多帧第四预览图像6912。
[1198] 如图69I所示,在一种实现方式中,第一视频文件6925包括第二视频流和第三视频流。其中,图69I所示的第一视频文件6925的时长为4秒(s)。手机在播放第一视频文件16I的过程中,可以先播放第二视频流的每一帧图像,然后再播放第三视频流的每一帧图像。
[1199] 如图69J所示,在另一种实现方式中,第一视频文件6925包括第二视频流和第四视频流。其中,图69J所示的第一视频文件6925的时长为6秒(s)。手机在播放第一视频文件6925的过程中,可以先播放第二视频流的每一帧图像;在播放第二视频流的最后一帧图像后的2s(即00:00:11‑00:00:12)内,可以播放该第二视频流的最后一帧图像或者预设图像;
然后,从00:00:13开始,再播放第三视频流的每一帧图像。其中,上述预设图像可以是空白图像。手机在上述2s内播放第二视频流的最后一帧图像或者预设图像,可以为用户展示出视频暂停的效果。
[1200] 如图69K所示,在一种实现方式中,第一视频文件6926包括第一视频流、第二视频流、第三视频流。其中,图69K所示的第一视频文件6926的时长为12秒(s)。手机在播放第一视频文件16K的过程中,可以先播放第一视频流的每一帧图像,再播放第二视频流的每一帧图像,最后再播放第三视频流的每一帧图像。
[1201] 如图69L所示,在另一种实现方式中,第一视频文件6926包括第一视频流、第二视频流和第三视频流。其中,图69L所示的第一视频文件6926的时长为14秒(s)。手机在播放第一视频文件6926的过程中,可以先播放第一视频流的每一帧图像;然后播放第二视频流的每一帧图像;在播放第二视频流的最后一帧图像后的2s(即00:00:11‑00:00:12)内,可以播放该第二视频流的最后一帧图像或者预设图像;然后,从00:00:13开始,再播放第三视频流的每一帧图像。其中,上述预设图像可以是空白图像。手机在上述2s内播放第二视频流的最后一帧图像或者预设图像,可以为用户展示出视频暂停的效果。
[1202] 其中,在S6906之后,手机可以执行S6506。S6906之后,手机执行S6506详细描述本申请实施例这里不予赘述。
[1203] 本申请实施例中,生成第一视频文件6921、第一视频文件6922、第一视频文件6923、第一视频文件6924、第一视频文件6925和第一视频文件6926的原理,可以参考上述实施例对手机生成第一视频文件6331、第一视频文件6332、第一视频文件6333、第一视频文件
6334和第一视频文件6335的原理的介绍,这里不予赘述。
[1204] 在另一些实施例中,手机可以在暂停录像的过程中切换摄像头。例如,手机可以接收用户对16D所示第三界面6907中“后置长焦”控件的点击操作,将预览摄像头切换为后置长焦摄像头。其中,手机在暂停录像的过程中切换摄像头的具体方法,本申请实施例这里不予赘述。
[1205] 一般而言,手机单景录像的过程中,只有一个摄像头开启以采集图像。这样,手机在录像的过程中,如果手机要将预览摄像头由第一摄像头切换为第二摄像头,则启动第二摄像头需要一定的时间,则取景界面可能会出现短时间(如1秒)的黑屏或空白,影响用户体验。
[1206] 为了在手机录像的过程中,实现摄像头的无感切换,本申请实施例中,手机显示第一界面的过程中,不仅手机的第一摄像头在采集图像,手机的第二摄像头也在采集图像。具体的,采用本申请实施例的方法,手机可提前启动多个摄像头。需要注意的是,虽然第一摄像头和第二摄像头都在采集图像;但是,手机执行S6501时,第一摄像头作为预览摄像头,手机在第一界面显示第一摄像头采集的第一预览图像,不显示第二摄像头采集的图像。而手机执行S6503时,第二摄像头作为预览摄像头,手机在第一界面显示第二摄像头采集的第二预览图像,不显示第一摄像头采集的图像。
[1207] 也就是说,采用本申请实施例的方法,多个摄像头(如第一摄像头和第二摄像头)均采集图像,准备为SurfaceView提供视频流。手机执行S6501时,第一摄像头作为预览摄像头,SurfaceView显示视频流1(即第一视频流)。手机执行S6503,将预览摄像头由第一摄像头切换为第二摄像头后,第二摄像头作为预览摄像头,SurfaceView显示视频流2(即第二视频流)。
[1208] 示例性的,本申请实施例中,手机可以在手机进入单景录像模式时,便启动手机中的多个摄像头,以在手机录制视频的过程中,实现摄像头的无感切换。
[1209] 如此,手机启动多个摄像头采集图像,使得多个摄像头都准备好视频流供SurfaceView显示。这样,无论手机切换使用哪一个摄像头,都不会因为启动摄像头需要一定时间使得取景界面的出现短时间(如1秒)的黑屏或空白。采用本方案,可以在手机录制视频的过程中,实现摄像头的无感切换,可以提升用户的拍摄体验。
[1210] 需要注意的是,手机在执行S6501的过程中,可以缓存包括上述多帧第一预览图像的视频流。但是,响应于上述第二操作,手机并不会暂停或停止录制视频,手机也不会保存由多帧第一预览图像组成的视频流的视频文件。而是继续录制视频,并缓存包括多帧第二预览图像的视频流,直至接收到用户的第一操作,手机响应于该第一操作才会停止录制视频,并保存多个第一视频文件。其中,手机响应于第一操作保存多个第一视频文件,以及第一视频文件的详细描述,可以参考以下实施例中的内容,这里不予赘述。
[1211] 在一些实施例中,为了降低手机的功耗,在单景录像模式下,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第一界面的第二操作,才启动第二摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[1212] 在一些实施例中,手机可以在手机进入多景录像模式时,便启动手机中的多个摄像头,以在手机录制视频的过程中,实现摄像头的无感切换。
[1213] 在另一些实施例中,为了降低手机的功耗,在多景录像模式下,手机可以不提前启动手机中的多个摄像头,而是响应于用户对第一界面的第二操作,才启动第三摄像头。这样,虽然切换摄像头的过程中取景界面可能会出现短时间(如1秒)的黑屏或空白,但是相比于提前启动多个摄像头的方案,可以降低手机的功耗。
[1214] 本申请实施例中,手机在上述单景录像的取景界面或多景录像的取景界面显示的多个第二控件,至少可以包括以下三种实现方式。
[1215] 实现方式(a):
[1216] 如图62A、图67A或图68A中任一附图所示,多个第二控件中的每个第一控件上显示有对应摄像头的类型指示信息。在本申请实施例中,一个摄像头的类型指示信息用于指示该摄像头的摄像头类型,还可以指示该摄像头为前置摄像头或后置摄像头。
[1217] 例如,以多景录像的取景界面为例。如图68A所示,多个第二控件6805上的各个第二控件上分别显示有如下类型指示信息,“前置主摄”、“前置长焦”、“前置广角”、“后置主摄”、“后置长焦”、“后置广角”。其中,类型指示信息“前置主摄”用于指示第二控件对应前置主摄像头。类型指示信息“前置长焦”用于指示第二控件对应前置长焦摄像头。类型指示信息“前置广角”用于指示第二控件对应前置广角摄像头。类型指示信息“后置主摄”用于指示第二控件对应后置主摄像头。类型指示信息“后置长焦”用于指示第二控件对应后置长焦摄像头。类型指示信息“后置广角”用于指示第二控件对应后置广角摄像头。
[1218] 实现方式(b):
[1219] 多个第二控件中的每个第二控件上显示有对应摄像头采集的预览图像。例如,以单景录像的取景界面为例。如图70A所示,第一界面7000包括多个第二控件,如第二控件7001、第二控件7002、第二控件7003、第二控件7004、第二控件7005和第二控件7006。
[1220] 其中,第二控件7001中显示有后置主摄像头采集的预览图像。第二控件7002中显示有后置广角摄像头采集的预览图像。第二控件7003中显示有后置长焦摄像头采集的预览图像。第二控件7004中显示有前置主摄像头采集的预览图像。第二控件7005中显示有前置广角摄像头采集的预览图像。第二控件7006中显示有前置长焦摄像头采集的预览图像。
[1221] 因此,上述第二控件7001也可以称为“后置主摄”控件,上述第二控件7002也可以称为“后置广角”控件,上述第二控件7003还可以称为“后置长焦”控件;上述第二控件7004还可以称为“前置主摄”控件,上述第二控件7005还可以称为“前置广角”控件,上述第二控件7006还可以称为“前置长焦”控件。手机还可以显示图70B所示的第一界面7007。
[1222] 其中,图70A所示的第一界面7000和图70B所示的第一界面7007还包括摄像头切换选项。响应于用户对图70A或图70B所示的摄像头切换选项的点击操作,手机可隐藏上述多个第二控件,显示图66A所示的第一界面6601。
[1223] 应理解,在每个第一控件上显示对应摄像头采集的预览图像,可以直观的向用户展示每个摄像头的拍摄效果和拍摄视角等,有利于用户从多个摄像头中选择拍摄效果和拍摄视角等满足用户需求的摄像头。这样,可以提升用户的拍摄体验。
[1224] 实现方式(c):
[1225] 多个第二控件中的每个第二控件上显示有对应摄像头的代理信息。在本申请实施例中,一个摄像头的代理信息可以指示该摄像头为前置摄像头或后置摄像头,还可以包括该摄像头的编号。
[1226] 在一种情况下,摄像头的编号可以是手机为摄像头分配的。例如,摄像头的编号可以是摄像头的Camera ID。不同摄像头的Camera ID不同。在另一种情况下,摄像头的编号可以是用户在手机中为摄像头分配的。不同前置摄像头的编号不同,不同后置摄像头的编号不同。
[1227] 例如,以单景录像的取景界面为例。如图71所示,第一界面7100包括多个第二控件7101。例如,以摄像头的编号为1、2、3为例。该多个第二控件7101可以包括“前置摄像头1”控件、“前置摄像头2”控件、“前置摄像头3”控件、“后置摄像头1”控件、“后置摄像头2”控件、“后置摄像头3”控件。
[1228] 其中,代理信息“前置摄像头1”用于指示第二控件(如“前置摄像头1”控件)对应一个前置摄像头,该前置摄像头的编号为1。例如,编号为1是前置摄像头是前置主摄像头。代理信息“前置摄像头2”用于指示第二控件(如“前置摄像头2”控件)对应一个前置摄像头,该前置摄像头的编号为2。例如,编号为2是前置摄像头是前置广角摄像头。代理信息“前置摄像头3”用于指示第二控件(如“前置摄像头3”控件)对应一个前置摄像头,该前置摄像头的编号为3。例如,编号为3是前置摄像头是前置长焦摄像头。
[1229] 代理信息“后置摄像头1”用于指示第二控件(如“后置摄像头1”控件)对应一个后置摄像头,该后置摄像头的编号为1。例如,编号为1是后置摄像头是后置主摄像头。代理信息“后置摄像头2”用于指示第二控件(如“后置摄像头2”控件)对应一个后置摄像头,该后置摄像头的编号为2。例如,编号为2是后置摄像头是后置广角摄像头。代理信息“后置摄像头3”用于指示第二控件(如“后置摄像头3”控件)对应一个后置摄像头,该后置摄像头的编号为3。例如,编号为3是后置摄像头是后置长焦摄像头。
[1230] 在另一些实施例中,手机可以采用上述实现方式(a)‑实现方式(c)中的至少一种实现方式,在第一界面显示多个第二控件。其中,手机在第一界面显示多个第二控件的具体实现方式可以预先配置在手机中,也可以由用户在手机中设置。其中,手机接收并根据用户设置,显示多个第二控件的具体方法可以参考常规技术中的相关描述这里不予赘述。
[1231] 示例性的,本申请实施例这里以手机处于多景录像模式为例,结合附图57以及上述实施例所述的方法步骤,介绍本申请实施例中手机拍摄视频的方法流程。
[1232] 其中,手机进入多录像模式后,应用层5710的系统相机应用5711可以触发底层执行7201,根据Camera ID启动摄像头的视频流。例如,系统相机应用5711可以通过框架层5720向硬件抽象层HAL 5730发送携带多景中每一景的预览摄像头的相机标识Camera ID‑1的通知,该通知用于指示硬件抽象层HAL 5730执行7202,根据Camera ID启动摄像头的视频流。其中,硬件抽象层HAL 5730可以指示内核层(Kernel)启动相机标识为Camera ID的摄像头,从而便可以从内核层(Kernel)5740得到该摄像头的视频流。内核层(Kernel)5740的相机驱动5741可以根据Camera ID启动Camera器件5742中的摄像头。硬件抽象层HAL 5730可以执行7202,管理多景录像模式下视频流的各种切换。
[1233] 其中,内核层(Kernel)5740的Camera器件5742采集视频流的原理为:Camera器件5742可以将取景环境中反射的光信号转换为电信号,并由图像信号处理器ISP 5743对该电信号进行处理得到视频流。
[1234] 然后,硬件抽象层HAL 5730可以对来自底层(如内核层5740)的数据(如视频流1)进行处理,然后再传输给框架层5720。例如,HAL层5730可以将内核层5740的关于硬件设备的参数转换为框架层5720和应用层5710可识别的软件程序语言。
[1235] 框架层5720可以接收硬件抽象层HAL 5730传输的来自底层(如内核层5740)的视频流(如多景的视频流)。框架层5720的相机服务5723可以通过API 1|API 2接口5721向上层(如应用层5710)传输该视频流。应用层5710的系统相机应用5711接收到该视频流后,可以在取景界面呈现该多景的视频流,如图72所示的多景一的视频流和多景二的视频流等。
[1236] 之后,手机可执行7203开始拍摄(即录像)。例如,手机可执行S5801显示第一界面,即手机多景录像的取景界面。然后,手机可执行7204,在拍摄中切换摄像头,暂停录像等。其中,应用层5710可以实时刷新SurfaceView中的视频流。SurfaceView中实时显示手机的预览摄像头采集的视频流。由于SurfaceView中实时显示手机的预览摄像头采集的视频流;因此,框架层5720的视频处理模块5722实时从SurfaceView获取并缓存视频流,便可以缓存呈现在手机录制视频的取景界面的视频流。本申请实施例中,视频处理模块5722可以针对手机的每次切换摄像头、暂停录像等操作,均执行7205生成一个临时视频文件。手机执行7206拍摄完成(即手机接收到用户对暂停录制按钮的点击操作)后,应用层的预览保存模块7207则可以执行7208预览多个临时视频文件(即上述多个第一视频文件)。其中,多个临时视频文件至少可以包括图72所示的四种类型的视频文件。
[1237] (1)所有景合并的视频文件,如图59E所示的第一视频文件5913,如图61D所述的第一视频文件6115,如图62E所示的第一视频文件6215,如图63F所示的第一视频文件6335。
[1238] (2)每一景整体视频文件,如图59E所示的第一视频文件5911和第一视频文件5912,如图61D所示的第一视频文件6114,如图62E所示的第一视频文件6214,如图63G所示的第一视频文件6333。
[1239] (3)每一景切换前后的分段视频文件,如图61D所示的第一视频文件6111和第一视频文件6112,如图62E所示的第一视频文件6211和第一视频文件6212。
[1240] (4)每一景暂停前后的分段视频文件,如图63F所示的第一视频文件6331和第一视频文件6332。其中,图63G所示的第一视频文件6333是暂停前后的整体视频文件。
[1241] 最后,手机可以执行7209按需保存视频文件。具体的,手机可以显示用于预览多个临时视频文件(即第一视频文件)的第二界面。然后,手机可以接收用户对该多个临时视频文件中第二视频文件的选择操作,保存用户选择的第二视频文件。其中,手机可以保存用户选择的一个或多个第二视频文件。
[1242] 通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
[1243] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[1244] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[1245] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[1246] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[1247] 以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。