Skip to content
Draft

V3.0 #12

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
f86fe1c
CMake project
andrewGuzGRSE Aug 23, 2024
2a1c1bf
We should create submodules from scratch
andrewGuzGRSE Aug 24, 2024
09b685c
Add submodules once again
andrewGuzGRSE Aug 24, 2024
16bd807
Use master because with tag for PortAudio build fails
andrewGuzGRSE Aug 24, 2024
050ab36
Update build script to copy built Player to input folder
andrewGuzGRSE Aug 24, 2024
aab1422
Correct way to copy files to input folder
andrewGuzGRSE Aug 24, 2024
32b139c
Setup update
andrewGuzGRSE Aug 24, 2024
5e2d9a1
Update installer back
andrewGuzGRSE Sep 3, 2024
84b51e2
Correct path for plugins in installer
andrewGuzGRSE Sep 4, 2024
0112158
Do no use built FFmpeg as part of this repository
andrewGuzGRSE Sep 5, 2024
772220e
Use latest portaudio
andrewGuzGRSE Sep 5, 2024
98bc1bb
README.md updates since now we have no FFmpeg in repo.
andrewGuzGRSE Sep 5, 2024
ae28c6d
README.md updates since now we have no FFmpeg in repo.
andrewGuzGRSE Sep 5, 2024
077a5c1
Add signed-media-framework as submodule
andrew-guz Oct 21, 2024
c07150f
Ignore ffmpeg if present
andrew-guz Oct 21, 2024
cf0485d
Merge branch 'cmake-build' of https://github.com/andrewGuzGRSE/oxfpla…
andrewGuzGRSE Oct 21, 2024
8a4ed5d
Revert "Add signed-media-framework as submodule"
andrew-guz Oct 22, 2024
75c6ae4
Add signed-media-framework at project dependency
andrew-guz Oct 23, 2024
efe12a8
Link to SMF depending on Debug/Release
andrew-guz Oct 23, 2024
0000114
Add SMF library as external cause we will reuse it's VS projects
andrewGuzGRSE Oct 26, 2024
d096f37
Additional bat file to build third party libraries
andrewGuzGRSE Oct 26, 2024
95a3ea2
More correct name for 3rdparty projects and removed CmakeLists
andrewGuzGRSE Oct 26, 2024
207ce9f
Build updated to use VS2022, but without tests
andrewGuzGRSE Oct 26, 2024
32675e2
First test ready
andrewGuzGRSE Oct 26, 2024
05943d9
Update test
andrewGuzGRSE Oct 26, 2024
a0cb883
Two tests projects
andrewGuzGRSE Oct 26, 2024
31bade1
All tests
andrewGuzGRSE Oct 26, 2024
750aab1
Merge pull request #11 from andrewGuzGRSE/cmake-build
andrewGuzGRSE Oct 26, 2024
ba1b2d6
More correct post build step
andrewGuzGRSE Oct 28, 2024
19b7e75
Update documentation
andrewGuzGRSE Oct 28, 2024
b977f76
Switching to original SMF library
andrewGuzGRSE Oct 28, 2024
04d9686
Update README.md
KasperGRSE Oct 29, 2024
299d7b0
Update README.md
andrewGuzGRSE Oct 29, 2024
dc4ca9f
Merge branch 'v3.0' of https://github.com/onvif/oxfplayer into v3.0
andrewGuzGRSE Oct 29, 2024
f71accf
Fixing submodules and output file copy
andrewGuzGRSE Oct 29, 2024
4295aa0
Temporary remove incorrectly added submodule
andrewGuzGRSE Oct 29, 2024
bdd0911
Restore back SMF submodule
andrewGuzGRSE Oct 29, 2024
05bcb48
Correct call of SMF library with example
andrewGuzGRSE Oct 29, 2024
436b86e
Use specific branch for SMF library
andrewGuzGRSE Oct 30, 2024
5d204ae
adding the callback func into the qt gui and its called when validato…
Nov 1, 2024
c3c944d
Nice renaming
andrewGuzGRSE Nov 1, 2024
6177352
Receive validation result structure.
andrewGuzGRSE Nov 1, 2024
408b5f4
Dialog to validate using SMF
andrewGuzGRSE Nov 1, 2024
b343f43
Update submodule
andrewGuzGRSE Nov 5, 2024
4af928d
Submodule linbk updated
andrewGuzGRSE Nov 6, 2024
9ceff17
Improve dialog to select certificate path and codec.
andrewGuzGRSE Nov 6, 2024
12e3155
Take codec from opened file
andrewGuzGRSE Nov 6, 2024
e94cdc6
temp work on smfValidatorWidget
Nov 8, 2024
e5c06e3
sorting merge
Nov 8, 2024
51a1679
Submodule update
andrewGuzGRSE Nov 8, 2024
af49144
Validation dialog updated
andrewGuzGRSE Nov 8, 2024
bc75e9d
updated call to validate to handle bulk run
Nov 11, 2024
52e850f
Update submodule
andrewGuzGRSE Nov 11, 2024
3e377f9
Merge branch 'v3.0' of https://github.com/onvif/oxfplayer into v3.0
andrewGuzGRSE Nov 11, 2024
e2e805d
UI upgrade
andrewGuzGRSE Nov 11, 2024
a863b9b
Submodule upgrade
andrewGuzGRSE Nov 14, 2024
a332828
Submodule update
andrewGuzGRSE Nov 18, 2024
b88de4d
Validation UI will be filled from results file.
andrewGuzGRSE Nov 18, 2024
6f94e9a
Submodule update
andrewGuzGRSE Nov 19, 2024
47b06c8
Update submodule
andrewGuzGRSE Nov 19, 2024
8978cd6
Update submodue
andrewGuzGRSE Nov 19, 2024
0d21989
Increase minimum size and add posibility to resize SMF validation win…
andrewGuzGRSE Nov 20, 2024
caae0f4
Submodule update
andrewGuzGRSE Nov 21, 2024
09c7dbb
Player UI update as was discussed in emails
andrewGuzGRSE Nov 25, 2024
af382ae
Submodule update
andrewGuzGRSE Dec 5, 2024
8b2f103
Correct path so submodule
andrewGuzGRSE Dec 8, 2024
ab826ae
First version of Linux build
andrewGuzGRSE Dec 9, 2024
42db190
Documentation update to describe linux build
andrewGuzGRSE Dec 10, 2024
f294597
Documentation update
andrewGuzGRSE Dec 10, 2024
7006e8d
Documentation update
andrewGuzGRSE Dec 10, 2024
e34b4de
Replace OPENSSL_INSTALL_DIR_3_3_1 to OPENSSL_PATH, change portaudio a…
vladimir-dergachyov-grse Dec 16, 2024
724e407
Fix
vladimir-dergachyov-grse Dec 16, 2024
9dd8180
Add Ubuntu 24.04 instruction
vladimir-dergachyov-grse Dec 16, 2024
f72c214
Debug build fix
vladimir-dergachyov-grse Dec 17, 2024
f6e2e79
Debug build fix
vladimir-dergachyov-grse Dec 17, 2024
e0703bf
Merge pull request #14 from onvif/improvement/v3.0-player-readme
SergeyGRSE Jan 23, 2025
a247797
Merge pull request #15 from onvif/buildfix/v3.0
SergeyGRSE Jan 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Do not load folders used by Inno Setup
setup/input/
setup/output/
**/validation_results.txt
**/openssl_onvif_log.txt
9 changes: 9 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[submodule "portaudio"]
path = player/3rdparty/portaudio
url = https://github.com/PortAudio/portaudio.git
[submodule "pugixml"]
path = player/3rdparty/pugixml
url = https://github.com/zeux/pugixml.git
[submodule "signed-media-framework"]
path = player/3rdparty/signed-media-framework
url = https://github.com/onvif/signed-media-framework.git
45 changes: 45 additions & 0 deletions player/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

# Other folders
build/
.cache/
.vscode/
.vs/
x64/
Testing

# Visual Studio files
*.user

3rdparty/*ffmpeg*
13 changes: 13 additions & 0 deletions player/3rdparty/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
cmake_minimum_required(VERSION 3.25)

set(PROJECT_NAME OXFPlayerAdditional)

project(${PROJECT_NAME} VERSION 2.0.0 LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_CONFIGURATION_TYPES Debug Release)

add_subdirectory(portaudio)
add_subdirectory(pugixml)
1 change: 1 addition & 0 deletions player/3rdparty/portaudio
Submodule portaudio added at 57aa39
7 changes: 7 additions & 0 deletions player/3rdparty/prepare3rdparty.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
mkdir build

cd build

cmake ..

cd ..
1 change: 1 addition & 0 deletions player/3rdparty/pugixml
Submodule pugixml added at db78af
1 change: 1 addition & 0 deletions player/3rdparty/signed-media-framework
Submodule signed-media-framework added at 670f09
75 changes: 75 additions & 0 deletions player/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
cmake_minimum_required(VERSION 3.25)

if(NOT LINUX)
message( FATAL_ERROR "Only for linux build" )
endif()

project(ONVIFPlayer VERSION 2.0.0 LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_CONFIGURATION_TYPES Debug Release)

# Add a compiler flag
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")

# Allow test - muts be in root CMakeLists.txt
enable_testing(true)

# Find Qt
find_package(Qt5 COMPONENTS Core REQUIRED)
find_package(Qt5 COMPONENTS Widgets REQUIRED)
find_package(Qt5 COMPONENTS Network REQUIRED)
find_package(Qt5 COMPONENTS Multimedia REQUIRED)
find_package(Qt5 COMPONENTS Test REQUIRED)
# Find OpenSSL
find_package(OpenSSL REQUIRED)

# Add 3rd party as submodules
add_subdirectory(3rdparty/portaudio)
add_subdirectory(3rdparty/pugixml)

# Add signed media framework

# signed-media-framework
set(SIGNED_MEDIA_FRAMEWORK_VERSION 0.0.0)

find_package(PkgConfig REQUIRED)
pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0)
pkg_check_modules(GST REQUIRED IMPORTED_TARGET gstreamer-1.0>=1.22 gstreamer-sdp-1.0>=1.22
gstreamer-video-1.0>=1.22 gstreamer-app-1.0>=1.22)

# signed-media-framework plugin
project(
${PLUGIN_NAME}
VERSION ${SIGNED_MEDIA_FRAMEWORK_VERSION}
LANGUAGES C)
add_library(${PLUGIN_NAME} STATIC
./3rdparty/signed-media-framework/lib/plugins/${PLUGIN_NAME}/plugin.c)
target_include_directories(
${PLUGIN_NAME}
PUBLIC ./3rdparty/signed-media-framework/lib/src
PRIVATE ${GLIB_INCLUDE_DIRS})
target_link_libraries(${PLUGIN_NAME} INTERFACE ${GLIB_LDFLAGS})

# signed-media-framework library
project(
signed-media-framework
VERSION ${SIGNED_MEDIA_FRAMEWORK_VERSION}
LANGUAGES C)
file(GLOB SIGNED_MEDIA_FRAMEWORK_LIBRARY_SRC 3rdparty/signed-media-framework/lib/src/*)
add_library(signed-media-framework STATIC ${SIGNED_MEDIA_FRAMEWORK_LIBRARY_SRC})
target_include_directories(
signed-media-framework
PUBLIC
./3rdparty/signed-media-framework/lib/src
./3rdparty/signed-media-framework/lib/src/includes
PRIVATE ${GLIB_INCLUDE_DIRS})
target_link_libraries(signed-media-framework PRIVATE ${PLUGIN_NAME} PkgConfig::GLIB PkgConfig::GST)

# # Add source code
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
add_subdirectory(src)
Loading