2012-01-19 1 views
2

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

Soundpool кажется, чтобы остановить воспроизведение .ogg или .mp3 примерно через 6 секунд MediaPlayer не имеет возможность изменять скорость (скорость) музыки

То, что я хотел бы сделать, это позволить пользователь может изменить скорость фоновой музыки во время воспроизведения. Казалось бы, SoundPool может это сделать, но его сложно сказать, поскольку он воспроизводится всего несколько секунд.

Любые предложения по тому, как это сделать?

ответ

1

Soundpool плохо с WAV файлами, с mp3 у меня не было проблем ...

public final int play (int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate) 

скорость поплавка - значение 0.5 означает, что воспроизведение на половинной скорости, может быть 0,5-2 .... Я думаю, что вы должны использовать SoundPool ... Что касается меня, я ценю Mediaplayer ...

+0

Знаете ли вы, почему файл может перестать играть через 5-8 секунд? Я пробовал файлы mp3 и .ogg. – ndgreen

+0

Итак, я понял решение. Можно использовать SoundPool, пока музыкальный клип довольно короткий (около 7 секунд) и его петли. В этот момент скорость песни может быть изменена. Я до сих пор не знаю, как это сделать для более продолжительной музыки, но это решение, по крайней мере, будет работать для небольших звуковых петель. – ndgreen

+0

да, Soundpool создан для коротких эффектов в играх ... В моем последнем приложении я использую один медиаплеер для всех mp3, они втягиваются с release() и stop() ... музыка mp3 играет в течение 20-30 секунд ... Может быть, ваш mp3 слишком высок по качеству? Посмотрите на их свойства, как на учетные записи и посмотрите возможности пользовательского интерфейса Android. – timonvlad