[ALSA] [asoundrc] Créer un canal de mixage virtuel... ?

Créer un canal de mixage virtuel... ? [ALSA] [asoundrc] - Multimédia - Linux et OS Alternatifs

Marsh Posté le 23-08-2006 à 05:23:43    

Salut à tous,
 
Voici mon problème : j'ai récemment fait l'acquisition d'une Terratec Phase 22 dans le but d'avoir un meilleur son que sur ma vieillissante Audigy dont le rendu me décevait de plus en plus... La phase 22 est parfaitement reconnue par le pingouin et utilise le driver alsa snd-ice1724 (chipset Envy24PT/HT). Bon jusque là je ne suis pas déçu par le son, très loin de là :-), même si j'ai dû m'adapter aux sorties symétriques des signaux, une chose que je connaissais pas. Bref ce problème est réglé.
 
L'ennui c'est que, pour régler le volume de sortie de la carte, je n'ai de disponible dans le mixer (alsamixer quoi, ou n'importe quel autre frontend) que deux canaux nommés "DAC" et "DAC 1" correspondant donc au canal gauche et au canal droit du signal stéréo de sortie, ces deux canaux étant sur deux prises jack séparées sur la carte (car comme je disais le signal sort en symétrique, 'Balanced' en anglais).
 
Mon seul et unique problème est que je ne peux régler le volume de ces deux canaux, bref le volume du son quoi ^^, en même temps. Je n'ai pas l'habituel canal "Master" qui me permet de régler le volume global, je dois monter ou descendre les deux l'un après l'autre... Et étant donné que je n'ai aucun autre canal de réglage dans le mixer (pas de PCM ni rien) je ne peux finalement gérer mon volume "normalement" que via un  mixeur logiciel, propre à chaque application (et pas toujours existant). Et pour plein de raisons, c'est très chiant.
 
Je me suis renseigné sur alsa, particulièrement sur la configuration avancée via le fichier asoundrc, et je pense qu'il y a là moyen de créer un canal "virtuel", à ajouter aux autres dans le mixer, juste pour pouvoir contrôler le volume des canaux DAC et DAC 1 simultanément. Seulement j'ai beau essayer de lire la doc, examiner les exemples, et chercher sur google, je dois admettre mon impuissance, je ne comprends que la base du truc et je suis incapable d'arriver à faire ça... Donc s'il y a des pros dans le coin pour me donner un coup de main, j'en serai ravi :-)
 
La moindre idée ou piste de recherche est bonne à prendre aussi !
 
Merci d'avance.

Reply

Marsh Posté le 23-08-2006 à 05:23:43   

Reply

Marsh Posté le 24-08-2006 à 10:43:28    

up

Reply

Marsh Posté le 02-09-2006 à 13:21:47    

up (ca m'interesse aussi :-) )

Reply

Marsh Posté le 19-09-2006 à 01:19:57    

Encore un up on sait jamais...

Reply

Marsh Posté le 24-10-2006 à 03:39:50    

Ce n'est pas ça, ce que tu cherches ?
http://alsa.opensrc.org/Envy24Control

Reply

Marsh Posté le 24-10-2006 à 04:16:38    

Oooh.... C'est intéressant ça :-)
Ça a pas l'air de régler vraiment mon problème (réglage volume via kmix) mais je vais essayer quand même. Merci !
 
edit : Et merde ça ne marche qu'avec les chipset envy1712 et j'ai un 1724 :'(


Message édité par Nonor_ le 24-10-2006 à 04:19:07
Reply

Marsh Posté le 01-02-2007 à 21:40:11    

J'avais envie de pouvoir brancher un casque, donc j'ai aussi regardé ce qui était faisable.
Au cas où, je donne ce que j'ai fait pour le réglage du volume par le clavier.
 
J'ai aussi regardé du coté d'alsa, mais je n'ai rien vu d'intéressant pour les controles.
 
Dans le profil bash, j'ai défini une fonction :

Citation :

setvolt0() { amixer -c T22 set DAC,0 ${1:-77%}; amixer -c T22 set DAC,1 ${1:-77%}; }


Et dans le paramétrage des touches de KDE (menu "Actions d'entrées" ), j'ai affecté les commandes suivantes à des touches "multimédia" du clavier.

Citation :

bash -lc 'setvolt0 3%-'
bash -lc 'setvolt0 3%+'


---------------
Legalize it @HFR
Reply

Marsh Posté le 02-02-2007 à 01:23:42    

En effet c'est une solution, partielle, mais quand même...
Sinon le machin est faisable via un mastodonte appelé Jack... Pas évident de l'utiliser avec toutes les applications au quotidien :-/
 
Bref toujours pas LA solution encore...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed