¿Cuál es la diferencia en FFMPEG entre usar -c:v libx264, -c:v copy y -vcodec copy?

¿Cuál es la diferencia en FFMPEG entre usar -c:v libx264, -c:v copy y -vcodec copy?

Estoy intentando grabar video y audio desde una cámara IP en streaming en H.264.

Encontré estas diferentes opciones:

-i "camera_url"  -c:v libx264 -acodec copy "out.mp4"
-i "camera_url"  -c:v copy -acodec copy "out.mp4"
-i "camera_url"  -vcodec copy -acodec copy "out.mp4"

¿Alguien podría decirme cuál es la diferencia entre esos 3 tipos de grabaciones? Hasta donde tengo entendido, el último no realiza ninguna transcodificación, por lo que todo lo que proviene de la cámara se almacena en el archivo. ¿Qué pasa con los otros 2?

Respuesta1

La -codecopción establece la elección del codificador. Puede ser el nombre de un codificador o copy. Este último evita la transcodificación y copia los paquetes de entrada a salida. -ces una forma abreviada de -codec. Ambos pueden aceptarespecificadores de flujo, como -c:v:2o -codec:a. El primero configurará el codificador para la tercera transmisión de video en la salida y el segundo configurará el codificador para todas las transmisiones de audio.

vcodecy acodecson alias de -c:vy -c:apero no aceptan especificadores de flujo.

información relacionada