[Demande] Versions mises à jour de FFMPEG et Handbrake dans MCEBuddy ?

En regardant la version de FFMPEG dans MCEBuddy, il est indiqué « N-95085-g525de95679 », ce qui ne révèle pas grand-chose sur les dates/versions de FFMPEG. Il est mentionné qu’elle a été compilée avec gcc 20190918, mais on ne sait pas si c’est la date du compilateur GCC utilisé pour compiler cette version de FFMPEG ou la date à laquelle FFMPEG a été extrait du dépôt git et compilé.

Je vois que Gyan Doshi publie des builds hebdomadaires qui incluent bien les encodeurs/décodeurs NVENC et NVDEC.
Voir ici : Builds - CODEX FFMPEG @ gyan.dev

Handbrake semble être en version 1.3.3 avec nVenc version 12.0.
La version actuelle est 1.5.1. Je ne sais pas si Handbrake inclut le décodeur NVDEC ou seulement l’encodeur NVENC.

Ma question est : pouvons-nous remplacer les fichiers .exe de FFMPEG et HandbrakeCLI par des versions plus récentes en simple drop-in ?

Si ce n’est pas possible, quand peut-on s’attendre à ce que ces utilitaires critiques soient mis à jour aux versions actuelles dans MCEBuddy ?

Est-il possible d’exploiter les décodeurs GPU pour comskip ?

Nous testons les versions plus récentes des différents outils. Nous devons vérifier la stabilité et les performances (ainsi que la compatibilité). Souvent, les versions plus récentes comportent des bogues ou parfois des performances inférieures ; par exemple, nous avons différentes versions de HandBrake pour les conversions Intel QSV et pour les conversions NVEnc. Chaque cycle de test prend des semaines de tests 24h/24 et 7j/7 sur de nombreuses machines et des centaines de milliers de fichiers avant d’être certifié pour une utilisation générale avec MCEBuddy.

Mais pour un usage personnel, allez-y absolument, remplacez simplement le fichier, testez-le et n’hésitez pas à partager vos commentaires.

1 « J'aime »

La mise à jour de FFMPEG est également quelque chose que j’attends avec impatience.

Je n’utilise plus MCEBuddy pour réencoder mes enregistrements car il ne gère pas l’audio AC-4 utilisé dans l’ATSC 3.0. Au lieu de cela, je me contente de copier et renommer les fichiers, puis je laisse Emby les transcoder car Emby dispose d’un FFMPEG mis à jour qui le prend en charge. Mais j’aimerais vraiment pouvoir réutiliser MCEBuddy, car il me offre beaucoup plus d’options de configuration et de contrôle.

Les versions officielles de FFmpeg ne prennent pas encore en charge l’AC-4. C’est toujours en développement, mais si vous disposez des versions de développement préliminaires, vous pouvez toujours les utiliser avec MCEBuddy.

1 « J'aime »

Les builds Emby sont basés sur un arbre FFMPEG 5.
Dans les journaux de transcodage, je vois :

*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)*

J’ai essayé de les remplacer par les builds MCEBuddy, mais ensuite les tâches ne s’exécutaient plus. Ça remonte à un moment, mais si je me souviens bien, la ligne de commande que MCEBuddy passait à FFMPEG ne faisait pas le travail.

Cordialement,

-Scott

J’ai installé Handbrake-CLI v1.5.1 et, pour l’instant, tout fonctionne bien. Aucun problème. Win10x64 22H2 (19045.2364), i5-4430, RTX-2060.

Il semble que les ventilateurs du GPU tournent à un régime inférieur à leur maximum. L’utilisation du GPU est d’environ 60-70%, peut-être un peu moins ? L’utilisation du CPU reste autour de 95% pendant l’encodage.

Je n’ai pas traité le même fichier avec les deux versions, mais la même émission sur la même chaîne, traitée précédemment avec MCE Buddy et Handbrake 1.3.1, semble avoir une chroma plus faible que celle traitée avec 1.5.1 quand je les ai lues côte à côte et synchronisées pour voir les différences entre les deux versions de Handbrake.

Je ne sais pas si le temps de traitement est plus lent ou plus rapide entre les versions de Handbrake. Je transcode en H.265 et AC3 dans un conteneur MKV.

Mise à jour de mes tests de mises à jour directes (limités, 1 point de données, Intel i5-Haswell, RTX2060) :
Handbrake CLI 1.6.1 - OK, depuis 1.3.3. N’ai pas touché CLI-qsv (1.0.7), bien que 1.6.1 prétende prendre en charge, donc la version qsv n’est plus nécessaire ?
MKVMerge et MKVExtract 74.0.0 - OK, depuis 17.0.0 (télécharger la version portable et extraire les utilitaires individuels)
AVIdemux 2.8.1 - OK, depuis 2.7.1 (l’application a été restructurée, j’ai juste gardé le répertoire plugins)

FFMPEG 6.0 stable est sorti ! J’ai utilisé les builds de gyan.dev.
Détails : 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. La version actuelle des donateurs est 0.82.012.
Je ne sais pas s’il utilise le ffmpeg externe ou s’il a sa version intégrée.
Espérons qu’il utilisera celui fourni par MCEBuddy.

1 « J'aime »

Juste une note sur la sortie de HandBrake 1.7 publiée sur GitHub. À noter, l’intégration d’FFmpeg v6.1 et le support d’AV1, y compris NVENC. La version officielle devrait arriver dans les prochains jours, elle est déjà disponible dans les versions nightly.

Voir Github NEWS

Vidéo

  • Ajout de l’encodeur AMD VCN AV1
  • Ajout de l’encodeur NVIDIA NVENC AV1
  • Ajout du support du mode ABR multi-passe SVT-AV1
  • Ajout du support de la préservation des métadonnées d’environnement de visionnement ambiant
  • Ajout des filtres QSV Rotate et Format
  • Amélioration des performances sur architectures arm64 / aarch64 / Apple Silicon
    • Le dernier FFmpeg offre un décodage HEVC plus rapide, un filtre bwdif 30 % plus rapide
    • Les nouvelles optimisations d’assemblage SVT-AV1 offrent jusqu’à 4× plus de performance
  • Amélioration de la vitesse de conversion vidéo en supprimant les copies de trames inutiles pour une meilleure efficacité mémoire
  • Amélioration du passage des métadonnées de plage dynamique Dolby Vision
    • Encodeurs pris en charge : x265 10-bit
    • Profils et ID de compatibilité croisée pris en charge : 8.4, 8.1, 7.6 (couche de base uniquement, converti en 8.1), 5.0
  • Amélioration du passage des métadonnées de plage dynamique HDR10+
    • Encodeurs pris en charge : x265 10-bit, SVT-AV1
  • Amélioration du support QSV sous Linux (#4958)
  • Mise à jour de NVENC pour ne plus utiliser le multi-passe par défaut ; option avancée configurable par l’utilisateur
  • Renommage de l’option d’encodage 2-pass en multi-pass (#5019)
  • Correction de l’encodeur Intel QSV produisant une vidéo verte dans certains cas (#4842, #4876)
  • Correction de la conversion de format de pixel modifiant légèrement les couleurs avec un encodeur matériel 10-bit (#5011)
  • Correction des échecs de scan en utilisant swscale au lieu de zscale quand la résolution source n’est pas mod 2
  • Correction du PAR incorrect lors de la lecture d’une piste vidéo AV1 anamorphique
  • Suppression d’une limite artificielle de débit en mode CQ VP9

Interface en ligne de commande

  • Renommage de --two-pass en --multi-pass et de --no-two-pass en --no-multi-pass, suppression de -2 (#5019)
  • Correction du recadrage automatique activé malgré l’utilisation d’un préréglage avec recadrage désactivé (#5055)

Audio

  • Correction du niveau de volume faible lors du downmix ac3 et eac3
  • Correction des mixages mono gauche-seul et droite-seul (#3533, #5054)

Sous-titres

  • Correction des paramètres régionaux pouvant causer un séparateur décimal incorrect dans les en-têtes SSA
  • Correction d’un problème potentiel affectant les sous-titres de durée nulle

Système de compilation

  • Ajout du système de compilation Meson pour l’interface Linux

Bibliothèques tierces

  • Nouvelles bibliothèques
    • libdovi 3.2.0 (métadonnées de plage dynamique Dolby Vision)
  • Bibliothèques mises à jour
    • AMF 1.4.30 (encodage vidéo AMD VCN)
    • FFmpeg 6.1 (décodage et filtres)
    • FreeType 2.13.2 (sous-titres)
    • Fribidi 1.0.13 (sous-titres)
    • HarfBuzz 8.2.2 (sous-titres)
    • libass 0.17.1 (sous-titres)
    • libdav1d 1.3.0 (décodage vidéo AV1)
    • liblzma (xz) 5.4.5 (décodage vidéo LZMA, ex. TIFF)
    • libopus 1.4 (encodage audio Opus)
    • libjpeg-turbo 3.0.1 (compression d’image d’aperçu)
    • libvpx 1.13.1 (encodage vidéo VP8/VP9)
    • libxml 2.11.5 (général)
    • oneVPL 2023.3.1 (encodage/décodage vidéo Intel QSV)
    • SVT-AV1 1.7 (encodage vidéo AV1)
    • x264 164 r3107 (encodage vidéo H.264/AVC)
    • x265 r12776 (encodage vidéo H.265/HEVC)
    • zimg 3.0.5 (conversion des couleurs)
    • zlib 1.3 (général)

Notable dans ce qui précède, l’inclusion de NVENC SV1 (encodage matériel nVidia vers SV1).
Ceci est désormais présent dans les versions nocturnes de Handbrake, et Handbrake 1.7.0 devrait sortir très prochainement.

Cependant, l’encodage GPU NVENC SV1 n’est disponible que sur les nouvelles cartes Ada (série RTX40).

On ne sait pas si nVidia rétrogradera l’encodeur vers les séries RTX10 (Pascal), RTX20 (Turing) ou RTX30 (Ampere). Je n’ai pas de carte RTX40, donc je ne vois pas l’option.

Si j’obtiens une carte RTX40, ce sera le point de basculement pour que je passe de x265.

L’équivalent audio de codec ouvert à SV1 est Opus. Malheureusement, il y a peu de support (jusqu’à présent) dans les appareils pour ce codec, et un fort ancrage médiatique et un support pour des codecs sous brevets comme AAC, AC3, E-AC3 et Dolby 5.1.

Donc pour l’instant, mon futur encodage multimédia ressemble à SV1 et AAC.