Files
at2-workstation-scripts/2mp3cudaRestoration.sh
2025-04-12 09:56:11 +02:00

55 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
# Script Version: 03
# Description: Simple script to convert audio files to MP3 (192 kbps) using CUDA for acceleration.
# Set variables
# ========
INPUT_DIR="$(pwd)"
OUTPUT_DIR="$INPUT_DIR/output"
BITRATE="192k"
# Functions
# ========
convert_to_mp3() {
local INPUT_FILE="$1"
local OUTPUT_FILE="$2"
# Convert to MP3 with FFmpeg
ffmpeg -hwaccel cuda -i "$INPUT_FILE" -c:a libmp3lame -b:a "$BITRATE" "$OUTPUT_FILE" -y || return 1
}
# Main Process
# ========
echo "Starting audio conversion process..."
mkdir -p "$OUTPUT_DIR"
SUCCESS_COUNT=0
TOTAL_COUNT=0
shopt -s nullglob
for FILE in "$INPUT_DIR"/*; do
if [[ -f "$FILE" ]]; then
BASENAME=$(basename "$FILE")
EXTENSION="${BASENAME##*.}"
# Skip unsupported extensions
if ! [[ "$EXTENSION" =~ ^(wav|flac|opus|m4a|mp3)$ ]]; then
echo "Skipping unsupported file: $FILE"
continue
fi
OUTPUT_FILE="$OUTPUT_DIR/${BASENAME%.*}.mp3"
echo "Converting $FILE to $OUTPUT_FILE"
if convert_to_mp3 "$FILE" "$OUTPUT_FILE"; then
SUCCESS_COUNT=$((SUCCESS_COUNT + 1))
fi
TOTAL_COUNT=$((TOTAL_COUNT + 1))
fi
done
shopt -u nullglob
echo "Audio conversion process completed. Success: $SUCCESS_COUNT/$TOTAL_COUNT"