Kernel: Never depends on another globals for global variables

pull/2204/head
winlin 4 years ago
parent d8ba72fdc5
commit 6dac180627

@ -38,10 +38,10 @@ using namespace std;
#include <srs_protocol_kbps.hpp>
SrsPps* _srs_pps_ids = new SrsPps(_srs_clock);
SrsPps* _srs_pps_fids = new SrsPps(_srs_clock);
SrsPps* _srs_pps_fids_level0 = new SrsPps(_srs_clock);
SrsPps* _srs_pps_dispose = new SrsPps(_srs_clock);
SrsPps* _srs_pps_ids = new SrsPps();
SrsPps* _srs_pps_fids = new SrsPps();
SrsPps* _srs_pps_fids_level0 = new SrsPps();
SrsPps* _srs_pps_dispose = new SrsPps();
ISrsDisposingHandler::ISrsDisposingHandler()
{

@ -30,7 +30,7 @@ using namespace std;
#include <srs_protocol_kbps.hpp>
SrsPps* _srs_pps_timer = new SrsPps(_srs_clock);
SrsPps* _srs_pps_timer = new SrsPps();
ISrsHourGlass::ISrsHourGlass()
{

@ -44,10 +44,10 @@ extern unsigned long long _st_stat_recvfrom;
extern unsigned long long _st_stat_recvfrom_eagain;
extern unsigned long long _st_stat_sendto;
extern unsigned long long _st_stat_sendto_eagain;
SrsPps* _srs_pps_recvfrom = new SrsPps(_srs_clock);
SrsPps* _srs_pps_recvfrom_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sendto = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sendto_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_recvfrom = new SrsPps();
SrsPps* _srs_pps_recvfrom_eagain = new SrsPps();
SrsPps* _srs_pps_sendto = new SrsPps();
SrsPps* _srs_pps_sendto_eagain = new SrsPps();
extern unsigned long long _st_stat_read;
extern unsigned long long _st_stat_read_eagain;
@ -55,12 +55,12 @@ extern unsigned long long _st_stat_readv;
extern unsigned long long _st_stat_readv_eagain;
extern unsigned long long _st_stat_writev;
extern unsigned long long _st_stat_writev_eagain;
SrsPps* _srs_pps_read = new SrsPps(_srs_clock);
SrsPps* _srs_pps_read_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_readv = new SrsPps(_srs_clock);
SrsPps* _srs_pps_readv_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_writev = new SrsPps(_srs_clock);
SrsPps* _srs_pps_writev_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_read = new SrsPps();
SrsPps* _srs_pps_read_eagain = new SrsPps();
SrsPps* _srs_pps_readv = new SrsPps();
SrsPps* _srs_pps_readv_eagain = new SrsPps();
SrsPps* _srs_pps_writev = new SrsPps();
SrsPps* _srs_pps_writev_eagain = new SrsPps();
extern unsigned long long _st_stat_recvmsg;
extern unsigned long long _st_stat_recvmsg_eagain;
@ -68,21 +68,21 @@ extern unsigned long long _st_stat_sendmsg;
extern unsigned long long _st_stat_sendmsg_eagain;
extern unsigned long long _st_stat_sendmmsg;
extern unsigned long long _st_stat_sendmmsg_eagain;
SrsPps* _srs_pps_recvmsg = new SrsPps(_srs_clock);
SrsPps* _srs_pps_recvmsg_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sendmsg = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sendmsg_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sendmmsg = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sendmmsg_eagain = new SrsPps(_srs_clock);
SrsPps* _srs_pps_recvmsg = new SrsPps();
SrsPps* _srs_pps_recvmsg_eagain = new SrsPps();
SrsPps* _srs_pps_sendmsg = new SrsPps();
SrsPps* _srs_pps_sendmsg_eagain = new SrsPps();
SrsPps* _srs_pps_sendmmsg = new SrsPps();
SrsPps* _srs_pps_sendmmsg_eagain = new SrsPps();
extern unsigned long long _st_stat_epoll;
extern unsigned long long _st_stat_epoll_zero;
extern unsigned long long _st_stat_epoll_shake;
extern unsigned long long _st_stat_epoll_spin;
SrsPps* _srs_pps_epoll = new SrsPps(_srs_clock);
SrsPps* _srs_pps_epoll_zero = new SrsPps(_srs_clock);
SrsPps* _srs_pps_epoll_shake = new SrsPps(_srs_clock);
SrsPps* _srs_pps_epoll_spin = new SrsPps(_srs_clock);
SrsPps* _srs_pps_epoll = new SrsPps();
SrsPps* _srs_pps_epoll_zero = new SrsPps();
SrsPps* _srs_pps_epoll_shake = new SrsPps();
SrsPps* _srs_pps_epoll_spin = new SrsPps();
extern unsigned long long _st_stat_sched_15ms;
extern unsigned long long _st_stat_sched_20ms;
@ -93,26 +93,26 @@ extern unsigned long long _st_stat_sched_40ms;
extern unsigned long long _st_stat_sched_80ms;
extern unsigned long long _st_stat_sched_160ms;
extern unsigned long long _st_stat_sched_s;
SrsPps* _srs_pps_sched_15ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_20ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_25ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_30ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_35ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_40ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_80ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_160ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_s = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sched_15ms = new SrsPps();
SrsPps* _srs_pps_sched_20ms = new SrsPps();
SrsPps* _srs_pps_sched_25ms = new SrsPps();
SrsPps* _srs_pps_sched_30ms = new SrsPps();
SrsPps* _srs_pps_sched_35ms = new SrsPps();
SrsPps* _srs_pps_sched_40ms = new SrsPps();
SrsPps* _srs_pps_sched_80ms = new SrsPps();
SrsPps* _srs_pps_sched_160ms = new SrsPps();
SrsPps* _srs_pps_sched_s = new SrsPps();
#endif
SrsPps* _srs_pps_clock_15ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_20ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_25ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_30ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_35ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_40ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_80ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_160ms = new SrsPps(_srs_clock);
SrsPps* _srs_pps_timer_s = new SrsPps(_srs_clock);
SrsPps* _srs_pps_clock_15ms = new SrsPps();
SrsPps* _srs_pps_clock_20ms = new SrsPps();
SrsPps* _srs_pps_clock_25ms = new SrsPps();
SrsPps* _srs_pps_clock_30ms = new SrsPps();
SrsPps* _srs_pps_clock_35ms = new SrsPps();
SrsPps* _srs_pps_clock_40ms = new SrsPps();
SrsPps* _srs_pps_clock_80ms = new SrsPps();
SrsPps* _srs_pps_clock_160ms = new SrsPps();
SrsPps* _srs_pps_timer_s = new SrsPps();
#if defined(SRS_DEBUG) && defined(SRS_DEBUG_STATS)
extern int _st_active_count;
@ -120,10 +120,10 @@ extern unsigned long long _st_stat_thread_run;
extern unsigned long long _st_stat_thread_idle;
extern unsigned long long _st_stat_thread_yield;
extern unsigned long long _st_stat_thread_yield2;
SrsPps* _srs_pps_thread_run = new SrsPps(_srs_clock);
SrsPps* _srs_pps_thread_idle = new SrsPps(_srs_clock);
SrsPps* _srs_pps_thread_yield = new SrsPps(_srs_clock);
SrsPps* _srs_pps_thread_yield2 = new SrsPps(_srs_clock);
SrsPps* _srs_pps_thread_run = new SrsPps();
SrsPps* _srs_pps_thread_idle = new SrsPps();
SrsPps* _srs_pps_thread_yield = new SrsPps();
SrsPps* _srs_pps_thread_yield2 = new SrsPps();
#endif
ISrsHybridServer::ISrsHybridServer()

@ -45,11 +45,11 @@ using namespace std;
#include <srs_protocol_kbps.hpp>
SrsPps* _srs_pps_rpkts = new SrsPps(_srs_clock);
SrsPps* _srs_pps_addrs = new SrsPps(_srs_clock);
SrsPps* _srs_pps_fast_addrs = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rpkts = new SrsPps();
SrsPps* _srs_pps_addrs = new SrsPps();
SrsPps* _srs_pps_fast_addrs = new SrsPps();
SrsPps* _srs_pps_spkts = new SrsPps(_srs_clock);
SrsPps* _srs_pps_spkts = new SrsPps();
// set the max packet size.
#define SRS_UDP_MAX_PACKET_SIZE 65535

@ -60,15 +60,15 @@ using namespace std;
#include <srs_protocol_kbps.hpp>
SrsPps* _srs_pps_sstuns = new SrsPps(_srs_clock);
SrsPps* _srs_pps_srtcps = new SrsPps(_srs_clock);
SrsPps* _srs_pps_srtps = new SrsPps(_srs_clock);
SrsPps* _srs_pps_pli = new SrsPps(_srs_clock);
SrsPps* _srs_pps_twcc = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rr = new SrsPps(_srs_clock);
SrsPps* _srs_pps_pub = new SrsPps(_srs_clock);
SrsPps* _srs_pps_conn = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sstuns = new SrsPps();
SrsPps* _srs_pps_srtcps = new SrsPps();
SrsPps* _srs_pps_srtps = new SrsPps();
SrsPps* _srs_pps_pli = new SrsPps();
SrsPps* _srs_pps_twcc = new SrsPps();
SrsPps* _srs_pps_rr = new SrsPps();
SrsPps* _srs_pps_pub = new SrsPps();
SrsPps* _srs_pps_conn = new SrsPps();
extern SrsPps* _srs_pps_snack;
extern SrsPps* _srs_pps_snack2;

@ -46,9 +46,9 @@ using namespace std;
#include <srs_protocol_utility.hpp>
extern SrsPps* _srs_pps_rpkts;
SrsPps* _srs_pps_rstuns = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rrtps = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rrtcps = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rstuns = new SrsPps();
SrsPps* _srs_pps_rrtps = new SrsPps();
SrsPps* _srs_pps_rrtcps = new SrsPps();
extern SrsPps* _srs_pps_addrs;
extern SrsPps* _srs_pps_fast_addrs;

@ -51,15 +51,15 @@
#include <srs_protocol_kbps.hpp>
// The NACK sent by us(SFU).
SrsPps* _srs_pps_snack = new SrsPps(_srs_clock);
SrsPps* _srs_pps_snack2 = new SrsPps(_srs_clock);
SrsPps* _srs_pps_sanack = new SrsPps(_srs_clock);
SrsPps* _srs_pps_svnack = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rnack = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rnack2 = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rhnack = new SrsPps(_srs_clock);
SrsPps* _srs_pps_rmnack = new SrsPps(_srs_clock);
SrsPps* _srs_pps_snack = new SrsPps();
SrsPps* _srs_pps_snack2 = new SrsPps();
SrsPps* _srs_pps_sanack = new SrsPps();
SrsPps* _srs_pps_svnack = new SrsPps();
SrsPps* _srs_pps_rnack = new SrsPps();
SrsPps* _srs_pps_rnack2 = new SrsPps();
SrsPps* _srs_pps_rhnack = new SrsPps();
SrsPps* _srs_pps_rmnack = new SrsPps();
// Firefox defaults as 109, Chrome is 111.
const int kAudioPayloadType = 111;

@ -59,9 +59,9 @@ void srs_pps_update(SrsRateSample& sample, int64_t nn, srs_utime_t now)
sample.update(nn, now, pps);
}
SrsPps::SrsPps(SrsWallClock* c)
SrsPps::SrsPps()
{
clk_ = c;
clk_ = NULL;
sugar = 0;
}
@ -69,6 +69,11 @@ SrsPps::~SrsPps()
{
}
void SrsPps::set_clock(SrsWallClock* clk)
{
clk_ = clk;
}
void SrsPps::update()
{
update(sugar);
@ -76,6 +81,11 @@ void SrsPps::update()
void SrsPps::update(int64_t nn)
{
// Lazy setup the clock.
if (!clk_) {
clk_ = _srs_clock;
}
srs_utime_t now = clk_->now();
srs_pps_init(sample_10s_, nn, now);

@ -61,9 +61,11 @@ public:
// Sugar for target to stat.
int64_t sugar;
public:
SrsPps(SrsWallClock* clk);
SrsPps();
virtual ~SrsPps();
public:
// Setup the clock, use global clock if not set.
void set_clock(SrsWallClock* clk);
// Update with the nn which is target.
void update();
// Update with the nn.

@ -36,7 +36,7 @@ using namespace std;
#include <srs_kernel_kbps.hpp>
SrsPps* _srs_pps_objs_rtps = new SrsPps(_srs_clock);
SrsPps* _srs_pps_objs_rtps = new SrsPps();
/* @see https://tools.ietf.org/html/rfc1889#section-5.1
0 1 2 3

@ -35,8 +35,8 @@ using namespace std;
#include <srs_protocol_kbps.hpp>
SrsPps* _srs_pps_cids_get = new SrsPps(_srs_clock);
SrsPps* _srs_pps_cids_set = new SrsPps(_srs_clock);
SrsPps* _srs_pps_cids_get = new SrsPps();
SrsPps* _srs_pps_cids_set = new SrsPps();
#define SRS_BASIC_LOG_SIZE 8192

Loading…
Cancel
Save