Skip to main content

Tech Forum

NDI recording issues

NDI recording issues

by Jesper Ek - Number of replies: 3

We have a custom built NDI recorder, but we're having trouble with discontinuous sources, or when input is switched between different sources. Timestamps seems to be very unreliable and work different depending on the source vendor.

According to the documentation, ndi-record provided by the SDK handles all these complexities. Unfortunately I'm unable to make it write the stream contents to stdout. The documentation states "All input and output from this application is provided over stdin and stdout", but that doesn't seem to be the case.

The documentation also states "Having worked with a large number of companies wanting recording capabilities, we realized that providing a reference implementation that handles a lot of the edge-cases and problems of recording would be hugely beneficial". Where is the reference implementation? I can only find the binary, which doesn't help me.

Best regards, Jesper

In reply to Jesper Ek

Re: NDI recording issues

by Kane Peterson -
The stdin/stdout is for control of the application, like changing the record level gain, performing a file chop or seeing the status of the recording. It doesn't send the NDI stream itself to the stdout.
In reply to Kane Peterson

Re: NDI recording issues

by Jesper Ek -
Is the source code for the ndi-record tool available?

It would be very useful if the recorded output could be piped to another application, otherwise it cannot really be used for live streaming.
In reply to Jesper Ek

Re: NDI recording issues

by Kane Peterson -
The source code is not available.

The media file from the NDI record tool does support growing files, allowing another tool to read it while recording is active (it does need to support this). Streaming directly into another application isn't the function of this application but saving media to disk for NLE or archive. If another application wants to access the source, why not implement NDI support using the SDK?