Justement, j'évite de trop m'avancer sur ce sujet de « D-Bus dans le noyau » parce que
je n'y connais pas grand chose au noyau
ça m'a l'air franchement lointain
je ne vois pas ce que ça changerai pour moi, et c'est peut-être la seule chose que j'ai vraiment dite, en fait.
Quand j'écris « Mais quelque soit l'avenir, il serait bon qu'Alsa soit interrogeable officiellement via D-Bus », ça n'a rien à voir avec le noyau, et ça reste vrai.
Je ne parle de D-Bus dans le noyau que parce que tankey< en a parlé (il doit faire référence à ça. Ce à quoi je répond prudemment « mais je ne sais pas trop ce que ça changera », et je termine en disant « faut-il encore qu'Alsa parle D-Bus », bref mon problème n'est pas « D-Bus et le noyau » mais bien « D-Bus et Alsa ». Il n'y a pas de confusion ici.
Donc merci pour tes explications sur D-Bus qui sont intéressantes, mais je ne vois pas où tu vois de la confusion quand je ne fais que répéter que « D-Bus et le noyau » ne me concerne pas.
Si tu veux parler Alsa via D-Bus, ça veut dire qu'il va falloir un démon qui applique la configuration qui était appliqué par libasound
Je n'en suis même pas à vouloir configurer quoi que ce soit ! Je veux juste une description de ce qui est accessible via Alsa :
Combien de cartes, leur nom, les canaux, les échantillonnages etc. Bref, un peu comme un un /proc/cpuinfo mais pour les cartes sons.
Franchement, il y a déjà pulseaudio pour ça
Euh, s'il faut chercher une confusion, elle est là ! Je veux une interface accessible depuis Python 3 pour savoir quel matériel géré par Alsa est disponible sur mon système.
D'une, je ne configure rien sur les cartes, de deux, ce n'est pas moi qui produit du son (je délègue ça), donc je ne parle pas aux cartes sons.
J'ai besoin de connaître les cartes gérées par Alsa, pas de connaître les hypothétiques cartes vues par PulseAudio, à travers PulseAudio.
PulseAudio est complètement hors-sujet ici. Je n'ai rien à faire de savoir ce que PulseAudio expose comme interface. Et surtout je n'ai pas besoin de PulseAudio pour envoyer le son aux cartes son (et surtout j'ai besoin de ne pas passer par PulseAudio pour le faire).
Alsa marche très bien, tout ce que je veux c'est une interface qui me dise ce qui est exposé par Alsa, pas ce qui est exposé par une abstraction au dessus de Alsa. Utiliser PulseAudio est la meilleure manière de ne pas répondre à ma problématique. J'aurai plein d'informations mais elles me seront inutiles.
Mon projet gère des entrées et sorties sons (cartes sons, flux réseau) et leurs connections. PulseAudio, ce sont des entrées et sorties sons comme d'autres, à coté de Alsa. En gros, Depuis PulseAudio arrive le son mixé des applis qui savent causer PulseAudio (totem, rhythmbox…), et vers PulseAudio part le son vers des applis de capture sonore qui savent causer PulseAudio.
PulseAudio peut envoyer le son des applis à Alsa, mais peut aussi ne pas le faire. PulseAudio peut fonctionner sans aucune carte son, PulseAudio peut être branché sur Jack au lieu de Alsa par exemple (Le même Jack pouvant hypothétiquement ne pas être connecté à Alsa, ça existe (cf. FFADO), ou même juste pour essayer, voir le pilote dummy).
Maintenant faisons une analogie. Imagine quelqu'un qui pose la question « Bonjour, je suis musicien et je voudrais configurer jackd, mais je ne sais pas si ma carte peut-être gérée sans latence avec l'option -hwmon, comment puis-je le savoir ? », et toi tu réponds. « Franchement il y a PulseAudio pour ça ». Confusion.
La confusion vient peut-être du fait qu'Alsa fait trop de choses, choses qui peuvent être comparées à des choses similaires dans PulseAudio, dans Jackd, et autres systèmes qui se branchent au dessus d'Alsa. Quand je parle d'Alsa, je ne parle pas de l'échantillonneur et convertisseur plug, je ne parle pas du mixeur dmix/dsnoop, non, je parle uniquement de la partie « pilotes de carte son » et « description du matériel », cette partie qui est utilisée par Jackd et PulseAudio.
Voilà, pour faire simple, un schéma juste après.
J'ai besoin de savoir ce qu'il y a au dessous de la ligne pour pouvoir connecter ce qu'il y a au dessus.
PulseAudio ne m'est pas d'une grande aide, ce n'est qu'une fonctionnalité supplémentaire que je peux choisir de gérer.
[^] # Re: Avertissement (attention les yeux)
Posté par Thomas Debesse (site web personnel, Mastodon) . En réponse au journal Exposer un ou des modules Python sur D-Bus [proof of concept]. Évalué à 5.
Justement, j'évite de trop m'avancer sur ce sujet de « D-Bus dans le noyau » parce que
Quand j'écris « Mais quelque soit l'avenir, il serait bon qu'Alsa soit interrogeable officiellement via D-Bus », ça n'a rien à voir avec le noyau, et ça reste vrai.
Je ne parle de D-Bus dans le noyau que parce que tankey< en a parlé (il doit faire référence à ça. Ce à quoi je répond prudemment « mais je ne sais pas trop ce que ça changera », et je termine en disant « faut-il encore qu'Alsa parle D-Bus », bref mon problème n'est pas « D-Bus et le noyau » mais bien « D-Bus et Alsa ». Il n'y a pas de confusion ici.
Donc merci pour tes explications sur D-Bus qui sont intéressantes, mais je ne vois pas où tu vois de la confusion quand je ne fais que répéter que « D-Bus et le noyau » ne me concerne pas.
Je n'en suis même pas à vouloir configurer quoi que ce soit ! Je veux juste une description de ce qui est accessible via Alsa :
Combien de cartes, leur nom, les canaux, les échantillonnages etc. Bref, un peu comme un un
/proc/cpuinfomais pour les cartes sons.Euh, s'il faut chercher une confusion, elle est là ! Je veux une interface accessible depuis Python 3 pour savoir quel matériel géré par Alsa est disponible sur mon système.
D'une, je ne configure rien sur les cartes, de deux, ce n'est pas moi qui produit du son (je délègue ça), donc je ne parle pas aux cartes sons.
J'ai besoin de connaître les cartes gérées par Alsa, pas de connaître les hypothétiques cartes vues par PulseAudio, à travers PulseAudio.
PulseAudio est complètement hors-sujet ici. Je n'ai rien à faire de savoir ce que PulseAudio expose comme interface. Et surtout je n'ai pas besoin de PulseAudio pour envoyer le son aux cartes son (et surtout j'ai besoin de ne pas passer par PulseAudio pour le faire).
Alsa marche très bien, tout ce que je veux c'est une interface qui me dise ce qui est exposé par Alsa, pas ce qui est exposé par une abstraction au dessus de Alsa. Utiliser PulseAudio est la meilleure manière de ne pas répondre à ma problématique. J'aurai plein d'informations mais elles me seront inutiles.
Mon projet gère des entrées et sorties sons (cartes sons, flux réseau) et leurs connections. PulseAudio, ce sont des entrées et sorties sons comme d'autres, à coté de Alsa. En gros, Depuis PulseAudio arrive le son mixé des applis qui savent causer PulseAudio (totem, rhythmbox…), et vers PulseAudio part le son vers des applis de capture sonore qui savent causer PulseAudio.
PulseAudio peut envoyer le son des applis à Alsa, mais peut aussi ne pas le faire. PulseAudio peut fonctionner sans aucune carte son, PulseAudio peut être branché sur Jack au lieu de Alsa par exemple (Le même Jack pouvant hypothétiquement ne pas être connecté à Alsa, ça existe (cf. FFADO), ou même juste pour essayer, voir le pilote
dummy).Maintenant faisons une analogie. Imagine quelqu'un qui pose la question « Bonjour, je suis musicien et je voudrais configurer jackd, mais je ne sais pas si ma carte peut-être gérée sans latence avec l'option -hwmon, comment puis-je le savoir ? », et toi tu réponds. « Franchement il y a PulseAudio pour ça ». Confusion.
La confusion vient peut-être du fait qu'Alsa fait trop de choses, choses qui peuvent être comparées à des choses similaires dans PulseAudio, dans Jackd, et autres systèmes qui se branchent au dessus d'Alsa. Quand je parle d'Alsa, je ne parle pas de l'échantillonneur et convertisseur
plug, je ne parle pas du mixeurdmix/dsnoop, non, je parle uniquement de la partie « pilotes de carte son » et « description du matériel », cette partie qui est utilisée par Jackd et PulseAudio.Voilà, pour faire simple, un schéma juste après.
J'ai besoin de savoir ce qu'il y a au dessous de la ligne pour pouvoir connecter ce qu'il y a au dessus.
PulseAudio ne m'est pas d'une grande aide, ce n'est qu'une fonctionnalité supplémentaire que je peux choisir de gérer.
1 mixage : ici il ne s'agit pas du mixage du volume, mais du mixage de plusieurs sons simultanément
ce commentaire est sous licence cc by 4 et précédentes