Re: Opening Stereo 8-bit 8-K Audio Streams

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Martin McCormick <martin@xxxxxxxxxxxxxxxxxx> writes:

> The audio device file descriptor is defined as
> FILE *audio_fd;
...
> Breakpoint 2, main (argc=2, argv=0xbffff684) at vx2ch.c:118
> 118        if (ioctl(audio_fd, SNDCTL_DSP_SETFMT, &format)==-1)

A "FILE *" is not a file descriptor -- libc functions like fopen,
fread, fprintf etc. work with FILE *s, and system calls like open,
read and ioctl work with integer file descriptors. You can use the
fileno function to get the file descriptor that the FILE * is using,
so change "audio_fd" to "fileno(audio_fd)" in that ioctl call, and it
should be a bit happier.

The compiler should be complaining about you converting a pointer to
an integer when you compile that ioctl call as it currently stands;
it's always a good idea to use the -Wall compiler flag and pay careful
attention to the warnings it produces.

-- 
Adam Sampson <ats@xxxxxxxxx>                         <http://offog.org/>

[Index of Archives]     [Linux Sound]     [ALSA Users]     [Pulse Audio]     [ALSA Devel]     [Sox Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux