vMix Forums
»
General
»
NDI
»
How does the NDI protocoll work?
Rank: Advanced Member
Groups: Registered
Joined: 10/30/2013(UTC) Posts: 290 Location: The Netherlands
Thanks: 6 times Was thanked: 21 time(s) in 15 post(s)
|
Industrial gigabit camera's (like SVS-Vistek) are using jumbo frames (9015Kb) to send high resolution video real-time over gigabit network. NDI is IP based, but is not using IP addresses if I am correct. Does it work like a Sony or Axis setup tool that can find all IP camera's even in different network ranges? Is NDI using jumbo frames too for transferring big data blocks trough the network?
It would be very interesting if gigabit IP camera's could be seen as NDI sources by using a SDK.
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 3/24/2016(UTC) Posts: 331 Location: Chicago, IL
Was thanked: 143 time(s) in 94 post(s)
|
NDI uses IP addresses, either IPv4 or IPv6 is supported.
NDI uses a discovery protocol that will show all available NDI devices to your application. There is a free tool called 'NDI Group Manager' that will allow you to create groups of NDI devices on the network so that certain devices can only be seen by other devices. By default, all NDI devices are 'Public' and can be seen by all. The discovery protocol that NDI uses is multicast and multicast packets don't usually cross between different networks. You would need networking gear or a software application that helps you with that aspect. Once you get over that networking aspect, the protocol used for transmitting video/audio via NDI is unicast and can travel between network subnets.
NDI does not need jumbo frames to operate.
I'm not aware of any camera's directly supporting NDI at this time, you would need an external application to convert the camera's IP stream into NDI. In many cases, NewTek's Connect Pro application can do this.
Kane Peterson NewTek
|
1 user thanked kane for this useful post.
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 4/6/2016(UTC) Posts: 84 Location: Sweden Thanks: 25 times Was thanked: 18 time(s) in 13 post(s)
|
kane wrote: NDI uses a discovery protocol that will show all available NDI devices to your application.
More specifically, NDI uses mDNS (Multicast_DNS) to broadcast it's resources and find other NDI resources. mDNS is also the mechanism used other services and systems - Apple Bonjour is just an example. https://en.wikipedia.org/wiki/Multicast_DNSNDI is not using Jumboframes. Instead, it uses small IP frames - but there are a lot of them. If you want to route your NDI packages across network segments or use WiFi, you will need enterprise grade accesspoints or high-end gaming routers that has the extra processing power to handle the high package rate. /Jon
|
2 users thanked Amokka for this useful post.
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 6/25/2017(UTC) Posts: 84
Thanks: 25 times Was thanked: 8 time(s) in 7 post(s)
|
I've got some basic questions about NDI.
What is the big difference between NDI and RTSP, or do I compare apples with oranges? Why is RTSP not realtime and NDI is? RTSP is using a buffer, but NDI doesn't?
Is it in theory possible to improve the RTSP protocol to real realtime?
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 7/1/2015(UTC) Posts: 1,151 Location: Houston TX Thanks: 319 times Was thanked: 263 time(s) in 233 post(s)
|
JW wrote:I've got some basic questions about NDI.
What is the big difference between NDI and RTSP, or do I compare apples with oranges? Why is RTSP not realtime and NDI is? RTSP is using a buffer, but NDI doesn't?
Is it in theory possible to improve the RTSP protocol to real realtime? RTSP was created with no specific intention regarding latency. It's a delivery format, not a production format. A such, it leverages H.264/5 Long-GOP compression, which inherently adds delay in traditional implementations. Long-GOP achieves high-compression by evaluating a group-of-frames and encoding redundancy withing the frames in the group. A such, the entire group is processed before it can be shipped down the wire. That can be several seconds of video, even before buffering. In crafting NDI Newtek has establish a consistent way of using RTSP that addresses issues of latency. NDI 2.0 does not use long-GOP. It compresses each frame individually, not unlike MJPEG. That limits the compression rate that can be delivered, but ensures latency of < 1 frame. NDI|HX uses a proprietary, modified form of long-GOP that achieves better compression, but send the frame data incrementally, not processing the entire GOP before sending down the wire. It's an attempt to have the next of bother worlds; high compression rate (low data rate) and modest latency. "Proprietary" means that it was created by Newtek without engaging any of the traditional standards bodies, like SMPTE, AES, EBU, etc. While they publish the protocol, it remains theirs. It's not an internationally agreed upon standard. Standards processes are slow and costly, so it's easy to understand why Newtek would skip that process.
|
1 user thanked mjgraves for this useful post.
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 3/31/2016(UTC) Posts: 126 Location: london
Thanks: 2 times Was thanked: 46 time(s) in 32 post(s)
|
mjgraves wrote:JW wrote:I've got some basic questions about NDI.
What is the big difference between NDI and RTSP, or do I compare apples with oranges? Why is RTSP not realtime and NDI is? RTSP is using a buffer, but NDI doesn't?
Is it in theory possible to improve the RTSP protocol to real realtime? RTSP was created with no specific intention regarding latency. It's a delivery format, not a production format. A such, it leverages H.264/5 Long-GOP compression, which inherently adds delay in traditional implementations. Long-GOP achieves high-compression by evaluating a group-of-frames and encoding redundancy withing the frames in the group. A such, the entire group is processed before it can be shipped down the wire. That can be several seconds of video, even before buffering. In crafting NDI Newtek has establish a consistent way of using RTSP that addresses issues of latency. NDI 2.0 does not use long-GOP. It compresses each frame individually, not unlike MJPEG. That limits the compression rate that can be delivered, but ensures latency of < 1 frame. NDI|HX uses a proprietary, modified form of long-GOP that achieves better compression, but send the frame data incrementally, not processing the entire GOP before sending down the wire. It's an attempt to have the next of bother worlds; high compression rate (low data rate) and modest latency. "Proprietary" means that it was created by Newtek without engaging any of the traditional standards bodies, like SMPTE, AES, EBU, etc. While they publish the protocol, it remains theirs. It's not an internationally agreed upon standard. Standards processes are slow and costly, so it's easy to understand why Newtek would skip that process. Just to be clear, rtsp is isn't a delivery format - its a transport control and negotiation protocol. generally speaking rtsp is used to negotiate the startup of an rtp data stream which *is* a delivery format. very little of this is particularly relevant to NDI. The real unique strengths of NDI are: 1) The 100mbit Codec - its very very fast but still looks great. 2) The SDK API - makes it trivial to integrate quite complex device to device IP video 3) The community which is growing based on 1) and 2) In terms of NDI and HX, most of the latency benefits over other attempts to deliver IP Video are based on speed of encoding, and the simple integration, combined with the use by professionals on high quality local area networks which allows for very small send and receive buffers, and resulting low latency. https://en.wikipedia.org...Network_Device_Interface
|
3 users thanked livepad for this useful post.
|
|
|
vMix Forums
»
General
»
NDI
»
How does the NDI protocoll work?
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.
Important Information:
The vMix Forums uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close