shithub: libvpx

Download patch

ref: 5784b9074a7dae90a3e6bcc84a49d5dbc504d0c6
parent: 1aa75c65cc5985d70390fc95f021ad25c91d270c
parent: 5dd146cb2643e62b849e8ddeed928b2f513355c0
author: Yaowu Xu <yaowu@google.com>
date: Thu Mar 12 17:27:04 EDT 2015

Merge changes Ic54c88ec,I6f120b65

* changes:
  Added comment for vp9 only codec controls
  Rename a vp9 only control with vp9e prefix

--- a/vp9/vp9_cx_iface.c
+++ b/vp9/vp9_cx_iface.c
@@ -694,7 +694,7 @@
     vpx_codec_alg_priv_t *ctx, va_list args) {
   struct vp9_extracfg extra_cfg = ctx->extra_cfg;
   extra_cfg.gf_cbr_boost_pct =
-      CAST(VP8E_SET_GF_CBR_BOOST_PCT, args);
+      CAST(VP9E_SET_GF_CBR_BOOST_PCT, args);
   return update_extra_cfg(ctx, &extra_cfg);
 }
 
@@ -1387,7 +1387,7 @@
   {VP8E_SET_CQ_LEVEL,                 ctrl_set_cq_level},
   {VP8E_SET_MAX_INTRA_BITRATE_PCT,    ctrl_set_rc_max_intra_bitrate_pct},
   {VP8E_SET_MAX_INTER_BITRATE_PCT,    ctrl_set_rc_max_inter_bitrate_pct},
-  {VP8E_SET_GF_CBR_BOOST_PCT,         ctrl_set_rc_gf_cbr_boost_pct},
+  {VP9E_SET_GF_CBR_BOOST_PCT,         ctrl_set_rc_gf_cbr_boost_pct},
   {VP9E_SET_LOSSLESS,                 ctrl_set_lossless},
   {VP9E_SET_FRAME_PARALLEL_DECODING,  ctrl_set_frame_parallel_decoding_mode},
   {VP9E_SET_AQ_MODE,                  ctrl_set_aq_mode},
--- a/vpx/vp8cx.h
+++ b/vpx/vp8cx.h
@@ -124,9 +124,9 @@
 #define VP8_EFLAG_NO_UPD_ENTROPY   (1<<20)
 
 
-/*!\brief VP8 encoder control functions
+/*!\brief VPx encoder control functions
  *
- * This set of macros define the control functions available for the VP8
+ * This set of macros define the control functions available for VPx
  * encoder interface.
  *
  * \sa #vpx_codec_control
@@ -223,8 +223,9 @@
    * For example, to allow 100% more bits, i.e, 2X, in a golden frame
    * than average frame, set this to 100.
    *
+   * Supported in codecs: VP9
    */
-  VP8E_SET_GF_CBR_BOOST_PCT,
+  VP9E_SET_GF_CBR_BOOST_PCT,
 
   /*!\brief Codec control function to set the temporal layer id
    *
@@ -247,6 +248,8 @@
    *                          1 = lossless coding mode
    *
    *  By default, encoder operates in normal coding mode (maybe lossy).
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_LOSSLESS,
 
@@ -268,6 +271,8 @@
    * is 4096).
    *
    * By default, the value is 0, i.e. one single column tile for entire image.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_TILE_COLUMNS,
 
@@ -286,6 +291,8 @@
    *            2 = 4 tile rows
    *
    * By default, the value is 0, i.e. one single row tile for entire image.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_TILE_ROWS,
 
@@ -298,6 +305,8 @@
    * turn this feature on or off for bitstreams produced by encoder.
    *
    * By default, this feature is off.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_FRAME_PARALLEL_DECODING,
 
@@ -309,6 +318,8 @@
    * several AQ_modes supported.
    *
    * By default, encoder operates with AQ_Mode 0(adaptive quantization off).
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_AQ_MODE,
 
@@ -322,6 +333,8 @@
    *
    * By default, the encoder is allowed to use this feature for appropriate
    * encoding modes.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_FRAME_PERIODIC_BOOST,
 
@@ -328,6 +341,8 @@
   /*!\brief control function to set noise sensitivity
    *
    *  0: off, 1: OnYOnly
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_NOISE_SENSITIVITY,
 
@@ -335,6 +350,8 @@
    * \note Return value is VPX_CODEC_INVALID_PARAM if the encoder does not
    *       support SVC in its current encoding mode
    *  0: off, 1: on
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_SVC,
 
@@ -341,6 +358,8 @@
   /*!\brief control function to set parameters for SVC.
    * \note Parameters contain min_q, max_q, scaling factor for each of the
    *       SVC layers.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_SVC_PARAMETERS,
 
@@ -348,6 +367,8 @@
    * \note Valid ranges: 0..#vpx_codec_enc_cfg::ss_number_layers for spatial
    *                     layer and 0..#vpx_codec_enc_cfg::ts_number_layers for
    *                     temporal layer.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_SVC_LAYER_ID,
 
@@ -355,6 +376,8 @@
    * \note Valid parameter range:
    *              VP9E_CONTENT_DEFAULT = Regular video content (Default)
    *              VP9E_CONTENT_SCREEN  = Screen capture content
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_TUNE_CONTENT,
 
@@ -361,6 +384,8 @@
   /*!\brief control function to get svc layer ID.
    * \note The layer ID returned is for the data packet from the registered
    *       callback function.
+   *
+   * Supported in codecs: VP9
    */
   VP9E_GET_SVC_LAYER_ID,
 
@@ -380,6 +405,8 @@
    *                     5 = BT_2020
    *                     6 = RESERVED
    *                     7 = SRGB
+   *
+   * Supported in codecs: VP9
    */
   VP9E_SET_COLOR_SPACE,
 };
@@ -531,9 +558,9 @@
 VPX_CTRL_USE_TYPE(VP8E_SET_MAX_INTRA_BITRATE_PCT, unsigned int)
 VPX_CTRL_USE_TYPE(VP8E_SET_MAX_INTER_BITRATE_PCT, unsigned int)
 
-VPX_CTRL_USE_TYPE(VP8E_SET_GF_CBR_BOOST_PCT, unsigned int)
-
 VPX_CTRL_USE_TYPE(VP8E_SET_SCREEN_CONTENT_MODE, unsigned int)
+
+VPX_CTRL_USE_TYPE(VP9E_SET_GF_CBR_BOOST_PCT, unsigned int)
 
 VPX_CTRL_USE_TYPE(VP9E_SET_LOSSLESS, unsigned int)
 
--- a/vpxenc.c
+++ b/vpxenc.c
@@ -457,7 +457,7 @@
   VP9E_SET_TILE_COLUMNS, VP9E_SET_TILE_ROWS,
   VP8E_SET_ARNR_MAXFRAMES, VP8E_SET_ARNR_STRENGTH, VP8E_SET_ARNR_TYPE,
   VP8E_SET_TUNING, VP8E_SET_CQ_LEVEL, VP8E_SET_MAX_INTRA_BITRATE_PCT,
-  VP8E_SET_MAX_INTER_BITRATE_PCT, VP8E_SET_GF_CBR_BOOST_PCT,
+  VP8E_SET_MAX_INTER_BITRATE_PCT, VP9E_SET_GF_CBR_BOOST_PCT,
   VP9E_SET_LOSSLESS, VP9E_SET_FRAME_PARALLEL_DECODING, VP9E_SET_AQ_MODE,
   VP9E_SET_FRAME_PERIODIC_BOOST, VP9E_SET_NOISE_SENSITIVITY,
   VP9E_SET_TUNE_CONTENT, VP9E_SET_COLOR_SPACE,