Merged FrameBuffer3 {Next,Last}DecodableTemporalUnitRtpTimestamp() function.
Bug: webrtc:13343
Change-Id: Ic21eddd38466e6b5fd8b912b3ee2d9dc47a0ba35
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260981
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36756}
diff --git a/modules/video_coding/frame_buffer3.h b/modules/video_coding/frame_buffer3.h
index 5bcfbd2..aef26d4 100644
--- a/modules/video_coding/frame_buffer3.h
+++ b/modules/video_coding/frame_buffer3.h
@@ -31,6 +31,11 @@
// The FrameBuffer is thread-unsafe.
class FrameBuffer {
public:
+ struct DecodabilityInfo {
+ uint32_t next_rtp_timestamp;
+ uint32_t last_rtp_timestamp;
+ };
+
// The `max_size` determines the maxmimum number of frames the buffer will
// store, and max_decode_history determines how far back (by frame ID) the
// buffer will store if a frame was decoded or not.
@@ -56,8 +61,7 @@
absl::optional<int64_t> LastContinuousFrameId() const;
absl::optional<int64_t> LastContinuousTemporalUnitFrameId() const;
- absl::optional<uint32_t> NextDecodableTemporalUnitRtpTimestamp() const;
- absl::optional<uint32_t> LastDecodableTemporalUnitRtpTimestamp() const;
+ absl::optional<DecodabilityInfo> DecodableTemporalUnitsInfo() const;
int GetTotalNumberOfContinuousTemporalUnits() const;
int GetTotalNumberOfDroppedFrames() const;
@@ -87,7 +91,7 @@
const size_t max_size_;
FrameMap frames_;
absl::optional<TemporalUnit> next_decodable_temporal_unit_;
- absl::optional<uint32_t> last_decodable_temporal_unit_timestamp_;
+ absl::optional<DecodabilityInfo> decodable_temporal_units_info_;
absl::optional<int64_t> last_continuous_frame_id_;
absl::optional<int64_t> last_continuous_temporal_unit_frame_id_;
video_coding::DecodedFramesHistory decoded_frame_history_;