Créer un fichier vidéo MPEG 2 ES pour la Freebox
Un article de Wiki FreePlayer.org.
Sommaire |
MP2V, c'est quoi ?
Depuis la version 1.8.0 du navigateur HTML de la freebox, il est possible d'utiliser un fichier vidéo au format mp2v (Elementary Stream MPEG2) comme background d'une page en utilisant l"attribut background de la balise body.
Par exemple
<body background="images/foo.mp2v">
Pour que la freebox prenne en compte correctement le fichier mp2v, il faut que le serveur http renvoie "video/mp2v-es" comme Content-Type.
Par exemple, sous apache, un simple fichier .htaccess contenant la ligne suivante permet de configurer correctement le serveur :
AddType video/mp2v-es .mp2v
Générer un fichier mp2v sans manipuler VLC
Si vous êtes à l'aise avec VLC, vous pouvez utiliser les manipulations ci-dessous, qui vous permettrons de gérer tous les réglages.
Cependant, pour faciliter la création d'un fichier mp2v pour n'importe quel utilisateur, j'ai créé le site http://images.ts-box.fr.
Il suffit de fournir une image (de préférence de taille 720x576), et le site génère automatiquement le fichier mp2v, que vous pourrez utiliser pour vos télésites !
Générer un fichier mp2v avec VLC sous Linux
Pour générer le fichier mp2v en utilisant VLC, il faut utiliser la ligne de commande suivante :
vlc -I dummy fake: vlc:quit --sout="#transcode:std" --fake-duration=40 --fake-aspect-ratio=4:3 --fake-deinterlace --fake-deinterlace-module=blend --sout-transcode-vcodec=mp2v --sout-ffmpeg-qmin=3 --sout-ffmpeg-qmax=3 --sout-standard-access=file --sout-standard-mux=raw --sout-standard-dst=/tmp/out.mp2v --fake-file=/tmp/in.png
En remplaçant bien sur les fichiers en entrée et en sortie par les fichiers que vous voulez traiter...
Le fichier généré par VLC n'est cependant pas "correct" pour être lu par un lecteur classique ou par la freebox.
Pour cela, il faut appliquer un patch en ajoutant 4 octets en fin de fichier :
echo -ne '\000\000\001\0267' >> /tmp/out.mp2v
Cela ajoute les octets 0x00, 0x00, 0x01 et 0xB7 à la fin du fichier mp2v qui est désormais lisible sur la freebox.
Générer un fichier mp2v avec VLC sous Windows
Pour générer le fichier mp2v en utilisant VLC, il faut utiliser la ligne de commande suivante :
vlc -I dummy fake: vlc:quit --sout="#transcode:std" --fake-duration=40 --fake-aspect-ratio=4:3 --fake-deinterlace --fake-deinterlace-module=blend --sout-transcode-vcodec=mp2v --sout-ffmpeg-qmin=3 --sout-ffmpeg-qmax=3 --sout-standard-access=file --sout-standard-mux=raw --sout-standard-dst=c:\out.mp2v --fake-file=c:\in.png
ATTENTION ! Cette ligne de commande ne fonctionne pas avec VLC 0.9 ...
Il faut ensuite (comme pour linux) ajouter 4 octets en fin de fichier. Pour cela, on peut créer un fichier de 4 octets avec un éditeur héxadécimal et le concaténer au fichier mp2v généré en utilisant la commande suivante (dans un invite de commande) :
type mp2v_correct.bin >> out.mp2v
Vous pouvez utiliser ce fichier http://mcfreebox.free.fr/darkwiki/mp2v_correct.bin
Générer un fichier mp2v a partir d'une playlist m3u
La playlist suivante permet de générer un fond dynamique en mettant plusieurs images à la suite l'une de l'autre dans un fichier mp2v.
La durée fake-duration permet de choisir à chaque fois le temps de chaque photos
#EXTVLCOPT:sout=#transcode:std #EXTVLCOPT:fake-duration=400 #EXTVLCOPT:fake-aspect-ratio=4:3 #EXTVLCOPT:fake-deinterlace #EXTVLCOPT:fake-deinterlace-module=blend #EXTVLCOPT:sout-transcode-vcodec=mp2v #EXTVLCOPT:sout-ffmpeg-qmin=3 #EXTVLCOPT:sout-ffmpeg-qmax=3 #EXTVLCOPT:sout-standard-access=file #EXTVLCOPT:sout-standard-mux=raw #EXTVLCOPT:sout-standard-dst=c:\test.mp2v #EXTVLCOPT:fake-file=c:\1.JPG fake:c:\1.JPG #EXTVLCOPT:sout=#transcode:std #EXTVLCOPT:fake-duration=400 #EXTVLCOPT:fake-aspect-ratio=4:3 #EXTVLCOPT:fake-deinterlace #EXTVLCOPT:fake-deinterlace-module=blend #EXTVLCOPT:sout-transcode-vcodec=mp2v #EXTVLCOPT:sout-ffmpeg-qmin=3 #EXTVLCOPT:sout-ffmpeg-qmax=3 #EXTVLCOPT:sout-standard-access=file #EXTVLCOPT:sout-standard-mux=raw #EXTVLCOPT:sout-standard-dst=c:\test.mp2v #EXTVLCOPT:sout-file-append #EXTVLCOPT:fake-file=c:\2.JPG fake:c:\2.JPG

