UI: Release recording/streaming signals before outputs

This commit is contained in:
Palana 2015-07-04 08:00:21 +02:00
parent b0e8fe7be6
commit 473244da3c
2 changed files with 13 additions and 8 deletions

View file

@ -112,14 +112,14 @@ SimpleOutput::SimpleOutput(OBSBasic *main_) : BasicOutputHandler(main_)
if (!aac)
throw "Failed to create audio encoder (simple output)";
signal_handler_connect(obs_output_get_signal_handler(streamOutput),
startStreaming.Connect(obs_output_get_signal_handler(streamOutput),
"start", OBSStartStreaming, this);
signal_handler_connect(obs_output_get_signal_handler(streamOutput),
stopStreaming.Connect(obs_output_get_signal_handler(streamOutput),
"stop", OBSStopStreaming, this);
signal_handler_connect(obs_output_get_signal_handler(fileOutput),
startRecording.Connect(obs_output_get_signal_handler(fileOutput),
"start", OBSStartRecording, this);
signal_handler_connect(obs_output_get_signal_handler(fileOutput),
stopRecording.Connect(obs_output_get_signal_handler(fileOutput),
"stop", OBSStopRecording, this);
}
@ -393,14 +393,14 @@ AdvancedOutput::AdvancedOutput(OBSBasic *main_) : BasicOutputHandler(main_)
"(advanced output)";
}
signal_handler_connect(obs_output_get_signal_handler(streamOutput),
startStreaming.Connect(obs_output_get_signal_handler(streamOutput),
"start", OBSStartStreaming, this);
signal_handler_connect(obs_output_get_signal_handler(streamOutput),
stopStreaming.Connect(obs_output_get_signal_handler(streamOutput),
"stop", OBSStopStreaming, this);
signal_handler_connect(obs_output_get_signal_handler(fileOutput),
startRecording.Connect(obs_output_get_signal_handler(fileOutput),
"start", OBSStartRecording, this);
signal_handler_connect(obs_output_get_signal_handler(fileOutput),
stopRecording.Connect(obs_output_get_signal_handler(fileOutput),
"stop", OBSStopRecording, this);
}

View file

@ -8,6 +8,11 @@ struct BasicOutputHandler {
int activeRefs = 0;
OBSBasic *main;
OBSSignal startRecording;
OBSSignal stopRecording;
OBSSignal startStreaming;
OBSSignal stopStreaming;
inline BasicOutputHandler(OBSBasic *main_) : main(main_) {}
virtual ~BasicOutputHandler() {};