diff --git a/libobs/media-io/audio-io.c b/libobs/media-io/audio-io.c index ffb640d17..12e08092f 100644 --- a/libobs/media-io/audio-io.c +++ b/libobs/media-io/audio-io.c @@ -354,6 +354,8 @@ static void *audio_thread(void *param) uint64_t prev_time = os_gettime_ns() - buffer_time; uint64_t audio_time; + os_set_thread_name("audio-io: audio thread"); + while (os_event_try(audio->stop_event) == EAGAIN) { os_sleep_ms(AUDIO_WAIT_TIME); diff --git a/libobs/media-io/video-io.c b/libobs/media-io/video-io.c index 4aedd0cd6..44cbb358e 100644 --- a/libobs/media-io/video-io.c +++ b/libobs/media-io/video-io.c @@ -160,6 +160,8 @@ static void *video_thread(void *param) { struct video_output *video = param; + os_set_thread_name("video-io: video thread"); + while (os_sem_wait(video->update_semaphore) == 0) { if (video->stop) break; diff --git a/libobs/obs-video.c b/libobs/obs-video.c index d66afdc46..5c7b22fa2 100644 --- a/libobs/obs-video.c +++ b/libobs/obs-video.c @@ -537,6 +537,8 @@ void *obs_video_thread(void *param) uint64_t cur_time = os_gettime_ns(); uint64_t interval = video_output_get_frame_time(obs->video.video); + os_set_thread_name("libobs: graphics thread"); + while (!video_output_stopped(obs->video.video)) { last_time = tick_sources(cur_time, last_time); diff --git a/plugins/win-dshow/win-dshow.cpp b/plugins/win-dshow/win-dshow.cpp index e54e78100..98f87fece 100644 --- a/plugins/win-dshow/win-dshow.cpp +++ b/plugins/win-dshow/win-dshow.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include "libdshowcapture/dshowcapture.hpp" #include "ffmpeg-decode.h" #include "encode-dstr.hpp" @@ -225,6 +226,8 @@ static DWORD CALLBACK DShowThread(LPVOID ptr) { DShowInput *dshowInput = (DShowInput*)ptr; + os_set_thread_name("win-dshow: DShowThread"); + CoInitialize(nullptr); dshowInput->DShowLoop(); CoUninitialize(); diff --git a/plugins/win-wasapi/win-wasapi.cpp b/plugins/win-wasapi/win-wasapi.cpp index ba5ff1447..86d30aa01 100644 --- a/plugins/win-wasapi/win-wasapi.cpp +++ b/plugins/win-wasapi/win-wasapi.cpp @@ -6,6 +6,7 @@ #include #include #include +#include using namespace std; @@ -313,6 +314,8 @@ DWORD WINAPI WASAPISource::ReconnectThread(LPVOID param) { WASAPISource *source = (WASAPISource*)param; + os_set_thread_name("win-wasapi: reconnect thread"); + while (!WaitForSignal(source->stopSignal, RECONNECT_INTERVAL)) { if (source->TryInitialize()) break; @@ -396,6 +399,8 @@ DWORD WINAPI WASAPISource::CaptureThread(LPVOID param) source->stopSignal }; + os_set_thread_name("win-wasapi: capture thread"); + while (WaitForCaptureSignal(2, sigs, dur)) { if (!source->ProcessCaptureData()) { reconnect = true;