![](https://seccdn.libravatar.org/avatar/e4dd9160371e324d4fa49c105b89b175.jpg?s=120&d=mm&r=g)
Hallo nochmal, ich habe in der Zwischenzeit (durch Vergewaltigung des dd-Befehls meine Partitionstabelle geschreddert, dank halbwegs aktueller Backups sie jedoch wieder aufsetzen können sowie) nochmal etwas gegoogelt und probiert. Ich stieß dabei u.A. auf folgenden Link: http://gentoo-wiki.com/Index_Talk:HOWTO_Create_a_DVD Der Author dieses Beitrags verwendet mencoder, um aus avi-Files NTSC-DVDs zu erzeugen. Von dort hab ich mir den Videofilter harddup (man mencoder: "Only useful with MEncoder. If harddup is used when encoding, it will force duplicate frames to be encoded in the output. This uses slightly more space, but is necessary for output to MPEG files or if you plan to demux and remux the video stream after encoding. Should be placed at or near the end of the filter chain unless you have a good reason to do otherwise") sowie den -noskip-Schalter abgeguckt. Weiterhin hab ich einfach mal "blind" versucht, alle diese Optionen, die ffmpeg intern beim dvd-target setzt, auch dem mencoder auf den Weg mitzugeben. Aktuell lautet meine Befehlskette damit <cut> nice --15 /usr/bin/mencoder tv:// -tv driver=v4l2:norm=PAL:device=/dev/video0:input=0:quality=0:width=720:height=576:channel=E5:adevice=/dev/dsp1:immediatemode=0 -ovc lavc -lavcopts vcodec=mpeg2video:vbitrate=6000:vratetol=9000:aspect=4/3:keyint=132:acodec=ac3:abitrate=448:vrc_maxrate=9000:vrc_buf_size=1835 -oac lavc -vf crop=690:552,pp=lb,hqdn3d=4:3:6,scale=720:576,harddup -noskip -af lavcresample=48000:volume=8 -srate 48000 -endpos 00:04:00 -of mpeg -mpegopts format=dvd:init_vpts=500:init_apts=500:muxrate=10080 -o "/home/benni/untitled/Phoenix_`/bin/date +%a_%d.%b.%G_%H%M%S`.mpeg" </cut> damit nimmt er auf ohne Fehlermeldungen, und tcprobe zeigt exakt das gleiche, wie wenn ich hinterher nochmal ffmpeg mit dem dvd-target drüberlaufen lasse. Leistungsmäßig stößt damit die Kiste (ein Acer Travelmate 290, 1.5 GHz centrino, 512 MB Ram, 60er HDD + 160 extern) jedoch an ihre Grenzen, daher der nice-Level, ansonsten schafft er's nicht, in Echtzeit zu encoden. Ich werde das ganze morgen mal mit nem 30-min-Recording ausprobieren und vorher noch ein init 3 machen ... Den DVD-Player, um den es mir jedoch eigentlich ging, hab ich im Moment nicht zur Hand. Ich werde das nochmal Schritt für Schritt ausprobieren, wenn ich mal wieder zu Hause bin - danke, Maik, für Deine Tips und Anregungen - und dann ggf. nochmal posten, wenn's dann endgültig klappt oder eben auch nicht. Danke nochmals + viele Grüße Benni Am Samstag, 1. April 2006 10:16 schrieben Sie:
Hi,
0n 06/03/31@15:48 Benjamin Dombert told me:
Am Freitag, 31. März 2006 11:29 schrieb Maik Holtkamp:
0n 06/03/30@18:18 Benjamin Dombert told me:
Ich kenne mencoder/mplayer nur recht oberflaechlich.
ich nehme gelegentlich TV-Sendungen mit meiner Terratec Cinergy 400 TV mobile auf. Dazu nutze ich das Frontend kalva, welches - von mir etwas modifiziert, da standardmäßig nach mpeg4/DIVX konvertiert wird - Konsolenbefehle á la
<cut> echo "/usr/bin/mencoder tv:// -tv driver=v4l2:norm=PAL:device=/dev/video0:input=0:quality=0:width=720:h eigh t=576:channel=SE9:adevice=/dev/dsp1:immediatemode=0 -ovc lavc -lavcopts vcodec=mpeg2video:vbitrate=2600:vratetol=9000:aspect=1.31765:vhq:keyi nt=1 32:acodec=ac3:abitrate=160
2600 sind Schnitt, oder?
kA; man mplayer sagt dazu nur:
vbitrate=<value> Specify bitrate (pass 1/:2) (default: 800).
versuch es mal einfach wegzulassen. Der default von 800 ist IMHO fuer mpeg4 ok, aber bei 720x576 mpeg2 ist auch 2600 zu wenig.
Ich wuerde mehr nehmen.
Auch 160 kbit fuer den Sound sind bei ac3 (zumindest bei 5.1) sehr mager. 384 ist hier gebraechlicher.
OK, hier werde ich bei den nächsten Aufnahmen mal mit verschiedenen Werten experimentieren.
-oac lavc -vf crop=690:552,pp=lb,scale=720:576,hqdn3d=4:3:6 -of mpeg -mpegopts format=dvd -endpos 00:01:00 -o \"/home/benni/test/VOX_\`/bin/date +%a_%d.%b.%G_%H%M%S\`.avi\"" | at 17:41 31.03.2006 </cut>
Ich wuerde tippen es liegt an der sample Frequenz des Sound. Aus TV Karten bekommt man haeufig 32000 oder 44100. Auf dvd ist aber nur 48000 erlaubt.
ooops ... sorry, hier ist ein Tip-/Kopierfehler: Ich habe hier verschiedene Kalvas drauf und war an dieser Stelle beim abschicken etwas voreilig. Natürlich hab ich bei den genannten Problemfällen noch den Ausdruck
<cut> -af lavcresample=48000:volume=6 -srate 48000 </cut>
in der Filterkette mit drin. Den Ton frisst mein DV-444 ja auch bislang anstandslos...
Was sagt tcprobe -i <file> zum dem Teil das Probleme macht?
ich habe hier einen Streifen von sowohl vor als auch nach dem ffmpeg-Durchlauf. Bei der aufgenommenen Fassung sagt es:
[tcprobe] MPEG program stream (PS) [tcprobe] summary for ./Schnitt-Folge1-alt.mpeg, (*) = not default, 0 = not detected import frame size: -g 720x576 [720x576] aspect ratio: 4:3 (*) frame rate: -f 25.000 [25.000] frc=3 PTS=0.1800, frame_time=40 ms, bitrate=8000 kbps audio track: -a 0 [0] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000] PTS=0.1020, bitrate=128 kbps -D 1 --av_fine_ms 37 (frames & ms) [0] [0]
Nach dem re-encodieren durch ffmpeg:
tcprobe -i ./Schnitt-Folge1.mpeg [tcprobe] MPEG program stream (PS) [tcprobe] summary for ./Schnitt-Folge1.mpeg, (*) = not default, 0 = not detected import frame size: -g 720x576 [720x576] aspect ratio: 4:3 (*) frame rate: -f 25.000 [25.000] frc=3 PTS=0.5000, frame_time=40 ms, bitrate=9000 kbps audio track: -a 0 [0] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000] PTS=0.5000, bitrate=448 kbps -D 0 --av_fine_ms 0 (frames & ms) [0] [0]
Sieht eigentlich beides gut und normgerecht aus. Da der Ton nur 2 kanalig ist, sollte auch die ac3 Bitrate passen.
Ich kenne ffmpeg nur vom lesen der transcode Liste und des transcode plugins fuer ffmpeg. Selber benutze ich fuer mpeg2 kodieren (von dv ab und an) aus alter Gewohnheit nur die mjpegtools.
Auch in transcode gibt es diesen Schalter --export-profile dvd-pal, der wenn mich nicht alles taeuscht [1]
außer den anderen Bitraten kann ich daraus keinen Unterschied erkennen ..:-(
BTW: Die Endung .avi ist recht ungewoehnlich fuer mpeg2.
<cut> ffmpeg -i /home/benni/test/filmblabla.mpeg -target dvd ./filmblabla-ffmpeg.mpg </cut>
Vielleicht reicht es das Orginal einfach neu zu muxen:
werde ich auch bei Gelegenheit mal testen. Schaden kann's ja jedenfalls nicht!
Glaube nicht mehr das das hilft :(.
mplayer -dumpfile video.m2v -dumpvideo <file> mplayer -dumpfile audio.ac3 -dumpaudio <file> mplex -f 8 -o film.mpg audio.ac3 video.m2v
Sollte zumindest das neu encodieren (=schlechtere Qualitaet) sparen.
Noch etwas: Ich habe mir mal die Quelldatei ffmpeg.c angeschaut: Wenn man es mit -target dvd aufruft, setzt es intern die folgenden Werte (Kommentare von den Entwicklern): <cut> opt_video_codec("mpeg2video"); opt_audio_codec("ac3"); opt_format("dvd");
opt_frame_size(norm ? "720x480" : "720x576"); opt_frame_rate(frame_rates[norm]); opt_gop_size(norm ? "18" : "15");
video_bit_rate = 6000000; video_rc_max_rate = 9000000; video_rc_min_rate = 0; //1500000; video_rc_buffer_size = 224*1024*8;
mux_packet_size= 2048; // from www.mpucoder.com: DVD sectors contain 2048 bytes of data, this is also the size of one pack. mux_rate = 10080000; // from mplex project: data_rate = 1260000. mux_rate = data_rate * 8
audio_bit_rate = 448000; audio_sample_rate = 48000; </cut>
[1] diese Einstellungen im ffmpeg aktiviert.
Ich weiss nicht wie es bei mencoder ist, aber transcode reagiert allergisch, wenn man ffmpeg bei Verwendung des dafuer vorgesehenen dvd profils noch weitere Optionen vorschreiben will.
Am haeufigsten macht sich das durch eine zu hohe peak-bitrate > 10 Mbit/sec bemerkbar[2]. Aeltere player bringt das dann aus dem Tritt. Ich wuerde einfach versuchen so wenig Optionen wie Moeglich anzugeben. Lass die einfach mal die Angaben zu vbitrate und vratetol weg. Das dvd profil setzt da ja schon von Haus aus vernuenftige Werte, wenn Du dann manuell dazwischen funkts, koennte das die Optionen fuer den Murks sein.
Wenn ich das mit dem ffmpeg source so richtig sehe, brauchst Du eigentlich kaum nocht was angeben. Auch die Audio sample rate wird "von Haus aus" entsprechend vordefiniert. Deine Filer (hqdn3d und pp=lb) sollten aber stehen bleiben, analog ist meist recht verrauscht und da kann sowas bitrate sparen helfen.
Alles andere schmeiss erstmal raus. Auch Deine aspect ratio ist so auf DVD nicht zulaessig, da es sich IMHO auch nicht wirklich um einen spruebaren Unterschied zu richtigem 4:3 (1.33) handelt, wuerde ich das auch rausschmeissen.
Videocodec, Audiocodec, Format, Frame size, norm müssten bei meinem mencoder-Aufruf ja damit übereinstimmen. Die Video-Bitrate erscheint mir nicht als des Problems Kern, da der Player die DVDs auch dann nimmt, wenn ich ffmpeg anweise, eine niedrigere Bitrate als die hier voreingestellte zu nehmen. Ton - wie gesagt - lief ohne Probleme. Mencoder kennt bei den -mpegopts noch die Optionen vrc_maxrate, vrc_minrate, vrc_buf_size (soll lt. man mencoder bei DVDs 1835 sein), muxrate (lt. man mencoder standardmäßig 1800 kb/s). Für die mux_packet_size kann ich bei mencoder keine Entsprechung finde. Würde es sich ggf. lohnen, mit diesen Optionen auch mal zu spielen?
Wie gesagt ich wuerde diese ganzen Optionen erstmal weglassen. ffmpeg hatte lange Zeit generelle Probleme mit einer zu hohen peak bitrate. Erst durch Einfuehrung des dvd-profils haben sie das in den Griff bekommen (jedenfalls habe ich lange nichts mehr von diesem Problem gehoert). Wenn man dann ausserhalb dieses Profils arbeitet, kann das das alte Verhalten wieder zu Tage foerdern.
Und dann kann man bei den -mpegopts (MPEG Muxer) nochmal vbitrate und vframerate einstellen. Muss ich das auch noch tun oder reicht es, wenn die Bitrate schon bei den lavcopts angegeben ist?
Der muxer muss AFAIK nur von der bitrate wissen, um einen buffer underrun zu vermeiden bei der framerate ist es wohl aehnlich.
Soweit ich die Werte im source interpretieren kann, sind das durchaus vernuenftige ddefaults und bei den Werten die boehmische Doerfer fuer mich sind, wuerde ich mich drauf verlassen, dass die ffmpeg Manschaft da schon was vernuenftiges eingetragen hat.
BTW: Ich weiss das ffmpeg schneller als die mjpeg tools ist, aber was ist das fuer ein Hirsch, mit dem Du das machst?
Auf einem 3000 Athlon(@2,4,32bit) bekomme ich hier mit den mjpegtools @720x576 so zwischen 12 und 18 frames/sec hin. Da mein DV-Quellmaterial recht sauber ist, verwende ich dabei keine gefraesigen Filter in der Kette.
[2] Es gibt IIRC auch irgendein tool, dass einem solche peaks anzeigt, habe nur leider grad eine Kiste, auf der nix multimediamaessiges installiert ist, vielleicht mpginfo aus mpgtx?