如何在Android中播放附加到(Voice over IP)语音邮件文件的.wav文件?

时间:2015-11-26 16:13:48

标签: android android-mediaplayer voip soundpool audiotrack

需要在安装了Android 4.3.1(API 18)的设备中播放.wav文件(附加到语音邮件)。

我知道有一些类似'remote wav'的应用程序可以播放.wav文件但是我需要为我的应用程序制作这个内置功能。<​​/ p>

任何帮助都会非常感激;也许我正在寻找的是找出是否有一个库可以通过默认的android Mediaplayer类播放.wav甚至首先将其转换为任何其他格式然后播放...

感谢提前一段时间

我试过了:

public class MainActivity extends Activity {
    SoundPool mPlayer;
    int mSoundId ;
    Button play1;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mPlayer = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
        mSoundId = mPlayer.load(this, R.raw.s2, 1);
        Button play1 = (Button) this.findViewById(R.id.buttonPlay1);
        play1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                mPlayer.play(mSoundId, 0.99f, 0.99f, 0, 0, 1f);
            }
        });
    }
}

但是没有用,我得到了

11-26 16:31:14.019 7971-7971 W/SoundPool:   sample 1 not READY

我认为这种类型的wav(附加到语音邮件)是不同的类型,无法通过Mediaplayer / SoundPool处理。 见https://www.onsip.com/blog/free-way-to-listen-to-wav-files-on-your-android-device 我可以附加文件(sample.wav),以便您可以尝试。

编辑:------------------------ 正如菲利普桑德建议我尝试Soundpool sample not ready但没有一个回复的答案对我有效(没有声音输出)

编辑:-------------------------- 我应用AudioTrack方法解释了Using AudioTrack in Android to play a WAV file但结果是 一些静音噪音(白噪声只有几秒钟) 然后我应用了Android AudioTrack playing .wav file, getting only white noise,这就是为了修复静态噪音,但是没有运气,我已经没想完了,真的很感谢新的,这是一个示例wav文件的链接here

1 个答案:

答案 0 :(得分:0)

我认为你不需要一个库来播放.wav个文件,android.media.MediaPlayer可以像播放其他格式一样播放WAV文件。

MediaPlayer player = MediaPlayer.create(this, R.raw.file_name);
    /*Then to start the player*/
player.start();