Попытка воспроизведения аудио на Nokia C3 приводит к: Не удалось получить данные мультимедиа
В настоящее время я работаю над проектом, который использует Manager.createPlayer(InputStream is, String mimeType) для создания аудиоплеера.
Аудио плеер отлично работает на эмуляторе. На Nokia C3 он может воспроизводить аудио / MPEG-трек после запуска приложения, но не удается, если была предпринята попытка воспроизвести тот же / другой звук снова. При предварительной выборке выдается сообщение "Не удалось получить данные мультимедиа".
При первом открытии проигрывателя он проходит через обычный жизненный цикл: реализовать, предварительно выбрать, запустить. После того, как трек закончен, он: остановлен, освобожден, закрыт. Проигрыватель даже установлен на ноль, прежде чем процесс будет повторен для другой звуковой дорожки.
Есть идеи?
Вот пример кода, используемого для создания плеера.
public static Player play(PlayerListener listener, InputStream is, String[] mimeTypes) {
Player player = null;
for (int i = 0; i < mimeTypes.length; i++) {
try {
player = Manager.createPlayer(is, mimeTypes[i]);
player.realize();
player.prefetch();
player.addPlayerListener(listener);
player.start();
Log.write("started - " + mimeTypes[i]);
break;
} catch (Exception e) {
Log.write("player fail (" + mimeTypes[i] + "): " + e.getMessage());
player = null;
} catch (Throwable e) {
Log.write("player fail (" + mimeTypes[i] + "): " + e.getMessage());
player = null;
}
}
return player;
}
1 ответ
Похоже, ответ таков: размер файла MP3, который я пытаюсь воспроизвести, слишком велик. Уменьшая размер, проблема решилась сама собой.
От 2 МБ до 150 КБ.
Если бы кто-нибудь мог пролить некоторый свет на то, почему это произошло, это было бы очень признательно.