mirror of
https://github.com/Palakis/obs-websocket.git
synced 2024-08-30 18:12:16 +00:00
events: Add support for audio_active, fix docs version
This commit is contained in:
parent
822a1751a2
commit
d03e94ada8
@ -271,6 +271,8 @@ void WSEvents::connectSourceSignals(obs_source_t* source) {
|
|||||||
signal_handler_connect(sh, "volume", OnSourceVolumeChange, this);
|
signal_handler_connect(sh, "volume", OnSourceVolumeChange, this);
|
||||||
signal_handler_connect(sh, "audio_sync", OnSourceAudioSyncOffsetChanged, this);
|
signal_handler_connect(sh, "audio_sync", OnSourceAudioSyncOffsetChanged, this);
|
||||||
signal_handler_connect(sh, "audio_mixers", OnSourceAudioMixersChanged, this);
|
signal_handler_connect(sh, "audio_mixers", OnSourceAudioMixersChanged, this);
|
||||||
|
signal_handler_connect(sh, "audio_activate", OnSourceAudioActivated, this);
|
||||||
|
signal_handler_connect(sh, "audio_deactivate", OnSourceAudioDeactivated, this);
|
||||||
|
|
||||||
signal_handler_connect(sh, "filter_add", OnSourceFilterAdded, this);
|
signal_handler_connect(sh, "filter_add", OnSourceFilterAdded, this);
|
||||||
signal_handler_connect(sh, "filter_remove", OnSourceFilterRemoved, this);
|
signal_handler_connect(sh, "filter_remove", OnSourceFilterRemoved, this);
|
||||||
@ -303,6 +305,8 @@ void WSEvents::disconnectSourceSignals(obs_source_t* source) {
|
|||||||
signal_handler_disconnect(sh, "volume", OnSourceVolumeChange, this);
|
signal_handler_disconnect(sh, "volume", OnSourceVolumeChange, this);
|
||||||
signal_handler_disconnect(sh, "audio_sync", OnSourceAudioSyncOffsetChanged, this);
|
signal_handler_disconnect(sh, "audio_sync", OnSourceAudioSyncOffsetChanged, this);
|
||||||
signal_handler_disconnect(sh, "audio_mixers", OnSourceAudioMixersChanged, this);
|
signal_handler_disconnect(sh, "audio_mixers", OnSourceAudioMixersChanged, this);
|
||||||
|
signal_handler_disconnect(sh, "audio_activate", OnSourceAudioActivated, this);
|
||||||
|
signal_handler_disconnect(sh, "audio_deactivate", OnSourceAudioDeactivated, this);
|
||||||
|
|
||||||
signal_handler_disconnect(sh, "filter_add", OnSourceFilterAdded, this);
|
signal_handler_disconnect(sh, "filter_add", OnSourceFilterAdded, this);
|
||||||
signal_handler_disconnect(sh, "filter_remove", OnSourceFilterRemoved, this);
|
signal_handler_disconnect(sh, "filter_remove", OnSourceFilterRemoved, this);
|
||||||
@ -1098,6 +1102,52 @@ void WSEvents::OnSourceMuteStateChange(void* param, calldata_t* data) {
|
|||||||
self->broadcastUpdate("SourceMuteStateChanged", fields);
|
self->broadcastUpdate("SourceMuteStateChanged", fields);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A source has removed audio.
|
||||||
|
*
|
||||||
|
* @return {String} `sourceName` Source name
|
||||||
|
*
|
||||||
|
* @api events
|
||||||
|
* @name SourceAudioDeactivated
|
||||||
|
* @category sources
|
||||||
|
* @since unreleased
|
||||||
|
*/
|
||||||
|
void WSEvents::OnSourceAudioDeactivated(void* param, calldata_t* data) {
|
||||||
|
auto self = reinterpret_cast<WSEvents*>(param);
|
||||||
|
|
||||||
|
OBSSource source = calldata_get_pointer<obs_source_t>(data, "source");
|
||||||
|
if (!source) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
OBSDataAutoRelease fields = obs_data_create();
|
||||||
|
obs_data_set_string(fields, "sourceName", obs_source_get_name(source));
|
||||||
|
self->broadcastUpdate("SourceAudioDeactivated", fields);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A source has added audio.
|
||||||
|
*
|
||||||
|
* @return {String} `sourceName` Source name
|
||||||
|
*
|
||||||
|
* @api events
|
||||||
|
* @name SourceAudioActivated
|
||||||
|
* @category sources
|
||||||
|
* @since unreleased
|
||||||
|
*/
|
||||||
|
void WSEvents::OnSourceAudioActivated(void* param, calldata_t* data) {
|
||||||
|
auto self = reinterpret_cast<WSEvents*>(param);
|
||||||
|
|
||||||
|
OBSSource source = calldata_get_pointer<obs_source_t>(data, "source");
|
||||||
|
if (!source) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
OBSDataAutoRelease fields = obs_data_create();
|
||||||
|
obs_data_set_string(fields, "sourceName", obs_source_get_name(source));
|
||||||
|
self->broadcastUpdate("SourceAudioActivated", fields);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The audio sync offset of a source has changed.
|
* The audio sync offset of a source has changed.
|
||||||
*
|
*
|
||||||
|
@ -126,6 +126,8 @@ private:
|
|||||||
static void OnSourceMuteStateChange(void* param, calldata_t* data);
|
static void OnSourceMuteStateChange(void* param, calldata_t* data);
|
||||||
static void OnSourceAudioSyncOffsetChanged(void* param, calldata_t* data);
|
static void OnSourceAudioSyncOffsetChanged(void* param, calldata_t* data);
|
||||||
static void OnSourceAudioMixersChanged(void* param, calldata_t* data);
|
static void OnSourceAudioMixersChanged(void* param, calldata_t* data);
|
||||||
|
static void OnSourceAudioActivated(void* param, calldata_t* data);
|
||||||
|
static void OnSourceAudioDeactivated(void* param, calldata_t* data);
|
||||||
|
|
||||||
static void OnSourceRename(void* param, calldata_t* data);
|
static void OnSourceRename(void* param, calldata_t* data);
|
||||||
|
|
||||||
|
@ -351,7 +351,7 @@ RpcResponse WSRequestHandler::ToggleMute(const RpcRequest& request)
|
|||||||
* @api requests
|
* @api requests
|
||||||
* @name GetAudioActive
|
* @name GetAudioActive
|
||||||
* @category sources
|
* @category sources
|
||||||
* @since 4.9.0
|
* @since unreleased
|
||||||
*/
|
*/
|
||||||
RpcResponse WSRequestHandler::GetAudioActive(const RpcRequest& request)
|
RpcResponse WSRequestHandler::GetAudioActive(const RpcRequest& request)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user