X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FPython%2FMusicSampler.git;a=blobdiff_plain;f=config.yml;h=56221d99658623cf607bb733f1b414ddc96b646f;hp=d5e6664d80811ecb8b689c59c0a952e4aea50375;hb=HEAD;hpb=b58b8220c1f3f20e97ca806cf8db0e334b920f4c diff --git a/config.yml b/config.yml index d5e6664..56221d9 100644 --- a/config.yml +++ b/config.yml @@ -1,343 +1,450 @@ +################################# +##### General configuration ##### +## Keep in mind that in-line option override these + +#option listed here are the default options. +config: +# debug info + debug: false +# languages. Available: fr, en + language: fr +# path to the musics. + music_path: . +# The awful red message that shows up when you lose the focus + focus_warning: true +# built-in mixing, try this if your system can't mix the musics by itself + builtin_mixing: false +# Device used for playing musics. Default value depends on your system +# device: +# Advanced parameters: use at your own risk! (your computer probably won't explode, though) + latency: high + blocksize: 0 + frame_rate: 44100 + sample_width: 2 + channels: 2 + + + + +################### +##### Aliases ##### + aliases: - intro_jonglacro: - file: "PIRATE_01-1-intro_jonglacro.mp3" - name: Intro Jonglacro - jonglacro_suite: - file: "PIRATE_01-2-jonglacro_suite.mp3" - name: Jonglacro suite - lancer_prisonniere: - file: "PIRATE_02-lancers_de_prisonniere.mp3" - name: Lancer prisonnière - quete: - file: "PIRATE_03-quete.mp3" - name: Quête - entree_ondine: - file: "PIRATE_04-entree_ondine.mp3" - name: Entrée Ondine - cour_ondine: - file: "PIRATE_05-cour_a_londine.mp3" - name: Cour à l'Ondine - fouille_jonglage: - file: "PIRATE_07-fouille_jonglage.mp3" - name: Fouille jonglage - liberation_prisonniere: - file: "PIRATE_08-liberation_prisonniere.mp3" - name: Libération prisonnière - duo_pirate_ondine: - file: "PIRATE_09-duo_pirate_ondine.mp3" - name: Duo pirate Ondine - trio_jalousie: - file: "PIRATE_10-trios_jalousie.mp3" - name: Trio Jalousie - piquage_2_4: - file: "PIRATE_11-piquage_2_4.mp3" - name: Piquage 2-4 - baston: - file: "PIRATE_12-1-baston.mp3" - name: Baston - baston_ascension: - file: "PIRATE_12-3-baston_ascension.mp3" - name: Baston ascension - bruit: - file: "PIRATE_bruit.wav" - name: Bruit - paf: - file: "PIRATE_paf.mp3" - name: Paf - coup: - file: "PIRATE_coup.wav" - name: Coup - ralenti: - file: "PIRATE_12-2-ralenti.mp3" - name: Ralenti +# for files + music1: + file: "short_blues.mp3" + music2: + file: "to_the_Fantasy_war.mp3" + noise: + file: "croco.mp3" +# aliases for colors + blue: + color: [50, 50, 255] + orange: + color: [255, 126, 0] + yellow: + color: [250, 250, 0] + red: + color: [255, 20, 20] + light_blue: + color: [100, 150, 255] + green: + color: [50, 180, 50] + light_green: + color: [150, 255, 100] + purple: + color: [190, 110, 236] + pink: + color: [255, 50, 255] + +#################################################### +##### Music properties: name and general gain ###### + +music_properties: + "short_blues.mp3": + name: Short Blues (music 1) + "to_the_Fantasy_war.mp3": + name: To the Fantasy War (music 2) + "croco.mp3": + name: Crocodile noise + gain: 1.2 + +############################################################################### +##### Key properties: how do the key look like, and some other properties ##### key_properties: + 'common': + repeat_delay: 1 + include: blue + 'a': description: - - # Chloé - - Jonglacro - color: [73, 221, 226] + - + - Music 1 + include: light_blue + actions: + - play: + include: music1 +# Play the songs 'z': description: - - #Chloé - - Jonglacro - - 2 - color: [73, 221, 226] + - + - Music 2 + include: light_blue + actions: + - play: + include: music2 'e': description: - - #Chloé - - Fin - - jonglacro - color: [73, 221, 226] - 'r': - description: - - #Chloé - - Lancer - - prisonnière - color: [73, 221, 226] - 't': - description: - - #Chloé - - Fin - - lancer - color: [73, 221, 226] - 'y': - description: - - #Chloé - - Quête - color: [73, 221, 226] - 'u': - description: - - #Chloé - - Monstre - color: [73, 221, 226] - 'i': - description: - - #Chloé - - Fin quête - - Grotte - color: [73, 221, 226] - 'o': - description: - - #Denise - - Fin ondine - - Cour ondine - color: [190, 110, 236] - 'p': - description: - - #Denise - - Fin - - Cour ondine - color: [190, 110, 236] + - + - Noise + include: light_blue + actions: + - play: + include: noise +# Load the songs 'q': description: - - #Chloé - - Fouille - - Jonglage - color: [73, 221, 226] + - + - Load + - Music 1 + include: light_blue + actions: + - load_music: + include: music1 's': description: - - #Denise - - Fin - - Jonglage - color: [190, 110, 236] + - + - Load + - Music 2 + include: light_blue + actions: + - load_music: + include: music2 'd': description: - - #Denise - - Libération - - Prisonnière - color: [190, 110, 236] - 'f': + - + - Load + - Noise + include: light_blue + actions: + - load_music: + include: noise +# Unload the songs + 'w': description: - - #Denise - - Paf - - Baisser musique - color: [190, 110, 236] - 'g': + - + - Unload + - Music 1 + include: light_blue + actions: + - unload_music: + include: music1 + 'x': description: - - #Denise - - Stop - - libération - color: [190, 110, 236] - 'h': + - + - Unload + - Music 2 + include: light_blue + actions: + - unload_music: + include: music2 + 'c': description: - - #Denise - - Duo - color: [190, 110, 236] - 'j': + - + - Unload + - Noise + include: light_blue + actions: + - unload_music: + include: noise +# Crossfade from any music to music 2 + 't': description: - - #Jérôme - - Fin duo - - Trio - color: [240, 158, 0] - 'k': + - + - Crossfade + - music 2 + include: green + repeat_delay: 5 + actions: + - stop: + fade_out: 5 + - play: + include: music2 + fade_in: 5 +# Fade out, then wait and start music 2 + 'y': description: - - #Jérôme - - Fin trio - color: [240, 158, 0] - 'l': + - + - Stop wait + - music 2 + include: green + actions: + - wait: + include: music2 + +# Play music 1, starting at 30 seconds then seeks at 60 after 5 seconds + 'g': description: - - #Jérôme - - Jeu à - - 2 et 4 - color: [240, 158, 0] - 'm': + - + - Music 1 + - Seek 30/60 + include: purple + actions: + - play: + include: music1 + start_at: 30 + - wait: + duration: 5 + - seek: + include: music1 + delta: false + value: 60 + +# Lowers the volume of music 1 and 2 (if playing), during the duration of noise + 1 second + 'i': description: - - #Chloé - - Fin jeu - - Baston - color: [73, 221, 226] - 'w': + - + - Noise + - +low vol + include: green + actions: + - volume: + include: music1 + value: 50 + - volume: + include: music2 + value: 50 + - play: + include: noise + - wait: + include: noise + duration: 1 + - volume: + include: music1 + value: 100 + fade: 1 + - volume: + include: music2 + value: 100 + fade: 1 + +# Stops all musics, then plays noise repeated twice (3 times) + 'h': description: - - #Christophe - - Fin baston - - Ralenti - color: [255, 255, 0] - 'x': + - + - Noise + - 3 times + include: purple + repeat_delay: 2 + actions: + - stop: + fade_out: 0.5 + - play: + include: noise + loop: 2 + +# Play music 1 and 2, after stopping all musics with a fade_out (and wait for this fade out) + 'm': description: - - #Christophe - - Fin ralenti - color: [255, 255, 0] - 'c': + - + - Musics + - 1 & 2 + include: purple + actions: + - stop: + fade_out: 2 + wait: true + - play: + include: music1 + - wait: + include: music1 + set_wait_id: m + - play: + include: music2 + +# Lowers the volume of music 1 and 2 (if playing) down to 10% with a 5 seconds fade, then back to 100% + 'n': description: - - #Christophe - - Baston 2 - color: [255, 255, 0] - 'v': + - + - Low vol + - Up vol + include: green + actions: + - volume: + include: music1 + value: 10 + fade: 5 + - volume: + include: music2 + value: 10 + fade: 5 + - wait: + duration: 5 + - volume: + include: music1 + value: 100 + fade: 5 + - volume: + include: music2 + value: 100 + fade: 5 +# skip waiting for the end of music1 + 'ù': description: - - #Auréliane - - Fin baston 2 - color: [0, 190, 27] - 'ESC': + - + - stop + - wait + actions: + - interrupt_wait: + wait_id: m + + 'home': description: - - - STOP ! - color: [255, 0, 0] + - vlc + include: orange + actions: + - run_command: + command: vlc *.mp3 + wait: true - 'F1': + +## Some general useful keys + +# Emergency stop! + 'ESC': description: - - + - "!" + - STOP! + include: red + repeat_delay: 0 + actions: + - stop_all_actions: + other_only: true + - stop: + +# Pause and unpause + 'F5': + description: + - "||" - PAUSE + include: light_green + repeat_delay: 0 + actions: + - pause: + + 'F6': + description: + - ">" + - UNPAUSE + include: light_green + repeat_delay: 0 + actions: + - unpause: + +# Stopping all musics, with a short fade (sounds natural) + 'F1': + description: + - + - Stop + - fade + include: orange + repeat_delay: 0 + actions: + - stop: + fade_out: 1 +# Stopping all actions 'F2': description: - - - - REPRENDRE + - + - Stop + - actions + include: orange + repeat_delay: 0 + actions: + - stop_all_actions: +# Skip wait + 'F4': + description: + - + - Skip + - wait + include: pink + repeat_delay: 0 + actions: + - interrupt_wait: -keys: - 'a': - - play: - include: intro_jonglacro - 'z': - - stop: - include: intro_jonglacro - fade_out: 5 - - wait: - duration: 7 - - play: - include: jonglacro_suite - 'e': - - stop: - include: jonglacro_suite - fade_out: 5 - 'r': - - play: - include: lancer_prisonniere - 't': - - stop: - include: lancer_prisonniere - fade_out: 3 - 'y': - - play: - include: quete - 'u': - - volume: - include: quete - value: 50 - - play: - include: bruit - - wait: - duration: 2 - - volume: - include: quete - value: 100 - 'i': - - stop: - include: quete - fade_out: 5 - - wait: - duration: 20 - - play: - include: entree_ondine - 'o': - - stop: - include: entree_ondine - fade_out: 5 - - wait: - duration: 5 - - play: - include: cour_ondine - 'p': - - stop: - include: cour_ondine - fade_out: 5 - 'q': - - play: - include: fouille_jonglage - 's': - - stop: - include: fouille_jonglage - fade_out: 2 - 'd': - - play: - include: liberation_prisonniere - 'f': - - volume: - include: liberation_prisonniere - value: 20 - - play: - include: paf - 'g': - - stop: - include: liberation_prisonniere - fade_out: 3 - 'h': - - play: - include: duo_pirate_ondine - 'j': - - stop: - include: duo_pirate_ondine - fade_out: 2 - - wait: - duration: 2 - - play: - include: trio_jalousie - 'k': - - play: - include: coup - - wait: - duration: 0.2 - - stop: - include: trio_jalousie + 'F8': + description: + - + - Pause + - wait + actions: + - pause_wait: - 'l': - - play: - include: piquage_2_4 - 'm': - - stop: - include: piquage_2_4 - fade_out: 5 - - wait: - duration: 7 - - play: - include: baston - 'w': - - stop: - include: baston - fade_out: 1 - - wait: - duration: 1 - - play: - include: ralenti - 'x': - - stop: - include: ralenti - fade_out: 2 - 'c': - - play: - include: baston_ascension - 'v': - - stop: - include: baston_ascension - fade_out: 2 - 'ESC': - - stop: ~ - - stop_all_actions: ~ + 'F9': + description: + - + - Unpause + - wait + actions: + - unpause_wait: - 'F1': - - pause: ~ + 'F10': + description: + - + - Reset + - wait + actions: + - reset_wait: - 'F2': - - unpause: ~ +# Changing volume + 'F12': + description: + - + - vol+ + include: yellow + repeat_delay: 0 + actions: + - volume: + delta: true + value: +10 + fade: 0.5 + 'F11': + description: + - + - "vol-" + include: yellow + repeat_delay: 0 + actions: + - volume: + delta: true + value: -10 + fade: 0.5 + +# Seek +- 10 seconds + 'right': + description: + - + - +10s + include: blue + repeat_delay: 0 + actions: + - seek: + value: 10 + delta: true + + 'left': + description: + - + - -10s + include: blue + repeat_delay: 0 + actions: + - seek: + value: -10 + delta: true