live555 调优

首先借鉴了网上的调优经验,如下:

  1. 参考自:live555: The input frame data was too large for our buffer size 解决方法
// live/liveMedia/MultiFramedRTPsource.cpp
increaseReceiveBufferTo(env, RTPgs->socketNum(), 2000000);

// live/liveMedia/StreamParser.cpp
const int BANK_SIZE = 1920*1080 ;		//网上这里有提到设置为 600,000

// live/liveMedia/MediaSink.cpp
unsigned OutPacketBuffer::maxSize = 600000;

  1. 参考自:live555 调优总结
// live/liveMedia/MultiFramedRTPSink.cpp
setPacketSizes((RTP_PAYLOAD_PREFERRED_SIZE), 8192);

// live/liveMedia/RTPInterface.cpp
increaseSendBufferTo(envir(), fGS->socketNum(), 512 * 1024);

// live/liveMedia/RTPInterface.cpp  此处需要先把下面两行注释掉
//if (!sendDataOverTCP(socketNum, framingHeader, 4, False)) break;
//if (!sendDataOverTCP(socketNum, packet, packetSize, True)) break;
   struct iovec iov[2];
   iov[0].iov_base = framingHeader;
   iov[0].iov_len = 4;
   iov[1].iov_base = packet;
   iov[1].iov_len = packetSize;
   writev(socketNum, iov, 2);

该参考资料中的调度优化未采用。


  1. Live555性能优化实践中的两种优化方法暂未采用。

// liveliveMedia/GenericMediaServer.cpp
increaseSendBufferTo(envir(), clientSocket, 512*1024);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值