11 #ifndef _NTV2DEMOHEVCCOMMON_H 12 #define _NTV2DEMOHEVCCOMMON_H 74 AJAStatus CreateAiffFile(
const std::string & inFileName, uint32_t numChannels, uint32_t maxFrames, uint32_t bufferSize);
77 void WriteAiffData(
void* pBuffer, uint32_t numChannels, uint32_t numSamples);
92 uint32_t
AlignDataBuffer(
void* pBuffer, uint32_t bufferSize, uint32_t dataSize, uint32_t alignBytes, uint8_t fill);
105 uint32_t mHevcFileFrameCount;
106 uint32_t mMaxHevcFrames;
108 uint32_t mEncFileFrameCount;
109 uint32_t mMaxEncFrames;
111 uint32_t mAiffFileFrameCount;
112 uint32_t mMaxAiffFrames;
114 uint32_t mAiffTotalSize;
115 uint32_t mAiffNumSamples;
116 uint32_t mAiffNumChannels;
117 uint8_t* mAiffWriteBuffer;
119 uint64_t mYuvFileSize;
120 uint32_t mYuvFrameWidth;
121 uint32_t mYuvFrameHeight;
122 uint32_t mYuvNumTotalFrames;
123 uint32_t mYuvFrameSize;
125 uint32_t mRawFileFrameCount;
126 uint32_t mMaxRawFrames;
131 #endif // _NTV2DEMOHEVCCOMMON_H int64_t frameTime
Capture time stamp.
void CloseYuv420File(void)
uint32_t * pAudioBuffer
Pointer to host audio buffer.
NTV2FrameBufferFormat
Identifies a particular video frame buffer pixel format. See Device Frame Buffer Formats for details...
Declares the AJADebug class.
enum _NTV2VideoFormat NTV2VideoFormat
Identifies a particular video format.
uint32_t videoBufferSize
Size of host video buffer (bytes)
AJAStatus CreateAiffFile(const std::string &inFileName, uint32_t numChannels, uint32_t maxFrames, uint32_t bufferSize)
AJA_FrameRate GetAJAFrameRate(NTV2FrameRate frameRate)
AJAStatus DetermineInputFormat(NTV2VideoFormat sdiFormat, bool quad, NTV2VideoFormat &videoFormat)
uint32_t timeCodeHigh
Time code data high.
uint32_t audioBufferSize
Size of host audio buffer (bytes)
uint32_t infoBufferSize
Size of the host information buffer (bytes)
NTV2FrameRate
Identifies a particular video frame rate.
AJAStatus CreateEncFile(const std::string &inFileName, uint32_t maxFrames)
Declares the CRP188 class. See SMPTE RP188 standard for details.
AJAStatus SetupHEVC(CNTV2m31 *pM31, M31VideoPreset preset, M31Channel encodeChannel, bool multiStream, bool withInfo)
AJA_PixelFormat GetAJAPixelFormat(NTV2FrameBufferFormat pixelFormat)
void WriteEncData(void *pBuffer, uint32_t bufferSize)
uint32_t AlignDataBuffer(void *pBuffer, uint32_t bufferSize, uint32_t dataSize, uint32_t alignBytes, uint8_t fill)
void WriteAiffData(void *pBuffer, uint32_t numChannels, uint32_t numSamples)
uint32_t timeCodeLow
Time code data low.
void WriteHevcData(void *pBuffer, uint32_t bufferSize)
AJAStatus ReadYuv420Frame(void *pBuffer, uint32_t numFrame)
uint32_t audioDataSize
Size of audio data (bytes)
Declaration of AJACircularBuffer template class.
uint32_t videoDataSize2
Size of field 2 video data (bytes)
AJAStatus CreateRawFile(const std::string &inFileName, uint32_t maxFrames)
void WriteRawData(void *pBuffer, uint32_t bufferSize)
bool lastFrame
Indicates last captured frame.
uint32_t * pVideoBuffer
Pointer to host video buffer.
This structure encapsulates the video and audio buffers used by the HEVC demo applications. The demo programs that employ producer/consumer threads use a fixed number of these buffers.
AJAStatus OpenYuv420File(const std::string &inFileName, const uint32_t width, const uint32_t height)
uint32_t * pInfoBuffer
Picture information (raw) or encode information (hevc)
This file contains some structures, constants, classes and functions that are used in some of the dem...
void WriteAiffHeader(void)
AJAStatus ConvertYuv420FrameToNV12(void *pSrcBuffer, void *pDstBuffer, uint32_t bufferSize)
uint32_t videoDataSize
Size of video data (bytes)
uint32_t infoDataSize2
Size of the field 2 information data (bytes)
Declares the enumeration constants used in the ajabase library.
uint32_t infoDataSize
Size of the information data (bytes)
AJAStatus CreateHevcFile(const std::string &inFileName, uint32_t maxFrames)
uint32_t timeCodeDBB
Time code data dbb.