summaryrefslogtreecommitdiff
path: root/vpx/vp8cx.h
diff options
context:
space:
mode:
authorYunqing Wang <yunqingwang@google.com>2017-02-13 12:29:31 -0800
committerYunqing Wang <yunqingwang@google.com>2017-02-13 13:02:26 -0800
commit318ca07657507e464556ffb909c28856eb6e1d13 (patch)
treed73cbbfb30c0680af0c96afa6c074b460b707705 /vpx/vp8cx.h
parente7db593a464d522ad22dadefaa80027cb19615f1 (diff)
downloadlibvpx-318ca07657507e464556ffb909c28856eb6e1d13.tar
libvpx-318ca07657507e464556ffb909c28856eb6e1d13.tar.gz
libvpx-318ca07657507e464556ffb909c28856eb6e1d13.tar.bz2
libvpx-318ca07657507e464556ffb909c28856eb6e1d13.zip
The bitstream bit match test in multi-threaded encoder
While the new-mt mode is enabled(namely, allowing to use row-based multi-threading in encoder), several speed features that adaptively adjust encoding parameters during encoding would cause mismatch between single-thread encoded bitstream and multi-thread encoded bitstream. This patch provides a set_control API to disable these features, so that the bit match bitstream is obtained in the unit test. Change-Id: Ie9868bafdfe196296d1dd29e0dca517f6a9a4d60
Diffstat (limited to 'vpx/vp8cx.h')
-rw-r--r--vpx/vp8cx.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/vpx/vp8cx.h b/vpx/vp8cx.h
index a04d7dd66..923734c61 100644
--- a/vpx/vp8cx.h
+++ b/vpx/vp8cx.h
@@ -555,6 +555,15 @@ enum vp8e_enc_control_id {
*/
VP9E_SET_NEW_MT,
+ /*!\brief Codec control function to enable the bit match result in multi-
+ * threaded encoder unit tests.
+ *
+ * 0 : off, 1 : on
+ *
+ * Supported in codecs: VP9
+ */
+ VP9E_ENABLE_THREAD_BIT_MATCH,
+
/*!\brief Codec control function to get bitstream level.
*
* Supported in codecs: VP9
@@ -849,6 +858,9 @@ VPX_CTRL_USE_TYPE(VP9E_SET_TARGET_LEVEL, unsigned int)
VPX_CTRL_USE_TYPE(VP9E_SET_NEW_MT, unsigned int)
#define VPX_CTRL_VP9E_SET_NEW_MT
+VPX_CTRL_USE_TYPE(VP9E_ENABLE_THREAD_BIT_MATCH, unsigned int)
+#define VPX_CTRL_VP9E_ENABLE_THREAD_BIT_MATCH
+
VPX_CTRL_USE_TYPE(VP9E_GET_LEVEL, int *)
#define VPX_CTRL_VP9E_GET_LEVEL