doc:appunti:linux:tux:midi
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
doc:appunti:linux:tux:midi [2017/01/22 16:20] – niccolo | doc:appunti:linux:tux:midi [2017/01/22 17:33] (current) – [Sintetizzatore Timidity (non funziona)] niccolo | ||
---|---|---|---|
Line 5: | Line 5: | ||
===== Sintetizzatore Timidity (non funziona) ===== | ===== Sintetizzatore Timidity (non funziona) ===== | ||
- | Il primo tentativo è stato fatto con **timidity** che dovrebbe fornire la funzione di sintetizzatore MIDI via software. In pratica il software | + | Il primo tentativo è stato fatto con **Timidity** (dal pacchetto omonimo) |
- | In effetti non funziona, | + | In effetti |
Questa la procedura seguita: | Questa la procedura seguita: | ||
Line 13: | Line 13: | ||
< | < | ||
apt-get install rosegarden timidity | apt-get install rosegarden timidity | ||
- | timidity teddybear.mid | + | ps uax | grep timidity |
- | timidity -iA # As root: start Timidity as a daemon | + | # as a daemon, output to ALSA. |
+ | timidity teddybear.mid | ||
aplaymidi --port 128:0 teddybear.mid | aplaymidi --port 128:0 teddybear.mid | ||
- | rosegarden | + | # Start Rosegarden and import the MIDI track. |
- | # Start Rosegarden and import the MIDI track | + | # From menu Studio, Manage MIDI Devices: connect |
- | # Menu Studio | + | # " |
- | # Rosegarden | + | # Play the track: NO AUDIO!!! |
- | # Play: NO AUDIO!!! | + | |
# While Rosegarden is running: | # While Rosegarden is running: | ||
- | aplaymidi --port 128:0 teddybear.mid | + | aplaymidi --port 128:0 teddybear.mid |
</ | </ | ||
Line 31: | Line 31: | ||
* **snd-seq-midi** (che richiede snd-seq-midi-event, | * **snd-seq-midi** (che richiede snd-seq-midi-event, | ||
* **snd-seq-virmidi** | * **snd-seq-virmidi** | ||
+ | |||
+ | Per risolvere il problema bisognerebbe avviare **Timidity** nella **modalità output JACK** invece che ALSA. In quel modo - quando parte Rosegarden - le connessioni JACK vanno automaticamente a posto e tutto funziona. Purtroppo al bootstrap non c'è il demone JACK in esecuzione e quindi è inutile mettere il parametro **'' | ||
+ | |||
+ | Per provare manualmente questa soluzione (non consigliato): | ||
+ | |||
+ | * Fermare il demone timidity se è in esecuzione. | ||
+ | * Avviare **qjackctl** da utente normale, quindi avviare il demone JACK usando il pulsante //Start//. | ||
+ | * Avviare da utente normale **'' | ||
+ | * Verificare da **qjackctl** (pulsante // | ||
+ | * Avviare Rosegarden, dal menu Studio, Manage MIDI Devices verificare che si sta usando TiMidity. | ||
+ | |||
+ | Questa soluzione in definitiva non è consigliata. È preferibile sostituire Timidity con Fluidsynth. È una soluzione tutta in spazio utente, senza bisogno di intervenire come root. | ||
+ | ===== Sintetizzatore Qsynth (Funziona) ===== | ||
+ | |||
+ | Si installano i pacchetti **qsynth**, **fluidsynth** e **qjackctl**. Per dipendenza vengono installati anche i campioni audio contenuti in **fluid-soundfont-gm** e **fluid-soundfont-gs**. | ||
+ | |||
+ | Si lancia **qsynth**, il front-end del sistema fluidsynth. Dal pulsante //Setup// si controllano le impostazioni: | ||
+ | |||
+ | * MIDI, Enable MIDI Input, MIDI Driver: alsa_seq, MIDI Bank Select mode: GM | ||
+ | * Audio, Audio Driver: jack | ||
+ | * Soundfonts: Open / | ||
+ | |||
+ | Si lancia **qjackctl**, | ||
+ | |||
+ | * Settings: Server prefix: jackd, Driver ALSA, Input Device: (scheda audio), Output Device (scheda audio) | ||
+ | * Si avvia JACK con il pulsante START | ||
+ | |||
+ | Quindi si avvia Rosegarden. Il programma dovrebbe provvedere da solo ad avviare il server JACK se questo non è in esecuzione e a fare le giuste connessioni JACK (per il playback device: Rosegarden General MIDI Device => 129:0 Synth input port => Sistema ALSA). Verificare dal menu di Rosegarden //Studio//, //Manage MIDI Devices// e dal menu //Connect// di qjackctl. | ||
+ | |||
+ | {{ .: | ||
+ | In particolare nella scheda //Audio// di qjackctl deve risultare che le **porte output** di //qsynth// denominate **l_00** e **r_00** sono collegate alle **porte input** di //system// denominate **playback_1** e **playback_2**. | ||
doc/appunti/linux/tux/midi.1485098450.txt.gz · Last modified: 2017/01/22 16:20 by niccolo