我想确切地知道 AudioTrack API 中的 play() 和 write() 方法之间的区别。我在 Google 上搜索了这个,但没有找到答案。
最佳答案
这是一个基本问题,play() 方法用于静态模式,而 write() 方法用于流模式。需要明确的是,静态模式包含具有预定义大小的小块音频文件,音轨播放到指定大小并停止。
在流模式下,您使用 write() 方法。有两个写方法write(byte[], int, int)和write(short[], int, int),当数据从Java层传输到native层并排队等待播放时,它们是阻塞和返回的.流式传输模式在播放音频数据 block 时最有用,例如:由于要播放的声音的持续时间太大而无法放入内存
有关更多信息,请阅读此
http://developer.android.com/reference/android/media/AudioTrack.html
关于android - android AudioTrack play() 和 write() 方法之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18062896/