Date: Tue, 14 Apr 2026 17:08:10 +0000 From: Vladimir Druzenko <vvd@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Cc: Tatsuki Makino <tatsuki_makino@hotmail.com> Subject: git: 8d13862a00ab - main - multimedia/libopenshot: Update 0.6.0 => 0.7.0 Message-ID: <69de747a.2766c.3d24d0c7@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by vvd: URL: https://cgit.FreeBSD.org/ports/commit/?id=8d13862a00aba104336be5fe2af369018f5dd685 commit 8d13862a00aba104336be5fe2af369018f5dd685 Author: Tatsuki Makino <tatsuki_makino@hotmail.com> AuthorDate: 2026-04-14 16:59:28 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2026-04-14 16:59:28 +0000 multimedia/libopenshot: Update 0.6.0 => 0.7.0 The audio input and output issues have been resolved. News: https://www.openshot.org/blog/2026/04/06/openshot-351-faster-performance-smoother-editing-better-previews/ Changelog: https://github.com/OpenShot/libopenshot/releases/tag/v0.7.0 PR: 294379 Sponsored by: UNIS Labs MFH: 2026Q2 --- multimedia/libopenshot/Makefile | 7 +++-- multimedia/libopenshot/distinfo | 6 ++-- multimedia/libopenshot/files/patch-CMakeLists.txt | 15 +++++----- multimedia/libopenshot/files/patch-src_Clip.cpp | 10 +++++++ .../libopenshot/files/patch-src_CrashHandler.cpp | 18 ++++++++++-- .../libopenshot/files/patch-src_FFmpegReader.cpp | 27 ++++------------- .../libopenshot/files/patch-src_FFmpegUtilities.h | 4 +-- .../libopenshot/files/patch-src_FFmpegWriter.cpp | 34 +++------------------- .../files/patch-src_effects_ChromaKey.cpp | 18 ++++++++++++ multimedia/libopenshot/pkg-plist | 2 +- 10 files changed, 72 insertions(+), 69 deletions(-) diff --git a/multimedia/libopenshot/Makefile b/multimedia/libopenshot/Makefile index 0c7389dcbfbd..73d4af9ed1f2 100644 --- a/multimedia/libopenshot/Makefile +++ b/multimedia/libopenshot/Makefile @@ -1,6 +1,6 @@ PORTNAME= libopenshot DISTVERSIONPREFIX= v -DISTVERSION= 0.6.0 +DISTVERSION= 0.7.0 CATEGORIES= multimedia PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -31,8 +31,9 @@ USE_QT= core gui widgets buildtools:build qmake:build CMAKE_ON= USE_SYSTEM_JSONCPP DISABLE_BUNDLED_JSONCPP\ USE_HW_ACCEL ENABLE_PYTHON\ CMAKE_DISABLE_FIND_PACKAGE_Catch2 -CMAKE_OFF= ENABLE_PARALLEL_CTEST VERBOSE_TESTS ENABLE_COVERAGE\ - APPIMAGE_BUILD BUILD_TESTING ENABLE_JAVA ENABLE_TESTS +CMAKE_OFF= ENABLE_IWYU ENABLE_PARALLEL_CTEST VERBOSE_TESTS\ + ENABLE_COVERAGE APPIMAGE_BUILD ENABLE_VULKAN_BENCHMARK\ + BUILD_TESTING ENABLE_TESTS ENABLE_JAVA ENABLE_GODOT DEBUG_FLAGS?= -g DEBUG_FLAGS+= -D_DEBUG -DJUCE_FORCE_DEBUG=1 PLIST_SUB= VERSION=${DISTVERSION} diff --git a/multimedia/libopenshot/distinfo b/multimedia/libopenshot/distinfo index 119c17ee1d18..342d712ead14 100644 --- a/multimedia/libopenshot/distinfo +++ b/multimedia/libopenshot/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1774234800 -SHA256 (OpenShot-libopenshot-v0.6.0_GH0.tar.gz) = 01c6510c92d7ec430f013cdaff3e65063fee4c1e4461fa1e87fcf80a892dddee -SIZE (OpenShot-libopenshot-v0.6.0_GH0.tar.gz) = 27055244 +TIMESTAMP = 1775703600 +SHA256 (OpenShot-libopenshot-v0.7.0_GH0.tar.gz) = a7954c6af479fbd2e83059d4b6cbb13228de183f9a4eefcbcc8b3fd8de630dd2 +SIZE (OpenShot-libopenshot-v0.7.0_GH0.tar.gz) = 27078138 diff --git a/multimedia/libopenshot/files/patch-CMakeLists.txt b/multimedia/libopenshot/files/patch-CMakeLists.txt index 7cda29369a69..8906919b946d 100644 --- a/multimedia/libopenshot/files/patch-CMakeLists.txt +++ b/multimedia/libopenshot/files/patch-CMakeLists.txt @@ -1,24 +1,25 @@ ---- CMakeLists.txt.orig 2024-12-21 22:27:30 UTC +--- CMakeLists.txt.orig 2026-04-02 23:34:37 UTC +++ CMakeLists.txt -@@ -130,7 +130,7 @@ endif() +@@ -131,7 +131,9 @@ add_subdirectory(src) ### Process subdirectories ### add_subdirectory(src) --add_subdirectory(examples) -+#add_subdirectory(examples) ++if(BUILD_EXAMPLES) + add_subdirectory(examples) ++endif(BUILD_EXAMPLES) add_subdirectory(bindings) ### -@@ -188,6 +188,8 @@ if (ENABLE_LIB_DOCS AND CMAKE_VERSION VERSION_GREATER +@@ -189,6 +191,8 @@ if (ENABLE_LIB_DOCS AND CMAKE_VERSION VERSION_GREATER set(DOXYGEN_INTERACTIVE_SVG YES) set(DOXYGEN_DOT_TRANSPARENT YES) -+ set(DOXYGEN_DOT_GRAPH_MAX_NODES "100") ++ set(DOXYGEN_DOT_GRAPH_MAX_NODES "100") # set in src/config.xml of doxygen. the default value in 1.9.6 is 50. + doxygen_add_docs(${PROJECT_NAME}-doc ${PROJECT_SOURCE_DIR}/src ${PROJECT_SOURCE_DIR}/doc -@@ -208,7 +210,7 @@ if (TARGET ${PROJECT_NAME}-doc) +@@ -209,7 +213,7 @@ if (TARGET ${PROJECT_NAME}-doc) OPTIONAL ) # No error if the docs aren't found if(NOT TARGET doc) diff --git a/multimedia/libopenshot/files/patch-src_Clip.cpp b/multimedia/libopenshot/files/patch-src_Clip.cpp new file mode 100644 index 000000000000..cd8fb58c72c5 --- /dev/null +++ b/multimedia/libopenshot/files/patch-src_Clip.cpp @@ -0,0 +1,10 @@ +--- src/Clip.cpp.orig 2026-04-02 23:34:37 UTC ++++ src/Clip.cpp +@@ -1441,6 +1441,7 @@ QSize Clip::scale_size(QSize source_size, ScaleType so + source_size.scale(target_width, target_height, Qt::KeepAspectRatioByExpanding);; + break; + } ++ default: ; + } + + return source_size; diff --git a/multimedia/libopenshot/files/patch-src_CrashHandler.cpp b/multimedia/libopenshot/files/patch-src_CrashHandler.cpp index 68352051a92e..68a2a6742032 100644 --- a/multimedia/libopenshot/files/patch-src_CrashHandler.cpp +++ b/multimedia/libopenshot/files/patch-src_CrashHandler.cpp @@ -1,6 +1,20 @@ ---- src/CrashHandler.cpp.orig 2023-03-27 18:48:43 UTC +--- src/CrashHandler.cpp.orig 2026-04-02 23:34:37 UTC +++ src/CrashHandler.cpp -@@ -204,14 +204,14 @@ void CrashHandler::printStackTrace(FILE *out, unsigned +@@ -189,8 +189,12 @@ void CrashHandler::printStackTrace(FILE *out, unsigned + #else + // Linux and Mac stack unwinding + // Storage array for stack trace address data +- void* addrlist[max_frames+1]; ++ void* addrlist[63+1]; + ++ if (sizeof( addrlist ) / sizeof( void* ) < max_frames+1) { ++ ZmqLogger::Instance()->LogToFile(" Allocated addrlist size is smaller than the size requested by the caller.\n"); ++ } ++ + // Retrieve current stack addresses + unsigned int addrlen = backtrace( addrlist, sizeof( addrlist ) / sizeof( void* )); + +@@ -204,14 +208,14 @@ void CrashHandler::printStackTrace(FILE *out, unsigned // Resolve addresses into strings containing "filename(function+address)", // Actually it will be ## program address function + offset // this array must be free()-ed diff --git a/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp b/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp index 216a07c120e5..5a545b352457 100644 --- a/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp +++ b/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp @@ -1,6 +1,6 @@ ---- src/FFmpegReader.cpp.orig 2026-03-20 19:34:28 UTC +--- src/FFmpegReader.cpp.orig 2026-04-02 23:34:37 UTC +++ src/FFmpegReader.cpp -@@ -171,7 +171,7 @@ static enum AVPixelFormat get_hw_dec_format(AVCodecCon +@@ -170,7 +170,7 @@ static enum AVPixelFormat get_hw_dec_format(AVCodecCon for (p = pix_fmts; *p != AV_PIX_FMT_NONE; p++) { switch (*p) { @@ -9,7 +9,7 @@ // Linux pix formats case AV_PIX_FMT_VAAPI: if (selected == 1) { -@@ -358,7 +358,7 @@ void FFmpegReader::Open() { +@@ -357,7 +357,7 @@ void FFmpegReader::Open() { pCodecCtx->get_format = get_hw_dec_format; if (adapter_num < 3 && adapter_num >=0) { @@ -18,7 +18,7 @@ snprintf(adapter,sizeof(adapter),"/dev/dri/renderD%d", adapter_num+128); adapter_ptr = adapter; i_decoder_hw = openshot::Settings::Instance()->HARDWARE_DECODER; -@@ -421,12 +421,14 @@ void FFmpegReader::Open() { +@@ -420,11 +420,13 @@ void FFmpegReader::Open() { } // Check if it is there and writable @@ -28,23 +28,8 @@ #elif defined(_WIN32) if( adapter_ptr != NULL ) { #elif defined(__APPLE__) - if( adapter_ptr != NULL ) { -+#else + if( adapter_ptr != NULL ) { ++#else + if( adapter_ptr != NULL ) { #endif ZmqLogger::Instance()->AppendDebugMethod("Decode Device present using device"); - } -@@ -682,8 +684,13 @@ void FFmpegReader::Open() { - AVStream* st = pFormatCtx->streams[i]; - if (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) { - // Only inspect the first video stream -+#if LIBAVFORMAT_VERSION_MAJOR >= 62 -+ for (int j = 0; j < st->codecpar->nb_coded_side_data; j++) { -+ AVPacketSideData *sd = &st->codecpar->coded_side_data[j]; -+#else - for (int j = 0; j < st->nb_side_data; j++) { - AVPacketSideData *sd = &st->side_data[j]; -+#endif - - // Handle rotation metadata (unchanged) - if (sd->type == AV_PKT_DATA_DISPLAYMATRIX && diff --git a/multimedia/libopenshot/files/patch-src_FFmpegUtilities.h b/multimedia/libopenshot/files/patch-src_FFmpegUtilities.h index 78fa21d4c432..62190bdf24b9 100644 --- a/multimedia/libopenshot/files/patch-src_FFmpegUtilities.h +++ b/multimedia/libopenshot/files/patch-src_FFmpegUtilities.h @@ -1,6 +1,6 @@ ---- src/FFmpegUtilities.h.orig 2025-12-16 05:34:48 UTC +--- src/FFmpegUtilities.h.orig 2026-04-02 23:34:37 UTC +++ src/FFmpegUtilities.h -@@ -307,7 +307,7 @@ inline static void* aligned_malloc(size_t size, size_t +@@ -411,7 +411,7 @@ inline static void* aligned_malloc(size_t size, size_t { #if defined(_WIN32) return _aligned_malloc(size, alignment); diff --git a/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp b/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp index 5f905d9dbe24..da5883144421 100644 --- a/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp +++ b/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp @@ -1,4 +1,4 @@ ---- src/FFmpegWriter.cpp.orig 2026-03-20 19:34:28 UTC +--- src/FFmpegWriter.cpp.orig 2026-04-02 23:34:37 UTC +++ src/FFmpegWriter.cpp @@ -168,7 +168,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std const AVCodec *new_codec; @@ -35,7 +35,7 @@ } #endif // FFmpeg 4.0+ } else { -@@ -1429,22 +1432,26 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS +@@ -1429,21 +1432,25 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS adapter_num = openshot::Settings::Instance()->HW_EN_DEVICE_SET; std::clog << "Encoding Device Nr: " << adapter_num << "\n"; if (adapter_num < 3 && adapter_num >=0) { @@ -58,34 +58,8 @@ +#if defined(__unix__) if( adapter_ptr != NULL && access( adapter_ptr, W_OK ) == 0 ) { #elif defined(_WIN32) || defined(__APPLE__) - if( adapter_ptr != NULL ) { -+#else + if( adapter_ptr != NULL ) { - #endif - ZmqLogger::Instance()->AppendDebugMethod( - "Encode Device present using device", -@@ -1510,7 +1517,11 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS - switch (video_codec_ctx->codec_id) { - case AV_CODEC_ID_H264: - video_codec_ctx->max_b_frames = 0; // At least this GPU doesn't support b-frames -+#if LIBAVFORMAT_VERSION_MAJOR >= 61 -+ video_codec_ctx->profile = AV_PROFILE_H264_BASELINE | AV_PROFILE_H264_CONSTRAINED; +#else - video_codec_ctx->profile = FF_PROFILE_H264_BASELINE | FF_PROFILE_H264_CONSTRAINED; -+#endif - av_opt_set(video_codec_ctx->priv_data, "preset", "slow", 0); - av_opt_set(video_codec_ctx->priv_data, "tune", "zerolatency", 0); - av_opt_set(video_codec_ctx->priv_data, "vprofile", "baseline", AV_OPT_SEARCH_CHILDREN); -@@ -2400,6 +2411,12 @@ void FFmpegWriter::AddSphericalMetadata(const std::str - map->pitch = static_cast<int32_t>(pitch_deg * (1 << 16)); - map->roll = static_cast<int32_t>(roll_deg * (1 << 16)); - -+# if LIBAVFORMAT_VERSION_MAJOR >= 62 -+ av_packet_side_data_add( -+ &video_st->codecpar->coded_side_data, &video_st->codecpar->nb_coded_side_data, -+ AV_PKT_DATA_SPHERICAL, reinterpret_cast<uint8_t*>(map), sd_size, 0); -+# else - av_stream_add_side_data(video_st, AV_PKT_DATA_SPHERICAL, reinterpret_cast<uint8_t*>(map), sd_size); -+# endif + if( adapter_ptr != NULL ) { #endif - } + ZmqLogger::Instance()->AppendDebugMethod( diff --git a/multimedia/libopenshot/files/patch-src_effects_ChromaKey.cpp b/multimedia/libopenshot/files/patch-src_effects_ChromaKey.cpp new file mode 100644 index 000000000000..8890114092b9 --- /dev/null +++ b/multimedia/libopenshot/files/patch-src_effects_ChromaKey.cpp @@ -0,0 +1,18 @@ +--- src/effects/ChromaKey.cpp.orig 2026-04-02 23:34:37 UTC ++++ src/effects/ChromaKey.cpp +@@ -167,6 +167,7 @@ std::shared_ptr<openshot::Frame> ChromaKey::GetFrame(s + + case CHROMAKEY_BASIC: + break; ++ default: ; + } + + pixelbuf.resize(rowwidth * height); +@@ -504,6 +505,7 @@ std::shared_ptr<openshot::Frame> ChromaKey::GetFrame(s + } + } + break; ++ default: ; + } + + return frame; diff --git a/multimedia/libopenshot/pkg-plist b/multimedia/libopenshot/pkg-plist index 3cb1f388361b..a19ee72397c7 100644 --- a/multimedia/libopenshot/pkg-plist +++ b/multimedia/libopenshot/pkg-plist @@ -107,7 +107,7 @@ include/libopenshot/sort_filter/Hungarian.h include/libopenshot/sort_filter/KalmanTracker.h lib/libopenshot.so lib/libopenshot.so.%%VERSION%% -lib/libopenshot.so.29 +lib/libopenshot.so.30 %%PYTHON_SITELIBDIR%%/_openshot.so %%PYTHON_SITELIBDIR%%/openshot.py %%RUBY%%%%RUBY_VENDORARCHLIBDIR%%/openshot.sohome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69de747a.2766c.3d24d0c7>
