Rapport de projet Epimix

Rapport de projet Epimix
Rapport de projet
ElectroCodeurs
Juin 2004
Epimix
Les ElectroCodeurs :
Amin Ramtin
Cambazard Damien
Fenet Vincent
EPITA Info Sup - Promo 2008
Table des matières
1 Introduction
1.1 Présentation du groupe . . . . . . . . . . . . . . . . . . . . . .
1.2 Présentation du projet . . . . . . . . . . . . . . . . . . . . . .
4
4
4
2 Objectif du cahier des charges
2.1 Découpage du projet . . . . .
2.1.1 Interface / Protocole .
2.1.2 Traitement / Effet . .
2.1.3 Graphisme . . . . . . .
2.1.4 Traitement / Playlist .
2.2 Planning . . . . . . . . . . . .
2.3 Moyens technique . . . . . . .
2.3.1 Matériel utilisé . . . .
2.3.2 Logiciels utilisés . . . .
2.4 Aspects économique . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
6
6
6
6
7
8
8
8
9
3 Réalisation du projet
3.1 Les difficultés . . . . . . . . . . .
3.2 Lecture (Vincent) . . . . . . . . .
3.2.1 Décodage . . . . . . . . .
3.2.2 Sens . . . . . . . . . . . .
3.2.3 Vitesse . . . . . . . . . . .
3.2.4 Multi Speaker . . . . . . .
3.2.5 Effets . . . . . . . . . . .
3.2.6 Cross-fading . . . . . . . .
3.3 Partie électronique (Amin) . . . .
3.4 Interface graphique (Damien) . .
3.5 Sample (Damien) . . . . . . . . .
3.6 Playliste (Damien) . . . . . . . .
3.7 Options (Damien) . . . . . . . . .
3.7.1 Options Playliste . . . . .
3.7.2 Options Sample . . . . . .
3.7.3 Options Langage . . . . .
3.7.4 Options USB . . . . . . .
3.7.5 Option Multi-speaker . . .
3.7.6 Options Affichage . . . . .
3.8 Editeurs . . . . . . . . . . . . . .
3.8.1 Editeur d’ IdTag (Damien)
3.8.2 Editeur de Skins (Damien)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
10
12
12
13
13
13
14
15
15
17
18
19
20
20
20
21
21
21
22
23
23
23
2
.
.
.
.
.
.
.
.
.
.
3.8.3 Editeur de Langues (Damien)
Graphisme (Damien et Vincent) . . .
3.9.1 Skin Finale . . . . . . . . . .
3.9.2 Icône et logo . . . . . . . . . .
3.10 Thread (Damien) . . . . . . . . . . .
3.11 Phase de test . . . . . . . . . . . . .
3.9
.
.
.
.
.
.
.
.
.
.
.
.
4 Marketing
4.1 Installation (Damien) . . . . . . . . . . .
4.2 Jaquette de la boite (Damien et Vincent)
4.3 CD (Damien et Vincent) . . . . . . . . .
4.4 Autorun (Damien) . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
24
24
25
25
25
.
.
.
.
27
27
27
27
28
5 Aide
29
5.1 Manuel d’installation et d’utilisation (Vincent) . . . . . . . . . 29
5.2 Fichier d’ aide (Vincent) . . . . . . . . . . . . . . . . . . . . . 29
6 Site Internet (Damien)
29
7 Conclusion
31
1
Introduction
1.1
Présentation du groupe
Dans le cadre du projet informatique d’infosup, il nous a été demandé
de réaliser un jeu ou un logiciel programmé à l’aide de Turbo Pascal ou de
Delphi dont le thème est entièrement libre.
Nous avons donc formé un groupe de quatre étudiants : Vincent Fenet,
Damien Cambazard, Ramtin Amin et Florent Aldebert. Nous nous sommes
donc penché sur ce que nous pourrions faire comme projet, ce qui n’était pas
forcement chose facile vu la quantité de projet réalisable.
Damien cherchant a faire quelque chose sortant de l’ordinaire pour un projet
de sup, Ramtin a alors eu l’idée de faire un programme alliant informatique
et électronique. Vincent étant très motivé par tout ce qui touche au son a
alors eu lui aussi l’idée de mélanger son, informatique et électronique, Florent
voulant alors que le tout soit centralisé par une interface conviviale.
Nous avons donc décidé de réaliser un logiciel original à l’aide de Delphi
alliant toutes ces caractéristiques.
Chaque membres s’est alors vu attribuer une charge logique dans le
groupe : Vincent pour la partie sonore, Amin pour la partie électronique,
Damien pour la partie gestion et assemblage et enfin Florent pour la partie
interface graphique.
1.2
Présentation du projet
Le logiciel de mixage que nous avons réalisé est destiné à tous les DJ qui
souhaitent mixer avec des platines vinyles qu’ils soient amateurs ou professionnels. Il est accompagné d’un module USB sur lequel on relie deux platines.
A l’aide de deux vinyles spéciaux placés sur les platines vinyles, le module
USB peut alors analyser le sens et la vitesse à laquelle les platines sont en
train d’évoluer, ce qui permet de réaliser un mix en temps réel du fichier
audio. Par l’intermédiaire d’un protocole spécifique et via le module USB, le
logiciel récupère ces informations et applique alors les effets et mouvements
voulus sur la piste sonore chargée dans l’ordinateur. On peut alors mixer des
milliers de fichiers audio contenus dans l’ordinateur en conservant le toucher
de ces antiques vinyles. Ce qui évite au DJ old school1 mais professionnels
de s’adapter au parfois trop compliqués nouveaux matériels numériques du
commerce, n’ayant souvent pas le même toucher que le vinyle.
Alliant le plaisir d’une platine et d’une table de mixage avec la simplicité
de stockage et d’utilisation de l’informatique, le but de notre projet est de
1
DJ utilisant du matériel analogique
4
faciliter le quotidien des DJ à l’aide d’un logiciel de mixage associé à une
interface hardware. Ainsi les DJ n’ont ni besoin de payer les monstrueux frais
de conversion de leurs fichiers audio en vinyles ni besoin de transporter tous
leurs vinyles encombrant avec eux, étant donné qu’un ordinateur portable
est très souvent de faible dimension, et que notre module est lui aussi de
faible dimension. Ils ne sont pas non plus obligés de s’adapter pleinement au
platines numériques ou au système informatique puisque ce système utilise
deux vraies platines vinyles afin de simuler cet antique mais unique mix.
5
2
Objectif du cahier des charges
Pour réaliser notre projet, il nous fallait tout d’abord établir un cahier
des charges dont nous allons maintenant revoir les différents objectifs.
2.1
Découpage du projet
Tout d’abord nous avons dû découper le projet en différente partie qui
nous paraissait les plus importantes.
2.1.1
Interface / Protocole
L’interface électronique entre la partie mécanique (la platine vinyle) et
informatique se fera par le biais d’un module branché sur un port USB. Ainsi
l’ordinateur peut analyser, mémoriser et reproduire virtuellement les mêmes
effets sonores que ceux appliqués aux platines vinyles.
2.1.2
Traitement / Effet
On a besoin de décompresser le fichier audio s’il est dans un format compressé comme le Mp3. On peut aussi gérer soi même l’importance des basses,
des médiums et des aigus, ce qui est indispensable pour pouvoir mixer deux
morceaux.
2.1.3
Graphisme
Toute l’application doit être simple d’utilisation afin que les personnes
n’ayant jamais mixé puissent se servir aisément du logiciel, d’où l’importance
d’avoir une interface graphique explicite. On peut par exemple y voir des
vinyles virtuels qui représenteront les mêmes actions que les vraies platine.
2.1.4
Traitement / Playlist
Le choix des fichiers audio s’effectue grâce à un explorateur ou une interface graphique. On peut ainsi, par exemple, classer les fichiers par artiste, par
style musical, par année, etc. On peut également présélectionner des fichiers
et les placer dans une playliste, ce qui permet d’avoir les fichiers désirés facilement accessibles lors d’un mix en évitant d’ avoir besoin de rechercher
systématiquement nos pistes favorites.
6
2.2
Planning
Le planning nous a permis de réaliser sans retard notre projet. Le voici
tel qu’il était au départ :
Aldebert
Florent
Amin Ramtin
Soutenance 1
Site Web Apprentissage
Delphi
Approche
de la partie
électronique
(analyse
du
signal,plan,...)
Planning
Soutenance 2
Graphisme
Début
de
réalisation
de la partie
électronique
Protocole de
communication
Cambazard Apprentissage Gestion de
Damien
Delphi Début playlistes
de l’approche
graphique
Fenet
Traitement
Ebauche
Vincent
du son
d’un
programme
gérant
la
lecture
de
deux sons
7
Soutenance 3
Interface Visuelle
Soutenance 4
Projet terminé
Partie
électronique
et protocole
terminées
Projet
miné
ter-
Gestion d’affichage
de
playlistes
Projet
miné
ter-
Gestion de Projet
la lecture du miné
fichier audio
en fonction
du vinyle
ter-
2.3
Moyens technique
Voici les différents moyens techniques qui nous ont servis pour développer
notre application.
2.3.1
Matériel utilisé
Moyen technique de chacun :
Processeur Mémoire
Carte son
Aldebert Florent
PII 233 Mhz
64 Mo
Compatible soudblaster
Amin Ramtin
P4 2.4 Ghz
512 Mo
5.1
Cambazard Damien P4 2.8 Ghz
512 Mo
2.0
Fenet Vincent
P4 2.2 Ghz
512 Mo
2.0
2.3.2
Logiciels utilisés
Pour réaliser ce projet nous avons finalement utilisé plusieurs logiciels
différents au lieu des deux prévue initialement :
– Delphi 7 Personnel
– PhotoShop Trial Edition
– Flash Mx Trial
– Install Shield Trial
– Help & Manual 3 Version limitée à 15 jours d’utilisation
8
2.4
Aspects économique
Notre seul vrai coût fut ce qui concerne la partie électronique dont le
généreux compte en banque d’Amin a subi les frais.
Coûts de la partie électronique :
2 vinyles
34 e
Module USB
45 e
Microcontrôleurs
20 e
2 Analogique-Digital
20 e
Réalisation d’une plaque électronique 25 e
Composants divers
15 e
Total :
159 e
Voilà donc tout ce qui était prévu à l’origine.
9
3
3.1
Réalisation du projet
Les difficultés
La principale difficultés qui nous est apparue est le fait que l’un de nos
membres du groupe s’est vu très tôt démotivé : en effet, juste avant la
deuxième soutenance, nous avons soudainement plus eu de nouvelles de lui ;
celui-ci ne venais plus a l’école et était parti avec la version finale du site web
et la base du programme sur laquelle nous étions censé greffer nos parties.
Nous avons donc du refaire le site web et réorganiser les différentes parties
du planning, et ce sans perdre de temps, ce qui nous a été profitable puisque
a l’heure actuelle, nous n’avons toujours pas eu de nouvelles de lui.
Un autre problème qui fit son apparition à la fin de notre semaine de projet était le composant de connexion au module USB. En effet, ce composant
était un OCX très particulier installé par un autre logiciel. Lors de l’utilisation de notre application sur une machine sur laquelle ce logiciel n’avait
jamais été installé, ce dernier refusait de se lancer correctement, et ce malgré
les tentatives d’enregistrement de l’OCX sur la machine. Après de multiples
recherches sur le sujet, nous décidions alors de supprimer ce module OCX et
de passer a un autre module au fonctionnement similaire, mais ne nécessitant
pas de fichier OCX.
10
Voici donc le nouveau planning que nous avions prévu :
Planning
Soutenance 1 Soutenance 2
Amin Ram- Approche
Début
de
tin
de la partie réalisation
électronique
de la partie
(analyse
électronique
du
si- Protocole de
gnal,plan,...) communication
Cambazard Apprentissage Gestion de
Damien
Delphi Début playlistes
de l’approche et
Refonte
graphique
totale du site
web
Fenet
Traitement
Ebauche
Vincent
du son
d’un
programme
gérant
la
lecture
de
deux sons
11
Soutenance 3
Partie
électronique
et protocole
terminées
Soutenance 4
Projet terminé
Gestion d’affichage
de
playlistes
et interface
visuelle
Gestion de
la lecture du
fichier audio
en fonction
du vinyle et
graphisme
Projet
miné
ter-
Projet
miné
ter-
3.2
3.2.1
Lecture (Vincent)
Décodage
La seconde difficulté qui nous est apparue très tôt concerne le décodage
du Mp3 ; En effet celui-ci utilise des formules mathématiques très complexes.
Cela nous a donc obligé à nous diriger vers des dll tierces parties, étant pour
certaines très compliquée mais ne nécessitant pas un bagage mathématique
d’ingénieur.
Notre premier essai fut basé sur la dll mpglib, étant la base de toute la
décompression des fichiers audio mpeg 1 layer 1,2 et 3. Malheureusement,
celui-ci utilisait des notions qu’aucuns membres du groupes n’arrivaient a
comprendre en début d’année : le code utilisais pointeurs et enregistrement
mais était surtout codé en C. Nous nous sommes alors dirigés vers la librairie
FMOD (www.FMOD.org) qui arrivait à remplir nos besoins pour la première
soutenance, mais avions hélas déjà quelques doutes quand au services qu’elle
pourrait nous rendre pour les autres soutenance. Malheureusement, certains
problèmes furent constatés particulièrement au niveau du “sens de lecture”,
c’est à dire que la librairie n’était absolument pas prévue pour lire le Mp3 a
l’envers.
On a donc finalement dû décider d’utiliser la librairie BASS2 , qui, même
si elle avait la possibilité de lire un fichier Mp3 a l’envers, créait de très
désagréables coupures a chaque changement de sens.
Nos efforts utilisés pour FMOD ne sont d’ ailleurs pas restés inutiles
puisque la librairie est utilisée dans la partie samples du logiciel. Pour palier de nombreux problèmes au niveau du sens et de la vitesse,nous avons
finalement crée une procédure de conversion du fichier Mp3 en un fichier
non compressé wav contenu en mémoire afin de pouvoir traiter le son plus
facilement. Le problème était que cette technique consommait bien trop de
mémoire une fois le Mp3 décompressé.
Pour palier a ce problème, nous avons tenté de décompresser le Mp3
a la volée partie par partie, mais un problème de très importante latence
ce fit sentir, nous avons donc du nous résigner a une décompression totale
du Mp3.Le problème de consommation outrageuse de mémoire fut d’ailleurs
résolu plus tard en convertissant non pas en mémoire mais directement sur
le disque dur, dans un répertoire temporaire, comme le font beaucoup de
programme de musique assistée par ordinateurs tels que Cubase ou SoundForge.
2
www.un4seen.com
12
3.2.2
Sens
Pourquoi le sens et la vitesse est il aussi important dans notre logiciel ?
Simplement parce que l’on doit reproduire les mouvements du vinyle sur la
platine et que celui-ci peut être lu à l’endroit comme à l’envers à n’ importe
quelle vitesse.
En effet, lorsque le DJ mixe, il peut très bien donner des à-coups du
disque en avant puis en arrière, ce qui nous oblige donc à ne pas négliger le
sens de lecture afin de reproduire a la perfection le mix tel qu’il aurait pût
être avec un vrai vinyle.
La partie sens de lecture fut d’ ailleurs malheureusement un problème assez important, puisque le Mp3 à une sorte de structure “redondante”, c’est à
dire qu’une partie des données précédant la position de lecture est nécessaire.
Cela nous a alors causé l’impossibilité de lire le flux Mp3 lui-même a l’envers :
la librairie FMOD nous est alors devenue complètement obsolète dans ce cas
puisque ne traitant pas le son a l’envers et ne nous permettant d’aucunes
manières de convertir le fichier Mp3 en fichier non compressé wav.
Nous avons donc dû nous replier sur la librairie BASS pour convertir le
son en wav, et avons donc du créer nos propres procédures d’inversion du son
ne modifiant alors pas le Mp3 lui-même mais sa conversion wav contenue en
mémoire, qui est alors plus facile à inverser grâce à la structure linéaire du
format wav. Pour lire un fichier wav a l’envers, il suffit alors de prendre le
fichier sans entête (un raw) et d’inverser tout les “paquets” de quatre octets,
puis de reconstituer l’entête.
3.2.3
Vitesse
La vitesse est, comme nous l’avons vu précédemment, la plus importante
des choses. Parce que, sans vitesse, nous aurions juste une lecture du fichier
en fonction du sens, ce qui rendra alors impossible d’effectuer ne serait ce
qu’un banal enchaı̂nement. Nous n’avons donc jamais oublié cette notion.
Nous savions que FMOD pouvait faire varier la vitesse du Mp3 en cours
de lecture. Mais ayant dû par la suite utiliser BASS, nous avons donc dans
la foulée modifiée notre procédure d’inversion pour y ajouter une notion de
vitesse, le tout compilé par nos soins dans une dll nommée cpdll.
3.2.4
Multi Speaker
Tout les DJs d’aujourd’hui ne font pas des enchaı̂nements musicaux à la
légère et nécessitent d’avoir une option dite “multi speaker”, c’est à dire que
plusieurs canaux de leurs cartes son soient utilisés. Il existe deux principaux
avantages à l’utilisation de plusieurs canaux :
13
Le premier est le fait que le DJ veut pouvoir écouter le morceau qui est
joué sur la platine qui ne diffuse pas, c’ est a dire que toute la proportion
du son est donnée a l’ autre platine, et le DJ veut alors pouvoir synchroniser
basses ou percussion des deux pistes sans pour autant gêner ce qui est diffusé
dans les enceintes ; il peut alors faire ses tests avec un casque et estimer si oui
ou non les pistes son suffisamment synchronisée pour être doucement diffusée
et passer de l’ une a l’ autre le plus élégamment possible, et ce en évitant
évidemment toute coupure. C’est le mode dit “avancé”.
Le second est le fait que le DJ puisse pouvoir brancher les 2 platines
indépendamment sur deux voies distinctes de sa table de mixage, comme il
aurait branché les deux vraies platines sur deux canaux différents de la même
table. C’est le mode dit “classique”.
Ces deux façons de mixer nous ont donc suffit pour avoir envie de proposer
à l’utilisateur cette option de multi speaker. Nous l’avons donc intégré en
utilisant le mode 3D des cartes son. Le seul problème est que pour utiliser ce
mode audio, il faut avoir une carte son gérant plusieurs sorties. C’est pour
cela que nous le proposons qu’en option afin que les personnes disposant
d’une carte son stéréo puisse utiliser notre logiciel.
3.2.5
Effets
Sur toutes les tables de mixages qu’elles soient amateurs ou professionnels, on trouve désormais un réglage de basses, mediums et aigu. Ces trois
réglages de fréquences sont en fait très important puisque chaque réglage
correspond a un “élément” de la musique, généralement le tempo pour les
basses fréquences, les voix pour les mediums et les percussions pour les aigus. Ce réglage de fréquence permet alors d’insister ou d’atténuer sur l’une
des caractéristiques du Mp3, permettant alors par exemple de garder que les
basses d’une musique avec les voix et percussions de l’autre musique. Nous
avons alors implémentés un réglage de chacune de ces fréquences sur chacun
des canaux, permettant alors au gens ne possédant pas de table de mixage
sous la main d’avoir ces effets basiques mais indispensable.
14
3.2.6
Cross-fading
Le cross-fading est en fait une sorte de liaison entre le volume de deux
platines ; situés lui aussi sur toutes les tables de mixage DJ, ce “bouton”
permet de graduellement baisser le volume de l’une des platines tout en
augmentant le volume de l’autre platine en un seul mouvement : cela permet
de passer très simplement et élégamment de l’une a l’autre des platines. Ces
cross-faders, aux nombres de 4 dans notre interface, permettent de “piloter”
distinctement le volume global et le volume de chacune des trois fréquences
(basses, mediums et aigues).
3.3
Partie électronique (Amin)
Le projet est composé d’un logiciel qui interagit avec un carte électronique,
carte qui fera l’objet de cette partie. Cette carte électronique est connectée
d’une part aux deux platines vinyle équipés de disque spéciaux comportant
un time code, qui est en fait le signal que l’ on va analyser, et connectée d’
autre part à une table de mixage et un port USB de l’ ordinateur.
La carte est faite de la façon suivante : un module USB de chez FTDI est
relie à un latch sur un bus de données sur lequel passe aussi les information
relative à la vitesse et au sens des vinyle. Ceux ci sont récupérés grâce à une
analyse de signal simple. En effet les disque vinyles dits “spéciaux” sont en
fait composés d’un signal stéréo de deux sinusoı̈des décalées l’une par rapport
a l’autre d’un quart de cycle. L’analyse consiste donc à repérer quel signal
est devant l’autre et du fait savoir dans quel sens le disque est en train de
tourner.
De plus, en analysant la fréquence de la sinusoı̈de elle-même, on peut
en déduire la vitesse de rotation du vinyle. Le tout étant géré par deux
microcontrôleur : l’ un chargé de l’analyse des signaux , l’autre gérant la
platine tout entière,un peut comme le microprocesseur d’ un ordinateur...
La carte est aussi équipée d’une mémoire LIFO. Cette mémoire a pour
but de combler les lacunes du bus USB, ayant pour défaut de ne pouvoir
envoyer que 125 trames par seconde quelque soit la longueur de la trame. Le
but étant alors d’envoyer à la mémoire une trame énorme, et laissant ensuite
le contrôleur les dispatcher au fur et à mesure ; Cette mémoire agit donc
comme un buffer.
La carte est aussi équipée de deux décodeurs MP3 hardware et de 2
convertisseurs analogique digital qui permettent de pouvoir faire un décodage
Mp3 en hard.
Au niveau logiciel, une DLL a été crée afin de pouvoir faire communiquer
directement et facilement le logiciel avec la carte. Dans un premier temps, un
15
protocole a été mis en place. Le logiciel demande alors la vitesse de chaque
vinyle et leur sens a la DLL, et ce a chaque boucle.
Le protocole permet de plus d’envoyer une trame MP3 compressée au
module en lui précisant sur quelle sortie audio nous souhaitons la lire. Cette
trame MP3 doit cependant être a la vitesse de lecture souhaité, et donc traitée
entre temps par le logiciel. La DLL prend alors un buffer en RAW de format
44100 16bits stéréo. Les différent filtres sont alors appliqués a ce buffer, par
exemple, si un autre son doit lui être superposé, une moyenne entre les deux
son est effectuée : si le buffer d origine est : [a, b, c, d, e, f, g, h] et le buffer
secondaire est [i, j, k, l, m, n, o, p] ,le buffer résultant serait alors : [(a+i)/2,
(b+j)/2,(c+k)/2,(d+l)/2,(e+m)/2,(f+n)/2,(g+o)/2, (h+p)/2]. Ceci a pour
but de pouvoir rester dans la tranche 0-65536 (16 bits) et en restant dans un
même ordre de volume.
Les buffers sont alors recompressés a l’aide de la librairie LAME, donnant
alors un ensembles de trames Mp3, ces trames étant alors dissociés afin de
savoir combien de trame il est nécessaire d’ envoyer. Etant donnés que nous
avons 125 trames USB par seconde, nous pourrions aller jusqu’a une moyenne
de 60 échantillons de vitesse par seconde et par platine.
La perception humaine du son étant plutôt lente, on peut alors avoir une
latence raisonnable et non audible.
16
3.4
Interface graphique (Damien)
Au niveau de l’interface, nous voulions quelque chose qui soit à la foi
simple, joli et complet. C’est ainsi que l’on a eu l’idée d’insérer deux vinyles virtuels afin de simuler les vraies platines vinyles : les vinyles tournent
donc proportionnellement a la même vitesse et dans le même sens que le
vinyle original. L’utilisateur peut alors savoir à tout moment ce qu’il se passe
sur chacune des platines. Nous avons aussi regroupé autour de ces platines
les principales fonction d’effets sonores comme, par exemple, la gestion des
graves, mediums et aigus. Il y a de plus la gestion du volume de chaque platine ainsi que des cross-faders permettant de sélectionner quelle platine on
veut en sortie. Ainsi, on a les principales fonctions a portée de main. Cette option s’avère surtout très utile lorsque l’utilisateur utilise une simple carte son
avec une seule sortie audio, ce qui permet alors de se dispenser d’une table de
mixage. Enfin on retrouve une gestion de la vitesse et aussi du niveau sonore
du Mp3, tout cela permettant à la personne voulant se servir uniquement du
logiciel pour mixer d’éviter de brancher le module USB et les platines. Afin
de pourvoir accéder directement à un point précis de la chanson, nous avons
donc équipés les deux “platines” d’une jauge se trouvant autour de chaque
vinyle permettant alors de se déplacer dans la chanson par un simple clic.
Ce principe de clic a d’ ailleurs dû être implémenté, puisque il n’est pas géré
a l’origine par les composants delphi. Etant donné que la jauge ne guerre
même pas le simple clic, nous avons alors du la recouvrir d’une image transparente afin de pouvoir capter le clic sur celle-ci. Nous avons d’ailleurs placé
une image pas tout a fait transparente, puisque celle-ci cache une partie du
centre de la jauge circulaire, permettant ainsi de simuler une track-bar ronde.
Pour plus de précision et de facilité d’ utilisation, des compteurs on été
placés sur chacune des platines, permettant de savoir le temps restant,le
temps écoulé et la durée totale du Mp3 en cour de lecture. Notons d’ailleurs
que le temps écoulé et le temps restant est mis sur la même zone de texte,
un clic sur celle-ci alternant alors l’ affichage du temps écoulé et restant.
Lorsque l’on veut changer de Mp3, il faut cliquer sur le bouton d’éjection.
Enfin on trouve entre les deux platines des raccourcis pour la lecture de
chaque sample, permettant alors à l’utilisateur de changer à chaque fois de
menu pour lire un sample. L’interface est ainsi suffisamment claire et intuitive
à notre goût. Enfin, si un n’utilisateur ne la trouve pas totalement claire, il
peut facilement la changer, voir la faire lui-même puisque un très simple
éditeur de skin a été intégré a notre programme, ce qui permettra alors a
tout le monde d’ avoir son logiciel de mixage comme il le souhaite.
17
3.5
Sample (Damien)
Pourquoi utiliser des sample ? Tout simplement parce que pour beaucoup
de DJs, la chanson elle-même ne suffit pas. Certains peuvent vouloir rajouter divers son tels que jingles, bruits ou morceaux bien spécifique d’autres
chansons afin d’enrichir ou de donner du “fun” au mix.
C’est ainsi que l’on a décidé d’insérer cette option dans notre logiciel.
Nous avons choisi de faire huit sampler, c’est à dire lecteurs de samples, ce
qui semble suffisant sachant que l’on peut à tout moment changer ce qui a
été chargé dans chaque sampler. Pour faire ces lecteurs, nous avons utilisé la
librairie FMOD, car c’est la première librairie que l’on ai réussi à utiliser et
car nous n’avions pas besoin de quelque chose de plus compliqué pour faire
une simple lecture d’un fichier audio.
Les sample reconnu par notre logiciel sont les fichiers wav et non Mp3,
tout simplement parce qu’un sample est un fichier audio de courte durée qui
ne prend alors que peut d’espace disque. De plus, de nombreux CD existant
dans le commerce, comme ceux de la série Magix Music Maker, fournissent
des samples au format wav.
Chaque utilisateur pourra de plus créer ses propre sample très simplement
avec, par exemple, l’utilitaire sndrec32, sorte de magnétophone intégré a
Windows, l’utilisation dans le logiciel ne nécessitant alors pas de conversion
dans un autre format de fichier après enregistrement. Ceci en sachant que le
format wav est reconnu par tous autres programmes d’enregistrement et est
facile de manipulation.
Afin d’améliorer les effets rendus par les samples, nous avons décidé
d’ajouter une fonction de lecture en boucle, fonction existant déjà sur tout
les samplers hardware. Cela permet par exemple à l’utilisateur de jouer un
certain son en continu afin de recréer un fond musical différent de l’original
lors du mixage. On peut bien sûr arrêter ces sons quand on le désire par un
simple clic sur le bouton stop.
Afin d’ajuster le son des différents samples au niveau sonore de la musique,
nous avons ajouté la possibilité de régler le volume des différent sample et
ceci indépendamment les uns des autre. On peut ainsi créer plusieurs couches
sonores, c’est-à-dire avoir un sample en boucle qui joue le rôle de rythmique
et d’autre plus ou moins forts amenant de la variété au mix et introduisant
des sons inédit à la chanson originale.
Enfin, dans le but de savoir se qu’il se trouve dans chaque sampler, nous
avons eu l’idée d’inclure le titre au dessus des différent lecteur. Etant donné
que dans les fichiers wav il n’y a pas d’information sur le titre, nous affichons
donc le nom du fichier wav sans son extension. Ainsi l’utilisateur sait à tout
moment ce que contiennent les différent lecteur. Ceci est très utile, d’ autant
18
plus que les samples chargés dans les différents lecteurs sont sauvegardés à
la fermeture du logiciel et rechargé a chaque réouverture du logiciel.
3.6
Playliste (Damien)
La playliste, c’est a dire liste de lecture, est l’une des parties constituant
le cœur du logiciel car sans elle il est impossible de mémoriser ou de choisir
des chansons. Pour cela nous avons décidé de réaliser un système de sélection
inspiré de l’explorateur Windows.
Il est ainsi constitué d’une vue arborescente dans lequel les dossiers du
disque dur s’affichent. En cliquant sur l’un de ces dossiers, tous les fichiers
Mp3 s’y trouvant vont alors être scanné et s’afficher dans une liste. Cet
affichage est divisé en deux colonnes : la première pour le titre de la chanson et
la seconde pour le nom de l’artiste. Ces informations sont d’ailleurs extraites
à partir de l’ IdTag du titre et de l’artiste d’une chanson contenue dans le
fichier Mp3. Dans le cas ou le fichier Mp3 aurait son IdTag vide ou absent, le
nom du fichier Mp3 s’affichera alors dans la colonne titre, laissant la colonne
artiste vide.
Une deuxième liste située à l’extrême droite est utilisée pour faire la
playliste ; en effet on peut ajouter à cette playliste par simple glissé déplacé
une chanson contenue dans la première liste. Ainsi on crée la playliste qui nous
intéresse pour avoir accès plus rapidement aux fichiers Mp3 voulu. Quand à
l’affichage de cette playliste, il fonctionne exactement comme dans la première
vue ; la seule différence est l fait que l’on peut supprimer des éléments de cette
liste sans pour autant les supprimer physiquement ; cette playliste sert alors
à garder de coté les morceaux favoris qui pourraient être lu un peut plus tard.
De plus, un simple appui sur la touche Suppr ou un clic droit sur un élément
de cette playliste nous permet de supprimer les éléments choisis. Il est aussi
utile de pouvoir sauvegarder la playliste. C’est pourquoi nous nous sommes
penché sur le sujet et avons juger utile de rendre les fichiers de playliste
compatible avec d’autre programme. Nous avons donc étudié les systèmes
de playliste existant et nous avons retenu le format M3U. D’une part par
sa popularité d’autre part par sa facilité d’implémentation, ce format nous
permet d’ouvrir les playlistes que créent d’autres logiciels comme le célèbre
WinAmp. Nous avons donc intégré le système de sauvegarde et chargement
de playliste au format m3u. Enfin, chose qui peut nous être parfois utile,
nous avons intégrer un bouton permettant de supprimer l’intégralité de la
playliste en une seule action.
19
3.7
Options (Damien)
Comme dans tout logiciel, nous avons implémenté diverses options que
nous jugions utiles. C’est ainsi que plusieurs catégories d’options ont été
créés : playliste, sample, langage, USB, affichage.
3.7.1
Options Playliste
Tout d’abord, en ce qui concerne la playliste, nous avons choisi de proposer une option concernant le double clic sur un fichier de l’explorateur :
cette option propose deux modes : Le premier est d’ajouter directement le
fichier dans un vinyle disponible, prioritairement dans la platine de gauche,
et ignorant le double click au cas où aucune des deux platines ne serait libre.
Le second est de placer le fichier double cliqué dans à la fin de la playliste, à
droite.
La seconde option concerne la sauvegarde de la playliste : l’utilisateur
peut, s’il le veut sauvegarder automatiquement la playliste lors de la fermeture du programme dans un fichier nommé “savp” situé dans le répertoire du
logiciel. Ainsi au prochain démarrage le logiciel chargera automatiquement
cette playliste sauvegardée.
3.7.2
Options Sample
Les sample sont des courts jingle d’ au plus quelques secondes qui peuvent
pour certain être mis en boucle donnant un résultat sonore convaincant, qui
sont d’ailleurs accessible facilement par huit boutons situées au centre de
l’interface. Une autre façon de lancer les samples est d’utiliser les raccourcis claviers qui sont d’ailleurs paramétrables dans ce même menu d’options.
Après avoir cliqué sur ce bouton, une fenêtre apparaı̂t demandant alors d’appuyer sur la touche choisie.
Notons qu’ après réflexion, nous avons décidé de laisser le fait que plusieurs samples puissent être attribué à la même touche, ce qui peut paraı̂tre
dans certains cas pratiques et de démarrer plusieurs samples en appuyant
sur une seule touche. En cas d’ erreur de la part de l’ utilisateur,si celui-ci
a malencontreusement attribué une touche a deux samples sans le vouloir, il
lui sera très facile de deviner ce qu’il se passe puisque chacune des touches
attribuées est indiquée dans les options. Une autre chose utile est le fait que
l’utilisateur n’ait pas besoin de reconfigurer toutes les touches entre chaque
utilisation du logiciel, puisque les touches sont sauvegardées dans le fichier
20
de configuration global du programme.
3.7.3
Options Langage
Voulant faire de notre application quelque chose d’utilisable par un maximum de personnes, nous avons ainsi eu l’idée de rendre notre programme
français et anglais. Afin que notre programme puisse encore plus évoluer a
l’avenir, nous avons alors décidé d’ajouter la possibilité de pouvoir charger
des fichiers de langages. Ainsi, il sera possible de gérer plusieurs langages.
Ceux de base fournie avec l’application sont bien évidemment l’anglais et
le français, mais n’importe quel utilisateur peut créer d’autres fichiers de
langue. Ces fichiers devront être places dans le répertoire lang du logiciel.
Ainsi lors de l’appui sur le bouton changement de langage dans la partie option, une fenêtre apparaı̂t avec une liste contenant tout les langage reconnu.
En fait lors de l’appui sur ce bouton, l’application va rechercher tous les fichiers avec l’extension “epl” dans le dossier lang de l’application, Epl étant
bien sur une abréviation pour “EPimix Langage”. Ainsi l’utilisateur n’a plus
qu’à sélectionner son langage et le logiciel va alors automatiquement changer
de langue sans avoir besoin de redémarrer. Pour faciliter la création de fichier
de langage, nous avons même décidé de fournir avec le logiciel un éditeur de
langue qui sera détaillé plus loin.
3.7.4
Options USB
Dans la partie USB, on retrouve toute les option concernant la liaison
entre le logiciel et le module USB. L’utilisateur doit déjà préciser sur quels
ports COM virtuel notre module USB a été détecté pendant l’installation des
drivers, port COM qui peut être recherché en regardant dans le gestionnaire
de périphériques de Windows. Une fois le bon port COM sélectionné, l’utilisateur n’a plus qu’à cliquer sur le bouton connexion, qui, comme son nom
l’indique, permet d établir la connexion avec le module USB. En cas de succès
de connexion, ce bouton est remplacé par un bouton de déconnexion. En cas
d’échec de connexion, rien ne se passe et le bouton reste nommé “connexion”.
3.7.5
Option Multi-speaker
Cette option sert à préciser au logiciel si il doit fonctionner en mode
standard, c’est à dire connectée a une table de mixage, chaque canaux de la
carte son 4.0 étant connectée au deux entrée line de la table de mixage, ou
en mode avancé, c’est à dire sans utiliser de table de mixage. Il est à noter
21
que cette option doit être cochée ou décochée au démarrage de l’application,
et pas lorsqu’un fichier est chargé.
3.7.6
Options Affichage
Ces options concernent surtout l’interface ; on a ainsi une option permettant à l’utilisateur de désactiver l’animation de rotation des platines, mais la
barre de navigation circulaire ne peut être désactivée puisque elle permet de
naviguer dans le fichier Mp3 mais surtout de savoir où en est la lecture du
fichier audio.
Une autre option que l’on trouve est celle du mode plein écran, changeant
la résolution en 1024 par 768. Elle peut très bien être désactivée puisque
certains utilisateurs n’aiment pas le plein écran et préfèrent rester en mode
fenêtré, ceci afin de faire plusieurs choses en même temps. De plus, une personne étant déjà en 1024 par 768 n’aura aucune utilité à passer en plein écran.
Ce changement d’option nécessite d’ ailleurs le redémarrage de l’application
pour être pris en compte. A noter aussi que lorsque l’on quittera le logiciel,
l’écran retrouvera sa résolution d’origine si il était en mode plein écran.
Enfin la dernière option d’affichage concerne la skin de l’interface. En effet il
est toujours utile de laisser la possibilité à l’utilisateur de changer l’apparence
de l’interface. Les skins créés devront se trouver dans le répertoire skin de
l’application et avoir l’extension eps, eps étant pour EPimix Skin. Le principe d’énumération des skins est lui aussi basé sur une liste des fichiers eps.
Ainsi l’utilisateur voulant que tel bouton soit à tel endroit plutôt qu’un autre
aura désormais la possibilité de le faire. Enfin, afin de simplifier la création
de skins, nous avons développé un éditeur de skin permettant de créer ses
propres styles.
22
3.8
3.8.1
Editeurs
Editeur d’ IdTag (Damien)
Nous avons de plus intégré un système de gestion de l’ IdTag. Pourquoi l’ IdTag ? Tout simplement qu’il contient des informations structurées
concernant le Mp3 qui restent identique même si le fichier est renommé. Ces
informations nous renseignent, entre autre, sur le titre et le nom de l’artiste
du fichier. Cet IdTag étant reconnu par tout les système de lecture de Mp3,
ces informations resteront alors accessible par d’autres logiciels. Cet éditeur
est d’ailleurs accessible par le menu contextuel de chacun des fichiers Mp3.
On y accède donc simplement en faisant un clic droit sur le fichier concerné
et en sélectionnant l’option IdTag. Une fenêtre apparaı̂t alors et affiche toute
les informations utiles concernant ce même Mp3. Il ne nous reste alors plus
qu’à remplir ou modifier les informations, et cliquer sur le bouton sauver ou
annuler le cas échéant.
3.8.2
Editeur de Skins (Damien)
Afin de pouvoir personnaliser l’interface de notre logiciel skinnable, c’est à
dire personnalisable, nous avons implémenté un éditeur de skins. Cet éditeur
permet de modifier entièrement l’interface. On peut donc changer de place n’
importe quel élément, changer les images de tous les boutons ainsi que leur
taille, changer la taille, les couleurs et le style de police utilisés pour chaque
zone de texte. Toutes ces informations sont en fait disponibles dans la zone
du bas de l’éditeur, et peuvent bien évidemment être modifiée. Une foi la
skin terminée, il ne reste alors plus qu’à la sauvegarder. Lorsque l’on clique
sur le bouton sauver, il nous est alors demandé un nom de skin. Une fois ce
nom entré, le programme va alors sauvegarder la structure de la skin dans
un fichier eps (pour EPimix Skin) et créer un dossier anim et y copier toutes
les images utilisées dans la skin. Ces images sont d’ ailleurs renommées avec
des noms bien particuliers afin de simplifier le chargement de la skin par
notre application. Il est important de noter que seules les images au format
bitmap peuvent être chargés dans l’ éditeur de skin, ce format étant l’ un des
plus simple gérant la transparence. Le fond d’écran de l’application ayant
une taille importante, nous laissons libre choix à l’utilisateur d’y charger un
bitmap ou un jpeg. Bien évidemment, une fois la skin sauvegardée, l’éditeur
peut tout à fais recharger la skin telle qu’elle était, afin de faire les modifications voulues.
23
3.8.3
Editeur de Langues (Damien)
Afin de pouvoir intégrer différentes langues supplémentaires à l’application, nous avons implémenté un éditeur de langues. Cet éditeur se décompose
en un tableau à deux colonnes. Dans la première se trouve le langage de
référence, que l’on peut d’ailleurs changer dans les options de l’éditeur.
Dans la seconde colonne se trouve soit un langage vierge soit un langage
chargé. Cette seconde colonne est d’ailleurs éditable, et c’est dans celle-ci
que l’on va effectuer le travail de traduction du programme. La traduction
une fois terminée, on peut alors sauvegarder le résultat dans un fichier epl
(pour EPimix Langage), fichier de langage spécifique a notre logiciel. Il est
à noter que la sauvegarde du fichier langage ne se fera pas si toutes les cases
de la traduction ne sont pas remplies.
3.9
Graphisme (Damien et Vincent)
Pour rentre notre application plus attractive et d’une utilisation plus
aisée, nous avons alors dû créer des images plus intéressantes qu’au soutenance précédentes. Ainsi, a l’aide d’Adobe PhotoShop, nous avons alors créer
des boutons sous forme d’images. Ces images on alors été enregistrée au format BMP. Nous n’avons en fait pas voulu utiliser le format JPEG car il
n’existe pas de gestion efficace de la transparence avec ce format a causes
des pertes lors de la compression. Cette transparence nous est d’ ailleurs
importante car utilisée a plusieurs reprises dans notre programme, particulièrement au niveau des platines virtuelles : si l’on ne s’était pas servi de
la transparence, nous n’aurions pas pu voir la barre de navigation circulaire
placée derrière l’animation du vinyle, cette barre de navigation qui n’est en
fait qu’une jauge dont on a caché la majorité du centre avec notre animation
du vinyle.
3.9.1
Skin Finale
La skin finale est en quelque sorte l’argument marketing du logiciel permettant de le faire connaı̂tre et se démarquer de la concurrence, car même si
le logiciel est skinnable, la skin de base restera tout de même la plus utilisée.
Elle se devait ainsi d’être parfaite, et, grâce aux images créées des vinyles
avec le nom du logiciel au centre, nous donnons un aspect à la foi ludique
et professionnel au logiciel. Les bouton on une pseudo apparence de relief
métallisé, avec leur contour s’illuminant a chaque pression, comme c’est le
24
cas avec beaucoup de matériels DJ professionnels. On a de plus fait attention
à bien conserver les couleurs standard utilisées dans le monde professionnel.
De plus, sachant que le monde du DJ est plutôt nocturne, il a aussi fallu
éviter les couleurs trop vives, trop claires et éviter les trop forts contrastes
afin d’éviter la fatigue des yeux. C’ est pourquoi le bleu marine est la couleur
dominante du logiciel.
3.9.2
Icône et logo
Une fois notre logiciel terminé, une chose manquais terriblement : un logo,
la chose la plus difficile étant qu’aucun de nous n’avait vraiment d’idée. Mais
finalement, au fur et a mesure de la création de notre skin finale, nous avons
eu l’idée d’utiliser un vinyle comme logo. Etant donné que ce logo ne ressemblait a aucuns autre sur le marché, cela nous a alors apporté une distinction
par rapport a la concurrence. Ainsi, notre menu autorun avais son logo et
notre application son icône, rendant alors notre application bien plus professionnelle.
3.10
Thread (Damien)
Un autre problème qui est vite apparu est le fait que l’application se
bloque lors du chargement d’ un Mp3, et ce tant que le Mp3 n’ était pas fini,
bloquant par la même occasion l’ autre platine en cour de lecture. Nous nous
sommes alors renseigné sur le problèmes et avons alors trouvé une solution :
utiliser un thread pour lancer le chargement. En effet, le thread permet de
décomposer les taches d’un programme afin que s’exécutent simultanément et
avec une certaine priorité plusieurs procédures sans bloquer. Techniquement,
le programme principal est une sorte de thread dont on peut créer plusieurs
sous thread, qui agiront comme des applications indépendantes et ne bloquant alors pas le programme principal. Cette disponibilité du programme
principal est d’ autant plus nécessaire que le module USB doit communiquer
en permanence avec l’ordinateur afin d’éviter toute déconnection prématurée,
et d’appliquer les changements de vitesse en direct.
3.11
Phase de test
Afin d’éliminer toutes les erreurs de conception de notre application, nous
avons donc du procéder à plusieurs phases de test intensifs. Pour cela, nous
avons donc fait subir de rude manipulation à notre logiciel pendant plusieurs
demies journées, en cliquant n’importe où, en appuyant sur n’importe quelles
25
touches et en faisant tout un tas de manipulation que nous pensions inadaptée
à la situation. A chaque plantage, nous notions la situation exacte et tentions
de remédier au bug de l’application par de petits ajouts de gestion d’erreur ou
correction du code. Par exemple, si un utilisateur essaye de se connecter sur
un mauvais port COM, l’application va alors intercepter l’erreur pour enfin
ne rien afficher ni faire, ce qui permettra à l’application de ne pas planter et
ne gênera pas l’utilisateur par l’affichage un message d’erreur.
26
4
4.1
Marketing
Installation (Damien)
Comme toute application, notre logiciel se devait d’être muni d’une installation digne de ce nom. En effet, sans installation, il est impossible pour
l’utilisateur lambda de s’en servir convenablement. Nous avons donc crée une
installation proposant différentes options, proposant d’ ailleurs trois parties
différentes. La première concerne la langue de l’installation, et est disponible
en anglais et français. Cela permet à un anglophone d’installer le logiciel
aussi bien qu’un français. La seconde partie concerne le répertoire où le logiciel devra être installé. Cela permet alors d’installer le logiciel sur un disque
pourvu de suffisamment d’espace libre. La troisième partie concerne le type
d’installation qui devra être faite, avec, au choix, la possibilité de choisir
les composants a installer : Logiciel principal, éditeur de langage, éditeur de
skins. Cela permet alors d’économiser de l’espace disque si l’utilisateur ne
désire pas éditer skins ou langues. L’installation permet d’ ailleurs à l’utilisateur de désinstaller le logiciel ultérieurement, supprimant toutes traces dans
l’ordinateur. Notons que l’installation place des raccourcis des composants
installés ainsi qu’un raccourci de désinstallation dans le menu démarrer.
4.2
Jaquette de la boite (Damien et Vincent)
Crée avec l’éditeur de jaquette de Nero (www.nero.com), et afin de pouvoir repérer la boite au format DVD du logiciel, nous l’avons muni d’une
jaquette essentiellement violette, reprenant les couleur de la skin de base du
logiciel, et permettant au futurs acheteurs d’ accrocher plus facilement a ces
couleurs inhabituelles. Elle est composée d’un logo a l’avant de la boite, ainsi
que des screenshots a l’arrière, accompagnée d’explications attrayantes, et de
la compatibilité et configuration minimale de l’ordinateur.
4.3
CD (Damien et Vincent)
Crée avec Epson CD Printer, le CD a directement été imprimé dans l’imprimante. Ayant globalement la même apparence que la jaquette, cela permet
donc de plus facilement les associer. On peut y trouver le nom du logiciel,
le numéro de version ainsi que la mention Compact Disc. Ce CD contient
d’ailleurs l’application, les drivers pour le module, l’aide, les sources, le site
web ainsi que l’ autorun.
27
4.4
Autorun (Damien)
L’ autorun se lance évidemment automatiquement lors de l’insertion du
CD et propose 4 options. La première propose d’installer l’application. La
seconde propose d’ouvrir le navigateur web par défaut afin d’y voir une copie
du site web contenu sur le cd. La troisième propose de lancer l’aide, afin que
chaque utilisateur perdu puisse y trouver son compte. La quatrième propose
de fermer l’ autorun.
28
5
5.1
Aide
Manuel d’installation et d’utilisation (Vincent)
Le manuel explique en fait la méthode d’installation du module et des
drivers du module ainsi que l’installation de l’application. Il explique aussi le
mode de fonctionnement de l’application en elle-même, mais étant réservée
au DJ, elle reprend les principales fonctionnalités tout en donnant quelques
petites astuces de DJing au DJ en herbes. Bien évidemment, toutes les options secondaires sont brièvement expliquées.
5.2
Fichier d’ aide (Vincent)
Le fichier d’aide reprend finalement en majorité le manuel d’installation et
d’utilisation, tout en ajoutant de nombreuses illustrations, permettant alors
a l’utilisateur “perdu” de mieux s’y retrouver. Il a été crée avec Help&Manual
3.3, que l’on a trouvé par hasard sur google, et qui nous semblais très pratique. Il considère les catégories comme des dossiers dans lesquels on y place
des documents. Après compilation en fichier chm, qui est bien plus complets
que les antiques fichier hlp, l’aide est on ne peut plus clair, tout en gardant
une taille inférieure à 1Mo.
6
Site Internet (Damien)
Le site web a été fait en html. Tout d’ abord, le site existe en deux
langues : en français et en anglais. Cela permet de toucher plus de visiteur
sur notre site. Il contient d’ ailleurs x rubriques. La première rubrique est en
fait la page d’accueil, contenant les news ainsi qu’un système de newsletter,
permettant au gens qui le veulent de s’y inscrire afin de connaı̂tre l’évolution
du projet. Dans la seconde rubrique, nommée introduction, on y retrouve une
présentation du projet, permettant au gens issu d’un moteur de recherche de
savoir ce qu’est le projet. Dans la troisième rubrique, on y retrouve le principe de fonctionnement de notre projet, une image montrant globalement
tout cela. Dans la quatrième rubrique, on y trouve tout les téléchargements,
contenant alors la version finale de notre projet en version light et normale,
le manuel, les derniers drivers, tout les rapports de soutenance ainsi que les
sources de notre projet, du manuel et des rapports de soutenance dans les
formats adéquats. Dans une cinquième rubrique, on y trouve la bibliographie,
regroupant en majorité les sites Internet visités lors de l’avancement de notre
projet, ainsi que les liens vers les bibliothèques utilisées. Dans une sixième
29
rubrique, on y trouve une description rapide des membres du groupe, permettant aux visiteurs de nous contacter. Le tout est stocké par l’hébergeur
voila.fr qui nous permet d’avoir une place suffisante (100 Mo) pour stocker
toute nos données. Pour un accès plus simple nous avons utilisé une redirection gratuite offerte par ulimit. C’est ainsi que l’adresse du site est devenue
http ://www.epimix.zik.mu
Enfin, les buttons du site on été fait en flash afin de rendre le site plus convivial. Pour éviter tout problème avec les gens ne possédant pas le plugin flash,
nous avons intégré un script affichant des images traditionnelles à la place
boutons flash en cas de problème ou de non détection de ce plugin.
30
7
Conclusion
Ce projet nous a permis de vivre un véritable projet comme il y aurai
eu dans les entreprises, avec bien sur avantages et inconvénients. Du coté
des inconvénients, la disparition d’un membre de notre groupe nous a forcé à
savoir réagir dans cette situation, et ainsi se répartir le travail qu’il était censé
faire. Les contraintes de temps, quand a elle, nous ont aussi forcé a travailler
le plus régulièrement possible ; en effet, nous voyons maintenant la difficulté
que l’on aurait eu si l’on s’y été tous pris au dernier moment. Du coté des
avantages, on a beaucoup appris au niveau du travail en groupe, et avons
essayé de travailler seul au minimum, afin de pouvoir se répartir le travail
de groupe. Tout cela a vraiment été une nouvelle expérience pour chacun de
nous, ce qui a contribué au fait de ne pas avoir de problèmes majeurs.
31
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertising