Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo las aplicaciones de Media Player para Android como MXPlayer y MoboPlayer reproducen formatos de archivo no soportados como MKV?

Android no admite muchos formatos de archivos de medios (archivos como .mkv), de forma predeterminada. Pero los jugadores como MXPlayer y MoboPlayer le permiten reproducir estos archivos. ¿Cómo funcionan estas aplicaciones? ¿Hay tutoriales de programación o artículos que explican cómo se hace?

  • Cómo sincronizar datos entre dispositivos en Wi-Fi
  • Cómo configurar la actividad en modo de pantalla completa en Android?
  • Anuncios personalizados en admob android studio basado en palabras clave
  • Acceso a @android: id / list ListView desde el código
  • Android: NavigationDrawer y ActionBarCompat
  • Cómo obtener datos de usuario después de iniciar sesión con LinkedIn
  • La selección de WebView hace que el teclado virtual se oculte temporalmente y luego regrese
  • Adición de filas de tabla dinámicamente en Android
  • Cómo manejar las excepciones MonoDroid sin capturar globalmente y evitar que la aplicación se bloquee
  • ¿Cómo puedo tener una sombra en mi ActionBar (ActionBarSherlock)?
  • Viewpager no se muestra dentro de la fila RecyclerView
  • Prueba de intención Espresso fallando
  • One Solution collect form web for “¿Cómo las aplicaciones de Media Player para Android como MXPlayer y MoboPlayer reproducen formatos de archivo no soportados como MKV?”

    Android no admite todos los formatos de medios de forma predeterminada. Por lo tanto, para admitir un formato no compatible, las aplicaciones como MoboPlayer realizan tareas estándar de reproductor de medios por sí mismos utilizando una combinación de Java y código nativo a través de JNI.

    Para entender más, veamos qué hace un reproductor multimedia para reproducir un archivo multimedia y cómo éstos son realizados por MoboPlayer como aplicaciones en Android.

    Typical tasks of a Media Player

    Un jugador necesita realizar las siguientes tareas: (a) Demuele el formato de archivo y extraiga el video / audio (b) Decodifique el video y el audio (c) Visualice el video y reproduzca el audio. Consideremos cómo estas tres áreas se pueden manejar en caso de MoboPlayer como jugador.

    File format Demux

    Por defecto, Android no admite todos los contenedores de formato de archivo. Por ejemplo, ASF (formato de archivo de archivos WMV) no es compatible. Por lo tanto un jugador necesita tener su propio demuxer para hacer el trabajo. Libavformat (utilizado por FFMPEG) es una librería de demux de código abierto.

    Video/Audio decode

    Libavcodec (utilizado por FFMPEG) es una biblioteca de decodificador de código abierto líder que decodifica el flujo demuxed y produce marcos de salida sin comprimir. Por lo tanto, es utilizado por jugadores como MoboPlayer.

    Video display

    Hay dos opciones para mostrar un video. Los jugadores utilizan tampones SurfaceView o buffers acelerados OpenGL. Android proporciona un modelo de objeto de superficie java (abstracción del objeto subyacente de despliegue de superficie) a un objeto nativo interno denominado NativeWindow , al que puede acceder el código nativo.

    ICS (Android 4.0) en adelante, Android proporciona acceso a los buffers acelerados OpenGL ( SurfaceTexure y TextureView ) también. Éstos se pueden utilizar para exhibir el vídeo también.

    Audio playout

    Los jugadores pueden interactuar directamente con el objeto AudioTrack proporcionado en el nivel Java para reproducir las muestras de audio descodificadas.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.