Error de MediaPlayer de Android: Error de MediaPlayer (1, -2147483648) en Stream de Internet

Estoy intentando transmitir audio desde una URL. El código funciona bien con otras direcciones URL, pero en una de ellas falla en el método OnPrepared , devolviendo este código de error: (1, -2147483648). He leído a algunas personas diciendo que es debido a permisos, pero es un archivo remoto, por lo que no puedo establecer permisos. He probado la URL con otras aplicaciones como VLC e iTunes, y funciona bien. Mi código está aquí:

 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; } }); 

Si está probando en dispositivos anteriores a Android 3.1, es posible que no pueda reproducir AACP (como se ve en la página de información de sus flujos de flujo (AAC +).

Página de información de su flujo:
Introduzca aquí la descripción de la imagen

Con el fin de averiguar qué arroyos se pueden reproducir en su dispositivo de destino verifique los documentos oficiales: http://developer.android.com/reference/android/media/AudioManager.html

Si usted está buscando cómo manejar aacp checkout siguiente:
https://stackoverflow.com/a/8833346/200272

También estaba recibiendo el mismo error en Froyo & Gingerbread. En Androids más alto el mismo video jugó bien. Finalmente después de mucha investigación, intentó cambiar la URL de Https a Http Url & Bingo. Resolvió mi problema. Yo estaba utilizando el servidor Amazon S3 de modo que simplemente sustituir el "https" en url con "http" era suficiente.

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

PS: Para soportar versiones anteriores si está usando H.264, asegúrese de que los videos tengan la línea de base codificada.

Como puedo ver, este stream no es compatible con mediaPlayer. Android soporta AAC LC / LTP pero su flujo es aacp. Creo que esto puede ser la causa raíz de su problema.

  • Escucha un shoutcast con Android
  • Reproductor multimedia android error 100
  • Intent.ACTION_SEND WhatsApp
  • VLC RTSP transmisión en vivo a Android
  • Mejor manera de mostrar datos de flujo en la vista de lista de Android
  • Transmisión con Android MediaPlayer en SDK 8
  • Lectura de Android desde un flujo de entrada eficientemente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.