Как воспроизвести 32-разрядный файл с плавающей точкой WAV в Android 4.3.1 (WAV-файл, прикрепленный как голосовая почта в VOIP)?

Этот тип WAV-файла (32-битный моно с плавающей запятой 8000 Гц), который прикреплен к голосовой почте, имеет другой тип и не может обрабатываться Mediaplayer/SoundPool. Посмотрите на эту ссылку, здесь есть ссылка на аналогичный файл sample.wav, так что вы можете попробовать его сами, если хотите.(Это 32-разрядная версия wav 3225 float 11025hz mono)


моей первой попыткой было воспроизвести его с помощью mediaPlayer, но при этом выдается исключение NullPointerException: вот журнал cat:

 - 11-26 16:37:14.969 20287-20287 E/AndroidRuntime: FATAL EXCEPTION:main
 - 11-26 16:37:14.969 20287-20287 E/AndroidRuntime:
   java.lang.NullPointerException 
 - 11-26 16:37:14.969 20287-20287 E/AndroidRuntime: at   
   com.example.bastamib.wavplayer.MainActivity$2.onClick(MainActivity.java:38)

Затем я использовал SoundPool:

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

чинить

образец 1 не готов

Я попробовал образец Soundpool не готов, но ни один из ответивших ответов, включая выбранный ответ, не работал для меня (в основном нет звука)


Затем я перешел к решению AudioTrack: здесь объяснено Использование AudioTrack в Android для воспроизведения файла WAV

В результате появились статические шумы! совсем не интересно! pifff


чтобы исправить это, я применил Android AudioTrack, проигрывая файл.wav, получая только белый шум, но не повезло, применил все ответы там и все еще получал статические шумы.

и вот я застрял! любая помощь будет оценена.

примечание: я знаю, что есть некоторые приложения, такие как 'remote wav', которые могут воспроизводить файл.wav VOIP, однако мне нужно сделать эту встроенную функцию для моего приложения.

0 ответов

Другие вопросы по тегам