encoders: h263, mpeg4 change bitrate attributes to unit kbps
authorWind Yuan <feng.yuan@intel.com>
Mon, 5 Nov 2012 07:34:24 +0000 (15:34 +0800)
committerZhong Cong <congx.zhong@intel.com>
Tue, 5 Feb 2013 07:37:12 +0000 (15:37 +0800)
gst-libs/gst/vaapi/gstvaapiencoder_h263.c
gst-libs/gst/vaapi/gstvaapiencoder_h263.h
gst-libs/gst/vaapi/gstvaapiencoder_mpeg4.c
gst/vaapi/gstvaapiencode_h263.c
gst/vaapi/gstvaapiencode_mpeg4.c

index d7de18d..520a60b 100644 (file)
@@ -78,7 +78,7 @@ gst_vaapi_encoder_h263_validate_attributes(
   /* default compress ratio 1: (4*8*1.5) */
   if (!encoder->bitrate) {
     encoder->bitrate =
-        ENCODER_WIDTH(encoder)*ENCODER_HEIGHT(encoder)*ENCODER_FPS(encoder)/4;
+        ENCODER_WIDTH(encoder)*ENCODER_HEIGHT(encoder)*ENCODER_FPS(encoder)/4/1024;
   }
   gst_vaapi_base_encoder_set_va_profile(GST_VAAPI_BASE_ENCODER(encoder),
                                         VAProfileH263Baseline);
@@ -173,7 +173,7 @@ gst_vaapi_encoder_h263_rendering(
     VAEncSequenceParameterBufferH263 seq_param = {0};
 
     seq_param.intra_period = encoder->intra_period;
-    seq_param.bits_per_second = encoder->bitrate;
+    seq_param.bits_per_second = encoder->bitrate * 1024;
     seq_param.frame_rate = ENCODER_FPS(encoder);
     seq_param.initial_qp = encoder->init_qp;
     seq_param.min_qp = encoder->min_qp;
index 1e567f7..610a135 100644 (file)
@@ -69,7 +69,7 @@ typedef struct _GstVaapiEncoderH263Class         GstVaapiEncoderH263Class;
 struct _GstVaapiEncoderH263 {
   GstVaapiBaseEncoder parent;   /*based on gobject*/
 
-  guint32  bitrate;
+  guint32  bitrate;  /*kbps*/
   guint32  intra_period;
   guint32  init_qp;  /*default 15, 1~31*/
   guint32  min_qp;   /*default 1, 1~31*/
index b420b2f..cf18e3e 100644 (file)
@@ -99,7 +99,7 @@ gst_vaapi_encoder_mpeg4_validate_attributes(
   /* default compress ratio 1: (4*8*1.5) */
   if (!encoder->bitrate) {
     encoder->bitrate =
-        ENCODER_WIDTH(encoder)*ENCODER_HEIGHT(encoder)*ENCODER_FPS(encoder)/4;
+        ENCODER_WIDTH(encoder)*ENCODER_HEIGHT(encoder)*ENCODER_FPS(encoder)/4/1024;
   }
   return TRUE;
 
@@ -217,7 +217,7 @@ gst_vaapi_encoder_mpeg4_rendering(
     if (seq_param.fixed_vop_rate) {
       seq_param.fixed_vop_time_increment = 1;
     }
-    seq_param.bits_per_second = encoder->bitrate;
+    seq_param.bits_per_second = encoder->bitrate * 1024;
     seq_param.frame_rate = ENCODER_FPS(encoder);
     seq_param.initial_qp = encoder->init_qp;
     seq_param.min_qp = encoder->min_qp; //mpeg4_encoder->min_qp;
index 827f6b6..ebbdffc 100644 (file)
@@ -198,10 +198,10 @@ gst_vaapi_encode_h263_class_init(GstVaapiEncodeH263Class *klass)
       H263_PROP_BITRATE,
       g_param_spec_uint (
           "bitrate",
-          "H263 encoding bitrate",
-          "H263 encoding bitrate, 10k~100M, (0, auto-calculate)",
+          "H263 encoding bitrate(kpbs)",
+          "H263 encoding bitrate(kbps), (0, auto-calculate)",
           0,
-          100*1000*1000,
+          100*1024,
           0,
           G_PARAM_READWRITE));
 
index 0992c3b..113c7a4 100644 (file)
@@ -224,10 +224,10 @@ gst_vaapi_encode_mpeg4_class_init(GstVaapiEncodeMpeg4Class *klass)
       MPEG4_PROP_BITRATE,
       g_param_spec_uint (
           "bitrate",
-          "MPEG4 encoding bitrate",
-          "MPEG4 encoding bitrate, 10k~100M, (0, auto-calculate)",
+          "MPEG4 encoding bitrate(kpbs)",
+          "MPEG4 encoding bitrate(kpbs), (0, auto-calculate)",
           0,
-          100*1000*1000,
+          100*1024,
           0,
           G_PARAM_READWRITE));