alexylem / jarvis

Jarvis.sh is a simple configurable multi-lang assistant.
http://openjarvis.com
MIT License
810 stars 197 forks source link

Jarvis avec PulseAudio #200

Open francoismartin opened 8 years ago

francoismartin commented 8 years ago

Pouvoir faire fonctionner Jarvis avec Alsa mais également PulseAudio.

PulseAudio nous permet d'être connecté avec une enceinte bluetooth, car malheureusement bluez5 n'est pas compatible avec Alsa, seulement avec Bluez4.

Mais quand je vois la galère que j'ai a installé Bluez4 j'ai suivi ce tuto j'ai réussi mais je n'arrive pas a avoir le fichier pour fonctionner avec bluez4. Par contre je n'ai pas compiler et installer Alsa comme il le dit car je ne vois pas comment faire ça.

EDIT @wikijm : Fonctionnel avec

slobberbone commented 7 years ago

Pour pulseaudio, j'ai réalisé un plugin pour jeedom et l'intégration des enceintes bluetooth fonctionne parfaitement. Si besoin je peux aider sur son implémentation dans jarvis. Ainsi jarvis pourrait être un simple client pulseaudio et envoyer le son vers n'importe quel serveur pulseaudio local ou distant (jeedom) Faites moi signe ;-)

alexylem commented 7 years ago

Salut @slobberbone je suis preneur!! Il y a une forte demande pour adapter Jarvis avec PulseAudio (notamment pour le support du bluetooth) et je n'ai pas su y répondre (j'y connais rien à PulseAudio et ai été découragé par la complexité). Je suis très intéressé par ta proposition d'aide, si tu es partant je te décris rapidement l'environnement technique, et les principales interactions avec l'audio. Aujourd'hui tout est basé sur ALSA. Merci infiniment! Grâce à toi Jarvis va faire un grand bond en avant. Alex.

slobberbone commented 7 years ago

Bah écoutes, je ne te promets rien, mais si je peux aider pourquoi pas !? Disons que PulseAudio est vraiment puissant et n'est pas reconnu à sa juste valeur, c'est dommage ... Là par exemple, le plugin sous Jeedom chez moi, gère même le flux Upnp en tant que sortie son PulseAudio .... Bref le délire ! Entre l'Upnp d'un coté, le client PulseAudio déporté (sous GNU/Linux) et l'enecinete Bluetooth de l'autre, tout peut être centralisé avec PulseAudio ! Je compte bien utiliser Jarvis plus tard (quand j'aurai à nous ma maison) et du coup si ça peut utiliser ce serveur ca serait pas mal !

alexylem commented 7 years ago

Ok donc mon souhait premier est de garder Jarvis aussi simple à installer et à utiliser qu'il ne l'est aujourd'hui. Il s'adresse avant tout à des personnes qui découvrent la domotique / le raspberry pi. Il doit pouvoir s'installer tout seul sur un environment "vierge".

Aujourd'hui il est compatible OSX et Raspbian (bien que d'autres l'utilisent aussi sur Ubuntu / Debian). L'installation de PulseAudio devrait donc pouvoir se faire dès l'installation de Jarvis (par exemple en réponse à la question: souhaitez-vous utiliser un appareil bluetooth?), et bien sûr automatiquement. Ensuite Jarvis doit pouvoir identifier les enceintes et micros disponibles, les tester, et les utiliser. Pour cela aujourd'hui avec ALSA je génère le fichier .asoundrc avec les bons périphériques et suite à un redémarrage ils sont utilisés par défaut dans les commandes sox, rec, mpg123, snowboy...

Je ne te demande pas particulièrement de modifier le code Jarvis toi même, mais potentiellement m'aider à construire quelques fichiers .sh que je pourrais intégrer, par ex:

Si je comprends bien ton utilisation de PulseAudio, on peut imaginer configurer un micro/speaker distant sur un autre raspberry pi via le LAN. Ce qui pourrait s'avérer extrêmement intéressant pour le multi-room.

Je ne pense pas qu'il vaille le coup d'intégrer OSX, c'est avant tout ma plateforme de DEV. Mais au moins un truc qui passe sur raspbian jessie, et Unbuntu/Debian récents. Je devrais pouvoir trouver une oreillette bluetooth à la maison pour tester tout ca sur mon raspberry pi 3 (qui a le bluetooth intégré).

Toujours la? 😄

slobberbone commented 7 years ago

Bon alors, oui toujours là ;-) En gros pour les enceintes, tout ça fonctionne déjà sous jeedom avec... Des scripts bash ! Je vois plus un truc dans jarvis qui utilise un serveur pulseaudio local ou distant et ensuite si local alors en effet il permet d'ajouter une enceinte bluetooth etc... Mais cette étape de sélection du serveur pulseaudio me semble indispensable. J'ai cependant 2 points qui me viennent en tête en terme de complications :

alexylem commented 7 years ago

Mais cette étape de sélection du serveur PulseAudio me semble indispensable

C'est donc l'idée de pouvoir sortir le son sur un raspberry pi distant? Dans ce cas je suis carrément pour 😄 (j'imagine déjà l'installation à distance de PulseAudio sur le Raspberry Pi cible... ok je m'emballe...). Du coup je rajoute:

Je n'ai aucun retour sur les micro via bluetooth

Mince alors tu as raison, je viens de fouiller le repo, je n'ai aucun témoignage positif la dessus. J'ai rapidement googlé, rien de très encourageant pour le moment. Je propose qu'on attende de ce côté la du coup...

l'ajout d'une enceinte bluetooth avec appairage demande une entrée utilisateur afin de saisir l'adresse mac (donnée par le script mais je ne sais pas quelle adresse correspond à une enceinte ou non...)

J'ai aucun soucis avec l'entrée utilisateur, si c'est user-friendly, aka: choix dans une liste. Un utilisateur de Jarvis (@Thegritche) a écrit ce tuto, il y a bien une step qui détecte les MAC adresses, ca serait dommage de devoir écrire l'adresse à la main 😄 https://easydomoticz.com/bluetooth-squeezelite-raspberry-domoticz-2/

le reste est déjà opérationnel...

Alors t'es partant pour m'aider à faire ces scripts? 🙏

slobberbone commented 7 years ago

Écoute, je vais valider la procédure que tu me donnes pour l'apairage avec bluez-test (j'utilise bluetoothctl pour le moment) et ça permettrait une sélection, au pire je ferai un mixte. Pour ce qui est du son sur un rpi distant, c'est le principe de ce que j'ai fais pour jeedom ;-), d'ailleurs hier j'ai même réussi à faire de jeedom un lecteur upnp, donc en gros musique depuis mon tel vers jeedom qui envoie le son sur une enceinte bluetooth. Sachant que la j'arrive à lire le son deezer de mon pc sous fedora vers mes enceintes bluetooth via jeedom, donc ça ne devrait pas poser trop de problème...

Pour la gestion des microphones bluetooth, on peut partir sur la même procédure et laisser pulseaudio gérer. Sur le principe ça devrait fonctionner, Après je n'ai pas de micro bluetooth donc...

Voilà pour un rapide état des lieux. J'ai donc déjà des scripts qui font tout ça mais il reste à les formater pour que ça soit Jarvisé :-D Je vais voir pour changer d'outil sous jeedom, si ok, ça va faire gagner du temps.

alexylem commented 7 years ago

Par rapport à bluez-test / bluetoothctl en fait je n'ai aucune préférence, juste celle d'aller au plus simple avec le moins de dépendances possible à installer 👍 Merci bcp pour ton aide!!

slobberbone commented 7 years ago

@alexylem : les fichiers pa_install.sh, pa_config_speaker.sh:, pa_config_mic.sh, pa_play.sh, pa_rec.sh et pa_uninstall.sh je dois les mettre où dans ton arborescence ?

slobberbone commented 7 years ago

A vérifier pour plus tard : https://github.com/alexylem/jarvis/issues/122 (ca sera surement corrigé après l'impémentation)

alexylem commented 7 years ago

Mets les où tu veux, dans utils/ par exemple de toute façon ils seront surement renommés / intégrés à terme. Ensuite fais le pull request, ou tu peux même me les envoyer directement par mail. Merci et bonne année à vous tous!!

Sopalin06 commented 7 years ago

Suite à ma config bluetooth avec pulse audio, jarvis déconne grave. LA détection du mot clé fonctionne, puis il doit capter du son parasite en lieu et place de ma voix car même sans bruit il capte qqchose qu'il envoi à Bing/google et fini par s'arrêter. Une idée ?

AlienFX commented 7 years ago

Hello @alexylem @slobberbone Avez-vous du nouveau à ce sujet là ? Est-il possible d'avoir les scripts en question ou autre ? Merci à vous !

alexylem commented 7 years ago

@AlienFX ceci sera ma prochaine grande priorité. Il y a de plus en plus d'utilisateurs sur PulseAudio, ca devient un must.

AlienFX commented 7 years ago

Super @alexylem, good news. Merci à toi Il devient très très dur de trouver des speakers via prise jack... ça parait fou mais ça ne l'est pas ! J'ai retourné gearbest dans tous les sens.. sans rien trouver !

alexylem commented 7 years ago

@slobberbone Je vais me replonger dans le sujet. As-tu pu bosser sur les fichiers:

Et si oui tu pourrais me les faire parvenir ou les ajouter au repo via un pull request? Merci!

PaRaDiiZ commented 7 years ago

Bonjour à tous, Ça m’intéresse beaucoup d'intégrer Jarvis avec PulseAudio. Est-ce que vous avez pu avancer un peu @slobberbone @alexylem ? Merci de votre travail :)

alexylem commented 7 years ago

Pas de news de @slobberbone J'ai un doute: avec mon installation de Pixel j'ai l'impression d'avoir PulseAudio installé. Et mon Jarvis fonctionne bien, même en lançant pulseaudio manuellement... @PaRaDiiZ tu pourrais faire le test et voir ce que ca donne?

slobberbone commented 7 years ago

Salut, En fait j'ai eu des soucis d'installation de Jarvis sur un VM pour tester et j'ai encore des soucis d'ailleurs ... Sinon, il faut avouer que pour le moment, avec la reconstruction de ma maison et le boulot, j'avoue ne pas avoir bcp de temps ... j'espère que ça va pas trop durer ... mais je ne vous oublie pas et compte bien utiliser Jarvis avec pulseaudio !

PaRaDiiZ commented 7 years ago

@alexylem Je t'avoue que je suis complètement perdu. A la base ce que je veux je faire c'est utiliser une enceinte bluetooth avec micro intégré. J'ai déjà installé PulseAudio car je m'en sers pour faire parler Jeedom. Mon enceinte fonctionne avec les commandes bluetoothctl. Par contre en installant Jarvis j'ai cru comprendre qu'il est développé avec ALSA et qu'il y avait une incompatibilité entre ALSA et PulseAudio. En voyant cette discussion je me suis dit que c'était la clé de mon problème. Je me balade depuis des jours sur différent forum et différentes issues (notamment la #110) mais je n'arrive pas à résoudre mon problème. La grande question est : Comment puis-je configurer Jarvis avec mon enceinte bluetooth ? En cherchant j'ai l'impression que la seule solution est d'abandonner PulseAudio. J'avoue ne pas avoir une grande expérience donc c'est probablement moi qui fait mal les choses ...

alexylem commented 7 years ago

@PaRaDiiZ donc la tu demandes 2 choses, utiliser les speakers en bluetooth mais aussi utiliser le micro en bluetooth. Je n'ai pas de micro bluetooth à la maison, juste une enceinte. Donc je peux avancer la dessus, mais pour le micro ca va être plus compliqué.

PaRaDiiZ commented 7 years ago

@alexylem Effectivement l'idéale serait que je puisse me servir des 2 directement. Mais le principal c'est les speakers, pour le micro je vais voir pour en prendre un en USB pour le moment. Si tu as des pistes je peux toujours essayer de mon côté. Histoire d'avoir un exemple concret, pourrais-tu me dire ce que tu utilises, par exemple micro ou speakers en jack, USB ? Merci de ton aide en tout cas :)

alexylem commented 7 years ago

Enceinte: Jack alimenté en USB (récup) Micro: PSEye, un mic array à 7€50, imbattable Voir: http://domotiquefacile.fr/jarvis/content/prerequisites

alexylem commented 7 years ago

Ok donc ma prochaine mission sera d'automatiser / documenter le support des enceintes bluetooth dans Jarvis (pas micro, enfin pour le moment).

alexylem commented 7 years ago

🎉 🎈 Après plusieurs heures de bataille, j'ai réussi à faire fonctionner Jarvis avec PulseAudio et speaker bluetooth 😄 et sans changer une ligne de code! Je travaille maintenant pour intégrer toutes les étapes bluetooth d'installation, activation, scan, appairage directement au sein de Jarvis pour que vous puissiez tous en profiter 👍

Pour les impatients:

# make sure system is up-to-date
sudo apt-get update
sudo apt-get upgrade
# make sure you have pulseaudio & bluez in version 5 minimum
dpkg -l bluez pulseaudio pulseaudio-module-bluetooth
# Name                        Version
# ========================================
# bluez                       5.23-2+rpi2
# pulseaudio                  5.0-13
# pulseaudio-module-bluetooth 5.0-13
#
# make sure pulseaudio is started
pulseaudio --start
# make sure your bluetooth device is enabled (not blocked)
rfkill list bluetooth
# 1: hci0: Bluetooth
#   Soft blocked: no
#   Hard blocked: no
# if blocked, unblock it
sudo rfkill unblock bluetooth
# start bluetooth manager
bluetoothctl
# show bluetooth controller info
info
# if not powered on, power it on
power on
# enable agent
agent on
# and register it
default-agent
# put your speaker in pairing mode
# scan for devices
scan on
# here below shows mine:
# [NEW] Device 40:EF:4C:2D:5A:EF ACTON BLUETOOTH
# stop scan
scan off
# pair it using mac address (auto-completion supported)
pair 40:EF:4C:2D:5A:EF
# trust it
trust 40:EF:4C:2D:5A:EF
# connect to speaker
connect 40:EF:4C:2D:5A:EF
# show device info
info 40:EF:4C:2D:5A:EF
# Paired: yes
# Trusted: yes
# Connected: yes
# quit bluetoothctl
quit
# list speakers in pulseaudio sinks
pactl list short sinks
# 0 alsa_output.0.analog-stereo module-alsa-card.c  s16le 2ch 44100Hz   SUSPENDED
# 2 bluez_sink.40_EF_4C_2D_5A_EF    module-bluez5-device.c  s16le 2ch 44100Hz   SUSPENDED
# make it default pulseaudio speaker (use auto-completion)
pacmd set-default-sink bluez_sink.40_EF_4C_2D_5A_EF
# test it
paplay sounds/applause.wav
# list microphones in pulseaudio sources
pactl list short sources
# 0 alsa_input.usb-OmniVision_Technologies__Inc._USB_Camera-B4.09.24.1-01-CameraB409241.analog-4-channel-input  module-alsa-card.c  s16le 4ch 16000Hz   SUSPENDED
# ...
# set your mic as default source (use auto-completion)
pacmd set-default-source alsa_input.usb-OmniVision_Technologies__Inc._USB_Camera-B4.09.24.1-01-CameraB409241.analog-4-channel-input
# start jarvis
./jarvis.sh -n
# it works: hotword & command recognition from mic, output to bluetooth speaker, no error message
wikijm commented 7 years ago

@alexylem Je serais en mesure de tester ça avec au moins 2 enceintes différentes, y compris la JABRA 510 :innocent:

PaRaDiiZ commented 7 years ago

@alexylem Woow t'es un champion ! Je teste ça dès ce soir :)

wikijm commented 7 years ago

@PaRaDiiZ Pense lorsque tu nous fera un retour de donner un maximum de détails sur le matériel testé (marque, modèle, année, version du bluetooth, bluetooth interne au Pi 3 ou dongle spécifique, ...).

Promis, je ferais la même chose 😉

slobberbone commented 7 years ago

Pour les enceintes, de mon coté, j'ai validé avec des JBL Flip 3. Pour les scripts : https://nas.slobberbone.net:8443/scm/hg/pulseaudio/file/1a6ee1bc0c85/3rdparty anonymous/anonymous

wikijm commented 7 years ago

@slobberbone Super travail, à voir si @alexylem peut le réutiliser pour intégrer plus rapidement PulseAudio.

https://fr.jbl.com/enceintes-portables/JBL+FLIP+III.html Mains libres

Prenez des appels clairs depuis votre enceinte d'un simple toucher de bouton, grâce à la fonction mains libres à réduction du bruit et de l'écho. Ce bouton vous permet même de contrôler vos morceaux.

Intégration d'assistant vocal

Accédez à Siri ou Google Now depuis votre enceinte JBL en appuyant sur un bouton

Est ce que tu arrives à l'utiliser en tant que micro, ou seulement pour la sortie du son ? Le must serait de passer Jarvis en écoute avec le bouton "Mains libres".

JBL Connect

Construisez votre propre écosystème en connectant plusieurs enceintes JBL Connect pour démultiplier votre expérience d'écoute.

Est ce que l'on peut envisager de faire du multi-room capable d'être exploité avec Jarvis ? :heart_eyes:

slobberbone commented 7 years ago

@alexylem et @wikijm pour l'automatisation du bluetooth avec bluetoothctl, regardez mes scripts que j'ai externalisé exprès dans Jeedom pour les intégrer à Jarvis, tout y est fait ! ;) y a plus qu'à utiliser !

alexylem commented 7 years ago

@slobberbone merci je vois qu'on est alignés sur les commandes. Je vais m'inspirer de tes scripts pour l'intégration à Jarvis. Merci.

PaRaDiiZ commented 7 years ago

J'ai réussi à faire fonctionner Jarvis :D En fait mon premier problème c'était que mon utilisateur "pi" n'était pas dans le groupe "audio" donc il y avait des erreurs pulseaudio. Deuxième problème, j'arrivais bien à me connecter en bluetooth lorsque pulseaudio était arrêter, mais dès que je lancais pulseaudio avec la commande "pulseaudio --start" plus rien ne fonctionner. Imposiible de comprendre ce qui bloque, surement une modification que j'avais effectué ... En tout cas j'ai complètement désinstallé pulseaudio, je l'ai réinstallé et maintenant tout fonctionne :)

L'enceinte que j'utilise c'est une enceinte bas de gamme que j'ai récupéré, je ne connais même pas la marque mais j'ai trouvé une fiche : SK-S10, c'est du bluetooth 2.0 mais en tout ça fonctionne :) Pour le moment il me reste des problèmes au niveau de la reconnaissance vocal mais j'utilise une webcam (pas cher) donc c'est pas le top En tout cas super travail ! :+1:

wikijm commented 7 years ago

@slobberbone Et concernant :

wikijm commented 7 years ago

En train de tester la prise en charge du micro du JABRA 510 (en bluetooth).

J’utilise les sources suivantes : https://github.com/ibmtjbot/tjbot/issues/12 http://youness.net/raspberry-pi/bluetooth-headset-raspberry-pi-3-ad2p-hsp

yassinhox commented 7 years ago

@wikijm Salut, j'aimerai savoir si tu as été capable d'utiliser un micro en bluetooth en utilisant ta source ibmtjbot/tjbot#12 ? Merci !

wikijm commented 7 years ago

@yassinhox Hélas, les tests que j'ai commencé se trouvaient sur une MicroSD qui a rendu l'âme ... Dans tous les cas, je n'ai pas réussi à arriver jusqu'au bout même si j'ai réussi à créer un périphérique d'entrée et un périphérique de sortie.

alexylem commented 7 years ago

Pour info j'ai bcp avancé ce weekend sur l'intégration avec PulseAudio pour le support du Bluetooth. Les fonctions internes sont prêtes et marchent. Il ne manque plus que la partie interface utilisateur (menu pour le scan et se connecter / déconnecter l'enceinte bluetooth). Stay tuned.

yassinhox commented 7 years ago

Sympa ! Du coup, tu as réussi à faire fonctionner l'enceinte et un micro, tous les deux en bluetooth ou seulement l'enceinte bluetooth et micro en USB ? Merci !

alexylem commented 7 years ago

Avec une enceinte bluetooth. Je n'ai pas de micro bluetooth, donc pas encore pu essayé, mais je dois avoir un casque bluetooth (un headset), c'est aussi ce dont tu parles? Ou tu as un micro bluetooth indépendant?

yassinhox commented 7 years ago

En fait, je suis entrain d'essayer de faire fonctionner une oreillette Plantronics M70 pour faire office de micro mais aussi sortie son. J'ai juste de gros problème quant à la reconnaissance du hotword avec Snowboy par exemple. J'aurais aimé savoir si quelqu'un s'était déjà lancé dans ça ou est-ce peine perdue !

alexylem commented 7 years ago

Tu as connecté ton headset comment? Tu arrives à le faire fonctionner avec Jarvis dès à présent? Ca marche ou ca marche pas... je veux dire si ton micro est reconnu et que le hotword ne marche pas à tous les coup, alors il faudra regarder du côté des settings de snowboy ou de la qualité du micro. Mais au niveau connectivité c'est tout ou rien ca peut pas être entre les 2 😄

alexylem commented 7 years ago

Je viens de publier une première version expérimentale sur la branche beta: Menu Settings > General > Branch > beta

Pour tester: Menu Settings > Audio > Bluetooth image

J'attends vos premiers retours avec impatience.

guegrer commented 7 years ago

super interessant une alternative a kalliope dommage qu'elle ne supporte pas le chip https://getchip.com/ enfin snowboy pb dans le script d'install des dependances... pour le bluetooth visiblement youness decrit bien le job....

yassinhox commented 7 years ago

@alexylem J'ai bien connecté mon micro grâce à pulseaudio mais sans avoir de (bons) résultats. J'ai longtemps pensé que c'était un problème de reconnaissance de micro mais au finale non, je pense que c'est vraiment une histoire de qualité de micro.

miguipda commented 7 years ago

Bonjour à tous,

Je ne compte utiliser que Jarvis comme coeur domotique de ma maison. De ce fait, pas de possibilité de disposer d'un serveur PulseAudio (par exemple sur Jeedom ou autre). Ayant investi dans un RPi3 pour accueillir Jarvis, je ne compte pas réinjecter de l'argent dans une box domotique. Du coup, à mon sens, Jarvis (dans son coeur) doit permettre un usage PuseAudio comme serveur ou comme client. Je vous lis en parfait progression pour son usage en client, mais phase 2, en mode serveur, svp ;-) Vous allez mieux me comprendre avec ce qui suit.

@alexylem : je te rejoins dans la complexité de Pulseaudio que je n'ai pas non plus encore creusée, mais l'intérêt que je crois y avoir lu est entre autre qu'on peut orienter l'envoi de son vers un client précis lorsque c'est nécessaire. Resterait alors à voir si il peut aussi malgré tout orienter certains sons vers tous les clients disponibles. Voici alors l'intérêt envisage : 1.en considérant qu'on rentre à la maison et que seul le haut-parleur Bluetooth est (toujours) connecté. Alors tout envoi son se fait vers ce client (défaut) PulseAudio. 2.je suis réntré et j'ai connecté mon ordinateur portable sur mon réseau local (devenant alors également client PulseAudio). A considérer (filtrer) suivant le type de message (son) transmis, le son serait alors précisément (voire uniquement) orienté vers le client PulseAudio (de l'ordinateur portable : exemple, une synchronization de fichiers de celui-ci avec un serveur). A contrario, des messages génériques (sécurité, ...) seraient eux diffuses vers tous les clients (enceinte Bluetooth, ordinateur (portable, ...)).

D'où à mon sens l'intérêt de prévoir l'usage de PulseAudio comme client ou comme serveur pour le coeur de Jarvis. Comme mentionné au début de cette requête.

En espérant également pouvoir disposer de Jarvis avec (un coeur-serveur) PulseAudio pour mes clients (enceinte Bluetooth centralisée (défaut), mais mobile), je vous remercie à tous pour ce magnifique travail qui enrichi Jarvis (pour notre plus grand comfort et plaisir).

Excellente journée.

Miguipda ;-)

alexylem commented 7 years ago

@miguipda Je vois qu'il est possible avec PulseAudio d'envoyer vers plusieurs speakers en même temps, ex: http://www.deseret-tech.com/journal/pulseaudio-combine-sinks-for-simultaneous-output/ Reste à voir comment Jarvis choisira ou envoyer.

En attendant, prochaine grosse étape de ce ticket, support du headset bluetooth. PS: J'attends toujours vos retours sur le support actuel des speakers bluetooth (association, connection, ...). @francoismartin (vu que c'est toi qui a créé ce ticket) ?

Oliv4945 commented 7 years ago

Salut @alexylem, je m'intéresse aussi au support de Pulse Audio pour un autre cas d'utilisation : Je viens de tenter de mettre la commande Ecouter radio x==play http://fluxX.mp3 et ça fonctionne mais monopolise la sortie Alsa donc Jarvis plante. Du coup je me demande ce qui est si compliqué de passer sur PulseAudio ? J'ai vu ici que tu utilises paplay, pourquoi ne pas le généraliser et passer sur parec/pacat -d device --record | sox -t wav ....par défaut ? Est-ce justement pour ça que tu attends un retour d'expérience ?

Sinon sur cette page wiki il y a un .asoundrc qui, si j'ai bien compris, dit à rec/play d'utiliser Pulse Audio... à voir car Pulse Audio fini par utiliser Alsa... :/ Je testerai à l'occasion.

~/.asoundrc (or /etc/asound.conf)
# Create an alsa input/output using specific PulseAudio sources/sinks
 pcm.pulse-example1 {
     type pulse
     device "my-combined-sink" # name of a source or sink
     fallback "pulse-example2" # if combined not available
 }

 pcm.pulse-example2 {
     type pulse
     device "other-sound-card" # name of a source or sink
     # example: device "alsa_output.pci-0000_00_1b.0.analog-stereo"
 }

 # Create an alsa mixer using specific PulseAudio sources/sinks
 # these can be tested with "alsamixer -D pulse-example3"
 ctl.pulse-example3 {
     type pulse
     device "my-output" # name of source or sink to control

     # example: always control the laptop speakers:
     # device "alsa_output.pci-0000_00_1b.0.analog-stereo"
     fallback "pulse-example4" # supports fallback too
 }

 # Mixers also can control a specific source and sink, separately:
 ctl.pulse-example4 {
     type pulse
     sink "my-usb-headphones"
     source "my-internal-mic"

     # example: output to HDMI, record using internal
     sink "alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1"
     source "alsa_input.pci-0000_00_1b.0.analog-stereo"
 }

 # These can override the default mixer (example: for pnmixer integration)
 ctl.!default {
     type pulse
     sink "alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1"
     source "alsa_input.pci-0000_00_1b.0.analog-stereo"
 }
Oliv4945 commented 7 years ago

Je viens de créer une branche Pulse Audio ici, qui l'utilise (paplay/parec). Prochaine étape : la lecture du son sur un PC en réseau :p Attention il faut installer/démarrer PulseAudio manuellement.

Oliv4945 commented 7 years ago

Je viens d'essayer : Micro et hp déportés sur un autre PC via pulseaudio, ça fonctionne !