33 lines
1.0 KiB
Bash
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 |