MP4 동영상 파일에서 GIF를 추출하려고 합니다.
이제 이 작업을 수행하는 두 가지 modi가 있습니다.
1) 일반적인 것:
ffmpeg -t 7.7 -ss 00:22:53 -i video.mp4 -i palette.png -s 320x174 -filter_complex "fps=15" output.gif
1.6MB 크기의 파일을 제공합니다.
그리고 2)
ffmpeg -t 7.7 -ss 00:22:53 -i video.mp4 -i palette.png -filter_complex "fps=15,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif
보기에는 더 좋지만 4.5MB(181% 증가)의 큰 파일을 제공합니다. 내가 만든 16x16 팔레트 파일을 사용합니다.
ffmpeg -y -t 7.7 -ss 00:22:53 -i video.mp4 -vf fps=15,scale=320:-1:flags=lanczos,palettegen palette.png
이제 동일한 fps, 지속 시간 및 해상도를 지닌 2개의 GIF가 어떻게 크기가 그렇게 큰 차이를 가질 수 있는지 알 수 없습니다. 내 직감으로는 둘 다 똑같아야 한다는 것입니다. 왜 이런 차이가 있는 걸까요? 그리고 품질을 잃지 않고 2)의 크기를 1)의 크기로 줄일 수 있는 방법이 있나요?
감사해요