x264enc: Fix 'ref' property range and default
authorNicolas Dufresne <nicolas.dufresne@collabora.com>
Thu, 2 Apr 2020 20:18:00 +0000 (16:18 -0400)
committerNicolas Dufresne <nicolas@ndufresne.ca>
Thu, 2 Apr 2020 20:26:07 +0000 (20:26 +0000)
The --ref option indicate the size of the DPB, hence should be in the range of
0 to 16. This patch also fix the default to match x264enc default 3. This
change isn't a behaviour change since we don't enforce the reported default.

ext/x264/gstx264enc.c

index ef1c28f26d74e3e3b49f219c215afb388beb19c5..961840ebc57109ac6765439b7937b40b4b06312f 100644 (file)
@@ -409,7 +409,7 @@ enum
 #define ARG_SUBME_DEFAULT              1
 #define ARG_ANALYSE_DEFAULT            0
 #define ARG_DCT8x8_DEFAULT             FALSE
-#define ARG_REF_DEFAULT                1
+#define ARG_REF_DEFAULT                3
 #define ARG_BFRAMES_DEFAULT            0
 #define ARG_B_ADAPT_DEFAULT            TRUE
 #define ARG_B_PYRAMID_DEFAULT          FALSE
@@ -1073,7 +1073,7 @@ gst_x264_enc_class_init (GstX264EncClass * klass)
   g_object_class_install_property (gobject_class, ARG_REF,
       g_param_spec_uint ("ref", "Reference Frames",
           "Number of reference frames",
-          1, 12, ARG_REF_DEFAULT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+          1, 16, ARG_REF_DEFAULT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
   g_string_append_printf (x264enc_defaults, ":ref=%d", ARG_REF_DEFAULT);
   g_object_class_install_property (gobject_class, ARG_BFRAMES,
       g_param_spec_uint ("bframes", "B-Frames",