Skip to content

Commit

Permalink
Merge branch 'staging'
Browse files Browse the repository at this point in the history
  • Loading branch information
paperManu committed Mar 5, 2024
2 parents 90a9b65 + 5d22eec commit 0047827
Show file tree
Hide file tree
Showing 30 changed files with 1,316 additions and 44 deletions.
14 changes: 7 additions & 7 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ analysis:static-analysis:
extends:
- .amd64
- .ubuntu
image: ubuntu:23.10
image: ubuntu:24.04
script:
- DEBIAN_FRONTEND=noninteractive apt install -y clang-tools
- ./make_deps.sh
Expand Down Expand Up @@ -202,12 +202,12 @@ staging:22.04:gcc-arm64-bundled-libs:
rules:
- if: $CI_COMMIT_BRANCH == 'staging'

staging:23.10:gcc-amd64-system-libs:
staging:24.04:gcc-amd64-system-libs:
stage: staging
extends:
- .amd64
- .ubuntu
image: ubuntu:23.10
image: ubuntu:24.04
script:
- DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends libglm-dev
libsnappy-dev libzmq3-dev
Expand All @@ -222,12 +222,12 @@ staging:23.10:gcc-amd64-system-libs:
rules:
- if: $CI_COMMIT_BRANCH == 'staging'

staging:23.10:clang-amd64-system-libs:
staging:24.04:clang-amd64-system-libs:
stage: staging
extends:
- .amd64
- .ubuntu
image: ubuntu:23.10
image: ubuntu:24.04
script:
- DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends libglm-dev
libsnappy-dev libzmq3-dev clang
Expand Down Expand Up @@ -372,11 +372,11 @@ package:debian:22.04:
- if: $CI_COMMIT_TAG =~ /^\d+\.\d+\.\d+$/
- if: $CI_COMMIT_BRANCH == 'master'

package:debian:23.10:
package:debian:24.04:
stage: package
extends:
- .ubuntu
image: ubuntu:23.10
image: ubuntu:24.04
script:
# Build package
- ./make_deps.sh
Expand Down
5 changes: 4 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ endif()

project(
splash
VERSION 0.10.6
VERSION 0.10.8
LANGUAGES C CXX
)

Expand Down Expand Up @@ -100,6 +100,7 @@ if (BUILD_CODE)
pkg_search_module(GPHOTO libgphoto2)
pkg_search_module(JACK jack)
pkg_search_module(PORTAUDIO portaudio-2.0)
pkg_search_module(SH4LT sh4lt-0.1)
pkg_search_module(SHMDATA shmdata-1.3)
pkg_search_module(CALIMIRO calimiro-0.2)
endif()
Expand Down Expand Up @@ -127,6 +128,7 @@ endif()
set(HAVE_GPHOTO ${GPHOTO_FOUND})
set(HAVE_OPENCV ${OPENCV_FOUND})
set(HAVE_PORTAUDIO ${PORTAUDIO_FOUND})
set(HAVE_SH4LT ${SH4LT_FOUND})
set(HAVE_SHMDATA ${SHMDATA_FOUND})
set(HAVE_PYTHON ${Python3_FOUND})
set(HAVE_CALIMIRO ${CALIMIRO_FOUND})
Expand Down Expand Up @@ -274,6 +276,7 @@ info_cfg_option(PORTAUDIO_VERSION)
info_cfg_option(JACK_VERSION)
info_cfg_option(Python3_VERSION)
info_cfg_option(JSONCPP_VERSION)
info_cfg_option(SH4LT_VERSION)
info_cfg_option(SHMDATA_VERSION)
info_cfg_option(CALIMIRO_VERSION)
info_cfg_option(ZMQ_VERSION)
Expand Down
17 changes: 17 additions & 0 deletions News.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
Splash release notes
====================

Splash 0.10.8 (2024-03-04)
-------------------------
Improvements:
* Updated imgui to 1.90.4
* Updated GLM to version 1.0.0
* Updated Snappy to 1.1.10
* Updated GLFW to version 3.4.0
* Updated libltc to 1.3.2
* Added support for Sh4lt memory sharing library
* Replaced Ubuntu 23.10 for 24.04 in CI

Documentation:
* Fixed typo in README.md

Bugs Fixed:
* Fixed YUYV and UYVY decoding from shmdata sources

Splash 0.10.6 (2024-02-05)
-------------------------
Improvements:
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ mkdir -p build && cd build
# The BUILD_GENERIC_ARCH flag allows for building an executable which can run on any
# sufficiently modern (less than 15 years) CPU. It is usually safe to remove it but
# people had issues in the past with some arch-specific flags
cmake -GNinja -GBUILD_GENERIC_ARCH=ON ..
cmake -GNinja -DBUILD_GENERIC_ARCH=ON ..
ninja
```

Expand All @@ -169,7 +169,7 @@ mkdir -p build && cd build
# The BUILD_GENERIC_ARCH flag allows for building an executable which can run on any
# sufficiently modern (less than 15 years) CPU. It is usually safe to remove it but
# people had issues in the past with some arch-specific flags
cmake -DUSE_SYSTEM_LIBS=ON -GBUILD_GENERIC_ARCH=ON ..
cmake -DUSE_SYSTEM_LIBS=ON -DBUILD_GENERIC_ARCH=ON ..
ninja
```

Expand Down
2 changes: 1 addition & 1 deletion addons/blender/splash/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
bl_info = {
"name": "Splash output",
"author": "Splash authors",
"version": (0, 10, 6),
"version": (0, 10, 8),
"blender": (2, 80, 0),
"location": "3D View > Toolbox, File > Export",
"description": "Utility tools to connect Blender to the Splash videomapper",
Expand Down
2 changes: 2 additions & 0 deletions data/share/metainfo/xyz.splashmapper.Splash.metainfo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
<id>xyz.splashmapper.Splash</id>
<launchable type="desktop-id">xyz.splashmapper.Splash.desktop</launchable>
<content_rating type="oars-1.1" />
<developer_name>Emmanuel Durand</developer_name>
<name>Splash</name>
<summary>Video-mapping software</summary>
<description>
Expand Down Expand Up @@ -31,6 +32,7 @@
</screenshot>
</screenshots>
<releases>
<release version="0.10.8" date="2024-03-04" />
<release version="0.10.6" date="2024-02-05" />
<release version="0.10.4" date="2024-01-08" />
<release version="0.10.2" date="2023-12-05" />
Expand Down
2 changes: 1 addition & 1 deletion external/glfw
Submodule glfw updated 66 files
+1 −1 .editorconfig
+3 −3 .github/workflows/build.yml
+8 −14 CMakeLists.txt
+13 −0 CONTRIBUTORS.md
+61 −40 README.md
+102 −0 deps/wayland/fractional-scale-v1.xml
+200 −0 deps/wayland/xdg-activation-v1.xml
+37 −26 docs/CMakeLists.txt
+5 −6 docs/CONTRIBUTING.md
+1 −1 docs/DoxygenLayout.xml
+1 −2 docs/SUPPORT.md
+159 −78 docs/build.md
+83 −66 docs/compat.md
+86 −110 docs/compile.md
+41 −44 docs/context.md
+1 −1 docs/extra.css
+1 −1 docs/extra.css.map
+4 −0 docs/extra.scss
+149 −151 docs/input.md
+9 −12 docs/internal.md
+93 −85 docs/intro.md
+2 −10 docs/main.md
+44 −55 docs/monitor.md
+149 −141 docs/moving.md
+0 −293 docs/news.dox
+402 −0 docs/news.md
+58 −60 docs/quick.md
+34 −37 docs/vulkan.md
+253 −212 docs/window.md
+164 −71 include/GLFW/glfw3.h
+17 −0 include/GLFW/glfw3native.h
+2 −0 src/CMakeLists.txt
+72 −74 src/cocoa_init.m
+0 −2 src/cocoa_joystick.m
+15 −3 src/cocoa_monitor.m
+2 −2 src/cocoa_platform.h
+22 −8 src/cocoa_window.m
+11 −32 src/init.c
+2 −2 src/input.c
+25 −28 src/internal.h
+1 −1 src/linux_joystick.c
+4 −2 src/monitor.c
+9 −4 src/nsgl_context.m
+72 −72 src/null_init.c
+3 −2 src/null_monitor.c
+1 −2 src/null_platform.h
+2 −1 src/null_window.c
+2 −3 src/osmesa_context.c
+22 −3 src/platform.c
+9 −0 src/platform.h
+17 −0 src/wgl_context.c
+75 −73 src/win32_init.c
+22 −2 src/win32_monitor.c
+4 −1 src/win32_platform.h
+81 −7 src/win32_window.c
+26 −7 src/window.c
+131 −77 src/wl_init.c
+17 −9 src/wl_monitor.c
+29 −26 src/wl_platform.h
+510 −378 src/wl_window.c
+77 −77 src/x11_init.c
+27 −4 src/x11_monitor.c
+1 −1 src/x11_platform.h
+17 −13 src/x11_window.c
+23 −13 tests/events.c
+36 −7 tests/window.c
2 changes: 1 addition & 1 deletion external/glm
Submodule glm updated 1780 files
2 changes: 1 addition & 1 deletion external/imgui
Submodule imgui updated 181 files
2 changes: 1 addition & 1 deletion external/libltc
2 changes: 1 addition & 1 deletion external/snappy
38 changes: 28 additions & 10 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,26 +57,33 @@ set_source_files_properties(
PROPERTIES COMPILE_FLAGS "-Wno-error -Wno-all -Wno-extra -Wno-unused-parameter -Wno-unused-result"
)

if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
set_source_files_properties(
graphics/shader.cpp
graphics/object.cpp
graphics/camera.cpp
PROPERTIES COMPILE_FLAGS "-Wno-type-limits"
)

if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
set_source_files_properties(
network/channel_zmq.cpp
PROPERTIES COMPILE_FLAGS "-Wno-maybe-uninitialized"
)

if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 7.0)
set_source_files_properties(
image/image.cpp
PROPERTIES COMPILE_FLAGS "-Wno-missing-field-initializers -Wno-stringop-overflow"
)
endif()
endif()

if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 7.0)
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
# This needs to be set because of stb_image.h
set_source_files_properties(
image/image.cpp
PROPERTIES COMPILE_FLAGS "-Wno-missing-field-initializers"
)

if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
set_source_files_properties(
image/image.cpp
PROPERTIES COMPILE_FLAGS "-Wno-missing-field-initializers -Wno-stringop-overflow"
)
endif()
endif()

#
Expand All @@ -103,6 +110,7 @@ include_directories(${GLFW_INCLUDE_DIRS})
include_directories(${GSL_INCLUDE_DIRS})
include_directories(${ZMQ_INCLUDE_DIRS})
include_directories(${JSONCPP_INCLUDE_DIRS})
include_directories(${SH4LT_INCLUDE_DIRS})
include_directories(${SHMDATA_INCLUDE_DIRS})
include_directories(${GPHOTO_INCLUDE_DIRS})
include_directories(${FFMPEG_INCLUDE_DIRS})
Expand All @@ -119,6 +127,7 @@ link_directories(${GLFW_LIBRARY_DIRS})

link_directories(${JSONCPP_LIBRARY_DIRS})
link_directories(${GSL_LIBRARY_DIRS})
link_directories(${SH4LT_LIBRARY_DIRS})
link_directories(${SHMDATA_LIBRARY_DIRS})
link_directories(${GPHOTO_LIBRARY_DIRS})
link_directories(${PORTAUDIO_LIBRARY_DIRS})
Expand Down Expand Up @@ -266,7 +275,7 @@ if (GPHOTO_FOUND AND OPENCV_FOUND)
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
set_source_files_properties(
controller/colorcalibrator.cpp
PROPERTIES COMPILE_FLAGS "-Wno-maybe-uninitialized"
PROPERTIES COMPILE_FLAGS "-Wno-maybe-uninitialized -Wno-type-limits"
)
endif()

Expand Down Expand Up @@ -302,6 +311,14 @@ if (CALIMIRO_FOUND AND OPENCV_FOUND)
)
endif()

if (HAVE_SH4LT)
target_sources(splash-${API_VERSION} PRIVATE
image/image_sh4lt.cpp
sink/sink_sh4lt.cpp
sink/sink_sh4lt_encoded.cpp
)
endif()

if (HAVE_SHMDATA)
target_sources(splash-${API_VERSION} PRIVATE
image/image_ndi.cpp
Expand Down Expand Up @@ -362,6 +379,7 @@ target_link_libraries(splash-${API_VERSION} ${CMAKE_THREAD_LIBS_INIT})
target_link_libraries(splash-${API_VERSION} ${JSONCPP_LIBRARIES})
target_link_libraries(splash-${API_VERSION} ${FFMPEG_LIBRARIES})
target_link_libraries(splash-${API_VERSION} ${GSL_LIBRARIES})
target_link_libraries(splash-${API_VERSION} ${SH4LT_LIBRARIES})
target_link_libraries(splash-${API_VERSION} ${SHMDATA_LIBRARIES})
target_link_libraries(splash-${API_VERSION} ${GPHOTO_LIBRARIES})
target_link_libraries(splash-${API_VERSION} ${PORTAUDIO_LIBRARIES})
Expand Down
3 changes: 3 additions & 0 deletions src/config.h.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@
/* Defined to 1 if jack is detected */
#cmakedefine01 HAVE_JACK

/* Defined to 1 if sh4lt is detected */
#cmakedefine01 HAVE_SH4LT

/* Defined to 1 if shmdata-1.0 is detected */
#cmakedefine01 HAVE_SHMDATA

Expand Down
16 changes: 8 additions & 8 deletions src/controller/widget/widget_camera.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ void GuiCamera::render()
int w = ImGui::GetWindowWidth() - 3 * leftMargin;
int h = w * size[1].as<int>() / size[0].as<int>();

if (ImGui::ImageButton((void*)(intptr_t)camera->getTexture()->getTexId(), ImVec2(w, h), ImVec2(0, 1), ImVec2(1, 0)))
if (ImGui::ImageButton(camera->getName().c_str(), (void*)(intptr_t)camera->getTexture()->getTexId(), ImVec2(w, h), ImVec2(0, 1), ImVec2(1, 0)))
{
// If shift is pressed, we hide / unhide this camera
if (io.KeyCtrl)
Expand Down Expand Up @@ -489,38 +489,38 @@ void GuiCamera::processKeyEvents()
return;

ImGuiIO& io = ImGui::GetIO();
if (ImGui::IsKeyPressed(' ', false))
if (ImGui::IsKeyPressed((ImGuiKey)' ', false))
{
nextCamera();
return;
}
else if (ImGui::IsKeyPressed('A', false))
else if (ImGui::IsKeyPressed((ImGuiKey)'A', false))
{
showAllCalibrationPoints();
return;
}
else if (ImGui::IsKeyPressed('C', false))
else if (ImGui::IsKeyPressed((ImGuiKey)'C', false))
{
doCalibration();
return;
}
else if (ImGui::IsKeyPressed('H', false))
else if (ImGui::IsKeyPressed((ImGuiKey)'H', false))
{
_hideCameras = !_camerasHidden;
return;
}
else if (ImGui::IsKeyPressed('O', false))
else if (ImGui::IsKeyPressed((ImGuiKey)'O', false))
{
showAllCamerasCalibrationPoints();
return;
}
else if (ImGui::IsKeyPressed('V', false))
else if (ImGui::IsKeyPressed((ImGuiKey)'V', false))
{
_camerasColorized = !_camerasColorized;
return;
}
// Reset to the previous camera calibration
else if (ImGui::IsKeyPressed('Z', false))
else if (ImGui::IsKeyPressed((ImGuiKey)'Z', false))
{
if (io.KeyCtrl)
revertCalibration();
Expand Down
2 changes: 1 addition & 1 deletion src/controller/widget/widget_filters.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ void GuiFilters::render()
int w = ImGui::GetWindowWidth() - 3 * leftMargin;
int h = w * spec.height / spec.width;

if (ImGui::ImageButton((void*)(intptr_t)filter->getTexId(), ImVec2(w, h), ImVec2(0, 0), ImVec2(1, 1)))
if (ImGui::ImageButton(filter->getName().c_str(), (void*)(intptr_t)filter->getTexId(), ImVec2(w, h), ImVec2(0, 0), ImVec2(1, 1)))
_selectedFilterName = filter->getName();
if (ImGui::IsItemHovered())
ImGui::SetTooltip("%s", filter->getAlias().c_str());
Expand Down
2 changes: 1 addition & 1 deletion src/controller/widget/widget_media.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ void GuiMedia::render()
int w = ImGui::GetWindowWidth() - 3 * leftMargin;
int h = w * spec.height / spec.width;

if (ImGui::ImageButton((void*)(intptr_t)filter->getTexId(), ImVec2(w, h)))
if (ImGui::ImageButton(filter->getName().c_str(), (void*)(intptr_t)filter->getTexId(), ImVec2(w, h)))
_selectedMediaName = media->getName();
if (ImGui::IsItemHovered())
ImGui::SetTooltip("%s", media->getAlias().c_str());
Expand Down
2 changes: 1 addition & 1 deletion src/controller/widget/widget_warp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ void GuiWarp::render()
int w = ImGui::GetWindowWidth() - 4 * leftMargin;
int h = w * warpSpec.height / warpSpec.width;

if (ImGui::ImageButton((void*)(intptr_t)warp->getTexId(), ImVec2(w, h), ImVec2(0, 1), ImVec2(1, 0)))
if (ImGui::ImageButton(warp->getName().c_str(), (void*)(intptr_t)warp->getTexId(), ImVec2(w, h), ImVec2(0, 1), ImVec2(1, 0)))
_currentWarp = i;

if (ImGui::IsItemHovered())
Expand Down
Loading

0 comments on commit 0047827

Please sign in to comment.