Я изо всех сил пытаюсь заставить работать радио в прямом эфире на Android. Я использую класс MediaPlayer
и просто устанавливаю URL-адрес и играю в него. Он отлично работает по большей части, но через 5-30 минут неизбежно умирает. На телефонах 2.1 (точнее, на герое) я получаю этот вывод журнала
W/MediaPlayer( 7919): info/warning (1, 26)
I/MediaPlayer( 7919): Info (1,26)
I/MediaStreamService( 7919): mPlayer info code:1 extra:26
E/MediaPlayer( 7919): error (1, -11)
E/MediaPlayer( 7919): Error (1,-11)
Где MediaStreamService
— моя служба, содержащая MediaPlayer
, вывод поступает из OnInfoListener
На телефонах 2.2 я никогда не получаю обратный вызов OnInfoListener
, поток просто умирает. Но я вижу это в логарифме
E/HTTPStream( 1020): recv failed, errno = 11 (Try again)
E/HTTPDataSource( 1020): retrying connection failed
Кажется, работает безупречно на моем телефоне 1.6, несмотря на постоянный спам logcat
E/PlayerDriver( 82): Invalid percentage value <big growing number>
Мой вопрос: что означают коды ошибок (1, 26)? Что вызывает сбой моего медиаплеера? Проблема 2.1 вообще связана с проблемой 2.2? Спасибо, Натан
Изменить: я искал в исходном коде OnInfoListener
и нашел public static final int MEDIA_INFO_UNKNOWN = 1;
. Я не уверен, что именно это означает, и не могу найти, где хранятся эти дополнения. Любое понимание того, что означает неизвестная информация о СМИ? или то, что означает это число 26, было бы очень признательно.