@Override
protected Void doInBackground(Void... arg0) {
isPlaying = true;
int bufferSize = AudioTrack.getMinBufferSize(frequence, channelConfig, audioEncoding);
byte[] buffer = new byte[bufferSize/4];
try {
InputStream is = getResources().openRawResource(R.raw.temp);
//定义输入流,将音频写入到AudioTrack类中,实现播放
DataInputStream dis = new DataInputStream(new BufferedInputStream(is));
//实例AudioTrack
AudioTrack track = new AudioTrack(AudioManager.STREAM_MUSIC,
frequence,
channelConfig,
audioEncoding,
bufferSize,
AudioTrack.MODE_STREAM);
//开始播放
track.setStereoVolume(1.0f, 1.0f);
track.play();
while(isPlaying &a
java 层 用 AudioTrack 播放 pcm 格式的音频文件
最新推荐文章于 2025-06-03 18:41:54 发布
这段Java代码演示了如何在后台异步播放PCM格式的音频文件。通过获取最小缓冲区大小,创建DataInputStream从资源中读取音频,然后利用AudioTrack进行播放,并控制音量。在播放过程中,不断读取数据并写入AudioTrack,直至播放结束。


4377

被折叠的 条评论
为什么被折叠?



