|
@@ -16,6 +16,7 @@ volatile bool recording_paused = false;
|
|
|
volatile bool replaybuf_active = false;
|
|
volatile bool replaybuf_active = false;
|
|
|
volatile bool virtualcam_active = false;
|
|
volatile bool virtualcam_active = false;
|
|
|
|
|
|
|
|
|
|
+#define FTL_PROTOCOL "ftl"
|
|
|
#define RTMP_PROTOCOL "rtmp"
|
|
#define RTMP_PROTOCOL "rtmp"
|
|
|
|
|
|
|
|
static void OBSStreamStarting(void *data, calldata_t *params)
|
|
static void OBSStreamStarting(void *data, calldata_t *params)
|
|
@@ -763,7 +764,10 @@ bool SimpleOutput::SetupStreaming(obs_service_t *service)
|
|
|
type = "rtmp_output";
|
|
type = "rtmp_output";
|
|
|
const char *url = obs_service_get_url(service);
|
|
const char *url = obs_service_get_url(service);
|
|
|
if (url != NULL &&
|
|
if (url != NULL &&
|
|
|
- strncmp(url, RTMP_PROTOCOL, strlen(RTMP_PROTOCOL)) != 0) {
|
|
|
|
|
|
|
+ strncmp(url, FTL_PROTOCOL, strlen(FTL_PROTOCOL)) == 0) {
|
|
|
|
|
+ type = "ftl_output";
|
|
|
|
|
+ } else if (url != NULL && strncmp(url, RTMP_PROTOCOL,
|
|
|
|
|
+ strlen(RTMP_PROTOCOL)) != 0) {
|
|
|
type = "ffmpeg_mpegts_muxer";
|
|
type = "ffmpeg_mpegts_muxer";
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -1684,7 +1688,10 @@ bool AdvancedOutput::SetupStreaming(obs_service_t *service)
|
|
|
type = "rtmp_output";
|
|
type = "rtmp_output";
|
|
|
const char *url = obs_service_get_url(service);
|
|
const char *url = obs_service_get_url(service);
|
|
|
if (url != NULL &&
|
|
if (url != NULL &&
|
|
|
- strncmp(url, RTMP_PROTOCOL, strlen(RTMP_PROTOCOL)) != 0) {
|
|
|
|
|
|
|
+ strncmp(url, FTL_PROTOCOL, strlen(FTL_PROTOCOL)) == 0) {
|
|
|
|
|
+ type = "ftl_output";
|
|
|
|
|
+ } else if (url != NULL && strncmp(url, RTMP_PROTOCOL,
|
|
|
|
|
+ strlen(RTMP_PROTOCOL)) != 0) {
|
|
|
type = "ffmpeg_mpegts_muxer";
|
|
type = "ffmpeg_mpegts_muxer";
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|