[gst-cvs] gst-plugins-bad: Make GstBaseVideoEncoder:: handle_frame return GstFlowReturn

Alessandro Decina alessandro at kemper.freedesktop.org
Fri Oct 2 03:14:59 PDT 2009


Module: gst-plugins-bad
Branch: master
Commit: 40d832918a4a2eaba108c8a0de9ab861ba95e771
URL:    http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=40d832918a4a2eaba108c8a0de9ab861ba95e771

Author: Alessandro Decina <alessandro.d at gmail.com>
Date:   Thu Oct  1 16:26:22 2009 +0200

Make GstBaseVideoEncoder::handle_frame return GstFlowReturn

---

 gst-libs/gst/video/gstbasevideoencoder.c |    5 +++--
 gst-libs/gst/video/gstbasevideoencoder.h |    2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/gst-libs/gst/video/gstbasevideoencoder.c b/gst-libs/gst/video/gstbasevideoencoder.c
index 70e6fa7..bd644a6 100644
--- a/gst-libs/gst/video/gstbasevideoencoder.c
+++ b/gst-libs/gst/video/gstbasevideoencoder.c
@@ -357,6 +357,7 @@ gst_base_video_encoder_chain (GstPad * pad, GstBuffer * buf)
   GstBaseVideoEncoder *base_video_encoder;
   GstBaseVideoEncoderClass *klass;
   GstVideoFrame *frame;
+  GstFlowReturn ret = GST_FLOW_OK;
 
   if (!gst_pad_is_negotiated (pad)) {
     return GST_FLOW_NOT_NEGOTIATED;
@@ -389,12 +390,12 @@ gst_base_video_encoder_chain (GstPad * pad, GstBuffer * buf)
   base_video_encoder->frames =
       g_list_append (base_video_encoder->frames, frame);
 
-  klass->handle_frame (base_video_encoder, frame);
+  ret = klass->handle_frame (base_video_encoder, frame);
 
 done:
   g_object_unref (base_video_encoder);
 
-  return GST_FLOW_OK;
+  return ret;
 }
 
 static GstStateChangeReturn
diff --git a/gst-libs/gst/video/gstbasevideoencoder.h b/gst-libs/gst/video/gstbasevideoencoder.h
index 7b9f23b..7d60a64 100644
--- a/gst-libs/gst/video/gstbasevideoencoder.h
+++ b/gst-libs/gst/video/gstbasevideoencoder.h
@@ -90,7 +90,7 @@ struct _GstBaseVideoEncoderClass
   gboolean (*start) (GstBaseVideoEncoder *coder);
   gboolean (*stop) (GstBaseVideoEncoder *coder);
   gboolean (*finish) (GstBaseVideoEncoder *coder, GstVideoFrame *frame);
-  gboolean (*handle_frame) (GstBaseVideoEncoder *coder, GstVideoFrame *frame);
+  GstFlowReturn (*handle_frame) (GstBaseVideoEncoder *coder, GstVideoFrame *frame);
   GstFlowReturn (*shape_output) (GstBaseVideoEncoder *coder, GstVideoFrame *frame);
   GstCaps *(*get_caps) (GstBaseVideoEncoder *coder);
 





More information about the Gstreamer-commits mailing list