Skip to content

Commit 6f8e38e

Browse files
QuinnDamerell-MSjp9000
authored andcommitted
obs-outputs: Add FTL output
Closes obsproject#980
1 parent fa611dc commit 6f8e38e

File tree

6 files changed

+1273
-0
lines changed

6 files changed

+1273
-0
lines changed

.gitmodules

+3
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,6 @@
1313
[submodule "plugins/obs-vst"]
1414
path = plugins/obs-vst
1515
url = https://github.com/DDRBoxman/obs-vst.git
16+
[submodule "plugins/obs-outputs/ftl-sdk"]
17+
path = plugins/obs-outputs/ftl-sdk
18+
url = https://github.com/Mixer/ftl-sdk.git

plugins/obs-outputs/CMakeLists.txt

+61
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,63 @@ else()
1919
add_definitions(-DNO_CRYPTO)
2020
endif()
2121

22+
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/ftl-sdk/CMakeLists.txt")
23+
find_package(Libcurl REQUIRED)
24+
25+
include_directories(${LIBCURL_INCLUDE_DIRS})
26+
27+
set(ftl_SOURCES
28+
ftl-stream.c
29+
ftl-sdk/libftl/hmac/hmac.c
30+
ftl-sdk/libftl/hmac/sha2.c
31+
ftl-sdk/libftl/ftl-sdk.c
32+
ftl-sdk/libftl/handshake.c
33+
ftl-sdk/libftl/ingest.c
34+
ftl-sdk/libftl/ftl_helpers.c
35+
ftl-sdk/libftl/media.c
36+
ftl-sdk/libftl/gettimeofday/gettimeofday.c
37+
ftl-sdk/libftl/logging.c)
38+
set(ftl_HEADERS
39+
ftl-sdk/libftl/hmac/hmac.h
40+
ftl-sdk/libftl/hmac/sha2.h
41+
ftl-sdk/libftl/ftl.h
42+
ftl-sdk/libftl/ftl_private.h)
43+
set(ftl_IMPORTS
44+
${OBS_JANSSON_IMPORT}
45+
${LIBCURL_LIBRARIES})
46+
47+
if (WIN32)
48+
list(APPEND ftl_SOURCES
49+
ftl-sdk/libftl/win32/socket.c
50+
ftl-sdk/libftl/gettimeofday/gettimeofday.c
51+
ftl-sdk/libftl/win32/threads.c)
52+
list(APPEND ftl_HEADERS
53+
ftl-sdk/libftl/gettimeofday/gettimeofday.h
54+
ftl-sdk/libftl/win32/threads.h)
55+
56+
include_directories(ftl-sdk/libftl/win32)
57+
else()
58+
list(APPEND ftl_SOURCES
59+
ftl-sdk/libftl/posix/socket.c
60+
ftl-sdk/libftl/posix/threads.c)
61+
list(APPEND ftl_HEADERS
62+
ftl-sdk/libftl/posix/threads.h)
63+
64+
include_directories(ftl-sdk/libftl/posix)
65+
endif()
66+
67+
include_directories(ftl-sdk/libftl)
68+
69+
set(COMPILE_FTL TRUE)
70+
else()
71+
set(COMPILE_FTL FALSE)
72+
endif()
73+
74+
configure_file(
75+
"${CMAKE_CURRENT_SOURCE_DIR}/obs-outputs-config.h.in"
76+
"${CMAKE_BINARY_DIR}/plugins/obs-outputs/config/obs-outputs-config.h")
77+
78+
include_directories("${CMAKE_BINARY_DIR}/plugins/obs-outputs/config")
2279

2380
if(WIN32)
2481
set(obs-outputs_PLATFORM_DEPS
@@ -60,6 +117,7 @@ if(NOT WIN32)
60117
endif()
61118

62119
set(obs-outputs_HEADERS
120+
"${CMAKE_BINARY_DIR}/plugins/obs-outputs/config/obs-outputs-config.h"
63121
obs-output-ver.h
64122
rtmp-helpers.h
65123
rtmp-stream.h
@@ -75,6 +133,8 @@ set(obs-outputs_SOURCES
75133
net-if.c)
76134

77135
add_library(obs-outputs MODULE
136+
${ftl_SOURCES}
137+
${ftl_HEADERS}
78138
${obs-outputs_SOURCES}
79139
${obs-outputs_HEADERS}
80140
${obs-outputs_librtmp_SOURCES}
@@ -83,6 +143,7 @@ target_link_libraries(obs-outputs
83143
libobs
84144
${SSL_LIBRARIES}
85145
${ZLIB_LIBRARIES}
146+
${ftl_IMPORTS}
86147
${obs-outputs_PLATFORM_DEPS})
87148

88149
install_obs_plugin_with_data(obs-outputs data)

plugins/obs-outputs/ftl-sdk

Submodule ftl-sdk added at d39456c

0 commit comments

Comments
 (0)