diff options
| -rwxr-xr-x | transcode.sh | 37 |
1 files changed, 17 insertions, 20 deletions
diff --git a/transcode.sh b/transcode.sh index fe18b0d..bc62cb3 100755 --- a/transcode.sh +++ b/transcode.sh @@ -703,32 +703,29 @@ function load_config() { # CODEC SKIP-LIST HANDLING ############################################################################### -# Add a codec name to the SKIP_CODECS associative array. -# - Normalizes to lowercase +# Parse a user-provided codec list and add each token to SKIP_CODECS. +# Separators: comma, space, or colon. +# - Normalizes tokens to lowercase # - Ignores empty tokens +# - Avoids duplicate entries # - Used both for CLI --skip-codec and for codecs defined in the config file -function add_skip_codec_token() { - local token="${1,,}" # lowercase - - if [[ -z "$token" ]]; then - return 0 - fi - - if [[ ! -v SKIP_CODECS["$token"] ]]; then - debug "Add to skip codec:" "$token" - SKIP_CODECS["$token"]= - else - debug "Codec already skipped:" "$token" - fi -} - -# Parse a user-provided codec list (comma/space/colon separated) -# and add each token to SKIP_CODECS function parse_skip_codec_parameter() { local arg="$1" local IFS=',: ' token + for token in $arg; do - add_skip_codec_token "$token" + token=${token,,} # lowercase + + if [[ -z "$token" ]]; then + continue + fi + + if [[ -v SKIP_CODECS["$token"] ]]; then + debug "Codec already skipped:" "$token" + else + debug "Add to skip codec:" "$token" + SKIP_CODECS["$token"]= + fi done } |
