diff --git a/modules/transcode.nix b/modules/transcode.nix index 72b4541..24c9c24 100644 --- a/modules/transcode.nix +++ b/modules/transcode.nix @@ -6,14 +6,15 @@ ]; programs.zsh.initContent = '' - function flac2aac() { + function audio2aac() { local dir="''${1:-.}" - find "$dir" -name '*.flac' -type f -print0 | xargs -0 -P4 -n1 sh -c ' - f="$1" - outfile="./transcode/''${f%.flac}.m4a" - mkdir -p "$(dirname "$outfile")" - ffmpeg -i "$f" -vn -c:a aac -b:a 256k -movflags +faststart "$outfile" - ' _ + for f in "$dir"/**/*.(flac|mp3|wav|ogg|wma|aiff)(N); do + if [[ -f "$f" ]]; then + local outfile="./transcode/''${f%.*}.m4a" + mkdir -p "$(dirname "$outfile")" + ffmpeg -i "$f" -vn -c:a aac -b:a 256k -movflags +faststart "$outfile" + fi + done } function video2av1() {