* Sample loss in full duplex program
@ 2003-10-20 15:04 Eugeni Doljenko
0 siblings, 0 replies; only message in thread
From: Eugeni Doljenko @ 2003-10-20 15:04 UTC (permalink / raw)
To: alsa-devel
I have add code below to example program latency.c:
It just wrote first 100000 samples to the file "rawout" in plain text
format.
I have simple program which helps me to analyse such files.
With that program I've found that some samples are lost (~ one per 4000)
(My settings: latency_min = 8192; /* in frames / 2 */
latency_max = 8192; /* in frames / 2 */
block = 1; /* block mode */ // When set to 0 I got
awfull sample lost
tick_time = 1; /* disabled, otherwise in us */
tick_time_ok = 0;
use_poll = 1;
)
What can I do to not loss that samples in full duplex mode?
Sorry for my English.
Eugeni.
latency.c:
/*around string N649*/
ok = 1; // was here
in_max = 0; // was here
//prepare big buffer
double* filebuf = malloc(500000*sizeof(double)); //I've added
int filebufp = 0; //I've added
FILE* file; //I've added
short* shortbuf; //I've added
int i; //I've added
while (ok && frames_in < loop_limit) { // was here
if (use_poll) { //
was here
/* use poll to wait for next event */ // was here
snd_pcm_wait(chandle, 1000); // was here
} // was here
if ((r = readbuf(chandle, buffer, latency, &frames_in,
&in_max)) < 0) // was here
ok = 0;
// was here
else {
// was here
if (effect) //I've added // was here
applyeffect(buffer,r); //
was here
shortbuf = (short*)buffer; //I've
added
//write to big buffer
for(i=0; i<r; i++)
//I've added
{
//I've added
filebuf[filebufp] = shortbuf[i]; //I've
added
filebufp++;
//I've added
}
//I've added
//write big buffer to file
if(filebufp>100000) //I've
added
{
//I've added
file = fopen("rawout", "w"); //I've added
for(i=0; i<100000; i++)
//I've added
fprintf(file, "%f\n", filebuf[i]/32000); //I've added
fclose(file);
//I've added
exit(1);
//I've added
}
-------------------------------------------------------
This SF.net email sponsored by: Enterprise Linux Forum Conference & Expo
The Event For Linux Datacenter Solutions & Strategies in The Enterprise
Linux in the Boardroom; in the Front Office; & in the Server Room
http://www.enterpriselinuxforum.com
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2003-10-20 15:04 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-10-20 15:04 Sample loss in full duplex program Eugeni Doljenko
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.