视频旋转方法、装置、计算机可读存储介质及电子设备与流程

文档序号:16888998发布日期:2019-02-15 22:53阅读:142来源:国知局
视频旋转方法、装置、计算机可读存储介质及电子设备与流程

本公开涉及信息技术领域,具体地,涉及一种视频旋转方法、装置、计算机可读存储介质及电子设备。



背景技术:

随着信息技术的不断发展,终端的功能越来越强大。为了满足用户的观看视频需求,终端提供了视频旋转显示功能。现阶段,当用户想要改变视频的显示角度时,只能通过视频下方的顺时针旋转按钮或者逆时针旋转按钮来控制其旋转90度、180度,270度、或者360度,而无法将其旋转至任意角度。



技术实现要素:

为了克服现有技术中存在的问题,本公开提供一种视频旋转方法、装置、计算机可读存储介质及电子设备。

为了实现上述目的,根据本公开实施例的第一方面,本公开提供一种视频旋转方法,包括:

获取视频旋转指令;

根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度,其中,所述目标旋转角度为任意角度;

控制所述视频按照所述目标旋转方向和所述目标旋转角度进行旋转。

可选地,所述获取视频旋转指令,包括:

当接收到用户施加在用于控制所述视频旋转的旋转按钮上的旋转操作时,生成视频旋转指令;

所述根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度,包括:

根据所述视频旋转指令,确定所述旋转操作对应的旋转方向和旋转角度;

将所述旋转方向确定为视频的目标旋转方向,并将所述旋转角度确定为目标旋转角度。

可选地,所述旋转按钮为旋转杆。

可选地,所述获取视频旋转指令,包括:

当接收到用户输入的待旋转角度时,生成视频旋转指令;

所述根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度,包括:

根据所述视频旋转指令,确定所述待旋转角度;

当所述待旋转角度大于或等于零时,将顺时针旋转方向确定为所述目标旋转方向;

当所述待旋转角度小于零时,将逆时针旋转方向确定为视频的目标旋转方向;

将所述待旋转角度确定为目标旋转角度。

可选地,在所述根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度的步骤之前,所述方法还包括:

检测所述视频是否处于锁定状态;

所述根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度,包括:

在所述视频处于非锁定状态时,根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度。

可选地,在所述控制所述视频按照所述目标旋转方向和所述目标旋转角度进行旋转的步骤之后,所述方法还包括:

获取当前显示界面的长宽比例;

根据所述长宽比例和所述视频对应的视频帧的尺寸,对所述视频进行尺寸缩放。

可选地,在所述控制所述视频按照所述目标旋转方向和所述目标旋转角度进行旋转的步骤之后,所述方法还包括:

显示所述视频的当前旋转角度。

根据本公开实施例的第二方面,本公开提供一种视频旋转装置,包括:

获取模块,用于获取视频旋转指令;

确定模块,用于根据所述获取模块获取到的所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度,其中,所述目标旋转角度为任意角度;

控制模块,用于控制所述视频按照所述确定模块确定出的所述目标旋转方向和所述目标旋转角度进行旋转。

根据本公开实施例的第三方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时本公开第一方面提供的所述视频旋转方法的步骤。

根据本公开实施例的第四方面,本公开提供一种电子设备,包括:

存储器,其上存储有计算机程序;

处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面提供的所述视频旋转方法的步骤。

在上述技术方案中,在获取到视频旋转指令时,首先根据该视频旋转指令确定视频的目标旋转方向和目标旋转角度;然后,控制视频按照该目标旋转方向和目标旋转角度进行旋转。由此,可实现视频旋转任意角度,且方便快捷,提升了用户体验。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据一示例性实施例示出的一种视频旋转方法的流程图。

图2是根据一示例性实施例示出的一种旋转按钮的示意图。

图3是根据一示例性实施例示出的一种确定目标旋转方向和目标旋转角度的方法的流程图。

图4是根据另一示例性实施例示出的一种确定目标旋转方向和目标旋转角度的方法的流程图。

图5是根据另一示例性实施例示出的一种视频旋转方法的流程图。

图6是根据另一示例性实施例示出的一种视频旋转方法的流程图。

图7是根据另一示例性实施例示出的一种视频旋转方法的流程图。

图8是根据一示例性实施例示出的一种视频旋转装置的框图。

图9是根据一示例性实施例示出的一种电子设备的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

图1是根据一示例性实施例示出的一种视频旋转方法的流程图。如图1所示,该视频旋转方法可以包括以下步骤。

在步骤101中,获取视频旋转指令。

在本公开中,该方法可以应用于终端,例如,智能手机、平板电脑等。并且,该终端可以通过多种方式来获取上述视频旋转指令,在一种实施方式中,在视频的显示界面上可以设置有旋转按钮,其中,该旋转按钮可以用于控制视频旋转,即,用户可以通过操作该旋转按钮即可控制视频旋转。具体来说,用户可以通过施加在显示界面上的旋转操作来控制上述旋转按钮旋转,还可以通过鼠标来控制上述旋转按钮旋转。当终端接收到用户施加在上述旋转按钮上的旋转操作时,生成视频旋转指令。

示例地,如图2所示,上述旋转按钮可以为旋转杆。优选地,上述旋转杆可以设置在视频的显示界面的中心区域,并且,该旋转杆的一端固定在视频的显示界面的中心点,另一端可以绕该中心点旋转。

另外,需要说明的是,上述旋转按钮除了可以为旋转杆外,还可以是圆形旋钮,在本公开中不作具体限定。

在另一种实施方式中,用户还可以通过语音、键盘等方式直接输入用于控制视频旋转的角度值(即,待旋转角度),这样,终端在接收到用户输入的待旋转角度时,生成视频旋转指令。

在步骤102中,根据视频旋转指令,确定视频的目标旋转方向和目标旋转角度。

在本公开中,上述目标旋转角度可以为任意角度。在通过上述步骤101获取到视频旋转指令后,终端可以根据该视频旋转指令,确定视频的目标旋转方向和目标旋转角度。并且,终端可以通过多种方式来确定上述目标旋转方向和目标旋转角度,在一种实施方式中,当用户通过施加在旋转按钮上的旋转操作控制视频旋转时,终端可以通过图3中所示的步骤1021和步骤1022来确定上述目标旋转方向和目标旋转角度。

在步骤1021中,根据视频旋转指令,确定旋转操作对应的旋转方向和旋转角度。

在步骤1022中,将旋转操作对应的旋转方向确定为视频的目标旋转方向,并将旋转操作对应的旋转角度确定为目标旋转角度。

在本公开中,在通过上述步骤101中的第一种实施方式获取到视频旋转指令后,可以先解析该视频旋转指令,获取与该视频旋转指令对应的旋转操作的旋转方向和旋转角度,之后,将该旋转方向、旋转角度分别确定为视频的目标旋转方向、目标旋转角度。

在另一种实施方式中,当用户通过输入待旋转角度的方式来控制视频旋转时,终端可以通过图4中所示的步骤1023~步骤1027来确定上述目标旋转方向和目标旋转角度。

在步骤1023中,根据视频旋转指令,确定待旋转角度。

在本公开中,在通过上述步骤101中的第二种实施方式获取到视频旋转指令后,可以先解析该视频旋转指令,获取该视频旋转指令对应的待旋转角度。

在步骤1024中,判定待旋转角度是否小于零。

在本公开中,可以通过判定上述步骤1023中确定出的待旋转角度来确定出目标旋转方向。具体来说,当上述待旋转角度大于或等于零时,表明用户期望视频按照顺时针方向进行旋转或不进行旋转,此时,可以将顺时针旋转方向确定为目标旋转方向(即,执行以下步骤1025);当上述待旋转角度小于零时,表明用户期望视频按照逆时针方向进行旋转,此时,可以将逆时针旋转方向确定为目标旋转方向(即,执行以下步骤1026)。

在步骤1025中,将顺时针旋转方向确定为目标旋转方向。

在步骤1026中,将逆时针旋转方向确定为视频的目标旋转方向。

在步骤1027中,将待旋转角度确定为目标旋转角度。

在本公开中,在通过上述步骤1023获取到待旋转角度后,可以将该待旋转角度确定为目标旋转角度。

另外,需要说明的是,上述步骤1027可以在上述步骤1024之前执行,还可以在上述步骤1024之后执行,还可以与上述步骤1024同时执行,在本公开中不作具体限定。

返回图1,在步骤103中,控制视频按照目标旋转方向和目标旋转角度进行旋转。

在本公开中,在通过上述步骤102确定出目标旋转方向和目标旋转角度后,可以控制视频按照该目标旋转方向和目标旋转角度进行旋转。

在上述技术方案中,在获取到视频旋转指令时,首先根据该视频旋转指令确定视频的目标旋转方向和目标旋转角度;然后,控制视频按照该目标旋转方向和目标旋转角度进行旋转。由此,可实现视频旋转任意角度,且方便快捷,提升了用户体验。

图5是根据另一示例性实施例示出的一种视频旋转方法的流程图。如图5所示,在上述步骤102之前,上述方法还可以包括以下步骤104。

在步骤104中,检测视频是否处于锁定状态。

在本公开中,为了避免用户勿触碰视频的显示界面导致的视频误旋转,可以在视频的显示界面上设置锁定按钮。其中,该锁定按钮可以包括开启状态和关闭状态,并且,当该锁定按钮处于开启状态时,视频处于锁定状态,此时,用户无法控制该视频旋转,而当该锁定按钮处于关闭状态时,视频处于非锁定状态,此时,用户可以控制该视频旋转。因此,当终端根据视频旋转指令,确定视频的目标旋转方向和目标旋转角度之前,为了避免用户因勿触碰导致的视频误旋转,可以先检测视频是否处于锁定状态。当确定该视频处于非锁定状态时,可以控制视频旋转,即执行以上步骤102和103;而当确定该视频处于锁定状态时,不控制视频旋转,即不执行任何操作,也即结束。

另外,需要说明的是,上述步骤104可以在上述步骤102之前执行(如图5中所示),也可以在上述步骤102之后执行,还可以与上述步骤102同时执行,在本公开中不作具体限定。

此外,旋转后的视频可能不适应终端的当前显示界面,用户的视觉体验将受到影响,为此,在控制视频旋转后,还需要对旋转后的视频进行尺寸缩放,使其适应当前显示界面,从而提升用户体验。具体来说,如图6所示,上述视频旋转方法还可以包括以下步骤105和步骤106。

在步骤105中,获取当前显示界面的长宽比例。

在步骤106中,根据当前显示屏的长宽比例和视频对应的视频帧的尺寸,对视频进行尺寸缩放。

在本公开中,在通过上述步骤103控制视频旋转后,可以先获取当前界面的长宽比例和上述视频对应的视频帧的尺寸,然后根据该长宽比例和上述视频对应的视频帧的尺寸,对上述视频进行尺寸缩放,以使其适应当前显示界面。

另外,需要说明的,上述获取当前显示界面的长宽比例的具体方式、获取视频对应的视频帧的尺寸具体方式、以及根据该长宽比例和上述视频对应的视频帧的尺寸对上述视频进行尺寸缩放的具体方式均属于本领域技术人员公知的,在本公开中不再赘述。

图7是根据另一示例性实施例示出的一种视频旋转方法的流程图。如图7所示,上述方法还可以包括以下步骤107。

在步骤107中,显示视频的当前旋转角度。

在本公开中,在通过上述步骤103控制视频旋转后,还可以显示该视频的当前旋转角度,这样,用户通过视频的显示界面即可获知视频的当前旋转角度,方便快捷。

图8是根据一示例性实施例示出的一种视频旋转装置的框图。参照图8,该装置800可以包括:获取模块801,用于获取视频旋转指令;确定模块802,用于根据所述获取模块801获取到的所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度,其中,所述目标旋转角度为任意角度;控制模块803,用于控制所述视频按照所述确定模块802确定出的所述目标旋转方向和所述目标旋转角度进行旋转。

可选地,所述获取模块801用于当接收到用户施加在用于控制所述视频旋转的旋转按钮上的旋转操作时,生成视频旋转指令;所述确定模块802包括:第一确定子模块,用于根据所述获取模块801获取到的所述视频旋转指令,确定所述旋转操作对应的旋转方向和旋转角度;第二确定子模块,用于将所述第一确定子模块确定出的所述旋转方向确定为视频的目标旋转方向,并将所述第一确定子模块确定出的所述旋转角度确定为目标旋转角度。

可选地,所述旋转按钮为旋转杆。

可选地,所述获取模块801用于当接收到用户输入的待旋转角度时,生成视频旋转指令;所述确定模块802包括:第三确定子模块,用于根据所述获取模块801获取到的所述视频旋转指令,确定所述待旋转角度;第四确定子模块,用于当所述第三确定子模块确定出的所述待旋转角度大于或等于零时,将顺时针旋转方向确定为所述目标旋转方向;第五确定子模块,用于当当所述第三确定子模块确定出的所述待旋转角度小于零时,将逆时针旋转方向确定为视频的目标旋转方向;第六确定子模块,用于将所述第三确定子模块确定出的所述待旋转角度确定为目标旋转角度。

可选地,所述装置800还可以包括检测模块,用于在所述确定模块802根据所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度之前,检测所述视频是否处于锁定状态;所述确定模块802用于在所述检测模块确定所述视频处于非锁定状态时,根据所述获取模块801获取到的所述视频旋转指令,确定视频的目标旋转方向和目标旋转角度。

可选地,所述装置800还可以包括长宽比例获取模块,用于在所述控制模块803控制所述视频按照所述目标旋转方向和所述目标旋转角度进行旋转之后,获取当前显示界面的长宽比例;尺寸缩放模块,用于根据所述长宽比例获取模块获取到的所述长宽比例和所述视频对应的视频帧的尺寸,对所述视频进行尺寸缩放。

可选地,所述装置800还可以包括显示模块,用于在所述控制模块803控制所述视频按照所述目标旋转方向和所述目标旋转角度进行旋转之后,显示所述视频的当前旋转角度。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本公开还提供一种计算机可读存储介质,其上存储有计算机程序,其该程序被处理器执行时实现上述的视频旋转方法的步骤。

图9是根据一示例性实施例示出的一种电子设备900的框图。如图9所示,该电子设备900可以包括:处理器901,存储器902。该电子设备900还可以包括多媒体组件903,输入/输出(i/o)接口904,以及通信组件905中的一者或多者。

其中,处理器901用于控制该电子设备900的整体操作,以完成上述的视频旋转方法中的全部或部分步骤。存储器902用于存储各种类型的数据以支持在该电子设备900的操作,这些数据例如可以包括用于在该电子设备900上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器902可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件903可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器902或通过通信组件905发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口904为处理器901和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件905用于该电子设备900与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件905可以包括:wi-fi模块,蓝牙模块,nfc模块。

在一示例性实施例中,电子设备900可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的视频旋转方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的视频旋转方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器902,上述程序指令可由电子设备900的处理器901执行以完成上述的视频旋转方法。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1