]> git.immae.eu Git - perso/Immae/Projets/Python/MusicSampler.git/blobdiff - documentation_fr.md
Add config
[perso/Immae/Projets/Python/MusicSampler.git] / documentation_fr.md
index b739aa2c752cddb5e75c62472da717b7073ec336..4caf75e751fce77434fc991bb30bc2330c7657bb 100644 (file)
@@ -10,6 +10,8 @@ appui sur une touche.
 
 ## Pré-requis et installation
 
+(Voir la section suivante pour Windows)
+
 - Il faut avoir ffmpeg d'installé. Pour cela, il faut installer le paquet `libav-tools` (debian) :
 
         sudo apt-get install libav-tools
@@ -47,6 +49,30 @@ Pour compiler kivy avec la librairie SDL2, il faut certains paquets installés:
 cf [Installation
 Kivy](https://kivy.org/docs/installation/installation-linux.html)
 
+## Installation sous Windows
+
+Le processus suivant a permis d’installer music sampler sous windows:
+
+- [Installer python 3.9.\* (prendre la version 64bit!)](https://www.python.org/downloads/windows)
+- Dans une invite de commande (`cmd.exe`), lancer:
+
+        pip install music_sampler
+        pip install docutils pygments pypiwin32 PySDL2 kivy.deps.sdl2 kivy.deps.glew
+
+- [Télécharger ffmpeg (64bit, static)](https://ffmpeg.zeranoe.com/builds/)
+  et mettre le contenu du dossier `bin` dans le dossier avec les musiques
+- [Télécharger la police Ubuntu](https://www.1001fonts.com/ubuntu-font.html)
+  et installer Ubuntu-R et Ubuntu-B (Regular et Bold) *pour tous les utilisateurs* (clic droit sur la police)
+- [Télécharger la police Symbola](https://fontlibrary.org/en/font/symbola)
+  et l’installer *pour tous les utilisateurs* (clic droit sur la police)
+- Écrire un fichier `run.bat` avec:
+
+        :::bash
+        @echo off
+        music_sampler
+
+- Lancer `run.bat` pour démarrer le programme.
+
 ## Version compilée
 
 Une version compilée peut être créée avec pyinstaller:
@@ -141,6 +167,7 @@ ou en cas de problème avec la configuration standard :
     (nombre d'octets pour chaque frame). Par défaut : 2.
   * `--device DEVICE` : sélectionne le périphérique de son.
   * `--list-devices` : Affiche la liste des périphériques de son disponibles.
+  * `--load-all-musics` : Charger toutes les musiques au démarrage (défaut: True)
   * `-- ARGS` : Arguments à passer à la librairie Kivy.
 
 ## Configurer les touches
@@ -247,6 +274,12 @@ secondes d'intervalle, le second appui est ignoré.
 - `repeat_delay: x` (par défaut : 0) : délai de "sécurité" en cas d'appuis
   successifs sur la touche. La touche est désactivée (grisée et barrée) pendant
   toute la durée des actions puis le délai de x secondes.
+- `actions: liste`: Liste des actions à effectuer en appuyant sur la touche.
+
+### Propriété `common`
+
+Une entrée spéciale `common` s'applique à toutes les touches. Les propriétés
+définies dans cette entrée peuvent être modifiées individuellement.
 
 ### `keys` : actions sur les touches
 
@@ -254,6 +287,8 @@ Cette section sert à décrire, pour chaque touche, la liste des actions
 successives. Notez que la plupart des actions (hors `wait` et quelques cas
 particuliers, voir plus bas) sont quasi-instantanées.
 
+*Cette section est obsolète et remplacée par une clé `actions` contenant une
+liste dans la section `key_properties` pour chaque touche.*
 
 #### Exemples
 
@@ -337,6 +372,8 @@ Met en pause la musique "music1.mp3" pour 10 secondes et la relance après, en
 avançant de 5 secondes dans la musique.
 
 #### Liste des actions possibles: 
+- `comment`: ne fait aucune action, mais affiche un message dans la zone des actions
+    * `message: "some text"` le message à afficher
 - `play` : joue une musique. music_sampler ne joue qu'une musique à la fois : si
   la musique demandée est déjà en train d'être jouée, elle n'est pas relancée ou
   jouée "par dessus". Paramètres :
@@ -427,14 +464,31 @@ successivement mais sans attendre (donc presque simultanément) : ne pas hésite
       suite de celle-ci puisqu'elles seront systématiquement interrompues.
 - `interrupt_wait`: interrompt l'attente (de `wait` ou fin d'un fondu avec
   attente) et passe directement à l'action suivante. Paramètre :
-    * `wait_id: name` : précise l'identifiant du `wait` à stopper (défini par
-      `set_wait_id`, voir les actions `wait` et `stop`). Pour interrompre
-      plusieurs `wait` d'un seul coup, il faut mettre plusieurs
-      `interrupt_wait`.
+    * `wait_id: name` (facultatif) précise l'identifiant du `wait` à stopper
+      (défini par `set_wait_id`, voir les actions `wait` et `stop`). Si absent,
+      interrompt toutes les attentes.
+- `pause_wait`: met une attente en pause (uniquement pour une attente ayant une
+  durée définie). La touche qui attend cet événement ne continuera pas tant que
+  l'attente n'est pas reprise. Paramètres :
+    * `wait_id: name` (facultatif) précise l'identifiant du `wait` à mettre en
+      pause. Si absent, met en pause toutes les attentes compatibles.
+- `unpause_wait`: reprend une attente en pause (uniquement pour une attente
+  ayant une durée définie). Le compte à rebours reprendra pour la touche
+  correspondante en train d'attendre. Paramètres:
+    * `wait_id: name` (facultatif) précise l'identifiant du `wait` à reprendre.
+      Si absent, reprend toutes les attentes compatibles.
+- `reset_wait`: réinitialise une attente (uniquement pour une attente ayant une
+  durée définie). Si l'attente est en pause, le compte à rebours ne recommencera
+  au début que lorsque l'attente sera reprise. Paramètres:
+    * `wait_id: name` (facultatif) précise l'identifiant du `wait` à
+      réinitialiser. Si absent, réinitialise toutes les attentes compatibles.
 - `run_command` : lance une commande. Paramètres :
     * `command: my_command` : précise la commande à lancer.
     * `wait: true/false` (facultatif, défaut : false) : si `wait` est true,
       attend que la commande ait fini de s'exécuter.
+- `load_music/unload_music` : charger/décharger une musique en mémoire.
+  Uniquement utile en combinaison avec l’option `load_all_musics`.
+    * `music: "music.mp3" la musique à charger/décharger.
 
 ### `aliases` : définir des alias