From a9ff648a9196440df3af40c5bc9299c1622cde00 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Tue, 2 Apr 2024 05:16:23 -0400 Subject: [PATCH] Update to 30.1.1 --- ...reference-the-software-H264-encoder-.patch | 20 +- ...nitial-support-for-the-OpenH264-H.26.patch | 20 +- ...or-OpenH264-as-the-worst-case-fallba.patch | 56 +-- obs-studio-30-cmake-3.20.patch | 423 ------------------ obs-studio.spec | 21 +- sources | 6 +- 6 files changed, 62 insertions(+), 484 deletions(-) delete mode 100644 obs-studio-30-cmake-3.20.patch diff --git a/0101-UI-Consistently-reference-the-software-H264-encoder-.patch b/0101-UI-Consistently-reference-the-software-H264-encoder-.patch index 2d5992e..470544f 100644 --- a/0101-UI-Consistently-reference-the-software-H264-encoder-.patch +++ b/0101-UI-Consistently-reference-the-software-H264-encoder-.patch @@ -1,4 +1,4 @@ -From dfa857eceb0deaf1a273fbd3423364fd7268ea90 Mon Sep 17 00:00:00 2001 +From f6bc114c7d80f6344353619f51d9584ad022d91b Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Sat, 7 Jan 2023 23:15:13 -0500 Subject: [PATCH 101/103] UI: Consistently reference the software H264 encoder @@ -15,11 +15,11 @@ the encoder string to indicate that it's an H.264 encoder from x264. 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/UI/data/locale/en-US.ini b/UI/data/locale/en-US.ini -index e62f38a26..339ac4d86 100644 +index 9c3f38777..dd8f20f69 100644 --- a/UI/data/locale/en-US.ini +++ b/UI/data/locale/en-US.ini -@@ -996,7 +996,7 @@ Basic.Settings.Output.Simple.Warn.Encoder="Warning: Recording with a software en - Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates tremendously large file sizes! Lossless quality can use upward of 7 gigabytes of disk space per minute at high resolutions and framerates. Lossless is not recommended for long recordings unless you have a very large amount of disk space available." +@@ -997,7 +997,7 @@ Basic.Settings.Output.Simple.Warn.Encoder="Warning: Recording with a software en + Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates tremendously large file sizes! Lossless quality can use upward of 7 gigabytes of disk space per minute at high resolutions and framerates. Lossless is not recommended for long recordings unless you have a very large amount of disk space available. Replay buffer is unavailable when using lossless quality." Basic.Settings.Output.Simple.Warn.Lossless.Msg="Are you sure you want to use lossless quality?" Basic.Settings.Output.Simple.Warn.Lossless.Title="Lossless quality warning!" -Basic.Settings.Output.Simple.Encoder.Software="Software (x264)" @@ -27,7 +27,7 @@ index e62f38a26..339ac4d86 100644 Basic.Settings.Output.Simple.Encoder.Hardware.QSV.H264="Hardware (QSV, H.264)" Basic.Settings.Output.Simple.Encoder.Hardware.QSV.AV1="Hardware (QSV, AV1)" Basic.Settings.Output.Simple.Encoder.Hardware.AMD.H264="Hardware (AMD, H.264)" -@@ -1007,7 +1007,7 @@ Basic.Settings.Output.Simple.Encoder.Hardware.NVENC.AV1="Hardware (NVENC, AV1)" +@@ -1008,7 +1008,7 @@ Basic.Settings.Output.Simple.Encoder.Hardware.NVENC.AV1="Hardware (NVENC, AV1)" Basic.Settings.Output.Simple.Encoder.Hardware.NVENC.HEVC="Hardware (NVENC, HEVC)" Basic.Settings.Output.Simple.Encoder.Hardware.Apple.H264="Hardware (Apple, H.264)" Basic.Settings.Output.Simple.Encoder.Hardware.Apple.HEVC="Hardware (Apple, HEVC)" @@ -68,10 +68,10 @@ index 7d7c4278e..a8b5d884a 100644 auto newLabel = [this](const char *str) -> QLabel * { diff --git a/UI/window-basic-settings-stream.cpp b/UI/window-basic-settings-stream.cpp -index 2ad275a44..e2ba4b677 100644 +index e28c5b189..de306efa9 100644 --- a/UI/window-basic-settings-stream.cpp +++ b/UI/window-basic-settings-stream.cpp -@@ -1670,7 +1670,7 @@ void OBSBasicSettings::ResetEncoders(bool streamOnly) +@@ -1704,7 +1704,7 @@ void OBSBasicSettings::ResetEncoders(bool streamOnly) #define ENCODER_STR(str) QTStr("Basic.Settings.Output.Simple.Encoder." str) @@ -81,10 +81,10 @@ index 2ad275a44..e2ba4b677 100644 #ifdef _WIN32 if (service_supports_encoder(vcodecs, "obs_qsv11")) diff --git a/UI/window-basic-settings.cpp b/UI/window-basic-settings.cpp -index b1e6bd6fb..ddf0adc56 100644 +index bee2c86ed..efb98c4ef 100644 --- a/UI/window-basic-settings.cpp +++ b/UI/window-basic-settings.cpp -@@ -5237,10 +5237,11 @@ void OBSBasicSettings::FillSimpleRecordingValues() +@@ -5303,10 +5303,11 @@ void OBSBasicSettings::FillSimpleRecordingValues() ADD_QUALITY("HQ"); ADD_QUALITY("Lossless"); @@ -100,5 +100,5 @@ index b1e6bd6fb..ddf0adc56 100644 ui->simpleOutRecEncoder->addItem( ENCODER_STR("Hardware.QSV.H264"), -- -2.41.0 +2.44.0 diff --git a/0102-obs-ffmpeg-Add-initial-support-for-the-OpenH264-H.26.patch b/0102-obs-ffmpeg-Add-initial-support-for-the-OpenH264-H.26.patch index 519c5ea..08bf185 100644 --- a/0102-obs-ffmpeg-Add-initial-support-for-the-OpenH264-H.26.patch +++ b/0102-obs-ffmpeg-Add-initial-support-for-the-OpenH264-H.26.patch @@ -1,4 +1,4 @@ -From 939db8edca8161f4518900e750551814c2c6088e Mon Sep 17 00:00:00 2001 +From 7e13a4f5b407650b0eeacbc2322ec9fa7825828c Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Sun, 26 Mar 2023 06:06:31 -0400 Subject: [PATCH 102/103] obs-ffmpeg: Add initial support for the OpenH264 @@ -20,10 +20,10 @@ software codecs provided through FFmpeg. create mode 100644 plugins/obs-ffmpeg/obs-ffmpeg-h264.c diff --git a/plugins/obs-ffmpeg/CMakeLists.txt b/plugins/obs-ffmpeg/CMakeLists.txt -index 04530ef39..b77f6366f 100644 +index 77c5ad8e4..81b847889 100644 --- a/plugins/obs-ffmpeg/CMakeLists.txt +++ b/plugins/obs-ffmpeg/CMakeLists.txt -@@ -36,6 +36,7 @@ target_sources( +@@ -32,6 +32,7 @@ target_sources( obs-ffmpeg-av1.c obs-ffmpeg-compat.h obs-ffmpeg-formats.h @@ -32,17 +32,17 @@ index 04530ef39..b77f6366f 100644 obs-ffmpeg-mux.c obs-ffmpeg-mux.h diff --git a/plugins/obs-ffmpeg/cmake/legacy.cmake b/plugins/obs-ffmpeg/cmake/legacy.cmake -index 4cc75b341..d2e11965d 100644 +index 0b3491a07..d22734264 100644 --- a/plugins/obs-ffmpeg/cmake/legacy.cmake +++ b/plugins/obs-ffmpeg/cmake/legacy.cmake -@@ -40,6 +40,7 @@ target_sources( +@@ -41,6 +41,7 @@ target_sources( obs-ffmpeg-video-encoders.c obs-ffmpeg-audio-encoders.c obs-ffmpeg-av1.c + obs-ffmpeg-h264.c obs-ffmpeg-nvenc.c obs-ffmpeg-output.c - obs-ffmpeg-mux.c + obs-ffmpeg-output.h diff --git a/plugins/obs-ffmpeg/data/locale/en-US.ini b/plugins/obs-ffmpeg/data/locale/en-US.ini index 9652be160..e18e39f5a 100644 --- a/plugins/obs-ffmpeg/data/locale/en-US.ini @@ -322,10 +322,10 @@ index 000000000..179a61ccf + .get_video_info = h264_video_info, +}; diff --git a/plugins/obs-ffmpeg/obs-ffmpeg.c b/plugins/obs-ffmpeg/obs-ffmpeg.c -index 7eb9a876d..fcce8ec3b 100644 +index 451b4f022..ee2e378bf 100644 --- a/plugins/obs-ffmpeg/obs-ffmpeg.c +++ b/plugins/obs-ffmpeg/obs-ffmpeg.c -@@ -38,6 +38,7 @@ extern struct obs_encoder_info pcm24_encoder_info; +@@ -41,6 +41,7 @@ extern struct obs_encoder_info pcm24_encoder_info; extern struct obs_encoder_info pcm32_encoder_info; extern struct obs_encoder_info alac_encoder_info; extern struct obs_encoder_info flac_encoder_info; @@ -333,7 +333,7 @@ index 7eb9a876d..fcce8ec3b 100644 extern struct obs_encoder_info h264_nvenc_encoder_info; #ifdef ENABLE_HEVC extern struct obs_encoder_info hevc_nvenc_encoder_info; -@@ -382,6 +383,7 @@ bool obs_module_load(void) +@@ -364,6 +365,7 @@ bool obs_module_load(void) obs_register_output(&ffmpeg_hls_muxer); obs_register_output(&replay_buffer); obs_register_encoder(&aac_encoder_info); @@ -342,5 +342,5 @@ index 7eb9a876d..fcce8ec3b 100644 register_encoder_if_available(&aom_av1_encoder_info, "libaom-av1"); obs_register_encoder(&opus_encoder_info); -- -2.41.0 +2.44.0 diff --git a/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch b/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch index c8a3074..e144ce8 100644 --- a/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch +++ b/0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch @@ -1,4 +1,4 @@ -From f26c32b97117273550b9dddea01b5b92684c6886 Mon Sep 17 00:00:00 2001 +From d5d1837245fb9a2f0dfc863c27f8ac77ea9625cd Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Tue, 28 Mar 2023 05:08:49 -0400 Subject: [PATCH 103/103] UI: Add support for OpenH264 as the worst-case @@ -21,11 +21,11 @@ available. 10 files changed, 123 insertions(+), 48 deletions(-) diff --git a/UI/data/locale/en-US.ini b/UI/data/locale/en-US.ini -index 339ac4d86..ff8c649da 100644 +index dd8f20f69..6a8e4e1e7 100644 --- a/UI/data/locale/en-US.ini +++ b/UI/data/locale/en-US.ini -@@ -996,6 +996,7 @@ Basic.Settings.Output.Simple.Warn.Encoder="Warning: Recording with a software en - Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates tremendously large file sizes! Lossless quality can use upward of 7 gigabytes of disk space per minute at high resolutions and framerates. Lossless is not recommended for long recordings unless you have a very large amount of disk space available." +@@ -997,6 +997,7 @@ Basic.Settings.Output.Simple.Warn.Encoder="Warning: Recording with a software en + Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates tremendously large file sizes! Lossless quality can use upward of 7 gigabytes of disk space per minute at high resolutions and framerates. Lossless is not recommended for long recordings unless you have a very large amount of disk space available. Replay buffer is unavailable when using lossless quality." Basic.Settings.Output.Simple.Warn.Lossless.Msg="Are you sure you want to use lossless quality?" Basic.Settings.Output.Simple.Warn.Lossless.Title="Lossless quality warning!" +Basic.Settings.Output.Simple.Encoder.Software.OpenH264.H264="Software (OpenH264)" @@ -155,10 +155,10 @@ index a8b5d884a..e68a33bb5 100644 auto newLabel = [this](const char *str) -> QLabel * { diff --git a/UI/window-basic-auto-config.cpp b/UI/window-basic-auto-config.cpp -index d8ddbfa44..4707a5644 100644 +index f992c0719..d97a188f5 100644 --- a/UI/window-basic-auto-config.cpp +++ b/UI/window-basic-auto-config.cpp -@@ -979,6 +979,7 @@ AutoConfig::AutoConfig(QWidget *parent) : QWizard(parent) +@@ -982,6 +982,7 @@ AutoConfig::AutoConfig(QWidget *parent) : QWizard(parent) streamPage->ui->bitrate->setValue(bitrate); streamPage->ServiceChanged(); @@ -166,7 +166,7 @@ index d8ddbfa44..4707a5644 100644 TestHardwareEncoding(); if (!hardwareEncodingAvailable) { delete streamPage->ui->preferHardware; -@@ -1007,6 +1008,16 @@ AutoConfig::~AutoConfig() +@@ -1010,6 +1011,16 @@ AutoConfig::~AutoConfig() EnableThreadedMessageBoxes(false); } @@ -183,7 +183,7 @@ index d8ddbfa44..4707a5644 100644 void AutoConfig::TestHardwareEncoding() { size_t idx = 0; -@@ -1086,8 +1097,10 @@ inline const char *AutoConfig::GetEncoderId(Encoder enc) +@@ -1089,8 +1100,10 @@ inline const char *AutoConfig::GetEncoderId(Encoder enc) return SIMPLE_ENCODER_AMD; case Encoder::Apple: return SIMPLE_ENCODER_APPLE_H264; @@ -224,10 +224,10 @@ index 5d966c795..c17e32a85 100644 bool CanTestServer(const char *server); diff --git a/UI/window-basic-main-outputs.cpp b/UI/window-basic-main-outputs.cpp -index a283d0fcc..4b3f25371 100644 +index f87e16dcd..0466cdff6 100644 --- a/UI/window-basic-main-outputs.cpp +++ b/UI/window-basic-main-outputs.cpp -@@ -547,7 +547,9 @@ void SimpleOutput::LoadStreamingPreset_Lossy(const char *encoderId) +@@ -552,7 +552,9 @@ void SimpleOutput::LoadStreamingPreset_Lossy(const char *encoderId) /* mistakes have been made to lead us to this. */ const char *get_simple_output_encoder(const char *encoder) { @@ -238,7 +238,7 @@ index a283d0fcc..4b3f25371 100644 return "obs_x264"; } else if (strcmp(encoder, SIMPLE_ENCODER_X264_LOWCPU) == 0) { return "obs_x264"; -@@ -581,7 +583,7 @@ const char *get_simple_output_encoder(const char *encoder) +@@ -586,7 +588,7 @@ const char *get_simple_output_encoder(const char *encoder) #endif } @@ -371,10 +371,10 @@ index f9d3f4ea1..27899efc4 100644 } #endif diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp -index 943e8cac1..09251de75 100644 +index 0621d039c..c39266e9f 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp -@@ -1449,6 +1449,8 @@ extern void CheckExistingCookieId(); +@@ -1469,6 +1469,8 @@ extern void CheckExistingCookieId(); #define DEFAULT_CONTAINER "fragmented_mp4" #endif @@ -383,7 +383,7 @@ index 943e8cac1..09251de75 100644 bool OBSBasic::InitBasicConfigDefaults() { QList screens = QGuiApplication::screens(); -@@ -1619,7 +1621,10 @@ bool OBSBasic::InitBasicConfigDefaults() +@@ -1654,7 +1656,10 @@ bool OBSBasic::InitBasicConfigDefaults() config_set_default_bool(basicConfig, "AdvOut", "UseRescale", false); config_set_default_uint(basicConfig, "AdvOut", "TrackIndex", 1); config_set_default_uint(basicConfig, "AdvOut", "VodTrackIndex", 2); @@ -395,7 +395,7 @@ index 943e8cac1..09251de75 100644 config_set_default_string(basicConfig, "AdvOut", "RecType", "Standard"); -@@ -1744,7 +1749,6 @@ bool OBSBasic::InitBasicConfigDefaults() +@@ -1780,7 +1785,6 @@ bool OBSBasic::InitBasicConfigDefaults() return true; } @@ -403,7 +403,7 @@ index 943e8cac1..09251de75 100644 extern bool update_nvenc_presets(ConfigFile &config); void OBSBasic::InitBasicConfigDefaults2() -@@ -1753,12 +1757,14 @@ void OBSBasic::InitBasicConfigDefaults2() +@@ -1789,12 +1793,14 @@ void OBSBasic::InitBasicConfigDefaults2() "Pre23Defaults"); bool useNV = EncoderAvailable("ffmpeg_nvenc") && !oldEncDefaults; @@ -422,7 +422,7 @@ index 943e8cac1..09251de75 100644 const char *aac_default = "ffmpeg_aac"; if (EncoderAvailable("CoreAudio_AAC")) -@@ -2040,7 +2046,7 @@ void OBSBasic::OBSInit() +@@ -2076,7 +2082,7 @@ void OBSBasic::OBSInit() InitBasicConfigDefaults2(); @@ -432,7 +432,7 @@ index 943e8cac1..09251de75 100644 blog(LOG_INFO, STARTUP_SEPARATOR); diff --git a/UI/window-basic-main.hpp b/UI/window-basic-main.hpp -index b1eb39592..7d9e8d286 100644 +index 8c4104c11..2349d791a 100644 --- a/UI/window-basic-main.hpp +++ b/UI/window-basic-main.hpp @@ -69,6 +69,7 @@ class OBSBasicVCamConfig; @@ -443,7 +443,7 @@ index b1eb39592..7d9e8d286 100644 #define SIMPLE_ENCODER_QSV "qsv" #define SIMPLE_ENCODER_QSV_AV1 "qsv_av1" #define SIMPLE_ENCODER_NVENC "nvenc" -@@ -446,7 +447,7 @@ private: +@@ -448,7 +449,7 @@ private: void DeleteProfile(const char *profile_name, const char *profile_dir); void RefreshProfiles(); void ChangeProfile(); @@ -453,10 +453,10 @@ index b1eb39592..7d9e8d286 100644 void SaveProjectNow(); diff --git a/UI/window-basic-settings-stream.cpp b/UI/window-basic-settings-stream.cpp -index e2ba4b677..a08c697d4 100644 +index de306efa9..64e6c4b14 100644 --- a/UI/window-basic-settings-stream.cpp +++ b/UI/window-basic-settings-stream.cpp -@@ -1437,7 +1437,9 @@ static QString get_adv_fallback(const QString &enc) +@@ -1471,7 +1471,9 @@ static QString get_adv_fallback(const QString &enc) return "com.apple.videotoolbox.videoencoder.ave.avc"; if (enc == "obs_qsv11_av1") return "obs_qsv11"; @@ -467,7 +467,7 @@ index e2ba4b677..a08c697d4 100644 } static QString get_adv_audio_fallback(const QString &enc) -@@ -1466,7 +1468,9 @@ static QString get_simple_fallback(const QString &enc) +@@ -1500,7 +1502,9 @@ static QString get_simple_fallback(const QString &enc) return SIMPLE_ENCODER_APPLE_H264; if (enc == SIMPLE_ENCODER_QSV_AV1) return SIMPLE_ENCODER_QSV; @@ -478,7 +478,7 @@ index e2ba4b677..a08c697d4 100644 } bool OBSBasicSettings::ServiceSupportsCodecCheck() -@@ -1670,8 +1674,12 @@ void OBSBasicSettings::ResetEncoders(bool streamOnly) +@@ -1704,8 +1708,12 @@ void OBSBasicSettings::ResetEncoders(bool streamOnly) #define ENCODER_STR(str) QTStr("Basic.Settings.Output.Simple.Encoder." str) @@ -494,10 +494,10 @@ index e2ba4b677..a08c697d4 100644 if (service_supports_encoder(vcodecs, "obs_qsv11")) ui->simpleOutStrEncoder->addItem( diff --git a/UI/window-basic-settings.cpp b/UI/window-basic-settings.cpp -index ddf0adc56..9b7324ab9 100644 +index efb98c4ef..65d173caf 100644 --- a/UI/window-basic-settings.cpp +++ b/UI/window-basic-settings.cpp -@@ -3779,6 +3779,11 @@ void OBSBasicSettings::SaveOutputSettings() +@@ -3843,6 +3843,11 @@ void OBSBasicSettings::SaveOutputSettings() do. This only exists to make sure that the x264 preset doesn't get overwritten with empty data. */ presetType = "ApplePreset"; @@ -509,7 +509,7 @@ index ddf0adc56..9b7324ab9 100644 else presetType = "Preset"; -@@ -5237,11 +5242,16 @@ void OBSBasicSettings::FillSimpleRecordingValues() +@@ -5303,11 +5308,16 @@ void OBSBasicSettings::FillSimpleRecordingValues() ADD_QUALITY("HQ"); ADD_QUALITY("Lossless"); @@ -531,7 +531,7 @@ index ddf0adc56..9b7324ab9 100644 if (EncoderAvailable("obs_qsv11")) ui->simpleOutRecEncoder->addItem( ENCODER_STR("Hardware.QSV.H264"), -@@ -5414,6 +5424,9 @@ void OBSBasicSettings::SimpleStreamingEncoderChanged() +@@ -5480,6 +5490,9 @@ void OBSBasicSettings::SimpleStreamingEncoderChanged() defaultPreset = "balanced"; preset = curAMDAV1Preset; @@ -542,5 +542,5 @@ index ddf0adc56..9b7324ab9 100644 #define PRESET_STR(val) \ -- -2.41.0 +2.44.0 diff --git a/obs-studio-30-cmake-3.20.patch b/obs-studio-30-cmake-3.20.patch deleted file mode 100644 index bac02da..0000000 --- a/obs-studio-30-cmake-3.20.patch +++ /dev/null @@ -1,423 +0,0 @@ -From 09fbac02fa36e945480edb1cf8547ba8ce4d08ff Mon Sep 17 00:00:00 2001 -From: Neal Gompa -Date: Mon, 11 Sep 2023 15:50:55 -0400 -Subject: [PATCH] cmake: Allow CMake 3.20 and 3.21 to be used to build OBS - -CentOS Stream 9 (and thus Red Hat Enterprise Linux 9) have CMake 3.20. - -There does not appear to be anything preventing it from building -on CMake 3.20, so let's permit it so that it can still be built -for Fedora Extra Packages for Enterprise Linux 9. ---- - CMakeLists.txt | 2 +- - UI/CMakeLists.txt | 2 +- - UI/frontend-plugins/aja-output-ui/CMakeLists.txt | 2 +- - UI/frontend-plugins/decklink-captions/CMakeLists.txt | 2 +- - UI/frontend-plugins/decklink-output-ui/CMakeLists.txt | 2 +- - UI/frontend-plugins/frontend-tools/CMakeLists.txt | 2 +- - UI/obs-frontend-api/CMakeLists.txt | 2 +- - deps/blake2/CMakeLists.txt | 2 +- - deps/file-updater/CMakeLists.txt | 2 +- - deps/glad/CMakeLists.txt | 2 +- - deps/happy-eyeballs/CMakeLists.txt | 2 +- - deps/json11/CMakeLists.txt | 2 +- - deps/libcaption/CMakeLists.txt | 2 +- - deps/media-playback/CMakeLists.txt | 2 +- - deps/obs-scripting/CMakeLists.txt | 2 +- - deps/obs-scripting/obslua/CMakeLists.txt | 2 +- - deps/obs-scripting/obspython/CMakeLists.txt | 2 +- - deps/opts-parser/CMakeLists.txt | 2 +- - deps/uthash/CMakeLists.txt | 2 +- - libobs-opengl/CMakeLists.txt | 2 +- - libobs/CMakeLists.txt | 2 +- - plugins/CMakeLists.txt | 2 +- - plugins/aja/CMakeLists.txt | 2 +- - plugins/decklink/CMakeLists.txt | 2 +- - plugins/image-source/CMakeLists.txt | 2 +- - plugins/obs-ffmpeg/CMakeLists.txt | 2 +- - plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt | 2 +- - plugins/obs-filters/CMakeLists.txt | 2 +- - plugins/obs-outputs/CMakeLists.txt | 2 +- - plugins/obs-qsv11/CMakeLists.txt | 2 +- - plugins/obs-transitions/CMakeLists.txt | 2 +- - plugins/obs-vst/CMakeLists.txt | 2 +- - plugins/obs-webrtc/CMakeLists.txt | 2 +- - plugins/obs-x264/CMakeLists.txt | 2 +- - plugins/rtmp-services/CMakeLists.txt | 2 +- - plugins/text-freetype2/CMakeLists.txt | 2 +- - plugins/vlc-video/CMakeLists.txt | 2 +- - 37 files changed, 37 insertions(+), 37 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index b6f157fbe..3e628c792 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - if(CMAKE_HOST_SYSTEM_NAME MATCHES "(Darwin)" OR OBS_CMAKE_VERSION VERSION_GREATER_EQUAL 3.0.0) - include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/common/bootstrap.cmake" NO_POLICY_SCOPE) -diff --git a/UI/CMakeLists.txt b/UI/CMakeLists.txt -index cbebcd84d..b5660e662 100644 ---- a/UI/CMakeLists.txt -+++ b/UI/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/UI/frontend-plugins/aja-output-ui/CMakeLists.txt b/UI/frontend-plugins/aja-output-ui/CMakeLists.txt -index 3555192e6..e9b9ed0ba 100644 ---- a/UI/frontend-plugins/aja-output-ui/CMakeLists.txt -+++ b/UI/frontend-plugins/aja-output-ui/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/UI/frontend-plugins/decklink-captions/CMakeLists.txt b/UI/frontend-plugins/decklink-captions/CMakeLists.txt -index 3fc910b6c..0969dd7b0 100644 ---- a/UI/frontend-plugins/decklink-captions/CMakeLists.txt -+++ b/UI/frontend-plugins/decklink-captions/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt b/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt -index a5e697e88..1fc0af541 100644 ---- a/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt -+++ b/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/UI/frontend-plugins/frontend-tools/CMakeLists.txt b/UI/frontend-plugins/frontend-tools/CMakeLists.txt -index 5a0eeba45..b29d335a3 100644 ---- a/UI/frontend-plugins/frontend-tools/CMakeLists.txt -+++ b/UI/frontend-plugins/frontend-tools/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/UI/obs-frontend-api/CMakeLists.txt b/UI/obs-frontend-api/CMakeLists.txt -index ca4eae513..fd7c9433b 100644 ---- a/UI/obs-frontend-api/CMakeLists.txt -+++ b/UI/obs-frontend-api/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/deps/blake2/CMakeLists.txt b/deps/blake2/CMakeLists.txt -index b9fb338a8..6e31ec857 100644 ---- a/deps/blake2/CMakeLists.txt -+++ b/deps/blake2/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - add_library(blake2 STATIC EXCLUDE_FROM_ALL ) - add_library(OBS::blake2 ALIAS blake2) -diff --git a/deps/file-updater/CMakeLists.txt b/deps/file-updater/CMakeLists.txt -index e07cd2f0f..fbb358110 100644 ---- a/deps/file-updater/CMakeLists.txt -+++ b/deps/file-updater/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - find_package(CURL REQUIRED) - -diff --git a/deps/glad/CMakeLists.txt b/deps/glad/CMakeLists.txt -index 64b05a2cc..c6d7ea19c 100644 ---- a/deps/glad/CMakeLists.txt -+++ b/deps/glad/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - find_package(OpenGL REQUIRED) - -diff --git a/deps/happy-eyeballs/CMakeLists.txt b/deps/happy-eyeballs/CMakeLists.txt -index b3a5692cd..ff3be48ff 100644 ---- a/deps/happy-eyeballs/CMakeLists.txt -+++ b/deps/happy-eyeballs/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - add_library(happy-eyeballs INTERFACE) - add_library(OBS::happy-eyeballs ALIAS happy-eyeballs) -diff --git a/deps/json11/CMakeLists.txt b/deps/json11/CMakeLists.txt -index 78cb7c94a..82d0a063b 100644 ---- a/deps/json11/CMakeLists.txt -+++ b/deps/json11/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - add_library(json11 INTERFACE) - add_library(OBS::json11 ALIAS json11) -diff --git a/deps/libcaption/CMakeLists.txt b/deps/libcaption/CMakeLists.txt -index 53cd79196..2770b6746 100644 ---- a/deps/libcaption/CMakeLists.txt -+++ b/deps/libcaption/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - add_library(caption STATIC EXCLUDE_FROM_ALL ) - add_library(OBS::caption ALIAS caption) -diff --git a/deps/media-playback/CMakeLists.txt b/deps/media-playback/CMakeLists.txt -index a84900e47..351f4bb42 100644 ---- a/deps/media-playback/CMakeLists.txt -+++ b/deps/media-playback/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - find_package(FFmpeg REQUIRED COMPONENTS avcodec avdevice avutil avformat) - -diff --git a/deps/obs-scripting/CMakeLists.txt b/deps/obs-scripting/CMakeLists.txt -index 9096e4b27..988d2235c 100644 ---- a/deps/obs-scripting/CMakeLists.txt -+++ b/deps/obs-scripting/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/deps/obs-scripting/obslua/CMakeLists.txt b/deps/obs-scripting/obslua/CMakeLists.txt -index 98517ee7d..22edd1e1c 100644 ---- a/deps/obs-scripting/obslua/CMakeLists.txt -+++ b/deps/obs-scripting/obslua/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/deps/obs-scripting/obspython/CMakeLists.txt b/deps/obs-scripting/obspython/CMakeLists.txt -index f0db72f75..f0a07f66c 100644 ---- a/deps/obs-scripting/obspython/CMakeLists.txt -+++ b/deps/obs-scripting/obspython/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/deps/opts-parser/CMakeLists.txt b/deps/opts-parser/CMakeLists.txt -index a87ee641e..72d61be53 100644 ---- a/deps/opts-parser/CMakeLists.txt -+++ b/deps/opts-parser/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - add_library(opts-parser INTERFACE) - add_library(OBS::opts-parser ALIAS opts-parser) -diff --git a/deps/uthash/CMakeLists.txt b/deps/uthash/CMakeLists.txt -index aecb0d74e..7ebb524f0 100644 ---- a/deps/uthash/CMakeLists.txt -+++ b/deps/uthash/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - add_library(uthash INTERFACE) - add_library(OBS::uthash ALIAS uthash) -diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt -index 7ee9478ea..51751719d 100644 ---- a/libobs-opengl/CMakeLists.txt -+++ b/libobs-opengl/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt -index 46112abe7..28551f61d 100644 ---- a/libobs/CMakeLists.txt -+++ b/libobs/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt -index 90bea35be..26e6b57ec 100644 ---- a/plugins/CMakeLists.txt -+++ b/plugins/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - option(ENABLE_PLUGINS "Enable building OBS plugins" ON) - -diff --git a/plugins/aja/CMakeLists.txt b/plugins/aja/CMakeLists.txt -index 423d9d099..daaa57f51 100644 ---- a/plugins/aja/CMakeLists.txt -+++ b/plugins/aja/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/decklink/CMakeLists.txt b/plugins/decklink/CMakeLists.txt -index e93c7c772..8423fe52a 100644 ---- a/plugins/decklink/CMakeLists.txt -+++ b/plugins/decklink/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/image-source/CMakeLists.txt b/plugins/image-source/CMakeLists.txt -index a7682454e..2f5fd3790 100644 ---- a/plugins/image-source/CMakeLists.txt -+++ b/plugins/image-source/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-ffmpeg/CMakeLists.txt b/plugins/obs-ffmpeg/CMakeLists.txt -index 04530ef39..16c4d1e1a 100644 ---- a/plugins/obs-ffmpeg/CMakeLists.txt -+++ b/plugins/obs-ffmpeg/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt b/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt -index afa22b7a5..5644f8213 100644 ---- a/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt -+++ b/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-filters/CMakeLists.txt b/plugins/obs-filters/CMakeLists.txt -index 22d79388c..84b337c40 100644 ---- a/plugins/obs-filters/CMakeLists.txt -+++ b/plugins/obs-filters/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-outputs/CMakeLists.txt b/plugins/obs-outputs/CMakeLists.txt -index cedc77da0..f131ca671 100644 ---- a/plugins/obs-outputs/CMakeLists.txt -+++ b/plugins/obs-outputs/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-qsv11/CMakeLists.txt b/plugins/obs-qsv11/CMakeLists.txt -index cae152765..f1c39cc6a 100644 ---- a/plugins/obs-qsv11/CMakeLists.txt -+++ b/plugins/obs-qsv11/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-transitions/CMakeLists.txt b/plugins/obs-transitions/CMakeLists.txt -index 65e3b13ac..c18ac96ed 100644 ---- a/plugins/obs-transitions/CMakeLists.txt -+++ b/plugins/obs-transitions/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-vst/CMakeLists.txt b/plugins/obs-vst/CMakeLists.txt -index bb5c32a00..78530783b 100644 ---- a/plugins/obs-vst/CMakeLists.txt -+++ b/plugins/obs-vst/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-webrtc/CMakeLists.txt b/plugins/obs-webrtc/CMakeLists.txt -index de943062f..84b0f1aa5 100644 ---- a/plugins/obs-webrtc/CMakeLists.txt -+++ b/plugins/obs-webrtc/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/obs-x264/CMakeLists.txt b/plugins/obs-x264/CMakeLists.txt -index 4c293fb33..c75491a51 100644 ---- a/plugins/obs-x264/CMakeLists.txt -+++ b/plugins/obs-x264/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/rtmp-services/CMakeLists.txt b/plugins/rtmp-services/CMakeLists.txt -index e8d304ae0..9dc0b2396 100644 ---- a/plugins/rtmp-services/CMakeLists.txt -+++ b/plugins/rtmp-services/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/text-freetype2/CMakeLists.txt b/plugins/text-freetype2/CMakeLists.txt -index bb30f99a7..b19b0cd57 100644 ---- a/plugins/text-freetype2/CMakeLists.txt -+++ b/plugins/text-freetype2/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - -diff --git a/plugins/vlc-video/CMakeLists.txt b/plugins/vlc-video/CMakeLists.txt -index 0a35ae284..40a62b076 100644 ---- a/plugins/vlc-video/CMakeLists.txt -+++ b/plugins/vlc-video/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required(VERSION 3.22...3.25) -+cmake_minimum_required(VERSION 3.20...3.25) - - legacy_check() - --- -2.41.0 - diff --git a/obs-studio.spec b/obs-studio.spec index a995073..f3394de 100644 --- a/obs-studio.spec +++ b/obs-studio.spec @@ -29,8 +29,8 @@ %global libvlc_soversion 5 -%global obswebsocket_version 5.3.3 -%global obsbrowser_commit e397df52e70392ebb9146e0ab6317c0d1a30bce4 +%global obswebsocket_version 5.4.2 +%global obsbrowser_commit 996b5a7bc43d912f1f4992e0032d4f263ac8b060 %global cef_version 5060 #global commit ad859a3f66daac0d30eebcc9b07b0c2004fb6040 @@ -38,8 +38,8 @@ #global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: obs-studio -Version: 30.0.0 -Release: 9%{?dist} +Version: 30.1.1 +Release: 1%{?dist} Summary: Open Broadcaster Software Studio # OBS itself is GPL-2.0-or-later, while various plugin dependencies are of various other licenses @@ -65,17 +65,15 @@ Patch0102: 0102-obs-ffmpeg-Add-initial-support-for-the-OpenH264-H.26.patch Patch0103: 0103-UI-Add-support-for-OpenH264-as-the-worst-case-fallba.patch # Downstream Fedora patches -## Downgrade to CMake 3.20 for RHEL 9 compatibility -Patch1001: obs-studio-30-cmake-3.20.patch ## Use fdk-aac by default -Patch1002: obs-studio-UI-use-fdk-aac-by-default.patch +Patch1001: obs-studio-UI-use-fdk-aac-by-default.patch ## Fix error: passing argument 4 of ‘query_dmabuf_modifiers’ from ## incompatible pointer type [-Wincompatible-pointer-types] Patch1003: obs-studio-fix-incompatible-pointer-type.patch BuildRequires: gcc -BuildRequires: cmake >= 3.20 +BuildRequires: cmake >= 3.22 BuildRequires: ninja-build BuildRequires: libappstream-glib BuildRequires: desktop-file-utils @@ -182,7 +180,7 @@ software for video recording and live streaming. %license COPYING %{_bindir}/obs %{_bindir}/obs-ffmpeg-mux -%{_datadir}/metainfo/com.obsproject.Studio.appdata.xml +%{_datadir}/metainfo/com.obsproject.Studio.metainfo.xml %{_datadir}/applications/com.obsproject.Studio.desktop %{_datadir}/icons/hicolor/*/apps/com.obsproject.Studio.* %{_datadir}/obs/ @@ -375,10 +373,13 @@ find %{buildroot} -name ".gitkeep" -delete %check desktop-file-validate %{buildroot}/%{_datadir}/applications/com.obsproject.Studio.desktop -appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.appdata.xml +appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.metainfo.xml %changelog +* Tue Apr 02 2024 Neal Gompa - 30.1.1-1 +- Update to 30.1.1 + * Fri Feb 16 2024 Jan Grulich - 30.0.0-9 - Rebuild (qt6) diff --git a/sources b/sources index bb6c902..16ee2da 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (obs-studio-30.0.0.tar.gz) = a99ec286dddea46e95a90b16b52bfb8033ce017faae039128509c561fef9bc71e02a9e55d1fee428c456dc48ce03ba7939e2488eaec35f791116ab4dfd1f34d0 -SHA512 (obs-websocket-5.3.3.tar.gz) = 5726bd81a366940ab3b33f4997d5d66e8ff1bb7d456a6fbb1ebddbcc0bc847026294f74908b06460a358488abe9bf7372ff5076c48d06714813295cfbf6f4ad8 -SHA512 (obs-browser-e397df52e70392ebb9146e0ab6317c0d1a30bce4.tar.gz) = a9b9406ff9371b40ef3257bf51cceac02ff6e0a38864c7b656d9b4c1072eb322cad385f25ee8cac179b401482c59c93bd35a4b8ff1274b449fec2393dd53473d +SHA512 (obs-studio-30.1.1.tar.gz) = 31aba14cf9db6b6c41d87ea0b814d38e1ba2794d07f1aff025c810e9dda32b0915d3f6d2679383755d0a4e47fc26c2aef981e26a80b792cf7fb893e672b6609a +SHA512 (obs-websocket-5.4.2.tar.gz) = 639cdc3a53e4b6296c91b0105a36f37fb372526bdc218a4cadf3c790542a77046734a1941014f029785ebb3e39872e0083ad4bead34d838938b14f66e74fa8ae +SHA512 (obs-browser-996b5a7bc43d912f1f4992e0032d4f263ac8b060.tar.gz) = f6f7dbeb1d28b6c47663f36cb119cbc90a18c46fc6e81ca6db87e901ae4cee1fafd4a4a8c3f8cae94619d2f8f92baf1c52ca5c7df182f3df7521397638b0660d