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

  • Ne,...
    Config->Input->Decoding-> Prefer FFmpeg

    was Du wolltest ist:
    Config->Stream extraction with ffmpeg


    Ich gebe zu, das würde Sinn machen, ist aber leider nicht so. Entferne ich das Häkchen bei "Stream extraction with ffmpeg", wird nach wie vor ffmpeg zum Demuxen des Video-Streams verwendet. Entferne ich es hingegen bei "Prefer FFmpeg", übernimmt mkvextract den gesamten Job. Ein Bug?

  • @pincat: bei beiden debug outputs ist "Stream extraction with ffmpeg" nicht aktiviert (sieht man an 'forceFFmpegExtraction' im DebugOutput) und da der Input ein mkv ist wird für das extrahieren mkvextract verwendet. -> alles wie es soll

    Zitat

    Ich gebe zu, das würde Sinn machen, ist aber leider nicht so. Entferne ich das Häkchen bei "Stream extraction with ffmpeg", wird nach wie vor ffmpeg zum Demuxen des Video-Streams verwendet. Entferne ich es hingegen bei "Prefer FFmpeg", übernimmt mkvextract den gesamten Job. Ein Bug?


    ist mit den DebugOutputs nicht belegt,...

  • Schau Dir den 2. DebugOutput mal genauer an - insbesondere Zeile 6956: Da wird ffmpeg zum Extrahieren des Video-Streams aufgerufen, nicht mkvextract. "Stream extraction with ffmpeg" war zu keiner Zeit aktiviert, war auch nie das Thema. Es ging nur um die beiden oben genannten Optionen und darum, daß er ffmpeg verwendet, wo eigentlich mkvextract hätte kommen sollen.

    2 Mal editiert, zuletzt von pintcat (11. Juni 2016 um 10:11)

  • Hallo,

    ich verwende den Hybrid 2016.05.22.1 und habe versucht eine .m2ts Datei mit kodierten H264 Video in eine .mkv Datei mit kodierten H265 Video umzuwandeln.
    Alle andere wie Ton, Untertitel Seitenverhältnis soll nicht angepasst werden.

    Nach den Umfangreichen Rekodiervorgang (Rund 7 Stunden) kommt einen viel zu kleine Videodatei raus, die anscheint nur die Tonspuren aber kein Bild enthält. (Zielgröße 25GB, erzielte Größe 4,6GB).

    Ich habe keine Ahnung was da passiert sein könnte.
    Ich hab dir mal das Log zum Rekodiervorgang als PM geschickt, wäre dankbar um einen Tip wo es klemmt.

    Grüße Blade

  • Code
    x265  --preset ultrafast --pmode --pme --input - --y4m --no-open-gop --pass 1 --bitrate 24370
    ..
    y4m [info]: 1920x1080 fps 24000/1001 i420p8 sar 1:1


    -> meine Tips:

    • aktuelle Hybrid Version verwenden
    • tune grain verwenden
    • höhere Lookaheads verwenden
    • nicht 1pass bitrate nutzen
    • 10bit encoding verwenden
    • bei den x265 Developern in den Bug Tracker posten
    • bei so einer hohen Datenrate eher x264 verwenden

    Cu Selur

  • Hallo,

    ich habe mir Hybrid unter Linux Mint Sarah installiert und versucht das MeGui-Profil zu importieren (genau: ich habe aus MeGui die Kommandozeile rauskopiert und diese für den Import in Hybrid verwendet). Dabei kommt es aber zu recht unterschiedlichen Dateigrößen. Der Vergleich hier ist zwischen einem x264-Kommandozeilen-Encoding und einem Hybrid-Encoding unter Mint.

    x264: 432 MB
    Hybrid: 594 MB

    Hier mal die Ausgaben von Mediainfo und fett markiert die Unterschiede.

    Hybrid:

    Zitat

    cabac=1 / ref=4 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=1 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-6 / threads=6 / lookahead_threads=1 / sliced_threads=0 / slices=4 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=23 / keyint_min=1 / scenecut=40 / intra_refresh=0 / rc_lookahead=11 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / vbv_maxrate=40000 / vbv_bufsize=30000 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00

    Kommandozeile:

    Zitat

    cabac=1 / ref=4 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=6 / lookahead_threads=1 / sliced_threads=0 / slices=4 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=24 / keyint_min=2 / scenecut=40 / intra_refresh=0 / rc_lookahead=24 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / vbv_maxrate=40000 / vbv_bufsize=30000 / crf_max=0.0 / nal_hrd=vbr / filler=0 / ip_ratio=1.40 / aq=1:1.00

    Die Kommandozeile sieht sehr einfach aus:

    Zitat

    x264 --level 4.1 --crf 20 --keyint 24 --b-pyramid strict --ref 4 --slices 4 --qpmin 10 --qpmax 51 --vbv-bufsize 30000 --vbv-maxrate 40000 --trellis 0 --aud --nal-hrd vbr --output output input

    Zuerst einmal wäre interessant welche der abweichenden Einstelungen überhaupt nennenswert ins Gewicht fallen und welche davon für die unterschiedliche Dateigröße verantwortlich sind.

    Falls von Interesse, hier noch die Mediainfo-Ausgabe des Originals:

    _________________________

    Zitat

    Zieht ein Bienenschwarm aus, so wird er herrenlos, wenn nicht der Eigentümer ihn unverzüglich verfolgt oder wenn der Eigentümer die Verfolgung aufgibt.


    § 961 BGB [Eigentumsverlust bei Bienenschwärmen]

    :D

  • Wenn ich bei x264->Misc->Import/Additions->Command line->Import:

    Code
    --level 4.1 --crf 20 --keyint 24 --b-pyramid strict --ref 4 --slices 4 --qpmin 10 --qpmax 51 --vbv-bufsize 30000 --vbv-maxrate 40000 --trellis 0 --aud --nal-hrd vbr


    importiere mach Hybrid:

    Code
    x264 --crf 20.00 --profile high --level 4.1 --bluray-compat --ref 4 --keyint 24 --b-pyramid strict --rc-lookahead 12 --slices 4 --qpmin 10 --qpmax 51 --mvrange 511 --trellis 0 --psy-rd 1.00:0.0 --weightp 0 --vbv-maxrate 40000 --vbv-bufsize 30000 --sar 1:1 --qpfile GENERATED_QP_FILE --non-deterministic --range tv --colormatrix bt470bg --input-csp i420  --fps 25 --input-res 48x48 --output OUTPUTFILE -

    daraus.

    Wenn ich hingegen:

    Code
    cabac=1 / ref=4 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=6 / lookahead_threads=1 / sliced_threads=0 / slices=4 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=24 / keyint_min=2 / scenecut=40 / intra_refresh=0 / rc_lookahead=24 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / vbv_maxrate=40000 / vbv_bufsize=30000 / crf_max=0.0 / nal_hrd=vbr / filler=0 / ip_ratio=1.40 / aq=1:1.00


    bei 'x264->Misc->Import/Additions->Mediainfo import' importiere, erhalte ich:

    Code
    x264 --crf 20.00 --profile high --level 4.1 --ref 4 --keyint 24 --min-keyint 2 --b-pyramid strict --lookahead-threads 1 --rc-lookahead 12 --chroma-qp-offset -2 --slices 4 --qpmin 10 --qpmax 51 --trellis 0 --psy-rd 1.00:0.0 --vbv-maxrate 40000 --vbv-bufsize 30000 --cqm jvt --threads 6 --sar 1:1 --qpfile GENERATED_QP_FILE --non-deterministic --range auto --colormatrix undef --input-csp i420  --fps 25 --input-res 48x48 --output OUTPUTFILE -

    Die bei ersterem geht Hybrid wegen '--aud --nal-hrd vbr' davon aus, dass '--bluray-compat' gewollt ist (sonst macht '--aud --nal-hrd vb' keinen Sinn).

    Wie die Einstellungen bei Dir zu Stande kommen kann ich hier nicht nachvollziehen. :(
    Schreib bitte detailliert was Du wo importierst und wie der x264 Aufruf in Hybrid aussieht und was Du für falsch hältst.

    Cu Selur

  • Den Import hab ich schon im September mal gemacht, ich weiß nicht mehr genau wie.- Ich vermute ich hab einfach die Einstellungen aus Mediainfo kopiert und unter x264/Misc/Import/Mediainfo Import reinkopiert. Wenn ich das jetzt mache kommt der Fehler

    Zitat

    unknown parameter: filler=0

    Lösche ich den Punkt raus, importiert er genau das was du auch importiert hast.

    Zitat

    Die bei ersterem geht Hybrid wegen '--aud --nal-hrd vbr' davon aus, dass '--bluray-compat' gewollt ist (sonst macht '--aud --nal-hrd vb' keinen Sinn).

    Aber kann das diesen gigantischen Unterschied im Output erklären?

    Wie geht denn x264 vor, denn diese widersprüchlichen Einstellungen angegeben sind? Es kommt da ja keine Fehlermeldung oder so?

    edit
    Irgendwie lassen sich manche Einstellungen auch manuell nicht ändern.
    - bei Lookahead (frames) komm ich nur bis 12 statt 24
    - bei --nal-hrd geht nur cbr oder nichts und nicht 'none'

    _________________________

    Zitat

    Zieht ein Bienenschwarm aus, so wird er herrenlos, wenn nicht der Eigentümer ihn unverzüglich verfolgt oder wenn der Eigentümer die Verfolgung aufgibt.


    § 961 BGB [Eigentumsverlust bei Bienenschwärmen]

    :D

    Einmal editiert, zuletzt von Nel-son (20. November 2016 um 13:47)

  • Zitat

    Wie geht denn x264 vor, denn diese widersprüchlichen Einstellungen angegeben sind? Es kommt da ja keine Fehlermeldung oder so?


    Sind ja nicht widersprüchlich machen nur keinen Sinn und werde deshalb von x264 ignoriert.

    Zitat

    Aber kann das diesen gigantischen Unterschied im Output erklären?


    Keine Ahnung, kann wie gesagt nicht nachstellen.
    Der wesentliche Unterschied wird chroma_qp_offset und die quantizer Matrix (flat vs. jvt) machen.
    Falls der Input von x264 sich unterscheiden sollte (anderes Avisynthscript) wäre der Unterschied auch klar.

    Vermute das 'Problem' könnte sein, dass Hybrid beim Importieren die aktuellen Einstellungen an die Parameter anpasst und sich nicht vorher zu den x264 Defaulteinstellungen zurückstellt. (Profile Medium)
    Sieht für mich auch jeden Fall aktuell nicht nach einem Bug aus,...

    Generell ist auch zu bedenken, dass crf immer unterschiedliche Ergebnisse liefert, wenn sich einer der anderen Parameter unterscheidet. :) ('rate control factor' ist nicht einfach ein Maß für Qualität)

    Cu Selur

  • Was ist für Hybrid/ Video encoding die geeignete Plattform? Windows10, Linux? Habe ich unter Linux auch die voll Filtermöglichkeiten wie unter Windows?

    Ich plane aktuell ein neuen Rechner, kein Mac mehr eventuell Hackintosh... soll ein Broawdwell-EP werden, Wassergekühlt....

     MacBookPro 15" 2017 | 4 x 3,1 Ghz | 16 GB Ram | 1TB SSD NVME |

  • Die meisten Möglichkeiten hast Du unter Windows 64bit.
    Entwickeln tue ich meist unter Windows 10 64bit.
    Filtering ist unter Linux in etwa gleich, jedoch gibt es einige SourceFilter für Avisynth nicht unter Linux.
    (Audio&Video Encoder gibt es unter Windows auch mehr.)
    -> persönlich verwende ich für die Videobearbeitung fast immer Windows.

    Cu Selur

  • hi, Selur

    ich wollte mal schnell ein Video konvertieren.
    es wurde auf einem Android-Smartphone erzeugt und liegt im avc-mp4-format vor.

    nachdem ich diverse Tools (und auch deins) getestet habe,
    fiel mir auf, das keiner die mp4 Tag-informationen mit nimmt.

    denn das Video wurde im Hochformat aufgenommen,
    aber im Breitformat abgespeichert mit der Rotations-information "90°"

    die von mir verwendete Version war die 2016.4.10.1 .
    falls noch nicht geschehen, bitte ich darum, dass die Rotations-information mitgenommen wird,
    bzw. als Option gesetzt werden kann...

    ...danke

  • Bräuchte ein Sample (paar Sekunden reichen) so einer Datei um:
    a. zu sehen was für Flags da gesetzt sind
    b. zu testen ob man die auch irgendwie automatisiert erkennen kann
    c. mit welchem Tool man das Flag wieder setzen kann

    Cu Selur

    Ps.: vermute das ganze geht mit FFmpeg, werde ich dann antesten

  • ne video datei, kann man mit jedem x-belibigen android-phone erzeugen.
    mediainfo zeigt den tag an
    und ffmpeg scheid zz das einzigste tool zu sein, der das flag setzen kann.


    edit:
    der ffmpeg-befehl:

    Code
    ffmpeg -i input.mp4 -c copy -metadata:s:v:0 rotate=90 output.mp4

Jetzt mitmachen!

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