Проблема зацикливания звука на Android-приложении - PullRequest
2 голосов
/ 21 сентября 2011

Небольшая проблема представилась мне. Я пытаюсь воспроизводить звук, непрерывно повторяющийся в моем приложении для Android.

С MediaPlayer: MP3 воспроизводится нормально, но в конце есть пробел, которого нет в файле. Я читал, что это связано с декодером, и этот ogg должен работать. Пробовал использовать ogg, но все равно получаю пробел, которого точно нет в файле.

С классами SoundPool и ogg (используя интересный класс этого парня: http://www.droidnova.com/creating-sound-effects-in-android-part-1,570.html),

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

Что-то не так с медиаплеером и его возможностью зацикливать звук? Как насчет причудливого заикания саундпула?

Большое спасибо за любую помощь!

1 Ответ

0 голосов
/ 21 сентября 2011

Я использую следующий код для зацикливания soung (где звук с расширением .ogg), вместо использования звукового пула, давайте попробуем с Media Player. Это код, который я использовал для зацикливания аудио, его работа отлично подходит для меня, давайте попробуем,

MediaPlayer mediaPlayer;


setVolumeControlStream(AudioManager.STREAM_MUSIC);
mediaPlayer = new MediaPlayer();

try {
            AssetManager assetManager = getAssets();
            AssetFileDescriptor descriptor = assetManager.openFd("music.ogg");
            mediaPlayer.setDataSource(descriptor.getFileDescriptor(),
                    descriptor.getStartOffset(), descriptor.getLength());
            mediaPlayer.prepare();
            mediaPlayer.setLooping(true);
        } catch (IOException e) {
            textView.setText("Couldn't load music file, " + e.getMessage());
            mediaPlayer = null;
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...