Beiträge von may24

    Hi zusammen,


    ich habe hier eine GoPro Aufnahme die an manochen Stellen recht stark überbelichtet ist.

    Nun suche ich eine Möglichkeit geziehlt an diese Stellen ab einem gewissen Schwellwert das Luma zu veringern

    Tweak Einstellungen wirken sich immer auf's gesamte Bild aus, aber nicht auf "Bereiche"

    Daher werden dann einige Stellen wieder zu dunkel ...

    Bei diversen Bildbearbeitungs Programmen gibt es die Möglichkeit entsprechend einer "Kurve" Lume (Chroma ?) zu verändern.

    Gibt's sowas auch für Avisynth ?

    Hallo zusammen, ich möchte zwei Clips (zunächst) von rechts nach links "einfließen" lassen.
    Dazu wird jeweils ein Stück vom Rechten Rand des ersten Clips und ein Stück vom linken Rand des zweiten Clips abgeschnitten und das Ganze dann wieder zusammengebaut.
    Nur leider schaffe ich es nicht die Information zum "hoch zählen" aus der Funktion zu retten (step_mod2,span,frames).


    Wie geht das ???


    Hier das Script:

    Hallo zusammen,


    Ich habe hier eine 4k Quelle:

    Code
    1. VideoID : 4113 (0x1011)Menu ID : 1 (0x1)Format : HEVCFormat/Info : High Efficiency Video CodingFormat profile : Main 10@L5.1@HighCodec ID : 36Duration : 7 minWidth : 3 840 pixelsHeight : 2 160 pixelsDisplay aspect ratio : 16:9Frame rate : 23.976 (24000/1001) FPSColor space : YUVChroma subsampling : 4:2:0 (Type 2)Bit depth : 10 bitsColor range : LimitedColor primaries : BT.2020Transfer characteristics : PQMatrix coefficients : BT.2020 non-constantMastering display color primaries : BT.709Mastering display luminance : min: 0.0050 cd/m2, max: 4000 cd/m2


    Das Ganze soll herunter skaliert (FullHD) und neu komprimiert werden:


    Code
    1. "C:\Program Files (x86)\Video Tools\avs2pipemod-1.1.1\avs2pipemod.exe" -rawvideo "01.avs" | "C:\Program Files\x265\x265-10Bit-2.7_336.exe" --preset slow --crf 22 --psy-rd 2.0 --psy-rdoq 10.0 --aq-mode 2 --rd 5 --me star --no-sao --no-open-gop --input-res 1920x1080 --input-depth 16 --fps 24000/1001 --output "test.h265" --input -


    Dabei fällt mir auf das die Farben/Brillanz nicht korrekt wiedergegeben werden. Sie sind viel zu matt ... was darauf hindeutet das (scheinbar) die Color-Conversion von BT.2020 -> BT.709 nicht klappt.
    Soweit mit bekannt ist BT.709 Default bei x265.


    Hier mein avs:


    Ich befürchte der Fehler beginnt schon mit dem Aufruf von LWLibAvVideoSource format="YUV420P8" ... Und das hier schon der Farbraum "vermurkst"
    Nur leider habe ich noch keine andere Kombination gefunden die danach auch noch weiter mit dither funktioniert bzw. deren Output von x265 richtig interpretiert wird


    Ich hatte in einem Domm9 Artikel was über: erst auf "RBG konvertieren und dann zurück auf BT.709" gelesen ... aber geht das so einfach ? (bei nicht konstanten Koeffizienten ?)


    Gibt's (in Avisynth) andere Alternativen ?

    Hallo zusammen,


    mein Dad hat einige "Schätzchen" an Super 8 Filmen ausgegraben und wollte diese nun digital schneiden und neu zusammenstellen.
    Dafür hat einer seiner "Experten" die Bänder bei seinem hiesigen Foto-Laden abgegeben und die haben dann eine 08/15 Wald-und-Wiesen Digitalisierung gemacht (Was zu erwarten war)


    Raus kam eine Video-DVD mit 25fps Interlaced mit äußert vielen Artefakten und (mit Gewalt) glattgebügeltem Rauschen.


    Wenn man sich das so ansieht danke ich mir: Die 40€ wären anderweitig echt besser angelegt gewesen...


    Nun suche ich einen Laden (nein ich will/werde das nicht selbst machen) der professionelle Super-8 Digitalisierungen anbietet.
    Mr. Google nennt mir da so einiges. Die Erfahrungsberichte sind von "Alles super" bis "rausgeschmissenes Geld"


    Hat da von euch schon jemand Erfahrung gesammelt und kann eine "Empfehlung" abgeben.
    Hollywood Qualität muss es nicht sein, aber bei 60 min 100-150€ wär's schon wert ...

    Und nochwas ist mir aufgefallen. Nachdem ich das Ganze "repariert" hatte, passte die Kanal-Ordnung nicht.
    Der "Center" war auf einmal auf Kanal 7 anstatt 3 ...


    Ebenso wird das Ganze von MediaInfo falsch angezeigt. Das steht als Chanel Order: Front: "L C R, Side: L R"
    Tatsächlich ist es aber: "L R C SL SR"

    Hm ... hier schaut's ähnlich aus ...


    In punkto mp4box:

    Code
    1. C:\Users\vm>"C:\Program Files (x86)\GPAC\mp4box_ma.exe" -versionMP4Box - GPAC version 0.5.2-DEV-rev1195-g7d45d8b-masterGPAC Copyright (c) Telecom ParisTech 2000-2012GPAC Configuration: --enable-pic --strip --static-mp4box --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --prefix=build/x86_64-w64-mingw32 --static-mp4box --use-zlib=no --extra-cflags=-Ibuild/x86_64-w64-mingw32/include --extra-ldflags=-Lbuild/x86_64-w64-mingw32/libFeatures: GPAC_64_BITS GPAC_DISABLE_3D GPAC_DISABLE_SWF_IMPORT


    Und ffprobe sagt mir beim aac:

    Wie auch immer, ich habe also mir den AAC Track geschnappt und ihn via VLC nach FLAC gewandelt.
    Da ja besagte de/encoder ihre Probleme mit 7.1 haben, das Ganze nach 5.1 (via avs Script) down-ge-muxed und wieder in AAC gecoded.


    Soweit passt alles wieder. MPC-hc mault nicht mehr rum und auch ffplay spielt das Ganze anstandslos ab.


    Vielleicht lohnt es sich mal 'n Thread in doom9 aufzumachen (?)

    Uh .. ok ...
    Ich hatte eine .mp4 mit 7.1 Audio ... deren Video Stream pasdte nicht. War 24 statt 23.976 FPS
    Also hab ich das Ganze in seine Bestandteile zerlegt (Elementar Streams). mit 'ner mp4box.exe - _ma heißt die nur weil ich die selbst gebaut habe ... hat aber keinen Einfluss auf die Funktionalität und entspricht der aktuelle Version.


    Leider wurde die Originaldatei mit einer "neueren Version" überschrieben (Pech ...)


    Es spielt keine Rolle ob das Ganze in .mkv oder .mp4 Steckt. Der Effekt ist erst mal der selbe: MPC-hc spielt's nicht ab (weil falsch erkannt) VLC macht's richtig ...


    Wer mag: hier mal 'n Schnipsel: test.zip

    Hi zusammen,


    ich hab hier einen Film mit Mehrkanal Sound. Zunächst wurde der auch anstandslos von MPC-HC abgespielt.
    Dann habe ich ihn in einen anderen Container gepackt: mp4 -> mkv


    Eigentlich sollte das ja kein Problem darstellen aber scheinbar tut es das doch:

    Code
    1. "C:\Program Files (x86)\GPAC\mp4box_ma.exe" -raw * "Rings Video.mp4"


    Nach einem neuen Multiplexen mit MKVtoolnix (neuste Version) lief aber gar nichts mehr ... MPC-hc spielt das Video nicht ab.
    Es bleibt einfach stehen ... man kann zwar hin- und her- springen aber es läuft einfach nicht.
    Muxt man das Video ohne Audio Anteile in einen Matroska Container läuft's einwandfrei ... ergo muss es am Audio liegen.


    FFPlay sagt mir:

    Code
    1. /opt/ffmpeg/bin/ffplay -v debug -i "Video_track2.aac" ffplay version N-81411-g57503fa Copyright (c) 2003-2016 the FFmpeg developers built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.2) 20160609 configuration: --prefix=/opt/ffmpeg --enable-gpl --enable-version3 --enable-nonfree --enable-static --disable-shared --enable-gray libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.100 / 57. 54.100 libavformat 57. 47.101 / 57. 47.101 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 52.100 / 6. 52.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100[file @ 0x7efce4007240] Setting default whitelist 'file,crypto'/0 [aac @ 0x7efce40008c0] Format aac probed with size=2048 and score=51[aac @ 0x7efce40008c0] Before avformat_find_stream_info() pos: 0 bytes read:32928 seeks:4 nb_streams:1[aac @ 0x7efce4009000] channel element 1.2 is not allocated Last message repeated 659 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 324 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 457 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 443 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 526 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 438 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 435 times[aac @ 0x7efce4009000] channel element 1.2 is not allocated f=0/0 Last message repeated 227 times[aac @ 0x7efce40008c0] Probe buffer size limit of 5000000 bytes reached[aac @ 0x7efce40008c0] decoding for stream 0 failed[aac @ 0x7efce40008c0] Estimating duration from bitrate, this may be inaccurate[aac @ 0x7efce40008c0] Could not find codec parameters for stream 0 (Audio: aac (LC), 5.0, fltp, 345 kb/s): unspecified sample rateConsider increasing the value for the 'analyzeduration' and 'probesize' options[aac @ 0x7efce40008c0] After avformat_find_stream_info() pos: 5001216 bytes read:5046432 seeks:4 frames:3517Input #0, aac, from 'Video_track2.aac': Duration: 03:13:31.50, bitrate: 345 kb/s Stream #0:0, 3517, 1/28224000: Audio: aac (LC), 5.0, fltp, 345 kb/sFailed to open file 'Video.aac' or configure filtergraph[AVIOContext @ 0x7efce4007580] Statistics: 5046432 bytes read, 4 seeks


    Also ffplay spielt es auch nicht ab ...


    Sehr merkwürdig ist nur, das VLC mit dem Ganzen überhaupt keine Probleme hat.
    Das reportet aber auch:

    Code
    1. Stream 0
    2. Typ: Audio
    3. Codec: MPEG AAC Audio (mp4a
    4. Kanäle: 3F2M2R/LFE
    5. Abtastrate: 48000 Hz


    Interpretiere ich das so richtig das "manchmal" das Ganze als 5.0 und manchmal als 7.1 erkannt wird ?
    Nun, es sollte auch 7.1 Sound sein ... Kann das bedeuten das mp4box beim demuxen da was kaputt gemacht hat ?
    Und gibt's 'ne Möglichkeit das wieder hinzubiegen ?

    Also Nyala gibt's hier ... ist jetzt eingeschaltet ... Und jetzt erscheint sie auch im MPC-hc unter Optionen -> Untertitel -> Standard Style.
    Mal schauen was Media-Portal dazu sagt ...

    Hm, ja, das klappt auch. Stellt man unter OSD die Nyala Schrift ein, so werden die Untertitel auch mit diesem Font angezeigt.


    Was mich nur wundert ist, das das nicht unter den vsfilter Optionen (MPC -> Optionen -> Untertitel -> Standard Style) geht ...
    Hintergund ist der: Media Portal benutzt die MPC Vsfilter Engine zum anzeigen der Subtitles. Auch wenn im OSD eine andere Schriftart eingestellt ist, es wird immer nur Arial benutzt ...

    Hallo zusammen,


    Ich verwende gerne das Font: Nyala für meine Untertitel.
    Aus irgend einem Grund jedoch weigert sich der MPC die Untertitel in dieser Schriftart wiederzugeben - obwohl sie im System (Win 7 x64) installiert ist.


    Die Konfiguration des MPC's steht auf "Arial" und in der Liste der verfügbaren Schriften taucht Nyala" gar nicht auf ... Ebenso diverse andere Schriftarten ...


    Meine Fragen: ich habe xy-VSFilter (neuste Version) installiert, doch der kommt nur mit besagte "handvoll" an font's und scheint nicht - wie erwartet - die System-Fonts zu nutzen.
    Sind diese (relativ) wenigen font's hard-coded ? Kann man welche nachinstallieren ? Gibt es eine weitere Option im MPC ?

    :dejection: ... ich komm nicht weiter ...


    Das Problem ist das sps:vui:time_scale & sps:vui:num_units_in_tick nicht immer an der selben Stelle im SPS stehen ... Nichtmal der SPS hat eine feste Größe und kann variieren.
    Was soviel bedeutet wie: es müssen vorher noch einige andere Bit/Bytes analysiert werden um auf die tatsächliche Position im SPS zu kommen.
    FFMpeg hat in seiner Doku die Struktur zwar abgebildet, jedoch werde ich da nicht ganz schlau draus ...


    hevc_ps.c - Ab Zeile 538 ...


    Zeile 642: vui->vui_timing_info_present_flag = get_bits1(gb);
    Ok, ab hier wird's interessant, aber ich kann nicht erkennen wie dieses Flag "gefunden" wird.


    Ich bin nicht der CPP Programmierer (komme aus dem Java Umfeld) und benötige daher etwas Hilfe den Code zu verstehen


    Das Problem scheinen die Flags zu sein ...
    Klar, meine Test-Streams haben unterschiedliche Settings und somit sind natürlich auch andere Optionen ein bzw. ausgeschaltet.
    Doch schaut man sich den Code binär an, gibt es Verschiebungen um 2 und manchmal 4 Bits ... Was ein "Ortung" extrem schwierig macht !Das würde bedeuten, die Flags werden scheinbar nicht als int's sondern wohl als Bit's gespeichert ...

    :D


    Anmerkung: Ich habe immer "mod16" oder "mod4" in Klammern geschrieben um aufzuzeigen das es hier um ein Vielfaches von 16 o. 4 und nicht um eine Modulo Operation an dieser Stelle geht !


    ok ...
    Erstes Testfile mit 1000 Frames gecoded mit folgenden Settings:

    Code
    1. "C:\Program Files (x86)\Video Tools\avs2pipemod-1.1.1\avs2pipemod.exe" -rawvideo "test.avs" | "C:\Program Files\x265\x265-2.4_37.exe" --preset slower --crf 24 --psy-rd 2.0 --psy-rdoq 10.0 --aq-mode 3 --rd 5 --me star --no-open-gop --no-sao --ctu 32 --limit-modes --input-res 1280x720 --input-depth 16 --fps 24000/1003 --output "test.h265" --input -


    Wie man sofort erkennt wird nur ein SPS geschrieben. Ich habe bewusst eine völlig abstruse Geschwindigkeit genommen um die Werte besser wiederzufinden.
    Hier mal ein Ausschnitt aus dem SPS mit den relevanten Bytes:

    Code
    1. 00 fa c0 00 17 70


    Die ersten 2 Bytes geben den Denominator an: 0xFA -> 250 -> x4 (mod4) -> 1000
    Die nächsten 2 Byte das "Offset" des Denominators (1003 kann man ja nicht durch 4 teilen ...) Nur das erste der zwei Bytes wird scheinbar ausgewertet ...
    0xC0 ist zwar dezimal 192 steht aber in diesem Fall aber für 3. ( 0x40 = 1, 0x80 = 2) ... (mod64 ???)
    Die letzten Bytes markieren die eigentlichen FPS: 0x1770 -> 6000 -> x4 (mod4) -> 24000


    ABER
    Nächstes testfile mit folgenden Optionen gecoded:

    Code
    1. "C:\Program Files (x86)\Video Tools\avs2pipemod-1.1.1\avs2pipemod.exe" -rawvideo "test.avs" | "C:\Program Files\x265\x265-2.4_37.exe" --preset faster --crf 24 --repeat-headers --limit-modes --ctu 32 --input-res 1280x720 --input-depth 16 --fps 24000/1003 --output "test.h265" --input -


    Diese Settings packen alle "paar Frames" einen neuen VPS/SPS/PPS in den Stream ...
    Nur jetzt schaut's folgendermaßen aus:

    Code
    1. 00 3e b0 00 05 dc


    Erste 2 Byte: 0x3e -> 62 -> x16 (mod16) -> 992
    Zweite 2 Bytes: 0xb0 -> 176 (nur das erste Byte wird ausgewertet ... und ja, hier ist alles "big" ;) ) Teilt man die 176 durch 16 (anstatt durch 64 wie im Beispiel oben) so bekommt man 11. Addiert man das zu 992 -> 1003
    Drittes Byte Paar: 0x05dc -> 1500 -> x16 (mod16) -> 24000


    Und nun die Große Preisfrage: Wo/wie bzw. an welcher Stelle wird angegeben ob nun in mod4, mod16 oder ... gearbeitet wird ?
    Ums besser/komplizierter zu machen sollte man sich mal einen Stream mit dem hevcbrowser anschauen