一、播放WAV有爆音的原因
AudioTrack播放wav有爆音有几种情况
第一种:仅仅开始播放时爆音
这里两种情况:
1、wav音频有问题,用工具查看一下久知道,或者使用Android版的酷我音乐播放一下,看看有没有爆音,如果有,那就是音频问题了,没有就是第二种情。
2、‘WAV都有一个文件头,这个文件头音频流的编码参数’,播放时如果把这个也当做音频字节来播放了就会有爆音。
第二种:其他段有爆音,比如中间,结束时
这个毋庸置疑,就是音频文件有问题。(也可以用酷我音乐播放试试)
二、什么是WAV和PCM?
1、什么是WAV
wav是一种无损的音频文件格式,WAV符合 PIFF(Resource Interchange File Format)规范。所有的WAV都有一个文件头,这个文件头音频流的编码参数。WAV对音频流的编码没有硬性规定,除了PCM之外,还有几乎所有支持ACM规范的编码都可以为WAV的音频流进行编码。
2、什么是PCM
PCM(Pulse Code Modulation----脉码调制录音)。所谓PCM录音就是将声音等模拟信号变成符号化的脉冲列,再予以记录。PCM信号是由[1]、[0]等符号构成的数字信号,而未经过任何编码和压缩处理。与模拟信号比,它不易受传送系统的杂波及失真的影响。动态范围宽,可得到音质相当好的影响效果。
简单来说:wav是一种无损的音频文件格式,pcm是没有压缩的编码方式。
PS:以上内容摘抄于《WAV和PCM的关系和区别》
三、根据自己项目需求而设定
我把播放有爆音的wav音频转成pcm格式,然后播放开始时就没有爆音了。
因此我这边可以断定,应该是我代码没有去处wav的头文件信息字节。
由于我项目可以使用pcm格式的,加上项目紧急(后续有空会去写),目前没有去写如果去除wav头文件信息字节的播放方法。
如果各位大佬有写过的,可给链接参考一下,谢谢
历史上的今天
暂无评论...
随机推荐
Android修改原生电话铃声
前言简单记录一下,修改Android原生默认的铃声。推荐看参考文章,这里只是个人随笔记录。正文隐藏内容!付费阅读后才能查看!¥1 ¥3多个隐藏块只需支付一次付费阅读参考文章《Android 设置铃声》《Android 设置来电铃声、通知铃声、闹钟铃声中的坑》
Ubuntu16.04搭建LAMP架构服务器笔记
这是在自己电脑上搭建的LAMP环境自己开发和练习使用,在这里总记录一下1、安装Apache2sudo apt-get install apache2PS:这里会生产服务器根目录/var/www/,我们可以改变到自己想要的目录下方法一:修改配置文件sudo vim /etc/apa...
自定义View和自定义属性
对于自定义属性,需要遵循以下几步,就可以实现:自定义一个IcoLayout(extends View )类编写values/attrs.xml,在其中编写styleable和item等标签元素在布局文件中IcoLayout使用自定义的属性(注意namespace)在IcoLayout的构造...
[摘]已知圆心,半径,角度,求圆上的任一点的坐标
前言原理很简单,大家初中都学过的,但,由于Java中的sin和cos传入的值是弧度,我一开始一直用角度,导致得不出对应的值。摘抄于此,方便自己查阅。好记性不如烂笔头正文PS:本文摘抄,只是文本继续一定编辑和整理。圆心坐标 :(x0, y0)半径 : r角度: a设圆上任何一点坐标...
毕淑敏:世上千寒,心中永暖
记得当年做医学生实习时,轮到去产科学接生。见那刚生下来的宝宝,一出母体,便放声大哭。倘在别处,听到有人痛嚎,众人必是关切不安,以示慰问。在产科接生室内,哭声便是捷报。若是不闻哭声,助产士便要心焦了。民间流传说,老式的接生婆如果听不到新生儿哭,会立马把孩子头朝下倒拎着,在屁股上猛砸几巴掌,娃儿惊哭出来...
getMimeTypeFromExtension记录
前言在Android 13的MediaProvider中有涉及到getMimeTypeFromExtension()的使用,主要是获取文件的MimeType属性。记录于此,方便自己差异。下面代码来自MediaProvider正文获取mimeType//获取文件后缀扩展String...