| Index: webrtc/modules/video_coding/codecs/test/videoprocessor.cc
|
| diff --git a/webrtc/modules/video_coding/codecs/test/videoprocessor.cc b/webrtc/modules/video_coding/codecs/test/videoprocessor.cc
|
| index e64babd599f4c4a59c8d2bda576d3f0cfc383f3f..9a9a0ddf16576e9232bdd9998c1cfe53bb5d1a6d 100644
|
| --- a/webrtc/modules/video_coding/codecs/test/videoprocessor.cc
|
| +++ b/webrtc/modules/video_coding/codecs/test/videoprocessor.cc
|
| @@ -17,6 +17,7 @@
|
| #include <memory>
|
| #include <vector>
|
|
|
| +#include "webrtc/base/timeutils.h"
|
| #include "webrtc/system_wrappers/include/cpu_info.h"
|
|
|
| namespace webrtc {
|
| @@ -198,7 +199,7 @@ bool VideoProcessorImpl::ProcessFrame(int frame_number) {
|
| // Ensure we have a new statistics data object we can fill:
|
| FrameStatistic& stat = stats_->NewFrame(frame_number);
|
|
|
| - encode_start_ = TickTime::Now();
|
| + encode_start_ns_ = rtc::TimeNanos();
|
| // Use the frame number as "timestamp" to identify frames
|
| source_frame_.set_timestamp(frame_number);
|
|
|
| @@ -248,11 +249,11 @@ void VideoProcessorImpl::FrameEncoded(
|
|
|
| encoded_frame_type_ = encoded_image._frameType;
|
|
|
| - TickTime encode_stop = TickTime::Now();
|
| + int64_t encode_stop_ns = rtc::TimeNanos();
|
| int frame_number = encoded_image._timeStamp;
|
| FrameStatistic& stat = stats_->stats_[frame_number];
|
| stat.encode_time_in_us =
|
| - GetElapsedTimeMicroseconds(encode_start_, encode_stop);
|
| + GetElapsedTimeMicroseconds(encode_start_ns_, encode_stop_ns);
|
| stat.encoding_successful = true;
|
| stat.encoded_frame_length_in_bytes = encoded_image._length;
|
| stat.frame_number = encoded_image._timeStamp;
|
| @@ -299,7 +300,7 @@ void VideoProcessorImpl::FrameEncoded(
|
|
|
| // Keep track of if frames are lost due to packet loss so we can tell
|
| // this to the encoder (this is handled by the RTP logic in the full stack)
|
| - decode_start_ = TickTime::Now();
|
| + decode_start_ns_ = rtc::TimeNanos();
|
| // TODO(kjellander): Pass fragmentation header to the decoder when
|
| // CL 172001 has been submitted and PacketManipulator supports this.
|
| int32_t decode_result =
|
| @@ -315,12 +316,12 @@ void VideoProcessorImpl::FrameEncoded(
|
| }
|
|
|
| void VideoProcessorImpl::FrameDecoded(const VideoFrame& image) {
|
| - TickTime decode_stop = TickTime::Now();
|
| + int64_t decode_stop_ns = rtc::TimeNanos();
|
| int frame_number = image.timestamp();
|
| // Report stats
|
| FrameStatistic& stat = stats_->stats_[frame_number];
|
| stat.decode_time_in_us =
|
| - GetElapsedTimeMicroseconds(decode_start_, decode_stop);
|
| + GetElapsedTimeMicroseconds(decode_start_ns_, decode_stop_ns);
|
| stat.decoding_successful = true;
|
|
|
| // Check for resize action (either down or up):
|
| @@ -378,10 +379,9 @@ void VideoProcessorImpl::FrameDecoded(const VideoFrame& image) {
|
| }
|
| }
|
|
|
| -int VideoProcessorImpl::GetElapsedTimeMicroseconds(
|
| - const webrtc::TickTime& start,
|
| - const webrtc::TickTime& stop) {
|
| - uint64_t encode_time = (stop - start).Microseconds();
|
| +int VideoProcessorImpl::GetElapsedTimeMicroseconds(int64_t start,
|
| + int64_t stop) {
|
| + uint64_t encode_time = (stop - start) / rtc::kNumNanosecsPerMicrosec;
|
| assert(encode_time <
|
| static_cast<unsigned int>(std::numeric_limits<int>::max()));
|
| return static_cast<int>(encode_time);
|
|
|