ibbi hat geschrieben:Soweit ich das durch Googlen verstanden habe, steht im Transport-Stream eine (feste und falsche) Bitrate von 15000000 bits/sec, und diese wandert auch ins demuxte .mpg
Richtig. Es sei denn man verwendet ein Demuxer-Programm, das die minimale, maximale und mittlere Bitrate schon ausrechnet und dann das File entsprechend patchen kann. Also zum Beispiel ProjectX oder PVAStrumento.
so dass ein Player, der Bitrate und Dateilänge in Lauflänge umrechnet, auf eine viel zu kurze Spielzeit kommt.
Diese Rechnung ist ja sowieso immer nur eine Schätzung. Da eine DVB-Datei eine variable Bitrate hat, kann die Angabe also nur stimmen, wenn am Anfang die korrekte mittlere Datenrate eingetragen wird. Nimmt man die maximal vorkommende Datenrate oder sonst eine andere Angabe, dann stimmt alles nicht mehr. Diese "Berechnung" der Länge ist also ein äußerst fragwürdiges Verfahren des Players, denn die Bitratenangabe ist nicht wirklich definiert, was darin zu stehen hat.
Die Frage ist, wie man es besser machen kann. Am besten ist, man schaut in die Presentation Timestamps (PTS). Ein PTS-Wert am Anfang und ein PTS-Wert am Ende ausgelesen ergibt in der Differenz einen ziemlich genauen Wert der Dauer -- es sei denn, der Film hat zwischendrin eine Lücke, z.B. wo Werbung weggeschnitten wurde.
Aus diesem Grund erzeugt ein ordentliches Demux-Programm eine komplett neue Zeitlinie, die ab 0:00:00 durchnumeriert ist und lückenlos verläuft. Dann stimmen auch solche Zeitangaben wieder.
Ich weiß nicht, ob es beim muxen stören würde, wenn das .mpg-File eine Bitrate von 3150000 bits/sec hätte
Nein, und wie gesagt machen das ordentliche Demuxer sowieso von selbst.
mplex bricht stets mit einem Fehler ab:
Nun, das deutet darauf hin, dass entweder der Empfang bei Dir schon sehr schlecht ist, so dass viele Lücken im Datenstrom des Topfield entstanden sind, oder der Demuxer, den Du verwendest, taugt halt nichts und baut seinerzeit einen ungültigen Datenstrom. ProjectX und PVAStrumento korrigieren solche Fehler im Datenstrom, so dass anschließend auf jeden Fall ein gültiges MPEG-File vorliegt. Die korrigierten Stellen äußern sich allerdings durch Lücken im Bild. Dann solltest Du aber den Fehler an der Quelle beheben, sprich den Empfang verbessern (größere Schüssel, Schüssel besser ausrichten, bessere Kabel, etc.), anstatt später die Fehler mühselig auszukorrigieren.
Insgesamt kann ich Deine Beweggründe verstehen, ein paar kleine Tools verwenden zu wollen. Aber auf der anderen Seite hat das schon seinen Grund, warum gerade die Programme ProjectX und PVAStrumento so gerne verwendet werden: sie liefern das beste Ergebnis ab. Wenn Du hier selber forschen willst, dann erfindest Du das Rad neu. Das haben vor Dir schon andere probiert und doch nichts besseres gefunden.
Ich habe anfangs auch lange gesucht, bis ich ein halbwegs akzeptables Verfahren gefunden hatte, meine DVB-Filme auf DVD zu bekommen. Optimal ist das noch lange nicht, und so halte ich immer die Augen auf nach was Besserem. Aber selbst gegen Geld gibt es keine so wirklich gute Lösung. Darum bleibe ich bei meinem Ablauf: ProjectX -> Mpeg2Schnitt -> IfoEdit. Für jeden Schritt gibt es entsprechende Alternativen:
Statt ProjectX: PVAStrumento
Statt Mpeg2Schnitt: Cuttermaran
Statt IfoEdit: GUIforDVDAuthor (kostenlos) oder DVD-Lab (kostet).
Wer mehr mit einem kommerziellen Videoschnittprogramm arbeiten will, muss meist dennoch demuxen und muxen, also z.B. ProjectX und mplex. Dann kann man auch direkt mit so Programmen wie Magix Video Deluxe, Pinnacle Studio, Ulead Video Studio etc. arbeiten und dort dann das Smartrendering verwenden, also ohne Neu-Encodierung und dem damit verbundenen Qualitätsverlust. Ich selbst bin dabei mit dem Magix-Produkt ganz zufrieden. Aber eines klappt bei keinem dieser Programme bis heute: nämlich dass man problemlos DVB-Transportstreams einlesen, von Werbung befreien und auf eine DVD brennen kann. Das schreiben die zwar schon seit zig Versionen auf die Packung, aber bisher hat es noch immer unsynchrone DVDs ergeben. Das einzige Programm, dass das wohl halbwegs gut und in einem Rutsch hinbekommt, aber dafür auch nichts anderes kann, ist DVR Studio (Pro) von Haenlein-Software.
Tschau,
Hagge