Beiträge von monarc99

    "shuffleframes" ist halt nicht optimal für mein Vorhaben, aber halt die einzige Variante.


    Code
    1. ffmpeg -y -threads 8 -ss 00:00:00.016 -i "input.avi" -to 00:52:59.826 -vf shuffleframes="-1 1 -1 3 -1" -c:v libx264 -preset medium -tune film -profile:v baseline -level 4.1 -crf 18 -pix_fmt yuvj420p -g 24 -bluray-compat 1 -flags cgop -sar 1:1 -r 24000/1001 -slices 4 -nal-hrd vbr -x264-params vbv-maxrate=40000:vbv-bufsize=30000 -color_primaries 1 -color_trc 1 -colorspace 1 -c:a ac3 -ar 48000 -ab 256k /output.mkv


    Schau dir mal die ffmpeg Filter dejudder,fieldmatch,decimate, pullup usw ... an.


    -profile:v baseline -pix_fmt yuvj420p


    die würde ich nur setzen, wenn du weisst, das du tust.

    Welche Box von welcher Firma hast du?
    Hab das mit unserer Box mir nochmal angesehen, das Knacken ist doch nicht nur in den Aufnahmen, sondern auch am TV. Ist mir nur nicht aufgefallen, weil es aussschliesslich bei Spielfilmen auftritt (die ich aber nicht live gesehen, sondern aufgenommen hatte). Bei Sendern wie ZDF Neo ists ganz schlimm, aber auch bei den anderen ÖR.
    Hier mal eine "Hörprobe": https://www.file-upload.net/do…inglerious-ger_1.mp4.html
    Geräteempfangsqualität und Stärke lt Gerät angeblich 100%
    Antenne ist eine aktive mit Verstärker.


    Ja, die 100% geben die gerne an, auch wenn es nicht stimmt. Ich hab zwar kein DVB-T2, sondern DVB-C und hatte da anfangs auch Probleme.



    Wenn das in videoplayern mittels CUDA geht eine CPU beim Playback drastisch zu entlasten, wieso sollte das in anderer Software nicht gehen?? :huh:
    Da zumindest steht auch was anderes als du sagst: https://trac.ffmpeg.org/wiki/HWAccelIntro#CUDACUVIDNvDecode
    Demnach unterstützt FFMPEG wohl CUDA und dieses Cuvid ist doch genau dasgleiche wie in den videplayern per LAV.


    Ja, und da steht


    Zitat


    CUVID offers decoders for H264, HEVC, MJPEG, mpeg1/2/4, vp8/9, vc1. Codec support varies by hardware.


    Du hast oben angeben, dass du ne GTX 660 besitzt. Mit Kepler GK 106 Chip ... der kann nur H264.
    https://developer.nvidia.com/v…decode-gpu-support-matrix


    Was es (nur unter Windows) gibt, sind diese Hybrid Decoder (so halb Software, halb auf Hardware beschleunigt). Die unterstützt ffmpeg aber nicht.


    Ändert aber nicht, das sich manch Aufnahmen der Box trotz Abo dennoch nicht öffnen lassen.
    (hier konnte ja anscheinend auch keiner beide MPGs öffnen u./o. am PC abspielen)


    Da bleibt dir aber nur die Box zu tauschen, weil andere Geräte nehmen DVB-T2 problemlos auf.


    Was machst du denn jetzt mit deinen Aufnahmen? Umrechnen? H264 / H265 ?


    Eine Möglichkeit wäre auch H265 aber auf 720p runterrechnen.


    Kleine Dateien, müsste zwar per Software decodiert werden, aber wegen 720p nicht so extrem.
    Der Qualitätsverlust hält sich in Grenzen. z.B.


    probier mal diese Datei: Aufnahmen.zip


    Da ist die ts der originale DVB-T2 Stream, die mkv auf 720p H265 runter gerechnet. Vielleicht auch ne Möglichkeit für dich.


    Die Knackser kommen wahrscheinlich daher das deine Box versucht Bild und Ton synchron zu halten. Wenn das "Gitter" (engl.) zu groß wird, wirft er entweder Video Frames weg, oder stopft die Stellen mit "irgendwas" ...


    Also ich nehme schon seit Jahren TV Sendungen auf und diese Knackser bedeuten für mich in der Regel, dass der Empfang nicht 100% ist und der Stream nicht vollständig empfangen wird.


    Den HTPC hatte ich (zum gro passiv gekühlt) als Silent PC fürs TV aufgebaut = fast 0 db + mit 32W wenig Verbrauch
    Eine GTX 1050 mit 75W TDP ist das glatte Gegenteil und auch wenn die H.265 hardwareseitig dekodieren kann, wird so ein System niemals mit 32Watt auskommen und letzlich nur laut sein.
    (auf LowProfile Karten passen max. 50-.60er Minilüfterchen und die sind alles andere als "leise")


    Wie ist es mit einem Odroid C2 + Libreelec ?
    Dekodiert dir auch H265.



    Eine neue Grafikkarte bringt auch keine fehlerfreie Tonspur 1


    Also die AAC Tonspuren in den einem Beispiel waren völlig in Ordnung.

    @monarch
    wie lautet der Befehl das er Tonspur 1 oder besser 2 nehmen soll?
    hab noch ne gesplittete Aufnahme gefunden und das anfügen geht, nur womit wandelt man diese ACM Audiospur die nun im mkv ist eigentlich wieder um? (avidemux macht da zumindest nichts und lässt die Tonspur nach dem schneiden weg)


    Wenn du willst, dass er bestimmte Streams kopieren soll, musst du sie alle einzeln in der Kommandozeile angeben.


    Zuerst rausfinden, welche IDs die Streams haben. Einmal in ffmpeg einlesen.


    ffmpeg -i 001000.mpg


    Code
    1. ... am Ende Stream #0:0[0x8e]: Audio: aac_latm (LC), 48000 Hz, stereo, fltp Stream #0:1[0x8d]: Video: hevc (Main), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc Stream #0:2[0x8f]: Audio: aac_latm (LC), 48000 Hz, stereo, fltp Stream #0:3[0x90]: Subtitle: dvb_teletext, 492x250


    Jeder Stream bekommt eine ID (diese 0:0 oder 0:1). Und jeden Stream, den du kopieren willst, gibst du jetzt mit -map in der Kommandozeile an.


    z.B. der Videostream ist 0:1 und der erste Audiostream ist 0:0


    Code
    1. ffmpeg -i 001000.mpg -c:v copy -c:a copy -sn -dn -map_metadata 0 [COLOR='#FF0000']-map 0:1 -map 0:0[/COLOR] 001000.mkv


    Aber einfacher ist es auf jeden Fall, wenn du dich nach einer Gui umsieht.


    Die Frage ist nur, ob das anhängen der gesplitteten files mit den mkv nachher synchron bliebt, müsste ich dann bei der nächsten Aufnahme nächste Woche mal austesten. (kommt ja diese Woche nix gescheites im TV)


    Oder du gehst - wie schon vorgeschlagen - mit der Datei zum Autor von mkvmerge. Wenn mkvmerge die Datei einlesen kann, hättest du automatisch ne GUI und du kannst in mkvmerge auch Dateien zusammenfügen.


    Also mit der 000800 kann ffmpeg nichts anfangen, aber die 001000 kopiert er.


    Habe mal alle Untertitel-, Datenstreams entfernt und ffmpeg jeweils einen Video- und Audiostream wählen lassen:

    Code
    1. ffmpeg -i 001000.mpg -c:v copy -c:a copy -sn -dn -map_metadata 0 001000.mkv


    https://www.file-upload.net/do…-12459642/001000.mkv.html


    Wie würdest du denn mit so einer Datei klarkommen?

    Dauert bei mir ein bißchen länger, kein Großrechner bei mir zuhause ;)
    Ja, aber bei mir ähnlich.


    Code
    1. ffmpeg -y -loglevel fatal -threads 4 -ss 00:00.042 -i froscon16-1696-eng-Voctomix_hd.mp4 -t 11.358 -map 0:0 -an -sn -f yuv4mpegpipe - | vpxenc --codec=vp9 --row-mt=1 --passes=1 --pass=1 --end-usage=cq --cq-level=25 --target-bitrate=1000 --threads=4 --tile-columns=2 -o test.vp9 -v -(5.14 fps)


    Code
    1. ffmpeg -y -loglevel fatal -threads 4 -ss 00:00.042 -i froscon16-1696-eng-Voctomix_hd.mp4 -t 11.358 -map 0:0 -an -sn -f yuv4mpegpipe - | x265 --y4m - --crf 23 -o test.h265 (20.52 fps)


    Wobei ich noch am Testen der diversen Parameter bin. z.B. ffmpeg scheint wohl andere default Werte zu verwenden. Und bei vpxenc muss ich immer ne Bitrate setzen, damit es eine Wirkung hat. Bei ffmpeg geht auch -b:v 0 und crf Wert ändern.
    Was mir noch nicht klar ist, wieso immer in allen Beispielen 2pass gemacht wird. Also auch beim Constant Quality Modus (-b:v 0 und -crf 25)


    Code
    1. ffmpeg -loglevel info -hide_banner -nostdin -y -ss 00:00.042 -threads 4 -i froscon16-1696-eng-Voctomix_hd.mp4 -t 11.358 -map 0:v:0 -threads 4 -c:v libvpx-vp9 -tile-columns 2 -row-mt 1 -frame-parallel 0 -b:v 0 -crf 25 -auto-alt-ref 1 -lag-in-frames 25 -g 128 -pix_fmt yuv420p -f webm froscon16-1696-eng-Voctomix_hd.webmframe= 284 fps= 18


    Code
    1. ffmpeg -loglevel info -hide_banner -nostdin -y -ss 00:00.042 -threads 4 -i froscon16-1696-eng-Voctomix_hd.mp4 -t 11.358 -map 0:v:0 -c:v libx265 -crf 23 -pix_fmt yuv420p froscon16-1696-eng-Voctomix_hd.mkv
    2. frame= 284 fps= 20

    Danke fürs Beileid ... einen guten Nebeneffekt hat die Sache. Es wird schön warm in der Bude.


    Ich teste gerade row-mt=1 (neu in 1.6.1), ob es was bringt.


    Code
    1. With the improved threading scheme, VP9 encoder can achieve:
    2. >100% speed improvement for 720p/1080p videos by allowing the encoder to use more than 4 threads;
    3. fast encoding by enabling multi-threads for small resolution videos;
    4. >10% speed improvement even when there is no change of number of encoding threads.

    Ja ist für Youtube.
    Youtube hat was doe Fps angeht zwei verschiedene Encoding Einstellungen.
    Einmal alles bis 30 Fps, das bekommt dann eine geringere Bitrate.
    Und dann noch von 41 - 60 Fps, hierbei wird dann das HFR Encoding freigeschaltet, was eine deutliche Steigerung der Bitrate zur Folge hat.


    Kann man denn nur x264 als 10bit Format bei Youtube hochladen? Oder gibts noch andere 10bit Formate, die Youtube nimmt.
    Kann mich erinnern, dass man früher auch keine x26410bit Videos hochladen konnte. Was geht denn inzwischen? (VP9 10bit Profile 2/3?)


    Zu den 60 fps: Du meinst jetzt, wie Youtube es umrechnet. Da hast du sicher Recht, aber das war nicht mein Gedanke.
    Youtube wird hauptsächlich auf Monitoren, Displays gesehen. Die laufen fast alle auf 60hz. Und auch TVs in Europa können 60hz.
    Du produzierst also Content, der dann hauptsächlich auf 60hz Geräten konsumiert werden soll. Daran würde ich mich automatisch anpassen.


    Andernfalls würden mir dann so Fragen einfallen: wenn ich eine flüssige Bewegung mit 50fps aufnehme und mit 60hz (ohne irgendwelche Filter) abspiele, wird sie dann noch 100% flüssig dargestellt?



    Dadurch das der eigene Encoder von MeGui schneller ist, habe ich bei 8 Bit eine Performance Steigerung.
    Mit 10 Bit sieht es dann natürlich etwas anders aus.


    Interessant. Weil es gibt eigentlich nur x264 als Encoder ... bei ffmpeg ist x264 nur eincompiliert ins ffmpeg Binary.



    Ich nutze ein *.bat, mit dem Inhalt:


    Das geht auch mit nur einem ffmpeg Aufruf, dann muss die Datei nur einmal dekodiert werden, anstatt 3x mal.


    zB.

    Code
    1. ffmpeg -ss 00:10:00 -t 00:05:00 -i input -acodec pcm_s16le -map 0:1 "audio1.wav" -acodec pcm_s16le -map 0:2 "audio2.wav" -f yuv4mpegpipe -map 0:v - | x264 - --demuxer y4m --preset veryfast --crf 18 --output "video.mkv"




    Die Audiodateien die ausgespuckt werden, sind in der länger und der Synchronität zum Video aber in Ordnung.
    Kann ich das einfach ignorieren oder muss da noch was geändert werden?


    Die Warnungen machen mir eigentlich keine Sorgen. Da ich ffmpeg gewohnt bin, ffmpeg spuckt sehr viele Warnungen aus.


    Wo ich mir aber nicht sicher bin:
    In den 8h Aufnahme wird es hin und wieder vorkommen, dass der Rechner nicht genug Ressourcen hat, um durchgängig 50 oder 60 fps aufzunehmen. (vielleicht hast du dann eine variable Framerate in der Aufnahme?)
    Ob das bei deiner Methode dann synchron bleiben wird, kann ich nicht sagen.