| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- # - Try to find ffmpeg libraries (libavcodec, libavformat and libavutil)
- # Once done this will define
- #
- # FFMPEG_FOUND - system has ffmpeg or libav
- # FFMPEG_INCLUDE_DIR - the ffmpeg include directory
- # FFMPEG_LIBRARIES - Link these to use ffmpeg
- # FFMPEG_LIBAVCODEC
- # FFMPEG_LIBAVFORMAT
- # FFMPEG_LIBAVUTIL
- #
- # Copyright (c) 2008 Andreas Schneider <mail@cynapses.org>
- # Modified for other libraries by Lasse Kärkkäinen <tronic>
- # Modified for Hedgewars by Stepik777
- # Modified for FFmpeg-example Tuukka Pasanen 2018
- # Modified for yuzu toastUnlimted 2020
- #
- # Redistribution and use is allowed according to the terms of the New
- # BSD license.
- #
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(FFMPEG
- FOUND_VAR FFMPEG_FOUND
- REQUIRED_VARS
- FFMPEG_LIBRARY
- FFMPEG_INCLUDE_DIR
- VERSION_VAR FFMPEG_VERSION
- )
- if(FFMPEG_LIBRARIES AND FFMPEG_INCLUDE_DIR)
- # in cache already
- set(FFMPEG_FOUND TRUE)
- else()
- # use pkg-config to get the directories and then use these values
- # in the FIND_PATH() and FIND_LIBRARY() calls
- find_package(PkgConfig)
- if(PKG_CONFIG_FOUND)
- pkg_check_modules(_FFMPEG_AVCODEC libavcodec)
- pkg_check_modules(_FFMPEG_AVUTIL libavutil)
- pkg_check_modules(_FFMPEG_SWSCALE libswscale)
- endif()
- find_path(FFMPEG_AVCODEC_INCLUDE_DIR
- NAMES libavcodec/avcodec.h
- PATHS ${_FFMPEG_AVCODEC_INCLUDE_DIRS}
- /usr/include
- /usr/local/include
- /opt/local/include
- /sw/include
- PATH_SUFFIXES ffmpeg libav)
- find_library(FFMPEG_LIBAVCODEC
- NAMES avcodec
- PATHS ${_FFMPEG_AVCODEC_LIBRARY_DIRS}
- /usr/lib
- /usr/local/lib
- /opt/local/lib
- /sw/lib)
- find_library(FFMPEG_LIBAVUTIL
- NAMES avutil
- PATHS ${_FFMPEG_AVUTIL_LIBRARY_DIRS}
- /usr/lib
- /usr/local/lib
- /opt/local/lib
- /sw/lib)
- find_library(FFMPEG_LIBSWSCALE
- NAMES swscale
- PATHS ${_FFMPEG_SWSCALE_LIBRARY_DIRS}
- /usr/lib
- /usr/local/lib
- /opt/local/lib
- /sw/lib)
- if(FFMPEG_LIBAVCODEC AND FFMPEG_LIBAVUTIL AND FFMPEG_LIBSWSCALE)
- set(FFMPEG_FOUND TRUE)
- endif()
- if(FFMPEG_FOUND)
- set(FFMPEG_INCLUDE_DIR ${FFMPEG_AVCODEC_INCLUDE_DIR})
- set(FFMPEG_LIBRARIES
- ${FFMPEG_LIBAVCODEC}
- ${FFMPEG_LIBAVUTIL}
- ${FFMPEG_LIBSWSCALE})
- endif()
- if(FFMPEG_FOUND)
- if(NOT FFMPEG_FIND_QUIETLY)
- message(STATUS
- "Found FFMPEG or Libav: ${FFMPEG_LIBRARIES}, ${FFMPEG_INCLUDE_DIR}")
- endif()
- else()
- if(FFMPEG_FIND_REQUIRED)
- message(FATAL_ERROR
- "Could not find libavcodec or libavutil or libswscale")
- endif()
- endif()
- endif()
|