Changeset 336:771f7c371e0c in mediastreamer2


Ignore:
Timestamp:
Mar 13, 2009 5:03:10 PM (4 years ago)
Author:
aymeric <aymeric@…>
Branch:
default
Message:

send output with all block of the same size

git-svn-id: svn+ssh://svn.savannah.nongnu.org/linphone/trunk@339 3f6dc0c8-ddfe-455d-9043-3cd528dc4637

File:
1 edited

Legend:

Unmodified
Added
Removed
  • linphone/mediastreamer2/src/speexec.c

    r255 r336  
    105105                md = copyb(m); 
    106106                s->size_delay = s->size_delay + size; 
    107                         ms_queue_put(f->outputs[0],md); 
     107                        ms_bufferizer_put(&s->speak_delay,md); 
    108108                ms_bufferizer_put(&s->in[0],m); 
    109109                } 
    110110 
    111                 while((m=ms_queue_get(f->inputs[1]))!=NULL){ 
    112                 ms_queue_put(f->outputs[1],m); 
     111                /* make sure we always send block with same size */ 
     112                while (ms_bufferizer_get_avail(&s->speak_delay)>=nbytes) 
     113                { 
     114                        om0=allocb(nbytes,0); 
     115                        ms_bufferizer_read(&s->speak_delay,(uint8_t*)om0->b_wptr,nbytes); 
     116                        om0->b_wptr+=nbytes; 
     117                        ms_queue_put(f->outputs[0],om0); 
     118                } 
     119 
     120                /* make sure we always send block with same size */ 
     121                ms_bufferizer_put_from_queue(&s->in[1],f->inputs[1]); 
     122                while (ms_bufferizer_get_avail(&s->in[1])>=nbytes) 
     123                { 
     124                        om0=allocb(nbytes,0); 
     125                        ms_bufferizer_read(&s->in[1],(uint8_t*)om0->b_wptr,nbytes); 
     126                        om0->b_wptr+=nbytes; 
     127                ms_queue_put(f->outputs[1],om0); 
    113128                } 
    114129                /* we are now equal and speaker is delayed */ 
     
    164179                }                
    165180#endif 
    166     freeb(om0); 
     181                freeb(om0); 
    167182        } 
    168183 
Note: See TracChangeset for help on using the changeset viewer.