diff --git a/scripts/recc_encode.sh b/scripts/recc_encode.sh index 8c70e2a..3df5071 100755 --- a/scripts/recc_encode.sh +++ b/scripts/recc_encode.sh @@ -53,7 +53,13 @@ get_bitrate_audio() { for ((i = 0; i < NUM_AUDIO_STREAMS; i++)); do NUM_CHANNELS=$(ffprobe -v error -select_streams "a:$i" -show_entries stream=channels -of default=noprint_wrappers=1:nokey=1 "$INPUT") BITRATE=$((NUM_CHANNELS * 64)) - BITRATE_CMD+="-b:a:$i ${BITRATE}k " + CODEC_NAME="$(ffprobe -v error -select_streams "a:$i" -show_entries stream=codec_name -of default=noprint_wrappers=1:nokey=1 "$INPUT")" + # don't encode opus streams + if [[ "$CODEC_NAME" == 'opus' ]]; then + BITRATE_CMD+="-c:a:$i copy " + else + BITRATE_CMD+="-filter:a:$i 'aformat=channel_layouts=7.1|5.1|stereo|mono' -c:a:$i libopus -b:a:$i ${BITRATE}k " + fi done echo "$BITRATE_CMD" } @@ -94,14 +100,14 @@ encode() { echo -e '#!/usr/bin/env bash\n' > "$ENCODE_FILE" echo "export OUTPUT=\"$OUTPUT\"" >> "$ENCODE_FILE" - SVT_PARAMS="${GRAIN}sharpness=3:tune=3:enable-overlays=1:scd=1:fast-decode=1:enable-variance-boost=1:enable-qm=1:qm-min=0:qm-max=15" + SVT_PARAMS="${GRAIN}sharpness=3:psy-rd=1:tune=3:enable-overlays=1:scd=1:fast-decode=1:enable-variance-boost=1:enable-qm=1:qm-min=0:qm-max=15" echo "export SVT_PARAMS=\"$SVT_PARAMS\"" >> "$ENCODE_FILE" UNMAP=$(unmap_streams "$INPUT") echo "export UNMAP=\"$UNMAP\"" >> "$ENCODE_FILE" - AUDIO_FORMAT='-af aformat=channel_layouts=7.1|5.1|stereo|mono -c:a libopus' - echo "export AUDIO_FORMAT='$AUDIO_FORMAT'" >> "$ENCODE_FILE" + # AUDIO_FORMAT='-af aformat=channel_layouts=7.1|5.1|stereo|mono' + # echo "export AUDIO_FORMAT='$AUDIO_FORMAT'" >> "$ENCODE_FILE" AUDIO_BITRATE=$(get_bitrate_audio "$INPUT") echo "export AUDIO_BITRATE=\"$AUDIO_BITRATE\"" >> "$ENCODE_FILE"