mirror of
https://github.com/Palakis/obs-websocket.git
synced 2024-08-30 18:12:16 +00:00
events(TransitionEnd): remove from-scene
because it's not available in transition_stop
This commit is contained in:
parent
1057d765f7
commit
2a7aa432a9
@ -419,20 +419,27 @@ obs_data_t* Utils::GetTransitionData(obs_source_t* transition) {
|
||||
blog(LOG_WARNING, "GetTransitionData: duration is negative !");
|
||||
}
|
||||
|
||||
OBSSourceAutoRelease sourceScene = obs_transition_get_source(transition, OBS_TRANSITION_SOURCE_A);
|
||||
OBSSourceAutoRelease destinationScene = obs_transition_get_active_source(transition);
|
||||
|
||||
obs_data_t* transitionData = obs_data_create();
|
||||
obs_data_set_string(transitionData, "name", obs_source_get_name(transition));
|
||||
obs_data_set_string(transitionData, "type", obs_source_get_id(transition));
|
||||
obs_data_set_int(transitionData, "duration", duration);
|
||||
|
||||
OBSSourceAutoRelease sourceScene = obs_transition_get_source(transition, OBS_TRANSITION_SOURCE_A);
|
||||
if (sourceScene) {
|
||||
// When a transition starts and while it is running, SOURCE_A is the source scene
|
||||
// and SOURCE_B is the destination scene.
|
||||
// Before the transition_end event is triggered on a transition, the destination scene
|
||||
// goes into SOURCE_A and SOURCE_B becomes null. This means that, in transition_stop
|
||||
// we don't know what was the source scene
|
||||
// TODO fix this in libobs
|
||||
|
||||
bool isTransitionEndEvent = (sourceScene == destinationScene);
|
||||
if (!isTransitionEndEvent) {
|
||||
obs_data_set_string(transitionData, "from-scene", obs_source_get_name(sourceScene));
|
||||
}
|
||||
|
||||
OBSSourceAutoRelease destinationScene = obs_transition_get_active_source(transition);
|
||||
if (destinationScene) {
|
||||
obs_data_set_string(transitionData, "to-scene", obs_source_get_name(destinationScene));
|
||||
}
|
||||
|
||||
return transitionData;
|
||||
}
|
||||
|
@ -909,11 +909,11 @@ void WSEvents::OnTransitionBegin(void* param, calldata_t* data) {
|
||||
|
||||
/**
|
||||
* A transition (other than "cut") has ended.
|
||||
* Please note that the `from-scene` field is not available in TransitionEnd.
|
||||
*
|
||||
* @return {String} `name` Transition name.
|
||||
* @return {String} `type` Transition type.
|
||||
* @return {int} `duration` Transition duration (in milliseconds).
|
||||
* @return {String} `from-scene` Source scene of the transition
|
||||
* @return {String} `to-scene` Destination scene of the transition
|
||||
*
|
||||
* @api events
|
||||
|
Loading…
x
Reference in New Issue
Block a user