MediaPlayerNative: ошибка (1, -2147483648) при воспроизведении HTTP-прогрессивного потока MP3 - PullRequest
0 голосов
/ 21 ноября 2018

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

  • Я прочитал документацию MediaPlayer здесь .
  • Я также прочитал уже доступные решения здесь .
  • Я также искал в Google любые решения, но не нашел ни одного.

Вот мой код:

MainActivity:

    private Button pbutton;
    private MediaPlayer mediaPlayer;

    pbutton = findViewById(R.id.button_play);
    pbutton.setEnabled(false);

    mediaPlayer = new MediaPlayer();
    mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    try {
        mediaPlayer.setDataSource("http://streams.abidingradio.org:7800/1");
    } catch (IOException e) {
        e.printStackTrace();
    }
    mediaPlayer.prepareAsync();

    mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
            pbutton.setEnabled(true);
        }
    });

    pbutton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mediaPlayer.start();
        }
    });

Манифест:

<?xml version="1.0" encoding="utf-8"?>

<uses-permission android:name="android.permission.INTERNET"/>

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

Когда я запускаю этот код, MediaPlayer не готовится.И он выдает следующие ошибки: нажмите здесь для полного журнала основные ошибки:

failed to init data from source
MediaPlayerNative: error (1, -2147483648)
MediaPlayer: Error (1,-2147483648)

Я имел дело с этой проблемой в течение почти трех дней, но до сих пор ненашел решение.Я также могу заверить, что ссылка на аудиопоток работает отлично.

Любая помощь будет принята с благодарностью!

Спасибо.

1 Ответ

0 голосов
/ 21 ноября 2018

Причина в том, что MediaPlayer не поддерживает потоковый формат MPEGA.Взгляните на поддерживаемые аудиоформаты .

Просто используйте один из сторонних проигрывателей, совместимых с, например, IjkPlayer или ExoPlayer

...