- while(1) {
- mssofar = ast_tvdiff_ms(ast_tvnow(), start);
- if(mssofar > atoi(args.timeout)) {
- break;
- }
- res = ast_waitfor(chan, atoi(args.timeout) - mssofar);
- if (res < 1) {
- break;
- }
- f = ast_read(chan);
- if((f->frametype == AST_FRAME_VOICE) && (f->subclass.codec == AST_FORMAT_SLINEAR)) {
- sdata = (short*)f->data.ptr;
- sptr = sdata;
- samples++;
- sptr++;
- }
- ast_frfree(f);
- }