一种音视频片段的截取方法和装置与流程

文档序号:11139417阅读:437来源:国知局
一种音视频片段的截取方法和装置与制造工艺

本发明涉及计算机技术领域,尤其涉及一种音视频片段的截取方法和装置。



背景技术:

近年以来,多媒体信息技术发展快速,用户越来越习惯于手持终端来播放音视频,当用户在观看视频且听音频的过程中,对视频中的某个音频片段以及该音频片段同步播放的视频片段很感兴趣时,用户有从播放的音视频频中截取某个音频片段以及视频片段存储下来的需要,例如,用户利用终端看球赛视频,若用户对视频中播放的某段视频以及与该视频伴随的音频片段很感兴趣时,用户需要保存这个音频片段和视频片段。而现有技术中在音视频截取的技术中,音频处理和视频处理往往是分开独立处理的,例如在音频处理中,用户会提交截取命令给终端,终端需要停止当前播放的视频或者音频,并保存当前停止播放的音频内容,这种音频截取方案是对音频内容的及时抓取,音频抓取的处理效率很低。例如在对视频处理中,需要对多个视频图像的截图合并得到截取的视频片段,这种视频片段的截取方法只适用于需要截取时长较短、仅由少数视频画面组合的视频片段,若用户需要截取的是时间跨度大的视频片段时,按照上述方法就需要截图特别多的视频图像,因此视频片段的截取效率很低。现有技术中对音频和视频的处理效率都很低。



技术实现要素:

本发明实施例提供了一种音视频片段的截取方法和装置,用于提高音视频片段截取的处理效率。

为解决上述技术问题,本发明实施例提供以下技术方案:

第一方面,本发明实施例提供一种音视频片段的截取方法,包括:

接收用户通过当前播放终端发送的音视频截取指令,所述音视频截取指令包括:所述用户确定的需要截取音视频的截取开始时间点和截取结束时间点、所述用户在所述当前播放终端的播放界面中划定的视频截取区域以及所述用户选择的目标用途;

从播放时间为所述截取开始时间点开始,根据所述音视频截取指令获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与所述视频截取区域对应的已解码视频数据,直至播放时间为所述截取结束时间点为止,停止获取与当前正在播放的音频文件对应的已解码音频数据,同时停止获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据;

从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,生成音频片段和视频片段,将所述音频片段和所述视频片段进行合成,得到音视频片段;

根据所述目标用途将所述音视频片段输出。

第二方面,本发明实施例还提供一种终端,包括:

接收模块,用于用户通过当前播放终端发送的音视频截取指令,所述音视频截取指令包括:所述用户确定的需要截取音视频的截取开始时间点和截取结束时间点、所述用户在所述当前播放终端的播放界面中划定的视频截取区域以及所述用户选择的目标用途;

已解码数据获取模块,用于从播放时间为所述截取开始时间点开始,根据所述音视频截取指令获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与所述视频截取区域对应的已解码视频数据,直至播放时间为所述截取结束时间点为止,停止获取与当前正在播放的音频文件对应的已解码音频数据,同时停止获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据;

文件编码模块,用于从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,生成音频片段和视频片段,将所述音频片段和所述视频片段进行合成,得到音视频片段;

音视频片段输出模块,用于根据所述目标用途将所述音视频片段输出。

从以上技术方案可以看出,本发明实施例具有以下优点:

在本发明实施例中,用户通过当前播放终端发送音视频截取命令时,首先接收音视频截取指令,音视频截取指令包括:截取开始时间点、截取结束时间点、用户划定的视频截取区域和用户选择的目标用途,终端中的播放界面开始播放音频文件和视频文件后,当播放时间达到截取开始时间点之后,可以获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,在截取结束时间点还未达到之前,仍需要继续获取与当前正在播放的音频文件对应的已解码音频数据,需要继续获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,根据音视频截取指令可以获取到多个已解码音频数据和多个已解码视频数据,在截取结束时间点到达之后,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,从而可以生成音频片段和视频片段,通过音频片段和视频片段的合成,可以得到音视频片段,最后可以根据目标用途输出音视频片段。本发明实施例中中是通过获取正在播放的音频文件对应的已解码音频数据,然后再对已解码音频数据进行文件格式编码的方式得到需要截取的音频片段,而不是通过抓取多个音频来组合得到音频片段,类似的,通过获取正在播放的视频文件对应的已解码视频数据,然后再对已解码视频数据进行文件格式编码的方式得到需要截取的视频片段,而不是通过抓取多张的视频图像来组合得到视频片段。本发明实施例中即使需要截取时间跨度大的音频片段和视频片段,只需要由用户设置截取开始时间点和截取结束时间点即可,音视频片段的截取处理效率也很高。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种音视频片段的截取方法的流程方框示意图;

图2为本发明实施例中视频截取区域的获取方式示意图;

图3为本发明实施例提供的一种音视频片段的截取流程示意图;

图4为本发明实施例提供的已解码音频数据的处理流程示意图;

图5-a为本发明实施例提供的一种音视频片段的截取装置的组成结构示意图;

图5-b为本发明实施例提供的另一种音视频片段的截取装置的组成结构示意图;

图5-c为本发明实施例提供的另一种音视频片段的截取装置的组成结构示意图;

图5-d为本发明实施例提供的另一种音视频片段的截取装置的组成结构示意图;

图5-e为本发明实施例提供的另一种音视频片段的截取装置的组成结构示意图;

图5-f为本发明实施例提供的另一种音视频片段的截取装置的组成结构示意图;

图6为本发明实施例提供的音视频片段的截取方法应用于终端的组成结构示意图。

具体实施方式

本发明实施例提供了一种音视频片段的截取方法和装置,用于提高音视频片段截取的处理效率。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有” 以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

以下分别进行详细说明。

本发明音视频片段的截取方法的一个实施例,具体可以应用于音视频播放的终端中需要截取音视频片段的场景中,请参阅图1所示,本发明一个实施例提供的音视频片段的截取方法,可以包括如下步骤:

101、接收用户通过当前播放终端发送的音视频截取指令。

其中,音视频截取指令包括:用户确定的需要截取音视频的截取开始时间点和截取结束时间点、用户在当前播放终端的播放界面中划定的视频截取区域以及用户选择的目标用途。

在本发明实施例中,用户在操作终端进行音视频播放时,用户在听到很感兴趣的音频和看到与音频同步的视频时,用户可以操作终端上的截取音视频按钮,从而触发终端执行音视频片段的截取,例如,终端的触摸屏幕上显示一个截取音视按钮,当用户需要截取音视频时,用户点击触摸屏幕上的截取音视频按钮,用户向终端发送一个音视频截取指令,该音视频截取指令包括用户需要的截取开始时间点,当用户不需要继续截取音视频时,用户可以再次点击触摸屏幕上的截取音视频按钮,用户可以再向终端发送一个音视频截取指令,该音视频截取指令包括用户需要的截取结束时间点。不限制的是,在本发明实施例中,用户直接可以确定需要截取的音视频时长,则用户可以向终端发送一个音视频截取指令,在该音视频截取指令中包括截取开始时间点、截取结束时间点,从而终端可以确定从哪个时间点开始截取音视频,以及该截取多长时间段的音视频。

另外,在本发明实施例中,当用户需要对当前播放终端的播放界面的部分画面区域进行截取,而不需要截取整个播放界面的视频画面时,用户设备可以在当前播放终端的播放界面中划定一个视频截取区域,那么在该视频截取区域以外的画面不做截取,此时用户设备也可以在音视频截取指令中携带用户从播放界面中划定的视频截取区域。另外,用户通过音视频截取指令还可以选择目标用途,以指示终端截取到音视频片段会按照特定的目标用途来 输出音视频片段,例如用户将截取到的音视频片段存档,或者存档后分享到QQ空间或者微信中,目标用途指明了用户需要输出的音视频片段的特定用途,则本发明中音视频截取得到的音视频片段可以满足用户对上述目标用途的要求。

在本发明的一些实施例中,用户发送给终端的音视频截取指令除了包括截取开始时间点、截取结束时间点之外,还可以包括用户需要指示终端的其它信息,例如,用户可以指示终端应该输出满足什么样音频参数要求的音视频片段,即本发明中还可以进一步的,对截取输出的音视频片段按照用户要求的音频参数来输出相应的音视频片段,从而可以满足用户对截取音频的更多要求。又如,用户可以指示终端应该输出满足什么样视频参数要求的音视频片段,即本发明中还可以进一步的对截取输出的音视频片段按照用户要求的视频参数来输出相应的音视频片段,从而可以满足用户对截取音视频的更多要求。

具体的,在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标音频文件格式,即用户可以指示终端输出音频参数为目标音频文件格式的音视频片段,其中,文件格式是指音频文件的文件本身的格式,例如可以是MP3、wma、ape等,目标音频文件格式指明了用户需要输出的特定文件格式,则本发明中音频截取得到的音视频片段可以满足用户对上述目标音频文件格式的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标采样频率,即用户可以指示终端输出音频参数为目标采样频率的音视频片段,其中,采样频率是指音频文件中每秒从连续信号中提取的采样个数,可以用赫兹(Hz)来表示,例如,采样频率可以分为22.05KHz、44.1KHz、48KHz等多个等级,目标采样频率指明了用户需要输出的特定采样频率,则本发明中音频截取得到的音视频片段可以满足用户对上述目标采样频率的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标音频格式,即用户可以指示终端输出音频参数为目标音频格式的音视频片段,其中,音频格式是指音频文件的音频内容编码格式,例如可以是PCM 编码、OGG编码等,目标音频格式指明了用户需要输出的特定音频格式,则本发明中音频截取得到的音视频片段可以满足用户对上述目标音频格式的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标声道数,即用户可以指示终端输出音频参数为目标声道数的音视频片段,其中,声道数是指支持能不同发声的音响的个数,例如声道数可以是2.0、2.1、4.1、5.1、7.1等,例如,声道数5.1表示具有左右两路主声道、中置声道、左右两路环绕声道和一个重低音声道,用户可以根据需要选择目标声道数,目标声道数指明了用户需要输出的特定声道数,则本发明中音频截取得到的音视频片段可以满足用户对上述目标声道数的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标声道排列,即用户可以指示终端输出音频参数为目标声道排列的音视频片段,其中,声道排列是指音频文件中多个声道的排列方式,例如声道排列可以指的是6个单声道排列,或者一个5.1声道排列,目标声道排列指明了用户需要输出的特定声道排列,则本发明中音频截取得到的音视频片段可以满足用户对上述目标声道排列的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标样点格式,即用户可以指示终端输出音频参数为目标样点格式的音视频片段,其中,样点格式可以包括音频数据为定点格式还是浮点格式,目标样点格式指明了用户需要输出的特定样点格式,则本发明中音频截取得到的音视频片段可以满足用户对上述目标样点格式的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标用途,即用户可以指示终端输出特定用途的音视频片段,其中,目标用途是指音频文件被截取后的输出途径,例如可以是存档文件或者存档后分享,目标用途指明了用户需要输出的音视频片段的特定用途,则本发明中音频截取得到的音视频片段可以满足用户对上述目标用途的要求。

具体的,在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标视频文件格式,即用户可以指示终端输出视频参数为目标视频文件格式的音视频片段,其中,文件格式是指视频文件的文件本身的格式, 例如可以是MP4、mkv等,目标文件格式指明了用户需要输出的特定文件格式,则本发明中视频截取得到的音视频片段可以满足用户对上述目标视频文件格式的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标分辨率,即用户可以指示终端输出视频参数为目标分辨率的音视频片段,其中,分辨率是指视频文件的显示多少信息的设置,通常宽和高都以16倍数为步进单位,例如可以是即16×n(n=1,2,3,....),例如176×144,352×288等,目标分辨率指明了用户需要输出的特定分辨率,则本发明中视频截取得到的音视频片段可以满足用户对上述目标分辨率的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标视频格式,即用户可以指示终端输出视频参数为目标视频格式的音视频片段,其中,视频格式是指视频文件的视频内容编码格式,例如可以是H264等,目标视频格式指明了用户需要输出的特定视频格式,则本发明中视频截取得到的音视频片段可以满足用户对上述目标视频格式的要求。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标视频质量,即用户可以指示终端输出视频参数为目标视频质量的音视频片段,其中,视频质量是指视频文件的视频传输等级要求,可以表征视频格式的复杂度,例如将视频质量划分为3个等级或者5等级,用户可以选择需要的目标视频质量为levelⅢ,目标视频质量指明了用户需要输出的特定视频质量等级,则本发明中视频截取得到的视频片段可以满足用户对上述目标视频质量的要求。需要说明的是,在本发明中视频质量还可以包括视频的其它参量,举例说明,视频质量可以用于表示视频的画面组(gop,group of picture)中关键帧之间的帧数量,视频质量可以用于表示视频的量化系数(qp,quantization parameter,可决定量化器的编码压缩率和图像精度,视频质量还可以用于表示视频的配置,例如包含baseline、main、high等主要设定指标。

在本发明的一些实施例中,音视频截取指令还可以具体包括用户选择的目标视频帧率,即用户可以指示终端输出视频参数为目标视频帧率的音视频片段,其中,视频帧率是指视频文件的视频播放速率,表示每秒钟播放多少帧画面,例如视频帧率可以为30fps,用户可以选择需要的目标视频帧率为 20fps,目标视频帧率指明了用户需要输出的特定视频帧率,则本发明中视频截取得到的音视频片段可以满足用户对上述目标视频帧率的要求。

需要说明的是,前述内容中对本发明中终端接收到的音视频截取指令包括的各种音频参数进行了详细说明,可以理解的是,本发明中音视频截取指令中还可以包括上述的一种或者多种音频参数,具体需要用户选择哪种或者哪些种音频参数,具体可以结合应用场景来确定。

102、从播放时间为截取开始时间点开始,根据音视频截取指令获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与所述视频截取区域对应的已解码视频数据,直至播放时间为截取结束时间点为止,停止获取与当前正在播放的音频文件对应的已解码音频数据,同时停止获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据。

在本发明实施例中,终端接收到包括截取开始时间点的音视频截取指令之后,终端对终端的播放屏幕中当前播放的音频文件和当前播放的视频文件进行监测,获取到播放时间的进度,当播放时间达到截取开始时间点时,当前正在播放的播放时间即为截取开始时间点,从这个截取开始时间点起,终端实时获取到与当前正在播放的音频文件对应的已解码音频数据,并且本发明中从截取开始时间点开始终端需要一直获取与当前正在播放的音频文件对应的已解码音频数据,在没有接收到包含截取结束时间点的音视频截取指令之前获取已解码音频数据不会停止。终端实时获取到与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,并且本发明中从截取开始时间点开始终端需要一直获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,在没有接收到包含截取结束时间点的视频截取指令之前获取已解码视频数据不会停止。

其中,以音频播放为例,音频播放的过程就是将音频文件解码为原始数据再播放的过程,以截取开始时间点为标记,获取当前正在播放的音频文件,该音频文件可以是当前正在播放的音频文件,或者该音频文件可以是与当前正在播放的视频图像同步播放的音频文件(即伴随视频图像播放的音频),由于音频文件被软件解码器或者硬件解码器解码后成为已解码音频数据,根据 解码前后的对应关系,可以由当前正在播放的音频文件对应找到相应的已解码音频数据,已解码音频数据通常是一种原始数据格式,例如可以是PCM编码格式。例如,播放时间的时间轴显示正在播放的是4分20秒的音频文件,若终端接收到的音视频截取指令中携带的截取开始时间点为4分22秒,则当前播放时间的时间轴转到4分22秒时,获取该时刻正在播放的音频文件对应的已解码音频数据,并且从4分22秒开始,终端需要一直获取当前正在播放的音频文件对应的已解码音频数据。对于视频播放,视频播放的过程就是将视频文件解码为原始数据再显示的过程,以截取开始时间点为标记,获取当前正在播放的视频文件,由于视频文件被软件解码器或者硬件解码器解码后成为已解码视频数据,根据解码前后的对应关系,可以由当前正在播放的视频文件对应找到相应的已解码视频数据,已解码视频数据通常是一种原始数据格式,由Y(亮度)、U(色度)、V(色度)三个分量组成,通常用于视频压缩领域,常用的是已解码视频数据可以是YUV420。

在本发明实施例中,终端在接收到包含截取开始时间点的音视频截取指令之后,获取已解码音频数据的过程和获取已解码视频数据的过程从截取开始时间点开始,在没有达到截取结束时间点的播放时间时,终端需要持续执行获取已解码音频数据的过程,持续执行获取已解码视频数据的过程。当终端接收到包含截取结束时间点之后,终端监测播放时间的时间轴,当时间轴转到截取结束时间点时,终端不再获取与当前正在播放的音频文件对应的已解码音频数据,不再获取与当前正在播放的视频文件对应的已解码视频数据。可以理解的是,在本发明中终端获取到的已解码音频数据与播放终端中音频文件的播放顺序前后相同,在本发明中终端获取到的已解码视频数据与播放终端中视频文件的播放顺序前后相同。

在本发明的一些实施例中,步骤102根据音视频截取指令获取与当前正在播放的音频文件对应的已解码音频数据,具体可以包括如下步骤:

A0、根据音视频截取指令从当前播放终端的内存中读取到已解码音频数据。

步骤102根据视频截取指令获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,具体可以包括如下步骤:

A1、计算视频截取区域与当前播放终端的播放界面之间的偏移位置;

A2、根据计算出的偏移位置,确定视频截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系;

A3、根据坐标映射关系从当前播放终端的帧缓存中读取到与视频截取区域对应的已解码视频数据。

其中,当前播放终端中正在播放音频文件时,音频文件通过软件解码器或者硬件解码器已经将音频文件解码为已解码音频数据,终端从内存中读取已解码音频数据,然后终端将读取到的已解码音频数据输出到播放终端的音响播出,本发明中可以借助于内存中保存的已解码音频数据,实时的获取从截取开始时间点开始,各个播放时间正在播放的音频文件对应的已解码音频数据。

其中,当前播放终端的显示屏幕上可以设置一个视频截取框,用户可以拖动视频截取框,并可以对视频截取框进行大小、长短、宽高的调整缩放,终端根据用户对视频截取框的调整情况获取到用户在播放界面中划定的视频截取区域,从而终端可以确定用户需要对播放界面中哪个部分或者全部的视频画面进行截取。请参阅如图2所示,为本发明实施例中视频截取区域的获取方式示意图,图2中,区域A为终端的全屏幕区域,区域B到区域C都是视频播放区域,区域B为播放界面,区域C为用户划定的视频截取区域。当然,区域C的位置和区域大小可以由用户拖拽视频截取框来调整。

确定用户划定的视频截取区域之后,执行步骤A1,终端计算视频截取区域与当前播放终端的播放界面之间的偏移位置,也就是说,终端的播放界面为矩形框,视频截取区域为矩形框,需要计算出视频截取区域的四个边角相对于当前播放终端的播放界面的四个角的偏移位置,从而就可以确定出视频截取区域与当前播放终端的播放界面之间的偏移位置。如图2所示,视频文件在显示屏幕上播放时,可以是全屏幕播放,如图2中区域A所示,也可以是非全屏幕区域,如图2中的区域B所示。也可以是区域B到区域A的任意一个区域。不管是在什么区域,用户都可以在视频播放区域内划出一个方形区域,用来作为想要截取的视频截取区域,根据像素位置关系可以计算出划定区域相对于视频播放区域的四个角的偏移位置。

获取到视频截取区域相对于视频播放界面的偏移位置之后,执行步骤A2,根据计算出的偏移位置,确定视频截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系。即步骤A1中计算出的视频截取区域相对于视频播放界面的偏移位置,而视频播放界面与原始的视频图像之间还存在缩放关系,有可能视频播放界面与原始的视频图像相同,那么就是一比一的同等比例,也有可能用户在操作终端时对原始的视频图像进行放大或者缩小,显示为当前的视频播放界面,那么就需要将计算出的视频截取区域相对于视频播放界面的偏移位置进行重新映射,以得到视频截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系。例如如图2所示,对于原始的视频图像坐标映射,因为区域B到区域C是不确定的,即视频播放区域的尺寸与原始视频图像的大小不一定相等,所以在完成上述的偏移位置之后,还需要计算出该偏移位置在原始的视频图像中的坐标映射关系。

在本发明的一些实施例中,步骤A3根据坐标映射关系从当前播放终端的帧缓存中读取到与视频截取区域对应的已解码视频数据。其中,当前播放终端中正在播放视频文件时,视频文件通过软件解码器或者硬件解码器已经将视频文件解码为已解码视频数据,终端从帧缓存中读取已解码视频数据,然后终端将读取到的已解码视频数据输出到显示屏幕上显示为播放界面,本发明中可以借助于帧缓存中保存的已解码视频数据,实时的获取从截取开始时间点开始,各个播放时间正在播放的视频文件对应的已解码视频数据,获取到正在播放的视频文件对应的已解码视频数据之后,根据坐标映射关系进行比例变换,获取到与视频截取区域对应的已解码视频数据,而在播放界面中视频截取区域以外的已解码视频数据不在获取的已解码视频范围之内。

需要说明的是,在本发明的一些实施例中,终端获取当前正在播放的音频文件对应的已解码音频数据还可以有其它的实现方式,例如首先获取到当前正在播放的音频文件对应的源文件,然后对源文件进行重新解码,可以生成已解码音频数据,按照这样的方式也可以获取到已解码音频数据。

在本发明的一些实施例中,若音视频截取指令还包括用户选择的目标采样频率和和用户选择的目标分辨率,步骤103从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件 格式编码之前,本发明提供的音视频片段的截取方法还可以包括如下步骤:

B1、判断获取到的已解码音频数据对应的音频文件的原采样频率与目标采样频率是否相同,判断获取到的已解码视频数据对应的视频文件中视频图像的原分辨率与目标分辨率是否相同;

B2、若原采样频率和目标采样频率不相同,对获取到的已解码音频数据对应的音频文件的采样频率进行转换,得到包含目标采样频率的获取到的已解码音频数据;若原分辨率和所述目标分辨率不相同,对获取到的已解码视频数据对应的视频文件中视频图像的分辨率进行转换,得到包含目标分辨率的获取到的已解码视频数据。

其中,在步骤102获取到已解码音频数据和已解码视频数据和已解码视频数据之后,若终端接收到的音视频截取指令中还包括目标采样频率和用户选择的目标分辨率,则说明用户需要指定截取到的音频片段的采样频率,以及指定截取到的视频片段的采样频率。以采样频率的转换为例,终端可以首先从音频文件的音频文件头信息中获取到音频文件的原采样频率,音频文件的原采样频率为终端的播放设备中播放的音频文件被播放时采用的采样频率,若用户对音频文件的原采样频率需要调整,终端的显示屏幕上可以显示采样频率调整菜单,由用户来指定截取到的音频片段的采样频率(即音视频截取指令中携带的目标采样频率),得到音频文件的原采样频率之后,判断目标采样频率与原采样频率是否相同,若目标采样频率和原采样频率相同,则无需再进行采样频率的转换,若目标采样频率和原采样频率不相同,则需要对采样频率进行转换,具体的,可以调用第三方库(例如ffmpeg)来实现采样频率的转换,得到包含目标采样频率的获取到的已解码音频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标采样频率的获取到的已解码音频数据,即步骤103中所述获取到的已解码音频数据具体为包含目标采样频率的获取到的已解码音频数据。

在本发明的一些实施例中,若音视频截取指令还包括用户选择的目标音频格式和用户选择的目标视频格式,步骤103从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,本发明提供的音视频片段的截取方法还可以包括如下步骤:

C1、判断获取到的已解码音频数据对应的音频文件的原音频格式与目标音频格式是否相同,判断获取到的已解码视频数据对应的视频文件的原视频格式与目标视频格式是否相同;

C2、若原音频格式和目标音频格式不相同,对获取到的已解码音频数据对应的音频文件的音频格式进行转换,得到包含目标音频格式的获取到的已解码音频数据;若原视频格式和目标视频格式不相同,对获取到的已解码视频数据对应的视频文件的视频格式进行转换,得到包含目标视频格式的获取到的已解码视频数据。

其中,在步骤102获取到已解码音频数据和已解码视频数据之后,若终端接收到的音视频截取指令中还包括目标音频格式和目标视频格式,则说明用户需要指定截取到的音频片段的音频格式和视频格式,以音频格式的转换为例,终端可以首先从音频文件的音频文件头信息中获取到音频文件的原音频格式,音频文件的原音频格式为终端的播放设备中播放的音频文件被播放时的音频格式,若用户对音频文件的原音频格式需要调整,终端的显示屏幕上可以显示音频格式调整菜单,由用户来指定截取到的音频片段的音频格式(即音视频截取指令中携带的目标音频格式),得到音频文件的原音频格式之后,判断目标音频格式与原音频格式是否相同,若目标音频格式和原音频格式相同,则无需再进行音频格式的转换,若目标音频格式和原音频格式不相同,则需要对音频格式进行转换,具体的,可以调用第三方库(例如ffmpeg)来实现音频格式的转换,得到包含目标音频格式的获取到的已解码音频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标音频格式的获取到的已解码音频数据,即步骤103中所述获取到的已解码音频数据具体为包含目标音频格式的获取到的已解码音频数据。

在本发明的一些实施例中,若音视频截取指令还包括用户选择的目标声道数,步骤103从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,本发明提供的音视频片段的截取方法还可以包括如下步骤:

D1、判断获取到的已解码音频数据对应的音频文件的原声道数与目标声道数是否相同;

D2、若原声道数和目标声道数不相同,对获取到的已解码音频数据对应的音频文件的声道数进行调整,得到包含目标声道数的获取到的已解码音频数据。

其中,在步骤102获取到已解码音频数据和已解码视频数据之后,若终端接收到的音视频截取指令中还包括目标声道数,则说明用户需要指定截取到的音频片段的声道数,终端可以首先从音频文件的音频文件头信息中获取到音频文件的原声道数,音频文件的原声道数为终端的显示屏幕中播放的音频文件被播放时显示的声道数,若用户对音频文件的原声道数需要调整,终端的显示屏幕上可以显示声道数调整菜单,由用户来指定截取到的音频片段的声道数(即音视频截取指令中携带的目标声道数),得到音频文件的原声道数之后,判断目标声道数与原声道数是否相同,若目标声道数和原声道数相同,则无需再进行声道数的调整。若目标声道数和原声道数不相同,则需要对声道数进行调整,例如将单声道转为双声道。具体的,可以调用第三方库(例如ffmpeg)来实现声道数的转换,得到包含目标声道数的获取到的已解码音频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标声道数的获取到的已解码音频数据,即步骤103中所述获取到的已解码音频数据具体为包含目标声道数的获取到的已解码音频数据。

在本发明的一些实施例中,若音视频截取指令还包括用户选择的目标声道排列和用户选择的目标视频质量,步骤103从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,本发明提供的音视频片段的截取方法还可以包括如下步骤:

E1、判断获取到的已解码音频数据对应的音频文件的原声道排列与目标声道排列是否相同,判断获取到的已解码视频数据对应的视频文件的原视频质量与目标视频质量是否相同;

E2、若原声道排列和目标声道排列不相同,对获取到的已解码音频数据对应的音频文件的声道排列进行转换,得到包含目标声道排列的获取到的已解码音频数据,若原视频质量和目标视频质量不相同,对获取到的已解码视频数据对应的视频文件的视频质量进行调整,得到包含目标视频质量的获取到的已解码视频数据。

其中,在步骤102获取到已解码音频数据和已解码视频数据之后,若终端接收到的音视频截取指令中还包括目标声道排列和用户选择的目标视频质量,则说明用户需要指定截取到的音频片段的声道排列,终端可以首先从音频文件的音频文件头信息中获取到音频文件的原声道排列,音频文件的原声道排列为终端的播放设备中播放的音频文件被播放时采用的声道排列,若用户对音频文件的原声道排列需要调整,终端的显示屏幕上可以显示声道排列调整菜单,由用户来指定截取到的音频片段的声道排列(即音视频截取指令中携带的目标声道排列),得到音频文件的原声道排列之后,判断目标声道排列与原声道排列是否相同,若目标声道排列和原声道排列相同,则无需再进行声道排列的转换,若目标声道排列和原声道排列不相同,则需要对声道排列进行转换,例如,将一个双声道转为2个单声道,或者,将一个5.1声道转换为6个单声道,具体的,可以调用第三方库(例如ffmpeg)来实现声道排列的转换,得到包含目标声道排列的获取到的已解码音频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标声道排列的获取到的已解码音频数据,即步骤103中所述获取到的已解码音频数据具体为包含目标声道排列的获取到的已解码音频数据。

若终端接收到的音视频截取指令中还包括目标视频质量,则说明用户需要指定截取到的音视频片段的视频质量,终端可以首先从视频文件的文件头信息中获取到视频图像的原视频质量,视频文件中视频图像的原视频质量为终端的显示屏幕中播放的视频文件被播放时显示的视频质量,若用户对视频文件中视频图像的原视频质量需要调整,终端的显示屏幕上可以显示视频质量调整菜单,由用户来指定截取到的视频片段的视频质量(即视频截取指令中携带的目标视频质量),得到视频文件中视频图像的原视频质量之后,判断目标视频质量与原视频质量是否相同,若目标视频质量和原视频质量相同,则无需再进行视频质量的调整。

需要说明的是,在本发明的一些实施例中,若当前正在播放的音频文件是与当前正在播放的视频图像同步播放的音频文件(即伴随视频图像播放的音频),在这种情况下,正在播放的音频文件和视频图像具有一定的约束关系,因此还可以当前正在播放的音频文件的原声道排列可以从正在播放的视频图 像的音频文件头信息中来获取,具体的,视频图像与音频文件的声道排列有一定的约束关系,例如mkv格式的视频图像可以容纳2声道以上的音频内容,mp4格式的视频图像可以容纳2声道的音频内容。

在本发明的一些实施例中,若音视频截取指令还包括用户选择的目标浮点格式和用户选择的目标视频帧率,步骤103从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,本发明提供的音视频片段的截取方法还可以包括如下步骤:

F1、判断获取到的已解码音频数据对应的音频文件的原浮点格式与目标浮点格式是否相同;判断获取到的已解码视频数据对应的视频文件的原视频帧率与目标视频帧率是否相同;

F2、若原浮点格式和目标浮点格式不相同,对获取到的已解码音频数据对应的音频文件的浮点格式进行转换,得到包含目标浮点格式的获取到的已解码音频数据。F2、若原视频帧率和目标视频帧率不相同,对获取到的已解码视频数据对应的视频文件的视频帧率进行转换,得到包含目标视频帧率的获取到的已解码视频数据。

其中,在步骤102获取到已解码音频数据和已解码视频数据之后,若终端接收到的音视频截取指令中还包括目标浮点格式和用户选择的目标视频帧率,则说明用户需要指定截取到的音频片段的浮点格式和视频帧率,以浮点格式的转换为例,终端可以首先从音频文件的音频文件头信息中获取到音频文件的原浮点格式,音频文件的原浮点格式为终端的播放设备中播放的音频文件被播放时采用的浮点格式,若用户对音频文件的原浮点格式需要调整,终端的显示屏幕上可以显示浮点格式调整菜单,由用户来指定截取到的音频片段的浮点格式(即音视频截取指令中携带的目标浮点格式),得到音频文件的原浮点格式之后,判断目标浮点格式与原浮点格式是否相同,若目标浮点格式和原浮点格式相同,则无需再进行浮点格式的转换,若目标浮点格式和原浮点格式不相同,则需要对浮点格式进行转换,具体的,可以调用第三方库(例如ffmpeg)来实现浮点格式的转换,得到包含目标浮点格式的获取到的已解码音频数据,则后续步骤103中进行文件格式编码的就是此处描述的包含目标浮点格式的获取到的已解码音频数据,即步骤103中所述获取到的 已解码音频数据具体为包含目标浮点格式的获取到的已解码音频数据。

若终端接收到的音视频截取指令中还包括目标视频帧率,则说明用户需要指定截取到的音视频片段的视频帧率,终端可以首先从视频文件的文件头信息中获取到视频图像的原视频帧率,视频文件中视频图像的原视频帧率为终端的显示屏幕中播放的视频文件被播放时显示的视频帧率,若用户对视频文件中视频图像的原视频帧率需要调整,终端的显示屏幕上可以显示视频帧率调整菜单,由用户来指定截取到的视频片段的视频帧率(即视频截取指令中携带的目标视频帧率),得到视频文件中视频图像的原视频帧率之后,判断目标视频帧率与原视频帧率是否相同,若目标视频帧率和原视频帧率相同,则无需再进行视频帧率的转换,若目标视频帧率和原视频帧率不相同,则需要对视频帧率进行转换。

103、从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,生成音频片段和视频片段,将所述音频片段和所述视频片段进行合成,得到音视频片段。

在发明实施例中,前述步骤102中获取到了从截取开始时间点直至截取结束时间点的多个已解码音频数据和多个已解码视频数据,当截取结束时间点到达时,终端停止获取已解码音频数据,同时停止获取已解码视频数据,则可以从截取结束时间点开始,终端已经获取到需要截取的音频文件对应的已解码音频数据,获取到已解码视频数据,接下来对获取到的已解码音频数据和已解码视频数据分别进行打包封装,得到音频片段和视频片段,然后对音频片段和视频片段进行合成,得到音视频片段。使通过步骤102获取到的已解码音频数据和已解码视频数据被包装为文件的形式,即可以对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,从而可得到用户需要截取的音视频片段,生成的音视频片段是从终端的播放界面中播放的音频文件和视频文件中得到。

104、根据目标用途将音视频片段输出。

也就是说,本发明中获取到音视频片段之后,还可以按照用户的需要将音视频片段输出到特定的目的用途中,例如用户将截取到的音视频片段存档,或者存档后分享到QQ空间或者微信中,目标用途指明了用户需要输出的音 频片段的特定用途,则本发明中音视频截取得到的音视频片段可以满足用户对上述目标用途的要求。

在本发明的一些实施例中,若音视频截取指令还包括用户选择的目标音频文件格式和用户选择的目标视频文件格式,则步骤103从截取结束时间点开始,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,具体可以包括如下步骤:

G1、使用文件合成器将获取到的已解码音频数据编码为满足目标音频文件格式的音频片段,并在音频片段中携带音频文件头信息,音频文件头信息包括:音频片段的属性信息;

G2、使用文件合成器将获取到的已解码视频数据编码为满足目标视频文件格式的视频片段,并在视频片段中携带视频文件头信息,视频文件头信息包括:视频片段的属性信息。

其中,在步骤102获取到已解码音频数据和已解码视频数据之后,若终端接收到的音视频截取指令中还包括目标音频文件格式和目标视频格式,则说明用户需要指定截取到的音视频片段的文件格式,执行步骤102获取到已解码音频数据和已解码视频数据之后,具体可以使用文件合成器将获取到的已解码音频数据编码为满足目标音频文件格式的音频片段,具体的,可以调用第三方库(例如ffmpeg)来实现文件格式的转换,得到满足目标音频文件格式的音频片段,使用文件合成器时会在生成的音频片段中携带音频文件头信息,音频文件头信息中携带的是音频片段的基本特征信息,例如音频文件头信息包括:音频片段的属性信息。又如,可以使用文件合成器将获取到的已解码音频数据编码为满足目标文件格式的音频片段,具体的,可以调用第三方库(例如ffmpeg)来实现文件格式的转换,得到满足目标文件格式的音频片段,使用文件合成器时会在生成的音频片段中携带文件头信息,文件头信息中携带的是音频片段的基本特征信息,例如文件头信息包括:音频片段的属性信息。

通过以上实施例对本发明实施例的描述可知,用户通过当前播放终端发送音视频截取命令时,首先接收音视频截取指令,音视频截取指令包括:截取开始时间点、截取结束时间点、用户划定的视频截取区域和用户选择的目 标用途,终端中的播放界面开始播放音频文件和视频文件后,当播放时间达到截取开始时间点之后,可以获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,在截取结束时间点还未达到之前,仍需要继续获取与当前正在播放的音频文件对应的已解码音频数据,需要继续获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,根据音视频截取指令可以获取到多个已解码音频数据和多个已解码视频数据,在截取结束时间点到达之后,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,从而可以生成音频片段和视频片段,通过音频片段和视频片段的合成,可以得到音视频片段,最后可以根据目标用途输出音视频片段。本发明实施例中中是通过获取正在播放的音频文件对应的已解码音频数据,然后再对已解码音频数据进行文件格式编码的方式得到需要截取的音频片段,而不是通过抓取多个音频来组合得到音频片段,类似的,通过获取正在播放的视频文件对应的已解码视频数据,然后再对已解码视频数据进行文件格式编码的方式得到需要截取的视频片段,而不是通过抓取多张的视频图像来组合得到视频片段。本发明实施例中即使需要截取时间跨度大的音频片段和视频片段,只需要由用户设置截取开始时间点和截取结束时间点即可,音视频片段的截取处理效率也很高。

为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。

以用户使用QQ浏览器播放音频以及同步播放视频为例进行举例,用户遇到喜欢的音频和视频,可以选择截取整个音频文件中的全部音频片段或者部分音频片段,同时需要截取与音频片段对应的视频片段,然后保存在本地或者分享给好友。请参阅如图3所示,为本发明中音视频片段的截取流程示意图。

S1、视频截取区域偏移位置计算

终端的播放设备播放音频文件和视频文件,例如音响播放歌曲,屏幕同步显示歌曲对应的视频。视频文件在终端的显示屏幕上播放时,可以是全屏幕播放,如图2中的区域A所示,可以是非全屏幕区域,如图2中的区域B 所示。也可以是区域B到区域A的任意一个区域。不管是在什么区域,用户都可以在视频播放区域内划出一个方形区域,用来作为想要截取的视频截取区域,首先需要计算出划定区域相对于视频播放区域的四个角的偏移位置。

S2、原始视频图像的坐标映射

因为区域B到区域C是不确定的,即视频播放区域的尺寸与原始的视频图像大小不一定相等,所以在完成上述的偏移位置之后,需要计算出该偏移位置在原始的视频图像中的坐标映射关系。

S1和S2完成后,进行如下P1、P2、P3的菜单选择,首先向用户提供如下P1、P2、P3的菜单选择,终端的显示屏幕上需要给出一个菜单让用户选择,具体的,包括如下菜单:

P1,用途选择:确定截取到的音视频片段是仅存档文件还是存档后分享。

P2,配置选择:采样频率,音频格式,声道数,音频文件格式,声道排列,样点格式,音视频截取时长(即截取开始时间点、截取结束时间点),分辨率、视频格式、视频质量,视频文件格式,视频帧率。

P3,模式选择:确定需要截取出单个音视频片段还是多个音视频片段。

S3、已解码音频数据和已解码视频数据的处理

当用户点击选择菜单时,默认从当前时间点开始处理。音频播放的过程,就是对音频文件解码为原始数据再播放的过程,通常原始数据是PCM格式。从原始数据开始合成音频片段,可以省去重新解码源文件的环节,可以更节省终端的处理器资源,也可以节省终端的电量。

当用户进行S1划定区域操作时,默认从当前时间点开始处理。视频播放的过程,就是对视频文件解码为原始数据再显示的过程,通常原始数据是YUV420格式。从原始数据开始合成视频片段,可以省去重新解码源文件的环节,可以更节省终端的处理器资源,也可以节省终端的电量。

如图4所示,为本发明实施例提供的已解码音频数据和已解码视频数据的处理流程示意图,其中,该过程具体可以包括如下步骤的描述:

步骤m1,从音视频截取指令中获取用户选择的目标采样频率,目标音频格式和目标声道数,目标音频文件格式,目标声道排列,截取的音频长度、目标样点格式、目标分辨率、目标视频格式、目标视频质量,目标视频文件 格式,目标视频帧率。根据具体的配置情况不同,分为如下两个不同的处理过程,如Q1和Q2,接下来分别进行说明。

Q1、对于音频的处理,当满足以下条件:目标采样频率与原采样频率相同,目标声道排列与原声道排列相同,目标音频格式与原音频格式相同(即目标编码器与原解码器采用相同的压缩音频协议),目标声道数与原声道数相同,目标样点格式和原样点格式。满足这些条件时,可以选择Q1判决过程,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,生成从音频文件中截取出的音频片段,此过程相当于拷贝模式。Q1过程中不需要解压缩音频文件,而仅仅将已解码音频数据重新封装一个新的文件格式。

Q1中,对于视频,当满足以下条件:目标分辨率与原分辨率相同,目标视频帧率与原帧率相同,目标视频格式与原视频格式相同(即目标编码器与原解码器采用相同的压缩视频协议),目标视频质量与原视频质量相同。满足这些条件时,可以选择Q1判决过程,根据视频截取指令对获取到的已解码视频数据进行文件格式编码,生成从视频文件中截取出的视频片段,此过程相当于拷贝模式。Q1过程中不需要解压缩视频文件,而仅仅将已解码视频数据重新封装一个新的文件格式。

具体的,在Q1过程下的流程为:

步骤m3,根据目标音频文件格式,打开文件合成器,并生成音频文件头信息,在音频文件头信息包含了音频片段的一些基本特征,比如音频片段的属性,采用的音频编码格式。根据目标文件格式,打开文件合成器,并生成文件头信息,在文件头信息包含了视频片段的一些基本特征,比如视频片段的属性,采用的视频编码格式。

步骤m7,调用文件合成器,将已解码音频数据按照规则进行文件格式编码,得到音频片段,这里的规则是指假若用户选择的目标音频文件格式为mp3文件,那最终编码得到的音频片段就应该是按照mp3文件对音频的组织方式生成音频片段。调用文件合成器,将已编码视频数据按照规则进行文件格式编码,得到视频片段,这里的规则是指假若用户选择的目标文件格式为mp4文件,那最终编码得到的视频片段就应该是按照mp4文件对视频的组织方式 生成视频片段。

Q2:对于音频,不满足于Q1的任何一个条件,即至少满足如下一种条件:目标采样频率与原采样频率不相同,目标声道排列与原帧率不相同,目标音频格式与原音频格式不相同(即目标编码器与原解码器采用不相同的压缩音频协议),目标声道数与原声道数不相同,目标样点格式和原样点格式不相同,执行Q2判决过程。

对于视频,不满足于Q1的任何一个条件,即至少满足如下一种条件:目标分辨率与原分辨率不相同,目标视频帧率与原帧率不相同,目标视频格式与原视频格式不相同(即目标编码器与原解码器采用不相同的压缩视频协议),目标视频质量与原视频质量不相同,执行Q2判决过程。

具体的,在Q2过程下的流程为:

步骤m2,根据需要编码的音频格式,打开编码器;根据需要编码的视频格式,打开编码器。

步骤m3,根据音频文件格式,打开文件合成器,并生成音频文件头信息。根据视频文件格式,打开文件合成器,并生成视频文件头信息。

步骤m4,从当前播放过程的解码环节,取得已解码音频数据。从当前播放过程的解码环节,取得已解码视频数据。

步骤m5,根据m1步骤中得到的信息,确定是否进行采用频率的转换、声道数的转换、声道排列的转换、样点格式的转换,若Q2中对于音频参数不相同的部分,则按照用户的要求进行转换。根据m1步骤中得到的信息,确定是否进行缩放处理,例如用户划定视频截取区域,将视频截取区域当前播放器范围相比较,得到一个比例关系,用这个比例关系结合原始分辨率,计算得到一个尺寸,如果这个尺寸与目标分辨率不相同,则需要进行缩放处理,使得输出视频片段的分辨率符合要求。如果不需要则无须缩放处理。

步骤m6,调用编码器,为已解码音频数据按照目标音频格式进行音频格式的编码;调用编码器,为已编码视频数据按照目标视频格式进行视频格式的编码。

步骤m7,调用文件合成器,将已解码音频数据按照目标音频文件格式进行编码,生成音频片段。调用文件合成器,将已编码视频数据按照目标文件 格式进行编码,生成视频片段,将音频片段和视频片段进行合成,得到音视频文件。

需要说明的是,本发明中对已解码音频数据处理的流程与音频文件的播放过程同步,如果是合成多个音频片段,则重复以上Q1或Q2过程。本发明中对已编码视频数据处理的流程与视频文件的播放过程同步,如果是合成多个视频片段,则重复以上Q1或Q2过程。

S3、音视频片段的输出

当音视频片段合成后,会提示用户成功。根据P1的选择方式,如果是存档,会调用第三方应用打开音视频文件夹。如果是分享,则调用第三方应用进行分享,可以但不限于微信,QQ等方式。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。

请参阅图4-a所示,本发明实施例提供的一种音视频片段的截取装置500,可以包括:接收模块501、已解码数据获取模块502、文件编码模块503、音视频片段输出模块504,其中,

接收模块501,用于用户通过当前播放终端发送的音视频截取指令,所述音视频截取指令包括:所述用户确定的需要截取音视频的截取开始时间点和截取结束时间点、所述用户在所述当前播放终端的播放界面中划定的视频截取区域以及所述用户选择的目标用途;

已解码数据获取模块502,用于从播放时间为所述截取开始时间点开始,根据所述音视频截取指令获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与所述视频截取区域对应的已解码视频数据,直至播放时间为所述截取结束时间点为止,停止获取与当前正在播放的音频文件对应的已解码音频数据,同时停止获取与当前正在播放 的视频文件中与视频截取区域对应的已解码视频数据;

文件编码模块503,用于从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,生成音频片段和视频片段,将所述音频片段和所述视频片段进行合成,得到音视频片段;

音视频片段输出模块504,用于根据所述目标用途将所述音视频片段输出

在本发明的一些实施例中,所述已解码数据获取模块502,具体用于根据所述音视频截取指令从当前播放终端的内存中读取到所述已解码音频数据;

和,所述已解码数据获取模块502,用于计算所述视频截取区域与所述当前播放终端的播放界面之间的偏移位置;根据计算出的所述偏移位置,确定所述视频截取区域与当前正在播放的视频文件中的视频图像的坐标映射关系;根据所述坐标映射关系从所述当前播放终端的帧缓存中读取到与所述视频截取区域对应的已解码视频数据。

在本发明的一些实施例中,若所述音视频截取指令还包括用户选择的目标音频文件格式和用户选择的目标视频文件格式,所述文件编码模块503,具体用于使用文件合成器将获取到的已解码音频数据编码为满足所述目标音频文件格式的音频片段,并在所述音频片段中携带音频文件头信息,所述音频文件头信息包括:所述音频片段的属性信息;使用文件合成器将获取到的已解码视频数据编码为满足所述目标视频文件格式的视频片段,并在所述视频片段中携带视频文件头信息,所述视频文件头信息包括:所述视频片段的属性信息。

在本发明的一些实施例中,请参阅如图5-b所示,若所述音视频截取指令还包括用户选择的目标采样频率和用户选择的目标分辨率,所述音视频片段的截取装置500还包括:采样频率协调模块505和分辨率协调模块506,其中,

所述采样频率协调模块505,用于所述文件编码模块从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,判断所述获取到的已解码音频数据对应的音频文件的原采样频率与所述目标采样频率是否相同;若所述原采样频率和所述目标采样频率不相同,对所述获取到的已解码音频数据对应的音频文件 的采样频率进行转换,得到包含所述目标采样频率的所述获取到的已解码音频数据;

所述分辨率协调模块506,用于所述文件编码模块从所述截取结束时间点开始,根据所述视频截取指令对获取到的已解码视频数据进行文件格式编码之前,判断所述获取到的已解码视频数据对应的视频文件中视频图像的原分辨率与所述目标分辨率是否相同;若所述原分辨率和所述目标分辨率不相同,对所述获取到的已解码视频数据对应的视频文件中视频图像的分辨率进行转换,得到包含所述目标分辨率的所述获取到的已解码视频数据。

在本发明的一些实施例中,请参阅如图5-c所示,若所述音视频截取指令还包括用户选择的目标音频格式和用户选择的目标视频格式,所述音视频片段的截取装置500还包括:格式协调模块507,用于所述文件编码模块503从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,判断所述获取到的已解码音频数据对应的音频文件的原音频格式与所述目标音频格式是否相同,判断所述获取到的已解码视频数据对应的视频文件的原视频格式与所述目标视频格式是否相同;若所述原音频格式和所述目标音频格式不相同,对所述获取到的已解码音频数据对应的音频文件的音频格式进行转换,得到包含所述目标音频格式的所述获取到的已解码音频数据;若所述原视频格式和所述目标视频格式不相同,对所述获取到的已解码视频数据对应的视频文件的视频格式进行转换,得到包含所述目标视频格式的所述获取到的已解码视频数据。

在本发明的一些实施例中,请参阅如图5-d所示,若所述音视频截取指令还包括用户选择的目标声道数,所述音视频片段的截取装置500还包括:声道数协调模块508,用于所述文件编码模块503从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,判断所述获取到的已解码音频数据对应的音频文件的原声道数与所述目标声道数是否相同;若所述原声道数和所述目标声道数不相同,对所述获取到的已解码音频数据对应的音频文件的声道数进行调整,得到包含所述目标声道数的所述获取到的已解码音频数据。

在本发明的一些实施例中,请参阅如图5-e所示,若所述音视频截取指令 还包括用户选择的目标声道排列和用户选择的目标视频质量,所述音视频片段的截取装置500还包括:声道排列协调模块509和视频质量协调模块510,其中,

所述声道排列协调模块509,用于所述文件编码模块从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,判断所述获取到的已解码音频数据对应的音频文件的原声道排列与所述目标声道排列是否相同;若所述原声道排列和所述目标声道排列不相同,对所述获取到的已解码音频数据对应的音频文件的声道排列进行转换,得到包含所述目标声道排列的所述获取到的已解码音频数据;

所述视频质量协调模块510,用于所述文件编码模块从所述截取结束时间点开始,根据所述视频截取指令对获取到的已解码视频数据进行文件格式编码之前,判断所述获取到的已解码视频数据对应的视频文件的原视频质量与所述目标视频质量是否相同;若所述原视频质量和所述目标视频质量不相同,对所述获取到的已解码视频数据对应的视频文件的视频质量进行调整,得到包含所述目标视频质量的所述获取到的已解码视频数据。

在本发明的一些实施例中,请参阅如图5-f所示,若所述音视频截取指令还包括用户选择的目标样点格式和用户选择的目标视频帧率,所述音视频片段的截取装置500还包括:样点格式协调模块511和视频帧率协调模块512,其中,

所述样点格式协调模块511,用于所述文件编码模块从所述截取结束时间点开始,根据所述音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码之前,判断所述获取到的已解码音频数据对应的音频文件的原样点格式与所述目标样点格式是否相同;若所述原样点格式和所述目标样点格式不相同,对所述获取到的已解码音频数据对应的音频文件的样点格式进行转换,得到包含所述目标样点格式的所述获取到的已解码音频数据;

所述视频帧率协调模块512,用于所述文件编码模块从所述截取结束时间点开始,根据所述视频截取指令对获取到的已解码视频数据进行文件格式编 码之前,判断所述获取到的已解码视频数据对应的视频文件的原视频帧率与所述目标视频帧率是否相同;若所述原视频帧率和所述目标视频帧率不相同,对所述获取到的已解码视频数据对应的视频文件的视频帧率进行转换,得到包含所述目标视频帧率的所述获取到的已解码视频数据。

通过以上对本发明实施例的描述可知,用户通过当前播放终端发送音视频截取命令时,首先接收音视频截取指令,音视频截取指令包括:截取开始时间点、截取结束时间点、用户划定的视频截取区域和用户选择的目标用途,终端中的播放界面开始播放音频文件和视频文件后,当播放时间达到截取开始时间点之后,可以获取与当前正在播放的音频文件对应的已解码音频数据,同时获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,在截取结束时间点还未达到之前,仍需要继续获取与当前正在播放的音频文件对应的已解码音频数据,需要继续获取与当前正在播放的视频文件中与视频截取区域对应的已解码视频数据,根据音视频截取指令可以获取到多个已解码音频数据和多个已解码视频数据,在截取结束时间点到达之后,根据音视频截取指令对获取到的已解码音频数据、已解码视频数据分别进行文件格式编码,从而可以生成音频片段和视频片段,通过音频片段和视频片段的合成,可以得到音视频片段,最后可以根据目标用途输出音视频片段。本发明实施例中中是通过获取正在播放的音频文件对应的已解码音频数据,然后再对已解码音频数据进行文件格式编码的方式得到需要截取的音频片段,而不是通过抓取多个音频来组合得到音频片段,类似的,通过获取正在播放的视频文件对应的已解码视频数据,然后再对已解码视频数据进行文件格式编码的方式得到需要截取的视频片段,而不是通过抓取多张的视频图像来组合得到视频片段。本发明实施例中即使需要截取时间跨度大的音频片段和视频片段,只需要由用户设置截取开始时间点和截取结束时间点即可,音视频片段的截取处理效率也很高。

本发明实施例还提供了另一种终端,如图6所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任 意终端设备,以终端为手机为例:

图6示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图6,手机包括:射频(Radio Frequency,RF)电路610、存储器620、输入单元630、显示单元640、传感器650、音频电路660、无线保真(wireless fidelity,WiFi)模块670、处理器680、以及电源690等部件。本领域技术人员可以理解,图6中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图6对手机的各个构成部件进行具体的介绍:

RF电路610可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器680处理;另外,将设计上行的数据发送给基站。通常,RF电路610包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路610还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。

存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元630可包括触控 面板631以及其他输入设备632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触控面板631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至 于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经RF电路610以发送给比如另一手机,或者将音频数据输出至存储器620以便进一步处理。

WiFi属于短距离无线传输技术,手机通过WiFi模块670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了WiFi模块670,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。

手机还包括给各个部件供电的电源690(比如电池),优选的,电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本发明实施例中,该终端所包括的处理器680还具有控制执行以上由终端执行的音视频片段的截取方法流程。

另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模 块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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