Hello!
A few days ago I decided to try
using NDI for the first time, as I have a 2 PC setup, and planned on
using NDI (DistroAV) in OBS Studio.
Both
PCs are only a few feet apart from one another and they both connect
directly, via gigabit ethernet, into the same router, which is also only
a few feet away from both PCs.
I installed the DistroAV 6.0.0 plugin for OBS Studio from here:
I also installed the NDI 6.1 runtime as well.
In addition, I installed NDI Tools on both of my PCs, my source (gaming) PC, and my destination (streaming) PC.
From my initial tests, I noticed that NDI was laggy in OBS Studio, based on test streams and recordings.
This then had me take OBS Studio out of the mix and I uninstalled DistroAV 6.0.0 along with the NDI 6.1 runtime.
For
my tests, I was running NDI screen capture on my source (gaming) PC and
NDI studio monitor on my destination (streaming) PC.
The
one thing that I could consistently monitor, via Windows 11 task
manager on both PCs, is that NDI studio monitor on the destination
(streaming) PC would never seem to receive the amount of data that NDI
screen capture was sending out. For example, the NDI screen capture
could be sending out ~230 Mbps, where NDI studio monitor would never
exceed ~30 Mbps.
For further testing, I decided
to then run both NDI screen capture, and also NDI studio monitor, on
both my source (gaming) PC, and my destination (streaming) PC,
simultaneously at the same time to monitor network activity via task
manager.
To my surprise, the source (gaming) PC
was both sending (NDI screen capture) and receiving (NDI studio
monitor) correctly at ~230 Mbps. However, my destination (streaming) PC
was sending (NDI screen capture) correctly at ~230 Mbps, it still would
not receive (NDI studio monitor) past ~30 Mbps.
As
this is my first time ever installing anything NDI related on both PCs,
I am a bit stumped as to what my issue can be. If I had been using NDI
for a long time, and recently made any hardware or software changes,
then I'd probably be able to troubleshoot the issue further, but alas to
no avail.
My destination (streaming) PC is
working fine receiving (downloading) when it comes to bandwidth for
other applications such as Mozilla Firefox and Google Chrome. The
problem somehow seems to stem from something "limiting" NDI screen
capture.
For another test, I decided to
use NDI screen capture HX. Even though I know this uses less bandwidth
than the non-HX version, I still observed, via task manager, that the
receiving speed on the destination (streaming) PC was still
significantly less than it should be.
To
me, it's almost like something is telling NDI studio monitor to only use
a certain amount, perhaps a percentage, of available receive (download)
bandwidth and only on my destination (streaming) PC.
For good measure though I did do some basic troubleshooting on my destination (streaming) PC, including, but not limited to:
-Trying a brand new Cat 6 ethernet cable from the PC to my router.
-Swapping
port locations that my destination (streaming) PC connects to in my
router with the port my source (gaming) PC connects to.
-Testing again using a new USB 3.0 external ethernet adapter to my destination (streaming) PC.
-As
I have an internal PCI express Intel gigabit ethernet card in my
destination (streaming) PC, and have the RealTek onboard ethernet
adapter disabled via BIOS, I physically removed the Intel NIC and
connected directly to the motherboard via ethernet.
-Disabling Windows firewall entirely.
-Comparing "startup apps" between both of my PCs to see if there could be anything "odd" running on one versus the other.
-Checking
all (non-Microsoft) services running on both PCs to see if anything
there could be causing an issue relating to NDI studio monitor.
-In
NDI access manager on my destination (streaming) PC, I did try swapping
between the different transport modes, but this made no difference.
Even after trying all of the steps above, the receive (download) rate for NDI studio monitor would never reach what it should.
Source (gaming) PC specs:
-Windows 11 Pro
-AMD Ryzen 7 5800X3D
-128 GB RAM
-Nvidia GeForce RTX 4090
-2 TB NVMe SSD
-MSI motherboard with X570 chipset
Destination (streaming) PC specs:
-Windows 11 Pro
-AMD Ryzen 9 3950X
-32 GB RAM
-Nvidia GeForce RTX 4060 Ti
-1 TB NVMe SSD
-MSI motherboard with X570 chipset
-Not
sure if it's worth noting, but this PC has 3 other PCI express
expansion cards installed on the motherboard including an Intel gigabit
NIC (EXPI9301CTBLK), AVerMedia Live Gamer 4K GC573, and AVerMedia Live
Streamer Ultra HD GC571
Not sure if anyone has seen anything like this or if anyone has any further troubleshooting suggestions I could try.
TL;DR
Running
both NDI screen capture (regardless of non-HX or HX version) and NDI
studio monitor simultaneously on 2 separate PCs, on one PC the network
utilization for both NDI screen capture and NDI studio monitor are
"perfect", both apps at approximately 230 Mbps, but on the other PC,
while network utilization for NDI screen capture is "perfect", at
approximately 230 Mbps, NDI studio monitor is not receiving nearly
enough data, approximately 30 Mbps.
Thanks for any help, suggestions, or additional troubleshooting tips!
Note: The attached images include both of my PCs each running NDI screen capture and NDI studio monitor simultaneously. The one that has "near matching" network utilization for both apps is my source (gaming) PC and the one that has mismatched network utilization is the destination (streaming) PC.