From b6925d5c56aae3a1b40e8f99fe9cd8743815f8de Mon Sep 17 00:00:00 2001 From: Matthieu Bouron Date: Wed, 30 Oct 2013 12:39:24 +0000 Subject: [PATCH] avfvideosrc: only enable 1920x1080 preset on iOS --- sys/applemedia/avfvideosrc.m | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/sys/applemedia/avfvideosrc.m b/sys/applemedia/avfvideosrc.m index af8cb234c4..eda179e495 100644 --- a/sys/applemedia/avfvideosrc.m +++ b/sys/applemedia/avfvideosrc.m @@ -58,14 +58,18 @@ static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", VIDEO_CAPS_YUV (352, 288) ";" VIDEO_CAPS_YUV (640, 480) ";" VIDEO_CAPS_YUV (1280, 720) ";" +#if HAVE_IOS VIDEO_CAPS_YUV (1920, 1280) ";" +#endif VIDEO_CAPS_BGRA (192, 144) ";" VIDEO_CAPS_BGRA (480, 360) ";" VIDEO_CAPS_BGRA (352, 288) ";" VIDEO_CAPS_BGRA (640, 480) ";" - VIDEO_CAPS_BGRA (1280, 720) ";" - VIDEO_CAPS_BGRA (1920, 1280)) -); + VIDEO_CAPS_BGRA (1280, 720) +#if HAVE_IOS + ";" VIDEO_CAPS_BGRA (1920, 1280) +#endif +)); typedef enum _QueueState { NO_BUFFERS = 1, @@ -304,8 +308,10 @@ didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer gst_caps_append (result, GST_AVF_CAPS_NEW (gstformat, 640, 480)); if ([session canSetSessionPreset:AVCaptureSessionPreset1280x720]) gst_caps_append (result, GST_AVF_CAPS_NEW (gstformat, 1280, 720)); +#if HAVE_IOS if ([session canSetSessionPreset:AVCaptureSessionPreset1920x1080]) gst_caps_append (result, GST_AVF_CAPS_NEW (gstformat, 1920, 1080)); +#endif } return result; @@ -343,9 +349,11 @@ didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer case 1280: session.sessionPreset = AVCaptureSessionPreset1280x720; break; +#if HAVE_IOS case 1920: session.sessionPreset = AVCaptureSessionPreset1920x1080; break; +#endif default: g_assert_not_reached (); }