diff --git a/src/media/video/winvideo/video_device_impl.cpp b/src/media/video/winvideo/video_device_impl.cpp
index f6cbf60f186d46d75afb9e33c2c2c2bbcad936ef..54e4a6a2f1bb5dbb31341c682b0f9f894f373d05 100644
--- a/src/media/video/winvideo/video_device_impl.cpp
+++ b/src/media/video/winvideo/video_device_impl.cpp
@@ -237,9 +237,11 @@ VideoDeviceImpl::applySettings(VideoSettings settings)
 {
     if (!settings.video_size.empty()) {
         auto pmt = capMap_[settings.video_size];
-        ((VIDEOINFOHEADER*) pmt->pbFormat)->AvgTimePerFrame = settings.framerate;
-        if (FAILED(cInterface->streamConf_->SetFormat(capMap_[settings.video_size]))) {
-            RING_ERR("Could not set settings.");
+        if (pmt != nullptr) {
+            ((VIDEOINFOHEADER*) pmt->pbFormat)->AvgTimePerFrame = settings.framerate;
+            if (FAILED(cInterface->streamConf_->SetFormat(capMap_[settings.video_size]))) {
+             RING_ERR("Could not set settings.");
+            }
         }
     }
 }