AudioVideoCours - Client, Documentation développeur http://audiovideocours.u-strasbg.fr Le présent docum ent est régulièrem ent m is à jour en ligne à l'adresse: http://docs.google.com /Doc?id=dgqhgsgm _358m ftgz79f (ou acce ssible de puis le site audiovide ocours) Som m aire: Introduction version Windows Plateform e Langage Librairies externes Im ports locaux Structure du clie nt Fichie r de configuration Exécutable Installe ur Inte rnationalisation Lecteur web et outils "third party" Introduction version Linux Introduction version Mac OS X Lion Introduction version Windows Cette partie décrit les inform ations nécessaires pour le développem ent de nouvelles fonctionnalité s ou le de bug d'audiovide oc ours. Prérequis: docum e ntation utilisate ur docum entation exploitation Plateforme Le développem ent et l'utilisation de client se fait sur plateform e Windows, testé sur XP et Vista (une version Linux et Mac est en prévision).
Langage Le client est intégralem ent écrit en Python sur une base 2.4 Téléchagem ent Python 2.4: http://python.org/download/re le ase s/2.4.6/ Librairies externes Ci-dessous une liste des librairies à installer (vérifiez leurs éventuelles dépendances à des librairies externes et les installer) WxPython (GUI, WxWidgets pour Python) Il s'agit de la librairie graphique http://www.wx python.org/download.php#binarie s PyHook (Hook clavie r-souris) Il s'agit du hook clavier-souris (ie perm et de lire les évènem ents clavier/souris sans que l'application ait le focus) http://pyhook.wik i.source forge.ne t/ PIL (Python Im age Librairy) PyMedia Il s'agit d'une librairie graphique perm ettant notam m ent de prendre les captures d'acrans et redim entionner les im ages. http://www.pythonware.com /products/pil/ Il s'agit de la librairie perm ettant l'enregistrem ent audio (m p3 ou ogg). http://pym edia.org/ PyWinA uto PySerial Il s'agit d'une librairie d'autom atisation W indows. Elle e st utilisé e dans le logicie l pour: ram ener la fenêtre de début d'enregistrem ent ou de publication en prem ier plan cacher une console DOS ou un program m e DOS (par exem ple Flash Media Live Encode r) Il s'agit de librairie de contrôle du port sé rie utile pour la com m ande via un clavie r externe. http://pyse rial.wik i.source forge.ne t/pyse rial CherryPy 3.2 nécessaire pour la m aintenance et la com m ande distante du client http://www.che rrypy.org/wik i/c he rrypydownload Com m e déjà m entionné plus haut, vérifiez les dépendances de ces librairies. En particulier PIL et Pyserial nécessitent PyWin32: http://source forge.ne t/proje cts/pywin32/
Imports locaux --- Structure du client Le client à volontairem ent une interface très épurée pour ne pas perdre l'utilisateur. La configuration peut se faire finem ent dans le fichier de configuration qui est lu au dém arrage de l'application. Le fichie r principal du clie nt e st mediacours.py Le client possède essentiellem ent deux fenêtres: une fenêtre de lancem ent de l'enregistrem ent une fe nê tre de publication Fichier de configuration Intitulé mediacours.conf il contie nt le s principaux param è tre s de l'application (lire le s ligne s de com m entaires et la docum entation exploitation pour plus d'inform ations). Exécutable L'é x é cutable mediacours.exe e st gé né ré par la librairie py2e x e 0.6.6: http://www.py2exe.org/ Rem arquable: l'exe est crée avec la version 0.6.6 (la version 0.8.8 ne réussissant pas à com piler). Le fichier setup étant setup.py la com pilation s'éffectue en tappant dans une console DOS: Installeur python stup.py py2exe L'installeur est réalisé avec InnoSetup: http://www.innose tup.com /isinfo.php Pour créer l'installeur il suffit d'ouvrir win-installer/installeur.iss dans InnoSetuup et de créer l'installe ur. Internationalisation Le logiciel est en anglais m ais utilise un fichier.po pour la version française. L'application peut donc facilem ent être traduite dans d'autres langues. Lecteur web et outils "third party" Pour éviter d'obliger l'installation de RealPlayer pour prévisualiser un enregistrem ent une pré visualisation we b e st m ainte nant disponible (par dé faut dans le fichie r de configuration). A la fin de l'enregistrem ent un fichier recording.htm l est crée qui doit être lancé depuis le client Audiovide ocours pour garde r le fonctionne m e nt javascript. Le dossie r thirdparty dans chaque enregistrem ent contient un readm e, player.swf (JW Player) et swfovject.js. Voir le readm e pour pre ndre connaissance de s lice nce s.
Introduction version Linux Version expérim entale/beta AudioCours fonctionnelle à partir des sources essentiellem ent destiné à être installé en am phi. Testé et développé sur Ubuntu 11.04 Desktop avec Python 2.7 pré-installé dans ce tte distribution. Télécharger les sources du logiciel avec SVN : svn checkout https://subversion.cru.fr /audiovideocours/trunk/client_and_standalone Après exécution de la com m ande SVN un dossier "client_and_standalone" est crée et contient les sources Créer aussi un dossier "audiovideocours" dans votre hom e (~/audiovideocours) et sauve garde r le fichie r de configuration m e diacours.conf de dans (ce dossie r contie ndra aussi les enregistrem ents). Pour lancer le program m e en ligne de com m ande: Python avcosxlinux.pyc (au lieu de MediaCours.py dans le trunk) m ais il faudra d'abord installer les librairies nécessaires (chercher dans Ubuntu Software Center pour les paquets m anquants et cocher "afficher les
élém ents techniques") : Python Im aging Library (pour m anipuler les screenshots) Python-che rrypy3 (se rve ur inté gré) wxpython: "python-wxgtk2.8" et "python-wxversion" (gestionnaire de fenêtres) ffm peg (encodeur audio) liblam em p3: "libm p3lam e0" ou provenant de "Ubuntu Restricted Extra" (pour l'encodage au form at m p3) scrot (pour les captures d'écran) python-x lib (né ce ssaire au hook clavie r/souris) pyx hook m odule (le hook clavie r/souris, voir pyx hook.py dans le projet http://sourceforge.net/projects/pykeylogger ) Télécharger le fichier source et le sauvegarder dans le dossier contenant avcosxlinux.py Introduction version Mac OS X Lion
Version Bêta/expérim entale du client Audiovideocours. Quelques étapes préalables sont nécessaires à l'installation d'audiovideocours sur Mac OSX Lion due aux nom breuses technologies utilisées par le logiciel. Si vous êtes enseignant à l'université de Strasbourg nous pouvons l'installer sur votre OSX Lion (passez à la Direction des Usages du Num ériques pour cela, téléphone poste 50016). Installation Etape 1: Activer les options d'accessibilité de votre Mac. Menu "pom m e" > "préférences systèm e" > "Accès universel" (onglet clavier) > autoriser l'accès (avant dernière ligne) Etape 2: Télécharger et installer WxPython (Librairie gratuite et Open Source) ici. Etape 3: Télécharger et installer FlashMediaLiveEncoder (encodeur gratuit d'adobe). Vous pouvez le télécharger sur le site d'adobe ici (nécessité un com pte gratuit). Si vous êtes enseignant à l'unive rsité de Strasbourg nous pouvons l'installe r sur votre Mac (passe z à la Dire ction de s Usages du Num ériques pour cela, téléphone poste 50016). Etape 4: Télécharger audiovideocours.zip et dézipper dans votre répertoire personnel (ie /votredisquedur/users/votrecom pte/) pour obtenir un dossier /votredisquedur/users /Votre C om pte/audiovide ocours (le logicie l ne fonctionne ra pas à un autre e ndroit) Etape 5: Pour lancer le logiciel aller dans le dossier audiovideocours et double-cliquer sur Audiovide ocours.app. Vous pouvez égalem ent créer un alias et le déplacer sur votre bureau (ctrl-click Alias) ou utiliser spotlight "audiovideocours" Usage Lancer Audiovideocours.app et attendre quelques secondes le tem ps que le logiciel s'initialise et que la prem ière fenêtre apparaisse.
Le logicie l e st visible dans le dock via une icone de fusé e "Python". La barre de m e nu a une icône "AC" sur fond blanc qui passera en fond rouge lors de l'enregistrem ent. Lors du prem ier enregistrem ent un dossier "audiovideocours-enregistrem ents" est crée dans votre répertorie personnel qui contient les enregistrem ents à coté du dossier "audiovide ocours" (qui contie nt le logicie l e t le fichie r de configuration m e diacours.conf). Informations pour développeurs Le développem ent se fait sur OS X Lion avec Python 2.7 préinstallé et livré avec OS X Lion pour lequel il faut activer l'accès universel (Menu prom m e > Préférences systèm e > Accès Universel > "Enable access for assistive device") L'enregistrem ent de l'audio ou de la vidéo se fait via Flash Media Live Encoder 3.2 qu'il faudra installer au préalable (gratuit m ais nécessite de créer un com pte gratuit sur le site d'adobe pour le télécharger la prem ière fois): http://www.adobe.com /products/flashm e diase rve r/flashm e diae ncode r/ Librairies com plém entaires à installer: che rrypy 3.2 http://www.che rrypy.org/wik i/c he rrypydownload Si vous avez du m al pour installer ces librairies vous pouvez les installer localem ent dans le dossie r audiovide ocours: C he rrypy : dé zippe r CherryPy-3.2.0.zip et copier/coller le dossier cherrypy dans le dossier contenant le code d'audiovidecours Remarques : audiocours ne produit pas pour l'instant de mp3 directement mais un flv audio qui contient le mp3 (ou le flv video)