Android音视频-存储和解析音频文件
来源:互联网 发布:大数据 双月刊 编辑:程序博客网 时间:2024/06/07 22:43
对于PCM这个概念前面也看了一些,我现在最简单直接的认识就是它就是音频文件的原始数据,好像图形文件的内容的原始二进制数据一样。我们要把这些数据以文件来保存弄到文件里面去。根据现在Android提供的API记录下面两种方式。
AudioRecord和AudioTrack存储和解析音频文件
简介
在前面已经知道了使用这两个类来工作了,它们是一个偏向底层的类,操作最原始的音频数据PCM的。下面要引入一个概念wav文件,这是我们见过的一种音频文件,也是最基础简单的音频文件,因为它差不多等同于PCM,因为只是在文件上面添加了一些头,然后把PCM数据在数据块直接写入。
什么是WAV格式?
它是微软开发的一种文件格式,把文件分为两部分,头部记录音频的基本信息,数据部分记录原始的PCM音频数据。
WAV文件的数据压缩率小,所以会比较大,它就是纯粹来说差不多都是音频原始数据。
wav格式的音频文件不要额外的编码解码的,很方便我们来使用AudioRecord和AudioTrack来采集和播放保存为文件来处理的示例代码,这里唯一要做的就是如何操作为一个正常的wav文件,存储和解析那些头部信息,然后播放原始音频PCM数据。
小结
AudioRecord可以实现边录边播以及对音频实时处理功能这是MediaRecord和MediaPlayer无法做到的;可以通过代码对音频数据进行封装,可扩展性很大;输出的是PCM音频数据,如果只保存这些数据,是不能被其他播放器播放的,所以要写代码进行编码和压缩处理。
示例的demo实现难点在于对于wav文件的生成和解析头部。具体的解析文件介绍参考这里
MediaRecorder和MediaPlayer存储和解析音频文件
简介
MediaRecorder集成了录音编码,压缩等功能,MediaPlayer集成了解码播放功能,支持少量的音频格式文件,例如aac,amr,3gp。它使用起来比上面的要简单一些,毕竟是一个较上层一点的API。
小结
这两个API使用起来相比较为简单;但是它们不能处理边录边播;输出的音频格式不是很多,mp3就不能输出。
音频格式
音频格式有很多种,我们开始的时候看着这么多,头很懵。格式简介参考
demo代码参考
参考资料:
使用的示例代码参考这篇博客来的,写的很详细
- Android音视频-存储和解析音频文件
- Android播放视频和音频文件————MediaPlayer解析
- Android获取SD卡视频音频文件
- Android获取SD卡视频音频文件
- Android获取SD卡视频音频文件
- Android获取SD卡视频音频文件
- Leopard开机欢迎视频和音频文件[转]
- PowerPoint2013支持的视频和音频文件格式
- VLC支持的视频和音频文件扩展名
- android播放音频文件(MediaPlayer)和录音(MediaRecorder)--播放音频文件
- Android多媒体应用:视频存储和播放
- android 扫描手机内存和SD卡,获取手机的视频、音频文件。把获取不到的文件扫描出来
- 视频、音频文件的编码格式和封装格式简释
- 视频和音频文件手电筒可与UV-LED手电筒,电筒
- ubuntu下播放wav视频和mp3音频文件
- IOS合成多个视频和音频文件时闪退
- 视频、音频文件格式大全
- winform 播放视频 音频文件
- ELASTICSEARCH 写流程
- 什么是“人工智能”?
- 深入Android【七】 —— 资源文件
- python 模块
- Spring4+Hibernate4+SpringMvc Demo
- Android音视频-存储和解析音频文件
- springmvc的基础及restful风格
- Error running 'localhost': Address localhost:1099 is already in use
- Windows 下 Anaconda 的安装和简单使用
- GO语言并发编程
- c3p0三种配置方式
- 关于qt下输出汉字出现乱码的解决办法
- ListView实现CheckBox的单选与多选
- 链表问题---判断一个链表是否为回文结构