GrabBag/Module/FFMediaStream/FFMediaStream.pro

73 lines
2.0 KiB
Prolog
Raw Normal View History

# FFMediaStream.pro
# 基于 ffmedia_release (Rockchip MPP/RGA/RTSP) 的二次封装
# 提供 RTSP 推流 (IVrFFMediaPusher) RTSP 拉流 (IVrFFMediaPuller) 接口
CONFIG -= qt
TEMPLATE = lib
DEFINES += FFMEDIASTREAM_LIBRARY
CONFIG += c++17
# 全平台使用动态库
CONFIG += shared
win32-msvc {
QMAKE_CXXFLAGS += /utf-8
QMAKE_CFLAGS += /utf-8
}
# 头文件路径
INCLUDEPATH += ./Inc
INCLUDEPATH += ./_Inc
INCLUDEPATH += $$PWD/../../Utils/VrCommon/Inc
INCLUDEPATH += $$PWD/../../Utils/VrUtils/Inc
# ffmedia 头文件
INCLUDEPATH += $$PWD/../../SDK/ffmedia_release/include
INCLUDEPATH += $$PWD/../../SDK/ffmedia_release/include/base
INCLUDEPATH += $$PWD/../../SDK/ffmedia_release/include/module
SOURCES += \
Src/CVrFFMediaPusher.cpp \
Src/CVrFFMediaPuller.cpp
HEADERS += \
Inc/IVrFFMediaPusher.h \
Inc/IVrFFMediaPuller.h \
_Inc/CVrFFMediaPusher.h \
_Inc/CVrFFMediaPuller.h
# 链接
win32:CONFIG(debug, debug|release) {
LIBS += -L../../Utils/VrUtils/debug -lVrUtils
}else:win32:CONFIG(release, debug|release){
LIBS += -L../../Utils/VrUtils/release -lVrUtils
}else:unix:!macx {
LIBS += -L../../Utils/VrUtils -lVrUtils
# ffmedia 主库(仅 ARM/Linux 真正可用Windows 下纯占位)
FFMEDIA_LIB_DIR = $$PWD/../../SDK/ffmedia_release/lib
RKNN_LIB_DIR = $$PWD/../../SDK/ffmedia_release/inference_examples/lib/RK3588
LIBS += -L$${FFMEDIA_LIB_DIR} -lff_media
QMAKE_LFLAGS += -Wl,-rpath-link,$${FFMEDIA_LIB_DIR}
QMAKE_LFLAGS += -Wl,-rpath-link,$${RKNN_LIB_DIR}
# 系统依赖RK3588rga / mpp / drm
# 这些库由 firefly 系统镜像自带,无需提供
LIBS += -lrga -lrockchip_mpp -ldrm -lpthread -ldl
}
# Windows 下提供编译占位(实现内部用 #ifdef __linux__ 守卫具体调用)
win32 {
DEFINES += FFMEDIA_PLATFORM_DUMMY
LIBS += -lws2_32
}
unix:!macx {
message("build FFMediaStream for unix (ffmedia_release)")
QMAKE_CXXFLAGS += -fPIC
target.path = /usr/lib
}
!isEmpty(target.path): INSTALLS += target