Changeset 216
- 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
| r214 |
r216 |
|
| 185 | 185 | unsigned char* data = 0; |
|---|
| 186 | 186 | |
|---|
| | 187 | /* 1st dummy AMR-SID frame (comfort noise) */ |
|---|
| | 188 | static unsigned char last_amr_sti[6] = { 0x78, 0x46, 0x00, 0x94, 0xA4, 0x07 }; |
|---|
| | 189 | |
|---|
| | 190 | |
|---|
| 187 | 191 | /* Get data & size */ |
|---|
| 188 | 192 | unsigned char * framedata = FrameGetData(frame); |
|---|
| … | … | |
| 214 | 218 | /*Get mode*/ |
|---|
| 215 | 219 | 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 | |
|---|
| 216 | 232 | /*Get number of stuffing bits*/ |
|---|
| 217 | 233 | unsigned int stuf = if2stuffing[mode]; |
|---|
Download in other formats:
|
|