#!/bin/bash #merges videos/output_n.mp4 with audios/audio_n.mp3 -> merged/merged_n.mp4 BASE_DIR="/home/madina/projects/short_videos" VIDEOS_DIR="$BASE_DIR/videos" AUDIOS_DIR="$BASE_DIR/audios" OUTPUT_DIR="$BASE_DIR/merged" mkdir -p "$OUTPUT_DIR" for video in "$VIDEOS_DIR"/output_*.mp4; do num=$(basename "$video" | sed 's/output_\([0-9]*\)\.mp4/\1/') audio="$AUDIOS_DIR/output_${num}.mp3" output="$OUTPUT_DIR/merged_${num}.mp4" if [ ! -f "$audio" ]; then echo "WARNING: No audio found for shot $num ($audio); skipped" continue fi if [ -f "$output" ]; then echo "Already exists; skipped the shot $num." continue fi echo "Merging shot $num: $video + $audio -> $output" ffmpeg -i "$video" -i "$audio" \ -c:v copy \ -c:a aac \ -shortest \ -y "$output" echo "Done: $output" done