Videoconverterscript: Unterschied zwischen den Versionen
K (ccj1: Variablen werden nicht außerhalb verwenden, also kein export nötig) |
K (ccj1: Tests überfällig - `mkdir -p` macht das doch schon) |
||
| Zeile 75: | Zeile 75: | ||
# Check if basic targetdirectory exists | # Check if basic targetdirectory exists | ||
# | # | ||
| − | + | mkdir -p "$BASE"; | |
basename1="${1##*/}"; | basename1="${1##*/}"; | ||
| Zeile 86: | Zeile 86: | ||
# | # | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$FULLDVD/ffmpeg/PAL"; | |
echo "Starting Fullscreen PAL-DVD conversion with ffmpeg..."; | echo "Starting Fullscreen PAL-DVD conversion with ffmpeg..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Fullscreen PAL-DVD Converting..." -e ffmpeg -i "$1" -target pal-dvd -aspect 4:3 "$FULLDVD/ffmpeg/PAL/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG Fullscreen PAL-DVD Converting..." -e ffmpeg -i "$1" -target pal-dvd -aspect 4:3 "$FULLDVD/ffmpeg/PAL/$basename1.mpg"; | ||
| Zeile 95: | Zeile 95: | ||
if [ ( "$MEDIA" == ALL || "$MEDIA" == DVD ) && \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) && \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | if [ ( "$MEDIA" == ALL || "$MEDIA" == DVD ) && \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) && \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$FULLDVD/ffmpeg/NTSC"; | |
echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg..."; | echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Fullscreen NTSC-DVD Converting..." -e ffmpeg -i "$1" -target ntsc-dvd -aspect 4:3 "$FULLDVD/ffmpeg/NTSC/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG Fullscreen NTSC-DVD Converting..." -e ffmpeg -i "$1" -target ntsc-dvd -aspect 4:3 "$FULLDVD/ffmpeg/NTSC/$basename1.mpg"; | ||
| Zeile 107: | Zeile 107: | ||
# | # | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$WIDEDVD/ffmpeg/PAL"; | |
echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg..."; | echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Widescreen PAL-DVD Converting..." -e ffmpeg -i "$1" -target pal-dvd -aspect 16:9 "$WIDEDVD/ffmpeg/PAL/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG Widescreen PAL-DVD Converting..." -e ffmpeg -i "$1" -target pal-dvd -aspect 16:9 "$WIDEDVD/ffmpeg/PAL/$basename1.mpg"; | ||
| Zeile 116: | Zeile 116: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$WIDEDVD/ffmpeg/NTSC"; | |
echo "Starting Widescreen NTSC-DVD conversion with ffmpeg..."; | echo "Starting Widescreen NTSC-DVD conversion with ffmpeg..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Widescreen NTSC-DVD Converting..." -e ffmpeg -i "$1" -target ntsc-dvd -aspect 16:9 "$WIDEDVD/ffmpeg/NTSC/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG Widescreen NTSC-DVD Converting..." -e ffmpeg -i "$1" -target ntsc-dvd -aspect 16:9 "$WIDEDVD/ffmpeg/NTSC/$basename1.mpg"; | ||
| Zeile 129: | Zeile 129: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$FULLDVD/mencoder/PAL"; | |
echo "Starting Fullscreen PAL-DVD conversion with mencoder..."; | echo "Starting Fullscreen PAL-DVD conversion with mencoder..."; | ||
time konsole --caption "Converterscript v.0.0.2 - MENCODER Fullscreen PAL-DVD Converting..." -e time mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=4/3 -ofps 25 -o "$FULLDVD/mencoder/PAL/$basename1.mpg" "$1"; | time konsole --caption "Converterscript v.0.0.2 - MENCODER Fullscreen PAL-DVD Converting..." -e time mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=4/3 -ofps 25 -o "$FULLDVD/mencoder/PAL/$basename1.mpg" "$1"; | ||
| Zeile 138: | Zeile 138: | ||
if [ \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | if [ \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$FULLDVD/mencoder/NTSC"; | |
echo "Starting Fullscreen NTSC-DVD conversion with mencoder..."; | echo "Starting Fullscreen NTSC-DVD conversion with mencoder..."; | ||
time konsole --caption "Converterscript v.0.0.2 - MENCODER Fullscreen NTSC-DVD Converting..." -e time mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:abitrate=192:aspect=4/3 -ofps 30000/1001 -o "$FULLDVD/mencoder/NTSC/$basename1.mpg" "$1"; | time konsole --caption "Converterscript v.0.0.2 - MENCODER Fullscreen NTSC-DVD Converting..." -e time mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:abitrate=192:aspect=4/3 -ofps 30000/1001 -o "$FULLDVD/mencoder/NTSC/$basename1.mpg" "$1"; | ||
| Zeile 151: | Zeile 151: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$WIDEDVD/mencoder/PAL"; | |
echo "Starting Widescreen PAL-DVD conversion with mencoder..."; | echo "Starting Widescreen PAL-DVD conversion with mencoder..."; | ||
time konsole --caption "Converterscript v.0.0.2 - MENCODER Widescreen PAL-DVD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o "$WIDEDVD/mencoder/PAL/$basename1.mpg" "$1"; | time konsole --caption "Converterscript v.0.0.2 - MENCODER Widescreen PAL-DVD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o "$WIDEDVD/mencoder/PAL/$basename1.mpg" "$1"; | ||
| Zeile 160: | Zeile 160: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then | ||
| − | + | mkdir -p "$WIDEDVD/mencoder/NTSC"; | |
echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg..."; | echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg..."; | ||
time konsole --caption "Converterscript v.0.0.2 - MENCODER Widescreen NTSC-DVD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 -o "$WIDEDVD/mencoder/NTSC/$basename1.mpg" "$1"; | time konsole --caption "Converterscript v.0.0.2 - MENCODER Widescreen NTSC-DVD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 -o "$WIDEDVD/mencoder/NTSC/$basename1.mpg" "$1"; | ||
| Zeile 173: | Zeile 173: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == VCD -o "$CDTYPE" == ALL \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == VCD -o "$CDTYPE" == ALL \) ]; then | ||
| − | + | mkdir -p "$VCD/ffmpeg/PAL"; | |
echo "Starting PAL-VCD conversion..."; | echo "Starting PAL-VCD conversion..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG PAL-VCD Converting..." -e ffmpeg -i "$1" -target pal-vcd "$VCD/ffmpeg/PAL/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG PAL-VCD Converting..." -e ffmpeg -i "$1" -target pal-vcd "$VCD/ffmpeg/PAL/$basename1.mpg"; | ||
| Zeile 182: | Zeile 182: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE" == VCD -o "$CDTYPE" == ALL \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE" == VCD -o "$CDTYPE" == ALL \) ]; then | ||
| − | + | mkdir -p "$VCD/ffmpeg/NTSC"; | |
echo "Starting NTSC-VCD conversion..."; | echo "Starting NTSC-VCD conversion..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG NTSC-VCD Converting..." -e time ffmpeg -i "$1" -target ntsc-vcd "$VCD/ffmpeg/NTSC/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG NTSC-VCD Converting..." -e time ffmpeg -i "$1" -target ntsc-vcd "$VCD/ffmpeg/NTSC/$basename1.mpg"; | ||
| Zeile 195: | Zeile 195: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == SVCD -o "$CDTYPE" == ALL \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == SVCD -o "$CDTYPE" == ALL \) ]; then | ||
| − | + | mkdir -p "$SVCD/ffmpeg/PAL"; | |
echo "Starting PAL-SVCD conversion..."; | echo "Starting PAL-SVCD conversion..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG PAL-SVCD Converting..." -e ffmpeg -i "$1" -target pal-svcd "$SVCD/ffmpeg/PAL/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG PAL-SVCD Converting..." -e ffmpeg -i "$1" -target pal-svcd "$SVCD/ffmpeg/PAL/$basename1.mpg"; | ||
| Zeile 204: | Zeile 204: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE == SVCD -o "$CDTYPE" == ALL \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE == SVCD -o "$CDTYPE" == ALL \) ]; then | ||
| − | + | mkdir -p "$SVCD/ffmpeg/NTSC"; | |
echo "Starting NTSC-SVCD conversion..."; | echo "Starting NTSC-SVCD conversion..."; | ||
time konsole --caption "Converterscript v.0.0.2 - FFMPEG NTSC-SVCD Converting..." -e ffmpeg -i "$1" -target ntsc-svcd "$SVCD/ffmpeg/NTSC/$basename1.mpg"; | time konsole --caption "Converterscript v.0.0.2 - FFMPEG NTSC-SVCD Converting..." -e ffmpeg -i "$1" -target ntsc-svcd "$SVCD/ffmpeg/NTSC/$basename1.mpg"; | ||
| Zeile 217: | Zeile 217: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == XVCD -o "$CDTYPE" == ALL \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == XVCD -o "$CDTYPE" == ALL \) ]; then | ||
| − | + | mkdir -p "$XVCD/mencoder/PAL"; | |
echo "Starting PAL-XVCD conversion..."; | echo "Starting PAL-XVCD conversion..."; | ||
time konsole --caption "Converterscript v.0.0.2 - MENCODER PAL XVCD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 -o "$XVCD/mencoder/PAL/$basename1.mpg" "$1"; | time konsole --caption "Converterscript v.0.0.2 - MENCODER PAL XVCD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 -o "$XVCD/mencoder/PAL/$basename1.mpg" "$1"; | ||
| Zeile 226: | Zeile 226: | ||
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE" == XVCD -o "$CDTYPE" == ALL \) ]; then | if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE" == XVCD -o "$CDTYPE" == ALL \) ]; then | ||
| − | + | mkdir -p "$XVCD/mencoder/NTSC"; | |
echo "Starting NTSC-XVCD conversion..."; | echo "Starting NTSC-XVCD conversion..."; | ||
time konsole --caption "Converterscript v.0.0.2 - MENCODER NTSC XVCD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 -o "$XVCD/mencoder/NTSC/$basename1.mpg" "$1"; | time konsole --caption "Converterscript v.0.0.2 - MENCODER NTSC XVCD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 -o "$XVCD/mencoder/NTSC/$basename1.mpg" "$1"; | ||
| Zeile 239: | Zeile 239: | ||
if [ "$MEDIA" == ALL || "$MEDIA" == PSP ]; then | if [ "$MEDIA" == ALL || "$MEDIA" == PSP ]; then | ||
| − | + | mkdir -p "$PSP"; | |
echo "PSP conversion started..."; | echo "PSP conversion started..."; | ||
time konsole --caption "Converterscript v.0.0.2 - Converting for Sony PlayStationPortable..." -e ffmpeg -i "$1" -f psp -r 14.985 -s 320x240 -b 768 -ar 24000 -ab 32 "$PSP/$basename1.MP4"; | time konsole --caption "Converterscript v.0.0.2 - Converting for Sony PlayStationPortable..." -e ffmpeg -i "$1" -f psp -r 14.985 -s 320x240 -b 768 -ar 24000 -ab 32 "$PSP/$basename1.MP4"; | ||
| Zeile 254: | Zeile 254: | ||
if [ "$MEDIA" == ALL -o "$MEDIA == "Special" ]; then | if [ "$MEDIA" == ALL -o "$MEDIA == "Special" ]; then | ||
| − | + | mkdir -p "$PSP"; | |
echo "For future special devices... not available for now, so PSP conversion started..."; | echo "For future special devices... not available for now, so PSP conversion started..."; | ||
time konsole --caption "Converterscript v.0.0.2 - Converting for Sony PlayStationPortable..." -e ffmpeg -i "$1" -f psp -r 14.985 -s 320x240 -b 768 -ar 24000 -ab 32 "$PSP/$basename1.MP4"; | time konsole --caption "Converterscript v.0.0.2 - Converting for Sony PlayStationPortable..." -e ffmpeg -i "$1" -f psp -r 14.985 -s 320x240 -b 768 -ar 24000 -ab 32 "$PSP/$basename1.MP4"; | ||
Version vom 6. April 2007, 16:57 Uhr
Hier ein kleines Script zum automatischen konvertieren bekannter Videoformate in DVD, VCD, SVCD und PSP konforme Mpeg-Dateien:
Voraussetzung: ffmpeg und mencoder(im mplayer Paket enthalten) müssen installiert sein, für die Ausgangsdaten eventuell weitere benötigte Codecs sollten ebenso installiert sein.
Benötigter Parameter: Der Name der zu konvertierenden Datei bzw. des Ausgangsmediums. Beispiel:
converterscript.sh ./meinfilm.avi
To-Do Liste:
- Overrideoption für die Settings über die Kommandozeile einbauen
- Ncurses oder grafische Oberfläche dazu passend erstellen oder einbauen
- Weitere Formate einbauen
- Optionale Einstellung für den Konsolentyp/Terminaltyp einbauen (bisher nur mit der KDE-Konsole laufend)
| Changelog: | |
| v0.0.2-ccj1 | Leerzeichen in Dateinamen akzeptieren, if[]-Tests und Struktur vereinfachen |
| v0.0.2 | Zielformateauswahl verbessert und Prüfung auf Existenz der Zielverzeichnise eingebaut, von parallel laufender Multi-Konsolenversion auf lineare Version mit nur einem weiteren Konsolenfenster umgebaut |
| v.0.0.1b | Grundlegende Pfadstruktur der Zielpfade verbessert |
| v.0.0.1 | Anfangsversion des Converterscripts |
converterscript.sh
#!/bin/sh
# Conversionscript for converting Videofiles to Widescreen+Fullscreen/ PAL+NTSC DVD, PAL+NTSC VCD/SVCD/XVCD, PSP Fileformat with Help of mencoder and ffmpeg
# V. 0.0.2
#
# (c) by Tom Meierjürgen tomcatmj@web.de
# Licence: Creative Commons - attribution - non-commercial - sharealike
#
# Basic settings
#
#
# Mediatype ALL, DVD, VCD or PSP
#
MEDIA=ALL
#
# TV-Standards
# Choose PAL, NTSC or ALL
STANDARD=ALL
#
# Fullscreen or Widescreen or both (DVD only) (FULL, WIDE, BOTH)
VIEW=BOTH
#
# Choose VCD, SVCD, XVCD or ALL
#
CDTYPE=ALL
#
# Targetdirectories, change values to your needs
BASE="~/converted";
PSP="$BASE/PSP";
FULLDVD="$BASE/DVD/FULLSCREEN";
WIDEDVD="$BASE/DVD/WIDESCREEN";
VCD="$BASE/VCD";
XVCD="$BASE/XVCD";
SVCD="$BASE/SVCD";
#
# Initializing and conversions
#
# Check if basic targetdirectory exists
#
mkdir -p "$BASE";
basename1="${1##*/}";
#
# DVD initial targetdirectory existencecheck
#
# Check if DVD-Targetdirectories exist
#
# FFMpeg Fullscreen DVD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then
mkdir -p "$FULLDVD/ffmpeg/PAL";
echo "Starting Fullscreen PAL-DVD conversion with ffmpeg...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Fullscreen PAL-DVD Converting..." -e ffmpeg -i "$1" -target pal-dvd -aspect 4:3 "$FULLDVD/ffmpeg/PAL/$basename1.mpg";
echo "Fullscreen PAL-DVD conversion with ffmpeg finished.";
else
echo "No Fullscreen PAL-DVD conversion with encodertype ffmpeg selected";
fi
if [ ( "$MEDIA" == ALL || "$MEDIA" == DVD ) && \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) && \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then
mkdir -p "$FULLDVD/ffmpeg/NTSC";
echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Fullscreen NTSC-DVD Converting..." -e ffmpeg -i "$1" -target ntsc-dvd -aspect 4:3 "$FULLDVD/ffmpeg/NTSC/$basename1.mpg";
echo "Fullscreen NTSC-DVD conversion with ffmpeg finished.";
else
echo "No Fullscreen NTSC-DVD conversion with encodertype ffmpeg selected.";
fi
#
# FFMpeg Widescreen DVD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then
mkdir -p "$WIDEDVD/ffmpeg/PAL";
echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Widescreen PAL-DVD Converting..." -e ffmpeg -i "$1" -target pal-dvd -aspect 16:9 "$WIDEDVD/ffmpeg/PAL/$basename1.mpg";
echo "Widescreen PAL-DVD with ffmpeg finished.";
else
echo "No Widescreen PAL-DVD conversion with encodertype ffmpeg selected.\n";
fi
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then
mkdir -p "$WIDEDVD/ffmpeg/NTSC";
echo "Starting Widescreen NTSC-DVD conversion with ffmpeg...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG Widescreen NTSC-DVD Converting..." -e ffmpeg -i "$1" -target ntsc-dvd -aspect 16:9 "$WIDEDVD/ffmpeg/NTSC/$basename1.mpg";
echo "Widescreen NTSC-DVD conversion with ffmpeg finished.";
else
echo "No Widescreen NTSC-DVD conversion with encodertype ffmpeg selected.";
fi
#
# Mencoder Fullscreen DVD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then
mkdir -p "$FULLDVD/mencoder/PAL";
echo "Starting Fullscreen PAL-DVD conversion with mencoder...";
time konsole --caption "Converterscript v.0.0.2 - MENCODER Fullscreen PAL-DVD Converting..." -e time mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=4/3 -ofps 25 -o "$FULLDVD/mencoder/PAL/$basename1.mpg" "$1";
echo "Fullscreen PAL-DVD conversion with mencoder finished.";
else
echo "No Fullscreen PAL-DVD conversion with encodertype mencoder selected.";
fi
if [ \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == FULL -o "$VIEW" == BOTH \) ]; then
mkdir -p "$FULLDVD/mencoder/NTSC";
echo "Starting Fullscreen NTSC-DVD conversion with mencoder...";
time konsole --caption "Converterscript v.0.0.2 - MENCODER Fullscreen NTSC-DVD Converting..." -e time mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=352:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:abitrate=192:aspect=4/3 -ofps 30000/1001 -o "$FULLDVD/mencoder/NTSC/$basename1.mpg" "$1";
echo "Fullscreen NTSC-DVD conversion with mencoder finished.";
else
echo "No Fullscreen NTSC-DVD conversion with encodertype mencoder selected.";
fi
#
# Mencoder Widescreen DVD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then
mkdir -p "$WIDEDVD/mencoder/PAL";
echo "Starting Widescreen PAL-DVD conversion with mencoder...";
time konsole --caption "Converterscript v.0.0.2 - MENCODER Widescreen PAL-DVD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o "$WIDEDVD/mencoder/PAL/$basename1.mpg" "$1";
echo "Widescreen PAL-DVD conversion finished.";
else
echo "No Widescreen PAL-DVD conversion with encodertype mencoder selected.";
fi
if [ \( "$MEDIA" == ALL -o "$MEDIA" == DVD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$VIEW" == WIDE -o "$VIEW" == BOTH \) ]; then
mkdir -p "$WIDEDVD/mencoder/NTSC";
echo "Starting Fullscreen NTSC-DVD conversion with ffmpeg...";
time konsole --caption "Converterscript v.0.0.2 - MENCODER Widescreen NTSC-DVD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 -o "$WIDEDVD/mencoder/NTSC/$basename1.mpg" "$1";
echo "Widescreen NTSC-DVD conversion finished.";
else
echo "No Widescreen NTSC-DVD conversion with encodertype mencoder selected.";
fi
#
# VCD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == VCD -o "$CDTYPE" == ALL \) ]; then
mkdir -p "$VCD/ffmpeg/PAL";
echo "Starting PAL-VCD conversion...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG PAL-VCD Converting..." -e ffmpeg -i "$1" -target pal-vcd "$VCD/ffmpeg/PAL/$basename1.mpg";
echo "PAL-VCD conversion finished.";
else
echo "No PAL-VCD conversion selected.";
fi
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE" == VCD -o "$CDTYPE" == ALL \) ]; then
mkdir -p "$VCD/ffmpeg/NTSC";
echo "Starting NTSC-VCD conversion...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG NTSC-VCD Converting..." -e time ffmpeg -i "$1" -target ntsc-vcd "$VCD/ffmpeg/NTSC/$basename1.mpg";
echo "NTSC-VCD conversion finished.";
else
echo "No NTSC-VCD conversion selected.";
fi
#
# SVCD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == SVCD -o "$CDTYPE" == ALL \) ]; then
mkdir -p "$SVCD/ffmpeg/PAL";
echo "Starting PAL-SVCD conversion...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG PAL-SVCD Converting..." -e ffmpeg -i "$1" -target pal-svcd "$SVCD/ffmpeg/PAL/$basename1.mpg";
echo "PAL-SVCD conversion finished.";
else
echo "No PAL-SVCD conversion selected.";
fi
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE == SVCD -o "$CDTYPE" == ALL \) ]; then
mkdir -p "$SVCD/ffmpeg/NTSC";
echo "Starting NTSC-SVCD conversion...";
time konsole --caption "Converterscript v.0.0.2 - FFMPEG NTSC-SVCD Converting..." -e ffmpeg -i "$1" -target ntsc-svcd "$SVCD/ffmpeg/NTSC/$basename1.mpg";
echo "NTSC-SVCD conversion finished.";
else
echo "No NTSC-SVCD conversion selected.";
fi
#
# XVCD
#
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == PAL \) -a \( "$CDTYPE" == XVCD -o "$CDTYPE" == ALL \) ]; then
mkdir -p "$XVCD/mencoder/PAL";
echo "Starting PAL-XVCD conversion...";
time konsole --caption "Converterscript v.0.0.2 - MENCODER PAL XVCD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 -o "$XVCD/mencoder/PAL/$basename1.mpg" "$1";
echo "PAL-XVCD conversion finished.";
else
echo "No PAL-XVCD conversion selected.";
fi
if [ \( "$MEDIA" == ALL -o "$MEDIA" == VCD \) -a \( "$STANDARD" == ALL -o "$STANDARD" == NTSC \) -a \( "$CDTYPE" == XVCD -o "$CDTYPE" == ALL \) ]; then
mkdir -p "$XVCD/mencoder/NTSC";
echo "Starting NTSC-XVCD conversion...";
time konsole --caption "Converterscript v.0.0.2 - MENCODER NTSC XVCD Converting..." -e mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 -o "$XVCD/mencoder/NTSC/$basename1.mpg" "$1";
echo "NTSC-XVCD conversion finished.";
else
echo "No NTSC-XVCD conversion selected.";
fi
#
# PSP
#
if [ "$MEDIA" == ALL || "$MEDIA" == PSP ]; then
mkdir -p "$PSP";
echo "PSP conversion started...";
time konsole --caption "Converterscript v.0.0.2 - Converting for Sony PlayStationPortable..." -e ffmpeg -i "$1" -f psp -r 14.985 -s 320x240 -b 768 -ar 24000 -ab 32 "$PSP/$basename1.MP4";
echo "Creating thumbnail graphics...";
time konsole --noclose --caption "Converterscript v.0.0.2 - PSP-Thumb Converting..." -e ffmpeg -y -i "$1" -f ljpeg -ss 5 -vframes 1 -s 160x120 -an "$PSP/$basename1.THM";
echo "PSP Conversion finished.";
else
echo "PSP-Conversion not selected.";
fi
#
# Special
#
if [ "$MEDIA" == ALL -o "$MEDIA == "Special" ]; then
mkdir -p "$PSP";
echo "For future special devices... not available for now, so PSP conversion started...";
time konsole --caption "Converterscript v.0.0.2 - Converting for Sony PlayStationPortable..." -e ffmpeg -i "$1" -f psp -r 14.985 -s 320x240 -b 768 -ar 24000 -ab 32 "$PSP/$basename1.MP4";
echo "Creating thumbnail graphics...";
time konsole --noclose --caption "PSP-Thumb Converting..." -e ffmpeg -y -i "$1" -f ljpeg -ss 5 -vframes 1 -s 160x120 -an "$PSP/$basename1.THM";
echo "PSP Conversion finished.";
else
echo "PSP-Conversion not selected.";
fi
echo "Conversions finished.";
--TomcatMJ 10:27, 14. Mär 2007 (CET)
Zurück zur Multimediaübersicht
Zurück zur Shellscripteübersicht
Zurück zu "Videokonvertierung und DVD oder SVCD erstellen"