Hybrid: Input -> x264/x265/Xvid/VP8/VP9/AV1

  • Zumindest unter Linux scheint MP4Box ein Problem mit der Schreibweise "fps=24000/1001" zu haben. Das Ergebnis ist dann immer ein mp4-Video mit 24000fps. Ändert man das manuell in "fps=23.976", ist alles wie es sein sollte. Gerade probiere ich noch, einen mp4-Container alternativ mit ffmpeg zu erstellen, aber ich vermute, da wird alles OK sein. Wäre es möglich, die Kommandozeile für MP4Box anzupassen?

  • Bei mir wird da sowohl beim Import (im MP4Box consolen output) als auch später durch MediaInfo und "MP4Box -info" sauber 24000/1001 angezeigt.

    -> kann das Problem hier nicht nachstellen getestet unter: Windows 10, MacOS BigSur, Ubuntu 18.04 und 20.04

    Vermute eher es ist ein Bug in der MP4Box Version die Du verwendest, oder Du muxed da noch nen time code stream dazu der 24fps signalisiert,...

    Was für eine MP4Box version verwendest Du?


    Cu Selur

  • Meine Version ist 0.8.0 und ja, der Fehler liegt definitiv bei MP4Box. Hatte nur gehofft, man könnte ihn geschickt umgehen, indem man die Bildrate direkt angibt. Aber egal, das muxen mit ffmpeg hat auch funktioniert, also kein Problem.

  • Jaja, ist leichter gesagt als getan. Der aktuelle Quellcode läßt sich bei mir nicht mehr bauen, produziert nur noch Speicherzugriffsfehler. Und die Version im Repo ist irgendwas mit 0.5. Also stecke ich jetzt erstmal mit der hier fest.

  • Ich kann bei der aktuellen Hybrid Version unter Deinterlace/Telescine die "force" funktion.

    Wenn ich z.B. QTGMC (Avisynth), bob auswähle, wird das auf das video nicht (oder für mich nicht sichtbar) angewendet. auch die frames verdoppeln sich nicht. Wie bringt man hybrid in der aktuellen Version denn dazu, deinterlacing anzuwenden?

    die einzige Möglichkeit, die ich bisher gefunden habe, ist einen interlaced scan durchzuführen, allerdings braucht hybrid dafür 30 min+

    da gibt es doch sicher eine schnelle Möglichkeit, so wie den force button von früher oder?

  • Ich habe mir vor kurzem einen neuen Rechner gekauft und seit dem das Problem, dass hybrid bei einigen Videos beim start des 2. Durchlauf (2pass) crashed.

    Im Report File fielen mir die folgenden Dinge auf:

    __________________________________________________________________________________________

    x265 [error]: statistics are damaged at line 122465, parser out=1

    x265 [error]: failed to open encoder

    2021-11-04@19_30_06_7610_05_video finished after 00:00:00.486

    finished...

    ERROR: D:\Multimedia\Videos\Hybrid\Temp\2021-11-04@19_30_06_7610_05.265 is too small! (byteSize: 0byte)

    ___________________________________________________________________________________________

    Leider werde ich nicht schlau daraus, zumal es auf einem anderen Rechner mit soweit ich das beurteilen kann denselben Einstellungen problemlos durchlief.

    Hat jemand eine Idee, woran das liegen kann und wie ich das Problem löse?

    Die Report und Debug Files habe ich angehängt.

    Vielen Dank

  • Zitat

    x265 [error]: statistics are damaged at line 122465, parser out=1

    x265 [error]: failed to open encoder

    ÜblichenVverdächtigen wären:

    • AntiVirus Tool oder dergleichen interfriert mit dem Encoder.

      -> Virenscanner deaktivieren

    • System ist übertaktet oder hat Hitzeprobleme.

      -> System nicht übertakten + besser Kühlen

    • Fehler im Assembly code von x265

      -> würde normalerweise dazu raten x265 zu aktualisieren, daber die 16bit-x265 Variante ist ja quasi tot.

      Könntest aber mit "-asm ..." (https://x265.readthedocs.io/en/master/cli.…y#cmdoption-asm) als Custom Addition mals schauen ob es hilf einzelne der "cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2" zu deaktivieren.

      Zusätzlich könntest Du die Changelogs von x265 seit Deiner Version durchschauen ob da irgendwas 'gefixed' wurde, was eventuell einen Hinweis gibt.

    Cu Selur

  • so jetzt habe ich 2 Tests durchlaufen lassen:

    Test 1 - Virenschutz deaktiviert → Crash beim Start des zweiten Durchlaufes (selbe Fehlermeldung)

    Test 2 - Lüfterdrehzahlen erhöht (maximale CPU Temperatur 76 °C) → Crash beim Start des zweiten Durchlaufes (selbe Fehlermeldung)

    Interessant finde ich insbesondere, dass dasselbe Video auf einem anderen Rechner mit genau derselben Hybrid Version und 16bit-x265 ohne Probleme lief.

    Könnte also auf die von dir erwähnten cpu capabilities hindeuten.

    Ich hab nur noch nicht ganz verstanden, wie ich die alle mal testweise deaktivieren kann.

    wo gebe ich denn "-no-asm" oder "-asm" ein?

  • Lass das mal mit den Assembler-Befehlen.

    statistics are damaged at line 122465, parser out=1 wäre für mich ein Hinweis darauf, dass der erste Durchlauf mittendrin (und dadurch auch beim Schreiben der Statistikdatei) abgestürzt ist. Der zweite Durchlauf hat also eine unvollständige Statistikdatei gelesen und bemerkt, dass er die nicht auswerten kann, und deshalb gleich aufgegeben.

    Ursache ist also der unvollständige erste Durchlauf. Da ist vielleicht ein Datenfehler in der Videoquelle?

  • Das ist gut möglich, was auch erklären würde, dass ich seit ich den neuen Rechner habe, den Fehler erst bei 2 Videos hatte.

    Auf der anderen Seite liefen auf einem anderen Rechner beide Durchläufe bei derselben Videodatei ohne crash durch → Es müsste also eine Einstellung geben, die dafür verantwortlich ist, dass Rechner 2 mit der Videodatei zurecht kommt und Rechner 1 nicht. Leider konnte ich keinen Unterschied in den Einstellungen finden. Hast du eine Idee?

    Die andere Vermutung war, wie Selur meinte, dass meine neue CPU Capabilities zur Verfügung stellt, die vom encoder genutzt werden, aber zu einem crash führen.

  • Stimme zu das Problem ist, dass die Statistikdatei nicht richtig erstellt wird.

    Da es auf nem anderen Rechner geht waren die oben genannten Ursachen, dass was ich am ehesten erwarten würde.

    Du kannst aber auch mal nen CRC der Datei auf beiden Rechnern machen, falls die sich unterscheiden ist da was falsch.

    Versuch mal den decoding Befehl auf beiden Systemen:

    Code
    "C:\Program Files\Hybrid\64bit\ffmpeg.exe" -y -noautorotate -nostdin -threads 16 -ignore_editlist true -i "D:\Multimedia\Videos\Mission Erde\remastered\S04E21 - Die zweite Invasion.mp4" -map 0:0 -an -sn -vf hqdn3d=2:1:3:1,zscale=rangein=tv:range=tv -pix_fmt yuv420p16le -strict -1 -vsync 0 -f yuv4mpegpipe - NUL

    und schau ob eventuell auf dem einen irgendwelche Fehler ausgegeben werden.


    Cu Selur

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!