Step-by-step per eseguire un dispositivo di input da tastiera midi? 12.04


21

Ho un Korg Nanokey e mi piacerebbe farlo produrre suono in Ubuntu. Ho letto che significa che dovrei usare Rosegarden e che Rosegarden usa JACK, ma non lo installa. (Anche se si verifica Ubuntu Software Center, a quanto pare alcuni componenti di JACK sono installati per impostazione predefinita?)

Capisco che ci può essere molto lavoro nell'impostazione di JACK senza che combatta il server audio predefinito. Qualcuno può darmi un metodo passo-passo per quello che devo fare per collegare la mia macchina midi e ascoltare musica quando premo i tasti il ​​più semplicemente possibile (senza incasinare pulseaudio, cioè, in modo da poter ancora accedere a Skype e ordinario roba desktop)? Sto bene installando JACK, ma mi piacerebbe un po 'di sandbox se ha la possibilità di rovinare un normale desktop.

Ho esaminato un paio di risorse, ma non sono sicuro di ciò che è obsoleto, ma quanto segue sembrava utile ...

Risposte:


22

Se solo tu far suonare la tua tastiera, questo è molto semplice e per questo non avrai bisogno di JACK né Rosegarden. Questi strumenti sono fantastici se si desidera registrare segnali MIDI, scrivere note e instradare l'audio tra applicazioni separate, ma non è necessario per riprodurre l'audio con il keyborard.

Il mio passo passo sarebbe:

  1. Collega il tuo dispositivo MIDI al computer. Se si tratta di una tastiera MIDI USB, basta collegare l'USB, se ha solo una presa MIDI, potresti voler utilizzare un dispositivo da MIDI a USB.

  2. Scarica / installa un sintetizzatore. Esiste una grande varietà di applicazioni di sintesi sonora per Ubuntu. Potresti apprezzare ZynAddSubFX (davvero potente), FluidSynth o QSynth (supporta i caratteri sonori), AMSynth, AMS. Assicurati di esplorare Ubuntu Software Center per sintetizzatore che catturerà il tuo interesse.

  3. Avvia il sintetizzatore. Naturalmente deve essere in esecuzione per produrre suono.

  4. Di 'al sistema di passare i dati dalla tastiera al sintetizzatore. È necessario creare un collegamento tra la tastiera e il sintetizzatore, in modo che il segnale MIDI gli sia passato. Puoi usare lo aconnectstrumento o uno dei suoi backend grafici (che sono più semplici da usare), come aconnectguio kaconnect. Mentre aconnect è installato per impostazione predefinita, è possibile ottenere gli altri due da Software Center. Dopo aver collegato la tastiera e il sintetizzatore, segui il passaggio finale ...

  5. Premi un tasto sulla tastiera. Sentirai un suono! In caso contrario, assicurati che l'audio del tuo sistema non sia disattivato e che i nostri altoparlanti siano collegati. Inoltre, alcuni sintetizzatori richiedono di scegliere uno strumento prima di produrre qualsiasi suono.

  6. Ottimizza le impostazioni del sintetizzatore. Molto probabilmente non ti piacerà il suono iniziale del sintetizzatore. Nel caso di ZynAddSubFX, questa sarà una semplice onda sinusoidale, noiosa! Tuttavia, puoi facilmente sfogliare una grande collezione di timbri e puoi personalizzarli completamente. Tutti i sintetizzatori offrono molta personalizzazione, vale la pena dedicare un po 'di tempo alla scelta di ciò che più ti piace.

  7. Procedi a giocare. Buona fortuna e buon divertimento!

Una volta ho anche scritto un articolo sul flusso di lavoro generale per la produzione musicale con tastiera esterna su Ubuntu, dovrebbe essere utile nel tuo caso. Ecco il link.


Come posso impostare i collegamenti per aconnectgui? Ho collegato accidentalmente un sacco di cose insieme, voglio ripristinare i collegamenti.
risposta Cercatore

@TatakaiWasumi Seleziona lo strumento forbici e fai clic con il pulsante sinistro del mouse su una connessione. "Taglia" (cioè elimina) la connessione.
holocronweaver,

Se si sceglie qjackctrl, è possibile utilizzare la scheda connessioni per indirizzare il sintetizzatore in modo che venga trasmesso agli altoparlanti (se non lo fa per impostazione predefinita) e l'ingresso USB MIDI nell'ingresso synth. Ho dovuto farlo quando ZynAddSubFX non è riuscito a connettersi all'uscita dell'altoparlante e aconnectgui non è riuscito a stabilire questa connessione.
holocronweaver,

Ho dovuto anche aggiungere qjackctl la pipeline per qsynthprodurre un suono reale. qjackctlpuò anche eseguire il passaggio 4, quindi aconnectnon è necessario in quel caso. Ulteriore passo in quel caso è configurare i dispositivi di input / output qjackctlandandosetup->settings->advanced
chefarov il

5

Non conosco Rosegarden, ma puoi eseguire qjackctl dal gestore dei pacchetti. Amsynth è un modo semplice per rendere l'audio midi-> jack.

Non so come far funzionare jack e pulseaudio allo stesso tempo, ad esempio eseguendo Chrome tramite Jack (guardandolo adesso, in realtà). La mia esperienza in 12.04 è finora semplice per rendere il suono.

  • Installa qjackctl e amsynth dal gestore pacchetti
  • Chiudi tutti i browser web o altre cose di pulseaudio che potrebbero richiedere l'hardware audio
  • Avvia qjackctl (potresti dover giocherellare con i parametri nelle impostazioni, ma questa volta non l'ho fatto)
  • Inizia Amsynth
  • Nella scheda ALSA di qjackctl (perché non è la scheda midi?!?!) Collega il tuo dispositivo midi USB (speriamo che venga rilevato automaticamente) ad Amsynth ...
  • Assicurati che amsynth sia collegato all'uscita audio ...
  • Giocare!

1
È qjackctl non qjackctrl
answerSeeker il

4

Il MIDI su Linux è altamente modulare e, di conseguenza, inizialmente travolgente. È bello avere una soluzione a bassa complessità che funzioni prima di preoccuparti delle ottimizzazioni, ma sfortunatamente Ubuntu non ha una configurazione di lavoro predefinita. Ecco il modo più semplice che ho trovato ...

sudo apt install qsynth vmpk ## install components
qsynth & vmpk ## launch
  • Qsynth -> Setup -> Sountfonts -> Open : FluidR3_GM.sf2
  • Virtual MIDI Piano Keyboard -> Edit -> Connections ->
    • Enable MIDI Thru on MIDI Output : (selezionato)
    • Input MIDI Connection : (Il tuo controller)
    • Output MIDI Connection : FLUID Synth

A questo punto, dovresti essere in grado di suonare note dal tuo controller MIDI esterno o dalla GUI del piano virtuale ( la GUI funziona anche se non hai un controller esterno ).

Dalla GUI della tastiera puoi selezionare diversi strumenti (vedi Program). Dalla GUI di Qsynth è possibile manipolare il volume (vedi Gain) e gli effetti Reverb / Chorus. C'è anche un Panicpulsante nel caso in cui il riverbero si spenga dalle rotaie.

Questo è stato specificamente testato su un'installazione pulita di Ubuntu Studio 18.04, ma passaggi simili hanno funzionato per Ubuntu MATE 16.04, con una notevole differenza di configurazione automatica che era quella Qsynth -> Setup -> Audio -> Audio Driverpredefinita jackin Ubuntu Studio ma alsasu Ubuntu MATE.


Glitchy static con ALSA [RISOLTO]

Sia sul 16.04 che sul 18.04, ho sperimentato una strana staticità quando Qsynth inizia inizialmente a lavorare con alsa. Questo statico sembra influenzare tutte le fonti audio, ma in qualche modo si risolve da solo in un minuto o due (almeno parzialmente).

Successivamente ho provato questa configurazione su una CPU meno potente e ho notato una statica simile che non si è risolta nel tempo. [A parte, ho notato che questo statico era correlato alla ALSA plug-in [qsynth]linea che si accendeva e si spegneva nella scheda Applicazioni di Sound Preferences].

Questo mi ha portato a giocare con alcune impostazioni di Qsynth e ho trovato qualcosa che sembra risolvere entrambi i problemi statici / glitch (forse con un compromesso di un minore aumento della latenza):

  • Qsynth-> Setup-> Audio-> Buffer Size:128
  • Qsynth-> Setup-> Audio-> Buffer Count:8

Apparentemente, la CPU non è sempre in grado di tenere il passo con il burst rate richiesto , quindi è necessario un po 'di buffering extra per prevenire i underrun. Presumibilmente ci sono altre impostazioni che potrebbero influenzare anche questo.


vmpkperde la connessione a Qsynthquando le impostazioni vengono modificate. Il modo più rapido per sperimentare la modifica delle impostazioni è chiudere e riavviare vmpkper forzare una riconnessione.


Alternativa: applicazione "Polyphone" (non nei repository Ubuntu)

Ho messo gli occhi su Polyphone come una soluzione (quasi) all-in-one (essenzialmente un superset di qsynth + vmpk). Anche se finora non è nei repository di Ubuntu (a partire da 19.04 Disco), è stato facile costruirlo dalla fonte il 18.04 (inoltre, è fornito un .deb Ubuntu pre-costruito).

Il pacchetto non include un soundfont predefinito (è un creatore / editor di soundfont), ma puoi ottenerne uno con sudo apt install fluid-soundfont-gm(at /usr/share/sounds/sf2/) - o provare a scaricare dal "repository online" dell'applicazione (ma questo potrebbe richiedere un account).

Vai a Settings->General->Input/Outpute assicurati che le impostazioni Audio / MIDI siano sensibili, quindi apri un soundfont e seleziona uno strumento sotto Presetse dovrebbe essere pronto per riprodurre la musica dal tuo controller MIDI o dalla tastiera virtuale integrata.


Dopo aver funzionato con una configurazione di base, potresti essere interessato ad alcune delle molte opzioni descritte qui: Guida MIDI di Ted Linux
nobar

Nota per se stessi: alcuni controller devono essere accesi prima di poterli utilizzare.
nobar,

Ora, se solo potessi capire come trasporre il controller ...
nobar,

1
@Bani, non sono ancora stato in grado di utilizzare il MIDI tramite Bluetooth su Ubuntu. Ho provato di nuovo stasera con il mio Xkey Air ma non riesce ad accoppiarlo (Ubuntu 18.04). Questo potrebbe essere il percorso da seguire , ma al momento non sono pronto per provare. Un'altra opzione che ho incontrato stasera è un dongle da $ 50 chiamato "WIDI Bud" che, credo, convertirà automaticamente il Bluetooth in MIDI. Pubblica post se lo capisci: mi piacerebbe poter fare anche questo!
nobar

1
fantastico, anche quello ha funzionato! Ora posso usarlo in entrambi i modi: FP-30 come input o posso suonare sulla tastiera virtuale affinché il suono esca all'FP-30
Bani,

1

Scopri la tua scheda audio:

aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC3235 Analog [ALC3235 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Useremo card1, device0, quindi hw: 1,0

Il mio scenario di pipeline che alla fine ha funzionato, usando jack-control (qjackctl)ed qsynthera:

  1. Installa jack-tools, jack-server, qsynth
  2. Apri qsynth e vai a Setup. Nella MIDIscheda, seleziono Midi Driver: alsa-seq. Nella Audioscheda seleziono Audio Driver: jack.
  3. Accendi il server jack con

    jackd -R -d alsa -d hw: 1,0

  4. Apri qjacktctle:

4.1 Vai a Connect-> ALSA. Nella colonna di sinistra scopri la tua tastiera e collegala a qsynthquella che si trova nella colonna di destra. Assicurati anche che nella prima colonna ( AUDIO) qsynthsia collegato ai tuoi altoparlanti (colonna di destra).

4.2 Indietro nella qjackctlfinestra principale Vai a setup->settings->advancede nella colonna di destra, scegli Output Device(altoparlanti) e Input Device(Tastiera Midi)

Con questo passaggio sono stato in grado di ascoltare la mia tastiera. Segue una schermata generale dell'installazione

inserisci qui la descrizione dell'immagine

PS: in questo scenario, nessun'altra applicazione può usare gli altoparlanti contemporaneamente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.