Sat Aug 6 00:39:59 2011

Asterisk developer's documentation


msgsm.h File Reference

Go to the source code of this file.

Defines

#define GSM_MAGIC   0xD
#define readGSM_33(c1)
#define writeGSM_33(c1)

Typedefs

typedef unsigned char gsm_byte
typedef unsigned int uword
typedef unsigned char wav_byte

Functions

static void conv65 (wav_byte *c, gsm_byte *d)
static void conv66 (gsm_byte *d, wav_byte *c)


Define Documentation

#define GSM_MAGIC   0xD

Definition at line 3 of file msgsm.h.

#define readGSM_33 ( c1   ) 

Definition at line 11 of file msgsm.h.

Referenced by conv66().

#define writeGSM_33 ( c1   ) 

Definition at line 351 of file msgsm.h.

Referenced by conv65().


Typedef Documentation

typedef unsigned char gsm_byte

Definition at line 6 of file msgsm.h.

typedef unsigned int uword

Definition at line 9 of file msgsm.h.

typedef unsigned char wav_byte

Definition at line 8 of file msgsm.h.


Function Documentation

static void conv65 ( wav_byte c,
gsm_byte d 
) [inline, static]

Definition at line 455 of file msgsm.h.

References writeGSM_33.

Referenced by gsm_write(), gsmtolin_framein(), and wav_read().

00455                                                       {
00456 
00457                 unsigned int sr = 0;
00458                 unsigned int frame_chain;
00459       unsigned int LARc[8], Nc[4], Mc[4], bc[4], xmaxc[4];
00460       /* silence bogus compiler warning */
00461       unsigned int xmc[13*4] = { 0, };
00462  
00463                         sr = *c++;
00464                         LARc[0] = sr & 0x3f;  sr >>= 6;
00465                         sr |= (uword)*c++ << 2;
00466                         LARc[1] = sr & 0x3f;  sr >>= 6;
00467                         sr |= (uword)*c++ << 4;
00468                         LARc[2] = sr & 0x1f;  sr >>= 5;
00469                         LARc[3] = sr & 0x1f;  sr >>= 5;
00470                         sr |= (uword)*c++ << 2;
00471                         LARc[4] = sr & 0xf;  sr >>= 4;
00472                         LARc[5] = sr & 0xf;  sr >>= 4;
00473                         sr |= (uword)*c++ << 2;                 /* 5 */
00474                         LARc[6] = sr & 0x7;  sr >>= 3;
00475                         LARc[7] = sr & 0x7;  sr >>= 3;
00476                         sr |= (uword)*c++ << 4;
00477                         Nc[0] = sr & 0x7f;  sr >>= 7;
00478                         bc[0] = sr & 0x3;  sr >>= 2;
00479                         Mc[0] = sr & 0x3;  sr >>= 2;
00480                         sr |= (uword)*c++ << 1;
00481                         xmaxc[0] = sr & 0x3f;  sr >>= 6;
00482                         xmc[0] = sr & 0x7;  sr >>= 3;
00483                         sr = *c++;
00484                         xmc[1] = sr & 0x7;  sr >>= 3;
00485                         xmc[2] = sr & 0x7;  sr >>= 3;
00486                         sr |= (uword)*c++ << 2;
00487                         xmc[3] = sr & 0x7;  sr >>= 3;
00488                         xmc[4] = sr & 0x7;  sr >>= 3;
00489                         xmc[5] = sr & 0x7;  sr >>= 3;
00490                         sr |= (uword)*c++ << 1;                 /* 10 */
00491                         xmc[6] = sr & 0x7;  sr >>= 3;
00492                         xmc[7] = sr & 0x7;  sr >>= 3;
00493                         xmc[8] = sr & 0x7;  sr >>= 3;
00494                         sr = *c++;
00495                         xmc[9] = sr & 0x7;  sr >>= 3;
00496                         xmc[10] = sr & 0x7;  sr >>= 3;
00497                         sr |= (uword)*c++ << 2;
00498                         xmc[11] = sr & 0x7;  sr >>= 3;
00499                         xmc[12] = sr & 0x7;  sr >>= 3;
00500                         sr |= (uword)*c++ << 4;
00501                         Nc[1] = sr & 0x7f;  sr >>= 7;
00502                         bc[1] = sr & 0x3;  sr >>= 2;
00503                         Mc[1] = sr & 0x3;  sr >>= 2;
00504                         sr |= (uword)*c++ << 1;
00505                         xmaxc[1] = sr & 0x3f;  sr >>= 6;
00506                         xmc[13] = sr & 0x7;  sr >>= 3;
00507                         sr = *c++;                              /* 15 */
00508                         xmc[14] = sr & 0x7;  sr >>= 3;
00509                         xmc[15] = sr & 0x7;  sr >>= 3;
00510                         sr |= (uword)*c++ << 2;
00511                         xmc[16] = sr & 0x7;  sr >>= 3;
00512                         xmc[17] = sr & 0x7;  sr >>= 3;
00513                         xmc[18] = sr & 0x7;  sr >>= 3;
00514                         sr |= (uword)*c++ << 1;
00515                         xmc[19] = sr & 0x7;  sr >>= 3;
00516                         xmc[20] = sr & 0x7;  sr >>= 3;
00517                         xmc[21] = sr & 0x7;  sr >>= 3;
00518                         sr = *c++;
00519                         xmc[22] = sr & 0x7;  sr >>= 3;
00520                         xmc[23] = sr & 0x7;  sr >>= 3;
00521                         sr |= (uword)*c++ << 2;
00522                         xmc[24] = sr & 0x7;  sr >>= 3;
00523                         xmc[25] = sr & 0x7;  sr >>= 3;
00524                         sr |= (uword)*c++ << 4;                 /* 20 */
00525                         Nc[2] = sr & 0x7f;  sr >>= 7;
00526                         bc[2] = sr & 0x3;  sr >>= 2;
00527                         Mc[2] = sr & 0x3;  sr >>= 2;
00528                         sr |= (uword)*c++ << 1;
00529                         xmaxc[2] = sr & 0x3f;  sr >>= 6;
00530                         xmc[26] = sr & 0x7;  sr >>= 3;
00531                         sr = *c++;
00532                         xmc[27] = sr & 0x7;  sr >>= 3;
00533                         xmc[28] = sr & 0x7;  sr >>= 3;
00534                         sr |= (uword)*c++ << 2;
00535                         xmc[29] = sr & 0x7;  sr >>= 3;
00536                         xmc[30] = sr & 0x7;  sr >>= 3;
00537                         xmc[31] = sr & 0x7;  sr >>= 3;
00538                         sr |= (uword)*c++ << 1;
00539                         xmc[32] = sr & 0x7;  sr >>= 3;
00540                         xmc[33] = sr & 0x7;  sr >>= 3;
00541                         xmc[34] = sr & 0x7;  sr >>= 3;
00542                         sr = *c++;                              /* 25 */
00543                         xmc[35] = sr & 0x7;  sr >>= 3;
00544                         xmc[36] = sr & 0x7;  sr >>= 3;
00545                         sr |= (uword)*c++ << 2;
00546                         xmc[37] = sr & 0x7;  sr >>= 3;
00547                         xmc[38] = sr & 0x7;  sr >>= 3;
00548                         sr |= (uword)*c++ << 4;
00549                         Nc[3] = sr & 0x7f;  sr >>= 7;
00550                         bc[3] = sr & 0x3;  sr >>= 2;
00551                         Mc[3] = sr & 0x3;  sr >>= 2;
00552                         sr |= (uword)*c++ << 1;
00553                         xmaxc[3] = sr & 0x3f;  sr >>= 6;
00554                         xmc[39] = sr & 0x7;  sr >>= 3;
00555                         sr = *c++;
00556                         xmc[40] = sr & 0x7;  sr >>= 3;
00557                         xmc[41] = sr & 0x7;  sr >>= 3;
00558                         sr |= (uword)*c++ << 2;                 /* 30 */
00559                         xmc[42] = sr & 0x7;  sr >>= 3;
00560                         xmc[43] = sr & 0x7;  sr >>= 3;
00561                         xmc[44] = sr & 0x7;  sr >>= 3;
00562                         sr |= (uword)*c++ << 1;
00563                         xmc[45] = sr & 0x7;  sr >>= 3;
00564                         xmc[46] = sr & 0x7;  sr >>= 3;
00565                         xmc[47] = sr & 0x7;  sr >>= 3;
00566                         sr = *c++;
00567                         xmc[49] = sr & 0x7;  sr >>= 3;
00568                         sr |= (uword)*c++ << 2;
00569                         xmc[50] = sr & 0x7;  sr >>= 3;
00570                         xmc[51] = sr & 0x7;  sr >>= 3;
00571 
00572                         frame_chain = sr & 0xf;
00573 
00574 
00575                         writeGSM_33(d);/* LARc etc. -> array of 33 GSM bytes */
00576 
00577 
00578                         sr = frame_chain;
00579                         sr |= (uword)*c++ << 4;                 /* 1 */
00580                         LARc[0] = sr & 0x3f;  sr >>= 6;
00581                         LARc[1] = sr & 0x3f;  sr >>= 6;
00582                         sr = *c++;
00583                         LARc[2] = sr & 0x1f;  sr >>= 5;
00584                         sr |= (uword)*c++ << 3;
00585                         LARc[3] = sr & 0x1f;  sr >>= 5;
00586                         LARc[4] = sr & 0xf;  sr >>= 4;
00587                         sr |= (uword)*c++ << 2;
00588                         LARc[5] = sr & 0xf;  sr >>= 4;
00589                         LARc[6] = sr & 0x7;  sr >>= 3;
00590                         LARc[7] = sr & 0x7;  sr >>= 3;
00591                         sr = *c++;                              /* 5 */
00592                         Nc[0] = sr & 0x7f;  sr >>= 7;
00593                         sr |= (uword)*c++ << 1;
00594                         bc[0] = sr & 0x3;  sr >>= 2;
00595                         Mc[0] = sr & 0x3;  sr >>= 2;
00596                         sr |= (uword)*c++ << 5;
00597                         xmaxc[0] = sr & 0x3f;  sr >>= 6;
00598                         xmc[0] = sr & 0x7;  sr >>= 3;
00599                         xmc[1] = sr & 0x7;  sr >>= 3;
00600                         sr |= (uword)*c++ << 1;
00601                         xmc[2] = sr & 0x7;  sr >>= 3;
00602                         xmc[3] = sr & 0x7;  sr >>= 3;
00603                         xmc[4] = sr & 0x7;  sr >>= 3;
00604                         sr = *c++;
00605                         xmc[5] = sr & 0x7;  sr >>= 3;
00606                         xmc[6] = sr & 0x7;  sr >>= 3;
00607                         sr |= (uword)*c++ << 2;                 /* 10 */
00608                         xmc[7] = sr & 0x7;  sr >>= 3;
00609                         xmc[8] = sr & 0x7;  sr >>= 3;
00610                         xmc[9] = sr & 0x7;  sr >>= 3;
00611                         sr |= (uword)*c++ << 1;
00612                         xmc[10] = sr & 0x7;  sr >>= 3;
00613                         xmc[11] = sr & 0x7;  sr >>= 3;
00614                         xmc[12] = sr & 0x7;  sr >>= 3;
00615                         sr = *c++;
00616                         Nc[1] = sr & 0x7f;  sr >>= 7;
00617                         sr |= (uword)*c++ << 1;
00618                         bc[1] = sr & 0x3;  sr >>= 2;
00619                         Mc[1] = sr & 0x3;  sr >>= 2;
00620                         sr |= (uword)*c++ << 5;
00621                         xmaxc[1] = sr & 0x3f;  sr >>= 6;
00622                         xmc[13] = sr & 0x7;  sr >>= 3;
00623                         xmc[14] = sr & 0x7;  sr >>= 3;
00624                         sr |= (uword)*c++ << 1;                 /* 15 */
00625                         xmc[15] = sr & 0x7;  sr >>= 3;
00626                         xmc[16] = sr & 0x7;  sr >>= 3;
00627                         xmc[17] = sr & 0x7;  sr >>= 3;
00628                         sr = *c++;
00629                         xmc[18] = sr & 0x7;  sr >>= 3;
00630                         xmc[19] = sr & 0x7;  sr >>= 3;
00631                         sr |= (uword)*c++ << 2;
00632                         xmc[20] = sr & 0x7;  sr >>= 3;
00633                         xmc[21] = sr & 0x7;  sr >>= 3;
00634                         xmc[22] = sr & 0x7;  sr >>= 3;
00635                         sr |= (uword)*c++ << 1;
00636                         xmc[23] = sr & 0x7;  sr >>= 3;
00637                         xmc[24] = sr & 0x7;  sr >>= 3;
00638                         xmc[25] = sr & 0x7;  sr >>= 3;
00639                         sr = *c++;
00640                         Nc[2] = sr & 0x7f;  sr >>= 7;
00641                         sr |= (uword)*c++ << 1;                 /* 20 */
00642                         bc[2] = sr & 0x3;  sr >>= 2;
00643                         Mc[2] = sr & 0x3;  sr >>= 2;
00644                         sr |= (uword)*c++ << 5;
00645                         xmaxc[2] = sr & 0x3f;  sr >>= 6;
00646                         xmc[26] = sr & 0x7;  sr >>= 3;
00647                         xmc[27] = sr & 0x7;  sr >>= 3;
00648                         sr |= (uword)*c++ << 1;
00649                         xmc[28] = sr & 0x7;  sr >>= 3;
00650                         xmc[29] = sr & 0x7;  sr >>= 3;
00651                         xmc[30] = sr & 0x7;  sr >>= 3;
00652                         sr = *c++;
00653                         xmc[31] = sr & 0x7;  sr >>= 3;
00654                         xmc[32] = sr & 0x7;  sr >>= 3;
00655                         sr |= (uword)*c++ << 2;
00656                         xmc[33] = sr & 0x7;  sr >>= 3;
00657                         xmc[34] = sr & 0x7;  sr >>= 3;
00658                         xmc[35] = sr & 0x7;  sr >>= 3;
00659                         sr |= (uword)*c++ << 1;                 /* 25 */
00660                         xmc[36] = sr & 0x7;  sr >>= 3;
00661                         xmc[37] = sr & 0x7;  sr >>= 3;
00662                         xmc[38] = sr & 0x7;  sr >>= 3;
00663                         sr = *c++;
00664                         Nc[3] = sr & 0x7f;  sr >>= 7;
00665                         sr |= (uword)*c++ << 1;
00666                         bc[3] = sr & 0x3;  sr >>= 2;
00667                         Mc[3] = sr & 0x3;  sr >>= 2;
00668                         sr |= (uword)*c++ << 5;
00669                         xmaxc[3] = sr & 0x3f;  sr >>= 6;
00670                         xmc[39] = sr & 0x7;  sr >>= 3;
00671                         xmc[40] = sr & 0x7;  sr >>= 3;
00672                         sr |= (uword)*c++ << 1;
00673                         xmc[41] = sr & 0x7;  sr >>= 3;
00674                         xmc[42] = sr & 0x7;  sr >>= 3;
00675                         xmc[43] = sr & 0x7;  sr >>= 3;
00676                         sr = *c++;                              /* 30 */
00677                         xmc[44] = sr & 0x7;  sr >>= 3;
00678                         xmc[45] = sr & 0x7;  sr >>= 3;
00679                         sr |= (uword)*c++ << 2;
00680                         xmc[46] = sr & 0x7;  sr >>= 3;
00681                         xmc[47] = sr & 0x7;  sr >>= 3;
00682                         xmc[48] = sr & 0x7;  sr >>= 3;
00683                         sr |= (uword)*c++ << 1;
00684                         xmc[49] = sr & 0x7;  sr >>= 3;
00685                         xmc[50] = sr & 0x7;  sr >>= 3;
00686                         xmc[51] = sr & 0x7;  sr >>= 3;
00687                         writeGSM_33(d+33);
00688 
00689 }

static void conv66 ( gsm_byte d,
wav_byte c 
) [inline, static]

Definition at line 114 of file msgsm.h.

References readGSM_33.

Referenced by wav_write().

00114                                                       {
00115    gsm_byte frame_chain;
00116     unsigned int sr;
00117    unsigned int    LARc[8], Nc[4], Mc[4], bc[4], xmaxc[4], xmc[13*4];
00118    
00119    readGSM_33(d);
00120    sr = 0;
00121    sr = (sr >> 6) | (LARc[0] << 10);
00122    sr = (sr >> 6) | (LARc[1] << 10);
00123    *c++ = sr >> 4;
00124    sr = (sr >> 5) | (LARc[2] << 11);
00125    *c++ = sr >> 7;
00126    sr = (sr >> 5) | (LARc[3] << 11);
00127    sr = (sr >> 4) | (LARc[4] << 12);
00128    *c++ = sr >> 6;
00129    sr = (sr >> 4) | (LARc[5] << 12);
00130    sr = (sr >> 3) | (LARc[6] << 13);
00131    *c++ = sr >> 7;
00132    sr = (sr >> 3) | (LARc[7] << 13);
00133    sr = (sr >> 7) | (Nc[0] << 9);
00134    *c++ = sr >> 5;
00135    sr = (sr >> 2) | (bc[0] << 14);
00136    sr = (sr >> 2) | (Mc[0] << 14);
00137    sr = (sr >> 6) | (xmaxc[0] << 10);
00138    *c++ = sr >> 3;
00139    sr = (sr >> 3 )|( xmc[0] << 13);
00140    *c++ = sr >> 8;
00141    sr = (sr >> 3 )|( xmc[1] << 13);
00142    sr = (sr >> 3 )|( xmc[2] << 13);
00143     sr = (sr >> 3 )|( xmc[3] << 13);
00144     *c++ = sr >> 7;
00145     sr = (sr >> 3 )|( xmc[4] << 13);
00146     sr = (sr >> 3 )|( xmc[5] << 13);
00147     sr = (sr >> 3 )|( xmc[6] << 13);
00148     *c++ = sr >> 6;
00149     sr = (sr >> 3 )|( xmc[7] << 13);
00150     sr = (sr >> 3 )|( xmc[8] << 13);
00151     *c++ = sr >> 8;
00152     sr = (sr >> 3 )|( xmc[9] << 13);
00153     sr = (sr >> 3 )|( xmc[10] << 13);
00154     sr = (sr >> 3 )|( xmc[11] << 13);
00155     *c++ = sr >> 7;
00156     sr = (sr >> 3 )|( xmc[12] << 13);
00157     sr = (sr >> 7 )|( Nc[1] << 9);
00158     *c++ = sr >> 5;
00159     sr = (sr >> 2 )|( bc[1] << 14);
00160     sr = (sr >> 2 )|( Mc[1] << 14);
00161     sr = (sr >> 6 )|( xmaxc[1] << 10);
00162     *c++ = sr >> 3;
00163     sr = (sr >> 3 )|( xmc[13] << 13);
00164     *c++ = sr >> 8;
00165     sr = (sr >> 3 )|( xmc[14] << 13);
00166     sr = (sr >> 3 )|( xmc[15] << 13);
00167     sr = (sr >> 3 )|( xmc[16] << 13);
00168     *c++ = sr >> 7;
00169     sr = (sr >> 3 )|( xmc[17] << 13);
00170     sr = (sr >> 3 )|( xmc[18] << 13);
00171     sr = (sr >> 3 )|( xmc[19] << 13);
00172     *c++ = sr >> 6;
00173     sr = (sr >> 3 )|( xmc[20] << 13);
00174     sr = (sr >> 3 )|( xmc[21] << 13);
00175     *c++ = sr >> 8;
00176     sr = (sr >> 3 )|( xmc[22] << 13);
00177     sr = (sr >> 3 )|( xmc[23] << 13);
00178     sr = (sr >> 3 )|( xmc[24] << 13);
00179     *c++ = sr >> 7;
00180     sr = (sr >> 3 )|( xmc[25] << 13);
00181     sr = (sr >> 7 )|( Nc[2] << 9);
00182     *c++ = sr >> 5;
00183     sr = (sr >> 2 )|( bc[2] << 14);
00184     sr = (sr >> 2 )|( Mc[2] << 14);
00185     sr = (sr >> 6 )|( xmaxc[2] << 10);
00186     *c++ = sr >> 3;
00187     sr = (sr >> 3 )|( xmc[26] << 13);
00188     *c++ = sr >> 8;
00189     sr = (sr >> 3 )|( xmc[27] << 13);
00190     sr = (sr >> 3 )|( xmc[28] << 13);
00191     sr = (sr >> 3 )|( xmc[29] << 13);
00192     *c++ = sr >> 7;
00193     sr = (sr >> 3 )|( xmc[30] << 13);
00194     sr = (sr >> 3 )|( xmc[31] << 13);
00195     sr = (sr >> 3 )|( xmc[32] << 13);
00196     *c++ = sr >> 6;
00197     sr = (sr >> 3 )|( xmc[33] << 13);
00198     sr = (sr >> 3 )|( xmc[34] << 13);
00199     *c++ = sr >> 8;
00200     sr = (sr >> 3 )|( xmc[35] << 13);
00201     sr = (sr >> 3 )|( xmc[36] << 13);
00202     sr = (sr >> 3 )|( xmc[37] << 13);
00203     *c++ = sr >> 7;
00204     sr = (sr >> 3 )|( xmc[38] << 13);
00205     sr = (sr >> 7 )|( Nc[3] << 9);
00206     *c++ = sr >> 5;
00207     sr = (sr >> 2 )|( bc[3] << 14);
00208     sr = (sr >> 2 )|( Mc[3] << 14);
00209     sr = (sr >> 6 )|( xmaxc[3] << 10);
00210     *c++ = sr >> 3;
00211     sr = (sr >> 3 )|( xmc[39] << 13);
00212     *c++ = sr >> 8;
00213     sr = (sr >> 3 )|( xmc[40] << 13);
00214     sr = (sr >> 3 )|( xmc[41] << 13);
00215     sr = (sr >> 3 )|( xmc[42] << 13);
00216     *c++ = sr >> 7;
00217     sr = (sr >> 3 )|( xmc[43] << 13);
00218     sr = (sr >> 3 )|( xmc[44] << 13);
00219     sr = (sr >> 3 )|( xmc[45] << 13);
00220     *c++ = sr >> 6;
00221     sr = (sr >> 3 )|( xmc[46] << 13);
00222     sr = (sr >> 3 )|( xmc[47] << 13);
00223     *c++ = sr >> 8;
00224     sr = (sr >> 3 )|( xmc[48] << 13);
00225     sr = (sr >> 3 )|( xmc[49] << 13);
00226     sr = (sr >> 3 )|( xmc[50] << 13);
00227     *c++ = sr >> 7;
00228     sr = (sr >> 3 )|( xmc[51] << 13);
00229     sr = sr >> 4;
00230     *c = sr >> 8;
00231     frame_chain = *c;
00232     readGSM_33(d+33); /* puts all the parameters into LARc etc. */
00233 
00234 
00235     sr = 0;
00236 /*                       sr = (sr >> 4 )|( s->frame_chain << 12); */
00237     sr = (sr >> 4 )|( frame_chain << 12);
00238 
00239     sr = (sr >> 6 )|( LARc[0] << 10);
00240     *c++ = sr >> 6;
00241     sr = (sr >> 6 )|( LARc[1] << 10);
00242     *c++ = sr >> 8;
00243     sr = (sr >> 5 )|( LARc[2] << 11);
00244     sr = (sr >> 5 )|( LARc[3] << 11);
00245     *c++ = sr >> 6;
00246     sr = (sr >> 4 )|( LARc[4] << 12);
00247     sr = (sr >> 4 )|( LARc[5] << 12);
00248     *c++ = sr >> 6;
00249     sr = (sr >> 3 )|( LARc[6] << 13);
00250     sr = (sr >> 3 )|( LARc[7] << 13);
00251     *c++ = sr >> 8;
00252     sr = (sr >> 7 )|( Nc[0] << 9);
00253     sr = (sr >> 2 )|( bc[0] << 14);
00254     *c++ = sr >> 7;
00255     sr = (sr >> 2 )|( Mc[0] << 14);
00256     sr = (sr >> 6 )|( xmaxc[0] << 10);
00257     *c++ = sr >> 7;
00258     sr = (sr >> 3 )|( xmc[0] << 13);
00259     sr = (sr >> 3 )|( xmc[1] << 13);
00260     sr = (sr >> 3 )|( xmc[2] << 13);
00261     *c++ = sr >> 6;
00262     sr = (sr >> 3 )|( xmc[3] << 13);
00263     sr = (sr >> 3 )|( xmc[4] << 13);
00264     *c++ = sr >> 8;
00265     sr = (sr >> 3 )|( xmc[5] << 13);
00266     sr = (sr >> 3 )|( xmc[6] << 13);
00267     sr = (sr >> 3 )|( xmc[7] << 13);
00268     *c++ = sr >> 7;
00269     sr = (sr >> 3 )|( xmc[8] << 13);
00270     sr = (sr >> 3 )|( xmc[9] << 13);
00271     sr = (sr >> 3 )|( xmc[10] << 13);
00272     *c++ = sr >> 6;
00273     sr = (sr >> 3 )|( xmc[11] << 13);
00274     sr = (sr >> 3 )|( xmc[12] << 13);
00275     *c++ = sr >> 8;
00276     sr = (sr >> 7 )|( Nc[1] << 9);
00277     sr = (sr >> 2 )|( bc[1] << 14);
00278     *c++ = sr >> 7;
00279     sr = (sr >> 2 )|( Mc[1] << 14);
00280     sr = (sr >> 6 )|( xmaxc[1] << 10);
00281     *c++ = sr >> 7;
00282     sr = (sr >> 3 )|( xmc[13] << 13);
00283     sr = (sr >> 3 )|( xmc[14] << 13);
00284     sr = (sr >> 3 )|( xmc[15] << 13);
00285     *c++ = sr >> 6;
00286     sr = (sr >> 3 )|( xmc[16] << 13);
00287     sr = (sr >> 3 )|( xmc[17] << 13);
00288     *c++ = sr >> 8;
00289     sr = (sr >> 3 )|( xmc[18] << 13);
00290     sr = (sr >> 3 )|( xmc[19] << 13);
00291     sr = (sr >> 3 )|( xmc[20] << 13);
00292     *c++ = sr >> 7;
00293     sr = (sr >> 3 )|( xmc[21] << 13);
00294     sr = (sr >> 3 )|( xmc[22] << 13);
00295     sr = (sr >> 3 )|( xmc[23] << 13);
00296     *c++ = sr >> 6;
00297     sr = (sr >> 3 )|( xmc[24] << 13);
00298     sr = (sr >> 3 )|( xmc[25] << 13);
00299     *c++ = sr >> 8;
00300     sr = (sr >> 7 )|( Nc[2] << 9);
00301     sr = (sr >> 2 )|( bc[2] << 14);
00302     *c++ = sr >> 7;
00303     sr = (sr >> 2 )|( Mc[2] << 14);
00304     sr = (sr >> 6 )|( xmaxc[2] << 10);
00305     *c++ = sr >> 7;
00306     sr = (sr >> 3 )|( xmc[26] << 13);
00307     sr = (sr >> 3 )|( xmc[27] << 13);
00308     sr = (sr >> 3 )|( xmc[28] << 13);
00309     *c++ = sr >> 6;
00310     sr = (sr >> 3 )|( xmc[29] << 13);
00311     sr = (sr >> 3 )|( xmc[30] << 13);
00312     *c++ = sr >> 8;
00313     sr = (sr >> 3 )|( xmc[31] << 13);
00314     sr = (sr >> 3 )|( xmc[32] << 13);
00315     sr = (sr >> 3 )|( xmc[33] << 13);
00316     *c++ = sr >> 7;
00317     sr = (sr >> 3 )|( xmc[34] << 13);
00318     sr = (sr >> 3 )|( xmc[35] << 13);
00319     sr = (sr >> 3 )|( xmc[36] << 13);
00320     *c++ = sr >> 6;
00321     sr = (sr >> 3 )|( xmc[37] << 13);
00322     sr = (sr >> 3 )|( xmc[38] << 13);
00323     *c++ = sr >> 8;
00324     sr = (sr >> 7 )|( Nc[3] << 9);
00325     sr = (sr >> 2 )|( bc[3] << 14);
00326     *c++ = sr >> 7;
00327     sr = (sr >> 2 )|( Mc[3] << 14);
00328     sr = (sr >> 6 )|( xmaxc[3] << 10);
00329     *c++ = sr >> 7;
00330     sr = (sr >> 3 )|( xmc[39] << 13);
00331     sr = (sr >> 3 )|( xmc[40] << 13);
00332     sr = (sr >> 3 )|( xmc[41] << 13);
00333     *c++ = sr >> 6;
00334     sr = (sr >> 3 )|( xmc[42] << 13);
00335     sr = (sr >> 3 )|( xmc[43] << 13);
00336     *c++ = sr >> 8;
00337     sr = (sr >> 3 )|( xmc[44] << 13);
00338     sr = (sr >> 3 )|( xmc[45] << 13);
00339     sr = (sr >> 3 )|( xmc[46] << 13);
00340     *c++ = sr >> 7;
00341     sr = (sr >> 3 )|( xmc[47] << 13);
00342     sr = (sr >> 3 )|( xmc[48] << 13);
00343     sr = (sr >> 3 )|( xmc[49] << 13);
00344     *c++ = sr >> 6;
00345     sr = (sr >> 3 )|( xmc[50] << 13);
00346     sr = (sr >> 3 )|( xmc[51] << 13);
00347     *c++ = sr >> 8;
00348 
00349 }


Generated on Sat Aug 6 00:39:59 2011 for Asterisk - the Open Source PBX by  doxygen 1.4.7