Intereting Posts
Android: макет по умолчанию для списка с заголовком и субтитрами Попытка вызвать метод интерфейса для ссылки на нулевой объект finishComposingText () Как обрабатывать OnBack Нажмите в Fragment Android Как разбирать RSS-канал с помощью XmlPullParser? Есть ли способ подключиться к устройству Bluetooth Low Energy под Android 5, отображая публичный статический адрес? Уведомления Android: есть цвета в маленькой иконке Почему так сложно установить стиль из кода в Android? View.OnSystemUiVisibilityChangeListener не работает в службе android. Почему AD не может находиться в верхней части экрана в андроидной активности Tabbed? Требуется создать ускоренную прокрутку с передним charecter для отображения на экране, когда пользователь перетаскивает список алфавита Читать данные из sdcard в android Google Street view + наклон устройства Неисправность Backstack активности при разрушении деятельности Создайте URI MediaStore для определенной папки Как сделать .jar из проекта Android Studio

Ошибка Android MediaPlayer: ошибка MediaPlayer (1, -2147483648) на потоке из Интернета

Я пытаюсь передать аудио из URL. Код отлично работает с другими URL-адресами, но в одном из них он не работает в методе OnPrepared , возвращая этот код ошибки: (1, -2147483648). Я читал некоторых людей, говорящих, что это из-за разрешений, но это удаленный файл, поэтому я не могу устанавливать разрешения. Я пробовал URL с другими приложениями, такими как VLC и iTunes, и он работает нормально. Мой код здесь:

 private void prepareradio() { player = new MediaPlayer(); player.setAudioStreamType(MODE_WORLD_READABLE); try { player.setDataSource(url); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } player.setOnErrorListener(new OnErrorListener(){ public boolean onError(MediaPlayer arg0, int arg1, int arg2) { Toast.makeText(getApplicationContext(),"An error happened while preparing radio",Toast.LENGTH_LONG).show(); prepareradio(); playe.setEnabled(true); hidenot(); return false; } }); 

Если вы тестируете устройства раньше, чем Android 3.1, возможно, вы не сможете воспроизвести AACP (как видно на информационной странице потоков потока (AAC +).

Информационная страница для вашего потока:
Введите описание изображения здесь

Чтобы узнать, какие потоки вы можете играть на целевом устройстве, проверьте официальные документы: http://developer.android.com/reference/android/media/AudioManager.html.

Если вы смотрите, как обращаться с aacp checkout следующим образом:
https://stackoverflow.com/a/8833346/200272

Я также получал ту же ошибку на Froyo & Gingerbread. В более высоких андроидах одно и то же видео играло хорошо. Наконец, после много исследований, попробовал изменить Https Url на Http Url & Bingo. Он разрешил мою проблему. Я использовал сервер амазонок S3, поэтому достаточно просто заменить «https» в URL-адресе «http».

  videoUrl= videoUrl.replaceFirst("https", "http"); 

PS: для поддержки более старых версий, если вы используете H.264, убедитесь, что видеоролики закодированы в базовой линии.

Как я вижу, этот поток не поддерживается mediaPlayer. Android поддерживает AAC LC / LTP, но ваш поток – это aacp. Я думаю, что это может быть основной причиной вашей проблемы.