AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
|
Captures video and audio from a signal provided to an input of an AJA device, burns timecode into the video frames, then plays the captured audio and altered video through an output on the same AJA device, all in real time, with minimal 3 frame latency. Because of the tight latency requirements, AutoCirculate and a ring buffer are not used. More...
#include <ntv2llburn.h>
Public Member Functions | |
NTV2LLBurn (const BurnConfig &inConfig) | |
Constructs me using the given configuration settings. More... | |
virtual | ~NTV2LLBurn () |
virtual AJAStatus | Init (void) |
Initializes me and prepares me to Run. More... | |
virtual AJAStatus | Run (void) |
Runs me. More... | |
virtual void | Quit (void) |
Gracefully stops me from running. More... | |
virtual void | GetStatus (ULWord &outFramesProcessed, ULWord &outFramesDropped) |
Provides status information about my input (capture) and output (playout) processes. More... | |
Protected Member Functions | |
virtual AJAStatus | SetupVideo (void) |
Sets up everything I need for capturing and playing video. More... | |
virtual AJAStatus | SetupAudio (void) |
Sets up everything I need for capturing and playing audio. More... | |
virtual void | RouteInputSignal (void) |
Sets up board routing for capture. More... | |
virtual void | RouteOutputSignal (void) |
Sets up board routing for playout. More... | |
virtual AJAStatus | SetupHostBuffers (void) |
Sets up my circular buffers. More... | |
virtual void | StartRunThread (void) |
Starts my main worker thread. More... | |
virtual void | ProcessFrames (void) |
Repeatedly captures, burns, and plays frames without using AutoCirculate (until global quit flag set). More... | |
virtual bool | InputSignalHasTimecode (void) |
Returns true if the current input signal has timecode embedded in it; otherwise returns false. More... | |
virtual bool | AnalogLTCInputHasTimecode (void) |
Returns true if there is a valid LTC signal on my device's primary analog LTC input port; otherwise returns false. More... | |
Static Protected Member Functions | |
static void | RunThreadStatic (AJAThread *pThread, void *pContext) |
This is the worker thread's static callback function that gets called when the thread runs. This function gets "Attached" to the worker thread's AJAThread instance. More... | |
Captures video and audio from a signal provided to an input of an AJA device, burns timecode into the video frames, then plays the captured audio and altered video through an output on the same AJA device, all in real time, with minimal 3 frame latency. Because of the tight latency requirements, AutoCirculate and a ring buffer are not used.
Definition at line 32 of file ntv2llburn.h.
NTV2LLBurn::NTV2LLBurn | ( | const BurnConfig & | inConfig | ) |
Constructs me using the given configuration settings.
[in] | inConfig | Specifies the configuration parameters. |
Definition at line 31 of file ntv2llburn.cpp.
|
virtual |
Definition at line 48 of file ntv2llburn.cpp.
|
protectedvirtual |
Returns true if there is a valid LTC signal on my device's primary analog LTC input port; otherwise returns false.
Definition at line 937 of file ntv2llburn.cpp.
Provides status information about my input (capture) and output (playout) processes.
[out] | outFramesProcessed | Receives my processed frame count. |
[out] | outFramesDropped | Receives my dropped frame count. |
Definition at line 897 of file ntv2llburn.cpp.
|
virtual |
Initializes me and prepares me to Run.
Definition at line 80 of file ntv2llburn.cpp.
|
protectedvirtual |
Returns true if the current input signal has timecode embedded in it; otherwise returns false.
Definition at line 923 of file ntv2llburn.cpp.
|
protectedvirtual |
Repeatedly captures, burns, and plays frames without using AutoCirculate (until global quit flag set).
Definition at line 544 of file ntv2llburn.cpp.
|
virtual |
Gracefully stops me from running.
Definition at line 69 of file ntv2llburn.cpp.
|
protectedvirtual |
Sets up board routing for capture.
Definition at line 427 of file ntv2llburn.cpp.
|
protectedvirtual |
Sets up board routing for playout.
Definition at line 449 of file ntv2llburn.cpp.
|
virtual |
Runs me.
Definition at line 503 of file ntv2llburn.cpp.
|
staticprotected |
This is the worker thread's static callback function that gets called when the thread runs. This function gets "Attached" to the worker thread's AJAThread instance.
[in] | pThread | A valid pointer to the worker thread's AJAThread instance. |
[in] | pContext | Context information to pass to the thread. (For this application, this will be set to point to the NTV2LLBurn instance.) |
Definition at line 527 of file ntv2llburn.cpp.
|
protectedvirtual |
Sets up everything I need for capturing and playing audio.
Definition at line 358 of file ntv2llburn.cpp.
|
protectedvirtual |
Sets up my circular buffers.
Definition at line 405 of file ntv2llburn.cpp.
|
protectedvirtual |
Sets up everything I need for capturing and playing video.
Definition at line 166 of file ntv2llburn.cpp.
|
protectedvirtual |
Starts my main worker thread.
Definition at line 516 of file ntv2llburn.cpp.