rtp_send_data(s1, s->buf, len + 4);
rtp_send_data(s1, s->buf, len + 4, 0);
static void rtp_send_mpegaudio(AVFormatContext *s1,                               const uint8_t *buf1, int size){    RTPDemuxContext *s = s1->priv_data;    AVStream *st = s1->streams[0];    int len, count, max_packet_size;    max_packet_size = s->max_payload_size;    /* test if we must flush because not enough space */    len = (s->buf_ptr - s->buf);    if ((len + size) > max_packet_size) {        if (len > 4) {            rtp_send_data(s1, s->buf, s->buf_ptr - s->buf);            s->buf_ptr = s->buf + 4;            /* 90 KHz time stamp */            s->timestamp = s->base_timestamp +                 (s->cur_timestamp * 90000LL) / st->codec->sample_rate;        }    }    /* add the packet */    if (size > max_packet_size) {        /* big packet: fragment */        count = 0;        while (size > 0) {            len = max_packet_size - 4;            if (len > size)                len = size;            /* build fragmented packet */            s->buf[0] = 0;            s->buf[1] = 0;            s->buf[2] = count >> 8;            s->buf[3] = count;            memcpy(s->buf + 4, buf1, len);            rtp_send_data(s1, s->buf, len + 4);            size -= len;            buf1 += len;            count += len;        }    } else {        if (s->buf_ptr == s->buf + 4) {            /* no fragmentation possible */            s->buf[0] = 0;            s->buf[1] = 0;            s->buf[2] = 0;            s->buf[3] = 0;        }        memcpy(s->buf_ptr, buf1, size);        s->buf_ptr += size;    }    s->cur_timestamp += st->codec->frame_size;}