dvdrip

Software besorgen und anwenden
Post Reply
Message
Author
templer
Posts: 112
Joined: 09. Oct 2001 20:58
Location: Gachenbach
Contact:

dvdrip

#1 Post by templer »

Oh Mann,

wieder Stunden in den Sand gesetzt. ich weiß ja nicht was ich immer falsch mache, aber irgendwie scheint bei mir manches nicht so einfach zu laufen wie bei anderen.
Habe Mplayer, transcode und DVDRip installiert (SuSE8.2). Bei den Einstelungen habe ich bei allen ein OK und es ist alles grün.
ich habe eine DVD in mein Laufwerk, Title 2 ausgewählt, deutsch und angle 1. Dann bin ich auf RIp selekted title.
Es dauerte eine Weile, dann hatte ich unter Projekt/vob 5 Dateien mit der Endung vob. Diese Dateien kann ich mit dem MPlayer abspielen, es ist Ton dabei!
Dann kommt das fenster Clip&Zoom. Hier habe ich einfach VCD, 4:3 PAL ausgewählt und bin auf "Apply resent values".
Beim nächsten Reiter "Subtitles" habe ich nichts gemacht und bin zum Reiter "Trasncode".
Ich will eine VCD erstellen: Container options: (S)VCD gewählt, Video Codec: VCD gewählt. Noch zwei CD's mit grösse 650 MB ausgewählt und auf "Transcode + Split" geklickt.
Es erscheint dann in der Statuszeile:
"Transcoding video -title 2, single pass: initialising
Das dauert eine Weile und dann erscheint ein extra Fenster mit folgender Meldung:

Job 'Multiplexing MPEG - title #2' failed.

Executed command: dr_exec mplex -f 1 -o /home/juergen/filme/film_1/avi/002/film_1-002-%d.mpg /home/juergen/filme/film_1/avi/002/film_1-002.m1v /home/juergen/filme/film_1/avi/002/film_1-002.mpa && echo DVDRIP_SUCCESS

Last output was:


INFO: [mplex] mplex version 2.2.1 ($Date: 2002/02/04 19:06:14 $)
**ERROR: [mplex] File /home/juergen/filme/film_1/avi/002/film_1-002.m1v unrecogniseable!
**ERROR: [mplex] Unable to read from file /home/juergen/filme/film_1/avi/002/film_1-002.mpa.

Tja dann habe ich nach mplex und vcd-Problem gegoogelt, aber scheinbar bin ich der einzige, der es wieder einmal nicht schafft ein Programm richtig zu bedienen.

Kann mir jemand helfen?

Danke Templer
OrdoMilitarisTempli-Moege das Licht mit euch sein

Bob Gomorrha

Re: dvdrip

#2 Post by Bob Gomorrha »

Also lt. google gibt´s zwar das Problem, aber keine Lösung. Zumindest hab ich keine gefunden.

Im Prinzip ist das aber wurscht, weil Du das multiplexen recht einfach von Hand machen kannst.

Wechsle zuerst in einem Terminal in das Verzeichnis wo die *.m1v bzw. *.mpa liegt.
Erstelle in diesem Verzeichnis (z.B. mit kedit oder einem anderen Editor) eine Datei mit dem Namen Template (oder irgendwas) mit dem Inhalt:

CDSIZE=795 (für 700er Rohlinge, 650er entsprechend kleiner wählen)

Abspeichern!

Danach einfach mit tcmplex die mpegs erstellen:

tcmplex -i film.m1v -p film.mpa -o film.mpg -m v -F Template (für VCD)
tcmplex -i film.m2v -p film.mpa -o film.mpg -m s -F Template (für SVCD)

und mit vcdimager die Images:

vcdimager film00.mpg (für VCD)
vcdimager -t svcd film00.mpg (für SVCD)

und brennen mit cdrdao:

cdrdao write --device 0,0,0 --eject videocd.cue

Viel Spass

bg

templer
Posts: 112
Joined: 09. Oct 2001 20:58
Location: Gachenbach
Contact:

Re: dvdrip

#3 Post by templer »

Danke für die Antwort.
Meine .mpa und .m1v Dateien sind nur ein paar byte gross. ich habe alls so gemacht wie Du gesagt hast, und bekam folgende Fehlermeldung:

juergen@odin:~/filme/Pakt_der_Woelfe/avi/002> tcmplex -i Pakt_der_Woelfe-002.m1v -p Pakt_der_Woelfe-002.mpa -o Pakt_der_Woelfe-002.mpg -m v -F template

INFO: using reference profile (VCD)
INFO: profile type is (PAL)
INFO: mixing up parameters from profile (template)
ERROR: unknown parameter (CDSIZE) - ignored

ERROR: File Pakt_der_Woelfe-002.m1v is not a 11172-2 or 13818-2 Video stream.

Kannst Du mir nochmal helfen?

Gruß Templer
OrdoMilitarisTempli-Moege das Licht mit euch sein

Bob Gomorrha

Re: dvdrip

#4 Post by Bob Gomorrha »

Sorry,

das CDSIZE war leider a Blödsinn. maxFileSize lautet der richtige Parameter.

Wenn die m1v und mpa nur ein paar Byte gross sind, ist Dein Fehler schon vorher entstanden.

Überprüf mal, ob transcode überhaupt mit den vob´s zurechtkommt:

transcode -i film.vob -V -x mplayer -y mpeg -F s,3 -b 224 -E 44100 -o test

Danach wieder mplexen. In diesem Fall erstellst Du eine SVCD.

Sag Bescheid, wie das tut!

cu

bg

templer
Posts: 112
Joined: 09. Oct 2001 20:58
Location: Gachenbach
Contact:

Re: dvdrip

#5 Post by templer »

Also - erst mal Dankeschön für deine Hilfe.

Ich hab nun die vob's wie beschrieben mit transcode "umgewandelt" und dann mit dem svcd Befehl umgewandelt.
So weit so gut. Da du dich damit sehr gut auskennst schlage ich dir nun einen "deal" vor:

ich hätte das ganze nun gerne als VCD und im Format 4:3.

ich muss auch nicht das Frontend dvdrip benutzen, wenn ich weiß wie man in der shell die vob's erzeugt, kann ich mir auch ein Skript schreiben, dass dann nacheinander diese Schritte ausführt.
Kannst mir mal kurz die wichtigsten Sachen der Kommandozeile schicken bzw. schreiben? ich weiß dass es eine Hilfe zu transcode gibt, aber ich kenn mich mit codecs und so zeug nicht aus. Und wie zum teufel hole ich mit transcode die vob Dateien von der CD? Und wie sehe ich in der Konsole welches Kapitel ich mir holen muss? Und warum habe ich für das 2 Stunden kapitek 5 verschiedene vob Files erhalten????

Fragen über Fragen!

Wenn Du mir da etwas beibringen könntest....

Ach ja, ein deal hat ja bekanntlich zwei Seiten - ich könnte dann das Ganze auf meine homepage stellen, was ich gelernt habe ;)

In diesem Sinne

Danke und Grüsse von einem in freudiger Erwartung an seine VCD
Templer
OrdoMilitarisTempli-Moege das Licht mit euch sein

Bob Gomorrha

Re: dvdrip

#6 Post by Bob Gomorrha »

Schönen guten Morgen!

OK, gemmas an.

Im Anhang findest Du drei Scripte - divx2vcd, divx2svcd2 und divx2svcd. Kopier die runter in entsprechend benannte Dateien, mach sie mit chmod a+x ausführbar und leg sie in /usr/bin oder /usr/local/bin ab. Die Scripte wirst Du in weiterer Folge brauchen, um die korrekten Clipparameter (die ich selber nie so richtig verstanden habe) berechnen zu lassen.

Der ganze Schmafu ist übrigens nicht von mir sondern von hier: <a href="http://dvdripping-guid.berlios.de" target="_blank"><!--auto-->http://dvdripping-guid.berlios.de</a><!--auto-->
Ich hab sie nur leicht modifiziert, da bei mir die mjpegtools nicht tun.

Die vob´s auf Platte holen, sollte kein Problem sein. Einfach mounten, die Struktur der vobs anschauen und der grösste zusammenhänge Block (vts2-1.vob, vts2-2.vob... oder so heissen die, soweit ich mich erinnere) ist Dein Film. Diese vobs kopierst Du auf Platte.

Als nächstes brauchst Du ein Sample für die Skripte.

transcode -i vob1.vob -x vob -V -y divx5 -o test.avi

Einige Sekunden sollten reichen. Jetzt kommen die Skripte ins Spiel. divx2vcd = VCD, divx2svcd2 = Normgerechte SVCD, divx2svcd = aufgeblasene SVCD (noch bessere Qualität). Von VCD´s würde ich Dir generell abraten, da Du immer 2 CD´s für einen Film brauchst, und VCD Qualität ausser bei actionlosen Frauenfilmen mies ist.

divx2svcd2 test.avi

Es folgen einige Ausgaben auf dem Schirm. Beachte die Zeile, die mit transcode... beginnt. Dort findest Du Deine Werte für die Parameter Z,j,B usw. Die brauchst Du, um die DVD in ein gültiges (S)VCD Format zu bringen.
Diese jene Zeile kannst Du jetzt fast unverändert für Deinen transcode verwenden. (Alles was Pelicula heisst, nennt sich bei uns dummy, test oder so. Der Autor ist Spanier <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle"> )

Nur der Anfang wird verändert:

transcode -i vob1.vob Rest abschreiben.

oder "on the fly"

transcode -i /dev/dvd -T 2,-1 -x dvd Rest BIS AUF "-x mplayer"!!!! abschreiben.

-T 2,-1 steht für 2.Titel bist zum Ende. -T 1,-1 wäre also 1. Titel bist zum Ende. Genaueres auf der transcode HP.

Gut. Nach einiger Zeit solltest Du jetzt Pelicula.m2v (oder test,dummy oder was immer) und Pelicula.mpa vorfinden.
Den m2v kannst Du sogar schon anschauen, natürlich ohne Ton, der ist in der mpa.

Jetzt wie in den vorigen Postings beschrieben mplexen (Achtung auf den -m Parameter: s = SVCD v = VCD) und ide mpegs sind mal fertig.

Sollte die von der Grösse her betrachtet nicht passen kein Problem.

mpgjoin teil*.mpg -o bigfile.mpg (teil* sollte natürlich fortlaufend nummeriert sein)

und danach

mpgtx -3 bigfile.mpg (teilt bigfile in 3 Teile mit dem Namen chunk*.mpg)

OK, ich hoffe ich hab nix vergessen. Ansonsten meldest Dich nochmal.

cu

bg


divx2svcd

<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">

#!/bin/bash

# Este script pasa un Divx a SVCD. Para los archivos temporales se
# necesita al menos 4.5 Gigas (m2v y mpa, los .mpg y los .bin)

DIR=`pwd`
TEMPFOLDER=/tmp/divx2svcd-$RANDOM
TEMPLATE=$TEMPFOLDER/template

# CDSIZE Values. VCDs are write in Mode 2, so the filesizes are the
# the following:
# 74 Min/650Mb ---> CDSIZE=735
# 80 Min/700Mb ---> CDSIZE=795
CDSIZE=795
QUANTUM=7
MAXVIDEORATE=4000000
AUDIORATE=160

if [ $# -eq 0 ]; then
echo "Usage:"
echo " divx2svcd <divxfile>"
exit 1
fi


FILE=$1
if [ "$1" == "`basename \"$1\"`" ]; then
FILE="$DIR/$1"
fi


mkdir $TEMPFOLDER
cd $TEMPFOLDER

# Create a template for bbmpeg encoder
echo "quant_value = $QUANTUM" > $TEMPLATE
echo "max_bitrate = $MAXVIDEORATE" >> $TEMPLATE

echo "Dir: $DIR"
echo "Temp: $TEMPFOLDER"
tcprobe -i "$FILE" > $TEMPFOLDER/info

WIDTH=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /width=(\d+)/ ; print $1' `
HEIGHT=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /height=(\d+)/ ; print $1' `
FPS=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /V: (.+?) fps/ ; print $1' `
FPS=`echo "scale=1 ; $FPS/1"| bc -l`
FRAMES=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /frames=(\d+)/ ; print $1' `
SEGUNDOS_TOTAL=`echo "scale=0 ; ($FRAMES / $FPS)"| bc -l`
HORAS=`echo "scale=0 ; ($SEGUNDOS_TOTAL / 3600)"| bc -l`
MINUTOS=`echo "scale=0 ; (($SEGUNDOS_TOTAL - 3600 * $HORAS)/60)"| \
bc -l`
SEGUNDOS=`echo "scale=0 ; ($SEGUNDOS_TOTAL % 60)"| bc -l`

echo "*************** FILE INFO ***************"
echo "Frame Size: ${WIDTH}x${HEIGHT} - FPS: $FPS"
echo "Length: $FRAMES - Seconds: $SEGUNDOS_TOTAL"
echo "$HORAS hours, $MINUTOS minutes, $SEGUNDOS seconds"

if [ $FPS == "29.9" -o $FPS == "30" -o $FPS == "23.9" ]; then
WIDTH_OUT=480
HEIGHT_OUT=480
MPEG_OPTIONS=s,2,$TEMPLATE
else
WIDTH_OUT=480
HEIGHT_OUT=576
MPEG_OPTIONS=s,3,$TEMPLATE
fi

echo "Salida: $WIDTH_OUT x $HEIGHT_OUT"

# Ahora calculamos los valores pa los bordes.

ANCHO_1_1_OUT=`echo "($HEIGHT_OUT * 4/3)"| bc -l`
ALTO_OUT=`echo "$HEIGHT / ($WIDTH / $ANCHO_1_1_OUT)" | bc -l`
# Redondeamos
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT/1"| bc -l`
# Nos aseguramos de que sea par
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT+$ALTO_OUT%2" | bc -l`

BORDE=`echo "scale=0 ; ($HEIGHT_OUT-$ALTO_OUT)/2"| bc -l`
echo "alto sin bordes: $ALTO_OUT, con borde: $BORDE"

# Borramos Pelicula.m1v y Pelicula.mpa
rm -f Pelicula.m2v Pelicula.mpa


cd $TEMPFOLDER
echo "transcode -i \"$FILE\" -V -x mplayer -y mpeg \
-F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 \
--export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula"
transcode -i "$FILE" -V -x mplayer -y mpeg \
-F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 \
--export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula

RETVAL=$?
if [ $RETVAL -ne 0 ]; then
echo -e "
**** ERROR during transcoding. Error value $RETVAL"
exit 1
fi

cd $DIR

[ -f Pelicula.m2v -a -f Pelicula.mpa ] || exit 1

rm -f Pelicula*.mpg

# Plantilla pa multiplexar
echo "maxFileSize = $CDSIZE" >> $TEMPLATE

#Ahora multiplexamos el .mpg
tcmplex -i Pelicula.m2v -p Pelicula.mpa -o Pelicula.mpg \
-m s -F $TEMPLATE

rm $TEMPFOLDER/*
rmdir $TEMPFOLDER

[ -n "`ls Pelicula*mpg 2> /dev/null`" ] || exit 1

# Y creamos las imagenes...
for i in `ls Pelicula*mpg` ; do
vcdimager -t svcd -c $i.cue -b $i.bin $i
RETVAL=$?
if [ $RETVAL -ne 0 ]; then
echo -e "
**** ERROR creating SVCD images. Error value $RETVAL"
exit 1
fi

done

echo -e "
****** SVCD creation finished successfully"

</font><hr></pre></blockquote>

divx2svcd2

<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">

#!/bin/bash

# Este script pasa un Divx a SVCD. Para los archivos temporales se
# necesita al menos 4.5 Gigas (m2v y mpa, los .mpg y los .bin)

DIR=`pwd`
TEMPFOLDER=/tmp/divx2svcd-$RANDOM
TEMPLATE=$TEMPFOLDER/template

# CDSIZE Values. VCDs are write in Mode 2, so the filesizes are the
# the following:
# 74 Min/650Mb ---> CDSIZE=735
# 80 Min/700Mb ---> CDSIZE=795
CDSIZE=795
QUANTUM=7
MAXVIDEORATE=4000000
AUDIORATE=160

if [ $# -eq 0 ]; then
echo "Usage:"
echo " divx2svcd <divxfile>"
exit 1
fi


FILE=$1
if [ "$1" == "`basename \"$1\"`" ]; then
FILE="$DIR/$1"
fi


mkdir $TEMPFOLDER
cd $TEMPFOLDER

# Create a template for bbmpeg encoder
echo "quant_value = $QUANTUM" > $TEMPLATE
echo "max_bitrate = $MAXVIDEORATE" >> $TEMPLATE

echo "Dir: $DIR"
echo "Temp: $TEMPFOLDER"
tcprobe -i "$FILE" > $TEMPFOLDER/info

WIDTH=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /width=(\d+)/ ; print $1' `
HEIGHT=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /height=(\d+)/ ; print $1' `
FPS=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /V: (.+?) fps/ ; print $1' `
FPS=`echo "scale=1 ; $FPS/1"| bc -l`
FRAMES=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /frames=(\d+)/ ; print $1' `
SEGUNDOS_TOTAL=`echo "scale=0 ; ($FRAMES / $FPS)"| bc -l`
HORAS=`echo "scale=0 ; ($SEGUNDOS_TOTAL / 3600)"| bc -l`
MINUTOS=`echo "scale=0 ; (($SEGUNDOS_TOTAL - 3600 * $HORAS)/60)"| \
bc -l`
SEGUNDOS=`echo "scale=0 ; ($SEGUNDOS_TOTAL % 60)"| bc -l`

echo "*************** FILE INFO ***************"
echo "Frame Size: ${WIDTH}x${HEIGHT} - FPS: $FPS"
echo "Length: $FRAMES - Seconds: $SEGUNDOS_TOTAL"
echo "$HORAS hours, $MINUTOS minutes, $SEGUNDOS seconds"

if [ $FPS == "29.9" -o $FPS == "30" -o $FPS == "23.9" ]; then
WIDTH_OUT=480
HEIGHT_OUT=480
MPEG_OPTIONS=s,2,$TEMPLATE
else
WIDTH_OUT=480
HEIGHT_OUT=576
MPEG_OPTIONS=s,3,$TEMPLATE
fi

echo "Salida: $WIDTH_OUT x $HEIGHT_OUT"

# Ahora calculamos los valores pa los bordes.

ANCHO_1_1_OUT=`echo "($HEIGHT_OUT * 4/3)"| bc -l`
ALTO_OUT=`echo "$HEIGHT / ($WIDTH / $ANCHO_1_1_OUT)" | bc -l`
# Redondeamos
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT/1"| bc -l`
# Nos aseguramos de que sea par
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT+$ALTO_OUT%2" | bc -l`

BORDE=`echo "scale=0 ; ($HEIGHT_OUT-$ALTO_OUT)/2"| bc -l`
echo "alto sin bordes: $ALTO_OUT, con borde: $BORDE"

# Borramos Pelicula.m1v y Pelicula.mpa
rm -f Pelicula.m2v Pelicula.mpa


cd $TEMPFOLDER
echo "transcode -i \"$FILE\" -V -x mplayer -y mpeg \
-F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 \
--export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula"
transcode -i "$FILE" -V -x mplayer -y mpeg \
-F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 \
--export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula

RETVAL=$?
if [ $RETVAL -ne 0 ]; then
echo -e "
**** ERROR during transcoding. Error value $RETVAL"
exit 1
fi

cd $DIR

[ -f Pelicula.m2v -a -f Pelicula.mpa ] || exit 1

rm -f Pelicula*.mpg

# Plantilla pa multiplexar
echo "maxFileSize = $CDSIZE" >> $TEMPLATE

#Ahora multiplexamos el .mpg
tcmplex -i Pelicula.m2v -p Pelicula.mpa -o Pelicula.mpg \
-m s -F $TEMPLATE

rm $TEMPFOLDER/*
rmdir $TEMPFOLDER

[ -n "`ls Pelicula*mpg 2> /dev/null`" ] || exit 1

# Y creamos las imagenes...
for i in `ls Pelicula*mpg` ; do
vcdimager -t svcd -c $i.cue -b $i.bin $i
RETVAL=$?
if [ $RETVAL -ne 0 ]; then
echo -e "
**** ERROR creating SVCD images. Error value $RETVAL"
exit 1
fi

done

echo -e "
****** SVCD creation finished successfully"

</font><hr></pre></blockquote>

divx2vcd

<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">

#!/bin/bash

# Este script pasa un Divx a SVCD. Para los archivos temporales se
# necesita al menos 4.5 Gigas (m2v y mpa, los .mpg y los .bin)

DIR=`pwd`
TEMPFOLDER=/tmp/divx2svcd-$RANDOM
TEMPLATE=$TEMPFOLDER/template

# CDSIZE Values. VCDs are write in Mode 2, so the filesizes are the
# the following:
# 74 Min/650Mb ---> CDSIZE=735
# 80 Min/700Mb ---> CDSIZE=795
CDSIZE=795
QUANTUM=7
MAXVIDEORATE=4000000
AUDIORATE=160

if [ $# -eq 0 ]; then
echo "Usage:"
echo " divx2svcd <divxfile>"
exit 1
fi


FILE=$1
if [ "$1" == "`basename \"$1\"`" ]; then
FILE="$DIR/$1"
fi


mkdir $TEMPFOLDER
cd $TEMPFOLDER

# Create a template for bbmpeg encoder
echo "quant_value = $QUANTUM" > $TEMPLATE
echo "max_bitrate = $MAXVIDEORATE" >> $TEMPLATE

echo "Dir: $DIR"
echo "Temp: $TEMPFOLDER"
tcprobe -i "$FILE" > $TEMPFOLDER/info

WIDTH=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /width=(\d+)/ ; print $1' `
HEIGHT=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /height=(\d+)/ ; print $1' `
FPS=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /V: (.+?) fps/ ; print $1' `
FPS=`echo "scale=1 ; $FPS/1"| bc -l`
FRAMES=`grep '[<!--no-->avilib<!--no-->] V:' $TEMPFOLDER/info | \
perl -e ' $line=<STDIN> ; $line =~ /frames=(\d+)/ ; print $1' `
SEGUNDOS_TOTAL=`echo "scale=0 ; ($FRAMES / $FPS)"| bc -l`
HORAS=`echo "scale=0 ; ($SEGUNDOS_TOTAL / 3600)"| bc -l`
MINUTOS=`echo "scale=0 ; (($SEGUNDOS_TOTAL - 3600 * $HORAS)/60)"| \
bc -l`
SEGUNDOS=`echo "scale=0 ; ($SEGUNDOS_TOTAL % 60)"| bc -l`

echo "*************** FILE INFO ***************"
echo "Frame Size: ${WIDTH}x${HEIGHT} - FPS: $FPS"
echo "Length: $FRAMES - Seconds: $SEGUNDOS_TOTAL"
echo "$HORAS hours, $MINUTOS minutes, $SEGUNDOS seconds"

if [ $FPS == "29.9" -o $FPS == "30" -o $FPS == "23.9" ]; then
WIDTH_OUT=480
HEIGHT_OUT=480
MPEG_OPTIONS=s,2,$TEMPLATE
else
WIDTH_OUT=480
HEIGHT_OUT=576
MPEG_OPTIONS=s,3,$TEMPLATE
fi

echo "Salida: $WIDTH_OUT x $HEIGHT_OUT"

# Ahora calculamos los valores pa los bordes.

ANCHO_1_1_OUT=`echo "($HEIGHT_OUT * 4/3)"| bc -l`
ALTO_OUT=`echo "$HEIGHT / ($WIDTH / $ANCHO_1_1_OUT)" | bc -l`
# Redondeamos
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT/1"| bc -l`
# Nos aseguramos de que sea par
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT+$ALTO_OUT%2" | bc -l`

BORDE=`echo "scale=0 ; ($HEIGHT_OUT-$ALTO_OUT)/2"| bc -l`
echo "alto sin bordes: $ALTO_OUT, con borde: $BORDE"

# Borramos Pelicula.m1v y Pelicula.mpa
rm -f Pelicula.m2v Pelicula.mpa


cd $TEMPFOLDER
echo "transcode -i \"$FILE\" -V -x mplayer -y mpeg \
-F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 \
--export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula"
transcode -i "$FILE" -V -x mplayer -y mpeg \
-F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 \
--export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula

RETVAL=$?
if [ $RETVAL -ne 0 ]; then
echo -e "
**** ERROR during transcoding. Error value $RETVAL"
exit 1
fi

cd $DIR

[ -f Pelicula.m2v -a -f Pelicula.mpa ] || exit 1

rm -f Pelicula*.mpg

# Plantilla pa multiplexar
echo "maxFileSize = $CDSIZE" >> $TEMPLATE

#Ahora multiplexamos el .mpg
tcmplex -i Pelicula.m2v -p Pelicula.mpa -o Pelicula.mpg \
-m s -F $TEMPLATE

rm $TEMPFOLDER/*
rmdir $TEMPFOLDER

[ -n "`ls Pelicula*mpg 2> /dev/null`" ] || exit 1

# Y creamos las imagenes...
for i in `ls Pelicula*mpg` ; do
vcdimager -t svcd -c $i.cue -b $i.bin $i
RETVAL=$?
if [ $RETVAL -ne 0 ]; then
echo -e "
**** ERROR creating SVCD images. Error value $RETVAL"
exit 1
fi

done

echo -e "
****** SVCD creation finished successfully"

</font><hr></pre></blockquote>

Matthias

Re: dvdrip

#7 Post by Matthias »

Ich hab' mal auch bei den Abhängigkeite geschaut.
Den mp2enc konnte ich da aber nicht finden.
Hast du den schon installiert???
Einfach mal in der Shell mp2enc eingeben.

templer
Posts: 112
Joined: 09. Oct 2001 20:58
Location: Gachenbach
Contact:

Re: dvdrip

#8 Post by templer »

Tschuldigung das ich solange nichts habe hören lassen.

Also: ich habe jetzt die mpg's und auch schon eine vcd die mit meinem DVD-Spieler am Fernseher funktioniert.

Weiß jemand zufällig, ob ich 3 189 MB grosse mpg-Dateien zu einer einzigen "verschmelzen" kann. Wenn ja - Wie?
Wenn nein, darf ich mehrere cue- und bin-Dateien auf meine VCD brennen?

@Matthias
Das von Dir angesprochene Programm habe ich auf meinem system, obwohl ich deine Frage / Antwort nicht ganz verstehe....!?

Danke templer
OrdoMilitarisTempli-Moege das Licht mit euch sein

Post Reply