[Verzoek] Bijgewerkte versies van FFMPEG en Handbrake in MCEBuddy?

Als ik kijk naar de FFMPEG-versie in MCEBuddy, staat er „N-95085-g525de95679”, wat weinig zegt over de datums/versies van FFMPEG. Er staat dat het is gebouwd met gcc 20190918, maar het is onduidelijk of dit de datum is van de GCC-compiler die gebruikt is om deze versie van FFMPEG te bouwen, of de datum waarop FFMPEG uit de git-bronverzameling is gehaald en gecompileerd.

Ik zie dat Gyan Doshi wekelijkse builds plaatst die wel de NVENC- en NVDEC-encoders/decoders bevatten.
Zie hier: Builds - CODEX FFMPEG @ gyan.dev

Handbrake lijkt versie 1.3.3 te zijn met nVenc-versie 12.0.
De huidige versie is 1.5.1. Ik weet niet of Handbrake de NVDEC-decoder bevat of alleen de NVENC-encoder.

Mijn vraag is: kunnen we .exe-bestanden voor FFMPEG en HandbrakeCLI vervangen door drop-in replacements van nieuwere versies?

Zo niet, wanneer kunnen we verwachten dat deze kritieke hulpprogramma’s in MCEBuddy naar actuele versies worden bijgewerkt?

Is het mogelijk om de GPU-decoders te gebruiken voor comskip?

We testen nieuwere versies van de verschillende tools. We moeten testen op stabiliteit en prestaties (en compatibiliteit). Vaak hebben nieuwere versies bugs of soms juist minder goede prestaties; we hebben bijvoorbeeld verschillende builds van HandBrake voor Intel QSV-conversies en voor NVENC-conversies. Elke testcyclus duurt weken met 24x7-testen op veel machines en honderdduizenden bestanden voordat ze zijn gecertificeerd voor algemeen gebruik met MCEBuddy.

Maar voor persoonlijk gebruik: ga vooral een vervanging uitproberen, test het en deel gerust je feedback.

Bijgewerkte FFMPEG is ook iets waar ik ongeduldig op wacht.

Ik gebruik MCEBuddy niet langer om mijn opnames te hercoderen omdat het de AC-4-audio die in ATSC 3.0 wordt gebruikt niet ondersteunt. In plaats daarvan laat ik de bestanden gewoon kopiëren en hernoemen, en laat ik Emby ze transcoden omdat Emby wel een bijgewerkte FFMPEG heeft die dit aankan. Maar ik zou heel graag weer MCEBuddy gaan gebruiken, aangezien ik daarmee zoveel meer configuratie- en controleopties heb.

Ffmpeg releaseversies ondersteunen ac-4 nog niet. Het is nog in ontwikkeling, maar als je de prerelease dev-builds hebt, kun je die altijd inzetten en gebruiken met MCEBuddy.

De Emby-builds zijn gebaseerd op een FFMPEG 5-tree.
In transcode-logboeken zie ik:

*01:56:01.333 ffmpeg version 5.1-emby_2022_10_11 Copyright (c) 2000-2022 the FFmpeg developers and softworkz for Emby LLC*
*01:56:01.334 built with gcc 10.3.0 (Rev5, Built by MSYS2 project)*

Ik heb geprobeerd die te vervangen door de MCEBuddy-builds, maar daarna werden de taken niet uitgevoerd. Het is al even geleden, maar voor zover ik me herinner was de commandoregel die MCEBuddy aan FFMPEG doorstuurde niet effectief.

Met vriendelijke groet,

-Scott

Ik heb Handbrake-CLI v1.5.1 geïnstalleerd en tot nu toe werkt alles prima. Geen problemen. Win10x64 22H2 (19045.2364), i5-4430, RTX-2060.

Het lijkt erop dat de GPU-ventilatoren trager draaien dan op volle toeren. GPU-gebruik lijkt 60-70% te zijn, misschien iets lager? CPU-gebruik blijft rond de ~95% tijdens het encoderen.

Ik heb hetzelfde bestand niet met beide versies geprobeerd, maar dezelfde show op hetzelfde kanaal die eerder met MCE Buddy en Handbrake 1.3.1 is verwerkt, lijkt een lagere chroma te hebben dan de show die met 1.5.1 is verwerkt, toen ik beide naast elkaar afspeelde en de video synchroniseerde om te zien hoe ze verschilden tussen de twee Handbrake-versies.

Ik weet niet of de verwerkingstijd trager of sneller is tussen de Handbrake-versies. Ik transcoder naar H.265 en AC3 in een MKV-container.

Update over mijn (beperkte, 1 datapunt, Intel i5-Haswell, RTX2060) drop-in updates:
Handbrake CLI 1.6.1 – OK, vanaf 1.3.3. CLI-qsv (1.0.7) niet aangeraakt, al claimt 1.6.1 ondersteuning, dus qsv-versie niet meer nodig?
MKVMerge en MKVExtract 74.0.0 – OK, vanaf 17.0.0 (download portable en pak losse utilities uit)
AVIdemux 2.8.1 – OK, vanaf 2.7.1 (app herstructureerd, alleen plugins-map behouden)

FFMPEG 6.0 stabiel uitgebracht! Gebruikte gyan.dev builds.
Details: FFmpeg

> ffmpeg -version
ffmpeg version 6.0-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads 
  --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls 
  --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib 
  --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 
  --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid 
  --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation 
  --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab 
  --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm 
  --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc 
  --enable-d3d11va --enable-dxva2 --enable-libvpl --enable-libgme 
  --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame 
  --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm 
  --enable-libopencore-amrnb --enable-libopus --enable-libspeex 
  --enable-libvorbis --enable-librubberband
libavutil      58.  2.100 / 58.  2.100
libavcodec     60.  3.100 / 60.  3.100
libavformat    60.  3.100 / 60.  3.100
libavdevice    60.  1.100 / 60.  1.100
libavfilter     9.  3.100 /  9.  3.100
libswscale      7.  1.100 /  7.  1.100
libswresample   4. 10.100 /  4. 10.100
libpostproc    57.  1.100 / 57.  1.100

Comskip – 0.80.003. Huidige donateur-versie is 0.82.012.
Onzeker of het externe ffmpeg gebruikt of een ingebedde versie heeft.
Hopelijk gebruikt het degene die door MCEBuddy wordt meegeleverd.

Even korte notitie over de release van HandBrake 1.7 die zojuist op GitHub is geplaatst. Opvallend is dat de meegeleverde FFMPEG versie 6.1 zal zijn, met ondersteuning voor AV1, inclusief NVENC. De officiële release zou binnen enkele dagen moeten verschijnen; hij is nu al in de nightly builds te vinden.

Zie Github NEWS

Video

  • AMD VCN AV1-encoder toegevoegd
  • NVIDIA NVENC AV1-encoder toegevoegd
  • Ondersteuning voor SVT-AV1 multi-pass ABR-modus toegevoegd
  • Ondersteuning voor het behouden van ambient viewing environment-metadata toegevoegd
  • QSV Rotate- en Format-filters toegevoegd
  • Verbeterde prestaties op arm64 / aarch64 / Apple Silicon-architecturen
    • Nieuwste FFmpeg levert snellere HEVC-decodering, 30% snellere bwdif-filter
    • Nieuwe SVT-AV1-assemblage-optimalisaties leveren tot 4× snellere prestaties
  • Verbeterde videosnelheid door het verwijderen van onnodige frame-kopieën voor beter geheugengebruik
  • Verbeterde Dolby Vision-dynamic-range-metadata doorgeefoptie
    • Ondersteunde encoders: x265 10-bit
    • Ondersteunde profielen en cross-compatibility-ID’s: 8.4, 8.1, 7.6 (alleen basislaag, geconverteerd naar 8.1), 5.0
  • Verbeterde HDR10±dynamic-range-metadata doorgeefoptie
    • Ondersteunde encoders: x265 10-bit, SVT-AV1
  • Verbeterde QSV-ondersteuning op Linux (#4958)
  • NVENC bijgewerkt: gebruikt standaard geen multi-pass meer; is als geavanceerde optie instelbaar
  • 2-pass-encode-optie hernoemd naar multi-pass (#5019)
  • Intel QSV-encoder die in sommige gevallen groene video uitvoert opgelost (#4842, #4876)
  • Pixelformaat-conversie die kleuren lichtelijk wijzigde bij 10-bit hardware-encoder opgelost (#5011)
  • Scan-fouten opgelost door swscale in plaats van zscale te gebruiken wanneer de bronresolutie niet mod 2 is
  • Onjuiste PAR bij het lezen van een anamorfe AV1-videospoor opgelost
  • Kunstmatige bitrate-limiet op VP9 CQ-modus verwijderd

Opdrachtregelinterface

  • --two-pass hernoemd naar --multi-pass en --no-two-pass naar --no-multi-pass, -2 verwijderd (#5019)
  • Automatisch croppen ingeschakeld ondanks preset met croppen uitgeschakeld opgelost (#5055)

Audio

  • Laag volume bij downmixen van ac3 en eac3 opgelost
  • Alleen-links en alleen-rechts mono mixdowns opgelost (#3533, #5054)

Ondertitels

  • Locale-instellingen die mogelijk een verkeerd decimaalscheidingsteken in SSA-headers veroorzaakten opgelost
  • Mogelijk probleem met ondertitels van nulduur opgelost

Bouwsysteem

  • Meson-bouwsysteem voor de Linux-GUI toegevoegd

Derde-partij-bibliotheken

  • Nieuwe bibliotheken
    • libdovi 3.2.0 (Dolby Vision-dynamic-range-metadata)
  • Bijgewerkte bibliotheken
    • AMF 1.4.30 (AMD VCN-video-encoder)
    • FFmpeg 6.1 (decodering en filters)
    • FreeType 2.13.2 (ondertitels)
    • Fribidi 1.0.13 (ondertitels)
    • HarfBuzz 8.2.2 (ondertitels)
    • libass 0.17.1 (ondertitels)
    • libdav1d 1.3.0 (AV1-video-decodering)
    • liblzma (xz) 5.4.5 (LZMA-video-decodering, b.v. TIFF)
    • libopus 1.4 (Opus-audio-encoder)
    • libjpeg-turbo 3.0.1 (preview-beeldcompressie)
    • libvpx 1.13.1 (VP8/VP9-video-encoder)
    • libxml 2.11.5 (algemeen)
    • oneVPL 2023.3.1 (Intel QSV-video-encoder/decoder)
    • SVT-AV1 1.7 (AV1-video-encoder)
    • x264 164 r3107 (H.264/AVC-video-encoder)
    • x265 r12776 (H.265/HEVC-video-encoder)
    • zimg 3.0.5 (kleurconversie)
    • zlib 1.3 (algemeen)

Opvallend hierboven is de opname van NVENC SV1 (nVidia-hardware-encodering naar SV1).
Dit zit nu in de Handbrake-nightlybuilds, en Handbrake 1.7.0 zou binnenkort moeten verschijnen.

NVENC SV1 GPU-encodering is echter alleen beschikbaar op de nieuwe Ada (RTX40-serie) kaarten.

Het is onbekend of nVidia de encoder zal backporten naar de RTX10-serie (Pascal), RTX20-serie (Turing) of RTX30-serie (Ampere) kaarten. Ik heb geen RTX40-serie kaart, dus ik zie de optie niet.

Als ik een RTX40-serie kaart krijg, dan is dat het keerpunt voor mij om over te stappen van x265.

De open-codec audio-equivalent van SV1 is Opus. Helaas is er tot nu toe weinig ondersteuning voor de codec in apparaten, en is er significante verankerde media- en ondersteuning voor met octrooien belaste codecs zoals AAC, AC3, E-AC3 en Dolby 5.1.

Dus voor nu ziet mijn toekomstige media-encodering eruit als SV1 en AAC.