# 需要引入ffmpeg頭文件,以這個配置的目錄爲基準
include_directories(${PROJECT_SOURCE_DIR}/ffmpeg/include)
#添加外部共享庫搜索路徑
LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/ffmpeg/lib)
add_library(avutil-56 SHARED IMPORTED)
add_library(avcodec-58 SHARED IMPORTED)
add_library(avformat-58 SHARED IMPORTED)
add_library(swresample-3 SHARED IMPORTED)
add_library(swscale-5 SHARED IMPORTED)
add_library(avfilter-7 SHARED IMPORTED)
add_library(postproc-55 SHARED IMPORTED)
add_library(avdevice-58 SHARED IMPORTED)
set_target_properties(avcodec-58 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libavcodec.so.58.54.100)
set_target_properties(avformat-58 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libavformat.so.58.29.100)
set_target_properties(avutil-56 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libavutil.so.56.31.100)
set_target_properties(swresample-3 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libswresample.so.3.5.100)
set_target_properties(swscale-5 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libswscale.so.5.5.100)
set_target_properties(avfilter-7 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libavfilter.so.7.57.100)
set_target_properties(postproc-55 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libpostproc.so.55.5.100)
set_target_properties(avdevice-58 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libavdevice.so.58.8.100)
set_target_properties(avutil-56 PROPERTIES IMPORTED_LOCATION
${PROJECT_SOURCE_DIR}/ffmpeg/lib/libavutil.so.56.31.100)
#math
link_libraries(m)
find_package(Threads)
#生成可執行文件 注意順序
ADD_EXECUTABLE(CMakeFF ./src/ffplay.c ./src/cmdutils.c main.c)
#爲hello添加ffmpeg共享庫鏈接
target_link_libraries(
CMakeFF
# Specifies the target library.
# 鏈接額外的 ffmpeg 的編譯
# 工具庫(大部分庫都需要這個庫的支持)
avcodec-58
# 封裝格式處理庫
avformat-58
avutil-56
# 音頻採樣數據格式轉換庫
swresample-3
# 視頻像素數據格式轉換
swscale-5
avfilter-7
postproc-55
avdevice-58
${GTK2_LIBRARIES}
SDL2
gthread-2.0
-lpthread
)