Skip to content

Instantly share code, notes, and snippets.

@andrewmackrodt
Created June 19, 2022 22:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save andrewmackrodt/dbbd6c769e3aa1e47dd5aadc5aa30ac9 to your computer and use it in GitHub Desktop.
Save andrewmackrodt/dbbd6c769e3aa1e47dd5aadc5aa30ac9 to your computer and use it in GitHub Desktop.
#!/bin/bash
IFS=$'\n\t'
set -euo pipefail
cd "~/Downloads/series"
function merge() {
jpnSrc="$1"
en1Src="$2"
en2Src="$3"
out="$4"
if [[ -f "$out" ]]; then
return
fi
ffmpeg -i "$jpnSrc" -i "$en1Src" -i "$en2Src" -c copy \
-map_metadata:g -1 \
-map 0:v:0 -metadata:s:v:0 language="jpn" -disposition:v:0 default \
-map 2:a:0 -metadata:s:a:0 language="eng" -disposition:a:0 default \
-map 0:a:0 -metadata:s:a:1 language="jpn" -disposition:a:1 0 \
-map 0:a:1 -metadata:s:a:2 language="jpn" -metadata:s:a:2 title="Commentary" \
-map 2:s:0 -metadata:s:s:0 language="eng" -metadata:s:s:0 title="Signs/Songs" -disposition:s:0 forced \
-map 2:s:0 -metadata:s:s:1 language="eng" -metadata:s:s:1 title="English" -disposition:s:1 default \
-map 1:s:0 -metadata:s:s:2 language="eng" -metadata:s:s:2 title="English (Animated)" -disposition:s:2 0 \
-map_chapters 1 \
-max_interleave_delta 0 \
"$out"
}
merge "jpn/01[Ma10p_1080p][x265_flac_aac].mkv" \
"en1/01(1920x1080 Hi10P BD FLAC)mkv" \
"en2/01[BD_720p_8bit].mkv" \
"out/01 Bluray-1080p.mkv"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment