gpt4 book ai didi

android - audioTrack play() 只播放一次

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:32:38 26 4
gpt4 key购买 nike

第一次使用Android的AudioTrack。我创建了一个类 AndroidAudioDevice。我用这个构造函数初始化它:

 public AndroidAudioDevice( ){  // constructor
Log.i("Audio", "constructor");
int minSize =AudioTrack.getMinBufferSize( SAMPLE_RATE, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT );
track = new AudioTrack( AudioManager.STREAM_MUSIC, SAMPLE_RATE,
AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT,
minSize, AudioTrack.MODE_STATIC);

createSample();
track.write( buffer, 0, buffer.length );
};

(SAMPLE_RATE 设置为 44100)。

我的主要 Activity 只有一个按钮,调用

public void playSound(){
track.play();
Log.i("Audio", "playState: " + track.getPlayState());
};

this works find BUT ONLY ONCE! If I press the button again no sound anymore.

顺便说一句:Log.i 为播放状态显示“3”

知道为什么这只有效一次吗?提前致谢

最佳答案

状态 3 是 PLAYSTATE_PLAYING .我会尝试调用 stop()reloadStaticData在第二次调用 play 之前。

关于android - audioTrack play() 只播放一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6658384/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com