Browse Source

Correctly link against GStreamer

Video is still not being displayed, for some reason
QGC4.4
Tomaz Canabrava 6 years ago committed by Daniel Agar
parent
commit
343eecdec9
  1. 13
      CMakeLists.txt
  2. 79
      src/VideoStreaming/CMakeLists.txt

13
CMakeLists.txt

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
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}) @@ -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} @@ -73,6 +83,7 @@ find_package(Qt5 ${QT_VERSION}
Positioning
Quick
QuickWidgets
OpenGL
Sql
Svg
Test

79
src/VideoStreaming/CMakeLists.txt

@ -1,41 +1,46 @@ @@ -1,41 +1,46 @@
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()

Loading…
Cancel
Save