Rework how QP bounds are passed, AVC encoder
Pass via an (variable length) set of settings for picture types
instead of the fixed I/P/B types. Also makes it possible to
pass a max without also passing a min.
This is for the AVC software encoder; other codecs will be modified
accordingly.
Bug: 181830609
Test: vq testing, ALOG
Change-Id: I9086c0d83e625a7a815ce2c104352fdac165b927
(cherry picked from commit b3e76b60d9fd524681650f1608f606180040a186)
diff --git a/media/codec2/components/avc/C2SoftAvcEnc.h b/media/codec2/components/avc/C2SoftAvcEnc.h
index e4bf0b0..ee6d47a 100644
--- a/media/codec2/components/avc/C2SoftAvcEnc.h
+++ b/media/codec2/components/avc/C2SoftAvcEnc.h
@@ -100,6 +100,11 @@
#define STRLENGTH 500
#define DEFAULT_CONSTRAINED_INTRA 0
+/** limits as specified by h264 */
+#define CODEC_QP_MIN 0
+#define CODEC_QP_MAX 51
+
+
#define MIN(a, b) ((a) < (b))? (a) : (b)
#define MAX(a, b) ((a) > (b))? (a) : (b)
#define ALIGN16(x) ((((x) + 15) >> 4) << 4)
@@ -192,7 +197,6 @@
std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
std::shared_ptr<C2StreamBitrateInfo::output> mBitrate;
std::shared_ptr<C2StreamRequestSyncFrameTuning::output> mRequestSync;
- std::shared_ptr<C2StreamQuantizationInfo::output> mQuantization;
uint32_t mOutBufferSize;
UWORD32 mHeaderGenerated;