Extraire les pistes d’un fichier MKV

Avec bash

Un épisode d’Ore no Imouto est sorti 🙂 Comme d’habitude c’est un softsub, et donc comme d’habitude je dois le hardsubber pour en faire un stream. Et ça me gonfle grave d’utiliser MKVExtractGUI avec WINE, il bloque souvent. Pire: il y a 9 polices de caractère à cocher pour qu’elles soient extraites (c’est chiant). Dont acte, je me suis fait un petit script bash qui fait tout le boulot. Il suffit de mettre le script dans un dossier avec le fichier MKV, et automagiquement vous obtenez l’ASS et les TTF.

#!/bin/bash
for file in *; do
mkvextract tracks "$file" 3:"$file.ass"
i=1
while [ $i -le 20 ]; do
mkvextract attachments "$file" $i
let $[ i+=1 ]
done
done

(dans le cas présent, la piste 3 est considérée sous-titre, et un maximum de 20 fichiers joints sont considérés polices TTF – faites attention à ça si vous avez un fichier avec plusieurs pistes audio et sous-titres, ou des id mélangés, et des fichiers joints qui ne sont pas des TTF – donc vérifiez bien la structure de votre fichier MKV avant).

Simple, rapide, efficace.