PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : divx encode Skript



Martin Ament
28-08-2002, 19:26
Hi,

ich habe noch nicht so viel mit Shellscripten gearbeitet.
Ich wollte jetzt unter Linux meine Videofiles nach Divx umwandeln, und konnte kein GUI Programm finden. Da ich immer eine große Menge an Files zum umwandeln habe habe ich versucht dieses mit Hilfe eines Skripts zu machen.

Wollte das hier mal posten, da ich nicht weiß ob alles so ok ist, oder ob es noch bessere und Userfreundlichere Alternativen gäbe.

----

#!/bin/bash
echo --------------------------------------
echo - 'Martin Ament martin.ament@gmx.de' -
echo - 'Skript um Videofile zu erstellen' -
echo --------------------------------------
echo Version 0.1
echo
echo 'Es werden alle files mit der Endung *.avi aus diesem Verzeichnis nach ../divx/*.divx konvertiert '
echo
echo ' Für die Generierung der Divxfiles ist der Mencoder aus dem mplayer Packet notwendig.'
echo ' Laden Sie dieses gegebenfalls von http://www.mplayerhq.hu'
echo
echo " Druecken sie Return um forzufahren oder [STRG]+[C] um abzubrechen. "
read input



test -d ../divx
if [ "$?" = "1" ]; then
mkdir ../divx
echo " Es ist kein Ausgabeverzeichnis vorhanden, ich erstelle das Verzeichnis "
fi


for i in *.avi;
do

mencoder $i -cache 8000 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1500:vhq -oac mp3lame -lameopts vbr=2:br=128:ratio=1:vol=0:q=0 -o ../divx/$i.divx
done
exit 1;
-------------

fork
28-08-2002, 22:13
Das Script scheint syntaktisch fast richtig zu sein. Meine Verbesserungsvorschlaege:



#!/bin/bash

INDIR="."
OUTDIR="../divx"
LAMEOPTS="vbr=2:br=128:ratio=1:vol=0:q=0"

Variablen vereinfachen die nachträgliche Änderung

echo --------------------------------------
echo - 'Martin Ament martin.ament@gmx.de' -
echo - 'Skript um Videofile zu erstellen' -
echo --------------------------------------
echo Version 0.1
echo
echo 'Es werden alle files mit der Endung *.avi aus diesem Verzeichnis nach ../divx/*.divx konvertiert '
echo
echo ' Für die Generierung der Divxfiles ist der Mencoder aus dem mplayer Packet notwendig.'
echo ' Laden Sie dieses gegebenfalls von http://www.mplayerhq.hu'
echo
echo " Druecken sie Return um forzufahren oder [STRG]+[C] um abzubrechen. "
read input

Das ist laestig wenn das schon angezeigt werden soll dann auf Wunsch nur mit
--help/-h, ich weiss das ist dein Bier, aber ich finde sowas laestig

test -d ../divx
if [ "$?" = "1" ]; then Zeichenkettenvergleichsoperator: ==!!!
mkdir ../divx
echo " Es ist kein Ausgabeverzeichnis vorhanden, ich erstelle das Verzeichnis "
fi
kuerzer(Vorhandenes Verzeichnis wird ignoriert):
mkdir -p || echo "Kann Ausgabeverzeichnis nicht erstellen!" && exit 1


cd $INDIR
for i in *.avi;
do
mencoder $i -cache 8000 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1500:vhq \
-oac mp3lame -lameopts $LAMEOPTS -o $OUTDIR/$i.divx
done
exit 0;
Warum sollte hier 1 stehen(fehlerhafter Abbruch)?