summaryrefslogtreecommitdiff
path: root/sys/v4l2/gstv4l2.c
diff options
context:
space:
mode:
authorNicolas Dufresne <nicolas.dufresne@collabora.com>2017-07-26 15:18:01 -0400
committerNicolas Dufresne <nicolas.dufresne@collabora.com>2017-07-27 12:12:00 -0400
commitc5d0264bc9582e48a1c97617d2137faf45188d59 (patch)
tree7487fb7b90a1d81aa0c8e2120990238303cf1ca8 /sys/v4l2/gstv4l2.c
parent1762c2e7138c8550ba83bf02c229b1cf9c9af59c (diff)
v4l2: Add interface for MPEG4 encoding
Diffstat (limited to 'sys/v4l2/gstv4l2.c')
-rw-r--r--sys/v4l2/gstv4l2.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/sys/v4l2/gstv4l2.c b/sys/v4l2/gstv4l2.c
index 1a504c5c7..dd0ad22e8 100644
--- a/sys/v4l2/gstv4l2.c
+++ b/sys/v4l2/gstv4l2.c
@@ -48,6 +48,7 @@
#include "gstv4l2radio.h"
#include "gstv4l2videodec.h"
#include "gstv4l2h264enc.h"
+#include "gstv4l2mpeg4enc.h"
#include "gstv4l2deviceprovider.h"
#include "gstv4l2transform.h"
@@ -185,9 +186,14 @@ gst_v4l2_probe_and_register (GstPlugin * plugin)
if (gst_v4l2_is_video_dec (sink_caps, src_caps)) {
gst_v4l2_video_dec_register (plugin, basename, it->device_path,
sink_caps, src_caps);
- } else if (gst_v4l2_is_h264_enc (sink_caps, src_caps)) {
- gst_v4l2_h264_enc_register (plugin, basename, it->device_path,
- sink_caps, src_caps);
+ } else if (gst_v4l2_is_video_enc (sink_caps, src_caps)) {
+ if (gst_v4l2_is_h264_enc (sink_caps, src_caps))
+ gst_v4l2_h264_enc_register (plugin, basename, it->device_path,
+ sink_caps, src_caps);
+
+ if (gst_v4l2_is_mpeg4_enc (sink_caps, src_caps))
+ gst_v4l2_mpeg4_enc_register (plugin, basename, it->device_path,
+ sink_caps, src_caps);
} else if (gst_v4l2_is_transform (sink_caps, src_caps)) {
gst_v4l2_transform_register (plugin, basename, it->device_path,
sink_caps, src_caps);