rendered paste bodyor f in ${!INFILES[@]}; do # encode still frames ffmpeg -f image2 -loop_input -vframes $SLIDE_FRAMES -i "${INFILES[f]}" -pix_fmt yuv420p -f yuv4mpegpipe - if $SLIDE_FADE; then if [[ $f -lt ${#INFILES[@]} ]]; then base_ppm="$WORK_DIR/${f}.ppm" if ((f == (${#INFILES[@]} - 1) )); then overlay_ppm="$WORK_DIR/0.ppm" else overlay_ppm="$WORK_DIR/$((f+1)).ppm" fi [[ $TV_STANDARD = "ntsc" ]] && fade_frames=30 || fade_frames=25 fade_incr=$(bc -l <<< "scale=2; 100 / $fade_frames") fade_slide=0 echo for ((i=0; i<fade_frames; i++)); do BLEND_AMT=$(bc -l <<< "scale=2; $fade_slide * $fade_incr") composite_cmd=(composite -blend $BLEND_AMT -depth 8 "$overlay_ppm" \ "$base_ppm" "$WORK_DIR/animenu/$(printf %06d%s $i .ppm)") "${composite_cmd[@]}" spin "Compositing ${overlay_ppm##*/} over ${base_ppm##*/} with -blend $BLEND_AMT" let fade_slide=fade_slide+1 done let first_slide=first_slide+fade_frames+1 else echo "Running ffmpeg to encode ppms" ffmpeg -f image2 -i "WORK_DIR/animenu/%06d.ppm" -pix_fmt yuv420p -f yuv4mpegpipe - FFPID=?! wait $FFPID rm -f "WORK_DIR/animenu/*.ppm" fi fidone >&3