At Mon, 07 Aug 2006 09:52:08 -0300, Tim Burrell wrote: > > >>>> I'm trying to get multichannel sound working on my nvidia nforce 590 > >>>> based mobo that uses the intel hd audio (nvidia mcp55) chipset. It > >>>> plays fine in two channels but any attempts to use -Dsurround51 or > >>>> -Dsurround40 fail. Ie: > >>>> > >>>> Playing WAVE 'space_battle.wav' : Signed 16 bit Little Endian, Rate > >>>> 44100 Hz, Channels 6 > >>>> aplay: set_params:906: Channels count non available > >>> That's correct. Use -Dplug:surround40, because the count of channels from > >>> the .wav file has to be converted to four. > >> I just upgraded to 1.0.12_rc2, and I've got a lot more mixer controls in > >> alsamixer now. I can see front, rear, surround, etc. And now I can > >> finally specify -Dplug:surround71 to get 8 channel audio! > >> > >> However, there is one problem. On my card the channels are not exactly > >> correct when running speaker-test. The side and rear speakers are > >> reversed. I double checked this with my card's manual, and in Windows. > > > > Does -Dplug:surround51 work as expected? > > speaker-test hangs when I use plug:surround51, however since upgrading I > incorrectly said that mplayer hangs when playing multichannel audio. > When playing a 6 channel audio file with mplayer (it says it uses > surround51) it also has the rear and side channels reversed. Obviously > since it's 6 channel audio the side channels are not used, but the rear > channels come out of the side speakers. OK, then it's either a bug of BIOS or a specification of HD-audio. A tentative patch is below. > >> Also, curiously, using the same settings as speaker-test (which works > >> fine), aplay hangs when trying to play multichannel audio files. Same > >> for mplayer (with or without -channels settings). > > > > What do you mean "hang"? > > By hang, I mean aplay and speaker-test open the device fine, and begin > playing, but do not play any samples and then just sit there > indefinitely. Interesting. So, you started like: % aplay -Dplug:surround51 somefile.wav ?? Does any process block the sound device? You can check it via "lsof /dev/snd/pcm* /dev/dsp*", for example. > Ie I see the following output from `speaker-test > -Dplug:surround51 -c 6`: > > Playback device is plug:surround51 > Stream parameters are 48000Hz, S16_LE, 6 channels > Using 16 octaves of pink noise > Rate set to 48000Hz (requested 48000Hz) > Buffer size range from 22 to 5461 > Period size range from 11 to 2730 > Using max buffer size 5460 > Periods = 4 > was set period_size = 1365 > was set buffer_size = 5460 > 0 - Front Left > > Then no audio is heard and it sits there and does nothing until I press > ctrl-c. > > The same goes for aplay using either -Dplug:surround51 OR -Dplug:surround71. "same" == "aplay doesn't process any samples"? What shows "aplay -v -Dplug:surround51 some6ch.wav" ? Takashi diff -r 3f196675e724 pci/hda/hda_codec.c --- a/pci/hda/hda_codec.c Fri Aug 04 19:08:03 2006 +0200 +++ b/pci/hda/hda_codec.c Mon Aug 07 14:55:42 2006 +0200 @@ -2122,16 +2122,19 @@ int snd_hda_parse_pin_def_config(struct */ switch (cfg->line_outs) { case 3: + case 4: nid = cfg->line_out_pins[1]; cfg->line_out_pins[1] = cfg->line_out_pins[2]; cfg->line_out_pins[2] = nid; break; +#if 0 /* seems wrong */ case 4: nid = cfg->line_out_pins[1]; cfg->line_out_pins[1] = cfg->line_out_pins[3]; cfg->line_out_pins[3] = cfg->line_out_pins[2]; cfg->line_out_pins[2] = nid; break; +#endif } /* ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-devel