mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-07-07 04:08:13 +08:00
copy srt official packet recve rate algorithm
This commit is contained in:
@@ -6,18 +6,19 @@
|
||||
#include "Packet.hpp"
|
||||
|
||||
namespace SRT {
|
||||
|
||||
class PacketRecvRateContext {
|
||||
public:
|
||||
PacketRecvRateContext(TimePoint start)
|
||||
: _start(start) {};
|
||||
PacketRecvRateContext(TimePoint start);
|
||||
~PacketRecvRateContext() = default;
|
||||
void inputPacket(TimePoint &ts);
|
||||
uint32_t getPacketRecvRate();
|
||||
|
||||
void inputPacket(TimePoint &ts,size_t len = 0);
|
||||
uint32_t getPacketRecvRate(uint32_t& bytesps);
|
||||
static const int SIZE = 16;
|
||||
private:
|
||||
TimePoint _start;
|
||||
std::map<int64_t, int64_t> _pkt_map;
|
||||
TimePoint _last_arrive_time;
|
||||
int64_t _ts_arr[SIZE];
|
||||
size_t _size_arr[SIZE];
|
||||
size_t _cur_idx;
|
||||
//std::map<int64_t, int64_t> _pkt_map;
|
||||
};
|
||||
|
||||
class EstimatedLinkCapacityContext {
|
||||
@@ -32,6 +33,7 @@ private:
|
||||
std::map<int64_t, int64_t> _pkt_map;
|
||||
};
|
||||
|
||||
/*
|
||||
class RecvRateContext {
|
||||
public:
|
||||
RecvRateContext(TimePoint start)
|
||||
@@ -44,6 +46,6 @@ private:
|
||||
TimePoint _start;
|
||||
std::map<int64_t, size_t> _pkt_map;
|
||||
};
|
||||
|
||||
*/
|
||||
} // namespace SRT
|
||||
#endif // ZLMEDIAKIT_SRT_STATISTIC_H
|
||||
Reference in New Issue
Block a user