使用jrtplib传输H.264视频文件(3)

本文原创分享了如何使用jrtplib库来接收并重组H.264视频文件的数据包,重点在于解决被拆分的数据包重组问题。
摘要由CSDN通过智能技术生成

本文所有内容均为原创,转载请注明出处!

介绍如何发送h264,下面我们介绍下如何接收h264文件。

其中主要关注的就是被拆分的数据包的重组,下面的代码中有详尽的注释。

class CRTPReceiver : public RTPSession
{
protected:
	void OnPollThreadStep();
	void ProcessRTPPacket(const RTPSourceData &srcdat,const RTPPacket &rtppack);
	void OnRTCPCompoundPacket(RTCPCompoundPacket *pack,const RTPTime &receivetime,const RTPAddress *senderaddress);
	
public:
	CThreadSafeArray m_ReceiveArray;
	void InitBufferSize();

private:
	CVideoData* m_pVideoData;
	unsigned char m_buffer[BUFFER_SIZE];
	int m_current_size;
};

void CRTPReceiver::InitBufferSize()
{
	m_ReceiveArray.SetMemberSize(BUFFER_SIZE);
	m_pVideoData = new CVideoData();
	memset(m_buffer,0,BUFFER_SIZE);
	m_current_size = 0;
}

void CRTPReceiver::OnRTCPCompoundPacket(RTCPCompoundPacket *pack,const RTPTime &receivetime,const RTPAddress *senderaddress)
{
	//std::cout<<"Got RTCP packet from: "<<se
评论 38
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值