[mythtv-users] MythTV not controlling volume with Intel-HDA driver (snd_intel_hda)

Nedim Cholich nedim.cholich at gmail.com
Thu Aug 10 11:00:56 UTC 2006


On 7/31/06, Michael T. Dean <mtdean at thirdcontact.com> wrote:
> On 07/30/2006 08:08 PM, Mark Knecht wrote:
>
> >   Has anyone else experienced this problem? On a new machine we got
> >for our son we are using the snd_intel_hda driver. What I'm finding so
> >far is that Xine controls volume correctly but  Myth does not.
> >
> >
>
> xine is probably controlling Master, not PCM or Front.
>
> >   I've chosen PCM audio in the setup, but when I change audio from
> >the keyboard using '[' or ']' volume doesn't change. The GUI shows
> >volume going up and down but the volume itself doesn't change at all.
> >
> >   Watching alsamixer at the same time I see nothing changing when
> >using Myth's volume control. If I adjust the PCM volume in alsamixer I
> >do not get any volume change, but if I change a control in alsamixer
> >called 'Front' then I get the volume I'm looking for.
> >
> >   I'm using /dev/mixer and the mixer controls PCM in Myth's setup. I
> >don't see how to tell Myth to control Front, nor am I clear why I
> >should have to.
> >
>
> With Myth, you have the option of "Mixer controls Master" and "Mixer
> controls PCM."   If you change your setting to "Mixer controls Master",
> it will probably work for you.  If not, or if you want to control
> anything else, you'll have to use an external program.
>
> Use internal volume controls
> - MythTV can control the PCM and master mixer volume. If you prefer to
> use an external mixer program, then disable this option.
>
> So, uncheck that option. Then, set up your system to use an external
> program for volume. For example, if you're using LIRC, set your volume
> buttons like:
>
> begin
>   prog = irexec
>   button = volume-up
>   config = /path/to/volume.sh up &
>   repeat = 2
> end
> begin
>   prog = irexec
>   button = volume-down
>   config = /path/to/volume.sh down &
>   repeat = 2
> end
> begin
>   prog = irexec
>   button = mute
>   config = /path/to/volume.sh mute &
>   config = /path/to/volume.sh unmute &
>   repeat = 0
> end
>
> and use the attached script (modified as directed in the comments) to
> control your volume.
>
> Yes, I know there are two config lines in the definition for mute.  They
> will cause the mute button to work as a toggle--muting the sound the
> first time you press it and unmuting the second time.  Adjust the repeat
> to give
> you the speed of volume changes you desire when holding down vol-up or
> vol-down.
>
> Note, also, that you need to change the button names to whatever you've
> defined in your lircd.conf and you *must* start irexec (i.e. add the
> lines, "killall irexec" and  "irexec -d" (no quotes)--and in the order
> given ;)--to .xinitrc).
>
> Mike

A+ for this tip!

I thought this problem is not solvable until I figured my frontend
uses PCM to regulate volume of spdif out. Installed the script with
slight modifications and voila, works like a charm!

I had to add the IEC958 control that regulates spdif out to the list
inside the script for mute to work properly. So I only left PCM and
IEC958. This did the trick.

Thanks a lot!


More information about the mythtv-users mailing list