From 89e02ca73cd7cee2f19a3e9f661306faa2c7f9cc Mon Sep 17 00:00:00 2001 From: jp9000 Date: Thu, 24 Apr 2014 21:11:46 -0700 Subject: [PATCH] obs-outputs: Log connections/disconnections --- plugins/obs-outputs/rtmp-stream.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/plugins/obs-outputs/rtmp-stream.c b/plugins/obs-outputs/rtmp-stream.c index b6a91c1ec..1b57ab7e1 100644 --- a/plugins/obs-outputs/rtmp-stream.c +++ b/plugins/obs-outputs/rtmp-stream.c @@ -69,7 +69,7 @@ static const char *rtmp_stream_getname(const char *locale) static void log_rtmp(int level, const char *format, va_list args) { - if (level > RTMP_LOGERROR) + if (level > RTMP_LOGWARNING) return; blogva(LOG_INFO, format, args); @@ -111,6 +111,7 @@ static void *rtmp_stream_create(obs_data_t settings, obs_output_t output) RTMP_Init(&stream->rtmp); RTMP_LogSetCallback(log_rtmp); + RTMP_LogSetLevel(RTMP_LOGWARNING); if (pthread_mutex_init(&stream->packets_mutex, NULL) != 0) goto fail; @@ -229,8 +230,10 @@ static void *send_thread(void *data) if (!disconnected && !send_remaining_packets(stream)) disconnected = true; - if (disconnected) + if (disconnected) { + blog(LOG_INFO, "Disconnected from %s", stream->path.array); free_packets(stream); + } if (os_event_try(stream->stop_event) == EAGAIN) { pthread_detach(stream->send_thread); @@ -356,6 +359,8 @@ static int init_send(struct rtmp_stream *stream) static int try_connect(struct rtmp_stream *stream) { #ifndef FILE_TEST + blog(LOG_INFO, "Connecting to RTMP URL %s...", stream->path.array); + if (!RTMP_SetupURL2(&stream->rtmp, stream->path.array, stream->key.array)) return OBS_OUTPUT_BAD_PATH; @@ -376,6 +381,8 @@ static int try_connect(struct rtmp_stream *stream) return OBS_OUTPUT_CONNECT_FAILED; if (!RTMP_ConnectStream(&stream->rtmp, 0)) return OBS_OUTPUT_INVALID_STREAM; + + blog(LOG_INFO, "Connection to %s successful", stream->path.array); #endif return init_send(stream); @@ -386,8 +393,11 @@ static void *connect_thread(void *data) struct rtmp_stream *stream = data; int ret = try_connect(stream); - if (ret != OBS_OUTPUT_SUCCESS) + if (ret != OBS_OUTPUT_SUCCESS) { obs_output_signal_stop(stream->output, ret); + blog(LOG_INFO, "Connection to %s failed: %d", + stream->path.array, ret); + } if (os_event_try(stream->stop_event) == EAGAIN) pthread_detach(stream->connect_thread);