Hi, With a fresh ubuntu 8.10 install, spdif output worked as expected. I unmuted both IEC958 and IEC958 Digital in alsamixer, and when I played audio with mplayer, I would get audio through my spdif output. Then, fast forward a couple of days, and it randomly stopped working (I have no idea what triggered this). I would try to play something in mplayer, and nothing would come out of the spdif output. However, I discovered that I could get spdif output working with the mplayer option -ao alsa:device=spdif. This was the only way I could get sound to play - I tried different combinations of alsa:device=hw=N,M (N, M being integers), but only spdif worked. So, I figured there was some setting that got flipped when it randomly stopped working, and kept being set back by /etc/init.d/alsa-utils via /var/lib/alsa/asound.state. So, I stopped alsa-utils, renamed asound.state, and restarted the computer, hoping that all previous settings would be blown away. Even though a new asound.state was created, and many of the volumes, etc, looked reset (like the master volume was muted), other volume levels did not seem to be touched. Additionally, this "hidden setting" was also still wrong - mplayer would only play with device=spdif. After a lot of trial and error, and running a lot more programs, (like speaker-test), this magic setting flipped back (who knows when) and mplayer started working again (it would play audio through spdif by default as well as when I used alsa:device=hw=0,M and alsa:device=spdif). Because my old non-working asound.state was saved, I could identify the exact setting. I've attached the diff as asound.diff. By manually changing this setting by stopping the alsa-utils service, chaning the setting and then starting the alsa-utils service, I can toggle between the two behaviors I've been experiencing (mplayer working by default, and mplayer needing the alsa:device=spdif in order to work). Since both asound.state files have the exact same levels in alsamixer, how the heck do I properly make this setting? What do the numbers in the setting mean? If anyone has any knowledge or ideas that could bring some sanity to my situation, it would be greatly appreciated. Thanks, Kyle PS: To add to the mystery here, I've also included the output of aplay -L and aplay -l (it's the same for both asound.state files). Nowhere in here do I see any mention of spdif or of iec958. So why is mplayer working with alsa:device=spdif? Where is that going to? % aplay -l **** List of PLAYBACK Hardware Devices **** card 0: NVidia [HDA NVidia], device 0: ALC888 Analog [ALC888 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 1: ALC888 Digital [ALC888 Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 % aplay -L default:CARD=NVidia HDA NVidia, ALC888 Analog Default Audio Device front:CARD=NVidia,DEV=0 HDA NVidia, ALC888 Analog Front speakers surround40:CARD=NVidia,DEV=0 HDA NVidia, ALC888 Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=NVidia,DEV=0 HDA NVidia, ALC888 Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=NVidia,DEV=0 HDA NVidia, ALC888 Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=NVidia,DEV=0 HDA NVidia, ALC888 Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=NVidia,DEV=0 HDA NVidia, ALC888 Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers hdmi:CARD=NVidia,DEV=0 HDA NVidia HDMI Audio Output null Discard all samples (playback) or generate zero samples (capture)
Attachment:
asound.diff
Description: Binary data
------------------------------------------------------------------------------ Check out the new SourceForge.net Marketplace. It is the best place to buy or sell services for just about anything Open Source. http://p.sf.net/sfu/Xq1LFB
_______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user