Commit 343eecde authored by Tomaz Canabrava's avatar Tomaz Canabrava Committed by Daniel Agar

Correctly link against GStreamer

Video is still not being displayed, for some reason
parent d4492ef5
cmake_minimum_required(VERSION 3.2)
project(QGroundControl LANGUAGES CXX)
project(QGroundControl LANGUAGES C CXX)
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug;Release;RelWithDebInfo;MinSizeRel;Coverage")
......@@ -58,6 +58,16 @@ if (CCACHE AND CCACHE_PROGRAM AND NOT DEFINED ENV{CCACHE_DISABLE})
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
endif()
#=============================================================================
# GStreamer
#
find_package(PkgConfig)
pkg_check_modules(GST
gstreamer-1.0>=1.14
gstreamer-video-1.0>=1.14
)
#=============================================================================
# Qt5
#
......@@ -73,6 +83,7 @@ find_package(Qt5 ${QT_VERSION}
Positioning
Quick
QuickWidgets
OpenGL
Sql
Svg
Test
......
if (GST_FOUND)
include_directories(
${GST_INCLUDE_DIRS}
gstqtvideosink/utils/
)
set(EXTRA_SRC)
if(VIDEO)
list(APPEND EXTRA_SRC
gstqtvideosink/delegates/basedelegate.cpp
gstqtvideosink/delegates/qtquick2videosinkdelegate.cpp
gstqtvideosink/delegates/qtvideosinkdelegate.cpp
gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp
gstqtvideosink/gstqtglvideosink.cpp
gstqtvideosink/gstqtglvideosinkbase.cpp
gstqtvideosink/gstqtquick2videosink.cpp
gstqtvideosink/gstqtvideosink.cpp
gstqtvideosink/gstqtvideosinkbase.cpp
gstqtvideosink/gstqtvideosinkplugin.cpp
gstqtvideosink/gstqwidgetvideosink.cpp
gstqtvideosink/painters/genericsurfacepainter.cpp
gstqtvideosink/painters/openglsurfacepainter.cpp
gstqtvideosink/painters/videomaterial.cpp
gstqtvideosink/painters/videonode.cpp
gstqtvideosink/utils/bufferformat.cpp
gstqtvideosink/utils/utils.cpp
)
endif()
add_library(VideoStreaming
VideoItem.cc
VideoReceiver.cc
VideoStreaming.cc
VideoSurface.cc
SubtitleWriter.cc
${EXTRA_SRC}
)
set(EXTRA_SRC
gstqtvideosink/delegates/basedelegate.cpp
gstqtvideosink/delegates/qtquick2videosinkdelegate.cpp
gstqtvideosink/delegates/qtvideosinkdelegate.cpp
gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp
gstqtvideosink/gstqtglvideosink.cpp
gstqtvideosink/gstqtglvideosinkbase.cpp
gstqtvideosink/gstqtquick2videosink.cpp
gstqtvideosink/gstqtvideosink.cpp
gstqtvideosink/gstqtvideosinkbase.cpp
gstqtvideosink/gstqtvideosinkplugin.cpp
gstqtvideosink/gstqwidgetvideosink.cpp
gstqtvideosink/gstqtvideosinkmarshal.c
gstqtvideosink/painters/genericsurfacepainter.cpp
gstqtvideosink/painters/openglsurfacepainter.cpp
gstqtvideosink/painters/videomaterial.cpp
gstqtvideosink/painters/videonode.cpp
gstqtvideosink/utils/bufferformat.cpp
gstqtvideosink/utils/utils.cpp
)
target_link_libraries(VideoStreaming
PUBLIC
qgc
add_library(VideoStreaming
VideoItem.cc
VideoReceiver.cc
VideoStreaming.cc
VideoSurface.cc
SubtitleWriter.cc
${EXTRA_SRC}
)
Qt5::Multimedia
)
target_link_libraries(VideoStreaming
PUBLIC
qgc
Qt5::Multimedia
Qt5::OpenGL
${GST_LIBRARIES}
)
target_include_directories(VideoStreaming INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(VideoStreaming INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
endif()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment