Andrew Armstrong,davinci-linux-open-source,你好

yes, that is not your problem, it is a soundcard driver bug. 

[EMAIL PROTECTED]
2008-06-24 
----- Original Message ----- 
From: Andrew Armstrong 
To: davinci-linux-open-source 
Sent: 2008-06-24, 17:41:19
Subject: Buggy Audio Driver


Hi Guys,

I have been playing with the audio driver. All I want to do is a simple
loopthrough function, however, I am finding that the driver locks up
quite randomly when its file handles are being closed.

Has anyone else come up with this issue? I have attached the function I
am playing with, if anyone can replicate the issue I would be most
interested. Sometimes it can run several times with no issue and other
times lock-up each time it is executed.

Regards,

Andrew


void audioloop(unsigned char timesecs)
{
  int fdr;
  int fdw;
  unsigned char buffer[64];
  unsigned char done = 0;

  if( (fdr=open("/dev/sound/dsp",O_RDONLY)) < 0)
  {
    printf( "Sound Input Port failed!\n");
  }
  else
  {
    if( (fdw=open("/dev/sound/dsp",O_WRONLY)) < 0)
    {
      printf( "Sound Output Port failed!\n");
    }
    else
    {

      time(&starttime);

      while (done==0)
      {
                read(fdr,buffer,64);
        ioctl(fdr, SOUND_PCM_SYNC, 0);
                write(fdw,buffer,64);
        if (timesecs > 0)
        {
          time(¤ttime);
          if ((int)(currenttime - starttime) > timesecs)
          {
            done=1;
          } 
        }
      }
      close (fdr);
          }
    printf( "Closing sound port ...\n");
    close (fdw);
    printf( "... Done\n");
  }
}

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to