Hybrid (Windows/Linux/Mac): Input -> x264/x265/Xvid/VP8/VP9

  • Kurz:

    ----------

    Prinzipiell 'Ja', habe aber kaum Ahnung von dem was sox&ffmpeg können oder was es sonst noch an command line tools gibt die man nutzen könnte.

    -> Bevor ich da was implementiere müsste mal jemand testen was es da so gibt und was Sinn macht


    Lang:

    --------

    Soweit ich das aktuell sehe (http://www.zoharbabin.com/how-…ion-using-ffmpeg-and-sox/ + http://sox.sourceforge.net/sox.html <- noch noiseprof suchen) ist Noise-Reduktion bei sox ein 2pass-Verfahren:

    1. es wird ein noise profile erzeugt

    2. anhand des noise profiles wird das Rauschen entfernt

    es wird aber direkt geschrieben:

    Zitat

    This effect is moderately effective at removing consistent background noise such as hiss or hum

    Keine Ahnung ob es da noch andere Filter gibt und wie gut das Ganze ist.


    FFmpeg hat auch ein paar Audiofilter (http://www.ffmpeg.org/ffmpeg-filters.html#Audio-Filters), aber keine Ahnung welche da wie gut sind.

    Interessant sind vermutlich:

    1. adecklick (http://www.ffmpeg.org/ffmpeg-filters.html#adeclick)

    2. adeclip (http://www.ffmpeg.org/ffmpeg-filters.html#adeclip)

    3. afftdn (http://www.ffmpeg.org/ffmpeg-filters.html#afftdn)

    4. agate (http://www.ffmpeg.org/ffmpeg-filters.html#agate)

    Keine Ahnung wie gut die Filter sind oder ob es da noch andere interessante Filter gibt die ich übersehen habe.


    Habe mich noch nie wirklich mit Audio-Rauschfilterung beschäftigt und keine wirkliche Ahnung was es da für kostenlose "command line"-Lösungen (für Windows&Linux) gibt.


    -> Bevor ich da was implementiere müsste jemand testen ob das auch hilfreich genug ist damit das Sinn macht.


    Cu Selur

  • hmm, ich verstehe.

    wirklich auskennen tue ich mich damit leider auch nicht. ich nutze diese funktion lediglich hin und wieder in acoustica und kann sagen, dass man damit leichtes hintergrundrauschen, brummen und ähnliches ziemlich gut herausbekommt ohne das restliche audiosignal merklich zu verändern.


    war nur ne Idee meinerseits.

    Für tests stehe ich natürlich immer gerne zur Verfügung.

  • Gibt es einen Unterschied zwischen "denoise" (englisch) und "entrauschen" (deutsch)? :D


    Relativ wirksam wäre eine Rauschmaskierung. Die hat aber immer den Nachteil, dass man vorher manuell einen Abschnitt suchen muss, der praktisch nur das typische Rauschen enthält, damit davon ein Spektrum ermittelt werden kann. Vollautomatisch geht diese Methode nicht. Und wenn man sie zu stark anwendet, bekommt man metallisch klingende Audio-Artefakte.

  • Gibt es einen Unterschied zwischen "denoise" (englisch) und "entrauschen" (deutsch)? :D

    Wirklich gute Frage. Bei Acoustica führen beide Filter zu unterschiedlichen Ergebnissen.

    Soweit ich das beurteilen kann, entfernt der denoise filter vorrangig sötgeräusche wie knacken, knistern usw.

    der Entrauschen Filter entfernt konstantes hintergrundrauschen.


    Sind aber nur Vermutungen, die auf meinen bisherigen Filtererfahrungen basieren.

  • Hallo,


    ich habe vor kurzem eine alte und ziemlich abgenutzte DVD ausgegraben die ich als Datei abspielbar machen möchte.

    Habe dazu das VIDEO_TS Verzeichnis der Disk direkt auf eine Festplatte kopiert. (Kein Kopierschutz, daher einfach möglich)


    Anschließend wollte ich mit Hybrid das ganze in eine Datei pressen. Dazu die alte Version auf meiner HDD vollständig deinstalliert und die neuste Version 2019.11.30.1 installiert. Sicherheitshalber alles auf default resetet und den Temp-Pfad auf ein sinnvolles Verzeichnis geändert.


    In Hybrid dann die Option "DVD Imput" gesetzt und das VIDEO_TS Verzeichnis ausgewählt. Title 1 (01:45:09:000); Video: X264; Audio: passthrough all; Container: mkv.


    Im Reiter X264 2-pass mit Target 1 DVD-5 gesetzt, sowie Present: medium.


    Zielpfad ist gleich Quellpfad und das ganze gestartet.

    Beim Job-Reiter Zeile 06_Video Endcoding video kommt dann die Meldung "Crashed"


    In der Report-file findet man dazu folgendes:

    "..

    created D:\Temp\iId_3_aid_128_lang_de_16_35_33_8410_01.ac3 (144.401 MB)

    x264 (1st pass bitrate) processing started...

    starting 16_35_33_8410_06_video@16:36:08.510 - D:\Videoworkfolder\test.mkv

    "C:\PROGRA~1\Hybrid\64bit\x264.exe" --preset veryfast --pass 1 --bitrate 5761 --profile high --level 4.1 --sync-lookahead 24 --rc-lookahead 40 --weightp 2 --sar 16:15 --qpfile "D:\Temp\test_16_35_33_8410_05.qp" --non-deterministic --range tv --stats "D:\Temp\test_16_35_33_8410_06.stats" --demuxer y4m --input-range tv --fps 25/1 --output-depth 8 --output NUL -

    x264 [error]: could not open input file `-'

    finished after 00:00:03.589 with exitCode -1

    Crashed with exit status 0"


    Im Gesamtlog findet sich ähnliches:

    "....

    x264 output: y4m [error]: bad sequence header magic

    x264 [error]: could not open input file `-'

    ...."


    Selber Fehler auch bei diversen Einstellungsvarianten des X264 und Dvix sowie X265 getestet mit gleichen Ergebniss.

    Sieht so aus als würde bei der Übergabe an den Encoder irgendetwas schieflaufen, merkwürdig finde ich das das Problem bei X264, Dvix ud X265 auftritt.


    Ich vermute das da bei der Übergabe an den Encoder etwas schief geht oder ich einen dummen Fehler gemacht habe.

    Wäre für Tips und eine Hilfestellung dankbar.


    Grüßßele

  • Zitat

    y4m [error]: bad sequence header magic

    kommt i.d.R. wenn beim Dekodieren etwas schief geht.

    Ohne genauere Details kann ich da wenig sagen.

    -> DebugOutput der Jobabarbeitung sollte den Decodingaufruf zeigen.


    Habe gerade mit meiner aktuellen development Version geschaut ob ich da Probleme mit dem Reencoden von DVD Input habe, aber egal ob mencoder, Vapoursynth oder Avisynth habe ich mir meinen TestDVDs die ich verwendet habe keine Probleme.

    -> Falls Du Vapoursynth oder Avisynth Filter verwendest check auch mal den "Avisynth/Vapoursynth Preview", eventuell kommt da schon eine Fehlermeldung.


    Cu Selur

  • Morgen,


    ok ich habe noch etwas weiter rumgedoktort aber ohne Erfolg.

    Als PM mal die gesamte Logdatei Level 4


    Habe auch mal eine andere DVD ausprobiert um mögliche Dateidefekte auszuschließen, auch ohne Erfolg.


    Hoffe das Log ist erhellend.


    MFG

  • Nicht als PM sondern als Konversation,...

    Der Encodingausruf:

    Code
    1. "C:\PROGRA~1\Hybrid\64bit\VAPOUR~1\vspipe.exe" "D:\Temp\encodingTempSynthSkript_07_24_42_8610.vpy" - --y4m | "C:\PROGRA~1\Hybrid\64bit\x264.exe" --preset veryfast --pass 1 --bitrate 5761 --profile high --level 4.1 --sync-lookahead 24 --rc-lookahead 40 --weightp 2 --sar 16:15 --qpfile "D:\Temp\test_07_24_42_8610_05.qp" --non-deterministic --range tv --stats "D:\Temp\test_07_24_42_8610_06.stats" --demuxer y4m --input-range tv --fps 25/1 --output-depth 8 --output NUL -"

    und das Vapoursynthskript:

    sehen an sich okay, aus.

    Vermute es liegt an libmvtools, tausche mal die libavtools.dll gegen die aus dem Release von https://github.com/dubhater/vapoursynth-mvtools/releases aus. Vermute dann geht es.


    Cu Selur

  • Hybrid rev 2020.01.11.1:

    *fixed*

    • analyse: HDR parameter import rounding
    • Synth: ignore timecodes for output if FrameInterpolation or Restore is
    • cosmectice: AudioTab, AudioInfo on track change
    • Synth: ImageSource handling
    • video: qsv encoding mode
    • tools: manual set tools could cause crashes
    • Vapoursynt: Waifu2x limited range compression by using RGBS
    • video: vsPipe Problem gefixed
    • video: NVEnc only singal VUI in case VUI Signaling is enabled
    • audio: handling of multiple trueHD streams with ffmpeg
    • jobs: mkvmerge muxing timecodes parallel processing
    • video: x265 support histogram scence change detection

    *changed*

    • audio: dts-es muxing
    • Synth: allow to set LibWAV HW decoding preference
    • Vapoursynth: allow Waifu2X even when resize resolution is the same as the crop resolution.

    *added*

    • Vapoursynth: added support for EdgeFixer
    • Synth: 'SelectRangeEvery' for Avisynth and Vapoursynth (video only!)


    -> downloads: http://www.selur.de/downloads


    Cu Selur

  • ich habe mal wieder ein paar videos, bei denen nach der verarbeitung mit hybrid eine Verzögerung zwischen audio und video auftritt, die es vorher nicht gab. habe alle einstellungen durchgetestet, die mir eingefallen sind, konnte den effekt aber nicht loswerden.

    mit xmedia recode passiert das interessanterweise nicht.

    hat jemand eine idee, was ich machen kann, um das problem zu lösen?

  • Zitat

    hat jemand eine idee, was ich machen kann, um das problem zu lösen?

    Da das Problem mit 'xmedia recode' nicht auftritt, dieses verwenden.


    Keine Details, keine Ahnung was Du genau machst und was die Charakteristiken deiner Dateien sind, sprich mehr als wilde Vermutungen kann ich Dir da nicht geben.


    -> Wilde Vermutungen:

    a. Quelle hat defekte (im Audio-, Videostream oder im Container)

    b. Irgendein Filter oder Decoder der verwendet wird hat Probleme mit der Quelle.

    c. Quelle hat stretched streams und Hybrid wurde nicht gesagt, dass es nach diesen suchen soll

    d. Irgendein Antivirustools oder so macht Probleme.




    Cu Selur

  • leider bietet xmedia recode keinen temporal degrain filter an und der hat es mir gerade total angetan :)


    a) genau das hatte ich auch vermutet. daher meine vermutung, dass xmedia recode dieses fehler irgendwie anders behandelt als hybrid.

    wenn es defekte im video gibt, ist mir schon früher aufgefallen, dass es bei hybrid dann zu audio/video delays kommt. es entsteht dann meist eine 0,5-1,5 s lange videostörung, während der das audio weiterläuft => delay. möglicherweise auch umgekehrt, habe ich nur noch nicht bemerkt.


    wie gesagt, im originalvideo fällt das jedoch nicht auf und bei der konvertierung mit xmedia recode auch im output nicht.

    fällt dir in diesem Zusammenhang vlt. irgendeine einstellung ein, die hybrid fehler anders behandeln lässt?


    b) ich habe es mehrfach komplett ohne filter versucht => selbes Ergebnis


    c) an streched streams hatte ich auch schon gedacht. leider weiß ich nicht, wie ich in der aktuellen version danach suchen lassen kann. die option dazu unter config ist leider ausgegraut.


    d) gerade getestet, aber nein

  • Zitat

    fällt dir in diesem Zusammenhang vlt. irgendeine einstellung ein, die hybrid fehler anders behandeln lässt?

    anders als ffmpeg und handbrake bearbeitet Hybrid Audio&Video separat und trennt diese auch.

    Sprich wenn der ein oder andere Fehler im Stream ist kann es zu Problemen kommen.


    Zitat

    ich habe es mehrfach komplett ohne filter versucht => selbes Ergebnis

    Dann gibt es entweder beim Decodieren des Videos oder beim Extrahierend es Audios Probleme.


    Zitat

    an streched streams hatte ich auch schon gedacht. leider weiß ich nicht, wie ich in der aktuellen version danach suchen lassen kann. die option dazu unter config ist leider ausgegraut.

    Ist nur relevant falls es sich um ein mkv Input file handelt, andere Kontainer unterstützen kein Stretching der Streams. Das gesagt hatte ich die Stretchdetection deaktiviert, da sie bei neueren mkv Versionen nicht mehr klappt. (hatte ich voll vergessen)


    -> Hybrid ist nicht gedacht um defekten Input zu handeln, sprich wenn der Input irgendwie kaputt ist, ist Hybrid das falsche Tool. :)


    Cu Selur

  • hmm schade, dann ist das also wirklich mal etwas, das mit hybrid nicht mindestens genauso gut geht, wenn man weiß wie :)


    dann muss ich mich wohl mal umsehen, welches tool ich für diese dateien verwenden kann, das auch einen temporal degrain filter bietet.


    danke dir für die schnellen Antworten.

  • jetzt muss ich aber doch noch mal nachfragen:

    du meinst, wenn ich eines der videos, die nach der konvertierung mit hybrid ein audio/video delay aufweisen, vorher in ein lossless-format umwandle, bleibt es synchron?


    welches format wähle ich da idealerweise?


    Ich habe hier die Auswahl zwischen:

    MagicYUV Losless

    Lossless jpeg

    Lossless codec library zlib