RE: [CBLX] Cherche enregistreur audio tout simple en ligne de commande

[ Thread Index | Date Index | More lists.tuxfamily.org/carrefourblinux Archives ]


Salut Aldo,

A force d'éplucher la doc de libasound, il semble que j'arrive presqu'à mon but. En effet, quand on crée une "entrée audio" dans son appli, on initialise tout un "struct" dans lequel on donne un champ qui va peut-être faire mon bonheur: ils l'appellent "period". Ce champ "period" définit la taille du buffer qu'on récupère quand on appelle "read()" sur l'"entrée audio" qu'on vient d'initialiser.

Enfin, dire que "period" définit la taille du buffer, c'est aller un peu vite en besogne puisque pour trouver la taille en question, il faut appliquer une sombre formule dans laquelle intervient "period", (on s'en doute), le taux d'échantillonnage demandé, (nombre d'échantillons par seconde mesuré en Hz), la taille d'un échantillon, (8, 12, 16, 24 ou 32 bits), et le nombre de canaux d'entrée.

Maintenant, pour ce que tu appelles "chef d'orchestre", je crois de plus en plus comprendre qu'Alsa à lui tout seul ne peut pas l'être. Certes, Alsa va fournir tout ce qu'il faut pour piloter le matériel audio mais visiblement, il s'arrête là. Charge à des outils comme jackd, PulseAudio ou ta propre appli de définir ce qu'ils en feront.

En pratique, ce qui nous fait penser à ce que tu dis, c'est que, par exemple, quand PulseAudio tourne, il se "réserve" les périphériques audio qu'on lui demande d'utiliser. Autrement dit, il demande à libasound, un contrôle exclusif sur ce matériel, ce qui revient à en interdire l'accès à toute autre application. Pour contourner ça, PulseAudio fournit une commande qu'ils appellent "pasuspender". Si tu fais "pasuspender -- <ton_player_préféré_pas_compatible_pulse> <ta_chanson>", Pulse va se mettre en veille jusqu'à ce que ton player ait fini de jouer. Par exemple, ma commande pour lancer un serveur jackd était la suivante:

# pasuspender -- jackd -d alsa <mes_paramètres_alsa>

A l'inverse, jackd ne fournit aucun autre moyen que d'éteindre le serveur si on veut utiliser autre chose temporairement. Enfin, si je peux me passer de jackd, ça m'arrangera infiniment. Et plus encore, si j'arrivais à faire en sorte qu'Orca continue de me parler même quand PulseAudio est éteint, (ce qui n'est pas le cas juste maintenant), ça m'arrangerait encore plus.

Bonne journée. @+ ChD

-----Original Message-----
From: Aldo [mailto:info@xxxxxxxxxxxx] 
Sent: Thursday, January 21, 2016 10:55 AM
To: carrefourblinux@xxxxxxxxxxxxxxxxxxx
Subject: Re: [CBLX] Cherche enregistreur audio tout simple en ligne de commande

On Thu, Jan 21, 2016 at 05:30:36AM +0100, Pierre Lorenzon wrote:
>   Jackd est un serveur
>   qui se met en surcouche des drivers de son autant que j'y ai
>   compris quelque chose 


Je compare jackd à exim vs. postfix; c'est soit l'un soit l'autre; pour le
son ça m'etonnerait qu'il en soit autrement, à moisn d'avoir des problèmes
comme il en existe enetre alsa et pulse audio: en audio il fuat bien qu'il y
ait un maître/chef d'orchestre.
Possible que tout ça soit désormais harmonisé, mais à lire les docs en
ligne, y a bcp de résultats sur conflicts ou troubleshooting, idem vs.
pulse.
L'ideal est donc un seul maître à bord.

Aldo.

-- 
   CBLX - CarrefourBLinuX MailingListe 
   Pour obtenir de l'aide, envoyez le sujet  help  à: 
   carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
   Archives: 
   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
   ou 
   http://www.mail-archive.com/carrefourblinux@xxxxxxxxxxxxxxxxxxx/


--
   CBLX - CarrefourBLinuX MailingListe
   Pour obtenir de l'aide, envoyez le sujet  help  à:
   carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
   Archives:
   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
   ou
   http://www.mail-archive.com/carrefourblinux@xxxxxxxxxxxxxxxxxxx/


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/