v4l2object: Don't use mmap64 if off_t is 64-bit
[platform/upstream/gst-plugins-good.git] / sys / v4l2 / gstv4l2videoenc.h
index d1c029b..f03acd5 100644 (file)
@@ -30,8 +30,6 @@
 #include <gstv4l2object.h>
 #include <gstv4l2bufferpool.h>
 
-GST_DEBUG_CATEGORY_EXTERN (v4l2videoenc_debug);
-
 G_BEGIN_DECLS
 #define GST_TYPE_V4L2_VIDEO_ENC \
   (gst_v4l2_video_enc_get_type())
@@ -43,6 +41,9 @@ G_BEGIN_DECLS
   (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_VIDEO_ENC))
 #define GST_IS_V4L2_VIDEO_ENC_CLASS(obj) \
   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_VIDEO_ENC))
+#define GST_V4L2_VIDEO_ENC_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_VIDEO_ENC, GstV4l2VideoEncClass))
+
 typedef struct _GstV4l2VideoEnc GstV4l2VideoEnc;
 typedef struct _GstV4l2VideoEncClass GstV4l2VideoEncClass;
 
@@ -71,15 +72,22 @@ struct _GstV4l2VideoEncClass
   GstVideoEncoderClass parent_class;
 
   gchar *default_device;
+  const char *codec_name;
+
+  guint32 profile_cid;
+  const gchar * (*profile_to_string) (gint v4l2_profile);
+  gint (*profile_from_string) (const gchar * profile);
 
-  GstFlowReturn (*get_output_caps) (GstVideoEncoder * encoder,
-      GstCaps ** outcaps);
+  guint32 level_cid;
+  const gchar * (*level_to_string) (gint v4l2_level);
+  gint (*level_from_string) (const gchar * level);
 };
 
 GType gst_v4l2_video_enc_get_type (void);
 
 
-gboolean gst_v4l2_is_video_enc (GstCaps * sink_caps, GstCaps * src_caps);
+gboolean gst_v4l2_is_video_enc (GstCaps * sink_caps, GstCaps * src_caps,
+    GstCaps * codec_caps);
 
 void gst_v4l2_video_enc_register (GstPlugin * plugin, GType type,
     const char *codec, const gchar * basename, const gchar * device_path,