if (strncmp(packet, "Speex   ", 8)!=0)
char *h = "Speex   "; for (i=0;i<8;i++) if (packet[i]!=h[i])
SpeexHeader *speex_packet_to_header(char *packet, int size){   SpeexHeader *le_header;   if (strncmp(packet, "Speex   ", 8)!=0)   {      fprintf (stderr, "This doesn't look like a Speex file\n");      return NULL;   }   if (sizeof(SpeexHeader) != size)   {      fprintf (stderr, "Speex header size mismarch\n");      return NULL;   }      le_header = speex_alloc(sizeof(SpeexHeader));      memcpy(le_header, packet, sizeof(SpeexHeader));      /*Make sure everything is converted correctly from little-endian*/   ENDIAN_SWITCH(le_header->speex_header_version);   ENDIAN_SWITCH(le_header->header_size);   ENDIAN_SWITCH(le_header->rate);   ENDIAN_SWITCH(le_header->mode);   ENDIAN_SWITCH(le_header->mode_bitstream_version);   ENDIAN_SWITCH(le_header->nb_channels);   ENDIAN_SWITCH(le_header->bitrate);   ENDIAN_SWITCH(le_header->frame_size);   ENDIAN_SWITCH(le_header->vbr);   ENDIAN_SWITCH(le_header->frames_per_packet);   return le_header;}