Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: qt6 and update build tooling #307

Merged
merged 2 commits into from
Dec 13, 2023
Merged

Conversation

Julusian
Copy link
Member

@Julusian Julusian commented Nov 21, 2023

I think this is a useful project, but as it does not have a maintainer it is going rather stale and falling out of sync with changes to the server.

The aim of this is change to get this repository into a better state where it is easier to clone and develop, and ensure that there is a recent release that is easily usable on current oses.

Long term, someone either needs to take over maintenance, or a replacement general purpose client should be made.

This PR does a few things:

  • Replace QT buildsystem with cmake
  • Update to QT6
  • remove atem, panasonic, spyder, sony and tricaster integrations
    • These add complexity for little benefit. The atem integration in particular has many bug reports of crashes. If you need to do these things, I would suggest using companion as a middleware.
  • Update other dependencies, and remove all binaries committed to the repository
    • They are pulled in now as either a git submodule, or cmake externalproject
  • Package linux build as a deb
    • This is intended for ubuntu 22.04, as I expect this will cover most users

TODO:

  • build in github actions
  • fix macos build
  • fix windows build

@5opr4ni
Copy link

5opr4ni commented Dec 12, 2023

Hi Julian

Thanks for paying some attention to this and that you do an effort to make it possible for others to dig in here. I am doing a lot of time in different trucks and galleries all over the world, and everywhere I go I see CasparCG Client, more than the most realizes, and it has also been my main tool when working with Caspar. It would be a grate loss for Caspar if this client didn’t survive.
Thanks again Julian

@Julusian Julusian changed the title feat: modernise feat: qt6 and update build tooling Dec 13, 2023
@Julusian Julusian marked this pull request as ready for review December 13, 2023 23:23
@Julusian Julusian merged commit df81415 into CasparCG:main Dec 13, 2023
@Julusian Julusian deleted the feat/modernise branch December 13, 2023 23:44
@j3po
Copy link

j3po commented Dec 19, 2023

Hi Julian, thanks for pushing. The CasparCG Client is our main tool for small streaming projects including video clips. I am a bit sad to see that it is planned to remove the ATEM commands - we use them quite often to start and switch at the same time.
Maybe I can have a look at this next year and find some students to help me work out a solution.
See ya!

@herzogmedia
Copy link

herzogmedia commented Dec 19, 2023

@j3po We do the same thing. One workaround you could try is to use Companion as an inbetween. Instead of triggering the ATEM directly you could trigger a companion button with OSC that does the same thing.
Edit: which is exactly what @Julusian suggested in his posting, I now see...

@Julusian
Copy link
Member Author

@j3po I suggest using https://bitfocus.io/companion to do the atem side of things. You can send osc/http commands from this client to trigger things in companion. (I think it is also possible to send osc back to the client to trigger things the other way too, but I havent tried this).
The benefit of this is that companion can control a lot more things on the atem than used to be possible here, it can talk to hundreds of different devices, and doesnt have the stability issues that the atem integration in this client had.
So while this flow is less intuitive and a bit more awkward to setup, it is much more powerful, more stable and has less maintenance cost here.

@j3po
Copy link

j3po commented Dec 19, 2023

My concern is exatly that: increased complexity and a non-intuitive solution. My case is somehow special: I am working with students that are not familiar with network protocols and getting them to 'use' a software is much more easy than learning another control interface. I will have a look at the companion setup and try it out to see if the configuration is managable.

Up until now, we did not discover issues with the ATEM integration using simple commands, e.g. select input or fade.

@dimitry-ishenko
Copy link
Contributor

@j3po if you are on Linux one solution is to switch to OSC. This is what I did in one of my setups.

I've set up OSC gateway which receives OSC commands from the Client and calls a custom binary that switches inputs on the ATEM switcher.

Lemme know if you are interested.

inkvolcano added a commit to inkvolcano/client that referenced this pull request Sep 22, 2024
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
inkvolcano added a commit to inkvolcano/client that referenced this pull request Sep 23, 2024
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants