CN114339443B - 一种音视频倍速播放方法及装置 - Google Patents
一种音视频倍速播放方法及装置 Download PDFInfo
- Publication number
- CN114339443B CN114339443B CN202111364863.3A CN202111364863A CN114339443B CN 114339443 B CN114339443 B CN 114339443B CN 202111364863 A CN202111364863 A CN 202111364863A CN 114339443 B CN114339443 B CN 114339443B
- Authority
- CN
- China
- Prior art keywords
- audio
- video
- frames
- frame
- played
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012545 processing Methods 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000005070 sampling Methods 0.000 description 34
- 239000011159 matrix material Substances 0.000 description 12
- 239000013598 vector Substances 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 230000001360 synchronised effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 102100037812 Medium-wave-sensitive opsin 1 Human genes 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- JLGLQAWTXXGVEM-UHFFFAOYSA-N triethylene glycol monomethyl ether Chemical compound COCCOCCOCCO JLGLQAWTXXGVEM-UHFFFAOYSA-N 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000001851 vibrational circular dichroism spectroscopy Methods 0.000 description 1
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请实施例公开了一种音视频倍速播放方法及装置,其中方法包括:获取音频帧序列;根据音频帧序列中每个音频帧的音频类型,分别确定每个音频帧的优先级;根据倍速参数和每个音频帧的优先级,从N个音频帧中选择待播放音频帧;获取与音频帧序列对应的视频帧序列;根据音频帧序列从M个视频帧中选择待播放视频帧;播放待播放音频帧和待播放视频帧。本申请可以应用于教育、影视娱乐等多媒体技术应用领域,使用户在对音视频进行倍速播放时,实现无感快进的效果。
Description
技术领域
本发明涉及多媒体技术应用领域,具体涉及一种音视频倍速播放方法及装置。
背景技术
随着互联网技术在多媒体领域的广泛应用,越来越多的用户选择在线观看影片、教学课程或直播互动等。相比于传统线下收看,在线观看具有能够倍速播放、进度调节、暂停重播、集数选择等多方面优势。图1是现有的一种音视频倍速播放方法的流程示意图。鉴于人的眼睛对大于每秒15帧以上的非运动视频敏感度较低,所以在音视频倍速播放的过程中,相较于视频,人们对于音频的倍速播放效果敏感度更高(尤其是在歌曲播放过程中)。因此,在图1所示的方法中,对视频采取随机丢帧处理,音频采取变速不变调算法处理。经典的变速不变调算法包括如图2所示的时域压扩(time-scale modification,TSM)算法以及如图3所示的重叠叠加(overlap-and-add,OLA)算法等。
该方法在对视频随机丢帧处理时容易丢失关键信息,且在对音频处理时,一旦改变帧与帧之间的间隔(也即是改变了帧与帧之间的重叠)会使用户明显感知到音频的快进和结束,并引入噪声,倍速效果不好。
发明内容
本申请提供一种音视频倍速播放方法及装置,可以使用户在对音视频进行倍速播放时,实现无感快进的效果。
本申请提供了一种音视频倍速播放方法,该方法包括:获取音频帧序列,音频帧序列包括N个音频帧,N为正整数;
根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级;
根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧;
获取与音频帧序列对应的视频帧序列,视频帧序列包括M个视频帧,M为正整数;
根据音频帧序列从M个视频帧中选择待播放视频帧;
播放待播放音频帧和待播放视频帧。
其中,目标音频帧为音频帧序列的一个音频帧,确定目标音频帧的音频类型的方式,包括:提取目标音频帧的音频帧能量;
若音频帧能量不大于第一能量阈值,则确定目标音频帧的音频类型为静音类型;若音频帧能量大于第一能量阈值且不大于第二能量阈值,则确定目标音频帧的音频类型为噪音类型;若音频帧能量大于第二能量阈值则确定目标音频帧的音频类型为非静音非噪声类型。
或者,确定目标音频帧的音频类型的方式,包括:
获取目标音频帧的波形;
对目标音频帧的波形以固定采样率采样,得到T个采样点;
根据T个采样点的采样幅度值,确定目标音频帧的采样矩阵,所述矩阵包括T个采样点的采样幅度值对应的采样向量;
根据特征学习算法和采样矩阵,确定目标音频帧对应的特征向量矩阵;
根据特征向量矩阵和分类器,预测目标音频帧的音频类型为非静音非噪声类型、噪声类型、静音类型的第一概率、第二概率、第三概率;
确定最大概率所对应的音频类型为目标音频帧的音频类型。
本申请提供了一种音视频倍速播放装置,该装置包括:
获取模块,用于获取音频帧序列,音频帧序列包括N个音频帧,N为正整数;
处理模块,用于根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级;
处理模块,还用于根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧;
获取模块,还用于获取与音频帧序列对应的视频帧序列,视频帧序列包括M个视频帧,M为正整数;
处理模块,还用于根据音频帧序列从M个视频帧中选择待播放视频帧;
播放模块,用于播放待播放音频帧和待播放视频帧。
本申请提供了一种电子设备,该电子设备包括存储器和处理器,其中,上述存储器,用于存储音视频倍速播放的处理程序;该音视频倍速播放的处理程序被上述处理器执行时实现如上述方法的步骤。
本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行,用以执行上述音视频倍速播放方法。
本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述音视频倍速播放方法。
本申请可以从全量音频帧序列中选择出部分音频帧用于倍速播放,用于倍速播放的音频帧播放时长与处理前相同,避免由于改变相邻音频帧之间间隔导致每个音频帧播放时长变短(或者变长)产生的倍速开始(或者结束)的不平滑情况。且根据音频帧的处理结果选择出部分视频帧用于倍速播放,避免了随机丢弃视频帧造成关键视频帧丢失的情况。基于此,该方法能够实现无感快进的倍速效果。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是现有的一种音视频倍速播放方法的流程示意图;
图2是现有的一种时域压扩TSM算法的原理示意图;
图3是现有的一种重叠叠加OLA算法的原理示意图;
图4是本申请实施例提供的一种音视频倍速播放方法的实施流程示意图;
图5是本申请实施例提供的一种音视频倍速播放方法的流程示意图;
图6是本申请实施例提供的又一种音视频倍速播放方法的实施流程示意图;
图7是本申请实施例提供的音视频倍速处理的一个示例图;
图8是本申请实施例提供的一种音视频倍速播放装置的示意图;
图9是本申请实施例提供的一种电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
多媒体技术应用领域集文字、声音、图像、视频、通信等多项技术于一体,采用计算机的数字记录和传输传送方式,对各种媒体进行处理,具有广泛的用途。目前该领域生产的各类多媒体应用可以集计算机、电视机、录音机、录像机、VCD机、DVD机、电话机、传真机等各种电器为一体,甚至代替各类传统家电。
在教育领域中,在线教育平台的兴起打破了传统课程模式的限制。用户可通过该平台获取实时或者录播的教育资源进行针对性的学习。具体地,当本申请应用于该场景下时,可以在用户(也即是在线学习者)对课程知识有一定的了解下,通过获取用户对电子设备(例如平板、笔记本、手机等终端)上有关倍速播放按钮的操作(示例性地,该操作可以是单击、双击、触控等),对课程知识进行倍速播放以作简单的回顾和复习。进一步地,由于在教育资源(教育课程音视频)中,用户往往只关注教师的人声,而对其余背景声或者静音声不关注,采用本申请的方案,能够在该种情况下丢弃掉用户不关注的声音,提高倍速播放的效果。
在影视娱乐业,用户在“追剧”的同时,往往希望对其播放速度进行控制。在该应用领域中,用户可能在关注人声的基础上,还关注背景音乐。也即时说当本申请应用于该场景时,需要对背景音乐的音频进行保留,丢弃其余不重要(如静音)的声音。该种情况也适用于歌唱类节目(保留歌声)、综艺类节目等。
本申请的说明书、权利要求书及附图中的术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请中的音视频倍速播放装置为具有数据处理功能的设备,可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)、接入终端设备、车载终端设备、工业控制终端设备、UE单元、UE站、移动站、远方站、远程终端设备、移动设备、UE终端设备、无线通信设备、UE代理或UE装置等。终端设备可以是固定的或者移动的。需要说明的是,终端设备可以支持至少一种无线通信技术,例如LTE、新空口(new radio,NR)等。例如,终端设备可以是手机(mobile phone)、平板电脑(pad)、台式机、笔记本电脑、一体机、车载终端、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medicalsurgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportationsafety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、蜂窝电话、无绳电话、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digitalassistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、可穿戴设备、未来移动通信网络中的终端设备或者未来演进的公共移动陆地网络(public land mobile network,PLMN)中的终端设备等。在本申请的一些实施例中,终端设备还可以是具有收发功能的装置,例如芯片系统。其中,芯片系统可以包括芯片,还可以包括其它分立器件,本申请实施例对此并不限定。
参见图4,是本申请实施例提供的一种音视频倍速播放方法的实施流程示意图,该方法包括步骤S401~步骤S407。需要说明的是,图4所描述的方法的执行主体以上述音视频倍速播放装置为例。其中:
S401、获取音频帧序列,音频帧序列包括N个音频帧,N为正整数。
在本申请实施例中,音频帧序列是从音视频源文件中获取的。针对网络点播或直播流等类型的音视频源文件,音视频倍速播放装置首先从源文件中分离出音频数据。其次,对音频数据进行解码处理,解码成设备可播放的脉冲编码调制(pulse code modulation,PCM)数据并按帧存储。音频数据的编码方式包括高级音频编码(advanced audio coding,ACC)、动态图像专家组第三层音频层(moving picture experts group audio layer III,MPEG-3)等,不同编码方式使得单个音频帧所包含的样本数目不同。此外,正常人的听觉频率大约在20Hz~20kHz之间,根据奈奎斯特采样理论(即要从抽样信号中无失真地恢复原信号,抽样频率应大于2倍信号最高频率),采样频率在40kHz左右能保证声音不失真。常用的采样频率包括8kHz、11.025kHz、22.05kHz、37.8kHz、44.1kHz、48kHz等,可以根据不同的采样概率与编码方式的组合,确定不同的音频帧播放时长。
示例性地,对采样率为44.1kHz的ACC音频进行解码时,音频帧的播放时长可确定为单个ACC帧包含的采样样本数目与采样概率的差值,即1024/44100=23.22ms。类似地,在采样率为44.1kHz的情况下,MPEG-3的音频帧播放时长为26.12ms、在采样率为48kHz的情况下,ACC和MPEG-3音频帧的播放时长分别为21.33ms、24ms。
S402、根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级。
对于音频帧序列中的每个音频帧,需要根据音频帧的音频类型(以音频内容进行区分音频类型,可称为音频内容)对其进行区分,确定每个音频帧的优先级(重要程度),以便在倍速播放时选择出优先级较高(重要)的音频帧或者丢弃掉优先级较低(不重要)的音频帧。
在一种可能实现方式中,优先级包括由低至高排序的优先级1~优先级3,分别对应的音频类型为静音类型、噪声类型、非静音非噪声类型。其中,非静音非噪声类型还可具体包括人声类型和歌声类型等,可通过进一步设置优先级对其进行区别。需要说明的是,对音频类型的优先级的排序方式取决于用户在某一特定应用场景更关注的语音内容是何种(示例性地,只关注人声和/或歌声等),上述排序方式以及优先级的定义不是唯一表示方式,本申请实施例对此不作限定。
可以理解的是,在上述根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级之前,还需要确定每个音频帧的音频类型。
在一种可能实现方式中,目标音频帧为音频帧序列的一个音频帧,确定目标音频帧的音频类型的方式,包括:提取目标音频帧的音频帧能量;若音频帧能量不大于第一能量阈值,则确定目标音频帧的音频类型为静音类型。若音频帧能量大于第一能量阈值且不大于第二能量阈值,则确定目标音频帧的音频类型为噪音类型。若音频帧能量大于第二能量阈值,则确定目标音频帧的音频类型为非静音非噪声类型。示例性地,音频帧能量为短时能量,用于体现音频信号在不同时刻的能量强弱程度,第n个的音频帧的短时能量可由下述表达式得到:其中N为目标音频帧所包括的采样点数目,xn(m)为第m个采样点的幅度值。
由于音频帧的音频类型在为非静音非噪声类型(包含语音内容)时,音频帧短时能量相对较大,在为噪声类型时,音频帧短时能量相对较小,在为静音类型时,音频帧短时能量最小,因此可以通过将音频帧能量与能量阈值进行比较确定音频帧的音频类型。
示例性地,音频帧能量还可以为短时过零率(音频信号过零点的次数,用于体现音频信号的频率特性)。音频帧的音频类型在为非静音非噪声类型时,音频帧短时过零率最小,在为噪声类型时,音频帧短时过零率相对较小,在为静音类型时,音频帧短时过零率相对较大。因此若音频帧能量小于第三能量阈值,则确定目标音频帧的音频类型为非静音非噪声类型;若音频帧能量大于第三能量阈值且不大于第四能量阈值,则确定目标音频帧的音频类型为噪声类型。若音频帧能量大于第四阈值,则确定目标音频帧的音频类型为静音类型。第n个音频帧的短时过零率可由下述表达式得到。其中,sgn[]为符号函数。
需要说明的是,音频帧能量可以由其他形式表示,用于区分上述音频类型,本申请实施例对此不作限定。并且,可以理解的是,为进一步区分非静音非噪声类型,可再结合其余音频处理技术(示例性地,语音文本识别技术、更细粒度的能量阈值划分方式)对目标音频帧进行处理。
对于上述确定目标音频帧的音频类型的方式,在另一种可能实现方式中,包括:获取目标音频帧的波形;对目标音频帧的波形以固定采样率采样,得到T个采样点;根据T个采样点的采样幅度值,确定目标音频帧的采样矩阵,所述矩阵包括T个采样点的采样幅度值对应的采样向量;根据特征学习算法和采样矩阵,确定目标音频帧对应的特征向量矩阵;根据特征向量矩阵和分类器,预测目标音频帧的音频类型为非静音非噪声、噪声类型、静音类型的第一概率、第二概率、第三概率。确定上述三类概率中最大概率所对应的音频类型为目标音频帧的音频类型。
在该实现方式中,采样幅度值对应的采样向量可以采用独热编码(one-hotencoding)或者嵌入向量(embeeding)等映射方式,嵌入向量相较于独热编码具有能够将高维特征映射到更低维的特征空间的优势,且能对不同特征之间的内在关系进行提取。
特征学习算法包括但不限于深度学习算法(卷积神经网络CNN、循环神经网络RNN等)、传统机器学习算法(K近邻算法KNN、支持向量机SVM算法)等,也可结合监督式学习算法、无监督学习算法、半监督学习算法中的任意一项确定特征向量矩阵。通过特征学习算法对目标音频帧内的特征进行提取,可以提取出多模态的特征。示例性地,该特征可以为频率、能量特征(短时能量、短时过零率等)、谐波特征,长时信息特征等,本申请实施例对此不作限定。
分类器的种类包括但不限于softmax分类器、KNN分类器、SVM分类器。分类器通过对特征向量矩阵进行分类,确定目标音频帧的为上述三种音频类型的概率,通过概率之间的比较判定音频类型。该方式由于可融合多模态特征判断音频帧类型的概率,相较于上述实现方式,具有更精确、效率更快的优势。
S403、根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧。
在一种可能实现方式中,根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧,包括:获取音频帧序列的总时长;根据音频帧序列的总时长和倍速参数确定待处理音频帧的总时长,待处理音频帧是待丢弃音频帧或待播放音频帧;根据待处理音频帧的总时长和音频帧序列中任一音频帧的时长,确定待处理音频帧的第一数量;根据待处理音频帧的第一数量以及每个音频帧的优先级,从N个音频帧中选择待播放音频帧。
其中,倍速参数为1.5倍速、2倍速、3倍速等大于原始播放速度的参数,该倍速参数的获取形式可以为获取用户对音视频倍速播放装置(或承载于音视频倍速播放装置的终端设备等)上倍速参数的单击、双击、触控、或者长按、语音输入等操作。
在一种可能实现方式中,当待处理音频帧是待丢弃音频帧时,上述根据待处理音频帧的第一数量以及每个音频帧的优先级,从N个音频帧中选择待播放音频帧,具体包括:根据第一数量,按照优先级从低到高的顺序从N个音频帧中选择第一数量个待丢弃音频帧;将N个音频帧中除第一数量个待丢弃音频帧以外的音频帧作为待播放音频帧。示例性地,针对一个总时长为1000ms的音频帧序列(针对每个音频帧播放时长为23ms的情况,约略43个音频帧),对其进行2倍速快进播放,则待丢弃音频帧的总时长为500ms。进一步地,待丢弃音频帧的第一数量为500ms/23ms≈21个。需要说明的是,由于人耳对于每帧音频的敏感度很高,因此在确定待丢弃音频帧数量时,若有余数,则该数量进行退位处理,省略余数。在确定待丢弃音频帧的数量为21个后,从以确定优先级的43个音频帧中依次选取优先级为1的音频帧(音频类型为静音类型)作为待丢弃音频帧,若数量不够,再选取优先级为2的音频帧作为待丢弃音频帧,以此类推直至选择的待丢弃音频帧的数量与第一数量相同。由此可见,经过该处理后剩余的多个音频帧均为包括有效的音频内容(如歌声、人声)的待播放音频帧,同时由于丢弃掉的为包括无效的音频内容的音频帧,音频在倍速处理后不会丢失重要信息,从而实现无感快进的效果。
S404、获取与音频帧序列对应的视频帧序列,视频帧序列包括M个视频帧,M为正整数。
在本申请实施例中,视频帧序列是从音视频源文件中获取的。针对网络点播或直播流等类型的音视频源文件,音视频倍速播放装置首先从源文件中分离出视频数据。其次,对视频数据进行解码处理,解码成设备可播放的YUV数据(即视频帧、视频“图像”),YUV中的"Y"表示明亮度,也即是说灰阶值;而"U"和"V"表示的则是色度,用于描述影像色彩及饱和度,用于指定像素的颜色把亮度与色度分离。每个视频帧(每个YUV数据)取决于其编码格式的帧率(每秒显示的视频帧数量)。示例性地,针对帧率为25的H264格式的视频,每个视频帧的播放时长为1000/25=40ms。需要说明的是,视频常用的帧率包括15(用于直播)、24、30(用于电影)、60(用于运动高清视频)。且视频帧序列可以为一个图片组(group ofpictures,GOP)组,一个GOP组中可以包含多个视频帧。
S405、根据音频帧序列从M个视频帧中选择待播放视频帧。
在一种可能实现方式中,待播放音频帧和视频帧均携带时间戳(presentationtime stamp,PTS),该起始时间戳为显示时间戳,步骤S405具体包括:在M个视频帧中查找与待播放音频帧具有对应关系的视频帧;具有对应关系的视频帧和待播放音频帧之间的起始时间戳差值是待播放音频帧分别与M个视频帧之间的M个起始时间戳差值中的最小差值;将查找到的视频帧作为所述待播放视频帧。
需要说明的是,在该方式中,每次以一个待播放音频帧为主体,在整个视频帧序列中对每个视频帧进行遍历,获取与M个视频帧的M个起始时间戳差值,该起始时间戳差值为这个待播放音频帧与一个视频帧的起始时间戳之差的绝对值。在M个起始时间戳差值中查找到最小差值,以及最小差值对应的视频帧,并将该视频帧作为待播放视频帧。由此可见,每个待播放音频帧都能查找到一个待播放视频帧,且该方式的处理结果使得最终播放的音频和视频之间具有关联关系。
S406、播放待播放音频帧和待播放视频帧。
将经过上述处理得到的待播放视频帧和待播放音频帧加入播放队列,并使用各自对应的输出设备(示例性地,音频帧采用音频驱动(如喇叭)、视频帧采用显示模块(如终端显示屏等))渲染输出。
在图4所描述的实施例中,从全量音频帧序列中选择出优先级相对较高的音频帧用于倍速播放,用于倍速播放的音频帧播放时长与处理前相同,且具有有效的音频内容(示例性地,歌声或者人声),这避免了现有方案中由于改变相邻音频帧之间间隔导致每个音频帧播放时长变短(或者变长)产生的倍速开始(或者结束)的不平滑情况。且根据音频帧的处理结果对视频帧进行选取用于倍速播放,避免了随机丢弃视频帧造成关键视频帧丢失的情况。基于此,可以通过该实施例实现无感快进的倍速效果。
参见图5是本申请实施例提供的一种音视频倍速播放方法的流程示意图,该方法相较于图1现有的音视频倍速播放方法,在对音频和视频的处理上提出更为优异的方法。对音频通过对识别分析,识别各语音包的优先级,并根据优先级分别处理。将处理后的音频数据与处理后的视频数据(依照音频数据的优先级同步视频数据的优先级)进行时钟同步并输出。该方法的处理不会引起客户的观看体验差异,不会感知播放速度的快进和退出。接下来,通过其余实施例对图5所示的实施例作进一步描述。
具体地,参见图6,是本申请实施例提供的又一种音视频倍速播放方法的实施流程示意图。该方法包括步骤S601~步骤S607,是图5中所描述的实施例的进一步说明。需要说明的是,图6所描述的方法的执行主体以音视频倍速播放装置为例。其中:
S601、获取音频帧序列,音频帧序列包括N个音频帧,N为正整数。
S602、根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级。
S603、根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧。
S604、获取与音频帧序列对应的视频帧序列,视频帧序列包括M个视频帧,M为正整数。
在本申请实施例中,步骤S601~步骤S604的具体实施方式可参见前述步骤S401~步骤S404的相关描述,在此不作赘述。
S605、将N个音频帧的优先级向M个视频帧同步,得到视频帧序列中每个视频帧的优先级,每个视频帧的优先级存储于第一缓冲区。
根据音频帧的优先级向视频帧同步也即是说,确定不同优先级的音频帧在视频帧序列中对应的视频帧,以得到视频帧序列中每个视频帧的优先级,每个视频帧的优先级可以同音频帧优先级一样,由低至高划分为优先级1~优先级3。需要说明的是,优先级的划分方式有多种,本申请对此不作限定。
在一种可能实现方式中,步骤S605具体包括:在N个音频帧中,分别查找与视频帧序列中每个视频帧具有对应关系的音频帧;将音频帧的优先级同步至具有对应关系的视频帧。
其中,每个音频帧和每个视频帧均携带起始时间戳,用于确定视频帧的优先级并在后续中确定音频帧和视频帧播放的先后顺序。
在N个音频帧中,分别查找与视频帧序列中每个视频帧具有对应关系的音频帧;第一视频帧为视频帧序列中的一个视频帧,第一音频帧为音频帧序列中的一个音频帧,具有对应关系的第一音频帧和第一视频帧之间的起始时间戳差值是第一视频帧分别与N个音频帧之间的N个起始时间戳差值中的最小差值;将音频帧的优先级同步至具有对应关系的视频帧。
其中,该实现方式以一个视频帧为主体,在音频帧序列中遍历每个音频帧,确定每个音频帧的起始时间戳(audio pts,ap)与该视频帧的起始时间戳(video pts,vp)的差值的绝对值,即|ap-vp|。该差值共有N个,对N个差值进行比较,确定具有最小差值的音频帧。进一步地,将该音频帧确定为第一音频帧,与该视频帧进行对应,也即是说第一音频帧与第一视频帧为具有对应关系的音频帧和视频帧。将音频帧的优先级同步至具有对应关系的视频帧。
通过该实现方式,可以为视频帧序列中的每个视频帧查找到与之具有对应关系的音频帧,且同步其对应关系。
在另一种可能实现方式中,步骤S605具体包括:在M个视频帧中,分别查找与每个待播放音频帧具有对应关系的视频帧;将音频序列的优先级同步至具有对应关系的视频帧;将未同步优先级的M-K个视频帧的优先级确定为最低优先级。
其中,上述待播放音频帧数量为K,K为不大于M的正整数。在M个视频帧中,分别查找与每个待播放音频帧具有对应关系的视频帧;第二音频帧为K个待播放音频帧中的一个待播放音频帧,第二视频帧为所述视频帧序列中的一个视频帧,具有对应关系的第二视频帧和第二音频帧之间的起始时间戳差值是第二音频帧分别与M个视频帧之间的M个起始时间戳差值中的最小差值;将待播放音频帧的优先级同步至具有对应关系的视频帧;将未同步优先级的M-K个视频帧的优先级确定为最低优先级。
该实现方式以一个待播放音频帧为主体,在视频帧序列中遍历每个视频帧,确定每个视频帧的起始时间戳vp与该待播放音频帧的起始时间戳ap的差值的绝对值,即|ap-vp|。该差值共有M个,对M个差值进行比较,确定具有最小差值的视频帧。进一步地,将该视频帧确定为第二视频帧,与该待播放音频帧进行对应,也即是说第二音频帧与第二视频帧为具有对应关系的音频帧和视频帧。将音频帧的优先级同步至具有对应关系的视频帧。由于待播放音频帧的数量为K,小于视频帧的数量M,因此每个待播放音频帧均可将自己的优先级同步给具有对应关系的视频帧,而不会造成重要信息的损失。针对未被确定优先级的M-K个视频帧,将其优先级确定为最低优先级。
示例性地,参见图7为音视频倍速处理的一个示例图。在图中包括音频帧序列,音频帧序列以采样率为44.1kHz的ACC帧为例,每个音频帧的播放时长约略23ms,视频帧序列以每个视频帧的播放时长为30ms为例。根据步骤S602,对音频帧序列中每个音频帧的优先级进行确定,其中,高优先级以q=1进行标记,低优先级以q=0进行标记。可以理解的是,这里将音频类型为非静音非噪声类型的音频帧的优先级都确定为高优先级,将噪声类型和静音类型的音频帧的优先级都确定为低优先级。根据步骤S603、从音频帧序列中选择待播放音频帧组成待播放音频帧序列,由图示可见,待播放音频帧为音频帧序列的高优先级音频帧,步骤S05B为根据待播放音频帧的优先级对视频帧的优先级进行同步,由图7所示,第一个待播放音频帧的优先级同步至第一个视频帧,第二个待播放音频帧的优先级同步至第三个视频帧,第三个待播放音频帧的优先级同步至第五个视频帧,同步的依据为上述对应关系的确定方式。其余第二个视频帧与第四个视频帧的优先级确定为低优先级q=0。
需要说明的是,本申请实施例只对上述两种实现方式进行说明,然而步骤S605的具体实现方式还包括其余方式,本申请实施例对此不做限定。示例性地、以音频帧序列中任意一个音频帧为主体,在视频帧序列中查找具有上述对应关系的视频帧并进行优先级同步;或者以一个视频帧为主体,在待播放音频帧序列中查找具有上述对应关系的视频帧并进行优先级同步。
S606、根据倍速参数和视频帧序列中的每个视频帧的优先级,从M个视频帧中选择待播放视频帧,并将待播放视频帧存储至第二缓冲区。
在一种可能实现方式中,步骤S606具体包括:根据倍速参数确定待处理视频帧的第二数量,待处理视频帧是待丢弃视频帧或待播放视频帧;将M个视频帧按每组L个视频帧进行分组,L是不大于M的正整数;根据第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从M个视频帧中选择待播放视频帧。
需要说明的是,在根据倍速参数确定待处理视频帧的第二数量之前,需要获取视频帧序列的总时长。视频帧序列的总时长可以为一个GOP的总时长,一个GOP组中可以包含多个视频帧。由于解码显示的方式,其中的视频帧可分为I帧、P帧、B帧。I帧图像不依赖其它帧,可以独立解码,且其周期性出现在图像序列中的,出现频率已由编码器选择并标注。P帧利用了空间和时间上的相关性,采用前向时间预测,也即是说P帧需要根据排在它前面的帧才能解码出图像。B帧采用双向时间预测,可以大大提高压缩倍数,但需要根据排在它前面或后面的I/P帧才能解码出图像。由此可见,为了正常显示视频帧的图像,需要首先显示I帧的图像,并且不可以将I帧作为待丢弃视频帧进行丢弃。因此,可将M个视频帧按每组L个视频帧进行分组,每组的第一个视频帧为已标注的I帧,以便在后续进行视频帧丢弃时,即使I帧的优先级较低,依旧对其进行保留。需要说明的是,当视频帧序列是一个GOP组时,此时M=L,即只有1个分组。
示例性地,针对一个总时长为1000ms的视频帧序列(针对每个视频帧的播放时长为30ms,约略33个视频帧),对其进行2倍速快进播放,则待丢弃视频帧的总时长可由1000ms-1000ms/2=500ms得到。进一步地,待丢弃视频帧的数量为500ms/30ms≈17个。需要说明的是,在确定待丢弃视频帧数量时,人眼对于一帧视频的捕捉能力较音频较不敏感,因此若有余数,则该数量进行进位处理。在确定待丢弃视频帧的数量为17个后,需要先对视频帧序列进行分组。按照15个视频帧一组,则上述33个视频帧中,第1个视频帧、第16个视频帧与第31个视频帧为I帧。在除第1个视频帧、第16个视频帧与第31个视频帧之外的30个视频帧中选择优先级更低的视频帧进行丢弃,则剩余视频帧为待播放视频帧。需要说明的是,选择丢弃的视频帧时,按照优先级4~1的顺序进行选择,也即是说先选择优先级为1的视频帧、若数量不够再选择优先级为2、3的视频帧。由此可见,经过该处理后的剩余视频帧均为与包括有效的音频类型的音频帧具有关联关系(由优先级体现)的视频帧或者I帧,也即是待播放视频帧。因此视频在倍速处理后不会丢失重要信息,且能正常显示。
由此可见,针对图7所示的示例,经过步骤S606处理后,待播放视频帧为视频帧序列的第一个视频帧、第三个视频帧、第五个视频帧等。
需要说明的是步骤S605和步骤S606是上述步骤S405的另一种实现方式,该方式相较于上述第一种方式,引入第一缓冲区用于存储确定好优先级的视频帧,以及引入第二缓冲区用于存储选择的待播放视频帧,将“查找视频帧”的步骤和“将查找出的视频帧作为待播放视频帧”进行解耦,降低功能模块之间的耦合性,以及有利于在选择待播放视频帧错误时对其进行追溯,提高了方法的可靠性。此外该方式在选择待播放视频帧时依据倍速参数,可对待播放视频帧的数量进行更为准确的限制。
S607、播放待播放音频帧和待播放视频帧。
其中,待播放音频帧和待播放视频帧的数量均是多个,待播放音频帧和待播放视频帧均携带起始时间戳。
在一种可能实现方式中,步骤S607包括:从多个上述待播放音频帧中确定用于当前轮询的目标待播放音频帧;若目标待播放音频帧的起始时间戳不小于起始待播放视频帧的起始时间戳,则播放目标待播放音频帧和起始待播放视频帧;起始待播放视频帧是多个待播放视频帧中未播放且起始时间戳最小的待播放视频帧;若目标待播放音频帧的起始时间戳小于起始待播放视频帧的起始时间戳,则播放目标待播放音频帧;当每个待播放音频帧均被确定为目标待播放音频帧时,停止轮询。
其中,该方式以待播放音频帧为参考时钟,待播放音频帧独立播放,待播放视频帧进行时间同步后播放。目标待播放音频帧为当前正在播放的一个音频帧。示例性地,以图7中的待播放音、视频帧序列为例。刚播放时,目标音频帧为ap=0/q=1的音频帧,该音频帧正常播放。起始待播放视频帧为vp=0/q=1的视频帧,该音频帧的起始时间戳不小于该视频帧,则播放该视频帧。在播放完ap=0/q=1的音频帧后,目标音频帧为ap=46/q=1的音频帧,当vp=0/q=1的视频帧播放完毕,且该音频帧播放14ms后(60-46ms)后,起始待播放视频帧为vp=60/q=1的视频帧,由于该音频的起始时间戳小于该起始待播放视频帧的时间戳,则不播放起始待播放视频帧直至目标待播放音频帧切换至下一个待播放音频帧。按此规则进行轮询,直至所有待播放视频帧与待播放音频帧均加入播放队列并在对应的输出设备渲染播放完毕。
需要说明的是,本申请实施例只对上述一种实现方式进行说明,然而步骤S607的具体实现方式还包括其余方式,本申请实施例对此不做限定。示例性地、还可在播放待播放音频帧和待播放视频帧以待播放视频帧为参考时钟或者以外界系统时钟为参考时钟。需要说明的是,以待播放音频帧为参考时钟时,音频帧是独立正常播放的,不需要进行等待,这使得对音频比视频更敏感的用户具有更高的体验。
在图6所描述的实施例中,通过将待播放音频帧(较高优先级音频帧)和/或较低优先级音频帧的优先级同步至视频帧,以便在倍速播放时,播放的音频帧和视频帧优先级较高(具有有效能量);此外,在播放时,通过确定一个参考时钟对待播放的音频帧和视频帧进行时间同步,可以避免渲染过程中由于各种干扰延迟造成的音视频逐渐不同步的现象,提高倍速播放的效果。
参见图8,是本申请实施例提供的一种音视频倍速播放装置的示意图。该音视频倍速播放装置包括:获取模块801、处理模块802、播放模块803。其中:
获取模块801,用于获取音频帧序列,音频帧序列包括N个音频帧,N为正整数;
处理模块802,用于根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级;
处理模块802,还用于根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧;
获取模块801,还用于获取与音频帧序列对应的视频帧序列,视频帧序列包括M个视频帧,M为正整数;
处理模块802,还用于根据音频帧序列从M个视频帧中选择待播放视频帧;
播放模块803,用于播放待播放音频帧和待播放视频帧。
在一种可能实现方式中,处理模块802在用于根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧时,具体包括:
获取模块801,用于获取音频帧序列的总时长;
处理模块802,用于根据音频帧序列的总时长和倍速参数确定待处理音频帧的总时长,待处理音频帧是待丢弃音频帧或待播放音频帧;
处理模块802,还用于根据待处理音频帧的总时长和音频帧序列中任一音频帧的时长,确定待处理音频帧的第一数量;
处理模块802,还用于根据第一数量以及每个音频帧的优先级,从N个音频帧中选择待播放音频帧。
在一种可能实现方式中,当待处理音频帧是待丢弃音频帧,处理模块802,用于根据第一数量以及每个音频帧的优先级,从N个音频帧中选择待播放音频帧时,具体包括:
根据第一数量,按照优先级从低到高的顺序从N个音频帧中选择第一数量个待丢弃音频帧;
将N个音频帧中除第一数量个待丢弃音频帧以外的音频帧作为待播放音频帧。
在一种可能实现方式中,上述音频类型包括优先级由低至高排序的静音类型、噪声类型、非静音非噪声类型。
在一种可能实现方式中,视频帧序列存储于第一缓冲区,处理模块802,在用于根据音频帧序列从M个视频帧中选择待播放视频帧时,具体包括:
将N个音频帧的优先级向M个视频帧同步,得到视频帧序列中每个视频帧的优先级,每个视频帧的优先级存储于第一缓冲区;
根据视频帧序列中的每个视频帧的优先级和倍速参数,从M个视频帧中选择待播放视频帧,并将待播放视频帧存储至第二缓冲区。
在一种可能实现方式中,待播放音频帧数量为K,K为不大于M的正整数;处理模块802,在用于将N个音频帧的优先级向M个视频帧同步,得到视频帧序列中每个视频帧的优先级时,具体包括:
在N个音频帧中,分别查找与视频帧序列中每个视频帧具有对应关系的音频帧,将音频帧的优先级同步至具有对应关系的视频帧;或者,
在M个视频帧中,分别查找与待播放音频帧具有对应关系的视频帧,将待播放音频帧的优先级同步至具有对应关系的视频帧,将未同步优先级的M-K个视频帧的优先级确定为最低优先级。
在一种可能实现方式中,处理模块802,在用于根据视频帧序列中的每个视频帧的优先级和倍速参数,从M个视频帧中选择待播放视频帧时,具体包括:
根据倍速参数确定待处理视频帧的第二数量,待处理视频帧是待丢弃视频帧或待播放视频帧;
将M个视频帧按每组L个视频帧进行分组,L是不大于M的正整数;
根据第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从M个视频帧中选择待播放视频帧。
在一种可能实现方式中,当待处理视频帧是待丢弃视频帧,处理模块802,在用于根据第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从M个视频帧中选择待播放视频帧时,具体包括:
根据第二数量,按照优先级从低到高的顺序从每一个分组内的第2至第L个视频帧中选择第二数量个待丢弃视频帧;
将M个视频帧中除第二数量个待丢弃视频帧以外的视频帧作为待播放视频帧。
在一种可能实现方式中,待播放音频帧和视频帧均携带起始时间戳,处理模块802,在根据待播放音频帧从M个视频帧中选择待播放视频帧时,具体包括:
在M个视频帧中查找与待播放音频帧具有对应关系的视频帧;具有对应关系的视频帧和待播放音频帧之间的起始时间戳差值是待播放音频帧分别与M个视频帧之间的M个起始时间戳差值中的最小差值;
将查找到的视频帧作为待播放视频帧。
需要说明的是,本申请实施例的音视频倍速播放装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,在此不作赘述。
参见图9,是本申请实施例提供的一种电子设备的示意图。该电子设备可以包括:处理器901、存储装置902以及网络接口903。上述处理器901、存储装置902以及网络接口903之间可以进行数据交互。
上述存储装置902可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储装置902也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;上述存储装置902还可以包括上述种类的存储器的组合。
上述处理器901可以是中央处理器(central processing unit,CPU)。在一个实施例中,上述处理器901还可以是图形处理器(Graphics Processing Unit,GPU)。上述处理器901也可以是由CPU和GPU的组合。在一个实施例中,上述存储装置902用于存储程序指令,上述处理器901可以调用上述程序指令,执行如下操作:
获取音频帧序列,音频帧序列包括N个音频帧,N为正整数;
根据音频帧序列中每个音频帧的音频类型,分别确定音频帧序列中每个音频帧的优先级;
根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧;
获取与音频帧序列对应的视频帧序列,视频帧序列包括M个视频帧,M为正整数;
根据音频帧序列从M个视频帧中选择待播放视频帧;
播放待播放音频帧和待播放视频帧。
在一种可能实现方式中,处理器901在用于根据倍速参数和音频帧序列中每个音频帧的优先级,从N个音频帧中选择待播放音频帧时,具体包括:
获取音频帧序列的总时长;
根据音频帧序列的总时长和倍速参数确定待处理音频帧的总时长,待处理音频帧是待丢弃音频帧或待播放音频帧;
根据待处理音频帧的总时长和音频帧序列中任一音频帧的时长,确定待处理音频帧的第一数量;
根据第一数量以及每个音频帧的优先级,从N个音频帧中选择待播放音频帧。
在一种可能实现方式中,当待处理音频帧是待丢弃音频帧,处理器901,用于根据第一数量以及每个音频帧的优先级,从N个音频帧中选择待播放音频帧时,具体包括:
根据第一数量,按照优先级从低到高的顺序从N个音频帧中选择第一数量个待丢弃音频帧;
将N个音频帧中除第一数量个待丢弃音频帧以外的音频帧作为待播放音频帧。
在一种可能实现方式中,上述音频类型包括优先级由低至高排序的静音类型、噪声类型、非静音非噪声类型。
在一种可能实现方式中,视频帧序列存储于第一缓冲区,处理器901,在用于根据音频帧序列从M个视频帧中选择待播放视频帧时,具体包括:
将N个音频帧的优先级向M个视频帧同步,得到视频帧序列中每个视频帧的优先级,每个视频帧的优先级存储于第一缓冲区;
根据视频帧序列中的每个视频帧的优先级和倍速参数,从M个视频帧中选择待播放视频帧,并将待播放视频帧存储至第二缓冲区。
在一种可能实现方式中,待播放音频帧数量为K,K为不大于M的正整数;处理器901,在用于将N个音频帧的优先级向M个视频帧同步,得到视频帧序列中每个视频帧的优先级时,具体包括:
在N个音频帧中,分别查找与视频帧序列中每个视频帧具有对应关系的音频帧,将音频帧的优先级同步至具有对应关系的视频帧;或者,
在M个视频帧中,分别查找与待播放音频帧具有对应关系的视频帧,将待播放音频帧的优先级同步至具有对应关系的视频帧,将未同步优先级的M-K个视频帧的优先级确定为最低优先级。
在一种可能实现方式中,处理器901,在用于根据视频帧序列中的每个视频帧的优先级和倍速参数,从M个视频帧中选择待播放视频帧时,具体包括:
根据倍速参数确定待处理视频帧的第二数量,待处理视频帧是待丢弃视频帧或待播放视频帧;
将M个视频帧按每组L个视频帧进行分组,L是不大于M的正整数;
根据第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从M个视频帧中选择待播放视频帧。
在一种可能实现方式中,当待处理视频帧是待丢弃视频帧,处理器901,在用于根据第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从M个视频帧中选择待播放视频帧时,具体包括:
根据第二数量,按照优先级从低到高的顺序从每一个分组内的第2至第L个视频帧中选择第二数量个待丢弃视频帧;
将M个视频帧中除第二数量个待丢弃视频帧以外的视频帧作为待播放视频帧。
在一种可能实现方式中,待播放音频帧和视频帧均携带起始时间戳,处理器901,在根据待播放音频帧从M个视频帧中选择待播放视频帧时,具体包括:
在M个视频帧中查找与待播放音频帧具有对应关系的视频帧;具有对应关系的视频帧和待播放音频帧之间的起始时间戳差值是待播放音频帧分别与M个视频帧之间的M个起始时间戳差值中的最小差值;
将查找到的视频帧作为待播放视频帧。
具体实现中,本申请实施例中所描述的处理器901、存储装置902以及网络接口903可执行本申请实施例图4、图5、图6、图7提供的音视频倍速播放方法的相关实施例中所描述的实现方式,也可执行本申请实施例图8提供的音视频倍速播放装置的相关实施例中所描述的实现方式,在此不再赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的音视频倍速播放装置所执行的计算机程序,且该计算机程序包括程序指令,当处理器执行上述程序指令时,能够执行上述图4、图5、图6、图7所对应实施例中的方法,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可以被部署在一个计算机设备上,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链系统。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备可以执行上述图5、图6、图7所对应实施例中的方法,因此,在此不再进行赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请的部分实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种音视频倍速播放方法,其特征在于,所述方法包括:
获取音频帧序列,所述音频帧序列包括N个音频帧,N为正整数;
根据所述音频帧序列中每个音频帧的音频类型,分别确定所述音频帧序列中每个音频帧的优先级;
根据倍速参数和所述音频帧序列中每个音频帧的优先级,从所述N个音频帧中选择待播放音频帧;
获取与所述音频帧序列对应的视频帧序列,所述视频帧序列包括M个视频帧,M为正整数;
将所述N个音频帧的优先级向所述M个视频帧同步,得到所述视频帧序列中每个视频帧的优先级;
根据所述倍速参数确定待处理视频帧的第二数量,所述待处理视频帧是待丢弃视频帧或待播放视频帧;
将所述M个视频帧按每组L个视频帧进行分组,L是不大于M的正整数;
根据所述第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从所述M个视频帧中选择待播放视频帧;
播放所述待播放音频帧和所述待播放视频帧。
2.根据权利要求1所述的方法,其特征在于,所述根据倍速参数和所述音频帧序列中每个音频帧的优先级,从所述N个音频帧中选择待播放音频帧,包括:
获取所述音频帧序列的总时长;
根据所述音频帧序列的总时长和所述倍速参数确定待处理音频帧的总时长;所述待处理音频帧是待丢弃音频帧或待播放音频帧;
根据所述待处理音频帧的总时长和所述音频帧序列中任一音频帧的时长,确定所述待处理音频帧的第一数量;
根据所述第一数量以及每个音频帧的优先级,从所述N个音频帧中选择所述待播放音频帧。
3.根据权利要求2所述的方法,其特征在于,当待处理音频帧是待丢弃音频帧时;
所述根据所述第一数量以及每个音频帧的优先级,从所述N个音频帧中选择所述待播放音频帧,包括:
根据所述第一数量,按照优先级从低到高的顺序从所述N个音频帧中选择所述第一数量个待丢弃音频帧;
将所述N个音频帧中除所述第一数量个待丢弃音频帧以外的音频帧作为所述待播放音频帧。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述音频类型包括优先级由低至高排序的静音类型、噪声类型、非静音非噪声类型。
5.根据权利要求1所述的方法,其特征在于,所述视频帧序列存储于第一缓冲区,所述每个视频帧的优先级存储于第一缓冲区,所述待播放视频帧存储于第二缓冲区。
6.根据权利要求5所述的方法,其特征在于,所述待播放音频帧数量为K,K为不大于M的正整数;
所述将所述N个音频帧的优先级向所述M个视频帧同步,得到所述视频帧序列中每个视频帧的优先级,包括:
在所述N个音频帧中,分别查找与所述视频帧序列中每个视频帧具有对应关系的音频帧,将所述音频帧的优先级同步至具有对应关系的视频帧;或者,
在所述M个视频帧中,分别查找与所述待播放音频帧具有对应关系的视频帧,将所述待播放音频帧的优先级同步至具有对应关系的视频帧,将未同步优先级的M-K个视频帧的优先级确定为最低优先级。
7.根据权利要求1所述的方法,其特征在于,当待处理视频帧是待丢弃视频帧时;
所述根据所述第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从所述M个视频帧中选择待播放视频帧,包括:
根据所述第二数量,按照优先级从低到高的顺序从每一个分组内的第2至第L个视频帧中选择所述第二数量个待丢弃视频帧;
将所述M个视频帧中除所述第二数量个待丢弃视频帧以外的视频帧作为所述待播放视频帧。
8.根据权利要求1所述的方法,其特征在于,所述待播放音频帧和视频帧均携带起始时间戳;
根据所述待播放音频帧从所述M个视频帧中选择待播放视频帧,包括:
在所述M个视频帧中查找与所述待播放音频帧具有对应关系的视频帧;具有对应关系的视频帧和所述待播放音频帧之间的起始时间戳差值是所述待播放音频帧分别与所述M个视频帧之间的M个起始时间戳差值中的最小差值;
将查找到的视频帧作为所述待播放视频帧。
9.一种音视频倍速播放装置,其特征在于,所述音视频倍速播放装置包括:
获取模块,用于获取音频帧序列,所述音频帧序列包括N个音频帧,N为正整数;
处理模块,用于根据所述音频帧序列中每个音频帧的音频类型,分别确定所述音频帧序列中每个音频帧的优先级;
所述处理模块,还用于根据倍速参数和所述音频帧序列中每个音频帧的优先级,从所述N个音频帧中选择待播放音频帧;
所述获取模块,还用于获取与所述音频帧序列对应的视频帧序列,所述视频帧序列包括M个视频帧,M为正整数;
所述处理模块,还用于根据所述音频帧序列从所述M个视频帧中选择待播放视频帧;
所述处理模块,在根据所述音频帧序列从所述M个视频帧中选择待播放视频帧时,具体用于:将所述N个音频帧的优先级向所述M个视频帧同步,得到所述视频帧序列中每个视频帧的优先级;根据所述倍速参数确定待处理视频帧的第二数量,所述待处理视频帧是待丢弃视频帧或待播放视频帧;将所述M个视频帧按每组L个视频帧进行分组,L是不大于M的正整数;根据所述第二数量、每个视频帧的优先级以及每个视频帧在分组内的位置,从所述M个视频帧中选择待播放视频帧;
播放模块,用于播放所述待播放音频帧和所述待播放视频帧。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,用于执行如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111364863.3A CN114339443B (zh) | 2021-11-17 | 2021-11-17 | 一种音视频倍速播放方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111364863.3A CN114339443B (zh) | 2021-11-17 | 2021-11-17 | 一种音视频倍速播放方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114339443A CN114339443A (zh) | 2022-04-12 |
CN114339443B true CN114339443B (zh) | 2024-03-19 |
Family
ID=81046731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111364863.3A Active CN114339443B (zh) | 2021-11-17 | 2021-11-17 | 一种音视频倍速播放方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114339443B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114979798B (zh) * | 2022-04-21 | 2024-03-22 | 维沃移动通信有限公司 | 播放速度控制方法和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106723A (zh) * | 2007-07-10 | 2008-01-16 | 中国传媒大学 | 一种快速播放多媒体信息的系统和方法 |
CN104394426A (zh) * | 2014-12-10 | 2015-03-04 | 福建星网锐捷网络有限公司 | 流媒体倍速播放方法和装置 |
CN105847857A (zh) * | 2016-03-07 | 2016-08-10 | 乐视致新电子科技(天津)有限公司 | 倍速播放视频时处理音频的方法及装置 |
CN107801092A (zh) * | 2017-09-15 | 2018-03-13 | 青岛海信移动通信技术股份有限公司 | 一种视频倍速播放方法和装置 |
CN112423019A (zh) * | 2020-11-17 | 2021-02-26 | 北京达佳互联信息技术有限公司 | 调整音频播放速度的方法、装置、电子设备及存储介质 |
CN113643728A (zh) * | 2021-08-12 | 2021-11-12 | 荣耀终端有限公司 | 一种音频录制方法、电子设备、介质及程序产品 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10834296B2 (en) * | 2018-09-12 | 2020-11-10 | Roku, Inc. | Dynamically adjusting video to improve synchronization with audio |
US11102523B2 (en) * | 2019-03-19 | 2021-08-24 | Rovi Guides, Inc. | Systems and methods for selective audio segment compression for accelerated playback of media assets by service providers |
-
2021
- 2021-11-17 CN CN202111364863.3A patent/CN114339443B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106723A (zh) * | 2007-07-10 | 2008-01-16 | 中国传媒大学 | 一种快速播放多媒体信息的系统和方法 |
CN104394426A (zh) * | 2014-12-10 | 2015-03-04 | 福建星网锐捷网络有限公司 | 流媒体倍速播放方法和装置 |
CN105847857A (zh) * | 2016-03-07 | 2016-08-10 | 乐视致新电子科技(天津)有限公司 | 倍速播放视频时处理音频的方法及装置 |
CN107801092A (zh) * | 2017-09-15 | 2018-03-13 | 青岛海信移动通信技术股份有限公司 | 一种视频倍速播放方法和装置 |
CN112423019A (zh) * | 2020-11-17 | 2021-02-26 | 北京达佳互联信息技术有限公司 | 调整音频播放速度的方法、装置、电子设备及存储介质 |
CN113643728A (zh) * | 2021-08-12 | 2021-11-12 | 荣耀终端有限公司 | 一种音频录制方法、电子设备、介质及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN114339443A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112400325B (zh) | 数据驱动的音频增强 | |
JP5173337B2 (ja) | 要約コンテンツ生成装置およびコンピュータプログラム | |
US8582804B2 (en) | Method of facial image reproduction and related device | |
JP5765940B2 (ja) | 画像を再生するための方法及び装置 | |
US20100122277A1 (en) | device and a method for playing audio-video content | |
CN106488311B (zh) | 音效调整方法及用户终端 | |
CN109618223B (zh) | 一种声音替换方法 | |
CN105099795A (zh) | 抖动缓冲器水平估计 | |
CN114339443B (zh) | 一种音视频倍速播放方法及装置 | |
CN101383961B (zh) | 内容再现设备、内容再现方法以及内容再现系统 | |
CN113643728A (zh) | 一种音频录制方法、电子设备、介质及程序产品 | |
US8391669B2 (en) | Video processing apparatus and video processing method | |
US11483535B2 (en) | Synchronizing secondary audiovisual content based on frame transitions in streaming content | |
CN112954426B (zh) | 视频播放方法、电子设备及存储介质 | |
CN107135407B (zh) | 一种钢琴视频教学中的同步方法及系统 | |
CN116962741A (zh) | 音画同步检测方法、装置、计算机设备和存储介质 | |
US11594113B2 (en) | Decoding device, decoding method, and program | |
JP2024505988A (ja) | シーン説明の再生制御 | |
CN115811589A (zh) | 红外线遥控影音装置及红外线遥控影音播放方法 | |
CN114360545A (zh) | 语音识别与音视频处理方法、设备、系统及存储介质 | |
US20070248170A1 (en) | Transmitting Apparatus, Receiving Apparatus, and Reproducing Apparatus | |
CN111837401B (zh) | 信息处理设备、信息处理方法 | |
WO2024052964A1 (ja) | 映像同期装置、映像同期方法及び映像同期プログラム | |
TWI296406B (zh) | ||
CN117880569A (zh) | 数据推流方法、视频播放方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |