Estoy haciendo un script que recorre una lista de archivos multimedia y luego los vuelve a codificar usando FFmpeg. Mi problema es que necesito eliminar los subtítulos que el contenedor MKV no admite. Esto debería ser simple usando mapeo negativo, sin embargo, el número de secuencia será diferente para cada archivo. Aquí está mi comando actual:
ffmpeg -y -i "path/to/file.ext" -map 0 -c:v libx264 -crf 20 -level 4.1 -profile:v high -c:a copy -q:a 100 -preset faster -strict -2 -movflags faststart -threads 2 -nostdin -stats "file.mkv"
video
ffmpeg
streaming
video-encoding
Wolveix
fuente
fuente
ffprobe -loglevel error -select_streams s -show_entries stream=index,codec_name -of csv=p=0 input.ext
-profile:v
y-level
dejar que el codificador elija, a menos que necesite lidiar con un dispositivo de reproducción limitado.-threads
es otro con el que puede lidiar automáticamente el codificador.-strict -2
no es necesario a menos que su ffmpeg sea antiguo y use el codificador AAC incorporado previamente experimental. FFmpeg WIki: AAC dice que "el rango efectivo-q:a
es de alrededor de 0.1-2. Este VBR es experimental y es probable que obtenga resultados aún peores que el CBR (-b:a
)". Nunca examiné eso, así que no puedo comentar sobre esa declaración.-level
,-profile:v
y-threads
están allí intencionalmente debido al uso previsto del script. Omitir-strict -2
ha causado problemas en el pasado, pero es cierto que no lo he probado recientemente. Interesante-q:a
, lo agregué por recomendación. ¡Gracias por la información!