Revert "v4l2: setting device parameters early"
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 8 Nov 2014 11:43:50 +0000 (12:43 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 8 Nov 2014 13:26:27 +0000 (14:26 +0100)
This reverts commit b1ad9312331759679a9c956233716a67ae681d89.

Fixes Ticket #3517

Requested-by: Giorgio Vazzana <mywing81@gmail.com>
Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 6f21fb793238ab6a790b94b86084148d99373ddf)

Conflicts:
libavdevice/v4l2.c

libavdevice/v4l2.c

index 64df0c7..1e394fa 100644 (file)
@@ -868,9 +868,6 @@ static int v4l2_read_header(AVFormatContext *s1)
 
     avpriv_set_pts_info(st, 64, 1, 1000000); /* 64 bits pts in us */
 
-    if ((res = v4l2_set_parameters(s1)) < 0)
-        return res;
-
     if (s->pixel_format) {
         AVCodec *codec = avcodec_find_decoder_by_name(s->pixel_format);
 
@@ -922,6 +919,9 @@ static int v4l2_read_header(AVFormatContext *s1)
 
     s->frame_format = desired_format;
 
+    if ((res = v4l2_set_parameters(s1)) < 0)
+        return res;
+
     st->codec->pix_fmt = avpriv_fmt_v4l2ff(desired_format, codec_id);
     s->frame_size =
         avpicture_get_size(st->codec->pix_fmt, s->width, s->height);