生成多媒体的方法及装置、电子设备、存储介质与流程

文档序号:18731305发布日期:2019-09-21 00:33阅读:198来源:国知局
生成多媒体的方法及装置、电子设备、存储介质与流程

本申请涉及多媒体技术领域,具体而言,涉及一种生成多媒体的方法及装置、电子设备、计算机可读存储介质。



背景技术:

随着短视频的兴起,视频片段随着音频中的鼓点进行切换的短视频成为深受用户喜爱的短视频类型。

现有技术中,该种类型短视频的生成过程如图1所示。首先,根据音频的波形图手动进行音频中鼓点的定位,其中鼓点为音频中声音突然增大的部分。而为了确定音频的波形图中鼓点所在的位置,需要反复放大和缩小音频的波形图才能确定鼓点;然后根据所确定鼓点进行视频素材剪辑,使得剪辑得到的视频片段对齐至所确定的鼓点。最后合成音频和视频片段,得到最终的短视频。

现有技术中,由于需要反复放大缩小音频的波形图才能确定音频中的鼓点,使得确定鼓点的速度慢,导致生成短视频的效率低,速度慢。

由上可知,如何提高生成视频的效率和速度是现有技术中亟待解决的问题。



技术实现要素:

为了解决现有技术中生成视频的效率低和速度慢的问题,本申请的实施例提供了一种生成多媒体的方法及装置、电子设备、计算机可读存储介质。

其中,本申请所采用的技术方案为:

第一方面,一种生成多媒体的方法,所述方法包括:

根据为多媒体所选定的音频,获得所述音频中各音频帧的频谱;

根据所述音频中各音频帧的频谱进行差分计算,获得音频帧的频谱通量;

根据音频帧的频谱通量进行峰值检测,定位所述音频中鼓点所在的音频帧;

根据为多媒体所选定的视频素材生成对齐至鼓点的视频片段;

按照所述视频片段所对齐的鼓点进行所述视频片段和所述音频的合成,获得多媒体。

第二方面,一种生成多媒体的装置,包括:

频谱获取模块,用于根据为多媒体所选定的音频,获得所述音频中各音频帧的频谱;

差分计算模块,用于根据所述音频中各音频帧的频谱进行差分计算,获得音频帧的频谱通量;

定位模块,用于根据音频帧的频谱通量进行峰值检测,定位所述音频中鼓点所在的音频帧;

生成模块,用于根据为多媒体所选定的视频素材生成对齐至鼓点的视频片段;

合成模块,用于按照所述视频片段所对齐的鼓点进行所述视频片段和所述音频的合成,获得多媒体。

第三方面,一种电子设备,包括:

存储器,存储有计算机可读指令;

处理器,所述计算机可读指令被所述处理器执行时实现如上所述的生成多媒体的方法。

第四方面,一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时,实现如上述生成多媒体的方法。

通过本公开的技术方案,根据表征音频帧的振幅变化幅度的频谱通量进行峰值检测,定位到鼓点所在的音频帧,然后根据所定位到的鼓点和视频素材对应生成对齐至鼓点的视频片段,最后生成适配于鼓点进行视频片段切换的多媒体,一方面实现了自动进行鼓点定位,不需要人工进行鼓点定位,提高了定位鼓点的效率和速度,另一方面,基于频谱通量来进行鼓点的确定,实现了根据振幅的变化幅度进行鼓点的定位,保证了所确定鼓点的准确性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1是现有技术中生成短视频的示意图;

图2是根据一示例性实施例示出的一种装置的框图;

图3是根据一示例性实施例示出的一种生成多媒体的方法的流程图;

图4是图3对应实施例的步骤110在一实施例中的流程图;

图5是在一具体例中生成的声谱图的示意图;

图6是图3对应实施例中步骤130在一个实施例的流程图;

图7是图3对应实施例中的步骤150在一实施例中的流程图;

图8是图7对应实施例的步骤151之前步骤在一实施例中的流程图;

图9是图3对应实施例的步骤170在一实施例中的流程图;

图10是图9对应实施例的步骤173在一实施例中的流程图;

图11是图9对应实施例的步骤173在另一实施例中的流程图;

图12是在一具体实施例中生成多媒体的流程图;

图13是根据一示例性实施例示出的一种生成多媒体的装置的框图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述,这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

图2是根据一示例性实施例示出的一种装置200的框图。例如,装置200可以是智能手机、平板电脑、台式电脑等、笔记本电脑等电子设备。

需要说明的是,该用装置200只是一个适配于本发明的示例,不能认为是提供了本发明的使用范围的任何限制。该装置200也不能认为需要依赖于或者必须具有图2中示出的示例性的装置200中的一个或多个组件。

参照图2,装置200可以包括以下一个或多个组件:处理组件202,存储器204,电源组件206,多媒体组件208,音频组件210,传感器组件214以及通信组件216。

处理组件202通常控制装置200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作、图像处理、音频处理以及记录操作相关联的操作等。处理组件202可以包括一个或多个处理器218来执行指令,以完成下述的方法的全部或部分步骤。此外,处理组件202可以包括一个或多个模块,便于处理组件202和其他组件之间的交互。例如,处理组件202可以包括多媒体模块,以方便多媒体组件208和处理组件202之间的交互。

存储器204被配置为存储各种类型的数据以支持在装置200的操作。这些数据的示例包括用于在装置200上操作的任何应用程序或方法的指令。存储器204可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储器204中还存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器218执行,以完成下述任一方法实施例中的全部或者部分步骤。

电源组件206为装置200的各种组件提供电力。电源组件206可以包括电源管理系统,一个或多个电源,及其他与为装置200生成、管理和分配电力相关联的组件。

多媒体组件208包括在装置200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,简称LCD)和触摸面板。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号,例如用户选定音频的信号,选定视频素材的信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。屏幕还可以包括有机电致发光显示器(Organic Light Emitting Display,简称OLED)。

音频组件210被配置为输出和/或输入音频信号。例如,音频组件210包括一个麦克风(Microphone,简称MIC),当装置200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器204或经由通信组件216发送。在一些实施例中,音频组件210还包括一个扬声器,用于输出音频信号。

传感器组件214包括一个或多个传感器,用于为装置200提供各个方面的状态评估。例如,传感器组件214可以检测到装置200的打开/关闭状态,组件的相对定位,传感器组件214还可以检测装置200或装置200一个组件的位置改变以及装置200的温度变化。在一些实施例中,该传感器组件214还可以包括磁传感器,压力传感器或温度传感器。

通信组件216被配置为便于装置200和其他设备之间有线或无线方式的通信。装置200可以接入基于通信标准的无线网络,如WiFi(WIreless-Fidelity,无线保真)。在一个示例性实施例中,通信组件216经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件216还包括近场通信(Near Field Communication,简称NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(Radio Frequency Identification,简称RFID)技术,红外数据协会(Infrared Data Association,简称IrDA)技术,超宽带(Ultra Wideband,简称UWB)技术,蓝牙技术和其他技术来实现。

在示例性实施例中,装置200可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器、数字信号处理设备、可编程逻辑器件、现场可编程门阵列、控制器、微控制器、微处理器或其他电子元件实现,用于执行下述方法。

图3是根据一示例性实施例示出的一种生成多媒体的方法的流程图,该方法可以由图2所示的装置执行。如图3所示,该方法至少包括以下步骤:

步骤110,根据为多媒体所选定的音频,获得音频中各音频帧的频谱。

首先,本公开所生成的多媒体是指根据音频和视频素材所生成组合视频和音频的音视频。从而,为生成多媒体,先进行音频的选定。

音频帧,又称为音频片段,其中包括至少一频率的音频信号。对音频进行分帧即可获得若干顺序排列的音频帧。

音频帧的频谱,反映了音频帧在频域上的能量分布,该频谱表示了音频帧的幅值随频率的变化。对于音频而言,音频在时域上很难看出音频的特性,从而将音频转换到频域上,便于后续进行音频分析。

步骤130,根据音频中各音频帧的频谱进行差分计算,获得音频帧的频谱通量。

音频帧的频谱通量用于表征音频帧相对于上一音频帧振幅的变化幅度。

所进行的差分计算即计算当前音频帧相对于上一音频帧的频谱的差值。通过进行差分计算,即可获得各音频帧相对于上一音频帧的振幅的变化幅度,即频谱通量。

在音频中,各音频帧是顺序排列的,顺序排列的音频帧构成了音频序列。而所进行的差分计算,即是按照音频中各音频帧的排布顺序,对应相对于上一音频帧进行差分计算,获得音频帧的频谱通量。

步骤150,根据音频帧的频谱通量进行峰值检测,定位音频中鼓点所在的音频帧。

鼓点,又称重拍,为音频中声音突然大幅提高的位置,换言之,音频中的鼓点位于振幅变化幅度大的音频帧。

通过步骤130得到了表征音频帧之间振幅变化幅度的频谱通量,从而即可根据各音频帧的频谱通量定位音频中鼓点所在的音频帧。

在一实施例中,所进行的峰值检测即定位在一音频区间中的最大频谱通量值,并将各音频区间中最大频谱通量值所在的音频帧确定为音频的鼓点。由上可以知道,在音频的时间轴上,所划定音频区间的数目直接影响所获得鼓点的数目。在具体实施例中,为了进行峰值检测,可以根据实际需要进行音频区间的划分,例如,按照所设定的音频区间时间长度将音频所在的时间长度平均划分为若干音频区间。

在另一实施例中,所进行的峰值检测即将超过设定值的频谱通量近似为峰值,并将该近似峰值所在的音频帧确定为音频的鼓点所在的音频帧。其中该设定值可以按音频区间分别设定,也可以为该音频中的音频帧统一设定的,在此不进行具体限定。

步骤170,根据为多媒体所选定的视频素材生成对齐至鼓点的视频片段。

其中视频素材可以是选定的视频,也可以是图片。

所生成对齐至鼓点的视频片段,即该视频片段的首视频帧和末视频帧分别与一鼓点对齐。从而,一方面,视频片段的时长是以所对齐两鼓点所在音频帧为参照确定的,另一方面,视频片段在音频的时间轴上的位置,即为所对齐两鼓点在时间轴上的位置相对应。

步骤190,按照视频片段所对齐的鼓点进行视频片段和音频的合成,获得多媒体。

在本公开的技术方案中,以音频的时间轴作为多媒体的时间轴。按照视频片段所对齐的鼓点进行视频片段和音频的合成,即将视频片段所对齐鼓点的时间戳作为该视频片段的时间戳,从而,可以保证该视频片段与所对齐鼓点之间的音频段同步播放。

如上,通过步骤170即可获得若干与鼓点对齐的视频片段。如上所描述,所生成的多媒体组合了音频和视频,为描述方便,将多媒体中所组合的视频称为组合视频。该组合视频是将所获得的若干视频片段按照所对齐的鼓点进行顺序拼接获得。

由于每一视频片段有对应对齐的鼓点,即该视频片段的首视频帧的位置和末视频帧的位置分别于所对应的两鼓点在时间轴上对应,从而,在播放所获得的多媒体时,视频片段按照所对齐的鼓点进行切换。

将按照音频中鼓点进行视频片段切换的多媒体称为卡点视频,从而,本公开中所生成的多媒体即为卡点视频。

在现有技术中,还存在另一方式来进行鼓点定位:根据为音频设定的振幅阈值来定位鼓点,即将波形图中振幅超过振幅阈值的点作为音频中的鼓点,而音频中存在有些片段一直处于超过振幅阈值的高音部分,但该高音部分实质上并不是鼓点。因此采用振幅阈值定位鼓点的方法忽略了音频的变化,容易将音频中的非鼓点部分确定为鼓点,从而导致所生成的卡点视频并不是按照音频中真实的鼓点进行视频片段进行切换。因此此种方法因忽略音频的变化导致鼓点定位的准确性低,从而导致所生成卡点视频的效果差。

通过本公开的技术方案,根据表征音频帧的振幅变化幅度的频谱通量进行峰值检测,定位到鼓点所在的音频帧,然后根据所定位到的鼓点对应生成对齐至鼓点所在的视频片段,最后生成适配于鼓点进行视频片段切换的多媒体,一方面实现了自动进行鼓点定位,不需要人工进行鼓点定位,提高了鼓点定位的效率,另一方面,基于频谱通量进行鼓点的定位,实现了根据振幅的变化幅度进行鼓点的定位,保证了鼓点定位的准确性。

在一实施例中,如图4所示,步骤110,包括:

步骤111,获取为多媒体所选定的音频。

步骤113,对音频进行分帧,获得若干顺序排列的音频帧。

由于音频在宏观上是不平稳的,在微观上是平稳的,具有短时平稳性(例如10-30ms内可以认为音频近似不变),从而将音频划分成音频片段来进行处理,一音频片段称为一音频帧。

在一具体实施例中,以1024位窗口大小,进行分帧,例如44.1KHz的采样频率每秒可以采集到43个值。

步骤115,对音频帧进行时频变换,获得音频帧的频谱。

时频变换,即将音频帧的时域表达转换为频域表达,所获得的频域表达即为音频帧的频谱。

其中,时频变换可以是快速傅里叶变换((Fast Fourier transform,FFT)、短时傅里叶变换(short-time Fourier transform,STFT),在此不进行具体限定。

在一实施例中,在步骤113之前,对音频进行预处理,其中所进行的预处理例如去噪、动态范围压缩、预加重等。其中预加重例如将音频中衰减严重的频率段进行预加重。在其他实施例中,还可以根据实际需要确定进行预加重的频率段。

在一实施例中,步骤130之前,该方法还包括:

根据音频帧的频谱进行滤波,获得音频帧的梅尔频谱,梅尔频谱用于进行差分计算。

人耳所能听到的频率范围是20Hz~20000Hz,但是人耳对于赫兹标度下的声音并不是线性感知关系。而在梅尔频率中,人对音调的感知度为线性关系,举例来说,如果两段音频的梅尔频率差两倍,则人耳听起来两者的音调也相差两倍。

梅尔刻度是一种基于人耳对等距的音高变化的感官判断而定的非线性频率刻度,其中,梅尔频率与赫兹频率的关系为:

Fmel=1125ln(1+f/700)

其中Fmel为梅尔频率,f为赫兹频率。当频率较小时,Fmel随f变化较快;当频率很大时,Fmel随f上升很缓慢。

因此,根据音频帧的频谱进行滤波,获得符合人儿听觉特性的梅尔频谱。然后再基于音频帧的频谱进行差分计算。

所进行的滤波,即将音频中各音频帧的频谱通过为获得梅尔频谱所设定的滤波器,进而获得各音频帧的梅尔频谱。

其中该设定的滤波器可以是梅尔滤波器,梅尔滤波器是一组包含20-40个(标准26个)三角滤波器的滤波器。在其他实施例中,该设定的滤波器还可以是常数Q滤波器或者基于神经网络生成的滤波器,在此不进行具体限定。

在一具体实施例中,为了提高滤波的效率,在进行滤波之前,将各音频帧的频谱沿时域拼接起来,即按照各音频帧在音频中的顺序进行频谱的拼接,获得音频的声谱图。所获得的声谱图的横轴表示时间,纵轴表示频率。图5是根据一示例性实施例示出的声谱图的显示示意图,在数据形态上,所得到的声谱图即为一维为时间、一维为频率的二维矩阵,从而,根据声谱图即根据设定的滤波器沿频率轴进行滤波,获得各音频帧的梅尔频谱。

在一实施例中,步骤130,包括:

相对上一音频帧,对音频帧的频谱进行一阶差分,获得音频帧的一阶频谱通量,一阶频谱通量作为音频帧的频谱通量。

如上所描述,音频帧的频谱通量表征了音频帧相对于上一音频帧的幅值变化。

在本实施例中,将进行一阶差分所获得的一阶频谱通量作为音频帧的频谱通量。

如上所描述,每一音频帧中包括至少一频率的音频信号,其中一阶频谱的通量的计算公式为:

其中SF(k)为第k个音频帧的一阶频谱通量,s(k,i)为第k个音频帧中第i个频率对应的振幅,s(k-1,i)为第k-1个音频帧中第i个频率对应的振幅。

在另一实施例中,如图6所示,步骤130,包括:

步骤131,相对上一音频帧,对音频帧的频谱进行一阶差分,获得音频帧的一阶频谱通量。

步骤133,对于表示振幅下降的一阶频谱通量进行数据补偿,获得补偿后的一阶频谱通量。

对于鼓点的定位而言,由于仅需要关注音频中振幅增大的部分,而本实施例中需要进行两次一阶差分,从而为了避免音频中振幅下降的部分对再次一阶差分的影响,在步骤133中对表示振幅下降的一阶频谱通量进行数据补偿。

一阶差分所得到的一阶频谱通量中,数值为负的一阶频谱通量表示振幅下降的部分。从而对为负值的一阶频谱通量进行补偿。

在一具体实施例中,将为负值的一阶频谱通量转换为0,来实现数据补偿,从而也避免了所进行的数据补偿对后续的鼓点定位的影响。

步骤135,根据补偿后的一阶频谱通量再次进行一阶差分,获得音频帧的频谱通量。

所再次进行的一阶差分,即将音频帧的一阶频谱通量(或者补偿后的一阶频谱通量)减去上一音频帧的一阶频谱通量(或者补偿后的一阶频谱通量)。

通过再次进行一阶差分可以更加突出音频帧相对于上一音频帧的振幅变化幅度,从而快速定位到音频中的鼓点。

在一实施例中,如图7所示,步骤150,包括:

步骤151,根据为音频帧所在音频区间设定的检测阈值,进行音频帧的频谱通量与所对应检测阈值的比较,音频区间是按照设定时间长度对音频进行划分所确定的。

其中,所进行音频区间的划分可以是根据任意设定的时间长度来进行,在此不进行具体限定。举例来说,例如按照采样率为44100Hz的1024个窗口大小来进行分帧的话,每个音频帧的时长约为43ms。若为音频区间的划分所设定的时间长度为0.5s,那么可以以0.5/0.043=11个音频帧来设定检测阈值,即一个音频区间中包括11个音频帧。换言之,为该音频区间所设定的检测阈值适用于该音频区间中的每一个音频帧。

当然,在具体实施例中,每一音频区间的时段长度可以相同,也可以不同,在此不进行具体限定。

由于在各个音频区间中,音频帧的频谱通量存在差异,从而,在本实施例中,分别为各个音频区间设定检测阈值,从而使得所设定的检测阈值更适配于该音频区间中频谱通量的变化。

所进行的比较,即比较该音频区间中音频帧的频谱通量与所在音频区间的检测阈值的大小。

步骤153,在音频区间中,将频谱通量超过所对应检测阈值的音频帧确定为鼓点所在的音频帧。

如上所描述,鼓点对应于音频中声音振幅突然增大的音频帧,将频谱通量超过检测阈值的音频帧近似为该音频区间中峰值频谱通量所在的音频帧。

从而,通过将音频帧的频谱通量与所对应的检测阈值进行比较,对应将所在音频区间中,频谱通量超过所对应检测阈值的音频帧确定为鼓点所在的音频帧。

在一实施例中,步骤151之前,如图8所示,该方法还包括:

步骤210,对音频区间中音频帧的频谱通量进行平均化处理,获得音频区间的频谱通量均值。

步骤230,根据频谱通量均值为音频区间中的音频帧计算检测阈值。

在本实施例中,实现了根据音频区间中各音频帧的频谱通量来设定该音频区间的检测阈值。通过进行平均化处理,即可获得反映各音频区间中频谱通量的波动情况的频谱通量均值。

进而根据频谱通量均值来计算检测阈值,从而使得所计算得到的检测阈值可以更加适应于该音频区间中的音频帧。

在一实施例中,可以将音频区间的检测阈值设定为频谱通量的一次函数,换言之,一音频区间中检测阈值与频谱通量均值的关系为:y=kx+b,其中y为该音频区间中的检测阈值,x为该音频区间中的频谱通量均值,其中,k和b分别为设定的常数。

在一具体实施例中,将频谱通量均值与选定常数的乘积作为所对应音频区间的检测阈值。其中选定常数可以是预先设定,也可以在实际中进行人为调整。在一具体实施例中,该选定常数为1.2。在其他实施例中,该选定常数还可以根据音频区间中的最大频谱通量来设定,在此不进行具体限定。

为了可以保证为音频区间所设定的检测阈值对于鼓点定位的有效性,在一实施例中,所计算得到的检测阈值大于等于该音频区间的频谱通量均值,且小于该音频区间的最大频谱通量。

在一实施例中,如图9所示,步骤170,包括:

步骤171,根据多媒体的视频帧率,确定在音频的时间轴上鼓点对应的视频帧位置。

步骤173,以两个鼓点所对应视频帧位置分别作为待生成视频片段的首视频帧位置和末视频帧位置,根据视频素材生成对齐至两个鼓点的视频片段。

多媒体的视频帧率是指为该多媒体中视频片段所设定的帧率。

对于视频片段和音频而言,由于视频帧率和音频帧率可能不同,从而,在音频的时间轴上,音频帧和视频帧并不是完全对齐,可能存在错位。

例如视频帧率为每秒30帧,那么每一视频帧的持续时间为33ms;音频帧率为每秒24帧,那么每一音频帧的持续时间为42ms。如果通过上文确定一鼓点在第100个音频帧的位置,即该音频帧对应的时间为4.16s~4.2s;而在4.16s~4.2s时间段内,存在两个视频帧,即第127个视频帧(4.158s~4.191s)和第128个视频帧(4.191s~4.224s)。

而由于本公开所确定的鼓点用于进行视频片段的切换,从而,为了保证视频片段切换的准确性,将鼓点对齐至视频帧位置,即确定鼓点所对应的视频帧位置。具体而言,即根据视频帧率,按照近似法将鼓点对齐至视频帧位置,将所对齐的视频帧位置作为该鼓点对应的视频帧位置。该视频帧位置即视频帧在音频的时间轴上的位置。

继续上述视频帧率为每秒30帧,音频帧率为每秒24帧的举例,那么如果鼓点在第100个音频帧的位置,按照近似法,该鼓点对应的视频帧位置为第127个视频帧所在的位置。

通过按照视频帧率将鼓点对齐到视频帧位置,然后以两个鼓点所对应视频帧位置分别作为待生成视频片段的首视频帧位置和末视频帧位置,来获得对齐至鼓点的视频片段,一方面,准确限定了所生成视频片段在时间轴上的位置,另一方面,限定了视频片段的时长,即为该两个鼓点所对应视频帧位置之间的时间长度。从而即可保证所生成的视频片段对齐至该两个鼓点。

现有技术中,为了生成卡点视频,将音频中鼓点之间的时长作为视频片段的时长,然后根据该时长来调整素材的时长,从而获得视频片段,相当于以时间为单位进行编辑获得视频片段。例如每0.5s剪辑一个视频片段,那么,如果音频的鼓点位置是在第13视频帧(若多媒体的视频帧率为30帧/秒),对应即为0.4333s,而按照0.5s剪辑的剪辑时长没有办法取到0.4333秒这种剪辑位置。因而,以时间为单位的剪辑方式存在准确性低的问题,从而使得所剪辑得到的视频片段并没有对齐至鼓点所对应的视频帧位置,导致卡点视频并未按照鼓点进行视频片段的切换。

而通过本实施例的技术方案,通过按照视频帧率将鼓点对齐到视频帧位置,然后以两个鼓点所对应视频帧位置分别作为待生成视频片段的首视频帧位置和末视频帧位置,来获得对齐至鼓点的视频片段,实现了以视频帧为单位来剪辑生成视频片段,保证了视频片段与鼓点的对齐准确性和视频片段剪辑的准确性,有效解决了现有技术中以时间为单位进行视频片段剪辑存在的剪辑不精准的问题。

在一实施例中,视频素材为视频,如图10所示,步骤173,包括:

步骤310,以两个鼓点所对应视频帧位置之间的时长作为待生成视频片段的时长,对视频进行片段提取,获得时长的视频片段。

步骤330,将视频片段的首视频帧和末视频帧分别对齐至两个鼓点所对应视频帧位置,获得对齐至两个鼓点的视频片段。

作为视频素材的视频可以是现场录制的视频,也可以是在终端中所存储的视频,在此不进行具体限定,其中,视频的数量可以是一个,也可以是多个,在此不进行具体限定。仅需要满足视频的总时长不低于音频的时长即可。

按照两个鼓点所对应视频帧位置之间的时长作为待生成视频片段的时长,从而在合成时,将两个视频所对应视频帧位置分别作为所提取得到视频片段的首视频帧的位置和末视频帧的位置。

在一具体实施中,为了生成视频片段,由用户进行鼓点的选择,从而,根据用户所选择的鼓点确定鼓点对应的视频帧位置。进而确定待生成视频片段的时长。

对于作为视频素材的视频而言,其时长大于视频片段的长度,进一步的,在确定待生成视频片段的时长后,用户可以进行选择,即选择从视频中提取哪一区间的片段作为视频片段。

在另一实施例中,视频素材为图片,如图11所示,步骤173,包括:

步骤410,获取为鼓点所对应视频帧位置所选定的图片。

步骤430,以两个鼓点所对应视频帧位置之间的时长作为待生成动画的时长,根据图片生成时长的动画,所生成的动画作为对齐至两个鼓点的视频片段。

在本实施例中,为获得与鼓点对齐的视频帧,先为鼓点所对应视频帧位置选定图片,从而,该图片在多媒体中的放置位置即为该鼓点所对应的视频帧位置。

由于图片是静态的,因而为了获得视频片段,以两个鼓点所对应视频帧位置之间的时长作为动画的时长,根据所获取的图片生成该时长的动画。举例来说,例如确定鼓点所对应视频帧位置为0.3s、5.6s和10.1s,则在该三个位置分别选定一图片,从而,在0~0.3s这一区间中,根据为0.3s所选定的图片生成动画,所生成的动画可以是让图片从左边移到右边,或者添加缩放、旋转等效果。从而所生成的动画即作为对齐至0.3s这一鼓点的视频片段。

在一具体实施例中,由于所选定图片的大小与为多媒体所设定的视频比例大小不一致,为了保证多媒体的播放显示效果,因而,在步骤430之前,按照多媒体的视频比例大小对所选定的图片进行编辑,例如按照多媒体的视频比例大小进行裁剪或者拉伸缩放到视频比例大小,以保证编辑后的图片与多媒体的视频比例大小相符。

图12是根据一具体实施例示出的生成多媒体的流程图。如图12,先根据所选定的音频进行鼓点定位,然后根据所定位到的鼓点来生成多媒体。

其中,鼓点定位的实现包括如下步骤:

步骤510,分帧:按照所设定的窗口大小,例如以1024为窗口大小,对所选定的音频进行分帧,得到若干音频帧。各音频帧按照在音频中的时间顺序排列形成音频序列。

步骤520,傅里叶变换:将各音频帧的时域表达转换为频域表达,即获得各音频帧的频谱。进一步的,将各音频帧的频谱沿时域拼接起来,即获得所选定音频的声谱图。

步骤530,滤波:以获得梅尔频谱为目的进行滤波,从而获得各音频帧的梅尔频谱。其中,滤波可以使用梅尔滤波器,或者常数Q滤波器或者通过神经网络所构建的滤波器来进行。

步骤540,差分:对于每一音频帧,相对于上一音频帧的梅尔频谱进行差分,对应获得该音频帧的频谱通量。其中,所进行的差分,可以是一阶差分,从而,将一阶差分所获得的一阶频谱通量作为音频帧的频谱通量。在其他实施例中,在一阶差分的基础上,对一阶频谱通量进行补偿,即将为负值的一阶频谱通量转换为0,并对补偿后的一阶频谱通量再次进行一阶差分,获得各音频帧的频谱通量。

步骤550,平均化:按照所划分的音频区间,对音频区间中音频帧的频谱通量进行平均化处理,得到该音频区间的频谱通量均值。所得到的频谱通量均值用于设定所对应音频区间中的检测阈值。例如将频谱通量均值与设定常数(例如1.3)的积作为所对应音频区间的检测阈值。

步骤560,峰值检测:将音频区间中超过所对应检测阈值的频谱通量近似确定为音频区间中的峰值频谱通量。

步骤570,定位鼓点:将步骤560中峰值频谱通量所在的音频帧作为该音频区间中鼓点所在的音频帧。并在此基础上,根据多媒体的视频帧率,确定鼓点所对应的视频帧位置,实现鼓点向视频帧位置的定位。

通过步骤510-570即实现了鼓点定位,在后续步骤中按照所定位的鼓点生成视频片段。

为生成多媒体,预先进行了视频素材的选定。其中,视频素材可以是视频,也可以是图片。

若视频素材是视频,则按照步骤580视频剪辑来生成视频片段:根据用户为视频片段所选定的鼓点进行视频剪辑,生成对齐至所选定鼓点的视频片段,所生成视频片段的时长是所对齐鼓点所对应视频帧位置之间的时长。

若视频素材是图片,则按照步骤590生成视频片段,其中,用户在为鼓点所对应视频帧位置选定图片后,根据多媒体的视频比例大小进行图片处理,其中图片处理包括裁剪、拉伸缩放等,使得处理后的图片适应于视频比例;再根据处理之后的图片生成动画。其中所生成动画的时长是两相邻图片所在鼓点所对应视频帧位置之间的时长,所生成的动画即为对齐至两鼓点所对应视频位置的视频片段。

进而,按照视频片段所对齐的鼓点进行音频和视频片段的合成,生成多媒体。所生成的多媒体在播放时,各视频片段按照所对齐的鼓点进行切换。

图13是根据一示例性实施例所示出的一种生成多媒体的装置的框图。如图13所示,该装置包括:

频谱获取模块610,用于根据为多媒体所选定的音频,获得音频中各音频帧的频谱。

差分计算模块630,用于根据音频中各音频帧的频谱进行差分计算,获得音频帧的频谱通量。

定位模块650,用于根据音频帧的频谱通量进行峰值检测,定位音频中鼓点所在的音频帧。

生成模块670,用于根据为多媒体所选定的视频素材生成对齐至鼓点的视频片段。

合成模块690,用于按照视频片段所对齐的鼓点进行视频片段和音频的合成,获得多媒体。

上述装置中各个模块的功能和作用的实现过程具体详见上述生成视频的方法中对应步骤的实现过程,在此不再赘述。

可以理解,这些模块可以通过硬件、软件、或二者结合来实现。当以硬件方式实现时,这些模块可以实施为一个或多个硬件模块,例如一个或多个专用集成电路。当以软件方式实现时,这些模块可以实施为在一个或多个处理器上执行的一个或多个计算机程序,例如图2的处理器218所执行的存储在存储器204中的程序。

在一实施例中,频谱获取模块610,包括:

音频获取单元,用于获取为多媒体所选定的音频。

分帧单元,用于对音频进行分帧,获得若干顺序排列的音频帧。

时频变换单元,用于对音频帧进行时频变换,获得音频帧的频谱。

在一实施例中,该装置还包括:

滤波模块,用于根据音频帧的频谱进行滤波,获得音频帧的梅尔频谱,梅尔频谱用于进行差分计算。

在一实施例中,差分计算模块630,包括:

差分单元,用于相对上一音频帧,对音频帧的频谱进行一阶差分,获得音频帧的一阶频谱通量,一阶频谱通量作为音频帧的频谱通量。

在另一实施例中,差分计算模块630,包括:

一阶差分单元,用于相对上一音频帧,对音频帧的频谱进行一阶差分,获得音频帧的一阶频谱通量。

补偿单元,用于对于表示振幅下降的一阶频谱通量进行数据补偿,获得补偿后的一阶频谱通量。

再次一阶差分单元,用于根据补偿后的一阶频谱通量再次进行一阶差分,获得音频帧的频谱通量。

在一实施例中,定位模块650,包括:

比较单元,用于根据为音频帧所在音频区间设定的检测阈值,进行音频帧的频谱通量与所对应检测阈值的比较,音频区间是按照设定时间长度对音频进行划分所确定的。

鼓点确定单元,用于在音频区间中,将频谱通量超过所对应检测阈值的音频帧确定为鼓点所在的音频帧。

在一实施例中,该装置还包括:

平均化模块,用于对音频区间中音频帧的频谱通量进行平均化处理,获得音频区间的频谱通量均值。

检测阈值计算模块,用于根据频谱通量均值为音频区间中的音频帧计算检测阈值。

在一实施例中,生成模块670,包括:

确定单元,用于根据多媒体的视频帧率,确定在音频的时间轴上鼓点对应的视频帧位置。

生成单元,用于以两个鼓点所对应视频帧位置分别作为待生成视频片段的首视频帧位置和末视频帧位置,根据视频素材生成对齐至两个鼓点的视频片段。

在一实施例中,视频素材为视频,生成单元,包括:

片段提取单元,用于以两个鼓点所对应视频帧位置之间的时长作为待生成视频片段的时长,对视频进行片段提取,获得时长的视频片段。

对齐单元,用于将视频片段的首视频帧和末视频帧分别对齐至两个鼓点所对应视频帧位置,获得对齐至两个鼓点的视频片段。

在一实施例中,视频素材为图片,生成单元,包括:

图片获取单元,用于获取为鼓点所对应视频帧位置所选定的图片。

动画生成单元,用于以两个鼓点所对应视频帧位置之间的时长作为待生成动画的时长,根据图片生成时长的动画,所生成的动画作为对齐至两个鼓点的视频片段。

需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。

在一示例性实施例中,一种电子设备,包括:

处理器;及

存储器,其中,存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时实现上述各实施例中生成多媒体的方法。

在另一示例性实施例中,一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各实施例中的生成多媒体的方法。

上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。

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