AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
|
This is the base class for the AJAAncillaryData_Timecode_ATC and AJAAncillaryData_Timecode_VITC classes, because they share the same "payload" data (i.e. timecode) and only differ in the transport (ancillary packets vs. "analog" coding). More...
#include <ancillarydata_timecode.h>
Public Member Functions | |
AJAAncillaryData_Timecode () | |
AJAAncillaryData_Timecode (const AJAAncillaryData_Timecode &inClone) | |
AJAAncillaryData_Timecode (const AJAAncillaryData_Timecode *pClone) | |
AJAAncillaryData_Timecode (const AJAAncillaryData *pData) | |
virtual | ~AJAAncillaryData_Timecode () |
virtual void | Clear (void) |
Frees my allocated memory, if any, and resets my members to their default values. More... | |
AJAAncillaryData_Timecode & | operator= (const AJAAncillaryData_Timecode &inRHS) |
Assignment operator – replaces my contents with the right-hand-side value. More... | |
virtual AJAStatus | ParsePayloadData (void) |
Parses out (interprets) the "local" ancillary data from my payload data. More... | |
virtual AJAStatus | GeneratePayloadData (void) |
Generate the payload data from the "local" ancillary data. More... | |
virtual AJAStatus | SetTimeHexValue (const uint8_t inDigitNum, const uint8_t inHexValue, const uint8_t inMask=0x0f) |
Sets my raw "time" hex values. More... | |
virtual AJAStatus | GetTimeHexValue (uint8_t inDigitNum, uint8_t &outHexValue, uint8_t inMask=0x0f) const |
Answers with my current raw "time" hex values. More... | |
virtual AJAStatus | SetTimeDigits (const uint8_t inHourTens, const uint8_t inHourOnes, const uint8_t inMinTens, const uint8_t inMinOnes, const uint8_t inSecsTens, const uint8_t inSecsOnes, const uint8_t inFrameTens, const uint8_t inFrameOnes) |
Sets my timecode "time" using discrete BCD digits. More... | |
virtual AJAStatus | GetTimeDigits (uint8_t &outHourTens, uint8_t &outHourOnes, uint8_t &outMinTens, uint8_t &outMinOnes, uint8_t &outSecsTens, uint8_t &outSecsOnes, uint8_t &outFrameTens, uint8_t &outFrameOnes) const |
Answers with my current timecode "time" as discrete BCD digits. More... | |
virtual AJAStatus | SetTime (const AJAAncillaryData_Timecode_Format inFormat, const uint32_t inHours, const uint32_t inMinutes, const uint32_t inSeconds, const uint32_t inFrames) |
Sets my timecode "time" with hours, minutes, seconds, frames (in decimal, not BCD digits). More... | |
virtual AJAStatus | GetTime (const AJAAncillaryData_Timecode_Format inFormat, uint32_t &outHours, uint32_t &outMinutes, uint32_t &outSeconds, uint32_t &outFrames) const |
Answers with my current timecode "time" as individual hour, minute, second, and frame components (in decimal, not BCD digits). More... | |
virtual AJAStatus | SetTimecode (const AJATimeCode &inTimecode, const AJATimeBase &inTimeBase, const bool inIsDropFrame) |
Sets my timecode "time" from an AJATimeCode. More... | |
virtual AJAStatus | GetTimecode (AJATimeCode &outTimecode, const AJATimeBase &inTimeBase) const |
Answers with my timecode "time" as an AJATimeCode. More... | |
virtual AJAStatus | SetBinaryGroupHexValue (uint8_t digitNum, uint8_t hexValue, uint8_t mask=0x0f) |
Sets my raw "Binary Group" hex values. More... | |
virtual AJAStatus | GetBinaryGroupHexValue (uint8_t digitNum, uint8_t &hexValue, uint8_t mask=0x0f) const |
virtual AJAStatus | SetBinaryGroups (uint8_t bg8, uint8_t bg7, uint8_t bg6, uint8_t bg5, uint8_t bg4, uint8_t bg3, uint8_t bg2, uint8_t bg1) |
Sets my binary group values. More... | |
virtual AJAStatus | GetBinaryGroups (uint8_t &bg8, uint8_t &bg7, uint8_t &bg6, uint8_t &bg5, uint8_t &bg4, uint8_t &bg3, uint8_t &bg2, uint8_t &bg1) const |
virtual AJAStatus | SetFieldIdFlag (bool bFlag, AJAAncillaryData_Timecode_Format tcFmt=AJAAncillaryData_Timecode_Format_Unknown) |
Sets my FieldID flag. More... | |
virtual AJAStatus | GetFieldIdFlag (bool &bFlag, AJAAncillaryData_Timecode_Format tcFmt=AJAAncillaryData_Timecode_Format_Unknown) const |
virtual AJAStatus | SetDropFrameFlag (bool bFlag, AJAAncillaryData_Timecode_Format tcFmt=AJAAncillaryData_Timecode_Format_Unknown) |
Sets my drop frame flag. More... | |
virtual AJAStatus | GetDropFrameFlag (bool &bFlag, AJAAncillaryData_Timecode_Format tcFmt=AJAAncillaryData_Timecode_Format_Unknown) const |
virtual AJAStatus | SetColorFrameFlag (bool bFlag, AJAAncillaryData_Timecode_Format tcFmt=AJAAncillaryData_Timecode_Format_Unknown) |
Sets my color frame flag. More... | |
virtual AJAStatus | GetColorFrameFlag (bool &bFlag, AJAAncillaryData_Timecode_Format tcFmt=AJAAncillaryData_Timecode_Format_Unknown) const |
virtual AJAStatus | SetBinaryGroupFlag (const uint8_t inBGFlag, const AJAAncillaryData_Timecode_Format inFormat=AJAAncillaryData_Timecode_Format_Unknown) |
Sets my binary group flag (3 bits). More... | |
virtual AJAStatus | GetBinaryGroupFlag (uint8_t &outBGFlag, const AJAAncillaryData_Timecode_Format inFormat=AJAAncillaryData_Timecode_Format_Unknown) const |
Answers with my current binary group flag (3 bits). More... | |
virtual std::ostream & | Print (std::ostream &inOutStream, const bool inDetailed=false) const |
Streams a human-readable representation of me to the given output stream. More... | |
virtual std::string | TimecodeString (void) const |
Public Member Functions inherited from AJAAncillaryData | |
AJAAncillaryData () | |
My default constructor. More... | |
AJAAncillaryData (const AJAAncillaryData &inClone) | |
My copy constructor (from reference). More... | |
AJAAncillaryData (const AJAAncillaryData *pInClone) | |
My copy constructor (from pointer). More... | |
virtual | ~AJAAncillaryData () |
My destructor. More... | |
virtual AJAAncillaryData * | Clone (void) const |
virtual uint16_t | GetStreamInfo (void) const |
virtual bool | HasStreamInfo (void) const |
virtual bool | isHDMIAuxInfoFrame (void) const |
Returns whether or not this is an HDMI Aux Info Frame Packet. More... | |
virtual uint8_t | Calculate8BitChecksum (void) const |
Generates an 8-bit checksum from the DID + SID + DC + payload data. More... | |
virtual uint16_t | Calculate9BitChecksum (void) const |
Generates the official SMPTE 291 9-bit checksum from the DID + SID + DC + payload data. More... | |
virtual bool | ChecksumOK (void) const |
Compares the received 8-bit checksum with a newly calculated 8-bit checksum. Returns 'true' if they match. More... | |
AJAAncillaryData & | operator= (const AJAAncillaryData &inRHS) |
virtual bool | operator== (const AJAAncillaryData &inRHS) const |
virtual bool | operator!= (const AJAAncillaryData &inRHS) const |
virtual AJAStatus | Compare (const AJAAncillaryData &inRHS, const bool inIgnoreLocation=true, const bool inIgnoreChecksum=true) const |
Compares me with another packet. More... | |
virtual AJAStatus | SetDID (const uint8_t inDataID) |
Sets my Data ID (DID). More... | |
virtual AJAStatus | SetSID (const uint8_t inSID) |
Sets my Secondary Data ID (SID) - (aka the Data Block Number (DBN) for "Type 1" SMPTE-291 packets). More... | |
virtual AJAStatus | SetDIDSID (const AJAAncDIDSIDPair &inDIDSID) |
Sets both my Data ID (DID) and Secondary Data ID (SID). More... | |
virtual AJAStatus | SetChecksum (const uint8_t inChecksum8, const bool inValidate=false) |
Sets my 8-bit checksum. Note that it is not usually necessary to generate an 8-bit checksum, since the ANC Insertion hardware ignores this field and (for SMPTE-291 Anc packets) generates and inserts its own "proper" 9-bit SMPTE-291 checksum. More... | |
virtual AJAStatus | SetDataLocation (const AJAAncDataLoc &inLoc) |
Sets my ancillary data "location" within the video stream. More... | |
virtual AJAStatus | SetLocationVideoLink (const AJAAncDataLink inLink) |
Sets my ancillary data "location" within the video stream. More... | |
virtual AJAStatus | SetLocationDataStream (const AJAAncDataStream inStream) |
Sets my ancillary data "location" data stream value (DS1,DS2...). More... | |
virtual AJAStatus | SetLocationDataChannel (const AJAAncDataChannel inChannel) |
Sets my ancillary data "location" data channel value (Y or C). More... | |
virtual AJAStatus | SetLocationLineNumber (const uint16_t inLineNum) |
Sets my ancillary data "location" frame line number. More... | |
virtual AJAStatus | SetLocationHorizOffset (const uint16_t inOffset) |
Sets my ancillary data "location" horizontal offset. More... | |
virtual AJAStatus | SetDataCoding (const AJAAncDataCoding inCodingType) |
Sets my ancillary data coding type (e.g. digital or analog/raw waveform). More... | |
virtual AJAAncillaryData & | SetFrameID (const uint32_t inFrameID) |
Sets my originating frame identifier. More... | |
virtual AJAAncillaryData & | SetBufferFormat (const AJAAncBufferFormat inFmt) |
Sets my originating buffer format. More... | |
virtual uint8_t | GetPayloadByteAtIndex (const uint32_t inIndex0) const |
virtual const uint8_t * | GetPayloadData (void) const |
virtual AJAStatus | GetPayloadData (uint8_t *pBuffer, const uint32_t inByteCapacity) const |
Copies my payload data into an external buffer. More... | |
virtual AJAStatus | GetPayloadData (UWordSequence &outUDWs, const bool inAddParity=true) const |
Appends my payload data onto the given UDW vector as 10-bit User Data Words (UDWs), adding parity as needed. More... | |
virtual AJAStatus | SetPayloadByteAtIndex (const uint8_t inDataByte, const uint32_t inIndex0) |
virtual AJAStatus | SetPayloadData (const uint8_t *pInData, const uint32_t inByteCount) |
Copy data from external memory into my local payload memory. More... | |
virtual AJAStatus | AppendPayloadData (const uint8_t *pInBuffer, const uint32_t inByteCount) |
Appends data from an external buffer onto the end of my existing payload. More... | |
virtual AJAStatus | AppendPayload (const AJAAncillaryData &inAncData) |
Appends payload data from another AJAAncillaryData object to my existing payload. More... | |
virtual AJAStatus | AppendPayload (const AJAAncillaryData *pInAncData) |
virtual AJAStatus | SetFromSMPTE334 (const uint16_t *pInData, const uint32_t inNumWords, const AJAAncDataLoc &inLocInfo) |
Copies payload data from an external 16-bit source into local payload memory. More... | |
virtual bool | GotValidReceiveData (void) const |
virtual AJAStatus | InitWithReceivedData (const uint8_t *pInData, const size_t inMaxBytes, const AJAAncDataLoc &inLocationInfo, uint32_t &outPacketByteCount) |
Initializes me from "raw" ancillary data received from hardware (ingest) – see SDI Anc Buffer Data Format. More... | |
virtual AJAStatus | InitAuxWithReceivedData (const uint8_t *pInData, const size_t inMaxBytes, uint32_t &outPacketByteCount) |
Initializes me from "raw" ancillary data received from hardware (ingest) – see SDI Anc Buffer Data Format. More... | |
virtual AJAStatus | InitWithReceivedData (const std::vector< uint8_t > &inData, const AJAAncDataLoc &inLocationInfo) |
Initializes me from "raw" ancillary data received from hardware (ingest) – see SDI Anc Buffer Data Format. More... | |
virtual AJAStatus | InitWithReceivedData (const ULWordSequence &inData, uint16_t &inOutStartIndex, const bool inIgnoreChecksum=false) |
Initializes me from the given 32-bit IP packet words received from hardware (ingest). More... | |
virtual AJAStatus | GetRawPacketSize (uint32_t &outPacketSize) const |
Returns the number of "raw" ancillary data bytes that will be generated by AJAAncillaryData::GenerateTransmitData (for playback mode). More... | |
virtual AJAStatus | GenerateTransmitData (uint8_t *pBuffer, const size_t inMaxBytes, uint32_t &outPacketSize) |
Generates "raw" ancillary data from my internal ancillary data (playback) – see SDI Anc Buffer Data Format. More... | |
virtual AJAStatus | GenerateTransmitData (UWordSequence &outData) |
Generates "raw" 10-bit ancillary packet component data from my internal ancillary data (playback). More... | |
virtual AJAStatus | GenerateTransmitData (ULWordSequence &outData) |
Generates the 32-bit IP packet words necessary for constructing an outgoing IP/RTP stream. More... | |
virtual std::ostream & | DumpPayload (std::ostream &inOutStream) const |
Dumps a human-readable representation of my payload bytes into the given output stream. More... | |
virtual std::string | CompareWithInfo (const AJAAncillaryData &inRHS, const bool inIgnoreLocation=true, const bool inIgnoreChecksum=true) const |
Compares me with another packet and returns a string that describes what's different. More... | |
virtual std::string | IDAsString (void) const |
virtual std::string | AsString (const uint16_t inDumpMaxBytes=0) const |
Static Public Member Functions | |
static AJAAncDataType | RecognizeThisAncillaryData (const AJAAncillaryData *pInAncData) |
static AJAAncillaryData_Timecode_Format | GetTimecodeFormatFromTimeBase (const AJATimeBase &inTimeBase) |
Get the timecode format that matches the input timebase. More... | |
Static Public Member Functions inherited from AJAAncillaryData | |
static uint16_t | AddEvenParity (const uint8_t inDataByte) |
static bool | GetAncPacketsFromVANCLine (const UWordSequence &inYUV16Line, const AncChannelSearchSelect inChanSelect, U16Packets &outRawPackets, U16Packet &outWordOffsets) |
Extracts whatever VANC packets are found inside the given 16-bit YUV line buffer. More... | |
static bool | Unpack8BitYCbCrToU16sVANCLine (const void *pInYUV8Line, U16Packet &outU16YUVLine, const uint32_t inNumPixels) |
Converts a single line of NTV2_FBF_8BIT_YCBCR data from the given source buffer into an ordered sequence of uint16_t values that contain the resulting 10-bit even-parity data. More... | |
static bool | Unpack8BitYCbCrToU16sVANCLineSD (const void *pInYUV8Line, UWordSequence &outU16YUVLine, const uint32_t inNumPixels) |
SD version of Unpack8BitYCbCrToU16sVANCLine. More... | |
static void | GetInstanceCounts (uint32_t &outConstructed, uint32_t &outDestructed) |
static uint32_t | GetNumActiveInstances (void) |
static uint32_t | GetNumConstructed (void) |
static uint32_t | GetNumDestructed (void) |
static void | ResetInstanceCounts (void) |
static std::string | DIDSIDToString (const uint8_t inDID, const uint8_t inSDID) |
static std::string | AuxPacketTypeToString (const uint8_t inAuxPktType) |
static bool | AuxPacketTypeIsValid (const uint8_t inAuxPktType) |
Protected Types | |
enum | { kTcFrameUnits = 0, kTcFrameTens = 1, kTcSecondUnits = 2, kTcSecondTens = 3, kTcMinuteUnits = 4, kTcMinuteTens = 5, kTcHourUnits = 6, kTcHourTens = 7, kNumTimeDigits = 8 } |
enum | { kBg1 = 0, kBg2 = 1, kBg3 = 2, kBg4 = 3, kBg5 = 4, kBg6 = 5, kBg7 = 6, kBg8 = 7, kNumBinaryGroups = 8 } |
Protected Types inherited from AJAAncillaryData | |
typedef std::vector< uint8_t > | ByteVector |
typedef ByteVector::size_type | ByteVectorIndex |
typedef ByteVector::const_iterator | ByteVectorConstIter |
Protected Member Functions | |
void | Init (void) |
Protected Member Functions inherited from AJAAncillaryData | |
void | Init (void) |
AJAStatus | AllocDataMemory (const uint32_t inNumBytes) |
AJAStatus | FreeDataMemory (void) |
virtual uint8_t | GetGUMPHeaderByte2 (void) const |
virtual uint8_t | GetGUMPHeaderByte3 (void) const |
Protected Attributes | |
uint8_t | m_timeDigits [kNumTimeDigits] |
uint8_t | m_binaryGroup [kNumBinaryGroups] |
Protected Attributes inherited from AJAAncillaryData | |
uint8_t | m_DID |
Official SMPTE ancillary packet ID (w/o parity) More... | |
uint8_t | m_SID |
Official SMPTE secondary ID (or DBN - w/o parity) More... | |
uint8_t | m_checksum |
My 8-bit checksum: DID + SID + DC + payload (w/o parity) [note: NOT the same as the 9-bit checksum in a SMPTE-291 packet!]. More... | |
AJAAncDataLoc | m_location |
Location of the ancillary data in the video stream (Y or C, HANC or VANC, etc.) More... | |
AJAAncDataCoding | m_coding |
Analog or digital data. More... | |
ByteVector | m_payload |
My payload data (DC = size) More... | |
bool | m_rcvDataValid |
This is set true (or not) by ParsePayloadData() More... | |
AJAAncDataType | m_ancType |
One of a known set of ancillary data types (or "Custom" if not identified) More... | |
AJAAncBufferFormat | m_bufferFmt |
My originating buffer format, if known. More... | |
uint32_t | m_frameID |
ID of my originating frame, if known. More... | |
uint64_t | m_userData |
User data (for client use) More... | |
uint8_t | m_auxType |
HDMI Aux Header Byte 0 (Packet Type) More... | |
uint8_t | m_auxHB1 |
HDMI Aux Header Byte 1 (Header Data) More... | |
uint8_t | m_auxHB2 |
HDMI Aux Header Byte 2 (Header Data) More... | |
Additional Inherited Members | |
Public Types inherited from AJAAncillaryData | |
typedef UWordSequence | U16Packet |
An ordered sequence of 10-bit packet words stored in uint16_t values. More... | |
typedef std::vector< U16Packet > | U16Packets |
An ordered sequence of zero or more U16Packet values. More... | |
Static Protected Member Functions inherited from AJAAncillaryData | |
static uint8_t | GetGUMPHeaderByte1 (void) |
This is the base class for the AJAAncillaryData_Timecode_ATC and AJAAncillaryData_Timecode_VITC classes, because they share the same "payload" data (i.e. timecode) and only differ in the transport (ancillary packets vs. "analog" coding).
Definition at line 36 of file ancillarydata_timecode.h.
|
protected |
Enumerator | |
---|---|
kTcFrameUnits | |
kTcFrameTens | |
kTcSecondUnits | |
kTcSecondTens | |
kTcMinuteUnits | |
kTcMinuteTens | |
kTcHourUnits | |
kTcHourTens | |
kNumTimeDigits |
Definition at line 269 of file ancillarydata_timecode.h.
|
protected |
Enumerator | |
---|---|
kBg1 | |
kBg2 | |
kBg3 | |
kBg4 | |
kBg5 | |
kBg6 | |
kBg7 | |
kBg8 | |
kNumBinaryGroups |
Definition at line 284 of file ancillarydata_timecode.h.
AJAAncillaryData_Timecode::AJAAncillaryData_Timecode | ( | ) |
Definition at line 15 of file ancillarydata_timecode.cpp.
AJAAncillaryData_Timecode::AJAAncillaryData_Timecode | ( | const AJAAncillaryData_Timecode & | inClone | ) |
Definition at line 22 of file ancillarydata_timecode.cpp.
AJAAncillaryData_Timecode::AJAAncillaryData_Timecode | ( | const AJAAncillaryData_Timecode * | pClone | ) |
Definition at line 30 of file ancillarydata_timecode.cpp.
AJAAncillaryData_Timecode::AJAAncillaryData_Timecode | ( | const AJAAncillaryData * | pData | ) |
Definition at line 39 of file ancillarydata_timecode.cpp.
|
inlinevirtual |
Definition at line 44 of file ancillarydata_timecode.h.
|
virtual |
Frees my allocated memory, if any, and resets my members to their default values.
Reimplemented from AJAAncillaryData.
Reimplemented in AJAAncillaryData_Timecode_ATC, and AJAAncillaryData_Timecode_VITC.
Definition at line 76 of file ancillarydata_timecode.cpp.
|
inlinevirtual |
Generate the payload data from the "local" ancillary data.
Reimplemented from AJAAncillaryData.
Reimplemented in AJAAncillaryData_Timecode_ATC, and AJAAncillaryData_Timecode_VITC.
Definition at line 69 of file ancillarydata_timecode.h.
|
virtual |
Answers with my current binary group flag (3 bits).
[out] | outBGFlag | Specifies the BG Flag value (only the least significant 3 bits are retained). |
[in] | inFormat | Specifies the timecode format associated with timecode (default is handled as 30-frame timecode). |
Definition at line 583 of file ancillarydata_timecode.cpp.
|
virtual |
Definition at line 267 of file ancillarydata_timecode.cpp.
|
virtual |
Definition at line 291 of file ancillarydata_timecode.cpp.
|
virtual |
Definition at line 480 of file ancillarydata_timecode.cpp.
|
virtual |
Definition at line 413 of file ancillarydata_timecode.cpp.
|
virtual |
Definition at line 343 of file ancillarydata_timecode.cpp.
|
virtual |
Answers with my current timecode "time" as individual hour, minute, second, and frame components (in decimal, not BCD digits).
[in] | inFormat | Specifies a valid AJAAncillaryData_Timecode_Format. |
[out] | outHours | Receives the hours value. |
[out] | outMinutes | Receives the minutes value. |
[out] | outSeconds | Receives the seconds value. |
[out] | outFrames | Receives the frame value. |
Definition at line 201 of file ancillarydata_timecode.cpp.
|
virtual |
Answers with my timecode "time" as an AJATimeCode.
[out] | outTimecode | Receives the timecode. |
[in] | inTimeBase | Specifies the time base (frame rate). |
Definition at line 235 of file ancillarydata_timecode.cpp.
|
static |
Get the timecode format that matches the input timebase.
[in] | inTimeBase | Specifies the time base (frame rate) associated with the specified timecode. |
Definition at line 621 of file ancillarydata_timecode.cpp.
|
virtual |
Answers with my current timecode "time" as discrete BCD digits.
[out] | outHourTens | Specifies the hours "tens" digit value. |
[out] | outHourOnes | Specifies the hours "ones" digit value. |
[out] | outMinTens | Specifies the minutes "tens" digit value. |
[out] | outMinOnes | Specifies the minutes "ones" digit value. |
[out] | outSecsTens | Specifies the seconds "tens" digit value. |
[out] | outSecsOnes | Specifies the seconds "ones" digit value. |
[out] | outFrameTens | Specifies the frame "tens" digit value. |
[out] | outFrameOnes | Specifies the frame "ones" digit value. |
Definition at line 148 of file ancillarydata_timecode.cpp.
|
virtual |
Answers with my current raw "time" hex values.
[in] | inDigitNum | Specifies the index (0-7) of the time digit of interest, in "transmission" order: 0 = 1st (frame units) digit, 1 = 2nd digit, ... 7 = last (hour tens) digit. |
[out] | outHexValue | Receives the hex value (least significant 4 bits) to be set. |
[in] | inMask | Optionally specifies which bits to receive: (1 = set bit to new value, 0 = retain current bit value). Defaults to 0x0F. |
Definition at line 115 of file ancillarydata_timecode.cpp.
|
protected |
Definition at line 46 of file ancillarydata_timecode.cpp.
AJAAncillaryData_Timecode & AJAAncillaryData_Timecode::operator= | ( | const AJAAncillaryData_Timecode & | inRHS | ) |
Assignment operator – replaces my contents with the right-hand-side value.
[in] | inRHS | The value to be assigned to me. |
Definition at line 58 of file ancillarydata_timecode.cpp.
|
virtual |
Parses out (interprets) the "local" ancillary data from my payload data.
Reimplemented from AJAAncillaryData.
Reimplemented in AJAAncillaryData_Timecode_ATC, and AJAAncillaryData_Timecode_VITC.
Definition at line 83 of file ancillarydata_timecode.cpp.
|
virtual |
Streams a human-readable representation of me to the given output stream.
inOutStream | Specifies the output stream. | |
[in] | inDetailed | Specify 'true' for a detailed representation; otherwise use 'false' for a brief one. |
Reimplemented from AJAAncillaryData.
Reimplemented in AJAAncillaryData_Timecode_ATC, and AJAAncillaryData_Timecode_VITC.
Definition at line 646 of file ancillarydata_timecode.cpp.
|
static |
[in] | pInAncData | A valid pointer to an AJAAncillaryData instance. |
Definition at line 91 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my binary group flag (3 bits).
[in] | inBGFlag | Specifies the BG Flag value (only the least significant 3 bits are retained). |
[in] | inFormat | Specifies the timecode format associated with timecode (default is handled as 30-frame timecode). |
Definition at line 508 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my raw "Binary Group" hex values.
[in] | digitNum | the index (0 - 7) of the Binary Group value in "transmission" order, i.e. 0 = 1st (BG1) digit, 1 = 2nd digit, ..., 7 = last (BG7) digit |
[in] | hexValue | the hex value (ls 4 bits) to be set/get |
Definition at line 255 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my binary group values.
[in] | bg8 | binary group values (only the ls 4 bits of each value are retained) - note that the BG order is reversed!) |
Definition at line 277 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my color frame flag.
[in] | bFlag | false = no relation between color frames and timecode values, true = timecode values are aligned with color frames (see SMPTE-12M). |
[in] | tcFmt | AJAAncillaryData_Timecode_Format associated with timecode (default is handled as 30-frame timecode). |
Definition at line 441 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my drop frame flag.
[in] | bFlag | false = non-dropframe format, true = drop frame |
[in] | tcFmt | AJAAncillaryData_Timecode_Format associated with timecode (default is handled as 30-frame timecode). |
Definition at line 372 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my FieldID flag.
[in] | bFlag | false = field 1 (0), true = field 2 (1) |
[in] | tcFmt | AJAAncillaryData_Timecode_Format associated with timecode (default is handled as 30-frame timecode). |
Definition at line 305 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my timecode "time" with hours, minutes, seconds, frames (in decimal, not BCD digits).
[in] | inFormat | Specifies a valid AJAAncillaryData_Timecode_Format. |
[in] | inHours | Specifies the hours value, which must be less than 24. |
[in] | inMinutes | Specifies the minutes value, which must be less than 60. |
[in] | inSeconds | Specifies the seconds value, which must be less than 60. |
[in] | inFrames | Specifies the frame value, which must be less than the frame rate. |
Definition at line 162 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my timecode "time" from an AJATimeCode.
[in] | inTimecode | Specifies the timecode. |
[in] | inTimeBase | Specifies the time base (frame rate) associated with the specified timecode. |
[in] | inIsDropFrame | Specify 'true' for dropframe; otherwise false. |
Definition at line 224 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my timecode "time" using discrete BCD digits.
[in] | inHourTens | Specifies the hours "tens" digit value. |
[in] | inHourOnes | Specifies the hours "ones" digit value. |
[in] | inMinTens | Specifies the minutes "tens" digit value. |
[in] | inMinOnes | Specifies the minutes "ones" digit value. |
[in] | inSecsTens | Specifies the seconds "tens" digit value. |
[in] | inSecsOnes | Specifies the seconds "ones" digit value. |
[in] | inFrameTens | Specifies the frame "tens" digit value. |
[in] | inFrameOnes | Specifies the frame "ones" digit value. |
Definition at line 127 of file ancillarydata_timecode.cpp.
|
virtual |
Sets my raw "time" hex values.
[in] | inDigitNum | Specifies the index (0-7) of time digits in "transmission" order: 0 = 1st (frame units) digit, 1 = 2nd digit, ... 7 = last (hour tens) digit. |
[in] | inHexValue | Specifies the hex value (least significant 4 bits) to be set. |
[in] | inMask | Optionally specifies which bits to set: (1 = set bit to new value, 0 = retain current bit value). Defaults to 0x0F. |
Definition at line 103 of file ancillarydata_timecode.cpp.
|
virtual |
Definition at line 680 of file ancillarydata_timecode.cpp.
|
protected |
Definition at line 304 of file ancillarydata_timecode.h.
|
protected |
Definition at line 303 of file ancillarydata_timecode.h.