Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 42 del 24/12/2009 11.01.30

Nascondi questo messaggio

BR Indice(depth=2 align=right) VersioniSupportate(jaunty intrepid hardy)

Introduzione

JACK è un server audio professionale che permette di gestire e coordinare gli ingressi e le uscite di [http://jackaudio.org/applications applicazioni] audio. Supporta i driver ALSA e OSS e può essere utilizzato da riga di comando o per via grafica con il programma Qjackctl.

Installazione

Per installare JACK e la sua interfaccia grafica qjackctl è sufficiente [:AmministrazioneSistema/InstallareProgrammi:installare] i pacchetti [apt://jackd,qjackctl jackd, qjackctl]

Utilizzo da interfaccia grafica

Avviare qjackctl dal menù Applicazioni -> Audio & Video -> JACK Control e fare clic su «Start» per avviare il server audio.

Immagine(./Jack.png,450,center)

Per predefinito il «sample rate» è impostato su «44100 Hz».BRSe è necessario modificarlo, basterà fare clic su «Setup» per cambiare il suo valore.

Una delle caratteristiche principali di JACK è quella di mettere differenti software audio in comunicazione fra loro. BRFacendo clic sul tasto «Connect» appare una finestra che rileva i software audio in uso. Nella figura in basso viene mostrato l'uso in combinazione di [:Multimedia/Audio/Ardour:Ardour] e Jamin. In questo modo i suoni di una delle tracce di Ardour potranno essere modificati con Jamin semplicemente collegando i canali audio di uscita della traccia stessa con i canali di entrata di Jamin.

Immagine(./2.png,450,center)

I canali di uscita stereo «Audio 2/out1» e «Audio 2/out2» della traccia Audio 2 di Ardour sono stati rispettivamente collegati con i canali stereo di entrata «in_L» e «in_R» di Jamin.

Avvio da terminale

JACK può essere avviato digitando il seguente comando in una finestra di [:AmministrazioneSistema/RigaDiComando:terminale]:

jackd -d alsa -d hw:1 -r 44100 -p 1024 -n 2

Segue una descrizione dei parametri utilizzati:

Flag

Descrizione

-d alsa

Driver audio da utilizzare con JACK

hw:1

Scheda audio. Di default JACK utilizza la scheda audio n°0 "hw:0". Se il sistema è dotato di più schede audio può essere necessario indicare la n°1, n°2, ecc..

-r 44100

Frequenza di campionamento. Di default è 48000 Hz ma a volte, soprattutto con schede audio poco performanti, è consigliabile utilizzare la qualità CD, 44100 Hz per l'appunto.

-p 1024

Dimensione del buffer. Minore è la dimensione del buffer, minore è la latenza e maggiore è l'utilizzo di risorse computazionali. Per evitare perdita di qualità nel segnale, clipping o perdita di frammenti audio, è consigliabile testare tutte le opzioni (256/512/1024/2048) per trovare il migliore compromesso tra qualità audio/utilizzo delle risorse/tempo di latenza

-n 2

Numero di buffer audio. Valgono le considerazioni fatte per le dimensioni del buffer

Le opzioni di ALSA possono essere consultate digitando il seguente comando in una finestra di [:AmministrazioneSistema/RigaDiComando:terminale]:

jackd -d alsa --help

Integrazione con PulseAudio e Phonon

installare il pacchetto pulseaudio-module-jack.

su karmic, per problemi di dipendenze, bisogna prima aggiungere un ppa esterno: aprite sorgenti software e nella tab "software di terze parti" aggiungete questa stringa:

ppa:motin/until-jack-is-included-in-main

chiudete e installate gli aggiornamenti di pulseaudio con

sudo apt-get update && sudo aptitude full-upgrade

poi installate il modulo jack per pulseaudio, con

sudo aptitude install pulseaudio-module-jack.

ora bisongna configurare pulseaudio per interfacciarsi a jack invece che ad alsa.

date

sudo nano /etc/security/limits.conf

e aggiungete nel file le seguenti righe:

@audio - rtprio 100
@audio - nice -20
@audio - memlock 452192

salvate con ctrl o e uscite con ctrl x.

poi date

sudo chmod -s /usr/bin/pulseaudio

ora date il seguente comando:

cd /etc/pulse/ && sudo touch jackd.pa

poi date

sudo nano jackd.pa

e incollate dentro al file il seguente testo:

#
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

# This startup script is used only if PulseAudio is started per-user
# (i.e. not in system mode)

load-module module-jack-sink
load-module module-jack-source

.nofail

### Load something into the sample cache
#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
#load-sample-lazy pulse-access /usr/share/sounds/generic.wav

.fail

### Automatically restore the volume of streams and devices
load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore

### Automatically augment property information from .desktop files
### stored in /usr/share/application
load-module module-augment-properties

### Load audio drivers statically (it's probably better to not load
### these drivers manually, but instead use module-hal-detect --
### see below -- for doing this automatically)
#load-module module-alsa-sink
#load-module module-alsa-source device=hw:1,0
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#load-module module-null-sink
#load-module module-pipe-sink

### Automatically load driver modules depending on the hardware available
#.ifexists module-udev-detect.so
#load-module module-udev-detect
#.else
### Alternatively use the static hardware detection module (for systems that
### lack udev support)
#load-module module-detect
#.endif

### Automatically load driver modules for Bluetooth hardware
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif

### Load several protocols
.ifexists module-esound-protocol-unix.so
load-module module-esound-protocol-unix
.endif
load-module module-native-protocol-unix

### Network access (may be configured with paprefs, so leave this commented
### here if you plan to use paprefs)
#load-module module-esound-protocol-tcp
#load-module module-native-protocol-tcp
#load-module module-zeroconf-publish

### Load the RTP reciever module (also configured via paprefs, see above)
#load-module module-rtp-recv

### Load the RTP sender module (also configured via paprefs, see above)
#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 description="RTP Multicast Sink"
#load-module module-rtp-send source=rtp.monitor

### Load additional modules from GConf settings. This can be configured with the paprefs tool.
### Please keep in mind that the modules configured by paprefs might conflict with manually
### loaded modules.
.ifexists module-gconf.so
.nofail
load-module module-gconf
.fail
.endif

### Automatically restore the default sink/source when changed by the user during runtime
load-module module-default-device-restore

### Automatically move streams to the default sink if the sink they are
### connected to dies, similar for sources
load-module module-rescue-streams

### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink

### Honour intended role device property
load-module module-intended-roles

### Automatically suspend sinks/sources that become idle for too long
load-module module-suspend-on-idle

### If autoexit on idle is enabled we want to make sure we only quit
### when no local session needs us anymore.
load-module module-console-kit

### Enable positioned event sounds
load-module module-position-event-sounds

### Cork music streams when a phone stream is active
load-module module-cork-music-on-phone

# X11 modules should not be started from default.pa so that one daemon
# can be shared by multiple sessions.

### Load X11 bell module
#load-module module-x11-bell sample=bell-windowing-system

### Register ourselves in the X11 session manager
#load-module module-x11-xsmp

### Publish connection data in the X11 root window
#.ifexists module-x11-publish.so
#.nofail
#load-module module-x11-publish
#.fail
#.endif

### Make some devices default
#set-default-sink output
#set-default-source input

salvate e chiudete come prima.

ora assicuratevi di non avere qjackctl in avvio automatico, oppure ancoa aperto (se usate kde).

provvedete a disabilitarne l'avvio automatico e a chiuderne tutte le istante, terminando jack.

ora riavviate il sistema, aprite il terminale e date i seguenti comandi:

sudo killall pulseaudio 

sudo killall jackd

e date

pulseaudio -n -F /etc/pulse/jackd.pa

bene, è fatta.

se usate kde, aprite le impostazioni di sistema, cliccate su multimedia e come prima periferica mettete pulseaudio, a tutte le categorie.

Ulteriori risorse


CategoryMultimedia