[FFmpeg-devel] [FFmpeg-cvslog] Merge commit '7cb1d9e2dbbe5bf4652be5d78cdd68e956fa3d63'

James Almer jamrial at gmail.com
Fri Oct 13 01:38:28 EEST 2017


On 10/12/2017 7:34 PM, Carl Eugen Hoyos wrote:
> 2017-10-13 0:24 GMT+02:00 James Almer <jamrial at gmail.com>:
>> On 10/12/2017 7:19 PM, Carl Eugen Hoyos wrote:
>>> 2017-10-13 0:12 GMT+02:00 James Almer <jamrial at gmail.com>:
>>>> On 10/12/2017 6:50 PM, Carl Eugen Hoyos wrote:
>>>>> 2017-10-12 23:45 GMT+02:00 James Almer <jamrial at gmail.com>:
>>>>>> On 10/12/2017 6:41 PM, Michael Niedermayer wrote:
>>>>>
>>>>>>> also video4linux is gone
>>>>>>>
>>>>>>> ./configure
>>>>>>> config.h:#define CONFIG_V4L2_INDEV 0
>>>>>>>
>>>>>>> and with a branch with all that reverted:
>>>>>>> ./configure
>>>>>>> config.h:#define CONFIG_V4L2_INDEV 1
>>>>>>
>>>>>> v4l2 is not autodetected.
>>>>>
>>>>> I tested several old versions, for the last 10 years,
>>>>> v4l2 indev was auto-detected.
>>>>>
>>>>> From tests with really old versions I know that
>>>>> video4linux (1) was always auto-detected (or
>>>>> auto-enabled).
>>>>>
>>>>> Carl Eugen
>>>>
>>>> configure has the line
>>>>
>>>> --enable-libv4l2         enable libv4l2/v4l-utils [no]
>>>>
>>>> And before the commit i mentioned, it had the line
>>>>
>>>> libv4l2_indev_deps="libv4l2"
>>>>
>>>> If you check alldevices.c, there's no indev called "libv4l2_indev", only
>>>> one called "v4l2_indev".
>>>> Since the latter had no dependency on libv4l2, it was of course always
>>>> enabled by default. I changed that in 734ed38931 (see ticket #6729,
>>>> where doing that fixed a failure).
>>>>
>>>> So that indev being auto-enabled might have been a mistake all this time.
>>>
>>> Sorry, what are you talking about?
>>> v4l2 was added in 2006 and auto-detected ever since.
>>> Before 2006, there was already v4l (1) which was
>>> auto-enabled since forever afair.
>>>
>>> There is a helper library called libv4l2 that - luckily -
>>> is not auto-detected and shouldn't be.
>>
>> So v4l2_indev should not depend on libv4l2?
> 
> No, definitely not.
> 
>> Any idea why doing that fixed ticket #6729?
> 
> Iiuc, it disabled v4l2 so all related build errors
> were fixed.
> 
> Since I am so slow, could you explain what issues
> were fixed by 6dfcbd80?

The extralibs from the libv4l2 pkg-config package were not added to the
ld command line for the user. By making v4l2_indev depend on that
package, that was solved.

Does the attached patch look like a better solution for this?
-------------- next part --------------
From 2f4b0bc8b551f0a8ef5f02f6be4177a420e90a65 Mon Sep 17 00:00:00 2001
From: James Almer <jamrial at gmail.com>
Date: Thu, 12 Oct 2017 19:36:19 -0300
Subject: [PATCH] configure: make v4l2 devices not depend on libv4l2

But use it if available.

Signed-off-by: James Almer <jamrial at gmail.com>
---
 configure | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index ade67a31bb..5b3d1887fa 100755
--- a/configure
+++ b/configure
@@ -3116,7 +3116,6 @@ kmsgrab_indev_deps="libdrm"
 lavfi_indev_deps="avfilter"
 libcdio_indev_deps="libcdio"
 libdc1394_indev_deps="libdc1394"
-v4l2_indev_deps="libv4l2"
 openal_indev_deps="openal"
 opengl_outdev_deps="opengl"
 oss_indev_deps_any="soundcard_h sys_soundcard_h"
@@ -3127,7 +3126,9 @@ sdl2_outdev_deps="sdl2"
 sndio_indev_deps="sndio"
 sndio_outdev_deps="sndio"
 v4l2_indev_deps_any="linux_videodev2_h sys_videoio_h"
+v4l2_indev_suggest="libv4l2"
 v4l2_outdev_deps_any="linux_videodev2_h sys_videoio_h"
+v4l2_outdev_suggest="libv4l2"
 vfwcap_indev_deps="vfw32 vfwcap_defines"
 xcbgrab_indev_deps="libxcb"
 xcbgrab_indev_suggest="libxcb_shm libxcb_shape libxcb_xfixes"
-- 
2.14.2



More information about the ffmpeg-devel mailing list