1 minuto(s) de lectura

Actualmente tengo un chromecast y el sonido en AC3 y  DTS esta soportado.

¿Pero de que manera ? Usando passthrough , así que si tu TV no es decodifica te quedas sin sonido.

Solución:

La opción más eficiente es re-codificar las pistas de audio a AAC , pero esto tiene un coste , el fichero queda estructurado de forma ineficiente para streaming. En este punto hubo que pasarse por la documentación de matroska, no sabia nada de esto , así que a mover neuronas un poco. Vamos  re-codificamos con FFMEG y optimizamos los ficheros para streaming con herramientas de matroska.

Vamos a re-codificar

Con el FFMPEG generaremos un fichero nuevo con todas sus pistas en las mismas posiciones y  las de audio procesadas , el resto (vídeo y subtítulos ) copiadas. Por si en un futuro tengo un equipo de audio con varios canales he preferido resamplear la pista de AAC a Dolby Prologic II en vez de mantener pistas y añadir nuevas. Esto es una elección personal , máxima información en el menor espacio posible

Para el resampleado utilicé esta web:

-af “aresample=matrix_encoding=dplii”

Mapeo de pistas, utilicé la wiki oficial

  • -map 0  Seleciona todas las pistas
  • -c:v copy  Copia las pista de vídeo sin codificar
  • -c:a aac    Codifica las pistas de audio en AAC
  • -c:s copy   Copia las pistas de subtitulos

Comando de ejemplo:

for %x in (*.mkv) do ( ffmpeg.exe -i “%~x” -map 0 -c:v copy -c:a aac -af “aresample=matrix_encoding=dplii” -c:s copy “%~nx[AAC].mkv”)

Nota: el sistema de nombres “%~nx” devuelve el nombre sin extensión

Para asegurar el rendimiento en streaming utilizo la herramienta mkclean para estructurar el fichero de forma optima. Mas info en la estructura del mkv y de la herramienta

Comando de ejemplo:

for %x in (*.mkv) do ( mkclean.exe –optimize “%~x” )

Nota: optimize lleva dos guiones  “- - “

Ejemplos:

for %x in (*.mkv) do ( ffmpeg.exe -i “%~x” -map 0 -c:v copy -c:a aac -af “aresample=matrix_encoding=dplii” -c:s copy “%~nx_ENC.mkv”)

Categorías: ,

Actualizado: