diff --git a/src/media/audio/encode/audio_encoder.cpp b/src/media/audio/encode/audio_encoder.cpp index 4f807ac..162af6c 100644 --- a/src/media/audio/encode/audio_encoder.cpp +++ b/src/media/audio/encode/audio_encoder.cpp @@ -25,7 +25,7 @@ AudioEncoder::~AudioEncoder() { int AudioEncoder::Init() { last_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::steady_clock::now().time_since_epoch()) .count()); int err; @@ -61,7 +61,7 @@ int AudioEncoder::Encode( // uint32_t now_ts = static_cast( // std::chrono::duration_cast( - // std::chrono::high_resolution_clock::now().time_since_epoch()) + // std::chrono::steady_clock::now().time_since_epoch()) // .count()); // printf("1 Time cost: %d size: %d\n", now_ts - last_ts, size); diff --git a/src/media/video/decode/nvcodec/NvDecoder.cpp b/src/media/video/decode/nvcodec/NvDecoder.cpp index 4ecd395..58b2cb8 100644 --- a/src/media/video/decode/nvcodec/NvDecoder.cpp +++ b/src/media/video/decode/nvcodec/NvDecoder.cpp @@ -18,11 +18,11 @@ #include "nvcuvid.h" -#define START_TIMER auto start = std::chrono::high_resolution_clock::now(); +#define START_TIMER auto start = std::chrono::steady_clock::now(); #define STOP_TIMER(print_message) \ std::cout << print_message \ << std::chrono::duration_cast( \ - std::chrono::high_resolution_clock::now() - start) \ + std::chrono::steady_clock::now() - start) \ .count() \ << " ms " << std::endl; diff --git a/src/media/video/encode/openh264/openh264_encoder.cpp b/src/media/video/encode/openh264/openh264_encoder.cpp index 8c30dd1..8b45967 100644 --- a/src/media/video/encode/openh264/openh264_encoder.cpp +++ b/src/media/video/encode/openh264/openh264_encoder.cpp @@ -177,7 +177,7 @@ int OpenH264Encoder::Encode( raw_frame_.iPicHeight = frame_height_; raw_frame_.iColorFormat = EVideoFormatType::videoFormatI420; raw_frame_.uiTimeStamp = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + std::chrono::system_clock::now().time_since_epoch().count(); raw_frame_.iStride[0] = frame_width_; raw_frame_.iStride[1] = frame_width_ >> 1; diff --git a/src/rtp/rtp_audio_receiver.cpp b/src/rtp/rtp_audio_receiver.cpp index 6d56f3a..f901fa4 100644 --- a/src/rtp/rtp_audio_receiver.cpp +++ b/src/rtp/rtp_audio_receiver.cpp @@ -80,7 +80,7 @@ int RtpAudioReceiver::SendRtcpRR(RtcpReceiverReport& rtcp_rr) { bool RtpAudioReceiver::CheckIsTimeSendRR() { uint32_t now_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::system_clock::now().time_since_epoch()) .count()); if (now_ts - last_send_rtcp_rr_packet_ts_ >= RTCP_RR_INTERVAL) { diff --git a/src/rtp/rtp_audio_sender.cpp b/src/rtp/rtp_audio_sender.cpp index 27a481f..6b065ff 100644 --- a/src/rtp/rtp_audio_sender.cpp +++ b/src/rtp/rtp_audio_sender.cpp @@ -64,8 +64,7 @@ int RtpAudioSender::SendRtpPacket(RtpPacket& rtp_packet) { sender_info.ntp_ts_msw = (uint32_t)seconds_u32; sender_info.ntp_ts_lsw = (uint32_t)fraction_u32; sender_info.rtp_ts = - std::chrono::high_resolution_clock::now().time_since_epoch().count() * - 1000000; + std::chrono::system_clock::now().time_since_epoch().count() * 1000000; sender_info.sender_packet_count = total_rtp_packets_sent_; sender_info.sender_octet_count = total_rtp_payload_sent_; @@ -108,7 +107,7 @@ int RtpAudioSender::SendRtcpSR(RtcpSenderReport& rtcp_sr) { bool RtpAudioSender::CheckIsTimeSendSR() { uint32_t now_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::system_clock::now().time_since_epoch()) .count()); if (now_ts - last_send_rtcp_sr_packet_ts_ >= RTCP_SR_INTERVAL) { diff --git a/src/rtp/rtp_codec.cpp b/src/rtp/rtp_codec.cpp index 6e79459..c85c33e 100644 --- a/src/rtp/rtp_codec.cpp +++ b/src/rtp/rtp_codec.cpp @@ -48,8 +48,9 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, fec_encoder_.GetFecPacketsParams(size, num_of_total_packets, num_of_source_packets, last_packet_size); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); for (unsigned int index = 0; index < num_of_total_packets; index++) { RtpPacket rtp_packet; @@ -143,8 +144,9 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, rtp_packet.SetPayloadType(RtpPacket::PAYLOAD_TYPE(payload_type_)); rtp_packet.SetSequenceNumber(sequence_number_++); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); rtp_packet.SetTimestamp(timestamp_); rtp_packet.SetSsrc(ssrc_); @@ -169,8 +171,9 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, } else { size_t last_packet_size = size % MAX_NALU_LEN; size_t packet_num = size / MAX_NALU_LEN + (last_packet_size ? 1 : 0); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); for (size_t index = 0; index < packet_num; index++) { RtpPacket rtp_packet; @@ -230,8 +233,8 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, rtp_packet.SetPayloadType(RtpPacket::PAYLOAD_TYPE(payload_type_)); rtp_packet.SetSequenceNumber(sequence_number_++); - timestamp_ = std::chrono::high_resolution_clock::now() - .time_since_epoch() + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) .count(); rtp_packet.SetTimestamp(timestamp_); rtp_packet.SetSsrc(ssrc_); @@ -253,8 +256,8 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, size_t last_packet_size = obus[i].payload_size_ % MAX_NALU_LEN; size_t packet_num = obus[i].payload_size_ / MAX_NALU_LEN + (last_packet_size ? 1 : 0); - timestamp_ = std::chrono::high_resolution_clock::now() - .time_since_epoch() + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) .count(); for (size_t index = 0; index < packet_num; index++) { RtpPacket rtp_packet; @@ -300,8 +303,9 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, rtp_packet.SetPayloadType(RtpPacket::PAYLOAD_TYPE(payload_type_)); rtp_packet.SetSequenceNumber(sequence_number_++); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); rtp_packet.SetTimestamp(timestamp_); rtp_packet.SetSsrc(ssrc_); @@ -316,8 +320,9 @@ void RtpCodec::Encode(uint8_t* buffer, size_t size, rtp_packet.SetPayloadType(RtpPacket::PAYLOAD_TYPE(payload_type_)); rtp_packet.SetSequenceNumber(sequence_number_++); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); rtp_packet.SetTimestamp(timestamp_); rtp_packet.SetSsrc(ssrc_); @@ -341,8 +346,9 @@ void RtpCodec::Encode(VideoFrameType frame_type, uint8_t* buffer, size_t size, fec_encoder_.GetFecPacketsParams(size, num_of_total_packets, num_of_source_packets, last_packet_size); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); for (unsigned int index = 0; index < num_of_total_packets; index++) { RtpPacket rtp_packet; @@ -436,8 +442,10 @@ void RtpCodec::Encode(VideoFrameType frame_type, uint8_t* buffer, size_t size, rtp_packet.SetPayloadType(RtpPacket::PAYLOAD_TYPE(payload_type_)); rtp_packet.SetSequenceNumber(sequence_number_++); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); + rtp_packet.SetTimestamp(timestamp_); rtp_packet.SetSsrc(ssrc_); @@ -462,8 +470,9 @@ void RtpCodec::Encode(VideoFrameType frame_type, uint8_t* buffer, size_t size, } else { size_t last_packet_size = size % MAX_NALU_LEN; size_t packet_num = size / MAX_NALU_LEN + (last_packet_size ? 1 : 0); - timestamp_ = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + timestamp_ = std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); for (size_t index = 0; index < packet_num; index++) { RtpPacket rtp_packet; @@ -513,7 +522,9 @@ void RtpCodec::Encode(VideoFrameType frame_type, uint8_t* buffer, size_t size, // LOG_ERROR("Total size = [{}]", size); uint32_t timestamp = - std::chrono::high_resolution_clock::now().time_since_epoch().count(); + std::chrono::duration_cast( + std::chrono::system_clock::now().time_since_epoch()) + .count(); for (int i = 0; i < obus.size(); i++) { // LOG_ERROR("1 [{}] Obu size = [{}], Obu type [{}]", i, obus[i].size_, diff --git a/src/rtp/rtp_data_receiver.cpp b/src/rtp/rtp_data_receiver.cpp index 92e0bd4..8fa5907 100644 --- a/src/rtp/rtp_data_receiver.cpp +++ b/src/rtp/rtp_data_receiver.cpp @@ -80,7 +80,7 @@ int RtpDataReceiver::SendRtcpRR(RtcpReceiverReport& rtcp_rr) { bool RtpDataReceiver::CheckIsTimeSendRR() { uint32_t now_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::system_clock::now().time_since_epoch()) .count()); if (now_ts - last_send_rtcp_rr_packet_ts_ >= RTCP_RR_INTERVAL) { diff --git a/src/rtp/rtp_data_sender.cpp b/src/rtp/rtp_data_sender.cpp index 842505b..2059a97 100644 --- a/src/rtp/rtp_data_sender.cpp +++ b/src/rtp/rtp_data_sender.cpp @@ -64,8 +64,7 @@ int RtpDataSender::SendRtpPacket(RtpPacket& rtp_packet) { sender_info.ntp_ts_msw = (uint32_t)seconds_u32; sender_info.ntp_ts_lsw = (uint32_t)fraction_u32; sender_info.rtp_ts = - std::chrono::high_resolution_clock::now().time_since_epoch().count() * - 1000000; + std::chrono::system_clock::now().time_since_epoch().count() * 1000000; sender_info.sender_packet_count = total_rtp_packets_sent_; sender_info.sender_octet_count = total_rtp_payload_sent_; @@ -108,7 +107,7 @@ int RtpDataSender::SendRtcpSR(RtcpSenderReport& rtcp_sr) { bool RtpDataSender::CheckIsTimeSendSR() { uint32_t now_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::system_clock::now().time_since_epoch()) .count()); if (now_ts - last_send_rtcp_sr_packet_ts_ >= RTCP_SR_INTERVAL) { diff --git a/src/rtp/rtp_video_receiver.cpp b/src/rtp/rtp_video_receiver.cpp index 3fcaf69..5f74106 100644 --- a/src/rtp/rtp_video_receiver.cpp +++ b/src/rtp/rtp_video_receiver.cpp @@ -288,7 +288,7 @@ bool RtpVideoReceiver::Process() { compelete_video_frame_queue_.pop(video_frame); if (on_receive_complete_frame_) { // auto now_complete_frame_ts = - // std::chrono::high_resolution_clock::now().time_since_epoch().count() + // std::chrono::system_clock::now().time_since_epoch().count() // / 1000000; // uint32_t duration = now_complete_frame_ts - last_complete_frame_ts_; // LOG_ERROR("Duration {}", 1000 / duration); @@ -324,7 +324,7 @@ int RtpVideoReceiver::SendRtcpRR(RtcpReceiverReport& rtcp_rr) { bool RtpVideoReceiver::CheckIsTimeSendRR() { uint32_t now_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::system_clock::now().time_since_epoch()) .count()); if (now_ts - last_send_rtcp_rr_packet_ts_ >= RTCP_RR_INTERVAL) { diff --git a/src/rtp/rtp_video_sender.cpp b/src/rtp/rtp_video_sender.cpp index 062845d..7606d54 100644 --- a/src/rtp/rtp_video_sender.cpp +++ b/src/rtp/rtp_video_sender.cpp @@ -64,8 +64,7 @@ int RtpVideoSender::SendRtpPacket(RtpPacket& rtp_packet) { sender_info.ntp_ts_msw = (uint32_t)seconds_u32; sender_info.ntp_ts_lsw = (uint32_t)fraction_u32; sender_info.rtp_ts = - std::chrono::high_resolution_clock::now().time_since_epoch().count() * - 1000000; + std::chrono::system_clock::now().time_since_epoch().count() * 1000000; sender_info.sender_packet_count = total_rtp_packets_sent_; sender_info.sender_octet_count = total_rtp_payload_sent_; @@ -108,7 +107,7 @@ int RtpVideoSender::SendRtcpSR(RtcpSenderReport& rtcp_sr) { bool RtpVideoSender::CheckIsTimeSendSR() { uint32_t now_ts = static_cast( std::chrono::duration_cast( - std::chrono::high_resolution_clock::now().time_since_epoch()) + std::chrono::system_clock::now().time_since_epoch()) .count()); if (now_ts - last_send_rtcp_sr_packet_ts_ >= RTCP_SR_INTERVAL) {