Le blog de Paul Glagla, l'auteur de plusieurs logiciels à succès destinés à la vidéo numérique, notamment ImageGrab, CaptureFlux, DVdate, Filmerit et CassetteDV.
Affichage des articles dont le libellé est vlc. Afficher tous les articles
Affichage des articles dont le libellé est vlc. Afficher tous les articles
lundi 30 janvier 2017
mkvToolNix et les codes de langage
Je n'avais jusqu'ici pas vraiment travaillé avec des fichiers Matroska, d'extension .mkv, sauf occasionnellement. J'ai cependant récemment cherché à travailler sur des fichiers téléchargés depuis la freebox. Ces derniers sont des fichiers au format m2ts comportant souvent plusieurs pistes audio et des pistes de sous-titres en télétexte. Jusqu'ici aucun des programmes que j'avais essayés ne savait récupérer et traiter les pistes de sous-titres télétextes.
Seule l'application vlc les reconnaissait et savait les afficher, ce qui n'est pas surprenant car le freebox player se base sur vlc pour lire des fichiers vidéos, mais aucun éditeur de vidéo, permettant de découper ou modifier les pistes ne savait même lire ces pistes de sous-titres.
C'est là que j'ai découvert les fichiers mkv, et la collection d'outils appelée MKVToolNix.
MKVToolNix est essentiellement une interface graphique qui permet d'utiliser des programmes prévus seulement en ligne de commandes. J'utilise surtout deux d'entre eux: MKVMerge.exe, et MKVExtract.exe.
MKVMerge permet de créer un fichier MKV à partir de pistes video, audio ou textes (et aussi d'autres choses comme des chapitres) issues d'autres fichiers, en les remultiplexant sans recompression. Il s'agit simplement de les intégrer dans le conteneur mkv sans altérer les flux d'entrée. On peut aussi les découper pour ne garder que les portions utiles des fichiers d'entrée. L'intérêt énorme que j'ai trouvé dans MKVMerge, est que si on part d'un fichier m2ts de la freebox contenant des sous-titres en télétexte, il sait les lire et les intégrer comme de vraies pistes de texte dans le fichier MKV produit. Cette fonctionnalité, inexistante dans tous les autres programmes de conversion que j'ai essayés, par exemple pour convertir de m2ts en mp4, m'a convaincu que le format Matroska (MKV) et son outil MKVToolNix devenait un must pour traiter les fichiers téléchargés depuis la freebox, d'autant que une fois enregistré sur un disque dur connecté à la freebox ou sur le disque dur interne, un fichier mkv est relu par la freebox et donc affiché sur la télé sans problèmes avec toutes ses fonctions et sa navigabilité, dans la même qualité que l'original, souvent une qualité de niveau Blu-Ray s'il a été enregistré depuis une chaîne en HD.
Il y a toutefois une difficulté avec les fichiers mkv: mon application Sony Vegas Movie Studio HD Platinum 11.0 ne les prend pas en charge. Si on veut les éditer avec cette application, le mieux est de les convertir en mp4 grâce à avidemux par exemple, qui fait cela rapidement et sans perte de qualité, sauf qu'on perd les pistes de sous-titres, ce qui n'est pas grave car Sony Vegas Movie ne sait de toutes façons pas les traiter en version 11.
MKVExtract fait un peu l'inverse de MKVMerge: il permet d'extraire une piste audio, video ou texte d'un fichier MKV. Je l'utilise surtout pour extraire les fichiers de sous-titres des fichiers MKV produits avec MKVMerge. Ce sont de vrais fichiers textes au format srt que l'on peut ensuite utiliser avec tout gestionnaire de vidéos qui sait lire des sous-titres au format srt.
Manipuler en ligne de commandes ces programmes est assez ardu, et beaucoup se décourageront rien qu'en regardant leurs modes d'emploi respectifs que l'on trouve sur les sites suivants: comment utiliser MKVMerge en ligne de commandes; comment utiliser MKVExtract en ligne de commandes.
Mais l'interface graphique MKVToolNix rend l'utilisation beaucoup plus aisée, même si le grand nombre d'options et de fonctions reste sans doute au départ un peu déroutant.
Jusqu'à début janvier 2017, j'avais cependant un reproche à faire à la gestion des langues dans MKVToolNix.
En effet, quand y on ouvre un fichier m2ts issu de la freebox, on a souvent plusieurs pistes audio. Typiquement les films que je télécharge sur Arte ont une piste audio en Français marquée fre, une piste audio en Allemand marquée ger, une piste marquée qaa qui est en fait la version originale du film (souvent l'Anglais, mais pour un film Français ce serait une seconde piste en Français) et une piste marquée qad, qui est l'Audio Description, c'est-à-dire une piste audio qui raconte ce qui se passe à l'image pour les mal voyants. Cette dernière piste est aussi en Français.
Or quand on ouvrait ce fichier dans MKVToolNix, il ne savait pas reconnaître les pistes qaa et qad. Il les marquait indifféremment comme und, c'est-à-dire une langue indéterminée. D'où une difficulté pour identifier quelle piste était la version originale et quelle piste était l'audiodescription.
J'ai eu quelques échanges à ce sujet avec Moritz Bunkus, l'auteur de MKVToolNix. Il apparaît que dans ces fichiers de vidéo en haute définition, les pistes audio sont marquées selon le code iso 639-2.
Chaque langue y est dotée d'un ou plusieurs codes à 3 caractères, comme fre ou fra pour le Français, ger pour l'Allemand. ou eng pour l'Anglais. Mais on y trouve même des codes comme gsw pour l'Alsacien, epo pour l'esperanto, vol pour le Volapük, ou fro pour l'ancien Français du Moyen-âge . C'est dire que la liste des codes de langage, longue d'environ 500 codes, est très complète.
Néanmoins pour faire face à encore plus de situations, la norme iso 639-2 a réservé tous les codes de qaa à qtz pour un usage local qui n'est pas défini par la norme. Cela fait encore 20x26=520 codes possibles. Moritz Bunkus qui a déjà implementé tous les codes normaux de langage dans chacun des executables pilotés par MkvToolNix, a estimé inutile de rajouter ces 520 codes d'usage local, croyant qu'ils étaient inutiles pour le multiplexage des fichiers vidéos.
J'ai réussi à le convaincre de rajouter les deux codes qaa et qad très utilisés par la télévision française, sans doute sur une consigne du CSA. Il les a donc introduits dans la version 9.8.0 publiée le 22 janvier 2017 dont les nouveautés sont décrites sur son blog.
Désormais quand vous ouvrez le fichier issu de la freebox dans les versions les plus récentes de MKVToolNix, vous verrez ces codes et pourrez identifier la piste en version originale et la distinguer de la piste en audio description. Bien sûr la piste video reste marquée und ce qui signifie que sa langue est indéterminée. Dans le standard iso 639-2 existe cependant le code zxx qui signifie qu'il n'y a pas de contenu linguistique, ce qui aurait été plus approprié encore.
Libellés :
freebox,
m2ts,
Matroska,
mkv,
mkvextract,
mkvmerge,
mkvtollnix,
Sony Vegas Movie Studio,
sous-titres,
télétexte,
vlc
lundi 25 mai 2015
Les films de la freebox
Quand on a enregistré une émission sur le disque dur de la freebox, on peut avoir besoin de transférer la vidéo correspondante vers son ordinateur pour la retraiter. Les 4 opérations qui me sont personnellement utiles sont
- Relire la vidéo sur mon ordinateur. Cela permet de ne pas mobiliser la TV et de le faire tranquillement assis à mon bureau
- Transcoder la vidéo en mp4 pour pouvoir la charger sur un ipad. Cela permet de l'emporter en voyage, de la montrer à des amis ou de la famille
- Retraiter la vidéo dans mon éditeur (actuellement Sony Vegas Movie Studio HD Platinum 11.0) pour couper les parties inutiles (typiquement au début et à la fin si on avait pris des marges pour l'enregistrement) et parfois enlever la publicité. Il faut ensuite la sauver dans un fichier sur l'ordinateur, si possible sans perdre de qualité.
- Graver un DVD avec le film en question. J'utilise pour cela souvent DVD Architect Studio livré avec Sony Vegas Movie Studio pour graver les DVD, même sans menu.
Le problème est que le format de la vidéo transférée depuis la freebox, d'extension *.m2ts n'est pas toujours facile à utiliser par mes logiciels favoris. Il faut donc avoir recours à des manipulations pour arriver à ses fins.
Télécharger un fichier de la freebox
Le plus simple est d'utiliser Freebox OS. Pour cela taper dans un navigateur l'adresse http://mafreebox.freebox.fr/ pour ouvrir le menu du Freebox OS. Puis double-cliquer sur Explorateur de fichiers. Il y a des chances que le programme réponde Accès Refusé et propose de se connecter. Il faut alors accepter et entrer le mot de passe de son compte Freebox OS. Si on n'a jamais créé de compte Freebox OS, le logiciel propose d'en créer un, comme indiqué par exemple sur le site d'assistance de Free.
Cela fait, on accède au contenu du disque dur de la freebox, où n'apparaissent cependant que les enregistrements d'émissions de chaînes gratuites. Si on avait enregistré depuis Canal Plus ou Première ou Ciné-Cinéma..., le fichier serait bien sur le disque de la freebox, mais n'apparaîtra jamais sur Freebox OS et ne pourra pas être transféré sur l'ordinateur.
Une fois qu'on a sélectionné un fichier sur le disque dur de la freebox, un clic droit permet de choisir Télécharger dans le menu contextuel, et alors le téléchargement s'engage aussitôt.
Le fichier s'ouvre aussi dans Sony Vegas Movie Studio avec une piste audio. La synchro est correcte. On peut alors traiter le fichier: éventuellement encore faire des coupures, faire un fading final, ajouter un titre.
Ensuite, il faut choisir un format de sortie. En général je prends le format Apple ipad. Il faut reconnaître que la conversion est longue, prévoir de 2 à 3 fois la durée de la vidéo à convertir. C'est donc à lancer essentiellement la nuit.
Cela fait, on accède au contenu du disque dur de la freebox, où n'apparaissent cependant que les enregistrements d'émissions de chaînes gratuites. Si on avait enregistré depuis Canal Plus ou Première ou Ciné-Cinéma..., le fichier serait bien sur le disque de la freebox, mais n'apparaîtra jamais sur Freebox OS et ne pourra pas être transféré sur l'ordinateur.
Une fois qu'on a sélectionné un fichier sur le disque dur de la freebox, un clic droit permet de choisir Télécharger dans le menu contextuel, et alors le téléchargement s'engage aussitôt.
Les fichiers m2ts de la freebox
On récupère sur l'ordinateur, dans le dossier des téléchargements, un fichier ayant un titre du genre France 3 - Un chapeau de paille d'Italie - 25-04-2015 22h45 02h10 (14).m2ts qui est certes long, mais permet de bien identifier le sujet de l'émission, ici une excellente pièce de Labiche donnée à la Comédie Française et diffusée par France 3 le 25 avril dernier.
Le fichier est d'extension m2ts, ce qui ressemble aux fichiers de mon camescope AVCHD, mais il y a des différences qui le rendent difficile à utiliser dans certains logiciels.
Pour le lire sur l'ordinateur (c'est la Fonction 1) on s'aperçoit par exemple que Windows Media Player ne sait pas lire son audio. Il ne lit que la vidéo muette.
Pour transcoder en mp4, couper les bords ou la publicité, ou graver un DVD (fonctions 2,3 et 4) j'utilise normalement Sony Vegas Movie Studio HD Platinum 11, mais quand j'ouvre le fichier m2ts téléchargé, là aussi Sony ne trouve aucune piste audio.
En revanche, l'excellent logiciel gratuit vlc se débrouille bien avec mon fichier m2ts, et lit facilement sa piste audio. Il donne une information sur les codecs qui peut expliquer certaines difficultés. Dans la vidéo du chapeau de paille, il trouve ainsi les flux suivants:
Flux 0: Vidéo
Codec H264 - MPEG-4 AVC (part10) (h264)
Résolution: 1440x1080
Débit d'images: 50
Format décodé: Planar 4:2:0 YUV
Flux 1: Audio
Codec MPEG AAC Audio (mp4a)
Langue: Français
Canaux: Stéréo
Fréquence d'échantillonnage: 48000 Hz
Flux 2: Audio
Codec MPEG AAC Audio (mp4a)
Langue: qad
Flux 3: Sous-titres
Codec: Teletext (telx)
Langue: Français
Description: Télétexte
Flux 4: Sous-titres
Codec: Teletext (telx)
Langue: Français
Description: Sous-titres Télétexte pour malentendants
A titre de comparaison, si je charge dans vlc un fichier m2ts de mon camescope, il trouve les flux suivants:
Flux 0: Vidéo
Codec: H264 - MPEG-4 AVC (part10) (h264)
Résolution: 1920x1080
Débit d'images: 50
Format décodé: Planar 4:2:0 YUV
Flux 1: Audio
Codec: A52 Audio (aka AC3) (a52)
Canaux:3F2R/LFE
Fréquence d'échantillonnage: 48000 Hz
Débit: 448 kb/s
Flux 2: Sous-titres
Codec: BD subtitles (bdpg)
Langue: Français
On voit que la vidéo est du même format, sauf que la taille d'image est plus grande dans la résolution pleine du camescope (mais on pourrait aussi lui demander de filmer en 1440x1080). En revanche l'audio est différent.
Utiliser HandBrake pour créer un mp4
Pour créer un fichier mp4 lisible dans l'ipad, le logiciel gratuit HandBrake est très performant. Lorsqu'on ouvre le fichier m2ts issu de la freebox, il trouve naturellement le flux video et le premier flux audio (celui qui est marqué Français) et ignore le reste.
En général, je ne change aucun réglage, sauf bien sûr que je choisis dans le volet de droite le Preset Ipad. Dans l'onglet video, je mets en général le framerate sur Constant et je le fixe à 25. Mais je en suis pas sûr que cela ait un vrai effet, car quand j'oublie de le faire je n'en vois pas de conséquence.
On peut alors ajouter la tâche à la queue (sous réserve qu'on ait paramétré dans Tools/options les paramètres du fichier destination), puis lancer la conversion avec Start.
On obtient un fichier m4v que l'on peut renommer en mp4 et charger par la voie d'itunes sur l'ipad et qui se lit alors très bien. En particulier la question complexe de la synchro audio/video semble correctement traitée.
On peut aussi l'exploiter dans Sony Vegas Movie Studio pour faire des coupes, du fondu etc... et le réexporter en mp4 pour l'ipad.
On peut aussi l'exploiter dans Sony Vegas Movie Studio pour faire des coupes, du fondu etc... et le réexporter en mp4 pour l'ipad.
Utiliser avidemux pour découper la vidéo et la remultiplexer en mp4
Autant tsmuxer est décevant, car produit des vidéos sans synchronisation et qui sautent, autant avidemux est intéressant pour traiter les m2ts de la freebox. Quand on charge notre fichier m2ts dans l'application, alors il est d'abord indexé, ce qui se traduit par la création d'un fichier d'extension idx2 dans le même dossier. Si cette procédure ne se produit pas, c'est que le fichier existe sans doute déjà.
On peut alors faire un "trim" en fixant les valeurs A (début) et B (fin) de la vidéo à remuxer. Les touches de navigation sont très pratiques et permettent d'avancer soit image par image, soit par secondes, soit jusqu'à la prochaine frame noire, soit jusqu'à la fin.
On laisse le Video Decoder sur lavcodec, les Video et Audio Output sur Copy, et on choisit alors le Output format. Je recommande de prendre mp4 muxer et de ne rien toucher d'autre.
On sauve alors le fichier par File/Save. Sur mon ordinateur avec un intel core i7 cela met environ 2 mn pour une vidéo qui dure 2 heures. Cela montre bien que rien n'est décompressé et recompressé, mais que c'est simplement remultiplexé dans le conteneur mp4.
Attention cependant il peut arriver une drôle d'erreur avec le message: Too Short. The video has been saved but seems to be uncomplete. Cela semble se produire si le fichier initial (le m2ts de la freebox) contient des erreurs. Alors on est mal barré: il faut en tâtonnant couper la vidéo (le trim indiqué plus haut) pour ne sauver que des parties sans erreur. J'ai cependant trouvé récemment qu'en mettant à jour avidemux vers la version 2-6-15 le problème qui se manifestait avec la version 2-6-9 avait disparu. Je vous recommande cette mise à jour, car cela stabilise sérieusement l'application.
Quand cela est fait, on obtient un fichier *.mp4 qu'on peut ouvrir dans vlc pour voir son format. On trouve:
Flux 0: Vidéo
Codec: H264 - MPEG-4 AVC (part10) (avc1)
Résolution; 1440x1080
Débit d'images: 25
Format décodé: Planar 4:2:0 YUV
Flux 1: Audio
Codec: MPEG AAC Audio (mp4a)
Langue: Français
Canaux: Stéréo
Fréquence d'échantillonnage: 48000 Hz
On voit que l'audio n'a guère changé, et que la vidéo a essentiellement un débit d'images de 25. Attention, bien qu'il soit en mp4, ce fichier ne sera pas utilisable sur l'ipad, car le format d'images est inapproprié. Le fichier résultant est cependant lisible dans media player, y compris avec l'audio.
On peut alors faire un "trim" en fixant les valeurs A (début) et B (fin) de la vidéo à remuxer. Les touches de navigation sont très pratiques et permettent d'avancer soit image par image, soit par secondes, soit jusqu'à la prochaine frame noire, soit jusqu'à la fin.
On laisse le Video Decoder sur lavcodec, les Video et Audio Output sur Copy, et on choisit alors le Output format. Je recommande de prendre mp4 muxer et de ne rien toucher d'autre.
On sauve alors le fichier par File/Save. Sur mon ordinateur avec un intel core i7 cela met environ 2 mn pour une vidéo qui dure 2 heures. Cela montre bien que rien n'est décompressé et recompressé, mais que c'est simplement remultiplexé dans le conteneur mp4.
Attention cependant il peut arriver une drôle d'erreur avec le message: Too Short. The video has been saved but seems to be uncomplete. Cela semble se produire si le fichier initial (le m2ts de la freebox) contient des erreurs. Alors on est mal barré: il faut en tâtonnant couper la vidéo (le trim indiqué plus haut) pour ne sauver que des parties sans erreur. J'ai cependant trouvé récemment qu'en mettant à jour avidemux vers la version 2-6-15 le problème qui se manifestait avec la version 2-6-9 avait disparu. Je vous recommande cette mise à jour, car cela stabilise sérieusement l'application.
Quand cela est fait, on obtient un fichier *.mp4 qu'on peut ouvrir dans vlc pour voir son format. On trouve:
Flux 0: Vidéo
Codec: H264 - MPEG-4 AVC (part10) (avc1)
Résolution; 1440x1080
Débit d'images: 25
Format décodé: Planar 4:2:0 YUV
Flux 1: Audio
Codec: MPEG AAC Audio (mp4a)
Langue: Français
Canaux: Stéréo
Fréquence d'échantillonnage: 48000 Hz
On voit que l'audio n'a guère changé, et que la vidéo a essentiellement un débit d'images de 25. Attention, bien qu'il soit en mp4, ce fichier ne sera pas utilisable sur l'ipad, car le format d'images est inapproprié. Le fichier résultant est cependant lisible dans media player, y compris avec l'audio.
Le fichier s'ouvre aussi dans Sony Vegas Movie Studio avec une piste audio. La synchro est correcte. On peut alors traiter le fichier: éventuellement encore faire des coupures, faire un fading final, ajouter un titre.
Ensuite, il faut choisir un format de sortie. En général je prends le format Apple ipad. Il faut reconnaître que la conversion est longue, prévoir de 2 à 3 fois la durée de la vidéo à convertir. C'est donc à lancer essentiellement la nuit.
Libellés :
avimux,
freebox,
HandBrake,
m2ts,
MediaPlayer,
mp4,
Sony Vegas Movie Studio,
vlc
Inscription à :
Articles (Atom)












