From 2706a0af3f06540123879a730e0fdd035c20f86a Mon Sep 17 00:00:00 2001 From: Mark Date: Fri, 17 Feb 2023 22:28:41 -0800 Subject: [PATCH] Added video script --- celeste/ffmpeg.sh | 52 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 celeste/ffmpeg.sh diff --git a/celeste/ffmpeg.sh b/celeste/ffmpeg.sh new file mode 100644 index 0000000..2a9ec78 --- /dev/null +++ b/celeste/ffmpeg.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +SC_ROOT="screenshots" +OUTPUT_DIR="out/video" + +render_dir () { + ffmpeg \ + -y \ + -loglevel quiet \ + -framerate 30 \ + -i $1/hackcel_%003d.png \ + -c:v libx264 \ + -pix_fmt yuv420p \ + $OUTPUT_DIR/${1##*/}.mp4 +} + +mkdir -p $OUTPUT_DIR + +echo "Making episode files..." +for D in $SC_ROOT/*; do + if [ -d "${D}" ]; then + render_dir $D + fi +done + +echo "Done." + + +# Generate video for each run +for f in $OUTPUT_DIR/*.mp4; do + echo file \'$f\' >> merge_list; +done + +# Merge videos +ffmpeg \ + -loglevel quiet -stats -y \ + -f concat \ + -safe 0 \ + -i merge_list \ + -c copy \ + $OUTPUT_DIR/00-all.mp4 + +rm merge_list + +# Make accelerated video +ffmpeg \ + -i $OUTPUT_DIR/00-all.mp4 -y \ + -r 60 \ + -filter:v "setpts=0.125*PTS" \ + 8x.mkv + +