Attention : Le contenu de ces pages n'a pas été mis à jour depuis longtemps. Il est probablement obsolète pour Firefox 4.0/Gecko 4.0 et supérieur. Pour du contenu plus récent, allez consulter developer.mozilla.org.

Media player

Un media player avec XulRunner et VLC

Voici un exemple très simple d'intégration d'un plugin multimédia dans une application XulRunner. Ici nous prendrons l'exemple du plugin VLC de VideoLan http://www.videolan.org/

Création de l'arborescence de l'application

Créons les répertoires nécessaires :

 mediaplayer/
    chrome/
       content/
          mediaplayer/
    components/
    default/
       preferences/
    plugins/

le fichier application.ini

Ce fichier contient la fiche d'identité de l'appli

 [App]
 Vendor=xulfr.org
 Name=mediaplayer
 Version=0.1
 BuildID=20061220
 [Gecko]
 MinVersion=1.8
 MaxVersion=2.0

Vous le placez dans mediaplayer/, la racine de l'appli

Le fichier prefs.js

Il contient les préférences pour l'appli. Placez le dans default/preferences/

   pref("toolkit.defaultChromeURI", "[[chrome://mediaplayer/content/mediaplayer.xul")]];

Ici cela déclare l'url de la fenêtre principale

La fenêtre de l'appli

Créez un fichier mediaplayer.xul dans chrome/content/mediaplayer/

  <?xml version="1.0"?>
  <?xml-stylesheet href="[[chrome://global/skin/]]" type="text/css"?>
  <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        [[xmlns:html="!http://www.w3.org/1999/xhtml"]]>
    <description>Lecteur Vlc</description>
    <vbox flex="1">
    <[[html:embed]] type="application/x-vlc-plugin" id="video"
         autoplay="no" loop="yes" width="400" height="300"
         target="http://www.mozbox.org/pub/codeeditor.mpeg" />
     </vbox>
    <hbox pack="center">
        <button label="play" oncommand="document.getElementById('video').playlist.play()" />
        <button label="stop" oncommand="document.getElementById('video').playlist.stop()" />
    </hbox>
  </window>

Vous remarquerez l'utilisation de la balise embed, pour inclure le plugin vlc dans la page. Changez l'url exemple de la vidéo par une que vous connaissez, dans l'attribut target de la balise embed.

Notez l'appel aux methodes playlist.play() et playlist.stop(). Pour avoir la liste complète des méthodes sur le site de VLC

fichier chrome.manifest

Créez ce fichier dans le répertoire chrome/

  content mediaplayer content/mediaplayer/

Installation du plugin

Récupérez le plugin VLC sur le site http://www.videolan.org/ ou en l'installant via le système d'installation de votre distribution linux.

Il y a deux fichiers :

  • vlcintf.xpt que vous copierez dans le répertoire components/ (Ce fichier n'est plus nécessaire si vous utilisez une version du plugin >= 0.8.6)
  • libvlcplugin.so ou libvlcplugin.dll que vous copierez dans le répertoire plugins/

Lancement de l'appli

Installez Xulrunner, mettez vous dans le répertoire de votre appli, et tapez

   xulrunner application.ini

Sous linux, il se peut que le plugin ne s'affiche pas : il peut y avoir des problèmes de compatibilité binaire. Par exemple, le XulRunner disponible sur le site de Mozilla est compilé avec la libstd 5 (toujours le cas aujourd'hui, avril 2009 ?), alors que le plugin fournit par Ubuntu est compilé avec la libstd 6. Il faut donc recompilé un des deux sur votre machine.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.