私が知っている最高の実際の数学的に損失のない形式はhuffyuvですが、それは陽気に巨大なファイルを生成し、多くと互換性がありません。記録のために、ffmpegは以下でそれを行うことができます。
ffmpeg -i input -c:v huffyuv -c:a libmp3lame -b:a 320k output.avi
オープンソースのh.264エンコーダーであるX264にはロスレスモードがあります。これはMP4コンテナー内に配置でき、ここ数年で作成されたほとんどのハードウェアと互換性があります。最初のコマンドは、エンコード速度は速くなりますが、ファイルが大きくなります。2番目のコマンドにはかなり長い時間がかかりますが、ファイルは高速エンコードされたファイルの約半分のサイズである必要があります(それでもかなり大きなサイズになります)。
ffmpeg -i input -c:v libx264 -crf 0 -preset ultrafast -c:a libmp3lame -b:a 320k output.mp4
ffmpeg -i input -c:v libx264 -crf 0 -preset veryslow -c:a libmp3lame -b:a 320k output.mp4
それで十分なサイズのファイルが得られない場合、一般に18のcrfは「視覚的に可逆」と見なされます。
ffmpeg -i input -c:v libx264 -crf 18 -preset veryfast -c:a libmp3lame -b:a 320k output.mp4
私は通常、x264でのエンコードに非常に高速なプリセットをお勧めします。私の経験では、最高の速度/サイズのトレードオフを提供します(超高速と超高速の間でファイルサイズが大幅に低下しますが、それよりも遅くなり、さらに増加します)。一般的なアドバイスは、処理可能な最も遅いプリセットを使用することです。プリセットは、超高速、超高速、超高速、高速、高速、中、低速、低速、超低速です。
x264エンコードの詳細なガイドについては、こちらをご覧ください。