H264ToBox

Lire de vidéos H.264 sur Freebox HD et PlayStation 3


News
Introduction
Installation et dépendances
Conteneurs et formats gérés
Utilisation et syntaxe
Automatisation des tâches
Remerciements
Changelog
Nos autres scripts : DVDXtractor, H264Modifier
Téléchargement
Nous contacter
Si vous désirez soutenir financièrement le projet
vous pouvez faire un don via PayPal ici :

NEWS

25 février 2012 : Version 1.3.8 disponible.

- La conversion des fichiers de sous-titres en iso8859-1 est supprimée (obsolète).
- L'identification des pistes audio est mise à jour pour les nouvelles versions de MPlayer.
- La gestion des FPS dans un MKV est modifiée afin d'éviter des désynchronisations.
- Corrections dans la vérification des réponses aux questions.
- Modifications mineures du code.

22 octobre 2010 : Version 1.3.7 disponible.

- Désactivation de la vérification des conteneurs et extensions associées en raison de Mplayer.
- La fonction de sélection auto de la piste audio est rétablie.

07 octobre 2010 : Version 1.3.6 disponible.

- Correction de la vérification des conteneurs et extensions associées.
Si vous rencontrez des problèmes avec cette version revenez à la version 1.3.4.
N.B. : Les versions 1.3.x ne sont PAS des versions stables.

06 octobre 2010 : Version 1.3.5 disponible.

- Modification dans l'affichage de la durée de traitement.
- Modification des commandes liées à Mplayer afin de tenir compte des dernières versions de celui-ci.

04 septembre 2010 : Version 1.3.4 disponible.

- La vérification de la conformité se fait maintenant sur chaque fichier et non plus seulement sur le premier.
- Le nettoyage du répertoire temporaire est maintenant correctement géré.
- La compression sur les fichiers MKV est désactivée afin d'éviter des problèmes de compatibilité avec mkvmerge (merci à Olorin).
- La compression en AC-3 via Aften a été revue (merci à Kurtnoise).
- Création d'une page de man.


INTRODUCTION

h264tobox est un script shell utilisant principalement tsMuxeR afin de rendre possible à l'origine la lecture de fichiers vidéo H.264 et AAC sur Freebox HD sans ré-encodage.
Il compte deux développeurs : twocats et Sioban.

Le script est disponible dans la section Téléchargement.

Pour toutes vos questions retrouvez-nous sur http://forum.hardware.fr/dans ce fil de discution :
http://forum.hardware.fr/hfr/OSAlternatifs/Logiciels-2/h264tobox-freebox-playstation-sujet_67428_1.htm

De plus, Sioban a fait un petit script (disponible a la même adresse) permettant l'installation facile des dépendances. Le fil de discutions se trouve ici :
http://forum.hardware.fr/hfr/OSAlternatifs/Logiciels-2/h264tools-companion-h264tobox-sujet_69063_1.htm

Depuis le firmware 1.5.6 La Freebox HD peut décoder ce type de fichier s'il est encapsulé dans un conteneur MKV. Néanmoins h264tobox garde son utilité pour la conversion des pistes audio dans un format compatible et l'extraction des sous-titres non lisibles directement dans un MKVpar la Freebox. De plus la plupart des fichiers produits seront lisibles sur PlayStation 3.

La version Linux de tsMuxeR aillant de nombreuses difficultés a reconnaître certaines pistes (principalement les pistes audio)h264tobox lui 'mâche' le travail en générant un fichier META correct et en convertissant si besoin est les pistes audio. L'encapsulation en MPEG TS étant ensuite réalisé par tsMuxeR.

Les fichiers sources visés par h264tobox sont les vidéos contenant une piste vidéo en H.264 et une/ou plusieurs pistes audio d'un format quelconque (le ré-encodage, s'il est nécessaire, étant assuré par ffmpeg ou Aften).
Retour

INSTALLATION ET DÉPENDANCES

Pour installer h264tobox il suffit de le rendre exécutable et de le copier dans un répertoire de votre PATH (classiquement /usr/local/bin).

Vous pouvez également installer sa page de man (h264tobox.1) dans /usr/local/share/man/man1/

Pour que h264tobox fonctionne il faut :

- tsMuxeR_1.7.3(b) ou supérieur (version Linux, NE PAS UTILISER LA VERSION WINDOWS AVEC WINE !)
Disponible ici : http://www.smlabs.net/tsmuxer_en.html
Pour l'installer il suffit de le copier dans un répertoire de votre PATH (classiquement /usr/local/bin).

- MPlayer / Mencoder : http://www.mplayerhq.hu
- mkvtoolnix : http://www.bunkus.org/videotools/mkvtoolnix
- faad : http://www.audiocoding.com
- ffmpeg : http://ffmpeg.sourceforge.net(avec le support de l'aac, ac3, mp3 et vorbis principalement)

Et de manière optionnelle :
- Aften : http://sourceforge.net/projects/aften
- dcadec : http://www.videolan.org/developers/libdca.html
- flac : http://flac.sourceforge.net/
- lftp : http://lftp.yar.ru/
- OGMtools : http://www.bunkus.org/videotools/ogmtools/(ATTENTION : REQUIS pour le format OGM)
- tta : http://true-audio.com/
- vorbis-tools : http://www.xiph.org/

Retour

CONTENEURS ET FORMATS GÉRÉS

En entrée :

MKV: Le fichier DOIT contenir une piste vidéo en H.264. Il peut contenir plusieurs pistes audio, le script détectera celles-ci et vous demanderas laquelle multiplexer (La Freebox ne semble pas capable de lire la seconde piste audio d'un TS multiplexé par tsMuxeR de toute façon). Les sous-titres sont gérés depuis la version 0.3.7 (SRT et ASS/SSA avec conversion automatique).

MP4 : UNE piste vidéo en H.264 et une ou plusieurs pistes audio. Le fichier sera encapsulé dans un mkv puis traité. Il est possible de faire une encapsulation en MKV sans traitement permettant à la FreeboxHD de lire le fichier.

OGM: UNE piste vidéo en H.264 et une ou plusieurs pistes audio. le script détectera celles-ci et vous demanderas laquelle multiplexer. Les sous-titres sont gérés depuis la version 1.2.4

AVI : UNE piste vidéo en H.264 et une ou plusieurs pistes audio. le script détectera celles-ci et vous demanderas laquelle multiplexer.

MPEG-TS: UNE piste vidéo en H.264 et UNE piste audio.

En sortie :

MPEG-TS : Avec traitement de la vidéo par tsMuxeR. C'est le mode par défaut.

BLU-RAY DISC : Avec traitement de la vidéo par tsMuxeR. Détection des pistes audio et sélection puis conversion si nécessaire. Extraction des sous-titres.

AVI : Encapsulation avec conversion automatique de la piste audio au format AC-3.

MKV : Encapsulation sans traitement de la vidéo. Détection des pistes audio et sélection puis conversion si nécessaire. Extraction des sous-titres. Disponible pour le MKV.
Retour

UTILISATION ET SYNTAXE

Créez un répertoire de travail et copiez y les fichiers à convertir. Ouvrez une console (x-term, Konsole) dans ce même répertoire et lancez :
_________________________________________________________________________________
h264tobox --help
_________________________________________________________________________________

Vous verrez apparaître cette aide :
_________________________________________________________________________________
h264tobox 1.3.1 - (c) 2008-2010 Dominique Biendiné, Sioban.
Remerciements à : Claer (Correction orthographique).
Site et téléchargement : http://h264tobox.free.fr

NOTES GÉNÉRALES

        Lancer le script dans le répertoire où se trouvent les fichiers a traiter.

        Certains fichiers convertis par tsMuxeR (et donc par h264tobox) ne démarrent pas automatiquement sur
        la Freebox HD. Il faut appuyer sur la touche "Retour rapide" [|<<] pour voir la vidéo s'afficher.  

SYNOPSIS

        h264tobox [OPTION]

OPTIONS GÉNÉRALES

        -a <valeur>, --audio-bitrate <valeur>
                Permet de définir le bitrate de la piste audio si elle est ré-encodée. ATTENTION : La valeur par
                défaut est la valeur MAXIMALE autorisée : 640. Les valeurs autorisées sont : 64, 80, 96, 112, 128
                160, 192, 224, 256, 320, 384, 448, 512, 576 et 640. Le ré-encodage se fera au format AC-3.      

        -c, --color
                Active les couleurs dans le script (par défaut).

        -C, --no-color
                Désactive les couleurs dans le script pour la session en cours. Pour désactiver les couleurs de
                manière permanente vous devez utiliser le fichier de configuration h264tobox.conf.           

        -e, --erase
                Force le nettoyage des fichiers résiduels dans le répertoire~/.h264tobox/tmp.

        -f, --folder
                Permet de choisir le répertoire de destination des fichiers traités (par défaut : ./videofolder).

        -h, --help
                Affichage de cette aide.

        -i <extension_fichier>, --input <extension_fichier>, -i <fichier>, --input <fichier>
                Mode incrémentiel                                                          
                        Permet de choisir l'extension des fichiers. Ceux-ci seront traités successivement (fichier[1],
                        fichier[2],... fichier[n]).                                                                  
                Mode solo                                                                                            
                        Permet de choisir un fichier unique. Il sera le seul a être traité.                          

                Les extensions disponibles sont:

                        mkv (par défaut)
                        avi            
                        mp4            
                        ogm            
                        m2ts           
                        ts             

        -k, --keep
                Permet de garder la plus part des fichiers temporaires à des fins de débogage.
                ATTENTION : Cela nécessite un espace disque conséquent.                      

        -o <extension_conteneur>, --output <extension_conteneur>
                Permet de choisir le conteneur de destination  

                Les conteneurs disponibles sont:

                        ts (par défaut)
                                Le fichier est démultiplexé (vidéo, audio et sous-titres). La piste audio sélectionnée
                                est convertie si nécessaire en AC-3 puis muxée de nouveau avec la vidéo (le profil H.264
                                est abaissé de 5.1 à 4.1) dans un conteneur Transport Stream (188 bytes packet).      
                        m2ts                                                                                          
                                Le fichier est démultiplexé (vidéo, audio et sous-titres). La piste audio sélectionnée
                                est convertie si nécessaire en AC-3 puis muxée de nouveau avec la vidéo (le profil H.264
                                est abaissé de 5.1 à 4.1) dans un conteneur Transport Stream (192 bytes packet).      
                        avchd (crée une structure de disque Blu-ray)                                                  
                                Le fichier est démultiplexé (vidéo et audio). La piste audio sélectionnée est convertie
                                si nécessaire en AC-3 puis muxée de nouveau avec la vidéo (le profil H.264 est abaissé de
                                5.1 à 4.1) dans un dossier contenant une structure de disque Blu-ray. Celle-ci DOIT être
                                gravée sur un disque DVD.                                                              
                                NOTE: nécessite la version 1.8.35(b) ou supérieure de tsMuxeR.                         
                        brd (crée une structure de disque Blu-ray)                                                     
                                Le fichier est démultiplexé (vidéo et audio). La piste audio sélectionnée est convertie
                                si nécessaire en AC-3 puis muxée de nouveau avec la vidéo (le profil H.264 est abaissé de
                                5.1 à 4.1) dans un dossier contenant une structure de disque Blu-ray. Celle-ci DOIT être
                                gravée sur un disque Blu-ray.                                                          
                        avi                                                                                            
                                Le fichier est encapsulé dans un conteneur AVI. L'audio est automatiquement transcodé en
                                AC-3.                                                                                  
                        mkv                                                                                            
                                Si le fichier est un MKV il est démultiplexé (vidéo, audio et sous-titres). La piste   
                                audio sélectionnée est convertie si nécessaire en AC-3 puis muxée de nouveau avec la vidéo
                                dans un conteneur MKV. Sinon le fichier est encapsulé dans un conteneur MKV sans aucun   
                                autre traitement.                                                                        

        -s <valeur>, --split <valeur>
                Découpe les fichiers en tronçons de la taille de <valeur> exprimée en GiB. Disponible pour le ts*, le m2ts*,
                l'avchd**, le brd* et le mkv en sortie. Les fractions sont possible (ex. : 2.5 ou 4.3).                    
                *NOTE : nécessite la version 1.8.33(b) ou supérieure de tsMuxeR.                                            
                **NOTE : nécessite la version 1.8.35(b) ou supérieure de tsMuxeR.

        -S <valeur>, --sub <valeur>
                Active l'intégration du/des fichier(s) de sous-titres étiqueté 'xxx' de et vers un conteneur MKV.

        -u, --upload
                Transfert les fichiers traités sur le disque dur de la Freebox HD via FTP.

        -v, --verbose
                Affiche la progression des commandes mkvextract et mkvmerge. Utilisé 2xcela affiche la progression
                de toutes les commandes.                                                                          

        -V, --version
                Affiche la version de h264tobox.

        -w <valeur>, --wav-debug <valeur>
                Force la décompression audio avec MPlayer ou FFmpeg si le programme natif produit une piste dégradée en
                désactivant la prise en compte de dcadec, oggdec, flac et ttaenc.

                Valeurs autorisées:
                        0 = on utilise le programme disponible (défaut)
                        1 = force la décompression avec MPlayer
                        2 = force la décompression avec FFmpeg

CODECS SUPPORTÉS

        Codec vidéo
                H.264
                        H.264/AVC MPEG-4 Part 10

        Codecs audio
                AAC
                        Advanced Audio Coding
                AC-3
                        Dolby Digital
                DTS
                        Digital Theater System
                FLAC
                        Free Lossless Audio Codec
                MP3
                        MPEG-1 audio layer 3
                PCM
                        Pulse Code Modulation
                Vorbis
                        Vorbis au format Ogg
                TTA
                        The True Audio codec

EXEMPLES

        h264tobox -i avi                      Traite les fichiers avi présent dans le répertoire courant.

        h264tobox -i fichier.mkv         Traite le fichier "fichier.mkv"et lui seul.

        h264tobox -i mkv -o brd          Génère une structure de disque Blu-ray pour chacun des fichiers mkv présents.

        h264tobox -i mp4 -o mkv         Remux les fichiers mp4 du répertoire courant dans un conteneur mkv.

        h264tobox -i mkv -s 4.4           Traite les fichiers mkv et découpe les TS obtenus en parts de 4.4 GiB.

        h264tobox -C                          Désactive les couleurs dans le script.
_________________________________________________________________________________

Si les fichiers sont des MKV tapez :
_________________________________________________________________________________
h264tobox
_________________________________________________________________________________

ou
_________________________________________________________________________________
h264tobox -i mkv
_________________________________________________________________________________

Si les fichiers sont des MP4 tapez :
_________________________________________________________________________________
h264tobox -i mp4
_________________________________________________________________________________

Et si les fichiers sont des AVI tapez :
_________________________________________________________________________________
h264tobox -i avi
_________________________________________________________________________________

Par défaut un nouveau répertoire nommé "videofolder" se créera pour recevoir les fichiers convertis en TS.
Vous pouvez depuis la version 0.5.6, si vous le désirez, indiquez un autre chemin ainsi (s'il n'existe pas il sera créé automatiquement) :
_________________________________________________________________________________
h264tobox -f /dossier/de/sauvegarde
_________________________________________________________________________________
Retour

AUTOMATISATION DES TÂCHES

Il est possible d'automatiser certaines tâches grâce à un fichier de configuration. Un fichier d'exemple détaillé (h264tobox.conf) est fourni dans l'archive.
Retour

REMERCIEMENTS

À draco31fr pour ses tests et sa publicité sur le forum Ubuntu-fr.
À tonio2k pour ses renseignements sur le DTS.
À fredthefrenchy pour ses renseignements sur la PS3.
À Geronimo6 pour ses tests sur les sous-titres.
À Sioban (aka sioban44) pour ses suggestions et modifications.
À Claer pour sa connaissance de la langue française.
Retour

AUTRES SCRIPTS