Reproducción e integración Android
MediaCodec y fallos de superficie de vídeo
¿El vídeo empieza y después se congela, o PipePipe muestra un error? Abre el informe y busca MediaCodec. Si aparece, el problema probablemente viene del decodificador de vídeo del dispositivo, no de la conexión ni de la extracción de YouTube.
No cambies varios ajustes al azar. Busca en el informe el texto que coincide con una fila de la tabla y prueba solo la solución de esa fila.
En un teléfono, desliza la tabla horizontalmente para ver la primera prueba de la última columna.
| Evidencia del informe | Qué significa | Primera prueba |
|---|---|---|
video/av01 o un códec que empieza por av01 | El flujo seleccionado usa AV1. | Desactiva AV01 en Ajustes → Reproductor → Activar formatos avanzados, vuelve a abrir el vídeo y prueba VP9 o AVC. |
video/x-vnd.on2.vp9 | El flujo seleccionado usa VP9. | Prueba AVC o una resolución inferior. |
video/avc | El flujo seleccionado usa H.264/AVC. | Prueba una resolución inferior y después el ajuste MediaCodec correspondiente si su marcador aparece en la traza. |
format_supported=NO_EXCEEDS_CAPABILITIES | El flujo supera las capacidades que Android declaró para ese decodificador. | Selecciona una resolución inferior u otro códec. |
format_supported=YES seguido de MediaCodecVideoDecoderException | Android declaró compatibilidad, pero el decodificador falló durante la ejecución. | Cambia primero de códec; YES no garantiza una decodificación estable. |
The surface has been released o setOutputSurface | Android perdió o cambió la superficie de vídeo al configurar el decodificador. | Activa el ajuste de superficie indicado abajo. |
AsynchronousMediaCodecAdapter o AsynchronousMediaCodecBufferEnqueuer | El fallo pasó por la cola asíncrona de MediaCodec. | Prueba el ajuste de cola asíncrona indicado abajo. |
InvalidResponseCodeException: Response code: 403 | YouTube rechazó una petición multimedia antes de que llegara al decodificador. | Sigue Reproducción y extracción de YouTube; cambiar de códec no corrige este error. |
El vídeo se detiene al cabo de un rato con un error AV1
Si el informe contiene las tres líneas siguientes, estás en el lugar correcto. Es exactamente el caso de #2727:
video/av01, av01.0.08M.08
format_supported=YES
Decoder failed: c2.android.av1-dav1d.decoderEn pocas palabras, PipePipe eligió la versión AV1 1080p del vídeo. Android empezó a reproducirla con su decodificador por software c2.android.av1-dav1d.decoder, pero este se detuvo durante la reproducción. La solución más sencilla es pedirle a PipePipe que use VP9.
No te preocupes: desactivar AV1 no borra vídeos, suscripciones ni ajustes. Podrás seguir viendo los mismos vídeos; PipePipe solo evitará su versión AV1.
Desactivar AV1 paso a paso
- En la pantalla principal de PipePipe, busca el botón ☰ de la esquina superior izquierda y púlsalo. Las capturas muestran los nombres en inglés porque la aplicación utilizada para esta guía está configurada en inglés.

- Se abre el menú lateral. Pulsa Ajustes, al final de la lista.

- En la pantalla Ajustes, pulsa Reproductor o Player.

- Pulsa toda la fila Activar formatos avanzados. Es un botón aunque la fila no parezca un interruptor.

- Busca AV01. Una casilla roja marcada significa que AV1 está activado. Pulsa AV01 una vez para dejar su casilla vacía. Mantén VP9 marcado para la primera prueba.

- Comprueba que la casilla junto a AV01 esté vacía y pulsa OK. No pulses Cancelar o Cancel, porque descartaría el cambio.

- Sal del vídeo afectado con el botón Atrás hasta que su reproductor se cierre y después vuelve a abrir ese vídeo. No necesitas borrar la caché, eliminar datos ni reinstalar PipePipe.
Prueba otra vez con 1080p o 720p. Si el decodificador sigue fallando, vuelve a la misma lista, desmarca también VP9 y HEVC, deja AV01 desmarcado, pulsa OK y prueba AVC en 720p. Si el fallo continúa, adjunta el nuevo informe. Su códec y formato mostrarán si realmente cambió el decodificador afectado.
Por qué funciona
AV1 no está activado por defecto. Si lo activas, PipePipe prefiere actualmente AV1 a VP9, HEVC y AVC para la misma resolución. PipePipe también activa el fallback de decodificadores de Media3, pero solo prueba otro decodificador del mismo formato cuando falla la inicialización. No sustituye un flujo AV1 activo por VP9 o AVC después de un fallo durante la reproducción.
Usa un ajuste MediaCodec solo si coincide su marcador
En Ajustes → Avanzado → Ajustes ExoPlayer, prueba un solo ajuste pertinente cada vez:
- Desactivar cola asíncrona MediaCodec para problemas de compatibilidad de cola asíncrona; puede reducir rendimiento.
- Usar siempre el workaround de superficie de salida de vídeo ExoPlayer si el fallo ocurre al cambiar la superficie de vídeo Android.
Reinicia la reproducción tras cada cambio y conserva informe si no ayuda. Estos interruptores intercambian compatibilidad por rendimiento o usan otra ruta de salida; no son soluciones generales de calidad/red. Anota estado original, un único interruptor cambiado, URL/formato probado y resultado. Restablece el workaround inútil para que informes posteriores describan estado normal.
Si el audio sigue pero la imagen es negra, parpadea o se entrecorta, incluye códec/formato y resolución seleccionados. Códecs avanzados o resolución alta pueden exponer una limitación del decodificador no visible en un stream sencillo.
Problemas específicos del dispositivo
Para un fallo limitado a teléfono, ROM, tableta, modo TV o versión Android, indica modelo, Android/ROM, orientación y si ocurre en otro equipo. «Funciona en mi otro teléfono» es comparación útil, no reproducción suficiente.
Android Auto
Android Auto puede ocultar apps instaladas fuera de Google Play. Activa ajustes de desarrollador de Android Auto, permite fuentes desconocidas allí y reconecta el dispositivo. Esto afecta visibilidad, no red ni comportamiento YouTube.
Para Android Auto, aclara si PipePipe falta en lanzador, aparece pero no abre, o abre pero no reproduce. Añade versión Android Auto, Android del teléfono, contexto de vehículo/unidad si procede y fuente de instalación.
