bad-apple/assets/convert.sh
2025-03-25 20:15:47 +07:00

33 lines
1.0 KiB
Bash

#!/bin/sh
video1="mezmerize.mp4"
palette1="palette1.png"
output1="out/out_%d.bmp"
video2="mezmerize_fix.mp4"
palette2="palette2.png"
output2="out2/out_%d.bmp"
filters="scale=256:-1:flags=lanczos,fps=30"
dither="none"
# "bayer", "heckbert", "floyd_steinberg", "sierra2", "sierra2_4a", "sierra3", "burkes", "atkinson", "none"
# video
ffmpeg -i $video1 -vf "$filters,palettegen=max_colors=256:reserve_transparent=0:stats_mode=diff" -y $palette1
ffmpeg -i $video1 -i $palette1 -filter_complex "$filters[x];[x][1:v]paletteuse=dither=$dither" -y $output1
ffmpeg -i $video2 -vf "$filters,palettegen=max_colors=256:reserve_transparent=0:stats_mode=diff" -y $palette2
ffmpeg -i $video2 -i $palette2 -filter_complex "$filters[x];[x][1:v]paletteuse=dither=$dither" -y $output2
# audio
ffmpeg -i $video1 -f s8 -vn -ac 1 -ar 16000 -y music1.raw
for file in out/*.bmp; do
echo $file
magick "$file" -background black -gravity west -extent 256x "$file"
done
for file in out2/*.bmp; do
echo $file
magick "$file" -background black -gravity west -extent 256x "$file"
done