Posts Tagged "vobsub"
Convertir des sous-titres VobSub en SRT sur GNU/Linux
Quand elle est revenue de sa dernière croisière, ma grand-mère avait dans ses bagages un DVD contenant plusieurs petits films de ses vacances, une séquence par étape, le tout sous-titré en anglais. Bien que n'habitant pas le Cantal, Mamie ne savait pas trop que faire de ce DVD, d'autant qu'elle ne lit pas la langue de la perfide Albion et n'a aucunement l'intention de s'y mettre, à son âge aussi respectable qu'avancé.
Elle a donc fait appel à moi pour arriver à faire quelque chose de ce DVD, particulièrement pour les sous-titres, qu'elle aimerait avoir en français.
Il existe de nombreuses méthodes pour extraire des sous-titres VobSub d'une vidéo, tant sur GNU/Linux que sur Windows. Par contre GNU/Linux ne propose rien de probant pour convertir le format VobSub en quelque chose de facilement éditable comme le SRT. Alors bien sûr, on peut le faire à la main avec Avidemux par exemple ou même SubRip via Wine, mais c'est assez long et surtout, dans le cas présent, le DVD contient pas moins de 24 séquences distinctes comptant chacune entre 300 et 400 lignes de sous-titres. L'automatisation de la tâche s'impose…
Heureusement pour moi, ruediger.s du forum Doom9.org a développé un script qui permet de faire ce que je veux : j'ai nommé VobSub2Srt. Procédure d'installation :
On récupère les sources ici : https://github.com/ruediger/VobSub2SRT/zipball/master
On décompresse :
$ unzip ruediger-VobSub2SRT-*.zip
On installe le nécessaire pour compiler :
— Ubuntu 11.10 Oneiric :
$ sudo apt-get install libavutil-dev tesseract-ocr-dev tesseract-ocr-eng build-essential cmake checkinstall
— Ubuntu 12.04 Precise :
$ sudo apt-get install libavutil-dev libtesseract-dev libtiff4-dev tesseract-ocr-eng build-essential cmake checkinstall
Notez ici l'installation de Tesseract : c'est lui qui, par OCR, va faire le gros du boulot. Ici, j'installe le nécessaire pour faire de l'OCR sur la langue anglaise ; il est bien évident qu'il faut installer les paquets tesseract correspondants aux langues que vous voudrez extraire…
NB:
Maintenant, on va compiler le tout :
$ cd ruediger-VobSub2SRT-* $ ./configure $ make $ checkinstall -D --nodoc --maintainer=votre@email.tld --pkgname=vobsub2srt --pkglicense=GPL3+ --pkgarch=`dpkg --print-architecture` --pkgsource=https://github.com/ruediger/VobSub2SRT --provides=VobSub2Srt --requires="tesseract-ocr-eng" --backup=no --deldoc --default $ sudo dpkg -i vobsub2srt_*.deb $ sudo ln -s /usr/local/bin/vobsub2srt /usr/bin/
Le checkinstall retourne une erreur à la fin, c'est normal puisqu'on ne l'a pas lancé avec les droits SuperUtilisateur donc il crée correctement le paquet mais ne peut l'installer.
Maintenant, il ne reste plus qu'à l'utiliser, postulons que j'ai sous_titres.sub (et sous_sitres.idx bien sûr) :
$ vobsub2srt sous_titres
et on obtient en quelques secondes un fichier sous_titres.srt qu'il reste à corriger. Ben oui, c'est génial l'OCR mais loin d'être infaillible, surtout quand c'est automatique. Cependant, j'ai obtenu d'aussi bons résultats qu'en le faisant à la main avec Avidemux, et beaucoup plus rapidement !
Il existe deux options pour vobsub2srt :
–verbose : active le mode verbeux
–lang code_langue : règle l'OCR sur la langue donnée, par exemple vobsub2srt –lang fr sous_titres si vos sous-titres VobSub sont en français (je rappelle ici qu'il faut avoir installé les paquets tesseract correspondants)
Voilà ! Convertissez bien, et comme toujours je vous fournis un paquet précompilé pour architecture x64 disponible dans l'espace de téléchargement, section Applications → Ubuntu.
— Paquet pour Ubuntu 11.10 Oneiric :
Fichier : vobsub2srt_23dcb63-1_amd64.deb
Signature : vobsub2srt_23dcb63-1_amd64.deb.asc
SHA1 : f0c74851a26b82d1729ad56b5cc5a83b772f93ae
MD5 : 878cb25143f637bf7a9a3bc290d2d688
CRC32 : 1f719842
— Paquet pour Ubuntu 12.04 Precise :
Fichier : vobsub2srt_2d8d1b0-1_amd64.deb
Signature : vobsub2srt_2d8d1b0-1_amd64.deb.asc
Checksums : vobsub2srt_2d8d1b0-1_amd64.deb.checksum
SHA1 : 4b961ce581b9771ab47a9c2e094bb7c5d788aa6c
MD5 : 45040f77b349eb86511415a2b75dbdc4
CRC32 : 1c5848b1

