1

Topic: Frage zu I-Frames/ neu kodieren

Hi,
mal ne Frage, wie erstelle ich ein neues File mit möglichst vielen I-Frames. Habe bereits einige Versuche gemacht, aber irgendwie klappt da was nicht. Hintergrund, ich versuch grad mit dem TSDoctor einen TV mitschnitt , weiter zuschneiden, hab aber da das problem, das plötzlich sekunden lang keine I-Frames mehr kommen, die aber der TSDOC zum schneiden braucht.

Bei meinen Versuchen jetzt, hatte ich auch nur alle 10sek ein I-Frame. Zumindest erkannte der Doc nur alle 10sek eines.

2

Re: Frage zu I-Frames/ neu kodieren

1. möglichst viele = alle = max GOP size auf 1, ist i.d.R. aber ne doofe Idee, weil intra only encoding (= nur I frames) recht viel Platz frisst (generell wird der I-Frame Abstand über die GOP size geregelt)
2. normalerweise schneidet man vor oder während des Encodens, nicht danach
3. würde auch mal versuchen, ob es eventuell klappt, das Material nach MKV zu remuxen und dann mit MKV Cutter zu schneiden


Cu Selur

3

Re: Frage zu I-Frames/ neu kodieren

Hi,
zu 1. das hat mir schonmal sehr geholfen
zu 2. ich weis, ich will ja TV Rips verarbeiten, und da die privaten , das ja nicht wollen, hab ich da öfters mal probleme
zu 3. muss ich bei gelegenheit mal testen.

Hab da noch ne Frage, ich hab interlace TV Material, habe De(interlace) deaktiviert. aber es scheint kein Interlace rauszukommen. Hab ich da was übersehn? Würde nämlich grad so versuchen..

TV Rips->hybrid ultrafast, crf 5 ->ts remuxer-> TS Doctor schneiden-> dann final kodieren mit Hybrid.

4

Re: Frage zu I-Frames/ neu kodieren

Hab da noch ne Frage, ich hab interlace TV Material, habe De(interlace) deaktiviert. aber es scheint kein Interlace rauszukommen. Hab ich da was übersehn? Würde nämlich grad so versuchen..

a. interlaced ist eher exotisch, hast Du mal Hybrids interlace check laufen lassen um zu checken ob es eventuell progressives Material ist, was interlaced encoded ist?
b. ohne genauer zu wissen was Du machst, glaub ich nicht, das Hybrid da was falsch macht smile

5 (edited by MarcusW 2014-09-22 15:19:37)

Re: Frage zu I-Frames/ neu kodieren

Kann auch sein das ich da wieder was durcheinander werfe.... aber ich dachte die privaten senden hd nur in halb bildern und nicht in voll bildern.

achja , hab jetzt mal wieder mitn de(interlacer) laufen lassen, mit den edi threads -1 ist es wieder stehn geblieben....


was ich mache wink, versuch grad die hd aufnahme von vox von arrow zu schneiden und zu archivieren

6

Re: Frage zu I-Frames/ neu kodieren

Wie gesagt, Hybrid hat eine Analyseoption (direkt neben der Deinterlacer-Wahl),....

7

Re: Frage zu I-Frames/ neu kodieren

Hi,
Input scan type : top field first

was macht hybrid dann damit, wenn ich den de(interlacer) ausschalte, also auto auf off...  es kommt dann trotzdem was mit 25 fps raus... aber man sieht halt die interlace streifen.....

Aber funktioniert top, endlich konnt ich das widerspenstige TS File schneiden...

Kann ich Hybrid dazu überreden, das interlace material zubehalten und nur neu I-Frames zu berechnen?

8

Re: Frage zu I-Frames/ neu kodieren

es kommt dann trotzdem was mit 25 fps raus... aber man sieht halt die interlace streifen.....

.. und das ist doch das was Du willst, oder?

Kann ich Hybrid dazu überreden, das interlace material zubehalten und nur neu I-Frames zu berechnen?

Du hast im Encoder auch den interlacing support aktiviert, oder? (ansonsten enkodierst Du weil Du das automatische Deinterlacing aus hast, ja interlactes Material progressive und machst es damit kaputt)

9

Re: Frage zu I-Frames/ neu kodieren

yeb, ich glaube das wars, musste erstmal suchen wo ich interlace einstelle... nu ist es durch gerannt.... konnte es schneiden, und nun wird es normal mit x264 kodiert.... mit nen sauberen schnitt

10

Re: Frage zu I-Frames/ neu kodieren

So, soweit klappt das nun, ist zwar aufwendiger... aber der Schnitt ist nun sauber an der Stelle wo er sein soll.

11

Re: Frage zu I-Frames/ neu kodieren

Fällt mir noch ein:
Falls das Material was Du als Input hast nicht H.264 sondern MPEG-2 Material ist, würde ich:
1. das Material durch Project X jagen (liefert als Output RAW streams)
2. die Raw Streams in Cuttermaran laden und schneiden (dieser nimmt RAW streams als Input, wirft aber gemuxtes Material aus)
3. mit Hybrid reencoden.

12

Re: Frage zu I-Frames/ neu kodieren

Hi,
das hatten wir doch schon mal, ProjectX geht halt nur für SD TV Rips und nicht für HD TV Rips...
So hatte ich es davor gemacht, bevor ich angefangen habe, alles auf HD aufzunehmen....

mfg

13

Re: Frage zu I-Frames/ neu kodieren

Es geht nicht um die Auflösung sondern um das Format des Videos.
Project X und Cuttermaran können MPEG-2 unabhängig von der Auflösung.
Sie können kein H.264, VC-1 oder sonst was.

14

Re: Frage zu I-Frames/ neu kodieren

Ne, ist alles h.264, kenn das gar nicht anderes unter HD

Mal ne Frage, was bewirkt BOB beim De(interlacing) . So ganz blick ich die englische Beschreibung nicht. Verdoppelt er dann nur die Frames wie beim Speedchance?

15

Re: Frage zu I-Frames/ neu kodieren

Bob interpoliert aus jedem Halbbild (Field) ein ganzes Frame, was dann zur Folge hat das man doppelt so viele ganze Frames hat wie vorher, weshalb auch die Bildwiederholfrequenz (Frame rate) verdopplet wird.

16

Re: Frage zu I-Frames/ neu kodieren

Nun werd ich allmählich wirklich wahnsinnig.... was macht man, wenn man beim progress über 100% hinausschiesst???  irgendwie kodiert er weiter und kodiert weiter... aktuell bei 101.45....

17

Re: Frage zu I-Frames/ neu kodieren

Kein DebugOutput, keine Details. -> kann ich nicht wirklich mehr zu sagen als:
Das passiert, wenn aus irgendeinem Grund Hybrid die Anzahl der Frames nicht kennt. smile

18

Re: Frage zu I-Frames/ neu kodieren

Hi,
ich habe keine Ahnung, was ich anderes gemacht habe, als bei den Files die ich davor durchgelassen habe.

Zumindest passt die Framerate überhaupt nicht, wenn ich De(interlace) und bob anschalte . (Bei der Arrow Aufnahme von Vox hab ich nun 50 FPS progessiv, und es läuft ganz normal)

Framerate müsste er eigentlich richtig erkannt haben, mit 25 fps interlace.

19

Re: Frage zu I-Frames/ neu kodieren

1. Frame rate ist nicht gleich Frameanzahl.
2. leider nicht genug Details um mir auch nur die Chance zu gegen dies nachzustellen.
-> ich geh jetzt ins Bett und falls Du mehr Details lieferst guck ich da morgen mal drauf.
(Prinzipiell sollte man im 'Current Frame Rate / Count'-Bereich in Filtering-Tab sehen welchen Effekt ein Deinterlacer auf Framerate und Frameanzahl hat.)

Cu Selur

20 (edited by MarcusW 2014-09-29 14:13:26)

Re: Frage zu I-Frames/ neu kodieren

Eigentlich passiert das richtige, die Framerate und die Framecounts werden auf das doppelte erhöht. Hat ja auch schon geklappt so mit der Einstellung. Bei den Mitschnitt vom Disney Channel aber gings irgendwie nicht. Hatte mal dann bei 120 % abgebrochen, das File einfach mal gemuxxt, und es ging wie in Zeitlupe....

Kann ich eigentlich den 64bit Mencoder irgendwie verwenden? Der befindet sich ja auch im Ordner, aber wenn ich unter Tools den Mencoder auf die 64 bit.exe stelle. Gehts nicht weiter.

Noch was, wenn ich Interlace Material habe, und im X264 Panel auch Interlace aktiviere, kann es sein, das ich dann trotzdem ganz anderes Material rausbekomme? Mir ist aufgefallen, das ich diese Kammbildung dann unter TSDocter so gut wie gar nicht mehr wahrnehme, oder bild ich mir das nur ein?



PS
Noch was, sobald ich Interlace im X264 Reiter aktiviere, fügt er auch --nal-hrd hinzu. Ich bekomme aber beim Start ne Fehlermeldung das x264 [warning]: NAL HRD parameters require VBV parameters

so sieht mein aufruf gerade aus

x264.exe" --preset ultrafast --tune fastdecode --crf 5 --profile high --keyint 1 --tff --nal-hrd vbr --non-deterministic --colormatrix bt709 --input-csp i420  --fps 25000/1000 --input-res 1920x1080 --output "P:\remuxed_14_10_49_3410_02.264" -

21

Re: Frage zu I-Frames/ neu kodieren

Kann ich eigentlich den 64bit Mencoder irgendwie verwenden?

Macht Hybrid automatisch. Es ruft wenn möglich die 64bit anstatt der 32bit binary auf.
Wenn z.B. Avisynth verwendet wird kann nur 32bit mencoder verwendet werden.

Noch was, wenn ich Interlace Material habe, und im X264 Panel auch Interlace aktiviere, kann es sein, das ich dann trotzdem ganz anderes Material rausbekomme? Mir ist aufgefallen, das ich diese Kammbildung dann unter TSDocter so gut wie gar nicht mehr wahrnehme, oder bild ich mir das nur ein?

Unterschiedliche Arten wie man interlactes Material in H.264 kodieren kann.
1. Macroblock-adaptive frame-field (MBAFF)
Interlacing wird pro Makroblock (16x16 Pixel) entschieden und entsprechend kann progressive und interlaced gemixed encoded werden, was es erlaubt effektiver zu kompirieren.
2. Picture-adaptive frame-field coding (PAFF or PicAFF)
Es wird wie bei MPEG-2 field basiert gespeichert, was ineffizienter ist.
Da beide Methoden von H.264 Decodern verstanden werden müssen haben sich die x264 Entwickler entschieden, nur MBAFF zu unterstützen. Auf Grund der Makroblock-Adaptivität kann es durchaus sein, dass man bei mit MBAFF kodiertem Material die Interlacedstreifen weniger wahrnimmt.

Eigentlich passiert das richtige, die Framerate und die Framecounts werden auf das doppelte erhöht. Hat ja auch schon geklappt so mit der Einstellung. Bei den Mitschnitt vom Disney Channel aber gings irgendwie nicht. Hatte mal dann bei 120 % abgebrochen, das File einfach mal gemuxxt, und es ging wie in Zeitlupe....

Kein DebugOutput, keine genaue Beschreibung, kein Sample,... -> da kann ich einfach nicht helfen. smile

Noch was, sobald ich Interlace im X264 Reiter aktiviere, fügt er auch --nal-hrd hinzu. Ich bekomme aber beim Start ne Fehlermeldung das x264 [warning]: NAL HRD parameters require VBV parameters

so sieht mein aufruf gerade aus

x264.exe" --preset ultrafast --tune fastdecode --crf 5 --profile high --keyint 1 --tff --nal-hrd vbr --non-deterministic --colormatrix bt709 --input-csp i420  --fps 25000/1000 --input-res 1920x1080 --output "P:\remuxed_14_10_49_3410_02.264" -

Dir ist der Unterschied zwischen einer Warn- (warning) und einem Fehlermeldung (error) klar oder?
Da Hybrid davon ausgeht, dass man i.d.R. nicht unrestricted Material erstellen will, sondern Material welches einem Profile@Level entspricht wird automatisch '--nal-hrd' hinzugefügt. Da Du aber 'unrestricted' Material erstellen willst, deaktiviert x264 '--nal-hrd' automatisch wieder, da dieses VBV Beschränkungen braucht und gibt, damit der User dies weis, die zitierte Warnmeldung. smile
-> Wenn Du weißt was Du tust also kein Grund zur Besorgnis.

Nur mal so am Rande:
Wenn Du schon Reencodest, warum deinterlaced Du nicht?
Interlacing ist meiner Ansicht nach eine Methode des Speicherns von Daten, die schon vor Jahren hätte aussterben müssen, bin deshalb immer wieder verwundert, warum normale User interlactes Material erstellen.

Cu Selur

Ps.: Wenn Du 'keyint 1' verwendest ist Hybrid eventuell nicht das sinnigste Frontend für x264, da es das AVC-Intra profile, welches Extra für so einen Fall gedacht ist, nicht unterstützt.

22

Re: Frage zu I-Frames/ neu kodieren

Selur wrote:

Macht Hybrid automatisch. Es ruft wenn möglich die 64bit anstatt der 32bit binary auf.
Wenn z.B. Avisynth verwendet wird kann nur 32bit mencoder verwendet werden.

ah ok, jetzt ist es klar


Selur wrote:

Nur mal so am Rande:
Wenn Du schon Reencodest, warum deinterlaced Du nicht?
Interlacing ist meiner Ansicht nach eine Methode des Speicherns von Daten, die schon vor Jahren hätte aussterben müssen, bin deshalb immer wieder verwundert, warum normale User interlactes Material erstellen.

Weil ich immer noch das Problem habe, das mir irgendwas abschmiert sobald ich Deinterlace. Selbst jetzt mit den Edi Threads auf 2...



Selur wrote:

Ps.: Wenn Du 'keyint 1' verwendest ist Hybrid eventuell nicht das sinnigste Frontend für x264, da es das AVC-Intra profile, welches Extra für so einen Fall gedacht ist, nicht unterstützt.

Was kann ich noch ändern, wenn trotz keyint1 nicht genügend I-Frames erstellt werden`? Finde am Anfang hier keine zum schneiden, nach ein paar Minuten aber wie beim letzten File

23

Re: Frage zu I-Frames/ neu kodieren

Selbst jetzt mit den Edi Threads auf 2...

Mal auf die Idee gekommen nen anderen Deinterlacer zu verwenden als QTGMC?

Was kann ich noch ändern, wenn trotz keyint1 nicht genügend I-Frames erstellt werden`?

?? Jedes Frame sollte ein Key/IDR-frame sein bei keyint 1, es sei denn open-gop is an.

24

Re: Frage zu I-Frames/ neu kodieren

Vielleicht weis ich jetzt warum, QTGMC immer abgestürzt ist, wenn ich das .ts in den hybrid ziehe, bekomme ich container frame rate 25fps , stream 25, output 25. schmeiss ich das .ts erst durch die mkvtools, und ziehe das mkv ins hybrid, bekomme ich , container frames 50fps, stream 25, output 50 fps ... läuft aber grad noch...

25

Re: Frage zu I-Frames/ neu kodieren

Scheint also ein Bug im ts-Container bzw. dessen Headern zu sein.
(QTGMC wird dann zwischen Frame vor und zurück springen und dabei wird dann der SourceFilter dann Probleme haben, wenn das File nicht ganz okay ist.)