![[Ressources] Divers guides sur l'encodage et l'édition de sous-titres](https://external-preview.redd.it/OAXSl8SY6T3JK9MGQyKxkoYbqZ71HQRYXLeB8CV0NXg.png?width=1080&crop=smart&auto=webp&s=912f966e123e94e32e7975fe8aebac89450a6b98)
[Ressources] Divers guides sur l'encodage et l'édition de sous-titres
Suite à l'hécatombe qui se produit en ce moment, entre les trackers et les teams qui ferme boutique, je pense que c'est le moment plus que jamais de s'investir pour ceux qui le souhaite. Et comme j'ai eu beaucoup de mal à trouver des ressources pertinentes pour l'encodage vidéo et l'édition de sous-titres, je me dis que ce post pourra aider au moins quelques personnes à se lancer.
Disclaimer : Je suis moi-même un débutant, et j'ai encore beaucoup à apprendre. Je ne suis donc pas là pour vous indiquer quels sont les meilleurs settings, car je n'ai pas les compétences nécessaires pour être pertinent. Ici mon but est de donner les meilleures ressources et méthodologie que j'ai pu chiner depuis une bonne année.
Disclaimer 2 : Je rentre dans des détails assez techniques pour certaines parties, elles ne sont absolument pas obligatoires. J'ai moi-même mis du temps avant de rentrer dedans, commencer à votre rythme.
Ce poste est fait pour que quiconque puissent prendre la liberté de me corriger ou de proposer d'autres astuces ou guides évidemment !
[Débutant] Ressources pour l'encodage vidéo/audio
Un must à lire avant toute chose, il aborde les bases pour comprendre tous les concepts qui gravitent autour d'une piste vidéo : arch1t3cht/video_noob_guide.md
Maintenant pour ce qui est des ressources liées aux encodeurs en eux même :
- Codec Wiki - Très bon guide simple pour apprendre les différents paramètres d'encodage vidéo et audio quand on débute
- JET Encoding Guide - Guide spécialisé pour les animes, mais procure plein d'explication plus détaillé.
- thewiki.moe - Encoding Ressouces - Liste de ressources aussi spécialisée pour les animes. Possède aussi une page sur la qualité : Quality
Reconnaitre les artefacts vidéos
Plus vous allez optimiser la compression, plus il y a de risque de créer des artefacts. Donc apprendre à les reconnaitre est primordiale pour éviter tout problème avec votre encode qui aurait pu vous échapper :
- arch1t3cht/video_noob_guide.md - learning-to-spot-quality-loss
- JET Encoding Guide - Recognizing Artifacts - Spécialisé pour les animes, mais reste applicable à tout encode
- Codec Wiki - Spotting Video Artifacts
[Avancé] Tester et vérifier la qualité de son encode
Chaque piste vidéo est unique avec ses propres spécificités (grain, résolution, etc). Il n'existe donc pas de paramètre d'encodage universel. Il est donc souhaitable d'avoir une bonne méthodologie pour peaufiner ses paramètres et obtenir un bon encode.
C'est une partie qui s'adresse à des personnes plus techniques comme cela demande de faire un peu de code. De même si vous n'avez jamais fait d'encode auparavant, je conseille de passer votre chemin pour d'abord, vous familiarisez avec l'encodage classique.
Mais c'est de loin ce qui permet d'apprendre le plus et d'améliorer ses encodes pour obtenir un meilleur résultat.
L'objectif est d'encoder seulement quelques minutes de votre vidéo puis d'utiliser un programme pour comparer la différence entre votre encode et la source. Avec, vous pourrez même uploader sur internet votre comparaison pour demander des avis, exemple : https://slow.pics/c/Ii37MGYv
EDIT : En mp on m'a signalé plusieurs choses :
- La méthode d'installation a changé récemment et le guide n'a pas encore été mis à jour (cela peut donc mener à une installation bancale).
- `vstools.set_output` est déprécié, il faut l'importer depuis `vspreview` ou `vsview` directement désormais exemple :
from vsview import set_output - vspreview est déprécié et remplacé par vsview
Pour ce faire :
1 - JET Encoding Guide - Installation - Installer Vapoursynth
2 - Créer un fichier script python decoupage_video.vpy pour garder seulement quelques minutes de votre vidéo (reddit ne veux pas correctement formater ma zone de "code bloc" donc c'est écrit en brut)
====
from vstools import core, set_output, initialize_clip
import awsmfunc as awf
# Chargement de votre vidéo source
videoSource = core.bs.VideoSource("./Chemin/vers/votre/video.mkv", showprogress=True)
videoSource = initialize_clip(videoSource)
# On découpe la vidéo pour ne garder que quelques scènes
videoDecoupe = awf.SelectRangeEvery(videoSource, every=30000, length=500, offset=[10000, 9000])
# On définit la piste vidéo en sortie
set_output(videoDecoupe , "SourceDecoupe")
====
3 - Encoder votre vidéo, exemple si vous voulez tester le CRF, dans le terminal (cmd) :
vspipe -c y4m decoupage_video.vpy - | x265 --y4m --preset fast --crf 20 -o encode_crf20.mkv -vspipe -c y4m decoupage_video.vpy - | x265 --y4m --preset fast --crf 21 -o encode_crf21.mkv -
4 - Maintenant vous pouvez comparer avec votre vidéo source. Dans un nouveau fichier script comparaison.vpy
====
from vstools import core, set_output, initialize_clip
import awsmfunc as awf
# Chargement de votre vidéo source et on garde la découpe
videoSource = core.bs.VideoSource("./Chemin/vers/votre/video.mkv", showprogress=True)
videoSource = initialize_clip(videoSource)
videoSource = awf.SelectRangeEvery(videoSource, every=30000, length=500, offset=[10000, 9000])
# Chargement des deux encodes qu'on voulait tester
encode_crf15 = core.bs.VideoSource("./Chemin/vers/votre/video_crf15.mkv")
encode_crf15 = initialize_clip(encode_crf15)
encode_crf14 = core.bs.VideoSource("./Chemin/vers/votre/video_crf14.mkv")
encode_crf14 = initialize_clip(encode_crf14)
# On indique toutes les pistes vidéos en sortie
set_output(videoSource, "Source")
set_output(encode_crf15, "Encode CRF 15")
set_output(encode_crf14, "Encode CRF 14")
====
Regarder le résultat via la commande : vspreview comparaison.vpy. Vous aurez juste à utiliser les touches de votre clavier (shift + chiffre en haut du clavier) pour alterner entre les pistes vidéos. Il suffit de recommencer ces étapes avec d'autres paramètres, un à un, pour peaufiner votre encode finale.
Note : Même si cela ne se fait pas beaucoup en France, vous pouvez aussi uploader une comparaison entre la source et votre encode dans la description de votre release. C'est notamment un peu plus populaire sur la scène anime international. Il existe aussi un site qui répertorie des comparaisons sur la majorité des animes pour déterminer le meilleur encode : SeaDex.
Les communautés
Il existe plusieurs endroits où trouver des communautés :
- Principal forum pour l'encodage : Doom9
- Subreddit : r/AV1 r/handbrake
Il existe aussi de nombreux Discord anglais qui regorge d'information de qualité. Vous retrouverez ceux respectifs au codec wiki ainsi que le JET guide que j'ai link dans les ressources, mais il en existe d'autres.
Sous-titrages
Les ressources sont principalement en anglais et un peu difficile à trouver, cependant les normes de sous-titrages françaises peuvent dévier des normes anglaises. Voici des normes française : https://www.ataa.fr/documents/NORMES_FR_2022.4.pdf
Netflix a un guide de style pour le français qui peut donc être intéressant : French (France) Timed Text Style Guide
La suite est plus à destination des animes, comme c'est encore aujourd'hui là où il y a le plus de travail à faire dû au manque de traduction officiel et surtout au manque de stylisation des sous-titres.
J'attaque avec le typesetting. Notamment car cela augmente fortement la qualité des sous-titres officiels.
C'est l'action de rendre les sous-titres esthétiquement intégrés à la vidéo. L'objectif est d'améliorer l'immersion, voici quelques exemples : https://slow.pics/c/2JPfPNLX / https://slow.pics/c/uCPDkZjq
C'est une tâche qui peut se faire tout seul, et peu être relativement rapide selon l'anime en question. Soit vous pouvez adapter en français un typeset qu'une team anglaise à déjà effectuer. Soit partir de zéro si personne ne l'a jamais fait.
Voici les ressources liées :
- Phos's Fansubbing Guide - Introduction à l'édition de sous-titres, avec toutes les informations nécessaires pour apprendre
- unanimated.github.io - Un vieux guide mais il reste néanmoins intéressant
- Le discord anglais de GJM ou d'autres fansub - Comme dit précédemment, il regorge d'information dans les discussions.
Pour tout ce qui est du reste (traduction, timing, etc), ce site regroupe plein de ressources : https://tilde.club/~garret/fansub.html
Note : Pour info, aujourd'hui les teams anime française de qualité qui s'occupe de ça se retrouve principalement sur Nyaa.
Autres ressources annexes
Maintenant que vous avez encodé votre vidéo, audio ou éditer votre piste de sous-titres. Voici comment bien muxer (assembler toutes ces pistes ensemble) dans un mkv : thewiki.moe - muxing
Il existe aussi des outils qui évalue la qualité d'un encode automatiquement, je n'ai pas énormément d'expérience avec eux. Ce que je sais, c'est qu'il est recommandé de garder un grand point d'attention à comparer vous-même la qualité de vos encodes, car ces indicateurs ne sont pas parfaits (certains peuvent le déconseiller). Mais ils peuvent quand apporter des informations utiles je suppose. Voici un outil : https://github.com/fifonik/FFMetrics (Rien ne remplace ses yeux aguerris, demander un avis au besoin !)
Voilà, si vous avez des remarques ou des questions n'hésitez pas !