RTP Packet 构造

本文介绍了如何将WAV文件封装成RTP包。详细讲解了RTP Header的定义,并根据wav头信息解析关键参数,如sampleRate。通过设置RTP Packet的发送速率sendRate(例如20包/秒),计算timestamp增量和每个包包含的数据量,为构建RTP Packet提供了详细步骤。
摘要由CSDN通过智能技术生成

将一个wav 档,封装成RTP Packet


RTP Header定义 

struct RTP_HEADER
 {
     unsigned char csrc_len:4;
     unsigned char extension:1;
     unsigned char padding:1;
     unsigned char version:2;
 
     unsigned char payload:7;
     unsigned char marker:1;

     uint16_t seq_no;
 
     uint32_t  timestamp;
 
     uint32_t  ssrc;
};


wav header 定义如下:

struct WAV_HEADER {
    uint32_t riff_id;   //big endian --RIFF
    uint32_t riff_sz;   // 36+ data_sz
    uint32_t riff_fmt;  //big  -- WAVE
    uint32_t fmt_id;    //big  -- fmt
    uint32_t fmt_sz;    // 16 for PCM
    uint16_t audio_format;  //PCM =1
    uint16_t num_channels;  //Mono = 1; Sterep =2
    uin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值