9 #ifndef _NTV2DOLBYCAPTURE_H 10 #define _NTV2DOLBYCAPTURE_H 72 virtual void Quit (
void);
175 uint32_t mDolbyState;
176 uint32_t mDolbyLength;
180 #endif // _NTV2CAPTURE_H NTV2AudioSystem
Used to identify an Audio System on an NTV2 device. See Audio System Operation for more information...
std::ostream & operator<<(std::ostream &ioStrm, const DolbyCaptureConfig &inObj)
I interrogate and control an AJA video/audio capture/playout device.
NTV2TaskMode
Describes the task mode state. See also: Sharing AJA Devices With Other Applications.
virtual void CaptureFrames(void)
Repeatedly captures frames using AutoCirculate (until global quit flag set).
enum _NTV2VideoFormat NTV2VideoFormat
Identifies a particular video format.
std::vector< AJALabelValuePair > AJALabelValuePairs
An ordered sequence of label/value pairs.
virtual void SetupHostBuffers(void)
Sets up my circular buffers.
virtual void StartConsumerThread(void)
Starts my frame consumer thread.
NTV2DolbyCapture(const DolbyCaptureConfig &inConfig)
Constructs me using the given settings.
DolbyCaptureConfig(const std::string &inDeviceSpec="0")
Constructs a default DolbyCaptureConfig.
bool fDoFrameStats
if true, output per frame statistics
virtual void StartProducerThread(void)
Starts my capture thread.
NTV2DeviceID
Identifies a specific AJA NTV2 device model number. The NTV2DeviceID is actually the PROM part number...
This class is used to configure an NTV2Capture instance.
Declares the AJAThread class.
virtual AJAStatus SetupVideo(void)
Sets up everything I need for capturing video.
virtual AJAStatus SetupAudio(void)
Sets up everything I need for capturing audio.
bool fDoAudioFilter
If true, capture only audio anc.
static void ConsumerThreadStatic(AJAThread *pThread, void *pContext)
This is the consumer thread's static callback function that gets called when the consumer thread runs...
std::string fDolbyDataFilePath
Optional path to Dolby binary data file.
Describes a user-space buffer on the host computer. I have an address and a length, plus some optional attributes (allocated by SDK?, page-aligned? etc.).
std::vector< NTV2FrameData > NTV2FrameDataArray
A vector of NTV2FrameData elements.
virtual AJAStatus Run(void)
Runs me.
virtual uint32_t RecoverDolby(const NTV2Buffer &inAudioBuffer, const uint32_t inAudioSize, NTV2Buffer &outDolbyBuffer)
Recover Dolby data from the given audio data.
virtual bool RouteInputSignal(void)
Sets up device routing for capture.
virtual AJAStatus Init(void)
Initializes me and prepares me to Run.
virtual ~NTV2DolbyCapture()
I capture HDMI Dolby audio from an HDMI input of an AJA device.
DolbyCaptureConfig DolbyCaptureConfig
This class is used to configure an NTV2Capture instance.
This file contains some structures, constants, classes and functions that are used in some of the dem...
virtual void GetACStatus(ULWord &outGoodFrames, ULWord &outDroppedFrames, ULWord &outBufferLevel)
Provides status information about my input (capture) process.
virtual void ConsumeFrames(void)
Repeatedly consumes frames from the circular buffer (until global quit flag set). ...
virtual void Quit(void)
Gracefully stops me from running.
I am a circular frame buffer that simplifies implementing a type-safe producer/consumer model for pro...
This class is used to configure an NTV2Capture instance.
std::string fAudioDataFilePath
Optional path to Audio binary data file.
static void ProducerThreadStatic(AJAThread *pThread, void *pContext)
This is the capture thread's static callback function that gets called when the capture thread runs...
AJALabelValuePairs Get(const bool inCompact=(0)) const
virtual uint32_t RecoverAudio(const NTV2Buffer &inAncBuffer, const uint32_t inAncSize, NTV2Buffer &outAudioBuffer)
Recover audio from ancillary data.