浏览代码

UI: Add support for error messages from the Virtual Camera system

PatTheMav 2 年之前
父节点
当前提交
d3ccf1b889
共有 2 个文件被更改,包括 16 次插入1 次删除
  1. 1 0
      UI/data/locale/en-US.ini
  2. 15 1
      UI/window-basic-main-outputs.cpp

+ 1 - 0
UI/data/locale/en-US.ini

@@ -392,6 +392,7 @@ ConfirmReset.Text="Are you sure you wish to reset current properties to their de
 Output.StartStreamFailed="Failed to start streaming"
 Output.StartRecordingFailed="Failed to start recording"
 Output.StartReplayFailed="Failed to start replay buffer"
+Output.StartVirtualCamFailed="Failed to start virtual camera"
 Output.StartFailedGeneric="Starting the output failed. Please check the log for details.\n\nNote: If you are using the NVENC or AMD encoders, make sure your video drivers are up to date."
 
 # replay buffer + pause warning message

+ 15 - 1
UI/window-basic-main-outputs.cpp

@@ -318,8 +318,22 @@ bool BasicOutputHandler::StartVirtualCam()
 		SetupOutputs();
 
 	bool success = obs_output_start(virtualCam);
-	if (!success)
+	if (!success) {
+		QString errorReason;
+
+		const char *error = obs_output_get_last_error(virtualCam);
+		if (error) {
+			errorReason = QT_UTF8(error);
+		} else {
+			errorReason = QTStr("Output.StartFailedGeneric");
+		}
+
+		QMessageBox::critical(main,
+				      QTStr("Output.StartVirtualCameraFailed"),
+				      errorReason);
+
 		DestroyVirtualCamView();
+	}
 
 	return success;
 }