diff --git a/src/VideoManager/VideoManager.cc b/src/VideoManager/VideoManager.cc index 71c49400e47..2b3ba92ddb9 100644 --- a/src/VideoManager/VideoManager.cc +++ b/src/VideoManager/VideoManager.cc @@ -639,7 +639,11 @@ VideoManager::_updateSettings(unsigned id) } break; case VIDEO_STREAM_TYPE_RTPUDP: - if ((settingsChanged |= _updateVideoUri(id, QStringLiteral("udp://0.0.0.0:%1").arg(pInfo->uri())))) { + if ((settingsChanged |= _updateVideoUri( + id, + pInfo->uri().contains("udp://") + ? pInfo->uri() // Specced case + : QStringLiteral("udp://0.0.0.0:%1").arg(pInfo->uri())))) { _toolbox->settingsManager()->videoSettings()->videoSource()->setRawValue(VideoSettings::videoSourceUDPH264); } break; @@ -663,7 +667,11 @@ VideoManager::_updateSettings(unsigned id) settingsChanged |= _updateVideoUri(id, pTinfo->uri()); break; case VIDEO_STREAM_TYPE_RTPUDP: - settingsChanged |= _updateVideoUri(id, QStringLiteral("udp://0.0.0.0:%1").arg(pTinfo->uri())); + settingsChanged |= _updateVideoUri( + id, + pInfo->uri().contains("udp://") + ? pInfo->uri() // Specced case + : QStringLiteral("udp://0.0.0.0:%1").arg(pInfo->uri())); break; case VIDEO_STREAM_TYPE_MPEG_TS_H264: settingsChanged |= _updateVideoUri(id, QStringLiteral("mpegts://0.0.0.0:%1").arg(pTinfo->uri()));