[发明专利]一种音频竖线波形图的生成方法有效
申请号: | 201810163270.2 | 申请日: | 2018-02-27 |
公开(公告)号: | CN108399921B | 公开(公告)日: | 2021-09-24 |
发明(设计)人: | 郭艳杰 | 申请(专利权)人: | 北京酷我科技有限公司 |
主分类号: | G10L19/00 | 分类号: | G10L19/00;G10L19/16 |
代理公司: | 北京国标律师事务所 11753 | 代理人: | 姚克枫 |
地址: | 100080 北京市海淀区农大*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 音频 竖线 波形 生成 方法 | ||
1.一种音频竖线波形图的生成方法,其特征在于,包括如下步骤:
为一个音频文件创建AVAsset对象,
通过AVAsset对象读取音频文件中的音轨AudioTrack,
通过AVAsset对象读取音频文件中的ASBD数据结构,得到音频文件描述信息,
所述ASBD数据结构定义了一个音频流最普遍的特征:有多少声道,在什么格式下,比特率,
获取音频文件描述信息中记录的中的声道数Channel和采样率sampleRate,
将音频文件描述信息中记录的音频总时间转换为总帧数,得到总采样帧数,
将总采样帧数除以波形图宽度对应的像素的个数,得到每像素需要展现的帧数,
生成波形图中的竖线线条时,首先按波形图宽度对应的像素的个数建立同样数量的矩形区域Layer,然后按每像素一个Layer排列,最后对音轨AudioTrack中的音频数据进行格式化,设定矩形区域Layer的高度。
2.如权利要求1所述的音频竖线波形图的生成方法,其特征在于:通过AVAsset对象的AVAssetReader方法从原始数据里获取解码后的音频数据,
将音频数据通过AVAsset对象的ReaderTrackOutput方法形成音频流。
3.如权利要求2所述的音频竖线波形图的生成方法,其特征在于:音频流存入名称为NextSampleBuffer的数据缓冲中,
名称为NextSampleBuffer的数据缓冲包括以下属性:
缓冲长度bufferLength,
缓冲地址bufferAddress,
其中,通过计算将缓冲长度bufferLength转换为buffer帧数,按帧循环读取当前缓冲,
如果当前帧数小于每像素展现帧数,则当前像素音频数据加缓冲地址,且所述缓冲地址强制转换为Float数据进行累加,
如果当前帧数等于或大于每像素展现帧数,则视为读满了一个像素的数据。
4.如权利要求3所述的音频竖线波形图的生成方法,其特征在于:在当前帧数等于或大于每像素展现帧数时,计算总采样帧数/像素帧数得到像素音频均值,保存像素音频均值到音频数据,
在音频数据小于波形图宽时,重复读取下一像素数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京酷我科技有限公司,未经北京酷我科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810163270.2/1.html,转载请声明来源钻瓜专利网。