Outils pour utilisateurs

Outils du site


Muzyka

Finalement, stock d'articles/notes liés à la musique (pas seulement à la M.A.O):

Théorie

Maths & Physique

Videos

Logiciels

V4L2

Image to sound

So geek

  • http://www.huygens-fokker.org/scala ; euuh, Scala is a powerful software tool for experimentation with musical tunings, such as just intonation scales, equal and historical temperaments, microtonal and macrotonal scales, and non-Western scales.
  • https://www.commandlinefu.com/commands/view/29556/speak-spell-esque-glitch-sounds : play -tlpc /dev/urandom # The Speak & Spell's sound chip uses a compressed audio format called “linear predictive coding”. This command will read random bytes and attempt to decompress them as if it were audio data compressed in this format, then play it. This results in a unique sound which is similar to a glitching Speak & Spell.

Synthèse audio en Javascript

Histoires de spectres et de qualité audio

Des articles à gogo, pour gérer le mastering et l'encodage, ça va loin…

Sous linux, utiliser Sonic Visualiser.

Signaux type Midi entre Linux/Jack et Windows

La solution pourrait être: QmidiNet + ipMIDI

QmidiNet is a MIDI network gateway application that sends and receives MIDI data (ALSA Sequencer and/or JACK MIDI) over the network, using UDP/IP multicast. Inspired by multimidicast (http://llg.cubic.org/tools) and designed to be compatible with ipMIDI for Windows (http://nerds.de).

RTP-Midi est utilisé entre Mac et quelques périphériques, et a un driver Windows. Pas trop pour linux. https://en.wikipedia.org/wiki/MIDI_usage_and_applications#MIDI_over_Ethernet

http://www.music.mcgill.ca/~gary/rtmidi/ ; RTMidi ne semble pas gérer le networking.

OSC semble davantage tourné “internet”. Reste à trouver un hôte pour OSC: https://en.wikipedia.org/wiki/Open_Sound_Control

Pourrait permettre de communiquer avec Arkaos GrandVJ.

Doc officielle puredata, pistes pour canaux midi virtuels sous Win/Lin/Mac : https://puredata.info/docs/faq/midiinput ; LoopMidi ça fonctionne bien.

LV2

Pour charger un LV2 il faut connaître son URI.
Pour lister toutes les URIs des lv2 du système :

apt-get install lilv-utils 
lv2ls

Les hôtes lv2 :

http://drobilla.net/software/jalv/ : hôte pour jack. fonctionne bien, mais comment accéder aux paramètres ?
https://github.com/portalmod/mod-host : hôte pour jack, interactif depuis le shell.
http://home.gna.org/zynjacku/ : encore un hôte jack…
https://bitbucket.org/agraef/pd-lv2plugin : un hôte pour puredata

Bristol et contrôle Midi

Click milieu de la souris sur le bouton de l'interface:

Apr 25 21:10:28 brighton [5135.632812] Controller Registration 8 Request: ? -> 0/18@0x2134700 0.000000
Apr 25 21:10:29 brighton [5136.183594] Controller Registration 8 Request: ? -> 0/19@0x2134880 1.000000
Apr 25 21:10:29 brighton [5136.795898] Controller Registration 8 Request: ? -> 0/20@0x2134a00 0.000000
Apr 25 21:10:33 brighton [5141.019043] Controller Registration 7 Cleared: ? -> 0/20@0x2134a00
  • Voir: /home/username/.bristol/memory/profiles/
cat memoryMoog 
#
# This the the MIDI controller profile, it keeps controller remappings for
# converting one controller ID to another, and then defines which controllers
# are tracked by which GUI devices. It may be edited manually, in which case
# changes are maintained but the GUI can also alter the controller tracking
# by typing <Control><Middle Mouse Button>, the moving the desired control.
# This file is saved whenever a GUI memory is saved.
#
# The file contains Controller Mapping (one controller to another, for example
# breath controller maps to footpedal, etc), Key Mappings for QWERTY to MIDI
# note events, and Continuous Controller mappings that allow a control surface
# to drive the GUI.
#
# Remap format is "CM: MidiCC   MidiCC"
# Keyboard map format is "KM: ASCII   MIDI_note [MIDI_chan]"
# Control format is "CC: MidiCC   panel/index [value]"
#
# The values are integers from 0 to 16384, the fine resolution controller
# value for the throw of this controller. If in doubt use the value 16383,
# it is only relevant for ganging controllers.
#

CC: 1	   0/90 3807
CC: 5	   0/84 16384
CC: 5	   0/22 12784
CC: 7	   0/92 16384
CC: 65	   0/85 16384
CC: 71	   0/34 14883
CC: 72	   0/45 16384
CC: 72	   0/39 16384
CC: 73	   0/36 16384
CC: 73	   0/42 16384
CC: 74	   0/33 16384
CC: 75	   0/43 15943
CC: 75	   0/37 16384
CC: 76	   0/52 1289
CC: 77	   0/65 4240
CC: 78	   0/66 2209
CC: 91	   0/51 16384
CC: 93	   0/91 16384
CLI: set history 50
CLI: set line 80
CLI: set accel 0.050000
CLI: set prompttext "%algo% (m %memory% ch %channel%): "
CLI: set cli cycle 500
CLI: set panel 0
CLI: set cli h left
CLI: set cli l right
CLI: set cli ^k incmin
CLI: set cli k inc
CLI: set cli K incmax
CLI: set cli ^j decmin
CLI: set cli j dec
CLI: set cli J decmax
CLI: set cli M memUp
CLI: set cli m memDown
CLI: set cli r read
CLI: set cli w write
CLI: set cli x toggle
CLI: set cli u fineup
CLI: set cli d finedown
CLI: set cli f update
CLI: set cli U up
CLI: set cli D down
CLI: set cli : insert
CLI: set cli / search
KM: ' 18 1
KM: , 14 1
KM: . 16 1
KM: / 17 1
KM: 0 39 0
KM: 2 25 0
KM: 3 27 0
KM: 5 30 0
KM: 6 32 0
KM: 7 34 0
KM: 9 37 0
KM: = 42 0
KM: [ 41 0
KM: \ 45 0
KM: ] 43 0
KM: a 1 1
KM: b 9 1
KM: c 5 1
KM: e 28 0
KM: f 6 1
KM: g 8 1
KM: h 10 1
KM: i 36 0
KM: k 13 1
KM: l 15 1
KM: m 12 1
KM: n 11 1
KM: o 38 0
KM: p 40 0
KM: q 24 0
KM: r 29 0
KM: s 3 1
KM: t 31 0
KM: u 35 0
KM: v 7 1
KM: w 26 0
KM: x 4 1
KM: y 33 0
KM: z 2 1
  • Charger/Sauvegarder mémoires (tirées du man bristol):
              <Ctrl> 's'     - save settings to current memory
              <Ctrl> 'l'     - (re)load current memory
              <Ctrl> 'x'     - exchange current with previous memory
              <Ctrl> '+'     - load next memory
              <Ctrl> '-'     - load previous memory
  • La norme General Midi 2 semble poser quelques conventions pour les boutons de contrôle, mais ne concerne que: portamento, banques de mémoire, résonnance … autant dire qu'on s'en bat les couilles. Du coup, envisager de tout remapper.

Instruments Zynaddsubfx

→ Sont pas terribles (beaucoup de résonnance donc gare au volume !) mais on me les a demandé 😈 instrus-zynadd-0.1.zip

Fichiers Karaoké

Karaoké experience

  • Doubler le flux midi, avec un périphérique virtuel/driver sous Windows: sous XP (pas essayé), LoopBE1 (software 30 jours d'essai, pas essayé), loopMidi (créé une boucle virtuelle mais ne permet pas de rebalancer le flux)
  • Sous Windows XP, Karafun ne semble pas tenir compte de la sortie Midi, et ne balance que dans le synthé Windows, quel que soit le choix du périph. VanBasco n'a pas ce problème. ← Faux, ça devait être un bug momentané.
  • Timidity ajoute un écho pas beau, paramétrable: timidity -Oj -iA –reverb=d –delay=d –chorus=d
  • Xruns, sauts de notes midi ? Pas cohérent mais à confirmer…
  • Pourquoi ZynAddSubFX revient tout seul sur Arpeggio1 sans qu'on lui demande ?! Rapport avec seq24 ? avec les xruns ? D'autres XRUNS et BAM, c'est la voix LEFT qui plante tandis que la RIGHT continue de marcher. Des XRUNS réguliers font que le son se rebooste très brièvement puis se rééteinds d'un coup sur la voix où l'on n'entend que faiblement le son (potard inside Zynadd à 0). Ah, un coup start/stop dans seq24 provoque ces XRUNS (ainsi que réenclenchement brutal et bref du volume sur les 2 enceintes). Si je baise seq24 en le fermant, Zynadd continue son délire en recevant les nombreuses notes de puredata. Zynadd submergé d'évènements midi ?
  • Un éditeur de Karaoké sous Linux, à compiler: http://www.ulduzsoft.com/linux/karaoke-lyrics-editor/
  • Editer du karaoké, voir aussi par là: http://wiki.xbmc.org/index.php?title=Karaoke#MIDI.2FKAR
  • Utiliser Rosegarden ? Il n'affiche pas les paroles ce troud'cul. Pas possible d'éditer, puis ingérable de jongler avec timidity…
  • midicomp c'est oldschool mais ça me paraît pas mal.

midicomp

http://freepats.zenvoid.org/tools/

$ midicomp “A bicyclette.kar” | head -n 50 | tail -n 20

(...)
TrkEnd
MTrk
0 Meta TrkName "Words"
0 Meta Text "@LFren"
0 Meta Text "@TLA BICYCLETTE"
0 Meta Text "@TYves Montand"
16354 Meta Text "\\Quand "
16542 Meta Text "on "
16726 Meta Text "par"
16908 Meta Text "tait "
17112 Meta Text "de "
17282 Meta Text "bon "
17448 Meta Text "ma"
17528 Meta Text "tin, "
17894 Meta Text "/Quand "
18092 Meta Text "on "
18288 Meta Text "par"
18482 Meta Text "tait "
18658 Meta Text "sur "
18824 Meta Text "les "
(...)

La conversion semble bien s'opérer dans les 2 sens. Un message “Error: Garbage at end” lors de la conversion en texte qui est sans doute anodin.

Convertir depuis le .kar vers un format éditable:

./midicomp J\'aime\ les\ filles.kar > jaime.asc

Convertir depuis le texte, vers le format MIDI (ou .KAR, ça revient au même):

./midicomp -c ../jaime.asc jaime.mid

runabc

Fausse piste, il s'agit d'une interface en TCL/TK oldschool assez peu agréable qui réutilise abc2midi etc… Résultat d'une conversion:

X: 1
T: from /home/fab/mao/karaoke/tgv777.free.fr/Midi filesEtKar/Karaoke_divers/Kar Fr1/A cause Fifine.kar
M: 3/4
L: 1/8
Q:1/4=183
K:C % 0 sharps
% Soft karaoke
%Words
% @Lfran\0xe7ais
% @TA cause Fifine
% @Ousa Nousava
w:A cause Fi-fine ti r\0xe9-pond'
w:0xe0 moin tou-jours non
w:Quand mi in-vite \0xe0 tou\0xe9 po danse in'-ti s\0xe9-ga
w:Moin s'rais bien con-tent serre serre \0xe0 tou\0xe9 cont'-moin
w:Mais voi-l\0xe0
w:Mais voi-l\0xe0 seul'-ment, ti r\0xe9-pond' \0xe0 moin tou-jours non
w:A cause Fi-fine ti r\0xe9-pond'
w:0xe0 moin tou-jours non
w:Quand mi in-vite \0xe0 tou\0xe9 po danse in'-ti s\0xe9-ga
w:Moin s'rais bien content serre serre \0xe0 tou\0xe9 cont'-moin
(...)

midi2abc

Comme souligné sur le site d'XBMC, la conversion en notation abc est a priori “avec pertes”, à essayer

$ midi2abc Cascavelle.kar | head -n 25

X: 1
T: from Cascavelle.kar
M: 4/4
L: 1/8
Q:1/4=102
K:C % 0 sharps
% Soft karaoke
%Words
% @LFran\0xe7ais
% @TKaskavel
% @TMis en karaok\0xe9 par RECHE Fran\0xe7ois
w:Dans la ra-vine en coeur so-leil
w:L'eau claire y grain dans cas-ca-velle
w:Et la cas-cade jo-lie mam-zel
w:La fait yeux dous en-semb so-leil.
w:Dans la ra-vine en coeur so-leil
w:L'eau claire y grain dans cas-ca-velle,
w:Et la cas-cade jo-lie mam-zel
w:La fait yeux dous en-semb so-leil.
w:Comme un ga-lant li sa con-t\0xe8ge
w:Dans son che-veux pei-ny\0xe9 en gros,
w:So-leil la fiche in ti ca-deau.
w:La met son ba-rette l'arc en ciel.
w:Dans la ra-vine en coeur so-leil
w:L'eau claire y grain dans cas-ca-velle,
(...)

Par contre, plein d'erreurs lors de la reconversion du format ABC vers le MIDI:

$ abc2midi Cascavelle.abc 

writing MIDI file Cascavelle1.mid
Error in line 52 : Verse 1 mismatch;  0 syllables in music 16 in lyrics
Error in line 53 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
Error in line 54 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
Error in line 55 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
Error in line 56 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
Error in line 57 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
Error in line 58 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
Error in line 59 : Verse 1 mismatch;  0 syllables in music 8 in lyrics
(...)

Testé vite fait la lecture (du .mid obtenu en résultat) avec pykaraoké et me semble donc que ça cafouillait légèrement (c'est à dire de trop).

Soundfonts

On peut enfin le dire, les soundfonts c'est rétro, c'est kitch. Maintenant que nous sommes décomplexés, nous pouvons répertorier quelques liens :

article/mao.txt · Dernière modification: 2023/06/02 21:21 par fab