- 博客(5)
- 资源 (3)
- 收藏
- 关注
原创 AudioTrack::setMarkerPosition函数的使用方法
AudioTrack::setMarkerPosition函数的使用方法这两天在调查一个问题,就是想知道一段音频是什么时候播放结束的。查了些资料,知道AudioTrack类中有一个setMarkerPosition函数。在构造AudioTrack对象的时候,传一个回调函数指针,然后再通过setMarkerPosition函数设置一个响应点,当播放到这一点时,回调函数就会被执
2012-04-26 21:08:20 3708 1
原创 用C++ AudioTrack播放超短文件
用C++ AudioTrack播放超短文件所谓的超短文件,就是特别短的文件。有多短?就是比min buffer还短。用过Android中AudioTrack的大虾都应该对min buffer不陌生。Java中可以通过调用函数getMinBufferSize获得。C++中可以通过调用getMinFrameCount函数,然后算的。超短文件播放有个什么问题呢
2012-04-26 21:07:27 3347 3
原创 Android 录音数据传输
今天来看看Android中的录音数据是怎么来的。从AudioRecord开始看吧。AudioRecord中可以取得录音数据的接口是:AudioRecord::read。首先调用函数obtainBuffer取得录音数据的地址。然后用memcpy将录音数据copy出来。看样子,数据来源是obtainBuffer函数了。来看看函数AudioReco
2012-04-13 17:55:24 7321 6
原创 Android音频数据传输
MediaPlayer那边就不看了,从AudioTrack开始研究。1、AudioTrack::write函数调用函数obtainBuffer获取到一块buffer,然后把传入的数据copy到获取的buffer中。2、AudioTrack::obtainBuffer函数该函数的主要功能就是对传入的audioBuffer进行赋值。看看audioBuffer的类型:
2012-04-11 22:32:14 8903
原创 MODE_STATIC模式AudioTrack的使用方法
使用MODE_STATIC模式的AudioTrack时,遇到了播放不正常的问题。使用比较短的文件,发现开始几次,声音都没出来,到最后一次,感觉是把前面几次积累的声音一次播放出来了。后来查了下资料,发现使用MODE_STATIC模式的AudioTrack的方法不对。正确使用的方法如下:... if (NULL == mAudioOut) {
2012-04-11 17:47:19 5675 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人