Comment puis-je connaître les capacités des périphériques ALSA sans devoir d'abord ouvrir le périphérique? Le problème est, je dois fournir les paramètres à la fonction snd_pcm_open()
pour utiliser les fonctions de test qui me paraissent stupides. Pourquoi demander s'il s'agit d'un périphérique de lecture ou d'enregistrement si je dois d'abord le signaler à la fonction ouverte? Par exemple, je voudrais énumérer tous les appareils de lecture, mais la seule façon que je peux penser est d'essayer d'ouvrir tous les appareils que je trouve (avec snd_device_name_hint()
) et essayer de les ouvrir en mode lecture et si je parviens à ouvrir , tout va bien.Comment connaître les fonctionnalités des périphériques audio ALSA par programmation sous Linux sans ouvrir le périphérique
Le problème est, avec toutes les variations possibles (taux d'échantillonnage, canaux, etc.), il y aurait un grand nombre d'open() que j'ai besoin d'effectuer pour trouver les paramètres.
Cela ne me dit pas tout ce que je ne sais pas snd_device_name_hint(). Il ne semble pas indiquer, par exemple, quels taux d'échantillonnage chaque appareil prend en charge. De plus, je ne dirais pas qu'il est très simple d'appeler cela à partir du code C et de gérer la sortie même si elle a produit les informations dont j'ai besoin ... – Makis