![]() |
AJA NTV2 SDK
17.6.0.1688
NTV2 SDK 17.6.0.1688
|
#include <ntv2captiondecodechannel608.h>
Public Member Functions | |
virtual | ~CNTV2CaptionDecodeChannel608 () |
virtual std::vector< uint32_t > | GetStats (void) const |
virtual bool | SubscribeChangeNotification (NTV2Caption608Changed *pInCallback, void *pInUserData=0) |
virtual bool | UnsubscribeChangeNotification (NTV2Caption608Changed *pInCallback, void *pInUserData=0) |
Decoder Configuration | |
virtual void | Reset (void) |
Restores my state – caption channel CC1, screen 0, cursor at row 15 column 1, pop-on mode, default CEA-608 character set, roll-up base at row 15, and a 15-row Text Mode. More... | |
virtual bool | SetChannel (const NTV2Line21Channel inNewChannel) |
Changes the caption channel that I handle. More... | |
virtual bool | IsTextChannel (void) const |
Answers true if the caption channel I'm currently handling is Tx1, Tx2, Tx3 or Tx4. More... | |
virtual NTV2Line21CharacterSet | GetCurrentCharacterSet (void) const |
Answers with my current character set. More... | |
virtual NTV2Line21Channel | GetCurrentChannel (UByte char608_1, UByte char608_2, NTV2Line21Field field) |
Decoder Operation | |
virtual bool | Parse608Data (const UByte inByte1, const UByte inByte2, std::string &outDebugStr) |
This method pushes caption data into me. It should be called when two new bytes of CEA-608 caption data arrive for this channel. The caller should have already filtered out any "duplicate" commands (i.e. commands that are sent twice on adjacent frames) before calling this method. There's no need to call this if there's no new data for my channel. More... | |
virtual UWord | GetRow (void) const |
Answers with the row at which the next caption character will be inserted. More... | |
virtual UWord | GetColumn (void) const |
Answers with the column at which the next caption character will be inserted. More... | |
Character Screen Back-Buffer Access | |
virtual UByte | GetOnAirCharacter (const UWord inRow, const UWord inCol, NTV2Line21Attrs &outAttr) const |
Returns the "ASCII-like" character code at the given screen position (including its attributes). More... | |
virtual std::string | GetOnAirCharacter (const UWord inRow, const UWord inCol) const |
Returns a string containing the UTF-8 character sequence that best represents the caption character at the given screen position. More... | |
virtual std::string | GetOnAirCharacterWithAttributes (const UWord inRow, const UWord inCol, NTV2Line21Attrs &outAttr) const |
Returns a string containing the UTF-8 character sequence that best represents the caption character at the given screen position. More... | |
virtual UWord | GetOnAirUTF16CharacterWithAttributes (const UWord inRow, const UWord inCol, NTV2Line21Attrs &outAttr) const |
Returns the UTF-16 character that best represents the caption character at the given screen position. More... | |
virtual NTV2Line21CharacterSet | GetOnAirCharacterSet (const UWord inRow, const UWord inCol) const |
Returns the NTV2Line21CharacterSet of the caption character that's currently at the given screen position. More... | |
virtual bool | GetCharacterAttributes (const UWord screen, const UWord inRow, const UWord inCol, NTV2Line21Attrs &outAttr) const |
Text Mode Configuration | |
virtual UWord | GetTextModeDisplayRowCount (void) const |
Returns the number of rows used for displaying Text Mode captions (Tx1/Tx2/Tx3/Tx4). More... | |
virtual bool | SetTextModeDisplayRowCount (const UWord inNumRows) |
Changes the number of rows used for displaying Text Mode captions (Tx1/Tx2/Tx3/Tx4). More... | |
virtual const NTV2Line21Attrs & | GetTextModeDisplayAttributes (void) const |
Returns the display attributes that Text Mode captions are currently using (assuming my caption channel is Tx1/Tx2/Tx3/Tx4). More... | |
virtual void | SetTextModeDisplayAttributes (const NTV2Line21Attrs &inAttributes) |
Sets the display attributes that Text Mode captions will use henceforth. More... | |
Debug | |
virtual std::string | GetDebugPrintRow (const UWord inRow, const bool inShowChars=true) const |
virtual std::string | GetDebugPrintScreen (const bool inShowChars=true) const |
virtual void | SetDebugRowsOfInterest (const UWord inFromRow, const UWord inToRow, const bool inAdd=false) |
virtual void | SetDebugColumnsOfInterest (const UWord inFromCol, const UWord inToCol, const bool inAdd=false) |
![]() | |
CNTV2CaptionLogConfig (const std::string inLogLabel=std::string()) | |
Default constructor. More... | |
virtual | ~CNTV2CaptionLogConfig () |
virtual NTV2CaptionLogMask | SetLogMask (const NTV2CaptionLogMask inLogMask) |
Specifies what, if any, debug information I will write to my log stream. More... | |
virtual NTV2CaptionLogMask | GetLogMask (void) const |
Answers with my current caption logging bit mask. More... | |
virtual bool | TestLogMask (const NTV2CaptionLogMask inLogMask, const bool inExact=false) const |
Answers true if the given log mask bits are set in my current log mask. More... | |
virtual void | SetLogLabel (const std::string &inNewLabel) |
Specifies my logging label. More... | |
virtual void | AppendToLogLabel (const std::string &inString) |
Appends the given string to my current log label. More... | |
virtual const std::string & | GetLogLabel (void) const |
Answers with my current logging label. More... | |
virtual void | SetLogStream (std::ostream &inOutputStream) |
virtual std::ostream & | LogIf (const NTV2CaptionLogMask inLogMask) const |
virtual std::ostream & | Log (void) const |
Static Public Member Functions | |
static bool | Create (CNTV2CaptionDecodeChannel608Ptr &outInstance) |
Creates and returns a new CNTV2CaptionDecodeChannel608 instance. More... | |
static std::string | GetStatTitle (const CaptionDecode608Stats inStat) |
![]() | |
static std::ostream & | DumpMemory (const void *pInStartAddress, const size_t inByteCount, std::ostream &inOutputStream=std::cout, const size_t inRadix=16, const size_t inBytesPerGroup=4, const size_t inGroupsPerLine=8, const size_t inAddressRadix=16, const bool inShowAscii=true, const size_t inAddrOffset=0) |
Dumps a contiguous chunk of memory in hex, octal, decimal, with or without ascii, to the given output stream. More... | |
static std::string | HexDump32Bytes (const void *pInStartAddress, const size_t inByteCount, const size_t inLimitBytes=32) |
static std::ostream & | DumpYBytes_2vuy (const UByte *pInVideoLine, std::ostream &inOutputStream, const unsigned inFromPixel=0, const unsigned inToPixel=719, const bool inShowRuler=true, const unsigned inHiliteRangeFrom=9999, const unsigned inHiliteRangeTo=9999) |
Dumps the luma values in hexadecimal from the given line of '2vuy' video to the given output stream. More... | |
static std::ostream & | DumpYBytes_2vuy (const std::vector< uint8_t > &inVideoLine, std::ostream &inOutputStream, const size_t inFromPixel=0, const size_t inToPixel=719, const bool inShowRuler=true, const size_t inHiliteRangeFrom=9999, const size_t inHiliteRangeTo=9999) |
Dumps the luma values in hexadecimal from the given line of '2vuy' video to the given output stream. More... | |
static std::string | GetSeverityLabel (const unsigned inSeverity) |
Static Public Attributes | |
static bool | sStaticBackBufferTestMode |
Protected Types | |
typedef NTV2_CC608_CodePoint | NTV2CC608CodePoint |
Protected Member Functions | |
virtual bool | Parse608CharacterData (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608TabOffsetCommand (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608CharacterSetCommand (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608AttributeCommand (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608PACCommand (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608MidRowCommand (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608SpecialCharacter (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | Parse608MiscCommand (UByte char608_1, UByte char608_2, std::string &outDebugStr) |
virtual bool | DoResumeCaptionLoading (void) |
virtual bool | DoBackspace (void) |
virtual bool | DoDeleteToEndOfRow (void) |
virtual bool | DoRollUpCaption (const UWord inRows) |
virtual bool | DoFlashOn (void) |
virtual bool | DoResumeDirectCaptioning (void) |
virtual bool | DoTextRestart (void) |
virtual bool | DoResumeTextDisplay (void) |
virtual bool | DoEraseDisplayedMemory (void) |
virtual bool | DoCarriageReturn (void) |
virtual bool | DoEraseNonDisplayedMemory (void) |
virtual bool | DoEndOfCaption (void) |
virtual void | SetAttributes (const UWord inRow, const UWord inCol, const NTV2Line21Attrs inAttr) |
virtual bool | EraseScreen (const UWord screen) |
virtual bool | SetRow (const UWord inNewRow) |
virtual bool | IncrementRow (const int inDelta=1) |
virtual bool | SetColumn (const UWord inNewCol) |
virtual bool | IncrementColumn (const int inDelta=1) |
virtual bool | SetCaptionMode (const NTV2Line21Mode inNewCaptionMode) |
virtual NTV2Line21Mode | GetCaptionMode (void) const |
virtual UWord | GetCurrentScreen (void) const |
virtual bool | SetCurrentScreen (const UWord inNewScreen) |
virtual void | MoveRollUpWindow (const UWord inNewBaseRow) |
virtual void | InsertCharacter (const UByte char608_1, const UByte char608_2, const NTV2Line21Attrs inAttr) |
virtual void | InsertCharacter (const UByte char608_1, const UByte char608_2) |
virtual void | InsertTextCharacter (const UByte inASCIIChar) |
virtual void | Notify_ChannelChanged (const NTV2Line21Channel inOldChannel, const NTV2Line21Channel inNewChannel) const |
virtual void | Notify_CurrentRowChanged (const UWord inOldRow, const UWord inNewRow) const |
virtual void | Notify_CurrentColumnChanged (const UWord inOldCol, const UWord inNewCol) const |
virtual void | Notify_CurrentScreenChanged (const UWord inOldScreen, const UWord inNewScreen) const |
virtual void | Notify_CaptionModeChanged (const NTV2Line21Mode inOldMode, const NTV2Line21Mode inNewMode) const |
virtual void | Notify_ScreenCharChanged (const UWord inScreenNum, const UWord inRow, const UWord inCol, const NTV2_CC608_CodePoint inOldCodePoint, const NTV2_CC608_CodePoint inNewCodePoint) const |
virtual void | Notify_ScreenAttrChanged (const UWord inScreenNum, const UWord inRow, const UWord inCol, const NTV2Line21Attrs &inOldAttr, const NTV2Line21Attrs &inNewAttr) const |
CNTV2CaptionDecodeChannel608 () | |
Additional Inherited Members | |
![]() | |
NTV2CaptionLogMask | mLogMask |
Determines what messages are logged. More... | |
std::string | mLogLabel |
My debug label. More... | |
void * | mpLabelLock |
Protects my debug label from simultaneous access by more than one thread. More... | |
Definition at line 64 of file ntv2captiondecodechannel608.h.
|
protected |
Definition at line 312 of file ntv2captiondecodechannel608.h.
|
virtual |
|
explicitprotected |
|
static |
Creates and returns a new CNTV2CaptionDecodeChannel608 instance.
[out] | outInstance | Receives the newly-created CNTV2CaptionDecodeChannel608 instance. |
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
|
inlineprotectedvirtual |
Definition at line 287 of file ntv2captiondecodechannel608.h.
|
virtual |
|
inlinevirtual |
Answers with the column at which the next caption character will be inserted.
Definition at line 136 of file ntv2captiondecodechannel608.h.
|
virtual |
|
inlinevirtual |
Answers with my current character set.
Definition at line 105 of file ntv2captiondecodechannel608.h.
|
inlineprotectedvirtual |
Definition at line 289 of file ntv2captiondecodechannel608.h.
|
virtual |
|
virtual |
|
virtual |
Returns a string containing the UTF-8 character sequence that best represents the caption character at the given screen position.
[in] | inRow | The row number (1-15). |
[in] | inCol | The column number (1-32). |
|
virtual |
Returns the "ASCII-like" character code at the given screen position (including its attributes).
[in] | inRow | The row number (1-15). |
[in] | inCol | The column number (1-32). |
[out] | outAttr | An NTV2Line21Attributes variable that is to receive the display attributes of the on-screen character. |
|
virtual |
Returns the NTV2Line21CharacterSet of the caption character that's currently at the given screen position.
[in] | inRow | The row number (1-15). |
[in] | inCol | The column number (1-32). |
|
virtual |
Returns a string containing the UTF-8 character sequence that best represents the caption character at the given screen position.
[in] | inRow | The row number (1-15). |
[in] | inCol | The column number (1-32). |
[out] | outAttr | An NTV2Line21Attributes variable that is to receive the display attributes of the on-screen character. |
|
virtual |
Returns the UTF-16 character that best represents the caption character at the given screen position.
[in] | inRow | The row number (1-15). |
[in] | inCol | The column number (1-32). |
[out] | outAttr | Receives the NTV2Line21Attributes of the on-screen character. |
|
inlinevirtual |
Answers with the row at which the next caption character will be inserted.
Definition at line 130 of file ntv2captiondecodechannel608.h.
|
virtual |
|
static |
|
inlinevirtual |
Returns the display attributes that Text Mode captions are currently using (assuming my caption channel is Tx1/Tx2/Tx3/Tx4).
Definition at line 216 of file ntv2captiondecodechannel608.h.
|
inlinevirtual |
Returns the number of rows used for displaying Text Mode captions (Tx1/Tx2/Tx3/Tx4).
Definition at line 201 of file ntv2captiondecodechannel608.h.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
inlinevirtual |
Answers true if the caption channel I'm currently handling is Tx1, Tx2, Tx3 or Tx4.
Definition at line 99 of file ntv2captiondecodechannel608.h.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
virtual |
This method pushes caption data into me. It should be called when two new bytes of CEA-608 caption data arrive for this channel. The caller should have already filtered out any "duplicate" commands (i.e. commands that are sent twice on adjacent frames) before calling this method. There's no need to call this if there's no new data for my channel.
[in] | inByte1 | The first caption data byte. The parity bit must have already been stripped off. |
[in] | inByte2 | The second caption data byte. The parity bit must have already been stripped off. |
[out] | outDebugStr | Receives a string that contains some useful information if this call fails. |
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
virtual |
Restores my state – caption channel CC1, screen 0, cursor at row 15 column 1, pop-on mode, default CEA-608 character set, roll-up base at row 15, and a 15-row Text Mode.
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
|
protectedvirtual |
|
virtual |
Changes the caption channel that I handle.
[in] | inNewChannel | Specifies the caption channel I'll be handling. |
Reimplemented in CNTV2CaptionTranslatorChannel608to708.
|
protectedvirtual |
|
protectedvirtual |
|
virtual |
|
virtual |
|
protectedvirtual |
|
inlinevirtual |
Sets the display attributes that Text Mode captions will use henceforth.
[in] | inAttributes | Specifies the new display attributes for Text Mode captions will have going forward. |
Definition at line 223 of file ntv2captiondecodechannel608.h.
|
virtual |
Changes the number of rows used for displaying Text Mode captions (Tx1/Tx2/Tx3/Tx4).
[in] | inNumRows | Specifies the number of rows to use for displaying Text Mode captions. Must be at least 1 and no more than 32. |
|
virtual |
|
virtual |
|
static |
Definition at line 348 of file ntv2captiondecodechannel608.h.