#!/bin/bash #set -x # Dank an http://www.ubuntu-schweiz.org/2007/08/11/dvd-sound-in-mp3-konvertieren/ # Pakete die installiert sein müssen: transcode lame lsdvd libdvdcss2 # Mittels lsdvd das Inhaltsverzeichnis auslesen # transcode -i /dev/dvd -x dvd -T 1,12,1 -b 192,1,5,1 -a 0 -y null,lame -m cd2_13_Phil_Collins # TRANSCODE=$(which transcode) # LAME=$(which lame) # LSDVD=$(which lsdvd) ZWERT='' NWERT='' INFO=$(lsdvd) function zahlenwert() { read -p 'Bitte Zahlenwert eingeben: ' ZWERT if [ -z "$ZWERT" ] then unset ZWERT zahlenwert fi if ! [ "${ZWERT//[0-9]/}" = "" ] then echo 'Das war kein numerischer wert' unset ZWERT zahlenwert fi } function namenwert() { read -p 'Bitte Namen angeben: ' NWERT if [ -z "$NWERT" ] then unset ZWERT namenwert fi NEU=${NWERT//[!0-9A-Za-z_-]/} if [ -z "$NEU" ] then echo 'Es waren nur ungültige Zeichen enthalten!' unset NWERT unset NEU namenwert fi if [ "$NEU" != "$NWERT" ] then echo -e "Der Name '$NWERT' kann in dieser Form nicht verwedet werden.\nEs sind nur Zahlen, Buchstaben und '_ -' zugelassen.\nSoll anstatt '$NEU' verwendet werden?" read -n1 -p "$NEU verwenden [Y|n]" YESNO if [ -z "$YESNO" ] then YESNO="Y" fi if [ "$YESNO" = "y" -o "$YESNO" = "Y" ] then NWERT=$NEU else namenwert fi else NWERT=$NEU fi } echo -e "Folgende Informationen hat lsdvd ermittelt:\n$INFO\n\n-----------------------------------------------------------" echo -e "\nWelche Tonspur soll verwendet werden?\n\tHINWEIS: Tonspur ist = Title: [NUMMER], Bitte Nummer ohne führende NULL angeben." zahlenwert SPUR=$ZWERT echo '$SPUR = '$SPUR echo -e "\nWieviele Songs hat die Tonspur 0$SPUR?\n\tHINWEIS: Anzahl Der Songs ist der Wert nach Chapters: [ANZAHL]" zahlenwert ANZAHL=$ZWERT echo '$ANZAHL = '$ANZAHL unset ZWERT echo -e "\nNamen der DVD\n\tHINWEIS: Dieser Name wird benötigt um ein Verzeichnis zu erstellen in dem die einzelnen mp3 Files als 1_NAME.mp3 abgelegt werden" namenwert echo '$NWERT = '$NWERT echo -e "\n-----------------------------------------------------------\n" if [ ! -d "$HOME/$NWERT" ] then echo "Erstelle das Verzeichniss '$HOME/$NWERT'" mkdir -p $HOME/$NWERT/ fi cd $HOME/$NWERT/ i=1 while [ $i -le $ANZAHL ]; do echo "transcode -i /dev/dvd -x dvd -T $SPUR,$((i)) -b 192,1,5,1 -a 0 -y null,lame -m $HOME/$NWERT/$((i))_$NWERT" # transcode -i /dev/dvd \ -x dvd \ -T $SPUR,$((i)) \ -b 192,1,5,1 \ -a 0 \ -y null,lame \ -m $HOME/$NWERT/$((i))_$NWERT i=$(($i+1)) done exit;