CasparCG / client

Client software primarily used with the CasparCG Server software for audio and video playout, to control graphics and recording, but it can also be used for other tasks within television broadcast.
https://casparcg.com
GNU General Public License v3.0
288 stars 97 forks source link

OSC control of client Pause/Resume does not function #304

Closed amwtech closed 11 months ago

amwtech commented 1 year ago

Client versions with the issue include 2.0.8, 2.0.9, 2.2 Operating Systems: Windows, MacOS, Linux

When a remote control enabled rundown recieves a OSC message with address /control/pause the command is ignored.

The reason is the code to add the pause command to the list of recognised commands is missing from file rundowntreewidget.cpp

The missing code is shown below:

/* Missing PAUSE connection - version 2.0.9 client branch */
QString pauseControlFilter = Osc::DEFAULT_PAUSE_RUNDOWN_CONTROL_FILTER;
this->pauseControlSubscription = new OscSubscription(pauseControlFilter, this);
QObject::connect(this->pauseControlSubscription, SIGNAL(subscriptionReceived(const QString&, const QList<QVariant>&)),
              this, SLOT(pauseControlSubscriptionReceived(const QString&, const QList<QVariant>&)));
/* Missing PAUSE connection - version 2.2.0 client branch */
QString pauseControlFilter = Osc::RUNDOWN_CONTROL_PAUSE_FILTER;
this->pauseControlSubscription = new OscSubscription(pauseControlFilter, this);
QObject::connect(this->pauseControlSubscription, SIGNAL(subscriptionReceived(const QString&, const QList<QVariant>&)),
              this, SLOT(pauseControlSubscriptionReceived(const QString&, const QList<QVariant>&)));

Add this code to function void RundownTreeWidget::configureOscSubscriptions(), for example starting at line 1804 of the version 2.2 client file set.

Julusian commented 11 months ago

Fix applied in https://github.com/CasparCG/client/commit/cb28e23fa09deb0dc8f332e3e6f93b7ad8478d4a I havent tested it, hopefully it still works

amwtech commented 11 months ago

Tested on Mac and Windows client build. Operates correctly.