Dependencies:   mbed NetServicesMin

Committer:
fernya
Date:
Mon Jun 18 03:59:39 2012 +0000
Revision:
0:aa9ebbd3715f
Beta

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fernya 0:aa9ebbd3715f 1 #include "rtp.h"
fernya 0:aa9ebbd3715f 2
fernya 0:aa9ebbd3715f 3 void rtp_decompose(char * buf, int buf_len, struct rtp_header * hdr, char ** wav_data) {
fernya 0:aa9ebbd3715f 4 hdr->version = (buf[0] & 0xC0) >> 6;
fernya 0:aa9ebbd3715f 5 hdr->padding = (buf[0] & 0x20) >> 5;
fernya 0:aa9ebbd3715f 6 hdr->extension = (buf[0] & 0x10) >> 4;
fernya 0:aa9ebbd3715f 7 hdr->csrc_count = (buf[0] & 0x0F);
fernya 0:aa9ebbd3715f 8
fernya 0:aa9ebbd3715f 9 hdr->marker = (buf[1] & 0x80) >> 7;
fernya 0:aa9ebbd3715f 10 hdr->payload_type = (buf[1] & 0x7F);
fernya 0:aa9ebbd3715f 11
fernya 0:aa9ebbd3715f 12 hdr->seq_number = (buf[2] << 8) | buf[3];
fernya 0:aa9ebbd3715f 13 hdr->timestamp = (buf[4] << 24) | (buf[5] << 16) | (buf[6] << 8) | buf[7];
fernya 0:aa9ebbd3715f 14 hdr->ssrc = (buf[8] << 24) | (buf[9] << 16) | (buf[10] << 8) | buf[11];
fernya 0:aa9ebbd3715f 15
fernya 0:aa9ebbd3715f 16 hdr->header_len = 12;
fernya 0:aa9ebbd3715f 17 hdr->data_len = buf_len - hdr->header_len;
fernya 0:aa9ebbd3715f 18
fernya 0:aa9ebbd3715f 19 //memcpy(wav_data+offset,(buf + hdr->header_len), hdr->data_len);
fernya 0:aa9ebbd3715f 20 *wav_data = buf+hdr->header_len;
fernya 0:aa9ebbd3715f 21 }