1
1
# --- FFMPEG ---
2
- OCV_OPTION(OPENCV_FFMPEG_ENABLE_LIBAVDEVICE "Include FFMPEG/libavdevice library support." OFF
3
- VISIBLE_IF WITH_FFMPEG)
4
-
5
2
if (NOT HAVE_FFMPEG AND OPENCV_FFMPEG_USE_FIND_PACKAGE)
3
+ if (NOT HUNTER_ENABLED) ### NO INDENT
6
4
if (OPENCV_FFMPEG_USE_FIND_PACKAGE STREQUAL "1" OR OPENCV_FFMPEG_USE_FIND_PACKAGE STREQUAL "ON" )
7
5
set (OPENCV_FFMPEG_USE_FIND_PACKAGE "FFMPEG" )
8
6
endif ()
9
7
find_package (${OPENCV_FFMPEG_USE_FIND_PACKAGE} ) # Required components: AVCODEC AVFORMAT AVUTIL SWSCALE
10
8
if (FFMPEG_FOUND OR FFmpeg_FOUND)
11
9
set (HAVE_FFMPEG TRUE )
12
10
endif ()
11
+
12
+ else (HUNTER_ENABLED) ### NO INDENT
13
+ hunter_add_package(ffmpeg)
14
+ find_package (ffmpeg CONFIG REQUIRED)
15
+
16
+ set (FFMPEG_FOUND TRUE )
17
+ set (HAVE_FFMPEG TRUE )
18
+ foreach (lib avcodec avformat avutil swresample swscale)
19
+ get_target_property (
20
+ ${lib} _INCLUDE_DIR
21
+ ffmpeg::${lib}
22
+ INTERFACE_INCLUDE_DIRECTORIES
23
+ )
24
+ list (APPEND FFMPEG_INCLUDE_DIRS "${${lib} _INCLUDE_DIR}" )
25
+ list (APPEND FFMPEG_LIBRARIES "ffmpeg::${lib} " )
26
+ set (FFMPEG_lib${lib} _FOUND TRUE )
27
+ endforeach ()
28
+ list (REMOVE_DUPLICATES FFMPEG_INCLUDE_DIRS)
29
+ endif ()
13
30
endif ()
14
31
15
32
if (NOT HAVE_FFMPEG AND WIN32 AND NOT ARM AND NOT OPENCV_FFMPEG_SKIP_DOWNLOAD)
@@ -32,13 +49,6 @@ if(NOT HAVE_FFMPEG AND PKG_CONFIG_FOUND)
32
49
list (APPEND FFMPEG_LIBRARIES ${FFMPEG_libavresample_LIBRARIES} )
33
50
list (APPEND _used_ffmpeg_libraries libavresample)
34
51
endif ()
35
- if (OPENCV_FFMPEG_ENABLE_LIBAVDEVICE)
36
- ocv_check_modules(FFMPEG_libavdevice libavdevice) # optional
37
- if (FFMPEG_libavdevice_FOUND)
38
- list (APPEND FFMPEG_LIBRARIES ${FFMPEG_libavdevice_LIBRARIES} )
39
- list (APPEND _used_ffmpeg_libraries libavdevice)
40
- endif ()
41
- endif ()
42
52
set (HAVE_FFMPEG TRUE )
43
53
else ()
44
54
set (_missing_ffmpeg_libraries "" )
@@ -61,7 +71,6 @@ if(HAVE_FFMPEG AND NOT HAVE_FFMPEG_WRAPPER)
61
71
set (_min_libavutil_version 52.3.0)
62
72
set (_min_libswscale_version 2.1.1)
63
73
set (_min_libavresample_version 1.0.1)
64
- set (_min_libavdevice_version 53.2.0)
65
74
foreach (ffmpeg_lib ${_used_ffmpeg_libraries} )
66
75
if (FFMPEG_${ffmpeg_lib} _VERSION VERSION_LESS _min_${ffmpeg_lib} _version)
67
76
message (STATUS "FFMPEG is disabled. Can't find suitable ${ffmpeg_lib} library"
@@ -78,7 +87,6 @@ if(HAVE_FFMPEG AND NOT HAVE_FFMPEG_WRAPPER)
78
87
unset (_min_libavutil_version)
79
88
unset (_min_libswscale_version)
80
89
unset (_min_libavresample_version)
81
- unset (_min_libavdevice_version)
82
90
endif ()
83
91
84
92
#==================================
@@ -88,7 +96,7 @@ if(HAVE_FFMPEG AND NOT HAVE_FFMPEG_WRAPPER AND NOT OPENCV_FFMPEG_SKIP_BUILD_CHEC
88
96
"${OpenCV_BINARY_DIR} "
89
97
"${OpenCV_SOURCE_DIR} /cmake/checks/ffmpeg_test.cpp"
90
98
CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:STRING=${FFMPEG_INCLUDE_DIRS} "
91
- "-DLINK_LIBRARIES:STRING= ${FFMPEG_LIBRARIES} "
99
+ LINK_LIBRARIES ${FFMPEG_LIBRARIES}
92
100
OUTPUT_VARIABLE TRY_OUT
93
101
)
94
102
if (NOT __VALID_FFMPEG)
@@ -105,12 +113,7 @@ unset(_used_ffmpeg_libraries)
105
113
if (HAVE_FFMPEG_WRAPPER)
106
114
ocv_add_external_target(ffmpeg "" "" "HAVE_FFMPEG_WRAPPER" )
107
115
elseif (HAVE_FFMPEG)
108
- if (OPENCV_FFMPEG_ENABLE_LIBAVDEVICE AND FFMPEG_libavdevice_FOUND)
109
- set (HAVE_FFMPEG_LIBAVDEVICE TRUE )
110
- ocv_add_external_target(ffmpeg "${FFMPEG_INCLUDE_DIRS} " "${FFMPEG_LIBRARIES} " "HAVE_FFMPEG;HAVE_FFMPEG_LIBAVDEVICE" )
111
- else ()
112
- ocv_add_external_target(ffmpeg "${FFMPEG_INCLUDE_DIRS} " "${FFMPEG_LIBRARIES} " "HAVE_FFMPEG" )
113
- endif ()
116
+ ocv_add_external_target(ffmpeg "${FFMPEG_INCLUDE_DIRS} " "${FFMPEG_LIBRARIES} " "HAVE_FFMPEG" )
114
117
set (__builtin_defines "" )
115
118
set (__builtin_include_dirs "" )
116
119
set (__builtin_libs "" )
0 commit comments