PulseAudio su slackware

Postate qui se avete consigli per migliorare i pacchetti disponibili in questo sito o se avete problemi con installazione, funzionamento o altro.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il nome del pacchetto.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
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.
Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » mer ago 27, 2014 12:55

Sulle schede digitali o che supportano nativamente il mixing, il pcm 'dmix' non esiste come device ma come tipo e quindi va definito in .asoundrc (o asound.conf)

Codice: Seleziona tutto

pcm.pippo {
        type dmix
        ipc_key 1024
        slave {
                pcm hw:1
        }
}
pcm.!default {
        type plug
        slave.pcm pippo
}



poi mettendo in defaut.pa:
load-module module-alsa-sink
senza device=dmix visto che tale device non esiste e l'ho linkato in default.

così funziona.. posso usare skype e aplay in contemporanea.

Sul pc di casa invece posso usare device=dmix

Si può anche fare

load-module module-alsa-sink device=skype

valido per tutti,
e poi in .asoundrc a seconda del supporto hw si mette

Codice: Seleziona tutto

pcm.skypemixer {
        type dmix
        ipc_key 1024
        slave {
                pcm hw:1
        }
}
pcm.skype {
        type plug
        slave.pcm skypemixer
}

oppure

Codice: Seleziona tutto

pcm.skype {
       type plug
       slave.pcm dmix
}

così l'utente che si vuole scegliere il canale o tunare la conf audio ecc deve toccare un file di alsa e lascia invariato pulse.

Anche a me non ha funzionato il microfono (ma all'una di notte con in stanza un'altra persona che dorme non si fanno bene le prove).
Ho compilato pulseaudio 2.0 con pathprefix /usr/share/skype/pulseaudio, senza supporto x11 e qualcos'altro. Al momento non ho lo slackbuild davanti.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

rik70
Master
Master
Messaggi: 1693
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: 4.0.x-smp
Desktop: Xfce 4.12

Re: PulseAudio su slackware

Messaggioda rik70 » mer ago 27, 2014 13:17

Ottimo.

La seconda e la terza soluzione sono le migliori in quanto meno invasive, dato che la prima imposterebbe come periferica predefinita 'pcm.pippo' e forse non è desiderabile.

Per il microfono:

Codice: Seleziona tutto

arecord -l
e scegli quella giusta, impostando in modo corrispondente /etc/pulse/default.pa.

Per esempio, prendendo come buono l'ultimo .asoundrc:

Codice: Seleziona tutto

load-module module-alsa-sink device=skype
load-module module-alsa-source device=hw:0,0


Ps.
Perché pulseaudio 2.0 e non 5.0?

ZeroUno ha scritto:senza supporto x11

In che senso? Il modo migliore per lanciare pulse è 'start-pulseaudio-x11' o 'start-pulseaudio-kde'. Ci sono questi script nel tuo pacchetto?

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » mer ago 27, 2014 13:38

lancio pulse con pulseaudio --start; magari lo metto nel launcher di skype:

/usr/bin/skype:
#!/bin/bash
/usr/share/skype/pulseaudio/bin/pulseaudio --start
/usr/share/skype/skype
/usr/share/skype/pulseaudio/bin/pulseaudio --kill

il pulseaudio 2 vs. 5... boh!
viewtopic.php?f=4&t=38034&start=45#p339194

ma se faccio il pacchetto
skype_pulseaudio
dentro ci metto anche json-c e speex?
tanto nel pacchetto a 64bit ci devo mettere le librerie a 32bit nei path di skype; a questo punto l'utente si installa skype_static e skype_pulseaudio senza preoccuparsi di tutte le altre dipendenze (in fondo sono meno di 10 file in tutto) e non 'sporca' il sistema.

edit: anche per module-alsa-source vorrei mettere qualcosa simile a device=skype in modo da modificare il device dalla configurazione di alsa, che è qualcosa di più vicino all'utente, ma ancora non me la sono studiata.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

rik70
Master
Master
Messaggi: 1693
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: 4.0.x-smp
Desktop: Xfce 4.12

Re: PulseAudio su slackware

Messaggioda rik70 » mer ago 27, 2014 14:24

Ok, su come fare il pacchetto lascio a te l'onere e l'onore 8)

Su speex non so risponderti, credo che bisognerebbe sapere che codec audio usa skype.

json-c serve serve solo per compilare pulse? La butto lì a caso perché ne so meno di te. EDIT: forse uno sguardo al PKGBUILD di archlinux potrebbe aiutare.

Sulla versione di pulse: la 5.0 funziona bene sul mio hardware, non so quale motivo valido possa esserci per usare una versione precedente.

Quanto al microfono, considera questo:
per una soluzione simile ad alsa-sink dovresti usare dsnoop. Però hai lo svantaggio che se l'utente vuole cambiare microfono - ad esempio quello di una webcam - deve tribolare con .asoundrc.
Se invece carichi le pereferiche reali, es hw:0,0, hw:0,1, può cambiare microfono via gui con pavucontrol, o dalla riga di comando con pacmd.

Ad ogni modo, questo è un esempio di .asoundrc perfettamente funzionante con dsnoop impostato per il mic la webcam (seconda periferica audio in /proc/asound/cards, 1 solo canale d'ingresso):

Codice: Seleziona tutto

pcm.mixin {
   type dsnoop
   ipc_key 5978293   # must be unique for all dmix plugins!!!!
   ipc_key_add_uid yes
   slave {
      pcm "hw:1,0"
      channels 1
      period_size 1024
      buffer_size 4096
      rate 48000
      periods 0
      period_time 0
   }
}

pcm.skype_in {
       type plug
       slave {
   pcm "mixin"
   }
}



/etc/pulse/default.pa:

Codice: Seleziona tutto

load-module module-alsa-sink device=dmix
load-module module-alsa-source device=skype_in


Per il test:
chiamata skype all'echo test e mentre regitrate il messaggio vocale lanciare:

Codice: Seleziona tutto

arecord -f cd -D plug:skype_in -d 5 foobar.wav

Se registra anche sul file wav, alsa e pulse non confliggono - da me funzica.

rik70
Master
Master
Messaggi: 1693
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: 4.0.x-smp
Desktop: Xfce 4.12

Re: PulseAudio su slackware

Messaggioda rik70 » mer ago 27, 2014 14:34

Però:

Codice: Seleziona tutto

arecord -f cd -D hw:1,0 -d 5 foobar.wav

arecord: main:722: audio open error: Dispositivo o risorsa occupata

Quindi alsa non va mentre skype registra dal mic. Dov'è l'errore?

EDIT
Comunque non è un problema. Appena skype smette di usare il microfono la risorsa si libera.

Versione semplificata del file.asoundrc:

Codice: Seleziona tutto

pcm.skype_in {
       type dsnoop;
       ipc_key 1024
       slave.pcm "hw:1";
       slave.channels 1;
}

EDIT2
Ma torno a dire, ha poco senso usare dsnoop per le ragioni viste sopra.

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » mer ago 27, 2014 15:57

rik70 ha scritto:

Codice: Seleziona tutto

arecord -f cd -D hw:1,0 -d 5 foobar.wav

arecord: main:722: audio open error: Dispositivo o risorsa occupata

Quindi alsa non va mentre skype registra dal mic. Dov'è l'errore?

perchè interrogando hw:1,0 occupi interamente il canale, incluso il dsnoop.
in verità dovresti dare
arecord -f cd -D plug:dsnoop -d 5 foobar.wav
o cose simili

Versione semplificata del file.asoundrc:

Codice: Seleziona tutto

pcm.skype_in {
       type dsnoop;
       ipc_key 1024
       slave.pcm "hw:1";
       slave.channels 1;
}

perchè sia slave.pcm che slave channels?

Ma torno a dire, ha poco senso usare dsnoop per le ragioni viste sopra.

perchè con un set meno invasivo possibile non c'è installato pavucontrol o altri comandi.
Non è scontato che skype_in debba usare necessariamente dsnoop. In .asoundrc si può mettere direttamente che punta all'hardware, ma almeno lasci scegliere all'utente con strumenti più consoni a slackware.

credo che sia sufficiente dare un .asoundrc ben commentato all'utente e non dovrebbe servire altro.

p.s. non ho ancora provato nient'altro ancora.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

rik70
Master
Master
Messaggi: 1693
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: 4.0.x-smp
Desktop: Xfce 4.12

Re: PulseAudio su slackware

Messaggioda rik70 » mer ago 27, 2014 16:17

ZeroUno ha scritto:
rik70 ha scritto:

Codice: Seleziona tutto

arecord -f cd -D hw:1,0 -d 5 foobar.wav

arecord: main:722: audio open error: Dispositivo o risorsa occupata

Quindi alsa non va mentre skype registra dal mic. Dov'è l'errore?

perchè interrogando hw:1,0 occupi interamente il canale, incluso il dsnoop.
in verità dovresti dare
arecord -f cd -D plug:dsnoop -d 5 foobar.wav
o cose simili

Ah ok, perfetto.

perchè sia slave.pcm che slave channels?

channels perché la periferica in questione ha un solo canale in ingresso. Ma hai ragione tu, non è necessario specificarlo.

credo che sia sufficiente dare un .asoundrc ben commentato all'utente e non dovrebbe servire altro.

Vero anche questo.

p.s. non ho ancora provato nient'altro ancora.

Ok, comunque credo che ormai abbiamo sviscerato la faccenda per benino. Ora la palla passa a te e a chi vuole testare il tutto 8)

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » mer ago 27, 2014 17:24

ok. credo che stasera avrò un po' più di tempo da dedicarci (ma con il pc su cui funziona dmix)
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
tano70
Linux 2.4
Linux 2.4
Messaggi: 255
Iscritto il: lun ago 12, 2013 10:28
Nome Cognome: Tony
Slackware: current 64bit
Kernel: 3.14.17
Desktop: Xfce

Re: PulseAudio su slackware

Messaggioda tano70 » mer ago 27, 2014 17:49

quindi se non ho capito male...ben presto si preannuncia una versione imminente di skype 4.3 perfettamente funzionante, con diciamo la libreria pulseaudio non invasiva ma legata solo a questo programma? perchè in effetti reduce dal passato ho esperienze DISASTROSE con pulseaudio nel sistema

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » mer ago 27, 2014 17:55

"imminente" e "perfettamente" non vanno molto daccordo, però si, l'intenzione è quella.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
tano70
Linux 2.4
Linux 2.4
Messaggi: 255
Iscritto il: lun ago 12, 2013 10:28
Nome Cognome: Tony
Slackware: current 64bit
Kernel: 3.14.17
Desktop: Xfce

Re: PulseAudio su slackware

Messaggioda tano70 » mer ago 27, 2014 18:04

Ottimo ;) prendetevi tutto il tempo...e se serve un beta tester per le vostre versioni io ci sono :) basta che non devo andare a sconvolgere il mio sistema...che al momento è un orologio svizzero :)

rik70
Master
Master
Messaggi: 1693
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: 4.0.x-smp
Desktop: Xfce 4.12

Re: PulseAudio su slackware

Messaggioda rik70 » mer ago 27, 2014 18:18

ZeroUno ha scritto: (ma con il pc su cui funziona dmix)


Non dovrebbe essere un problema.
Gioca con .asoundrc:
crei i dispositivi dmix e dsnoop e li usi per testare su quel PC. Un pò come ho fatto io qui. E poi "porti" il tutto sull'altro computer.

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » gio ago 28, 2014 0:59

http://files.z01.eu/skype/pulseaudio/
pacchetto + slackbuild
è da rifinire ed ho fatto solo quello a 32bit
il pacchetto, installato interamente in /usr/share/skype/pulseaudio, comprende al suo interno anche speex e json-c, così sporco al minimo possibile il sistema.

Da fare ancora il template del .asoundrc e il launcher di skype

per default.pa ho fatto:

Codice: Seleziona tutto

# You must define devices skype_out (playback) and skype_in (mic) in your .asoundrc
load-module module-alsa-sink device=skype_out
load-module module-alsa-source device=skype_in


Il pacchetto, così com'è, è di 1MB c.a. (compresso; 6M scompattato). Mi sto chiedendo se è il caso di fare un unico pacchetto con skype che tanto il solo binario pesa 35M.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » sab ago 30, 2014 14:46

il miglior comando per testare microfono e casse credo che sia
arecord -f cd -D plug:skype_in |aplay -D plug:skype_out
mettete il microfono vicino le casse e alzate al massimo il volume ;)
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 4929
Iscritto il: ven giu 02, 2006 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: PulseAudio su slackware

Messaggioda ZeroUno » sab ago 30, 2014 14:51

comunque a parte questo il pacchetto a 32bit sembra funzionare.
solo una cosa.
nel precedente lanciavo skype con
LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so \
PULSE_LATENCY_MSEC=60 \

pensate servano ancora?
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111


Torna a “Packages”

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite