Date: Thu, 14 Jan 2010 10:33:01 +0100 From: Ivan Voras <ivoras@freebsd.org> To: freebsd-questions@freebsd.org Subject: Re: any port use /dev/dsp directly? Message-ID: <himoca$ckh$2@ger.gmane.org> In-Reply-To: <20100114024242.GA9744@thought.org> References: <20100114012059.GA3921@thought.org> <20100114013746.GB67999@orion.hsd1.pa.comcast.net> <20100114024242.GA9744@thought.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Gary Kline wrote: > On Wed, Jan 13, 2010 at 08:37:46PM -0500, Glen Barber wrote: >> Gary Kline wrote: >>> I have a couple short programs where I mess with /dev/dsp. I'll open >>> check to be sure the speed is right, open in mono or stereo, &c. is >>> there anything is ports that uses this dev by opening, doing ioctls and >>> so forth? >>> >>> I think I may need to flush my data before closing the FILE *FP. Not >>> sure; just guessing. >>> >> I don't know if this directly answers your question, but from sound(4): >> >> hw.snd.default_unit >> Default sound card for systems with multiple sound cards. When >> using devfs(5), the default device for /dev/dsp. Equivalent to a >> symlink from /dev/dsp to /dev/dsp${hw.snd.default_unit}. >> >> FWIW, www/linux-f10-flashplugin10 is using /dev/dsp0.0 on my system at the >> moment. >> >> Regards, >> > > > Thanks, but I already read the sound man page. I am trying to emulate > > /bin/cat WAVEFILE > /dev/dsp > > which works well by opening /dev/dsp, making sure everything is set, > the writing the bytes of the WAVEFILE thru/into the device with a > write() call. It works, the sound echoes, but at the end is an ugly > HISSing or FIZZZZ sound. > > Anybody seen anything like this? Doesn't hurt to ask, given the > brainpower on this list. But this may be something I have got to > figure out. > > (There doesn't seem to be any way of getting rid of that annoying > HISS. ... .) I have no idea how /dev/dsp really works but what you say sounds like there is some canonical buffer size it expects - like 64 kB or something like that, and it (wrongly) interprets garbage memory past your write as sound data. Try creating a larger buffer and fill the memory past the end of your sound with zeroes.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?himoca$ckh$2>