Revert "In GenericEncoder enable timing frames for encoders with internal source"
This reverts commit e24c41ea45fef7a49a24c5d905957aabcd3ba028. Reason for revert: Breaks downstream project. Original change's description: > In GenericEncoder enable timing frames for encoders with internal source > > Bug: webrtc:9058 > Change-Id: Iab75238cef9d8683d3f78b045d24dcca71427e14 > Reviewed-on: https://webrtc-review.googlesource.com/64446 > Reviewed-by: Erik Språng <sprang@webrtc.org> > Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#22640} TBR=ilnik@webrtc.org,sprang@webrtc.org # Skipping CQ checks because MAC bots are out of commission right now. No-Presubmit: True No-Tree-Checks: True No-Try: True Bug: webrtc:9058 Change-Id: I1d6258066e81b37b05d0ad0ff41d792f93d17ad9 Reviewed-on: https://webrtc-review.googlesource.com/65660 Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Cr-Commit-Position: refs/heads/master@{#22691}
This commit is contained in:

committed by
Commit Bot

parent
191bf5c653
commit
4157936823
@ -13,7 +13,6 @@
|
||||
#include "modules/video_coding/encoded_frame.h"
|
||||
#include "modules/video_coding/generic_encoder.h"
|
||||
#include "modules/video_coding/include/video_coding_defines.h"
|
||||
#include "rtc_base/fakeclock.h"
|
||||
#include "test/gtest.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -209,46 +208,6 @@ TEST(TestVCMEncodedFrameCallback, NoTimingFrameIfNoEncodeStartTime) {
|
||||
EXPECT_FALSE(sink.WasTimingFrame());
|
||||
}
|
||||
|
||||
TEST(TestVCMEncodedFrameCallback, AdjustsCaptureTimeForInternalSourceEncoder) {
|
||||
rtc::ScopedFakeClock clock;
|
||||
clock.SetTimeMicros(1234567);
|
||||
EncodedImage image;
|
||||
CodecSpecificInfo codec_specific;
|
||||
const int64_t kEncodeStartDelayMs = 2;
|
||||
const int64_t kEncodeFinishDelayMs = 10;
|
||||
int64_t timestamp = 1;
|
||||
image._length = 500;
|
||||
image.capture_time_ms_ = timestamp;
|
||||
image._timeStamp = static_cast<uint32_t>(timestamp * 90);
|
||||
codec_specific.codecType = kVideoCodecGeneric;
|
||||
codec_specific.codecSpecific.generic.simulcast_idx = 0;
|
||||
FakeEncodedImageCallback sink;
|
||||
VCMEncodedFrameCallback callback(&sink, nullptr);
|
||||
callback.SetInternalSource(true);
|
||||
VideoCodec::TimingFrameTriggerThresholds thresholds;
|
||||
thresholds.delay_ms = 1; // Make all frames timing frames.
|
||||
callback.SetTimingFramesThresholds(thresholds);
|
||||
callback.OnTargetBitrateChanged(500, 0);
|
||||
|
||||
// Verify a single frame without encode timestamps isn't a timing frame.
|
||||
callback.OnEncodedImage(image, &codec_specific, nullptr);
|
||||
EXPECT_FALSE(sink.WasTimingFrame());
|
||||
|
||||
// New frame, but this time with encode timestamps set in timing_.
|
||||
// This should be a timing frame.
|
||||
image.capture_time_ms_ = ++timestamp;
|
||||
image._timeStamp = static_cast<uint32_t>(timestamp * 90);
|
||||
image.timing_.encode_start_ms = timestamp + kEncodeStartDelayMs;
|
||||
image.timing_.encode_finish_ms = timestamp + kEncodeFinishDelayMs;
|
||||
callback.OnEncodedImage(image, &codec_specific, nullptr);
|
||||
EXPECT_TRUE(sink.WasTimingFrame());
|
||||
// Frame is captured kEncodeFinishDelayMs before it's encoded, so restored
|
||||
// capture timestamp should be kEncodeFinishDelayMs in the past.
|
||||
EXPECT_EQ(sink.GetLastCaptureTimestamp(),
|
||||
clock.TimeNanos() / rtc::kNumNanosecsPerMillisec -
|
||||
kEncodeFinishDelayMs);
|
||||
}
|
||||
|
||||
TEST(TestVCMEncodedFrameCallback, NotifiesAboutDroppedFrames) {
|
||||
EncodedImage image;
|
||||
CodecSpecificInfo codec_specific;
|
||||
|
Reference in New Issue
Block a user