All of lore.kernel.org
 help / color / mirror / Atom feed
* softvol plugin question
@ 2008-05-07 13:34 Will Wagner
  2008-05-07 17:17 ` Gustavo da Silva Serra
  0 siblings, 1 reply; 4+ messages in thread
From: Will Wagner @ 2008-05-07 13:34 UTC (permalink / raw)
  To: alsa-devel

Hi,

I have successfully set up alsa for my custom hardware and am using 
sofvol plugin to do volume control as my hardware does not support it.

The problem I am having is that the softvol control does not appear to 
amixer until I have first used the softvol plugin with aplay. Is there a 
simple way of 'loading' the softvol plugin at startup so that the 
control gets created immediately?

Thanks,

Will.
-- 
------------------------------------------------------------------------
Will Wagner                                     will_wagner@carallon.com
Senior Project Engineer                  Office Tel: +44 (0)20 7371 2032
Carallon Ltd, Studio G20, Shepherds Building, Rockley Rd, London W14 0DA
------------------------------------------------------------------------

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: softvol plugin question
  2008-05-07 13:34 softvol plugin question Will Wagner
@ 2008-05-07 17:17 ` Gustavo da Silva Serra
  2008-05-07 18:25   ` Will Wagner
  0 siblings, 1 reply; 4+ messages in thread
From: Gustavo da Silva Serra @ 2008-05-07 17:17 UTC (permalink / raw)
  To: alsa-devel

I had this problem with alsamixer itself. It doesn't appear until I call 
"alsactl restore". To automate I added this line to /etc/rc.local.

Will Wagner escreveu:
> Hi,
>
> I have successfully set up alsa for my custom hardware and am using 
> sofvol plugin to do volume control as my hardware does not support it.
>
> The problem I am having is that the softvol control does not appear to 
> amixer until I have first used the softvol plugin with aplay. Is there a 
> simple way of 'loading' the softvol plugin at startup so that the 
> control gets created immediately?
>
> Thanks,
>
> Will.
>   


-- 
Gustavo da Silva Serra        gustavo.serra@tet.com.br
———————————————————————————
Tools & Technologies - T&T Engenheiros Associados Ltda.
Projetos de SW & HW - Desenvolvendo soluções.
Rua Riachuelo, 1098 Conj. 1204
Centro - Porto Alegre - CEP 90010-272
Fone DDR: (51)3220-3290
Fone/Fax: (51)3220-3220 / 3220-3206
http://www.tet.com.br/                                             tet@tet.com.br

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: softvol plugin question
  2008-05-07 17:17 ` Gustavo da Silva Serra
@ 2008-05-07 18:25   ` Will Wagner
  2008-05-08 16:23     ` Takashi Iwai
  0 siblings, 1 reply; 4+ messages in thread
From: Will Wagner @ 2008-05-07 18:25 UTC (permalink / raw)
  To: Gustavo da Silva Serra; +Cc: alsa-devel

Gustavo da Silva Serra wrote:
> I had this problem with alsamixer itself. It doesn't appear until I call 
> "alsactl restore". To automate I added this line to /etc/rc.local.
> 

Thanks, that fixed it.

As an aside I had to patch alsa-utils/alsactl/names.c to make it work 
with my alsa lib as I have disabled midi & seq support. The patch is 
below, the problem with it is that alsa-lib does not expose in a header 
anywhere what is enabled/disabled (alsa-lib/include/config.h appears to 
be a private header that does not get installed).

--- alsa-utils-1.0.16/alsactl/names.c	2008-05-07 19:03:59.000000000 +0100
+++ alsa-utils-1.0.16/alsactl/names.c.new	2008-05-07 19:03:53.000000000 
+0100
@@ -282,6 +282,7 @@ static int probe_pcm(snd_config_t *confi
  	return 0;
  }

+#ifdef BUILD_RAWMIDI
  static int probe_rawmidi_virtual(snd_config_t *config,
  				 const char *name, const char *comment)
  {
@@ -411,6 +412,7 @@ static int probe_rawmidi(snd_config_t *c
  		return err;
  	return 0;
  }
+#endif // BUILD_RAWMIDI

  static int probe_timers(snd_config_t *config)
  {
@@ -473,6 +475,7 @@ static int probe_timer(snd_config_t *con
  	return 0;
  }

+#ifdef BUILD_SEQ
  static int probe_seq(snd_config_t *config)
  {
  	int err;
@@ -492,15 +495,20 @@ static int probe_seq(snd_config_t *confi
  		return err;
  	return 0;
  }
+#endif

  typedef int (probe_fcn)(snd_config_t *config);

  static probe_fcn * probes[] = {
  	probe_ctl,
  	probe_pcm,
+#ifdef BUILD_RAWMIDI
  	probe_rawmidi,
+#endif
  	probe_timer,
+#ifdef BUILD_SEQ
  	probe_seq,
+#endif
  	NULL
  };



-- 
------------------------------------------------------------------------
Will Wagner                                     will_wagner@carallon.com
Senior Project Engineer                  Office Tel: +44 (0)20 7371 2032
Carallon Ltd, Studio G20, Shepherds Building, Rockley Rd, London W14 0DA
------------------------------------------------------------------------

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: softvol plugin question
  2008-05-07 18:25   ` Will Wagner
@ 2008-05-08 16:23     ` Takashi Iwai
  0 siblings, 0 replies; 4+ messages in thread
From: Takashi Iwai @ 2008-05-08 16:23 UTC (permalink / raw)
  To: Will Wagner; +Cc: alsa-devel, Gustavo da Silva Serra

At Wed, 07 May 2008 19:25:46 +0100,
Will Wagner wrote:
> 
> Gustavo da Silva Serra wrote:
> > I had this problem with alsamixer itself. It doesn't appear until I call 
> > "alsactl restore". To automate I added this line to /etc/rc.local.
> > 
> 
> Thanks, that fixed it.
> 
> As an aside I had to patch alsa-utils/alsactl/names.c to make it work 
> with my alsa lib as I have disabled midi & seq support. The patch is 
> below, the problem with it is that alsa-lib does not expose in a header 
> anywhere what is enabled/disabled (alsa-lib/include/config.h appears to 
> be a private header that does not get installed).

A good point.  Although one can check the existence easily via some
ifdefs of constants that should be defined in each header, it'd be of
course better to have proper defines to indicate the availablity of
each component...


Takashi

> --- alsa-utils-1.0.16/alsactl/names.c	2008-05-07 19:03:59.000000000 +0100
> +++ alsa-utils-1.0.16/alsactl/names.c.new	2008-05-07 19:03:53.000000000 
> +0100
> @@ -282,6 +282,7 @@ static int probe_pcm(snd_config_t *confi
>   	return 0;
>   }
> 
> +#ifdef BUILD_RAWMIDI
>   static int probe_rawmidi_virtual(snd_config_t *config,
>   				 const char *name, const char *comment)
>   {
> @@ -411,6 +412,7 @@ static int probe_rawmidi(snd_config_t *c
>   		return err;
>   	return 0;
>   }
> +#endif // BUILD_RAWMIDI
> 
>   static int probe_timers(snd_config_t *config)
>   {
> @@ -473,6 +475,7 @@ static int probe_timer(snd_config_t *con
>   	return 0;
>   }
> 
> +#ifdef BUILD_SEQ
>   static int probe_seq(snd_config_t *config)
>   {
>   	int err;
> @@ -492,15 +495,20 @@ static int probe_seq(snd_config_t *confi
>   		return err;
>   	return 0;
>   }
> +#endif
> 
>   typedef int (probe_fcn)(snd_config_t *config);
> 
>   static probe_fcn * probes[] = {
>   	probe_ctl,
>   	probe_pcm,
> +#ifdef BUILD_RAWMIDI
>   	probe_rawmidi,
> +#endif
>   	probe_timer,
> +#ifdef BUILD_SEQ
>   	probe_seq,
> +#endif
>   	NULL
>   };
> 
> 
> 
> -- 
> ------------------------------------------------------------------------
> Will Wagner                                     will_wagner@carallon.com
> Senior Project Engineer                  Office Tel: +44 (0)20 7371 2032
> Carallon Ltd, Studio G20, Shepherds Building, Rockley Rd, London W14 0DA
> ------------------------------------------------------------------------
> 
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-05-08 16:23 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-07 13:34 softvol plugin question Will Wagner
2008-05-07 17:17 ` Gustavo da Silva Serra
2008-05-07 18:25   ` Will Wagner
2008-05-08 16:23     ` Takashi Iwai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.