feat: profils d'encodage SVT-AV1 par type de contenu

- Défaut (BluRay live action) : tune=0 + film-grain=8 + enable-qm=1:qm-min=0:scd=1
- --animation : tune=2 (SSIM, meilleur pour aplats/contours) + film-grain=4 (dithering)
- --vhs : tune=0 + irefresh-type=1 + enable-tf=0 (source débruitée, pas de film-grain)
- enable-qm=1:qm-min=0 et scd=1 appliqués à tous les profils (gains gratuits)
- --animation est maintenant fonctionnel

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-23 00:03:31 +01:00
parent dbcf5d55d7
commit 4e69c3e05b
2 changed files with 8 additions and 2 deletions

View File

@@ -57,4 +57,4 @@ Fichier unique : `vid_convert.py`. Flux d'exécution séquentiel :
- **Fichier de sortie** : `NEW_{nom_source}.mkv`, généré dans le même répertoire que la source. Les fichiers temporaires (`_video.mkv`, `_audio_*.mka`, `_subtitle_*.mkv`) sont supprimés après assemblage. - **Fichier de sortie** : `NEW_{nom_source}.mkv`, généré dans le même répertoire que la source. Les fichiers temporaires (`_video.mkv`, `_audio_*.mka`, `_subtitle_*.mkv`) sont supprimés après assemblage.
- **Fichiers temporaires orphelins** : en cas d'interruption, les intermédiaires peuvent rester dans le répertoire de la source. Les supprimer manuellement si besoin. - **Fichiers temporaires orphelins** : en cas d'interruption, les intermédiaires peuvent rester dans le répertoire de la source. Les supprimer manuellement si besoin.
- **HDR10+ et conteneur source** : `hevc_mp4toannexb` est appliqué uniquement pour les sources MP4/MOV (pas MKV) lors de l'extraction HDR10+ par `hdr10plus_parser`. - **HDR10+ et conteneur source** : `hevc_mp4toannexb` est appliqué uniquement pour les sources MP4/MOV (pas MKV) lors de l'extraction HDR10+ par `hdr10plus_parser`.
- **`--animation` non fonctionnel** : le flag est parsé mais n'a pas d'effet (tune=0 est utilisé pour tous les contenus). Conservé pour compatibilité future. - **Profils d'encodage par contenu** : les flags `--animation` et `--vhs` modifient `enc_options` passé à SVT-AV1. Défaut (BluRay live action) : `tune=0:film-grain=8`. Animation : `tune=2:film-grain=4`. VHS : `tune=0:irefresh-type=1:enable-tf=0` (pas de film-grain, source déjà débruitée par hqdn3d).

View File

@@ -322,7 +322,13 @@ if __name__ == '__main__':
stabilization(file) stabilization(file)
cropsize = cropping(file, infos) cropsize = cropping(file, infos)
volumes = volume_audio(file, infos) volumes = volume_audio(file, infos)
enc_options = 'preset=3:tune=0' base = 'preset=3:enable-qm=1:qm-min=0:scd=1'
if args.animation:
enc_options = f'{base}:tune=2:film-grain=4'
elif args.vhs:
enc_options = f'{base}:tune=0:irefresh-type=1:enable-tf=0'
else:
enc_options = f'{base}:tune=0:film-grain=8'
is_hdr = 'side_data_list' in infos['video'] or 'hdr10plus' in infos['video'] is_hdr = 'side_data_list' in infos['video'] or 'hdr10plus' in infos['video']
crf = find_crf(file, enc_options, hdr=is_hdr) crf = find_crf(file, enc_options, hdr=is_hdr)
for track in infos['subtitles']: for track in infos['subtitles']: