mirror of
https://github.com/Aitum/obs-aitum-multistream.git
synced 2024-11-24 19:32:44 +01:00
link to obs 30
This commit is contained in:
parent
87f68f522f
commit
e35607bb5c
30
.github/workflows/build.yml
vendored
30
.github/workflows/build.yml
vendored
@ -4,7 +4,7 @@ on: workflow_dispatch
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
PLUGIN_NAME: aitum-multistream
|
PLUGIN_NAME: aitum-multistream
|
||||||
OBS_VERSION: 29.0.0-beta1
|
OBS_VERSION: 30.0.0
|
||||||
jobs:
|
jobs:
|
||||||
macos:
|
macos:
|
||||||
name: macOS
|
name: macOS
|
||||||
@ -18,7 +18,7 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
CODESIGN_IDENT: '-'
|
CODESIGN_IDENT: '-'
|
||||||
CODESIGN_IDENT_INSTALLER: ''
|
CODESIGN_IDENT_INSTALLER: ''
|
||||||
MACOSX_DEPLOYMENT_TARGET: '10.15'
|
MACOSX_DEPLOYMENT_TARGET: '11.0'
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: zsh {0}
|
shell: zsh {0}
|
||||||
@ -185,21 +185,18 @@ jobs:
|
|||||||
name: 'Windows Build'
|
name: 'Windows Build'
|
||||||
runs-on: [windows-latest]
|
runs-on: [windows-latest]
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: true
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
target: [x64, x86]
|
target: [x64]
|
||||||
include:
|
include:
|
||||||
- target: x64
|
- target: x64
|
||||||
cmake_build: 'x64'
|
cmake_build: 'x64'
|
||||||
deps_ext: '64'
|
deps_ext: '64'
|
||||||
- target: x86
|
|
||||||
cmake_build: 'Win32'
|
|
||||||
deps_ext: '32'
|
|
||||||
env:
|
env:
|
||||||
QT_VERSION: '6.3.1'
|
QT_VERSION: '6.3.1'
|
||||||
CMAKE_GENERATOR: "Visual Studio 17 2022"
|
CMAKE_GENERATOR: "Visual Studio 17 2022"
|
||||||
CMAKE_SYSTEM_VERSION: "10.0.18363.657"
|
CMAKE_SYSTEM_VERSION: "10.0.18363.657"
|
||||||
WINDOWS_DEPS_VERSION: '2022-08-02'
|
WINDOWS_DEPS_VERSION: '2023-11-03'
|
||||||
steps:
|
steps:
|
||||||
- name: Add msbuild to PATH
|
- name: Add msbuild to PATH
|
||||||
uses: microsoft/setup-msbuild@v2
|
uses: microsoft/setup-msbuild@v2
|
||||||
@ -221,11 +218,11 @@ jobs:
|
|||||||
- name: 'Install prerequisite: QT'
|
- name: 'Install prerequisite: QT'
|
||||||
run: |
|
run: |
|
||||||
curl -kLO https://github.com/obsproject/obs-deps/releases/download/${{ env.WINDOWS_DEPS_VERSION }}/windows-deps-qt6-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -f --retry 5 -C -
|
curl -kLO https://github.com/obsproject/obs-deps/releases/download/${{ env.WINDOWS_DEPS_VERSION }}/windows-deps-qt6-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -f --retry 5 -C -
|
||||||
7z x windows-deps-qt6-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -o"${{ github.workspace }}/cmbuild/deps"
|
7z x windows-deps-qt6-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -o"${{ github.workspace }}/cmbuild/deps" -aoa
|
||||||
- name: 'Install prerequisite: Pre-built dependencies'
|
- name: 'Install prerequisite: Pre-built dependencies'
|
||||||
run: |
|
run: |
|
||||||
curl -kLO https://github.com/obsproject/obs-deps/releases/download/${{ env.WINDOWS_DEPS_VERSION }}/windows-deps-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -f --retry 5 -C -
|
curl -kLO https://github.com/obsproject/obs-deps/releases/download/${{ env.WINDOWS_DEPS_VERSION }}/windows-deps-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -f --retry 5 -C -
|
||||||
7z x windows-deps-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -o"${{ github.workspace }}/cmbuild/deps"
|
7z x windows-deps-${{ env.WINDOWS_DEPS_VERSION }}-${{ matrix.target }}.zip -o"${{ github.workspace }}/cmbuild/deps" -aoa
|
||||||
- name: Configure
|
- name: Configure
|
||||||
run: |
|
run: |
|
||||||
mkdir ./package
|
mkdir ./package
|
||||||
@ -269,15 +266,8 @@ jobs:
|
|||||||
$env:FILE_DATE=(Get-Date -UFormat "%F")
|
$env:FILE_DATE=(Get-Date -UFormat "%F")
|
||||||
$env:FILE_NAME="${{ env.PLUGIN_NAME }}-${env:FILE_DATE}-${{ github.sha }}-windows"
|
$env:FILE_NAME="${{ env.PLUGIN_NAME }}-${env:FILE_DATE}-${{ github.sha }}-windows"
|
||||||
echo "FILE_NAME=${env:FILE_NAME}" >> ${env:GITHUB_ENV}
|
echo "FILE_NAME=${env:FILE_NAME}" >> ${env:GITHUB_ENV}
|
||||||
$env:FILE_NAME_X86="${{ env.PLUGIN_NAME }}-${{ github.sha }}-windows-x86"
|
|
||||||
echo "FILE_NAME_X86=${env:FILE_NAME_X86}" >> ${env:GITHUB_ENV}
|
|
||||||
$env:FILE_NAME_X64="${{ env.PLUGIN_NAME }}-${{ github.sha }}-windows-x64"
|
$env:FILE_NAME_X64="${{ env.PLUGIN_NAME }}-${{ github.sha }}-windows-x64"
|
||||||
echo "FILE_NAME_X64=${env:FILE_NAME_X64}" >> ${env:GITHUB_ENV}
|
echo "FILE_NAME_X64=${env:FILE_NAME_X64}" >> ${env:GITHUB_ENV}
|
||||||
- name: Retrieve x86 build
|
|
||||||
uses: actions/download-artifact@v4.1.2
|
|
||||||
with:
|
|
||||||
name: '${{ env.FILE_NAME_X86 }}'
|
|
||||||
path: ./package
|
|
||||||
- name: Retrieve x64 build
|
- name: Retrieve x64 build
|
||||||
uses: actions/download-artifact@v4.1.2
|
uses: actions/download-artifact@v4.1.2
|
||||||
with:
|
with:
|
||||||
@ -294,10 +284,6 @@ jobs:
|
|||||||
New-Item -ItemType directory -Path certificate
|
New-Item -ItemType directory -Path certificate
|
||||||
Set-Content -Path certificate\certificate.txt -Value '${{ secrets.WINDOWS_CSC_LINK }}'
|
Set-Content -Path certificate\certificate.txt -Value '${{ secrets.WINDOWS_CSC_LINK }}'
|
||||||
certutil -decode certificate\certificate.txt certificate\certificate.pfx
|
certutil -decode certificate\certificate.txt certificate\certificate.pfx
|
||||||
- name: Code Sign 32
|
|
||||||
if: success() && github.event_name != 'pull_request'
|
|
||||||
run: |
|
|
||||||
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.20348.0/x86/signtool.exe' sign /f certificate\certificate.pfx /p '${{ secrets.WINDOWS_CSC_PASS }}' /t http://timestamp.comodoca.com/authenticode .\package\obs-plugins\32bit\${{ env.PLUGIN_NAME }}.dll
|
|
||||||
- name: Code Sign 64
|
- name: Code Sign 64
|
||||||
if: success() && github.event_name != 'pull_request'
|
if: success() && github.event_name != 'pull_request'
|
||||||
run: |
|
run: |
|
||||||
@ -328,4 +314,4 @@ jobs:
|
|||||||
- name: Remove temp artifacts
|
- name: Remove temp artifacts
|
||||||
uses: geekyeggo/delete-artifact@v4.1.0
|
uses: geekyeggo/delete-artifact@v4.1.0
|
||||||
with:
|
with:
|
||||||
name: "${{ env.FILE_NAME_X86 }}\n${{ env.FILE_NAME_X64 }}\ninstaller-files"
|
name: "${{ env.FILE_NAME_X64 }}\ninstaller-files"
|
||||||
|
@ -32,10 +32,10 @@ target_sources(${PROJECT_NAME} PRIVATE
|
|||||||
file-updater.h)
|
file-updater.h)
|
||||||
|
|
||||||
if(BUILD_OUT_OF_TREE)
|
if(BUILD_OUT_OF_TREE)
|
||||||
|
include(cmake/ObsPluginHelpers.cmake)
|
||||||
find_package(libobs REQUIRED)
|
find_package(libobs REQUIRED)
|
||||||
find_package(obs-frontend-api REQUIRED)
|
find_package(obs-frontend-api REQUIRED)
|
||||||
find_package(CURL REQUIRED)
|
find_package(CURL REQUIRED)
|
||||||
include(cmake/ObsPluginHelpers.cmake)
|
|
||||||
find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui)
|
find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui)
|
||||||
set(OBS_FRONTEND_API_NAME "obs-frontend-api")
|
set(OBS_FRONTEND_API_NAME "obs-frontend-api")
|
||||||
else()
|
else()
|
||||||
|
@ -1,26 +1,26 @@
|
|||||||
{
|
{
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"obs-studio": {
|
"obs-studio": {
|
||||||
"version": "29.1.0",
|
"version": "30.0.0",
|
||||||
"repository": "https://github.com/obsproject/obs-studio.git",
|
"repository": "https://github.com/obsproject/obs-studio.git",
|
||||||
"branch": "master",
|
"branch": "master",
|
||||||
"hash": "c58e511813c33e93da7637d50aa431ae0cddda0c"
|
"hash": "34ef67e212f24a085a63705a0ab81e3401c8eca4"
|
||||||
},
|
},
|
||||||
"prebuilt": {
|
"prebuilt": {
|
||||||
"version": "2023-04-12",
|
"version": "2023-11-03",
|
||||||
"baseUrl": "https://github.com/obsproject/obs-deps/releases/download",
|
"baseUrl": "https://github.com/obsproject/obs-deps/releases/download",
|
||||||
"label": "Pre-built obs-deps",
|
"label": "Pre-built obs-deps",
|
||||||
"hashes": {
|
"hashes": {
|
||||||
"macos-x86_64": "81120ffa33bb050c6c5fcd236e5cedfd7b80f7053fdba271fead5af20be0b5f5",
|
"macos-x86_64": "b669dd1518b9350c307eff8102977c7eb7a8c8c10d677d4437862e66926b46ae",
|
||||||
"macos-arm64": "b9bab79611774c4651d084e14259abe889d2b8d1653787a843d08cf3f0db881c",
|
"macos-arm64": "3a6e0e0f8fcca26821f5d842d6e09a31c2376515004ae19a5310ba576b95c63f",
|
||||||
"macos-universal": "9535c6e1ad96f7d49960251e85a245774088d48da1d602bb82f734b10219125a",
|
"macos-universal": "90c2fc069847ec2768dcc867c1c63b112c615ed845a907dc44acab7a97181974",
|
||||||
"windows-x86": "9f8582ab5891b000869d6484ea591add9fbac9f1c91b56c7b85fdfd56a261c1b",
|
"windows-x86": "b69c864275189464483c240ef3f25ea16fba3050b136fe6c3db6e9ee63036683",
|
||||||
"windows-x64": "c13a14a1acc4224b21304d97b63da4121de1ed6981297e50496fbc474abc0503",
|
"windows-x64": "d0825a6fb65822c993a3059edfba70d72d2e632ef74893588cf12b1f0d329ce6",
|
||||||
"linux-x86_64": "056425a8a7a4a0c242ed5ab9c1eba4dd6b004386877de4304524e7bea11c0ee2"
|
"linux-x86_64": "9217c6b70854a08575cc3debe85ed5496bb0d8a9de54a1f8148aa71ad71f98d6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"qt5": {
|
"qt5": {
|
||||||
"version": "2023-04-12",
|
"version": "2023-11-03",
|
||||||
"baseUrl": "https://github.com/obsproject/obs-deps/releases/download",
|
"baseUrl": "https://github.com/obsproject/obs-deps/releases/download",
|
||||||
"label": "Pre-built Qt5",
|
"label": "Pre-built Qt5",
|
||||||
"hashes": {
|
"hashes": {
|
||||||
@ -36,14 +36,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"qt6": {
|
"qt6": {
|
||||||
"version": "2023-04-12",
|
"version": "2023-11-03",
|
||||||
"baseUrl": "https://github.com/obsproject/obs-deps/releases/download",
|
"baseUrl": "https://github.com/obsproject/obs-deps/releases/download",
|
||||||
"label": "Pre-built Qt6",
|
"label": "Pre-built Qt6",
|
||||||
"hashes": {
|
"hashes": {
|
||||||
"macos-x86_64": "2622d6ecd484a596da12b6a45b709fe563821eda558d0bbb27335c8c2f63945c",
|
"macos-x86_64": "2622d6ecd484a596da12b6a45b709fe563821eda558d0bbb27335c8c2f63945c",
|
||||||
"macos-arm64": "4f72aa1103d88a00d90c01bb3650276ffa1408e16ef40579177605483b986dc9",
|
"macos-arm64": "4f72aa1103d88a00d90c01bb3650276ffa1408e16ef40579177605483b986dc9",
|
||||||
"macos-universal": "eb7614544ab4f3d2c6052c797635602280ca5b028a6b987523d8484222ce45d1",
|
"macos-universal": "ba4a7152848da0053f63427a2a2cb0a199af3992997c0db08564df6f48c9db98",
|
||||||
"windows-x64": "4d39364b8a8dee5aa24fcebd8440d5c22bb4551c6b440ffeacce7d61f2ed1add",
|
"windows-x64": "bc57dedf76b47119a6dce0435a2f21b35b08c8f2948b1cb34a157320f77732d1",
|
||||||
"windows-x86": "24fc03bef153a0e027c1479e42eb08097a4ea1d70a4710825be0783d0626cb0d"
|
"windows-x86": "24fc03bef153a0e027c1479e42eb08097a4ea1d70a4710825be0783d0626cb0d"
|
||||||
},
|
},
|
||||||
"pdb-hashes": {
|
"pdb-hashes": {
|
||||||
@ -55,7 +55,7 @@
|
|||||||
"platformConfig": {
|
"platformConfig": {
|
||||||
"macos-x86_64": {
|
"macos-x86_64": {
|
||||||
"qtVersion": 6,
|
"qtVersion": 6,
|
||||||
"deploymentTarget": "10.15"
|
"deploymentTarget": "11.0"
|
||||||
},
|
},
|
||||||
"macos-arm64": {
|
"macos-arm64": {
|
||||||
"qtVersion": 6,
|
"qtVersion": 6,
|
||||||
@ -63,7 +63,7 @@
|
|||||||
},
|
},
|
||||||
"macos-universal": {
|
"macos-universal": {
|
||||||
"qtVersion": 6,
|
"qtVersion": 6,
|
||||||
"deploymentTarget": "10.15"
|
"deploymentTarget": "11.0"
|
||||||
},
|
},
|
||||||
"windows-x64": {
|
"windows-x64": {
|
||||||
"qtVersion": 6,
|
"qtVersion": 6,
|
||||||
|
@ -8,9 +8,16 @@ VerticalCanvas="Vertical Canvas"
|
|||||||
General="General"
|
General="General"
|
||||||
MainCanvas="Main Canvas"
|
MainCanvas="Main Canvas"
|
||||||
MainOutput="Main Output"
|
MainOutput="Main Output"
|
||||||
|
MainEncoder="Main Encoder"
|
||||||
SetupTroubleshooter="Setup Troubleshooter"
|
SetupTroubleshooter="Setup Troubleshooter"
|
||||||
Help="Help"
|
Help="Help"
|
||||||
AddOutput="AddOutput"
|
AddOutput="AddOutput"
|
||||||
Unnamed="Unnamed"
|
Unnamed="Unnamed"
|
||||||
Version="Version"
|
Version="Version"
|
||||||
MadeBy="made with ♡ by"
|
MadeBy="made with ♡ by"
|
||||||
|
VideoEncoder="Video Encoder"
|
||||||
|
VideoEncoderIndex="Video Encoder Index"
|
||||||
|
Server="Server"
|
||||||
|
Key="Key"
|
||||||
|
Stream="Stream"
|
||||||
|
MainOutputNotActive="Main output not active!"
|
@ -41,7 +41,6 @@ Name: "english"; MessagesFile: "compiler:Default.isl"
|
|||||||
|
|
||||||
[Files]
|
[Files]
|
||||||
Source: "package/*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
Source: "package/*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||||
Source: "msvc-redist-helper.exe"; DestDir: "{app}"; DestName: "msvc-redist-helper.exe"; Flags: ignoreversion dontcopy noencryption
|
|
||||||
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
||||||
|
|
||||||
[Icons]
|
[Icons]
|
||||||
@ -57,7 +56,9 @@ begin
|
|||||||
Result := ExpandConstant('{pf}\obs-studio');
|
Result := ExpandConstant('{pf}\obs-studio');
|
||||||
// query the first registry value; if this succeeds, return the obtained value
|
// query the first registry value; if this succeeds, return the obtained value
|
||||||
if RegQueryStringValue(HKLM32, 'SOFTWARE\OBS Studio', '', InstallPath) then
|
if RegQueryStringValue(HKLM32, 'SOFTWARE\OBS Studio', '', InstallPath) then
|
||||||
Result := InstallPath
|
Result := InstallPath;
|
||||||
|
if RegQueryStringValue(HKLM64, 'SOFTWARE\OBS Studio', '', InstallPath) then
|
||||||
|
Result := InstallPath;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////
|
||||||
@ -107,25 +108,6 @@ begin
|
|||||||
Result := 1;
|
Result := 1;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////
|
|
||||||
procedure CurStepChanged(CurStep: TSetupStep);
|
|
||||||
var
|
|
||||||
ResultCode: Integer;
|
|
||||||
begin
|
|
||||||
if (CurStep=ssInstall) then
|
|
||||||
begin
|
|
||||||
if (IsUpgrade()) then
|
|
||||||
begin
|
|
||||||
UnInstallOldVersion();
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
if (CurStep=ssPostInstall) then
|
|
||||||
begin
|
|
||||||
ExtractTemporaryFile('msvc-redist-helper.exe');
|
|
||||||
Exec(ExpandConstant('{tmp}\msvc-redist-helper.exe'), '2019', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////
|
||||||
function NextButtonClick(PageId: Integer): Boolean;
|
function NextButtonClick(PageId: Integer): Boolean;
|
||||||
var
|
var
|
||||||
@ -153,8 +135,8 @@ begin
|
|||||||
ObsMajorVersion := ObsMS shr 16;
|
ObsMajorVersion := ObsMS shr 16;
|
||||||
{ select only low 16 bits }
|
{ select only low 16 bits }
|
||||||
ObsMinorVersion := ObsMS and $FFFF;
|
ObsMinorVersion := ObsMS and $FFFF;
|
||||||
if ObsMajorVersion < 29 then begin
|
if ObsMajorVersion < 30 then begin
|
||||||
MsgBox('Version of OBS Studio (bin\64bit\obs64.exe) is lower than the version 29 required.', mbError, MB_OK);
|
MsgBox('Version of OBS Studio (bin\64bit\obs64.exe) is lower than the version 30 required.', mbError, MB_OK);
|
||||||
Result := False;
|
Result := False;
|
||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
|
@ -483,17 +483,10 @@ bool MultistreamDock::StartOutput(obs_data_t *settings, QPushButton *streamButto
|
|||||||
auto service = obs_service_create("rtmp_custom", name, s, nullptr);
|
auto service = obs_service_create("rtmp_custom", name, s, nullptr);
|
||||||
obs_data_release(s);
|
obs_data_release(s);
|
||||||
|
|
||||||
#if LIBOBS_API_VER < MAKE_SEMANTIC_VERSION(29, 1, 0)
|
|
||||||
const char *type = obs_service_get_output_type(service);
|
|
||||||
#else
|
|
||||||
const char *type = obs_service_get_preferred_output_type(service);
|
const char *type = obs_service_get_preferred_output_type(service);
|
||||||
#endif
|
|
||||||
if (!type) {
|
if (!type) {
|
||||||
#if LIBOBS_API_VER < MAKE_SEMANTIC_VERSION(29, 1, 0)
|
|
||||||
const char *url = obs_service_get_url(service);
|
|
||||||
#else
|
|
||||||
const char *url = obs_service_get_connect_info(service, OBS_SERVICE_CONNECT_INFO_SERVER_URL);
|
const char *url = obs_service_get_connect_info(service, OBS_SERVICE_CONNECT_INFO_SERVER_URL);
|
||||||
#endif
|
|
||||||
type = "rtmp_output";
|
type = "rtmp_output";
|
||||||
if (url != NULL && strncmp(url, "ftl", 3) == 0) {
|
if (url != NULL && strncmp(url, "ftl", 3) == 0) {
|
||||||
type = "ftl_output";
|
type = "ftl_output";
|
||||||
|
Loading…
Reference in New Issue
Block a user