Add thumbnail support via ffmpeg API (incomplete

This commit is contained in:
2023-08-26 22:11:55 +08:00
parent cc856801bf
commit 8d8cade692
17 changed files with 638 additions and 5 deletions

View File

@@ -0,0 +1,33 @@
find_package(PkgConfig)
if (PkgConfig_FOUND)
pkg_check_modules(PC_AVCODEC QUIET IMPORTED_TARGET GLOBAL libavcodec)
endif()
if (PC_AVCODEC_FOUND)
set(AVCODEC_FOUND TRUE)
set(AVCODEC_VERSION ${PC_AVCODEC_VERSION})
set(AVCODEC_VERSION_STRING ${PC_AVCODEC_STRING})
set(AVCODEC_LIBRARYS ${PC_AVCODEC_LIBRARIES})
if (USE_STATIC_LIBS)
set(AVCODEC_INCLUDE_DIRS ${PC_AVCODEC_STATIC_INCLUDE_DIRS})
else()
set(AVCODEC_INCLUDE_DIRS ${PC_AVCODEC_INCLUDE_DIRS})
endif()
if (NOT AVCODEC_INCLUDE_DIRS)
find_path(AVCODEC_INCLUDE_DIRS NAMES libavcodec/avcodec.h)
endif()
if (NOT TARGET AVCODEC::AVCODEC)
add_library(AVCODEC::AVCODEC ALIAS PkgConfig::PC_AVCODEC)
endif()
else()
message(FATAL_ERROR "failed.")
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(AVCODEC
FOUND_VAR AVCODEC_FOUND
REQUIRED_VARS
AVCODEC_LIBRARYS
AVCODEC_INCLUDE_DIRS
VERSION_VAR AVCODEC_VERSION
)

View File

@@ -0,0 +1,33 @@
find_package(PkgConfig)
if (PkgConfig_FOUND)
pkg_check_modules(PC_AVFORMAT QUIET IMPORTED_TARGET GLOBAL libavformat)
endif()
if (PC_AVFORMAT_FOUND)
set(AVFORMAT_FOUND TRUE)
set(AVFORMAT_VERSION ${PC_AVFORMAT_VERSION})
set(AVFORMAT_VERSION_STRING ${PC_AVFORMAT_STRING})
set(AVFORMAT_LIBRARYS ${PC_AVFORMAT_LIBRARIES})
if (USE_STATIC_LIBS)
set(AVFORMAT_INCLUDE_DIRS ${PC_AVFORMAT_STATIC_INCLUDE_DIRS})
else()
set(AVFORMAT_INCLUDE_DIRS ${PC_AVFORMAT_INCLUDE_DIRS})
endif()
if (NOT AVFORMAT_INCLUDE_DIRS)
find_path(AVFORMAT_INCLUDE_DIRS NAMES libavformat/avformat.h)
endif()
if (NOT TARGET AVFORMAT::AVFORMAT)
add_library(AVFORMAT::AVFORMAT ALIAS PkgConfig::PC_AVFORMAT)
endif()
else()
message(FATAL_ERROR "failed.")
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(AVFORMAT
FOUND_VAR AVFORMAT_FOUND
REQUIRED_VARS
AVFORMAT_LIBRARYS
AVFORMAT_INCLUDE_DIRS
VERSION_VAR AVFORMAT_VERSION
)

View File

@@ -0,0 +1,33 @@
find_package(PkgConfig)
if (PkgConfig_FOUND)
pkg_check_modules(PC_AVUTIL QUIET IMPORTED_TARGET GLOBAL libavutil)
endif()
if (PC_AVUTIL_FOUND)
set(AVUTIL_FOUND TRUE)
set(AVUTIL_VERSION ${PC_AVUTIL_VERSION})
set(AVUTIL_VERSION_STRING ${PC_AVUTIL_STRING})
set(AVUTIL_LIBRARYS ${PC_AVUTIL_LIBRARIES})
if (USE_STATIC_LIBS)
set(AVUTIL_INCLUDE_DIRS ${PC_AVUTIL_STATIC_INCLUDE_DIRS})
else()
set(AVUTIL_INCLUDE_DIRS ${PC_AVUTIL_INCLUDE_DIRS})
endif()
if (NOT AVUTIL_INCLUDE_DIRS)
find_path(AVUTIL_INCLUDE_DIRS NAMES libavutil/avutil.h)
endif()
if (NOT TARGET AVUTIL::AVUTIL)
add_library(AVUTIL::AVUTIL ALIAS PkgConfig::PC_AVUTIL)
endif()
else()
message(FATAL_ERROR "failed.")
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(AVUTIL
FOUND_VAR AVUTIL_FOUND
REQUIRED_VARS
AVUTIL_LIBRARYS
AVUTIL_INCLUDE_DIRS
VERSION_VAR AVUTIL_VERSION
)

View File

@@ -0,0 +1,32 @@
find_package(PkgConfig)
if (PkgConfig_FOUND)
pkg_check_modules(PC_SWSCALE QUIET IMPORTED_TARGET GLOBAL libswscale)
endif()
if (PC_SWSCALE_FOUND)
set(SWSCALE_FOUND TRUE)
set(SWSCALE_VERSION ${PC_SWSCALE_VERSION})
set(SWSCALE_VERSION_STRING ${PC_SWSCALE_STRING})
set(SWSCALE_LIBRARYS ${PC_SWSCALE_LIBRARIES})
if (USE_STATIC_LIBS)
set(SWSCALE_INCLUDE_DIRS ${PC_SWSCALE_STATIC_INCLUDE_DIRS})
else()
set(SWSCALE_INCLUDE_DIRS ${PC_SWSCALE_INCLUDE_DIRS})
endif()
if (NOT SWSCALE_INCLUDE_DIRS)
find_path(SWSCALE_INCLUDE_DIRS NAMES libswscale/swscale.h)
endif()
if (NOT TARGET SWSCALE::SWSCALE)
add_library(SWSCALE::SWSCALE ALIAS PkgConfig::PC_SWSCALE)
endif()
else()
message(FATAL_ERROR "failed.")
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(SWSCALE
FOUND_VAR SWSCALE_FOUND
REQUIRED_VARS
SWSCALE_LIBRARYS
VERSION_VAR SWSCALE_VERSION
)