потоковое аудио в андроиде

Я использую этот код для потоковой передачи аудио. Но это не сработало.

    public class MediaPlayerAudio extends Activity implements OnClickListener,
       OnPreparedListener, OnErrorListener {

          MediaPlayer mp;

          public v

oid onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);
          Button bt = (Button)findViewById(R.id.play);
          bt.setOnClickListener(this);
      }



      @Override
         public void onPrepared(MediaPlayer mp) {
             Log.i("radio", "prepare finished");
             mp.start();

         }


        @Override
        public void onClick(View v) {
             try
              {
                  mp = new MediaPlayer();
                  mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
                  mp.setOnPreparedListener(this);
                  mp.setOnErrorListener(this);
                  mp.setDataSource("http://stream1.tanitweb.com/rtci");
                  mp.prepareAsync();
              }
              catch(Exception e)
              {
                  Log.e("radio", e.getMessage());
              }

        }



        @Override
        public boolean onError(MediaPlayer mp, int what, int extra) {
            // TODO Auto-generated method stub
            return false;
        }

      }}

При нажатии на кнопку у меня такая ошибка

05-15 09:31:14.360: ERROR/PlayerDriver(30): Command PLAYER_INIT completed with an error or info PVMFErrCorrupt
05-15 09:31:14.371: ERROR/MediaPlayer(330): error (1, -10)
05-15 09:31:14.371: ERROR/MediaPlayer(330): Error (1,-10)

person foffa    schedule 16.05.2011    source источник


Ответы (1)


Похоже, формат мультимедиа, который вы пытаетесь воспроизвести, не поддерживается Android. Вот таблица со всеми поддерживаемыми форматами и кажется, что ASF не в нем. Я попробовал ваш URL, и он указывает на rtci.asf

person Mojo Risin    schedule 16.05.2011
comment
Какой http-сервер вы используете? - person Mojo Risin; 16.05.2011
comment
У меня та же проблема, и после исследования я понял, что это связано с заголовками http. Вы устанавливаете длину контента всех параметров, тип контента и т. д. Попробуйте выполнить потоковую передачу с какого-либо другого http-сервера. - person Mojo Risin; 17.05.2011
comment
Так что проблема не в коде. Можете ли вы дать мне имя сервера, который вы использовали для решения моей проблемы? - person foffa; 17.05.2011
comment
попробуйте воспроизвести URL freedownloads.last.fm/download/182052320 / - person Mojo Risin; 17.05.2011
comment
Поставил этот мп 3 в сервак. Я запускаю код, но получаю ту же ошибку 05-15 09:31:14.360: ERROR/PlayerDriver(30): Команда PLAYER_INIT завершена с ошибкой или информацией PVMFErrCorrupt 05-15 09:31:14.371: ERROR/MediaPlayer(330) : ошибка (1, -10) 05-15 09:31:14.371: ОШИБКА/MediaPlayer(330): ошибка (1,-10) - person foffa; 17.05.2011
comment
Не могли бы вы попробовать это с реальным устройством? Иногда эмуляторы выдают ошибки, хотя на устройстве все работает нормально. - person Antimony; 31.10.2012