PTZOptics Incrementally Increasing Latency
Please reference Telestream Case #00694941
Wirecast on my iMac has been upgraded from 13.0.2 to 13.1.
The good news is: Wirecast can now see video and audio from the NDIHX Camera app from my iPhone.
Two pieces of bad news are:
1. The PTZOptics camera into Wirecast is still starting at 300 ms of latency and then incrementing up in latency over time. This was happening with Wirecast 13.0.2 and is still seems to be happening with Wirecast 13.1. Previous 10 hour tests with 13.0.2 resulted in over 2 seconds of accumulated latency. I'll run an overnight test on 13.1 to confirm results.
2. The NDIHX Camera app on my iPhone into Wirecast starts out at a 300 ms of latency and increments up in latency over time, similar to PTZOptics NDI cam. This test will run over night as well.
Please see the attached pictures for latency test results. Info on the pictures may be confusing at first. I'll be happy to explain if need be.
For these tests, the equipment and software I'm using:
iMac (see Telestream Case #00694941 for details)
NewTek NDI Video Monitor
Sienna NDI Monitor
PTZOptics NDI 30X
Software Version: SOC v6.2.79 - ARM v6.3.33TH
Device Type: F16.HI
Webware Version: v1.5.5
Netgear GS108PP ghz ethernet switch
Please see the attached pictures. A summary of results:
1. PTZOptics NDI into Wirecast starts out with with 300 ms of latency. Then that latency increments up over time making this combination unusable.
2. PTZOptics into NewTek NDI Video Monitor (on iMac) and Sienna NDI Monitor (on iMac) are stable over time at around 200 ms of latency or less.
3. PTZOptics into Sienna NDI Monitor (on iMac) screen capture into Wirecast is stable over time at around 200 ms of latency
4. iPhone NDI Cam into Wirecast, NewTek NDI Video Monitor (on iMac) and Sienna NDI Monitor (on iMac) are stable over time at around 200 ms of latency or less.
5. iPhone NDIHX Cam into Wirecast starts out at about 450 ms of latency and increments up over time, similar to the PTZOptics NDI Camera. iPhone NDIHX Cam into NewTek NDI Video Monitor (on iMac) starts out at about 350 ms of latency. I have not tested this over time.
After over 11 hours of testing:
It appears there is a similar problem with PTZOptics NDI cam and iPhone NDIHX Cam into Wirecast. Both are showing incrementally higher latency over time. And, the iPhone NDIHX Cam into NDI Video Monitor is also accumulating latency.
1. The PTZOptics NDI Camera into Wirecast latency continues to accumulate latency. After 11 hours, 1.729 seconds of latency have accumulated.
2. The PTZOptics NDI camera into the Sienna NDI Monitor continues to run consistently under 200 ms of latency.
3. The Sienna NDI Monitor Screen Capture into Wirecast continues to run consistently under 200 ms of latency.
4. The iPhone NDIHX Cam into Wirecast continues to accumulate latency. After 12 hours, 1.186 seconds of latency have accumulated.
5. The iPhone NDIHX Cam into NewTek Video Monitor continues to accumulate latency. After 11 hours, 1.131 seconds of latency have accumulated.
I've also uploaded a Wirecast Information Report.
The test continues to run. For now.
You betcha! Anything I can do to help. I really need this to work.
Hopefully we'll see the PTZOptics NDI latency through Wirecast on par with NewTek NDI Video Monitor or Sienna NDI Monitor. That is, 200 ms or less.
It seems that after installing 13.1 the latency is less linearly cumulative and more wandering around. From 300 ms up to 2 full seconds and then back to 500 ms, and then somewhere else. Every time I check it's different. I've seen over 500 ms change within the time it takes to get one snapshot, clear it and then take another.
I'm guessing there's a synchronization deficiency in the NDI HX driver that Wirecast is using. Or something messed up in my iMac if I'm the only one seeing these results.
Interestingly I'm seeing similar changing latency between NewTek's very own NDI HX Cam on my iPhone and the NewTek Video Monitor from their NDI Tools. This seems really odd to me. I've opened a ticket with NewTek as well.
Interestingly, one of the Support Techs at PTZOptics ran an overnight latency test on his Wirecast with the PTSOptics NDI input. He's reported a similar 3 seconds of accumulated latency for the overnight test. The most interesting part is that he's running Wirecast on Windows.
Kinda makes one go Hmmmm....
Local changes I've made are:
Reformatted hard drive and reloaded fresh OS along with fresh Apps.
Re-installed BETA 13.1. along with all the drivers for my equipment
Changed my un-managed Ethernet switch for a managed Ubiquity Unify 8 port switch.
One or more of those changes made a positive impact. Now I'm seeing a fairly consistent 250 ms of latency in Wirecast when using the PTZOptics NDI camera. Tests have no longer started out at 350+ ms and then incremented up from there.
However, 250 ms of latency still remains troublesomely high. PTZOptics NDI into NewTek NDI Video Monitor is getting 100 to 130 ms.
Will we see 150 ms of latency with Wirecast and NDI HX?
Thanks for the support!
SUCCESS, it seems!
When the camera and Wirecast are both first fired up I'm getting 200 to 250 ms of latency. Then after a few minutes it settles in to a fairly consistent 200 ms. And then, after running the test for 10 hours I'm very consistently getting in the area of 180 ms. This is really great news! Thank you for the improvement!!!
And at the same time...
When the Wirecast latency problem was going on I found a work around. The work around was to use Sienna's NDI Monitor to capture NDI video and then capture the NDI Video Monitor window in Wirecast. This two step method still provides 30 to 50 ms better latency than capturing with the latest version of Wirecast by itself. With no observable degradations of video quality. I'll probably continue to capture using the two step NDI Monitor Window.
Using just Sienna NDI Monitor all by itself without Wirecast running I'm seeing consistent latency in the area of 80 to 100 ms. Wouldn't it be wonderful if Wirecast capture could approach those latency numbers? Any ideas as to what Wirecast is doing with buffers or process that uses the additional 100 ms?
Thanks for the support!