[RISOLTO] jack-audio-connection-kit e realtime scheduling
Moderatore: Staff
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
il mio problema è questo: vorrei che rimanesse il mio unico server audio, cioè che rimpiazzasse in tutto phonon, avviandosi automaticamente all'avvio e gestendo tutti i suoni, compresi quelli di sistema. Per fare questo è necessario disinstallare in toto phonon, o posso semplicemente editare qualche file di sistema?
Cercando qua e là ho solo trovato gente alle prese col tentativo di far funzionare il realtime, barcamenarsi tra set_rlimits e kernel RT... io sarei ancora allo step prima, cioè sostituire phonon con jack e cominciare a farlo funzionare senza real time, e a quello ci penso dopo (tra l'altro l'avevo già fatto, tempo fa, compilando il kernel RT ed era andato tutto liscio, ed ora ho scoperto questo comando, set_rlimits, quindi magari, quando ci proverò, tenterò con quello senza mettere la patc RT) c'è qualcuno che può aiutarmi??
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Sul modo migliore per avviare jackd in automatico non saprei dirti.Procopio ha scritto:ciao a tutti!! mi trovo a configurare jack anch io,
il mio problema è questo: vorrei che rimanesse il mio unico server audio, cioè che rimpiazzasse in tutto phonon, avviandosi automaticamente all'avvio e gestendo tutti i suoni, compresi quelli di sistema. Per fare questo è necessario disinstallare in toto phonon, o posso semplicemente editare qualche file di sistema?
Per il resto, guarda se questo può esserti utile:
http://jackaudio.org/routing_phonon
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Mmmh interessante, ma in quel modo continuo a dover passare da phonon, e non solo, ma anche dallo stesso gstreamer (il suo motore)...ma sarà mica che non posso fare a meno di phonon e gstreamer, e l'unico modo è bypassarlo in quel modo?? qualcuno mi sa dire qualcosa di preciso in questo senso?rik70 ha scritto:Per il resto, guarda se questo può esserti utile:
http://jackaudio.org/routing_phonon
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Se per esempio tu volessi che i suoni di sistema di KDE passino per jackd, allora devi per forza utilizzare quel sistema indicato nell'articolo.
Dipende da cosa vuoi fare. Con i programmi audio in realtime, come Ardour, Hydrogen, etc. che ci sia phonon o meno in mezzo ai piedi poco importa: tanto non lo utilizzano. Però potrebbero andare in conflitto altre applicazioni - quelle appunto di KDE che passano per phonon.
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
ah ok, così mi è già più chiaro...allora le cose cambiano un po'...rik70 ha scritto:Phonon è un backend - o impropriamente detto da ignoranti come me sound server - che utilizza o xine o gstreamer. E' utilizzato dalle applicazione scritte per KDE. Per non usarlo, o non usi kde, o utilizzi applicazioni che non richiedono phonon.
Se per esempio tu volessi che i suoni di sistema di KDE passino per jackd, allora devi per forza utilizzare quel sistema indicato nell'articolo.
cosa che succede puntualmente, infatti ad esempio da jack non sono mai riuscito a sentire i browsers unitamente ad ardour o al vlc...bella bega perchè con questa scheda audio esterna continuo ad avere i suoni di sistema che si sentono dagli speaker del laptop, e il resto che esce dalle casse, phonon che mi mette una lista di 15 dispositivi quando ne ho solo due e ogni volta è un pasticcio dirgli quale prendere, perchè ovviamente phonon non me lo fa in automatico, kmix che ogni volta parte con la scheda audio sbagliata e devo settare quella esterna ad ogni avvio della sessione, alsamixer che per quanto io imposti una scheda piuttosto che un altra continua a farmi sentire i suoni come vuole....bel casino....rik70 ha scritto:Dipende da cosa vuoi fare. Con i programmi audio in realtime, come Ardour, Hydrogen, etc. che ci sia phonon o meno in mezzo ai piedi poco importa: tanto non lo utilizzano. Però potrebbero andare in conflitto altre applicazioni - quelle appunto di KDE che passano per phonon.
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
http://linux-audio.4202.n7.nabble.com/A ... 45050.html
E ti posso dire che funziona perfettamente, almeno con firefox (edit: + flashplayer, con html5 non so) - l'unico che provai a suo tempo.
Per i programmi come vlc e mplayer, devi impostarli in modo che utilizzino jackd.
Per mplayer è sufficiente modificare il file /etc/mplayer.conf - oppure per il solo utente: ~/.mplayer/config - aggiungendo ad esempio:
Codice: Seleziona tutto
ao=jack,alsa,
E così vale per gli altri programmi audio che vorrai utilizzare - sempreché siano stati compilati col supporto a jack. Diversamente vanno ricompilati.
Insomma, come dicevo nell'altra discussione, con slackware devi un pò tribolare, sopratutto per il realtime dato che manca pam. Ma una volta sistemato il tutto, funziona alla perfezione!
Per phonon, ripeto la soluzione migliore è quella linkata sopra - ammesso che funzioni: leggo che alcuni usano xine al posto di gstreamer. Oppure disattivi i suoni di sistema - dalle impostazione di configurazione o quello che è - e a quel punto non rompe più. Per il resto, KDE per me è un perfetto sconosciuto.
OT
Io personalmente, per il realtime, sto sperimentando questo e la resa è micidiale:
http://subversion.ffado.org/wiki/IrqPriorities
Per Ardour è necessario usare set_rlimits, o almeno così è nel mio caso: con setcap non parte.
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
ho installato il plugin che mi hai suggerito con
Codice: Seleziona tutto
matteo@darkstar:~>git clone git://repo.or.cz/libflashsupport-jack.git
Cloning into 'libflashsupport-jack'...
remote: Counting objects: 79, done.
remote: Compressing objects: 100% (35/35), done.
remote: Total 79 (delta 44), reused 79 (delta 44)
Receiving objects: 100% (79/79), 21.77 KiB, done.
Resolving deltas: 100% (44/44), done.
matteo@darkstar:~>
ho settato il set_rlimits.conf
Codice: Seleziona tutto
matteo@darkstar:~>cat /etc/set_rlimits.conf
# Configuration file for set_rlimits. Format is:
#
# name program max_nice_priority max_realtime_priority
# or
# name program <key>=<value> ...
#
# name is expected to be a username, a groupname if preceeded by a @ sign,
# or ALL (which matches all users). Negative priorities effectively
# disallow any setting of the respective priority for the matching entry.
# <key> can be rtprio, nice or memlock.
# Example entry:
#
# mark /usr/local/bin/jackd -1 80
#
# Here, user mark can execute /usr/local/bin/jackd using set_rlimits to set
# a realtime priority up to and including 80, but setting of a nice priority
# through set_rlimits is disallowed. Alternatively, if an `audio' group
# existed, the entry
#
# @audio /usr/local/bin/jackd -1 80
#
# would allow the same except the permission would extend to all members of
# the `audio' group. The same effect could be achieved with the key/value
# syntax:
#
@audio /usr/bin/jackd nice=-1 rtprio=80 memlock=250000
#
# For more details on the format and use of this file please refer to
# the set_rlimits manual page.
matteo@darkstar:~>
Codice: Seleziona tutto
set_rlimits /usr/bin/jackd -R -v -dalsa -dhw:0 -r48000 -p512 -n2
dalla gui neanche, tanto più che non posso neanche mettere il server path, in questa versione di qjackctl, ma server prefix e server suffix, se vuoi ti allego una schermata del mio setup di jack...
in entrambi i casi quando provo a vedere un video da youtube con firefox se sono con jack il video si crasha dopo 3 secondi, se invece chiudo jack vedo tutto normale....
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
come l'hai installato? A me qua funziona, com'è che a te non va?
Dopo averlo "clonato" l'hai compilato? Si/No? Se si, qual'è il percorso della risultante 'libflashsupport.so' ?
P.s.
Per ora set_rlimits lascialo stare. Non ti serve se non devi usare jackd in realtime. E poi hai già dato setcap su jackd, quindi è superfluo - sia col realtime che senza.
Si, allega tutto quello vuoi
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
mmmmmmh no caro mi ero fermato al clone non avevo capito che si dovesse installare 9.9 ma con quel colone dove me lo mette il file da compilare?rik70 ha scritto:Spetta...
come l'hai installato? A me qua funziona, com'è che a te non va?
Dopo averlo "clonato" l'hai compilato? Si/No? Se si, qual'è il percorso della risultante 'libflashsupport.so' ?
questo è il mio setup di jack, il driver era oss solo in quel frangente se no di solito uso alsa!
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Allega:
Codice: Seleziona tutto
cat ~/.jackdrc
cat /proc/asound/cards
Codice: Seleziona tutto
cat /etc/set_rlimits.conf
Codice: Seleziona tutto
ps -eLo rtprio,cls,pid,pri,nice,cmd | grep "FF" | sort -r
45 FF 9689 85 - /usr/lib/firefox-23.0.1/plugin-container /usr/lib/mozilla/plugins/libflashplayer.so -greomni /usr/lib/firefox-23.0.1/omni.ja -appomni /usr/lib/firefox-23.0.1/browser/omni.ja -appdir /usr/lib/firefox-23.0.1/browser 9656 true plugin
P.s.
Per il plugin: compilalo e installalo. Mi raccomando col 'prefisso' in /usr
Es:
Codice: Seleziona tutto
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make
# se non da errori, da root:
make install
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Codice: Seleziona tutto
matteo@darkstar:~/libflashsupport-jack>cat ~/.jackdrc
/usr/bin/jackd -v -m -doss -r44100 -p1024 -n2 -w16
root@darkstar:/home/matteo>cat /proc/asound/cards
0 [CODEC ]: USB-Audio - USB Audio CODEC
Burr-Brown from TI USB Audio CODEC at usb-0000:00:1d.7-3.2, full speed
1 [Intel ]: HDA-Intel - HDA Intel
HDA Intel at 0xfc300000 irq 46
Codice: Seleziona tutto
root@darkstar:/home/matteo>cat /etc/set_rlimits.conf
# Configuration file for set_rlimits. Format is:
#
# name program max_nice_priority max_realtime_priority
# or
# name program <key>=<value> ...
#
# name is expected to be a username, a groupname if preceeded by a @ sign,
# or ALL (which matches all users). Negative priorities effectively
# disallow any setting of the respective priority for the matching entry.
# <key> can be rtprio, nice or memlock.
# Example entry:
#
# mark /usr/local/bin/jackd -1 80
#
# Here, user mark can execute /usr/local/bin/jackd using set_rlimits to set
# a realtime priority up to and including 80, but setting of a nice priority
# through set_rlimits is disallowed. Alternatively, if an `audio' group
# existed, the entry
#
# @audio /usr/local/bin/jackd -1 80
#
# would allow the same except the permission would extend to all members of
# the `audio' group. The same effect could be achieved with the key/value
# syntax:
#
@audio /usr/bin/jackd nice=-1 rtprio=80 memlock=250000
#
# For more details on the format and use of this file please refer to
# the set_rlimits manual page.
root@darkstar:/home/matteo>
Codice: Seleziona tutto
root@darkstar:~/libflashsupport-jack>ls
Makefile.am bootstrap.sh configure.ac flashsupport.c
root@darkstar:~/libflashsupport-jack>./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
bash: ./configure: No such file or directory
Codice: Seleziona tutto
root@darkstar:~/libflashsupport-jack>./configure.ac --prefix=/usr --sysconfdir=/etc --localstatedir=/var
bash: ./configure.ac: Permission denied
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Codice: Seleziona tutto
./bootstrap.sh
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
il cat ~/.jackdrc da utente normale, non da root.
- Procopio
- Linux 3.x
- Messaggi: 844
- Iscritto il: ven 29 lug 2011, 11:50
- Nome Cognome: Matteo Micheletto Oddino
- Slackware: 14.2
- Kernel: 4.4.14
- Desktop: Awesome
- Località: Torino
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
ad ogni modo l'ho fatto, e mi ha tirato fuori i vari files per la compilazione... il configure è andato a buon fine, il make no, gli manca un file:
Codice: Seleziona tutto
matteo@darkstar:~/libflashsupport-jack>make
make all-am
make[1]: Entering directory `/home/matteo/libflashsupport-jack'
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -lsamplerate -g -O2 -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wshadow -Wendif-labels -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wno-unused-parameter -ffast-math -MT libflashsupport_la-flashsupport.lo -MD -MP -MF .deps/libflashsupport_la-flashsupport.Tpo -c -o libflashsupport_la-flashsupport.lo `test -f 'flashsupport.c' || echo './'`flashsupport.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -lsamplerate -g -O2 -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wshadow -Wendif-labels -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wno-unused-parameter -ffast-math -MT libflashsupport_la-flashsupport.lo -MD -MP -MF .deps/libflashsupport_la-flashsupport.Tpo -c flashsupport.c -fPIC -DPIC -o .libs/libflashsupport_la-flashsupport.o
flashsupport.c:184:28: fatal error: linux/videodev.h: No such file or directory
compilation terminated.
make[1]: *** [libflashsupport_la-flashsupport.lo] Error 1
make[1]: Leaving directory `/home/matteo/libflashsupport-jack'
make: *** [all] Error 2
Codice: Seleziona tutto
matteo@darkstar:~/libflashsupport-jack>ln -s videodev2.h videodev.h
matteo@darkstar:~/libflashsupport-jack>make
make all-am
make[1]: Entering directory `/home/matteo/libflashsupport-jack'
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -lsamplerate -g -O2 -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wshadow -Wendif-labels -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wno-unused-parameter -ffast-math -MT libflashsupport_la-flashsupport.lo -MD -MP -MF .deps/libflashsupport_la-flashsupport.Tpo -c -o libflashsupport_la-flashsupport.lo `test -f 'flashsupport.c' || echo './'`flashsupport.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -lsamplerate -g -O2 -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wshadow -Wendif-labels -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wno-unused-parameter -ffast-math -MT libflashsupport_la-flashsupport.lo -MD -MP -MF .deps/libflashsupport_la-flashsupport.Tpo -c flashsupport.c -fPIC -DPIC -o .libs/libflashsupport_la-flashsupport.o
flashsupport.c:184:28: fatal error: linux/videodev.h: No such file or directory
compilation terminated.
make[1]: *** [libflashsupport_la-flashsupport.lo] Error 1
make[1]: Leaving directory `/home/matteo/libflashsupport-jack'
make: *** [all] Error 2
matteo@darkstar:~/libflashsupport-jack>
e neanche quest'altro link simbolico, che non sono riuscito a fare
Codice: Seleziona tutto
matteo@darkstar:~/libflashsupport-jack>/usr/include/linux/videodev.h -> /usr/include/libv4l1-videodev.h
bash: /usr/include/libv4l1-videodev.h: Permission denied
matteo@darkstar:~/libflashsupport-jack>su
Password:
root@darkstar:/home/matteo/libflashsupport-jack>/usr/include/linux/videodev.h -> /usr/include/libv4l1-videodev.h
bash: /usr/include/linux/videodev.h: No such file or directory
root@darkstar:/home/matteo/libflashsupport-jack>
ho corretto sopra e ho messo il cat da utente normalerik70 ha scritto:P.s.
il cat ~/.jackdrc da utente normale, non da root.
-
- Iper Master
- Messaggi: 2489
- Iscritto il: gio 10 mar 2011, 9:21
- Slackware: 15.0
- Kernel: 5.15.x-generic
- Desktop: Sway
- Distribuzione: Arch Linux
Re: [RISOLTO] jack-audio-connection-kit e realtime schedulin
Apri con un editor il file flashsupport.c
Trova questa riga:
Codice: Seleziona tutto
#define V4L1
Codice: Seleziona tutto
//#define V4L1
Codice: Seleziona tutto
make distclean