Skip to content

Commit 03aa21c

Browse files
committed
Squashed commit of the following:
commit 73683a4 Author: ServiusHack <serviushack@gmx.de> Date: Tue Jun 11 13:30:07 2024 +0200 Fix malformed color command CasparCG#293 (CasparCG#314) commit bb65df8 Author: ServiusHack <serviushack@gmx.de> Date: Tue Jun 11 09:11:31 2024 +0200 chore: Document Qt requirements (CasparCG#313) commit e0642dc Author: Julian Waller <git@julusian.co.uk> Date: Wed Apr 17 17:43:28 2024 +0100 chore: update github workflows commit 8d29b4f Author: Julian Waller <git@julusian.co.uk> Date: Wed Mar 6 09:52:00 2024 +0000 fix: add missing formats to sql schema commit 6d74aa3 Author: Julian Waller <git@julusian.co.uk> Date: Wed Feb 21 17:50:26 2024 +0000 fix: clip time not showing CasparCG/server#1521 commit 028261f Author: Julian Waller <git@julusian.co.uk> Date: Wed Feb 21 17:27:47 2024 +0000 fix: target dropdown showing empty when unknown item was selected commit 58e2267 Author: Julian Waller <git@julusian.co.uk> Date: Tue Jan 9 21:56:41 2024 +0000 fix: typo in CasparCG#310 commit 5118b0a Author: Julian Waller <git@julusian.co.uk> Date: Tue Jan 9 21:43:11 2024 +0000 fix: typo in CasparCG#310 commit 43fab80 Merge: 21cbf4b e128c87 Author: Julian Waller <git@julusian.co.uk> Date: Tue Jan 9 21:35:04 2024 +0000 Merge pull request CasparCG#310 from amwtech/main commit 21cbf4b Author: Julian Waller <git@julusian.co.uk> Date: Tue Jan 9 21:10:30 2024 +0000 chore: macos code signing commit e128c87 Author: amwtech <86308191+amwtech@users.noreply.github.com> Date: Sun Jan 7 15:34:11 2024 +0000 Add files via upload commit 67a5c58 Author: Julian Waller <git@julusian.co.uk> Date: Thu Dec 14 00:00:15 2023 +0000 fix: Playout Command Pause or Resume does not operate CasparCG#301 commit cb28e23 Author: Julian Waller <git@julusian.co.uk> Date: Wed Dec 13 23:58:45 2023 +0000 fix: OSC control of client Pause/Resume does not function CasparCG#304 commit c79c5ff Author: Julian Waller <git@julusian.co.uk> Date: Wed Dec 13 23:55:55 2023 +0000 fix: GPO saved rising/falling configuration does not correctly recall settings at startup CasparCG#305 commit df81415 Author: Julian Waller <git@julusian.co.uk> Date: Wed Dec 13 23:06:15 2023 +0000 feat: qt6 and update build tooling CasparCG#307 commit 5b5743a Author: Julian Waller <git@julusian.co.uk> Date: Wed Dec 13 23:21:42 2023 +0000 wip: delete committed libraries and binaries
1 parent 279220d commit 03aa21c

File tree

12,564 files changed

+4194
-2127072
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

12,564 files changed

+4194
-2127072
lines changed

.github/workflows/linux.yaml

+65
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: Build Linux
2+
3+
on:
4+
push:
5+
# branches: [ "main" ]
6+
pull_request:
7+
branches: ["main"]
8+
9+
jobs:
10+
build-deb:
11+
runs-on: ubuntu-22.04
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
with:
16+
submodules: true
17+
18+
- name: Prepare dependencies
19+
run: |
20+
sudo apt update
21+
sudo apt install cmake libboost-thread-dev libasio-dev qt6-base-dev libqt6websockets6-dev libqt6gui6 libqt6widgets6 libqt6core5compat6-dev libgl1-mesa-dev libvlc-dev libvlccore-dev
22+
env:
23+
CI: 1
24+
25+
- name: Run build
26+
run: |
27+
./tools/build-linux.sh
28+
env:
29+
CI: 1
30+
31+
- name: Rename build
32+
id: "rename-build"
33+
shell: bash
34+
run: |
35+
TARGET=casparcg-client-${{ github.sha }}-ubuntu22.deb
36+
mv build/CasparCG*.deb "$TARGET"
37+
38+
echo "artifactname=$TARGET" >> $GITHUB_OUTPUT
39+
40+
# check if a release branch, or main, or a tag
41+
if [[ "${{ github.ref_name }}" == "main" || "${{ github.ref_name }}" == "2.3.x-lts" ]]
42+
then
43+
# Only proceed if we have an sftp password
44+
if [ -n "${{ secrets.SFTP_PASSWORD }}" ]
45+
then
46+
47+
echo "uploadname=$TARGET" >> $GITHUB_OUTPUT
48+
fi
49+
fi
50+
51+
- uses: actions/upload-artifact@v4
52+
with:
53+
name: upload-artifact
54+
path: ${{ steps.rename-build.outputs.artifactname }}
55+
56+
- name: Copy single file to remote
57+
uses: garygrossgarten/github-action-scp@v0.8.0
58+
if: ${{ steps.rename-build.outputs.uploadname }}
59+
with:
60+
local: "${{ steps.rename-build.outputs.uploadname }}"
61+
remote: "${{ secrets.SFTP_ROOT }}/${{ github.ref_name }}/${{ steps.rename-build.outputs.uploadname }}"
62+
host: ${{ secrets.SFTP_HOST }}
63+
username: ${{ secrets.SFTP_USERNAME }}
64+
password: ${{ secrets.SFTP_PASSWORD }}
65+

.github/workflows/macos.yaml

+100
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
name: Build macos
2+
3+
on:
4+
push:
5+
# branches: [ "main" ]
6+
pull_request:
7+
branches: ["main"]
8+
9+
jobs:
10+
build:
11+
runs-on: macos-11
12+
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
arch: [arm64, x86_64]
17+
18+
steps:
19+
- uses: actions/checkout@v4
20+
with:
21+
submodules: true
22+
23+
- name: Install Qt
24+
uses: jurplel/install-qt-action@v3
25+
with:
26+
version: 6.5.3
27+
tools: 'tools_ifw tools_cmake'
28+
modules: 'qtwebsockets qt5compat'
29+
30+
- name: Install the Apple certificate and provisioning profile
31+
env:
32+
APPLE_CERTIFICATE_BASE64: ${{ secrets.APPLE_CERTIFICATE_BASE64 }}
33+
APPLE_P12_PASSWORD: ${{ secrets.APPLE_P12_PASSWORD }}
34+
KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }}
35+
run: |
36+
if [[ -n "$APPLE_CERTIFICATE_BASE64" ]]; then
37+
# create variables
38+
CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12
39+
KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
40+
41+
# import certificate and provisioning profile from secrets
42+
echo -n "$APPLE_CERTIFICATE_BASE64" | base64 --decode -o $CERTIFICATE_PATH
43+
44+
# create temporary keychain
45+
security create-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
46+
security set-keychain-settings -lut 21600 $KEYCHAIN_PATH
47+
security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
48+
49+
# import certificate to keychain
50+
security import $CERTIFICATE_PATH -P "$APPLE_P12_PASSWORD" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
51+
security list-keychain -d user -s $KEYCHAIN_PATH
52+
53+
# list signing identities
54+
# security find-identity -v -p codesigning
55+
fi
56+
- name: Run build
57+
run: |
58+
./tools/build-macos.sh ${{ matrix.arch }}
59+
env:
60+
CI: 1
61+
BUILD_QT_PATH: ${{ github.workspace }}/Qt/6.5.3/macos
62+
BUILD_PARALLEL_THREADS: 2
63+
MACOS_SIGN_NAME: ${{ secrets.MACOS_SIGN_NAME }}
64+
APPLEID: ${{ secrets.APPLEID }}
65+
APPLEIDPASS: ${{ secrets.APPLEIDPASS }}
66+
APPLEIDTEAM: ${{ secrets.APPLEIDTEAM }}
67+
68+
- name: Rename build
69+
id: "rename-build"
70+
shell: bash
71+
run: |
72+
TARGET=casparcg-client-${{ github.sha }}-${{ matrix.arch }}.dmg
73+
mv build/CasparCG*.dmg "$TARGET"
74+
75+
echo "artifactname=$TARGET" >> $GITHUB_OUTPUT
76+
77+
# check if a release branch, or main, or a tag
78+
if [[ "${{ github.ref_name }}" == "main" || "${{ github.ref_name }}" == "2.3.x-lts" ]]
79+
then
80+
# Only report if we have an sftp password
81+
if [ -n "${{ secrets.SFTP_PASSWORD }}" ]
82+
then
83+
echo "uploadname=$TARGET" >> $GITHUB_OUTPUT
84+
fi
85+
fi
86+
87+
- uses: actions/upload-artifact@v4
88+
with:
89+
name: casparcg-client-macos-${{ matrix.arch }}
90+
path: ${{ steps.rename-build.outputs.artifactname }}
91+
92+
- name: Copy single file to remote
93+
uses: garygrossgarten/github-action-scp@v0.8.0
94+
if: ${{ steps.rename-build.outputs.uploadname }}
95+
with:
96+
local: "${{ steps.rename-build.outputs.uploadname }}"
97+
remote: "${{ secrets.SFTP_ROOT }}/${{ github.ref_name }}/${{ steps.rename-build.outputs.uploadname }}"
98+
host: ${{ secrets.SFTP_HOST }}
99+
username: ${{ secrets.SFTP_USERNAME }}
100+
password: ${{ secrets.SFTP_PASSWORD }}

.github/workflows/windows.yaml

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: Build Windows
2+
3+
on:
4+
push:
5+
# branches: [ "main" ]
6+
pull_request:
7+
branches: ["main"]
8+
9+
jobs:
10+
build:
11+
runs-on: windows-2022
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
with:
16+
submodules: true
17+
18+
- name: Install Qt
19+
uses: jurplel/install-qt-action@v3
20+
with:
21+
version: 6.5.3
22+
arch: win64_msvc2019_64
23+
tools: 'tools_ifw tools_cmake'
24+
modules: 'qtwebsockets qt5compat'
25+
26+
- name: Run build
27+
run: |
28+
cd tools
29+
./build-windows.bat
30+
env:
31+
CI: 1
32+
BUILD_QT_PATH: ${{ github.workspace }}/Qt/6.5.3
33+
34+
- name: Rename build
35+
id: "rename-build"
36+
shell: bash
37+
run: |
38+
TARGET=casparcg-client-${{ github.sha }}-windows.zip
39+
mv build/casparcg_client.zip "$TARGET"
40+
41+
echo "artifactname=$TARGET" >> $GITHUB_OUTPUT
42+
43+
# check if a release branch, or main, or a tag
44+
if [[ "${{ github.ref_name }}" == "main" || "${{ github.ref_name }}" == "2.3.x-lts" ]]
45+
then
46+
# Only report if we have an sftp password
47+
if [ -n "${{ secrets.SFTP_PASSWORD }}" ]
48+
then
49+
echo "uploadname=$TARGET" >> $GITHUB_OUTPUT
50+
fi
51+
fi
52+
53+
- uses: actions/upload-artifact@v4
54+
with:
55+
name: upload-artifact
56+
path: ${{ steps.rename-build.outputs.artifactname }}
57+
58+
- name: Copy single file to remote
59+
uses: garygrossgarten/github-action-scp@v0.8.0
60+
if: ${{ steps.rename-build.outputs.uploadname }}
61+
with:
62+
local: "${{ steps.rename-build.outputs.uploadname }}"
63+
remote: "${{ secrets.SFTP_ROOT }}/${{ github.ref_name }}/${{ steps.rename-build.outputs.uploadname }}"
64+
host: ${{ secrets.SFTP_HOST }}
65+
username: ${{ secrets.SFTP_USERNAME }}
66+
password: ${{ secrets.SFTP_PASSWORD }}

.gitignore

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# /
22
/bin/
33
/build/
4-
5-
# /lib/
6-
/lib/libvlc/lib/win32/plugins/plugins.dat
7-
/lib/libvlc/lib/macx/lib/plugins/plugins.dat
8-
/lib/libvlc/lib/linux/plugins/plugins.dat
4+
/build-*
5+
/.DS_Store
96

107
# /src/
118
/src/Solution.pro.user
9+
/src/CMakeSettings.json
10+
/src/out
11+
/src/.vs

.gitmodules

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "lib/oscpack"]
2+
path = lib/oscpack
3+
url = https://github.com/RossBencina/oscpack.git

.vscode/settings.json

+87
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
{
2+
"files.associations": {
3+
"functional": "cpp",
4+
"cctype": "cpp",
5+
"clocale": "cpp",
6+
"cmath": "cpp",
7+
"csignal": "cpp",
8+
"cstdarg": "cpp",
9+
"cstddef": "cpp",
10+
"cstdio": "cpp",
11+
"cstdlib": "cpp",
12+
"cstring": "cpp",
13+
"ctime": "cpp",
14+
"cwchar": "cpp",
15+
"cwctype": "cpp",
16+
"*.ipp": "cpp",
17+
"any": "cpp",
18+
"array": "cpp",
19+
"atomic": "cpp",
20+
"hash_map": "cpp",
21+
"strstream": "cpp",
22+
"bit": "cpp",
23+
"*.tcc": "cpp",
24+
"bitset": "cpp",
25+
"chrono": "cpp",
26+
"codecvt": "cpp",
27+
"compare": "cpp",
28+
"complex": "cpp",
29+
"concepts": "cpp",
30+
"condition_variable": "cpp",
31+
"coroutine": "cpp",
32+
"cstdint": "cpp",
33+
"deque": "cpp",
34+
"forward_list": "cpp",
35+
"list": "cpp",
36+
"map": "cpp",
37+
"set": "cpp",
38+
"string": "cpp",
39+
"unordered_map": "cpp",
40+
"unordered_set": "cpp",
41+
"vector": "cpp",
42+
"exception": "cpp",
43+
"algorithm": "cpp",
44+
"iterator": "cpp",
45+
"memory": "cpp",
46+
"memory_resource": "cpp",
47+
"numeric": "cpp",
48+
"optional": "cpp",
49+
"random": "cpp",
50+
"ratio": "cpp",
51+
"regex": "cpp",
52+
"source_location": "cpp",
53+
"string_view": "cpp",
54+
"system_error": "cpp",
55+
"tuple": "cpp",
56+
"type_traits": "cpp",
57+
"utility": "cpp",
58+
"rope": "cpp",
59+
"slist": "cpp",
60+
"fstream": "cpp",
61+
"future": "cpp",
62+
"initializer_list": "cpp",
63+
"iomanip": "cpp",
64+
"iosfwd": "cpp",
65+
"iostream": "cpp",
66+
"istream": "cpp",
67+
"limits": "cpp",
68+
"mutex": "cpp",
69+
"new": "cpp",
70+
"numbers": "cpp",
71+
"ostream": "cpp",
72+
"semaphore": "cpp",
73+
"shared_mutex": "cpp",
74+
"span": "cpp",
75+
"sstream": "cpp",
76+
"stdexcept": "cpp",
77+
"stop_token": "cpp",
78+
"streambuf": "cpp",
79+
"thread": "cpp",
80+
"cfenv": "cpp",
81+
"cinttypes": "cpp",
82+
"typeindex": "cpp",
83+
"typeinfo": "cpp",
84+
"valarray": "cpp",
85+
"variant": "cpp"
86+
}
87+
}

CHANGELOG

+8
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
CasparCG Client 2.3.0-Dev
2+
==============================
3+
- Update to Qt6
4+
- Remove atem, panasonic, spyder, sony and tricaster integrations
5+
- Update other dependencies
6+
- Rework build system to use updated tooling
7+
8+
19
CasparCG Client 2.2.0-20200520
210
==============================
311
- FIX: Disable app nap on macOS. (grahamspr86)

README

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ No extra installations required.
1919
SYSTEM REQUIREMENTS FOR MAC
2020
---------------------------
2121

22-
The Mac version has been tested on 10.15.
22+
The Mac version has been tested on 11.
2323
No extra installations required.
2424

2525

2626
SYSTEM REQUIREMENTS FOR LINUX
2727
-----------------------------
2828

29-
The Linux version has been tested on Ubuntu 19.10 64-bit.
29+
The Linux version has been tested on Ubuntu 22.04 64-bit.
3030
Requires that you install VLC.
3131

3232

@@ -47,7 +47,7 @@ folder.
4747
INSTALLATION LINUX
4848
------------------
4949

50-
Unpack the tar file and run the run.sh.
50+
Install the deb file, and launch 'CasparCG Client'
5151

5252

5353
DOCUMENTATION

0 commit comments

Comments
 (0)