AJA NTV2 SDK  17.6.0.1688
NTV2 SDK 17.6.0.1688
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
videoutilities.cpp File Reference

Declares the ajabase library's video utility functions. More...

#include "common.h"
#include "videoutilities.h"
#include <string.h>
Include dependency graph for videoutilities.cpp:

Go to the source code of this file.

Macros

#define _ENDIAN_SWAP32(_data_)   (((_data_<<24)&0xff000000)|((_data_<<8)&0x00ff0000)|((_data_>>8)&0x0000ff00)|((_data_>>24)&0x000000ff))
 

Functions

int FixedTrunc (int inFix)
 
AJA_RGBAlphaPixel CubicInterPolate (AJA_RGBAlphaPixel *Input, int32_t Index)
 
int16_t CubicInterPolateWord (int16_t *Input, int32_t Index)
 
int16_t CubicInterPolateAudioWord (int16_t *Input, int32_t Index)
 
void createVideoFrame (uint32_t *buffer, uint64_t frameNumber, AJA_PixelFormat pixFmt, uint32_t lines, uint32_t pixels, uint32_t linepitch, uint16_t y, uint16_t cb, uint16_t cr)
 
uint32_t AJA_CalcRowBytesForFormat (AJA_PixelFormat format, uint32_t width)
 
void AJA_UnPack10BitYCbCrBuffer (uint32_t *packedBuffer, uint16_t *ycbcrBuffer, uint32_t numPixels)
 
void AJA_PackTo10BitYCbCrBuffer (uint16_t *ycbcrBuffer, uint32_t *packedBuffer, uint32_t numPixels)
 
void AJA_PackTo10BitYCbCrDPXBuffer (uint16_t *ycbcrBuffer, uint32_t *packedBuffer, uint32_t numPixels, bool bigEndian)
 
void AJA_PackRGB10BitFor10BitRGB (AJA_RGBAlpha10BitPixel *rgba10BitBuffer, uint32_t numPixels)
 
void AJA_PackRGB10BitFor10BitRGBPacked (AJA_RGBAlpha10BitPixel *rgba10BitBuffer, uint32_t numPixels)
 
void AJA_PackRGB10BitFor10BitDPX (AJA_RGBAlpha10BitPixel *rgba10BitBuffer, uint32_t numPixels, bool bigEndian)
 
void AJA_UnPack10BitDPXtoRGBAlpha10BitPixel (AJA_RGBAlpha10BitPixel *rgba10BitBuffer, uint32_t *DPXLinebuffer, uint32_t numPixels, bool bigEndian)
 
void AJA_UnPack10BitDPXtoRGBAlphaBitPixel (uint8_t *rgbaBuffer, uint32_t *DPXLinebuffer, uint32_t numPixels, bool bigEndian)
 
void AJA_MakeUnPacked10BitYCbCrBuffer (uint16_t *buffer, uint16_t Y, uint16_t Cb, uint16_t Cr, uint32_t numPixels)
 
void AJA_MakeUnPacked8BitYCbCrBuffer (uint8_t *buffer, uint8_t Y, uint8_t Cb, uint8_t Cr, uint32_t numPixels)
 
void AJA_ConvertLineto8BitYCbCr (uint16_t *ycbcr10BitBuffer, uint8_t *ycbcr8BitBuffer, uint32_t numPixels)
 
void AJA_ConvertLineToYCbCr422 (AJA_RGBAlphaPixel *RGBLine, uint16_t *YCbCrLine, int32_t numPixels, int32_t startPixel, bool fUseSDMatrix)
 
void AJA_ConvertRGBAlpha10LineToYCbCr422 (AJA_RGBAlpha10BitPixel *RGBLine, uint16_t *YCbCrLine, int32_t numPixels, int32_t startPixel, bool fUseRGBFullRange)
 
void AJA_ConvertLineto10BitRGB (uint16_t *ycbcrBuffer, AJA_RGBAlpha10BitPixel *rgbaBuffer, uint32_t numPixels, bool fUseSDMatrix)
 
void AJA_ConvertLinetoRGB (uint8_t *ycbcrBuffer, AJA_RGBAlphaPixel *rgbaBuffer, uint32_t numPixels, bool fUseSDMatrix)
 
void AJA_ConvertLinetoRGB (uint16_t *ycbcrBuffer, AJA_RGBAlphaPixel *rgbaBuffer, uint32_t numPixels, bool fUseSDMatrix)
 
void AJA_ConvertLineto16BitRGB (uint16_t *ycbcrBuffer, AJA_RGBAlpha16BitPixel *rgbaBuffer, uint32_t numPixels, bool fUseSDMatrix)
 
void AJA_Convert16BitRGBtoBayer10BitDPXLJ (AJA_RGBAlpha16BitPixel *rgbaBuffer, uint32_t *bayerBuffer, uint32_t numPixels, uint32_t line, AJA_BayerColorPhase phase)
 
void AJA_Convert16BitRGBtoBayer12BitDPXLJ (AJA_RGBAlpha16BitPixel *rgbaBuffer, uint32_t *bayerBuffer, uint32_t numPixels, uint32_t line, AJA_BayerColorPhase phase)
 
void AJA_Convert16BitRGBtoBayer10BitDPXPacked (AJA_RGBAlpha16BitPixel *rgbaBuffer, uint8_t *bayerBuffer, uint32_t numPixels, uint32_t line, AJA_BayerColorPhase phase)
 
void AJA_Convert16BitRGBtoBayer12BitDPXPacked (AJA_RGBAlpha16BitPixel *rgbaBuffer, uint8_t *bayerBuffer, uint32_t numPixels, uint32_t line, AJA_BayerColorPhase phase)
 
void AJA_ConvertARGBToRGBA (uint8_t *rgbaBuffer, uint32_t numPixels)
 
void AJA_ConvertARGBToABGR (uint8_t *rgbaBuffer, uint32_t numPixels)
 
static void AJA_ConvertARGBToRGB (uint8_t *rgbaBuffer, uint8_t *rgbBuffer, uint32_t numPixels)
 
static void AJA_ConvertARGBToBGR (uint8_t *rgbaBuffer, uint8_t *rgbBuffer, uint32_t numPixels)
 
void AJA_Convert16BitARGBTo16BitRGB (AJA_RGBAlpha16BitPixel *rgbaLineBuffer, uint16_t *rgbLineBuffer, uint32_t numPixels)
 
void AJA_Convert16BitARGBTo12BitRGBPacked (AJA_RGBAlpha16BitPixel *rgbaLineBuffer, uint8_t *rgbLineBuffer, uint32_t numPixels)
 
void AJA_Convert8BitYCbCrToYUY2 (uint8_t *ycbcrBuffer, uint32_t numPixels)
 
void AJA_RePackLineDataForYCbCrDPX (uint32_t *packedycbcrLine, uint32_t numULWords)
 
void AJA_ConvertUnpacked10BitYCbCrToPixelFormat (uint16_t *unPackedBuffer, uint32_t *packedBuffer, uint32_t numPixels, AJA_PixelFormat pixelFormat)
 
void AJA_ConvertPixelFormatToRGBA (uint32_t *buffer, AJA_RGBAlphaPixel *rgbBuffer, uint32_t numPixels, AJA_PixelFormat pixelFormat, bool bIsSD)
 
void AJA_MaskUnPacked10BitYCbCrBuffer (uint16_t *ycbcrUnPackedBuffer, uint16_t signalMask, uint32_t numPixels)
 
void WriteLineToBuffer (AJA_PixelFormat pixelFormat, uint32_t currentLine, uint32_t numPixels, uint32_t linePitch, uint8_t *pOutputBuffer, uint32_t *pPackedLineBuffer)
 
void WriteLineToBuffer (AJA_PixelFormat pixelFormat, AJA_BayerColorPhase bayerPhase, uint32_t currentLine, uint32_t numPixels, uint32_t linePitch, uint8_t *pOutputBuffer, uint32_t *pPackedLineBuffer)
 
void AJA_ReSampleLine (AJA_RGBAlphaPixel *Input, AJA_RGBAlphaPixel *Output, uint16_t startPixel, uint16_t endPixel, int32_t numInputPixels, int32_t numOutputPixels)
 
void AJA_ReSampleLine (int16_t *Input, int16_t *Output, uint16_t startPixel, uint16_t endPixel, int32_t numInputPixels, int32_t numOutputPixels)
 
void AJA_ReSampleYCbCrSampleLine (int16_t *Input, int16_t *Output, int32_t numInputPixels, int32_t numOutputPixels)
 
void AJA_ReSampleAudio (int16_t *Input, int16_t *Output, uint16_t startPixel, uint16_t endPixel, int32_t numInputPixels, int32_t numOutputPixels, int16_t channelInterleaveMulitplier)
 

Variables

uint32_t CubicCoef [129]
 

Detailed Description

Declares the ajabase library's video utility functions.

Definition in file videoutilities.cpp.

Macro Definition Documentation

◆ _ENDIAN_SWAP32

#define _ENDIAN_SWAP32 (   _data_)    (((_data_<<24)&0xff000000)|((_data_<<8)&0x00ff0000)|((_data_>>8)&0x0000ff00)|((_data_>>24)&0x000000ff))

Definition at line 18 of file videoutilities.cpp.

Function Documentation

◆ AJA_CalcRowBytesForFormat()

uint32_t AJA_CalcRowBytesForFormat ( AJA_PixelFormat  format,
uint32_t  width 
)

Definition at line 174 of file videoutilities.cpp.

◆ AJA_Convert16BitARGBTo12BitRGBPacked()

void AJA_Convert16BitARGBTo12BitRGBPacked ( AJA_RGBAlpha16BitPixel rgbaLineBuffer,
uint8_t *  rgbLineBuffer,
uint32_t  numPixels 
)

Definition at line 1224 of file videoutilities.cpp.

◆ AJA_Convert16BitARGBTo16BitRGB()

void AJA_Convert16BitARGBTo16BitRGB ( AJA_RGBAlpha16BitPixel rgbaLineBuffer,
uint16_t *  rgbLineBuffer,
uint32_t  numPixels 
)

Definition at line 1210 of file videoutilities.cpp.

◆ AJA_Convert16BitRGBtoBayer10BitDPXLJ()

void AJA_Convert16BitRGBtoBayer10BitDPXLJ ( AJA_RGBAlpha16BitPixel rgbaBuffer,
uint32_t *  bayerBuffer,
uint32_t  numPixels,
uint32_t  line,
AJA_BayerColorPhase  phase 
)

Definition at line 771 of file videoutilities.cpp.

◆ AJA_Convert16BitRGBtoBayer10BitDPXPacked()

void AJA_Convert16BitRGBtoBayer10BitDPXPacked ( AJA_RGBAlpha16BitPixel rgbaBuffer,
uint8_t *  bayerBuffer,
uint32_t  numPixels,
uint32_t  line,
AJA_BayerColorPhase  phase 
)

Definition at line 938 of file videoutilities.cpp.

◆ AJA_Convert16BitRGBtoBayer12BitDPXLJ()

void AJA_Convert16BitRGBtoBayer12BitDPXLJ ( AJA_RGBAlpha16BitPixel rgbaBuffer,
uint32_t *  bayerBuffer,
uint32_t  numPixels,
uint32_t  line,
AJA_BayerColorPhase  phase 
)

Definition at line 863 of file videoutilities.cpp.

◆ AJA_Convert16BitRGBtoBayer12BitDPXPacked()

void AJA_Convert16BitRGBtoBayer12BitDPXPacked ( AJA_RGBAlpha16BitPixel rgbaBuffer,
uint8_t *  bayerBuffer,
uint32_t  numPixels,
uint32_t  line,
AJA_BayerColorPhase  phase 
)

Definition at line 1062 of file videoutilities.cpp.

◆ AJA_Convert8BitYCbCrToYUY2()

void AJA_Convert8BitYCbCrToYUY2 ( uint8_t *  ycbcrBuffer,
uint32_t  numPixels 
)

Definition at line 1253 of file videoutilities.cpp.

◆ AJA_ConvertARGBToABGR()

void AJA_ConvertARGBToABGR ( uint8_t *  rgbaBuffer,
uint32_t  numPixels 
)

Definition at line 1167 of file videoutilities.cpp.

◆ AJA_ConvertARGBToBGR()

static void AJA_ConvertARGBToBGR ( uint8_t *  rgbaBuffer,
uint8_t *  rgbBuffer,
uint32_t  numPixels 
)
static

Definition at line 1197 of file videoutilities.cpp.

◆ AJA_ConvertARGBToRGB()

static void AJA_ConvertARGBToRGB ( uint8_t *  rgbaBuffer,
uint8_t *  rgbBuffer,
uint32_t  numPixels 
)
static

Definition at line 1183 of file videoutilities.cpp.

◆ AJA_ConvertARGBToRGBA()

void AJA_ConvertARGBToRGBA ( uint8_t *  rgbaBuffer,
uint32_t  numPixels 
)

Definition at line 1151 of file videoutilities.cpp.

◆ AJA_ConvertLineto10BitRGB()

void AJA_ConvertLineto10BitRGB ( uint16_t *  ycbcrBuffer,
AJA_RGBAlpha10BitPixel rgbaBuffer,
uint32_t  numPixels,
bool  fUseSDMatrix 
)

Definition at line 520 of file videoutilities.cpp.

◆ AJA_ConvertLineto16BitRGB()

void AJA_ConvertLineto16BitRGB ( uint16_t *  ycbcrBuffer,
AJA_RGBAlpha16BitPixel rgbaBuffer,
uint32_t  numPixels,
bool  fUseSDMatrix 
)

Definition at line 700 of file videoutilities.cpp.

◆ AJA_ConvertLineto8BitYCbCr()

void AJA_ConvertLineto8BitYCbCr ( uint16_t *  ycbcr10BitBuffer,
uint8_t *  ycbcr8BitBuffer,
uint32_t  numPixels 
)

Definition at line 432 of file videoutilities.cpp.

◆ AJA_ConvertLinetoRGB() [1/2]

void AJA_ConvertLinetoRGB ( uint16_t *  ycbcrBuffer,
AJA_RGBAlphaPixel rgbaBuffer,
uint32_t  numPixels,
bool  fUseSDMatrix 
)

Definition at line 639 of file videoutilities.cpp.

◆ AJA_ConvertLinetoRGB() [2/2]

void AJA_ConvertLinetoRGB ( uint8_t *  ycbcrBuffer,
AJA_RGBAlphaPixel rgbaBuffer,
uint32_t  numPixels,
bool  fUseSDMatrix 
)

Definition at line 578 of file videoutilities.cpp.

◆ AJA_ConvertLineToYCbCr422()

void AJA_ConvertLineToYCbCr422 ( AJA_RGBAlphaPixel RGBLine,
uint16_t *  YCbCrLine,
int32_t  numPixels,
int32_t  startPixel,
bool  fUseSDMatrix 
)

Definition at line 443 of file videoutilities.cpp.

◆ AJA_ConvertPixelFormatToRGBA()

void AJA_ConvertPixelFormatToRGBA ( uint32_t *  buffer,
AJA_RGBAlphaPixel rgbBuffer,
uint32_t  numPixels,
AJA_PixelFormat  pixelFormat,
bool  bIsSD 
)

Definition at line 1390 of file videoutilities.cpp.

◆ AJA_ConvertRGBAlpha10LineToYCbCr422()

void AJA_ConvertRGBAlpha10LineToYCbCr422 ( AJA_RGBAlpha10BitPixel RGBLine,
uint16_t *  YCbCrLine,
int32_t  numPixels,
int32_t  startPixel,
bool  fUseRGBFullRange 
)

Definition at line 483 of file videoutilities.cpp.

◆ AJA_ConvertUnpacked10BitYCbCrToPixelFormat()

void AJA_ConvertUnpacked10BitYCbCrToPixelFormat ( uint16_t *  unPackedBuffer,
uint32_t *  packedBuffer,
uint32_t  numPixels,
AJA_PixelFormat  pixelFormat 
)

Definition at line 1288 of file videoutilities.cpp.

◆ AJA_MakeUnPacked10BitYCbCrBuffer()

void AJA_MakeUnPacked10BitYCbCrBuffer ( uint16_t *  buffer,
uint16_t  Y,
uint16_t  Cb,
uint16_t  Cr,
uint32_t  numPixels 
)

Definition at line 406 of file videoutilities.cpp.

◆ AJA_MakeUnPacked8BitYCbCrBuffer()

void AJA_MakeUnPacked8BitYCbCrBuffer ( uint8_t *  buffer,
uint8_t  Y,
uint8_t  Cb,
uint8_t  Cr,
uint32_t  numPixels 
)

Definition at line 418 of file videoutilities.cpp.

◆ AJA_MaskUnPacked10BitYCbCrBuffer()

void AJA_MaskUnPacked10BitYCbCrBuffer ( uint16_t *  ycbcrUnPackedBuffer,
uint16_t  signalMask,
uint32_t  numPixels 
)

Definition at line 1464 of file videoutilities.cpp.

◆ AJA_PackRGB10BitFor10BitDPX()

void AJA_PackRGB10BitFor10BitDPX ( AJA_RGBAlpha10BitPixel rgba10BitBuffer,
uint32_t  numPixels,
bool  bigEndian 
)

Definition at line 344 of file videoutilities.cpp.

◆ AJA_PackRGB10BitFor10BitRGB()

void AJA_PackRGB10BitFor10BitRGB ( AJA_RGBAlpha10BitPixel rgba10BitBuffer,
uint32_t  numPixels 
)

Definition at line 315 of file videoutilities.cpp.

◆ AJA_PackRGB10BitFor10BitRGBPacked()

void AJA_PackRGB10BitFor10BitRGBPacked ( AJA_RGBAlpha10BitPixel rgba10BitBuffer,
uint32_t  numPixels 
)

Definition at line 328 of file videoutilities.cpp.

◆ AJA_PackTo10BitYCbCrBuffer()

void AJA_PackTo10BitYCbCrBuffer ( uint16_t *  ycbcrBuffer,
uint32_t *  packedBuffer,
uint32_t  numPixels 
)

Definition at line 276 of file videoutilities.cpp.

◆ AJA_PackTo10BitYCbCrDPXBuffer()

void AJA_PackTo10BitYCbCrDPXBuffer ( uint16_t *  ycbcrBuffer,
uint32_t *  packedBuffer,
uint32_t  numPixels,
bool  bigEndian 
)

Definition at line 291 of file videoutilities.cpp.

◆ AJA_RePackLineDataForYCbCrDPX()

void AJA_RePackLineDataForYCbCrDPX ( uint32_t *  packedycbcrLine,
uint32_t  numULWords 
)

Definition at line 1269 of file videoutilities.cpp.

◆ AJA_ReSampleAudio()

void AJA_ReSampleAudio ( int16_t *  Input,
int16_t *  Output,
uint16_t  startPixel,
uint16_t  endPixel,
int32_t  numInputPixels,
int32_t  numOutputPixels,
int16_t  channelInterleaveMulitplier 
)

Definition at line 1760 of file videoutilities.cpp.

◆ AJA_ReSampleLine() [1/2]

void AJA_ReSampleLine ( AJA_RGBAlphaPixel Input,
AJA_RGBAlphaPixel Output,
uint16_t  startPixel,
uint16_t  endPixel,
int32_t  numInputPixels,
int32_t  numOutputPixels 
)

Definition at line 1635 of file videoutilities.cpp.

◆ AJA_ReSampleLine() [2/2]

void AJA_ReSampleLine ( int16_t *  Input,
int16_t *  Output,
uint16_t  startPixel,
uint16_t  endPixel,
int32_t  numInputPixels,
int32_t  numOutputPixels 
)

Definition at line 1667 of file videoutilities.cpp.

◆ AJA_ReSampleYCbCrSampleLine()

void AJA_ReSampleYCbCrSampleLine ( int16_t *  Input,
int16_t *  Output,
int32_t  numInputPixels,
int32_t  numOutputPixels 
)

Definition at line 1696 of file videoutilities.cpp.

◆ AJA_UnPack10BitDPXtoRGBAlpha10BitPixel()

void AJA_UnPack10BitDPXtoRGBAlpha10BitPixel ( AJA_RGBAlpha10BitPixel rgba10BitBuffer,
uint32_t *  DPXLinebuffer,
uint32_t  numPixels,
bool  bigEndian 
)

Definition at line 361 of file videoutilities.cpp.

◆ AJA_UnPack10BitDPXtoRGBAlphaBitPixel()

void AJA_UnPack10BitDPXtoRGBAlphaBitPixel ( uint8_t *  rgbaBuffer,
uint32_t *  DPXLinebuffer,
uint32_t  numPixels,
bool  bigEndian 
)

Definition at line 381 of file videoutilities.cpp.

◆ AJA_UnPack10BitYCbCrBuffer()

void AJA_UnPack10BitYCbCrBuffer ( uint32_t *  packedBuffer,
uint16_t *  ycbcrBuffer,
uint32_t  numPixels 
)

Definition at line 262 of file videoutilities.cpp.

◆ createVideoFrame()

void createVideoFrame ( uint32_t *  buffer,
uint64_t  frameNumber,
AJA_PixelFormat  pixFmt,
uint32_t  lines,
uint32_t  pixels,
uint32_t  linepitch,
uint16_t  y,
uint16_t  cb,
uint16_t  cr 
)

Definition at line 158 of file videoutilities.cpp.

◆ CubicInterPolate()

AJA_RGBAlphaPixel CubicInterPolate ( AJA_RGBAlphaPixel Input,
int32_t  Index 
)
inline

Definition at line 1784 of file videoutilities.cpp.

◆ CubicInterPolateAudioWord()

int16_t CubicInterPolateAudioWord ( int16_t *  Input,
int32_t  Index 
)
inline

Definition at line 1836 of file videoutilities.cpp.

◆ CubicInterPolateWord()

int16_t CubicInterPolateWord ( int16_t *  Input,
int32_t  Index 
)
inline

Definition at line 1823 of file videoutilities.cpp.

◆ FixedTrunc()

int FixedTrunc ( int  inFix)
inline

Definition at line 13 of file videoutilities.cpp.

◆ WriteLineToBuffer() [1/2]

void WriteLineToBuffer ( AJA_PixelFormat  pixelFormat,
AJA_BayerColorPhase  bayerPhase,
uint32_t  currentLine,
uint32_t  numPixels,
uint32_t  linePitch,
uint8_t *  pOutputBuffer,
uint32_t *  pPackedLineBuffer 
)

Definition at line 1586 of file videoutilities.cpp.

◆ WriteLineToBuffer() [2/2]

void WriteLineToBuffer ( AJA_PixelFormat  pixelFormat,
uint32_t  currentLine,
uint32_t  numPixels,
uint32_t  linePitch,
uint8_t *  pOutputBuffer,
uint32_t *  pPackedLineBuffer 
)

Definition at line 1539 of file videoutilities.cpp.

Variable Documentation

◆ CubicCoef

uint32_t CubicCoef[129]

Definition at line 24 of file videoutilities.cpp.