Compare commits

..

No commits in common. "d75283f0a030a7eb24aad9fe55f682e99f759d78" and "39a341d1939e32d2f0f1f7c713ace5c35440ad2d" have entirely different histories.

2 changed files with 5 additions and 31 deletions

View file

@ -6,8 +6,7 @@ zusammenführt. Metadaten (Autor, Serie, Titel, Jahr, Sprecher:in) werden aus
der Ordnerstruktur extrahiert und als Tags gesetzt. Die Ergebnisse werden unter der Ordnerstruktur extrahiert und als Tags gesetzt. Die Ergebnisse werden unter
`out/` abgelegt. `out/` abgelegt.
> Das Skript startet `m4b-tool` über docker (`docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd)":/mnt sandreas/m4b-tool:latest`) oder > Das Skript startet `m4b-tool` über Nix (`nix run github:sandreas/m4b-tool#m4b-tool-libfdk`).
> Nix (`nix run github:sandreas/m4b-tool#m4b-tool-libfdk`).
## Inhaltsverzeichnis ## Inhaltsverzeichnis
@ -29,7 +28,7 @@ der Ordnerstruktur extrahiert und als Tags gesetzt. Die Ergebnisse werden unter
## Voraussetzungen ## Voraussetzungen
- Nix oder docker installiert (für den Aufruf von `m4b-tool` via `docker run` oder `nix run`) - Nix installiert (für den Aufruf von `m4b-tool` via `nix run`)
- AudioQuellen in unterstützten Formaten: `mp3`, `m4a`, `m4b`, `aac`, `flac`, `wav`, `ogg` - AudioQuellen in unterstützten Formaten: `mp3`, `m4a`, `m4b`, `aac`, `flac`, `wav`, `ogg`
- Bash (unter macOS/Linux vorhanden) - Bash (unter macOS/Linux vorhanden)

View file

@ -4,12 +4,11 @@ set -eufo pipefail
# CONSTANTS # CONSTANTS
declare -r script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" declare -r script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
declare -a m4b_tool_bin
# VARS # VARS
LEADING_ZEROES=2 LEADING_ZEROES=2
SRC="" SRC="${script_dir}/src"
OUT="" OUT="${script_dir}/out"
# FUNCTIONS # FUNCTIONS
parse-vars() { parse-vars() {
@ -179,7 +178,7 @@ m4b-merge() {
fi fi
args+=("--output-file=${output_file}" -- "${source_dir}") args+=("--output-file=${output_file}" -- "${source_dir}")
"${m4b_tool_bin[@]}" "${args[@]}" nix run github:sandreas/m4b-tool#m4b-tool-libfdk -- "${args[@]}"
} }
main() { main() {
@ -226,28 +225,4 @@ main() {
fi fi
} }
# Argument parser: select backend (docker|nix) and set paths
case "${1-}" in
nix)
m4b_tool_bin=(nix run github:sandreas/m4b-tool#m4b-tool-libfdk --)
SRC="${script_dir}/src"
OUT="${script_dir}/out"
shift
;;
docker|"")
m4b_tool_bin=(docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd)":/mnt sandreas/m4b-tool:latest)
SRC="./src"
OUT="./out"
[[ "${1-}" == docker ]] && shift || true
;;
-h|--help)
echo "Usage: $0 [docker|nix]" >&2
exit 0
;;
*)
echo "Unknown mode '$1'. Use 'docker' or 'nix'." >&2
exit 2
;;
esac
main "$@" main "$@"