Hi again,
I have been using lavtools/mjpegtools for some time, and with the
regular updates, I'm getting a little tired of having to re-do the same
hack over and over. The problem is that if I use lavrec "out of the
box", I get an error from the sound system. The offending piece of code
is in the function do_audio() in audiolib.c:
tmp = audio_rate;
ret = ioctl(fd, SNDCTL_DSP_SPEED, &tmp);
if (ret<0 || tmp!=audio_rate) {
printf("ioctl(SNDCTL_DSP_SPEED): errno=%d\n", errno);
system_error("setting sound rate",0);
}
The hack I applied was to change it to the following:
tmp = audio_rate;
ret = ioctl(fd, SNDCTL_DSP_SPEED, &tmp);
if(ret<0)
printf("ioctl(SNDCTL_DSP_SPEED): errno=%d\n", errno);
/* || tmp!=audio_rate) system_error("setting sound rate",0); */
Very simply, I don't check the number returned from the speed setting
ioctl. Now this may be some bizarre bug in the ESS sound driver module,
or it may be as a result of some limitation of the sound card, but the
hack works in that I can record 44.1KHz stereo. How should I go about
getting this changed properly, so that lavrec/lavplay do work in future
releases? Is this the right mailing list, or do I need to mail someone
directly?
Thanks,
Ed.