[longomatch] Use an identity when ffdeinterlace is not available



commit ae5eea841a27f79badaa09f8a2bfb40a1eed2de9
Author: Andoni Morales Alastruey <ylatuya gmail com>
Date:   Mon Dec 1 20:05:52 2014 +0100

    Use an identity when ffdeinterlace is not available

 libcesarplayer/gst-camera-capturer.c |    2 ++
 libcesarplayer/gst-video-encoder.c   |    2 ++
 2 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/libcesarplayer/gst-camera-capturer.c b/libcesarplayer/gst-camera-capturer.c
index a232fe9..2cf1302 100644
--- a/libcesarplayer/gst-camera-capturer.c
+++ b/libcesarplayer/gst-camera-capturer.c
@@ -512,6 +512,8 @@ gst_camera_capturer_prepare_dv_source (GstCameraCapturer * gcc)
   decodebin = gst_element_factory_make ("decodebin2", NULL);
   colorspace = gst_element_factory_make ("ffmpegcolorspace", "video-pad");
   deinterlacer = gst_element_factory_make ("ffdeinterlace", NULL);
+  if (deinterlacer == NULL)
+    deinterlacer = gst_element_factory_make ("identity", NULL);
 
   gst_bin_add_many (GST_BIN (bin), decodebin, colorspace, deinterlacer, NULL);
   gst_element_link (colorspace, deinterlacer);
diff --git a/libcesarplayer/gst-video-encoder.c b/libcesarplayer/gst-video-encoder.c
index 80b7fe8..f3e6cd6 100644
--- a/libcesarplayer/gst-video-encoder.c
+++ b/libcesarplayer/gst-video-encoder.c
@@ -230,6 +230,8 @@ gst_video_encoder_create_encoder_bin (GstVideoEncoder * gve)
 
   colorspace1 = gst_element_factory_make ("ffmpegcolorspace", NULL);
   deinterlace = gst_element_factory_make ("ffdeinterlace", NULL);
+  if (deinterlace == null)
+    deinterlace = gst_element_factory_make ("identity", NULL);
   colorspace2 = gst_element_factory_make ("ffmpegcolorspace", "colorspace2");
   videoscale = gst_element_factory_make ("videoscale", "gve_videoscale");
   framerate = gst_element_factory_make ("videorate", "gve_videorate");


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]