Changeset 216

Show
Ignore:
Timestamp:
05/20/08 09:56:11 (4 months ago)
Author:
sip
Message:

AMR silence frame pathc for audio shortening problems.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • app_h324m/app_h324m.c

    r214 r216  
    185185        unsigned char* data = 0; 
    186186 
     187        /* 1st dummy AMR-SID frame (comfort noise) */ 
     188        static unsigned char last_amr_sti[6] = { 0x78, 0x46, 0x00, 0x94, 0xA4, 0x07 }; 
     189         
     190 
    187191        /* Get data & size */ 
    188192        unsigned char * framedata = FrameGetData(frame); 
     
    214218                        /*Get mode*/ 
    215219                        unsigned char mode = header & 0x0F; 
     220                 
     221                        /* Check silence frames */       
     222                        if (mode==8 && framelength==6) { 
     223                                /* save AMR-SID frame */       
     224                                memcpy( last_amr_sti, framedata, 6 );                    
     225                        } else if (mode==15) {  
     226                                /* AMR No-Data packet --> replace with last AMR-SID */ 
     227                                mode = 8; 
     228                                framelength = 6; 
     229                                framedata = last_amr_sti;                                
     230                        } 
     231                         
    216232                        /*Get number of stuffing bits*/ 
    217233                        unsigned int stuf = if2stuffing[mode]; 
Copyright 2006 - Sergio García Murillo
Powered by Trac - Edgewall Software