Date: Thu, 31 Dec 2009 12:11:17 -0800 From: Gary Kline <kline@thought.org> To: Lowell Gilbert <freebsd-questions-local@be-well.ilk.org> Cc: FreeBSD Mailing List <freebsd-questions@FreeBSD.ORG> Subject: Re: is there a way to convert an audio file into a char array? Message-ID: <20091231201117.GB3733@thought.org> In-Reply-To: <447hs3kmco.fsf@be-well.ilk.org> References: <20091231093637.GA1832@thought.org> <447hs3kmco.fsf@be-well.ilk.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 31, 2009 at 01:52:07PM -0500, Lowell Gilbert wrote:
> Gary Kline <kline@thought.org> writes:
>
> > In working toward my goal of writing a keyboard driver with builtin
> > clicks, I'm investigating different angles. One would be to find
> > existing audio files and catting then thru /dev/dsp.
> >
> > Is there a way of turning any audio file/format into a character
> > array---in the way that a graphic can be turned into a character
> > array?
> >
> > For example, I turned the graphic of a small arrow to the following:
> >
> > unsigned char uparrow_bits[] = {
> > 0x80, 0x01, 0xc0, 0x03, 0xe0, 0x07, 0xf0, 0x0f, 0xf8, 0x1f, 0xfc, 0x3f,
> > 0xfe, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xf8, 0x1f, 0xf8, 0x1f};
> >
> > Are there tools to do the same with a .au or .wav file?
>
> od(1), but that would be silly. Just have your program open the file
> and read it in.
>
Yeah, I views the file with od -c; but wouldn't it be much faster
to have the data file part of my test program than having to open,
read, cat thru /dev/dsp each time, close file? I stole the cat
from the K&R book, and by reading the click.h data file it seems
everything would go much faster.
(I have three actual keyboard click drivers that I'm paring down,
just wondering in my pre-built click file wouldn't be a better
option. It's got a seriously beautiful waveform.
> --
> Lowell Gilbert, embedded/networking software engineer, Boston area
> http://be-well.ilk.org/~lowell/
--
Gary Kline kline@thought.org http://www.thought.org Public Service Unix
http://jottings.thought.org http://transfinite.thought.org
The 7.79a release of Jottings: http://jottings.thought.org/index.php
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20091231201117.GB3733>
