NVIDIA DriveOS Linux NSR SDK API Reference

7.0.3.0 Release
nvavtp.h
Go to the documentation of this file.
1 /* Copyright (c) 2015-2016, NVIDIA CORPORATION. All rights reserved.
2  *
3  * NVIDIA CORPORATION and its licensors retain all intellectual property
4  * and proprietary rights in and to this software, related documentation
5  * and any modifications thereto. Any use, reproduction, disclosure or
6  * distribution of this software and related documentation without an express
7  * license agreement from NVIDIA CORPORATION is strictly prohibited.
8  */
15 #ifndef _NVAVTP_H_
16 #define _NVAVTP_H_
17 
18 
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
49 typedef unsigned char U8; // 8-bit
50 typedef unsigned short U16; // 16-bit
51 typedef unsigned int U32; // 32-bit
52 typedef unsigned long long U64; // 64-bit
53 typedef signed char S8;
54 typedef signed short S16;
55 typedef signed int S32;
56 typedef signed long long S64;
57 
58 
60 typedef enum tagNvAvtpSubHeaderType {
76 
78 typedef enum tagNvAvtpStatus {
92 
94 typedef enum tagNvAvtpBool {
100 
102 typedef struct __attribute__ ((packed)) tagNvAvtp1722Header {
108  U64 fsd:2;
127  U64 fsd2:32;
132 
134 typedef struct __attribute__ ((packed)) tagNvAvtp618836Fsd3Hdr {
151  U16 rsv:2;
174 
176 typedef struct __attribute__ ((packed)) tagNvAvtp618834Fsd3Hdr {
193  U16 rsv:2;
214 
216 typedef struct __attribute__ ((packed)) tagNvAvtpCvfFsd2Hdr {
224 
226 typedef struct __attribute__ ((packed)) tagNvAvtpCvfFsd3Hdr {
228  U8 rsv1:3;
231  U8 M:1;
233  U8 evt:4;
241 
242 typedef struct __attribute__ ((packed)) tagNvAvtpCvfH264PayloadHdr {
246  U8 nri:2;
252  U8 rsv2:1;
258 
260 typedef struct __attribute__ ((packed)) tagNvAvtp1722AAFFsd2 {
268 
270 typedef struct __attribute__ ((packed)) tagNvAvtp1722AAFFsd3Hdr {
271  U16 evt:4;
272  U16 sp:1;
276 
278 typedef struct tagNvAvtpEthernetHeader {
284  U8 vtag[4];
288 
289 typedef struct __attribute__ ((packed)) tagNvAvtpCRFHeader {
300  U8 pull:3;
306 
307 #define NVAVTP_ETH_INT_MAX 64
308 
310 typedef struct tagNvAvtpInputParams {
319 
321 typedef struct tagNvAvtp1722AAFParams {
330 
332 typedef struct tagNvAvtpCRFParams {
339 
341 #define NV_AVTP_ETHERNET_HEADER_SIZE sizeof(NvAvtpEthernetHeader)
342 #define NV_AVTP_ETHERNET_HEADER_WITHOUT_QTAG_SIZE (sizeof(NvAvtpEthernetHeader) - 4)
344 #define NV_AVTP_1722_HEADER_SIZE sizeof(NvAvtp1722Header)
346 #define NV_AVTP_CRF_HEADER_SIZE sizeof(NvAvtpCRFHeader)
348 #define NV_AVTP_61883_6_FSD3_HEADER_SIZE sizeof(NvAvtp618836Fsd3Hdr)
350 #define NV_AVTP_61883_4_FSD3_HEADER_SIZE sizeof(NvAvtp618834Fsd3Hdr)
352 #define NV_AVTP_1722_AAF_FSD3_HEADER_SIZE sizeof(NvAvtp1722AAFFsd3Hdr)
354 #define NV_AVTP_1722_61883_HEADER_SIZE 8
355 #define NV_AVTP_CVF_FSD3_HEADER_SIZE sizeof(NvAvtpCvfFsd3Hdr)
357 #define NV_AVTP_H264_PAYLOAD_HEADER_SIZE sizeof(NvAvtpH264PayloadHdr)
359 
360 #define NVAVTP_TSP_SIZE 188
361 #define NV_AVTP_MPEGTS_MAX_TS_PER_PKT 7
362 #define NV_AVTP_ETHER_TYPE_OFFSET 12
363 #define NVAVTP_ETH_INT_MAX 64
364 
365 typedef void *NvAvtpContextHandle;
366 
367 
368 
369 
380 NvAvtpInit(
381  NvAvtpInputParams *pNvAvtpInpParams,
382  NvAvtpContextHandle *phContext);
383 
384 
390  NvAvtpContextHandle hContext);
391 
392 
398  NvAvtpContextHandle hContext,
399  U8 *pPacket);
400 
407  NvAvtpContextHandle hContext,
408  U16 numSampleUnits);
409 
413 U32
415  NvAvtpContextHandle hContext);
416 
423  NvAvtpContextHandle hContext,
424  U8 *pPacket,
425  U8 *pDestAddr);
426 
433  NvAvtpContextHandle hContext,
434  U8 *pPacket,
435  U8 *pSrcAddr);
436 
444  NvAvtpContextHandle hContext,
445  U8 *pPacket,
446  U32 priority,
447  U32 vid);
448 
455  NvAvtpContextHandle hContext,
456  U8 *pPacket,
457  U8 sidValid);
458 
465  NvAvtpContextHandle hContext,
466  U8 *pPacket,
467  U8 *stream_id);
468 
474 NvAvtpContextHandle hContext,
475 U32 *pPtpTime);
476 
482  NvAvtpContextHandle hContext,
483  U8 *pPacket);
484 
492  NvAvtpContextHandle hContext,
493  U8 *pPacket,
494  U8 *pPayload,
495  U16 numSample);
496 
501 U32
503  NvAvtpContextHandle hContext,
504  U8 *pPacket);
505 
510 U8
512  NvAvtpContextHandle hContext,
513  U8 *pPacket);
514 
518 U64
520  NvAvtpContextHandle hContext,
521  U8 *pPacket);
522 
529  NvAvtpContextHandle hContext,
530  U8 *pPacket,
531  U32 *streamLength);
532 
539  NvAvtpContextHandle hContext,
540  U8 *pPacket,
541  U8 *pPayload);
542 
548  U8 *pPacket);
549 
556  NvAvtpContextHandle hContext,
557  U8 *pPacket,
558  NvAvtp1722AAFParams *pAvtp1722AAFParameters);
559 
566  NvAvtpContextHandle hContext,
567  U8 *pPacket);
568 
574  NvAvtpContextHandle hContext,
575  NvAvtp1722AAFParams *pAvtp1722AAFParameters);
576 
581  NvAvtpContextHandle hContext);
582 
588  NvAvtpContextHandle hContext,
589  U8 *pPacket);
590 
599  NvAvtpContextHandle hContext,
600  U8 *pPacket,
601  ENvAvtpSubHeaderType *peDataType);
602 
609  NvAvtpContextHandle hContext,
610  U8 *pPacket,
611  U32 *dataPayloadSize);
612 
619  NvAvtpContextHandle hContext,
620  U8 *pPacket,
621  U32 *dataPayloadSize);
622 
629  NvAvtpContextHandle hContext,
630  U8 *pPacket,
631  U32 *dataPayloadSize);
632 
639  NvAvtpContextHandle hContext,
640  U8 *pPacket,
641  NvAvtpCRFParams *pAvtpCRFParameters);
642 
645 #endif
646 
tagNvAvtp1722AAFParams::samplingRate
U32 samplingRate
Definition: nvavtp.h:325
NvAvtpEthernetHeader
struct tagNvAvtpEthernetHeader NvAvtpEthernetHeader
Defines the Ethernet header structure.
NvAvtpInputParams
struct tagNvAvtpInputParams NvAvtpInputParams
Specifies the AVTP input parameters structure.
tagNvAvtpStatus
tagNvAvtpStatus
Indicates results from an AVTP function.
Definition: nvavtp.h:78
tagNvAvtp618834Fsd3Hdr::sourcePacketHeader
U16 sourcePacketHeader
Holds the source packet header as defined in IEC 61883-1:2003.
Definition: nvavtp.h:197
ENvAvtpBool
enum tagNvAvtpBool ENvAvtpBool
Defines Boolean flags for true/false states.
NvAvtpSetStaticAvtpHeader
ENvAvtpStatus NvAvtpSetStaticAvtpHeader(NvAvtpContextHandle hContext, U8 *pPacket)
Sets the static header part of the AVTP header.
eNvAvtpSuccess
@ eNvAvtpSuccess
Indicates success.
Definition: nvavtp.h:80
S32
signed int S32
Definition: nvavtp.h:55
tagNvAvtpCvfFsd3Hdr::M
U8 M
The M field is defined on a format/format_subtype specific basis.
Definition: nvavtp.h:231
tagNvAvtpCvfH264PayloadHdr::forbidden_bit
U8 forbidden_bit
Holds forbidden_bit.
Definition: nvavtp.h:248
NvAvtpSetPacketSize
ENvAvtpStatus NvAvtpSetPacketSize(NvAvtpContextHandle hContext, U16 numSampleUnits)
Sets the AVTP packet size (header + payload) based on the number of samples to be sent per packet.
tagNvAvtpCRFParams
Defines the CRF input parameters structure.
Definition: nvavtp.h:332
tagNvAvtp618836Fsd3Hdr::syAppControl
U16 syAppControl
Holds application-specific information.
Definition: nvavtp.h:140
tagNvAvtpCRFHeader::sequenceNum
U8 sequenceNum
Definition: nvavtp.h:296
tagNvAvtpCRFParams::type
U8 type
Definition: nvavtp.h:333
U16
unsigned short U16
Definition: nvavtp.h:50
tagNvAvtpCvfFsd3Hdr::reserved2
U16 reserved2
Reserved temporarily as the 1722 stream contains 4 extra bytes.
Definition: nvavtp.h:237
ENvAvtpSubHeaderType
enum tagNvAvtpSubHeaderType ENvAvtpSubHeaderType
Defines AVTP sub-header types.
eNvMpegts
@ eNvMpegts
Specifies IEC 61883-4 MPEG2-TS data transmission.
Definition: nvavtp.h:65
tagNvAvtp1722Header::timestampValid
U64 timestampValid
Holds a flag that indicates the validity of the AVTP timestamp field time value.
Definition: nvavtp.h:106
eNvRawVideo
@ eNvRawVideo
Specifies IEC 61883-8 61883-8 transmission of ITU-R BT.601-style digital video data (raw video....
Definition: nvavtp.h:72
tagNvAvtpCvfH264PayloadHdr
Definition: nvavtp.h:242
tagNvAvtp618836Fsd3Hdr::packetChannel
U16 packetChannel
Holds the channel as specified in IEEE standard 1394-2008.
Definition: nvavtp.h:136
NvAvtpGetCvfDataPayloadSize
ENvAvtpStatus NvAvtpGetCvfDataPayloadSize(NvAvtpContextHandle hContext, U8 *pPacket, U32 *dataPayloadSize)
Gets the payload size of the AVTP H264 packet.
tagNvAvtpCvfFsd2Hdr
Holds the AVTP CVF header structure fsd2.
Definition: nvavtp.h:216
tagNvAvtpEthernetHeader::vtag
U8 vtag[4]
Holds the 802.1 Qtag field.
Definition: nvavtp.h:284
tagNvAvtp618836Fsd3Hdr::sourceId
U16 sourceId
Holds the source identifier as specified in IEC 61883-1.
Definition: nvavtp.h:145
tagNvAvtpCvfH264PayloadHdr::start_bit
U8 start_bit
Indicates first packet of a NALU.
Definition: nvavtp.h:256
tagNvAvtp618834Fsd3Hdr::reserved1
U16 reserved1
Holds the CIP header 2nd quadlet indicator defined in IEC 61883-1.
Definition: nvavtp.h:209
U32
unsigned int U32
Definition: nvavtp.h:51
tagNvAvtpCvfFsd3Hdr
Holds the AVTP CVF header structure.
Definition: nvavtp.h:226
tagNvAvtpCvfH264PayloadHdr::nri
U8 nri
Holds the nal_ref_idc.
Definition: nvavtp.h:246
NvAvtpInit
ENvAvtpStatus NvAvtpInit(NvAvtpInputParams *pNvAvtpInpParams, NvAvtpContextHandle *phContext)
Initializes prerequisites to start AVB communication, This function performs the following tasks:
tagNvAvtp1722AAFParams::sparseTimestamp
ENvAvtpBool sparseTimestamp
Definition: nvavtp.h:327
tagNvAvtpCvfFsd2Hdr::format_subtype
U64 format_subtype
Holds the subtype of cvf.
Definition: nvavtp.h:220
tagNvAvtpCRFParams::frequency
U32 frequency
Definition: nvavtp.h:336
tagNvAvtpCvfFsd2Hdr::format
U64 format
Identifies compressed video payload format.
Definition: nvavtp.h:218
tagNvAvtp618834Fsd3Hdr::sourceId
U16 sourceId
Holds the source identifier as specified in IEC 61883-1.
Definition: nvavtp.h:187
NvAvtpParseAAFHeaders
ENvAvtpStatus NvAvtpParseAAFHeaders(NvAvtpContextHandle hContext, U8 *pPacket)
Parses the AVTP AAF headers and populates the AAF parameter structure specified with hContext.
tagNvAvtp618834Fsd3Hdr::formatDependentField
U32 formatDependentField
Holds the FDF as defined in in IEC 61883-1:2003.
Definition: nvavtp.h:212
tagNvAvtp618836Fsd3Hdr::fractionNumber
U16 fractionNumber
Holds the fraction number as defined in IEC 61883-1.
Definition: nvavtp.h:160
eNvAvtpTrue
@ eNvAvtpTrue
Indicates true.
Definition: nvavtp.h:98
S64
signed long long S64
Definition: nvavtp.h:56
tagNvAvtpCvfH264PayloadHdr::nalu_type
U8 nalu_type
Holds NALU type.
Definition: nvavtp.h:250
eNvAvtpFalse
@ eNvAvtpFalse
Indicates false.
Definition: nvavtp.h:96
tagNvAvtp1722AAFFsd3Hdr
Defines the 1722 AVTP audio format header.
Definition: nvavtp.h:270
tagNvAvtp618834Fsd3Hdr::rsv
U16 rsv
Reserved as defined in IEC 61883-1:2003.
Definition: nvavtp.h:193
eNvCRF
@ eNvCRF
Specifies 1722 AVTP clock reference frame.
Definition: nvavtp.h:69
NvAvtpExtractDataPayload
ENvAvtpStatus NvAvtpExtractDataPayload(NvAvtpContextHandle hContext, U8 *pPacket, U8 *pPayload)
Gets the data payload from the AVTP packet.
tagNvAvtp1722AAFParams::format
U8 format
Definition: nvavtp.h:322
tagNvAvtpCRFHeader::reservedBit
U8 reservedBit
Definition: nvavtp.h:292
tagNvAvtp1722Header::sequenceNum
U64 sequenceNum
Holds the sequence of the AVTPDUs in a stream by the talker.
Definition: nvavtp.h:116
tagNvAvtp1722Header::streamidValid
U64 streamidValid
Holds a flag that indicates whether the 64-bit stream_id contains a valid StreamID.
Definition: nvavtp.h:114
NvAvtp1722AAFFsd2
struct tagNvAvtp1722AAFFsd2 NvAvtp1722AAFFsd2
Defines the 1722 AVTP audio format fsd2.
tagNvAvtp1722AAFFsd3Hdr::reserved2
U16 reserved2
Definition: nvavtp.h:274
NvAvtpGetStreamId
U64 NvAvtpGetStreamId(NvAvtpContextHandle hContext, U8 *pPacket)
Gets the stream id in the 1722 header.
tagNvAvtp618836Fsd3Hdr::dataBlockSize
U16 dataBlockSize
Holds data block size in quadlets as specified in IEC 61883-1:2003.
Definition: nvavtp.h:149
eNvAvtpUnsupported
@ eNvAvtpUnsupported
Indicates an unsupported setting.
Definition: nvavtp.h:88
tagNvAvtpCvfH264PayloadHdr::rsv2
U8 rsv2
Reserved as defined in IEC 1722 CVF.
Definition: nvavtp.h:252
tagNvAvtp618834Fsd3Hdr::dataBlockSize
U16 dataBlockSize
Holds the data block size in quadlets as specified in IEC 61883-1:2003.
Definition: nvavtp.h:191
tagNvAvtpCRFHeader::version
U8 version
Definition: nvavtp.h:294
tagNvAvtp618836Fsd3Hdr::sourcePacketHeader
U16 sourcePacketHeader
Holds the source packet header as defined in IEC 61883-1:2003.
Definition: nvavtp.h:155
tagNvAvtp618834Fsd3Hdr::formatId
U16 formatId
Holds the format ID as defined in IEC 61883-1:2003.
Definition: nvavtp.h:207
tagNvAvtp1722Header::fsd
U64 fsd
Reserved for use by AVTP gateways.
Definition: nvavtp.h:108
tagNvAvtp1722AAFParams::channelsPerFrame
U16 channelsPerFrame
Definition: nvavtp.h:324
tagNvAvtp1722AAFFsd2::channelsPerFrame_H2
U16 channelsPerFrame_H2
Definition: nvavtp.h:262
NvAvtpCRFParams
struct tagNvAvtpCRFParams NvAvtpCRFParams
Defines the CRF input parameters structure.
tagNvAvtpCvfH264PayloadHdr::end_bit
U8 end_bit
Indicates last packet of a NALU.
Definition: nvavtp.h:254
tagNvAvtpCRFHeader::baseFrequencyLowBits
U16 baseFrequencyLowBits
Definition: nvavtp.h:302
NvAvtpGetSequenceNum
U8 NvAvtpGetSequenceNum(NvAvtpContextHandle hContext, U8 *pPacket)
Gets the sequence number in the 1722 header.
eNvCvf
@ eNvCvf
Specifies 1722 CVF format.
Definition: nvavtp.h:74
tagNvAvtp1722Header::fsd1
U64 fsd1
Reserved for future use in stream data of AVTPDU headers.
Definition: nvavtp.h:121
tagNvAvtpCRFHeader::CRFType
U8 CRFType
Definition: nvavtp.h:297
eNvAudio
@ eNvAudio
Specifies IEC 61883-6 audio and music data transmission protocol (uncompressed audio).
Definition: nvavtp.h:63
tagNvAvtpCvfFsd3Hdr::reserved3
U16 reserved3
Reserved temporarily as the 1722 stream contains 4 extra bytes.
Definition: nvavtp.h:239
tagNvAvtp1722AAFFsd2::channelsPerFrame_L8
U16 channelsPerFrame_L8
Definition: nvavtp.h:265
tagNvAvtpCvfFsd3Hdr::evt
U8 evt
Reserved for upper level protocols to indicate events in the stream.
Definition: nvavtp.h:233
NvAvtpH264PayloadHdr
struct tagNvAvtpCvfH264PayloadHdr NvAvtpH264PayloadHdr
tagNvAvtp1722Header::streamId
U64 streamId
Holds the ID of the stream.
Definition: nvavtp.h:123
tagNvAvtp618834Fsd3Hdr::formatTag
U16 formatTag
Holds the format specified by IEEE Std 1394-2008.
Definition: nvavtp.h:180
tagNvAvtpCRFHeader::mediaClockRestart
U8 mediaClockRestart
Definition: nvavtp.h:293
NvAvtpDeinit
ENvAvtpStatus NvAvtpDeinit(NvAvtpContextHandle hContext)
Deinitializes AVB initializations and destroys the AVB context structure instance.
NvAvtpFillDataPayload
ENvAvtpStatus NvAvtpFillDataPayload(NvAvtpContextHandle hContext, U8 *pPacket, U8 *pPayload, U16 numSample)
Sets the data payload in the AVTP packet.
tagNvAvtp618836Fsd3Hdr::reserved0
U16 reserved0
Holds the CIP header 1st quadlet as defined in IEC 61883-1.
Definition: nvavtp.h:147
NvAvtpGetTimeStamp
U32 NvAvtpGetTimeStamp(NvAvtpContextHandle hContext, U8 *pPacket)
Gets the timestamp in the 1722 header.
tagNvAvtp1722Header::subType
U64 subType
Holds the protocol being carried by AVTP, for example, IEC 61883.
Definition: nvavtp.h:104
NvAvtpGetPacketSize
U32 NvAvtpGetPacketSize(NvAvtpContextHandle hContext)
Gets the AVTP packet size required for the header and payload.
NvAvtpGetCRFParams
ENvAvtpStatus NvAvtpGetCRFParams(NvAvtpContextHandle hContext, U8 *pPacket, NvAvtpCRFParams *pAvtpCRFParameters)
Gets the recorded CRF parameters from the context.
tagNvAvtp618836Fsd3Hdr::syt
U16 syt
Holds synchronization timing as defined in IEC 61883-1.
Definition: nvavtp.h:172
tagNvAvtpCRFHeader::timingUncertain
U8 timingUncertain
Definition: nvavtp.h:290
NvAvtpSetStreamID
ENvAvtpStatus NvAvtpSetStreamID(NvAvtpContextHandle hContext, U8 *pPacket, U8 *stream_id)
Sets the stream ID in the packet header.
tagNvAvtpInputParams::interface
char interface[NVAVTP_ETH_INT_MAX]
Holds the name of the Ethernet interface in string format.
Definition: nvavtp.h:312
tagNvAvtp1722Header::version
U64 version
Holds the version of AVTP for which a particular AVTPDU is formatted.
Definition: nvavtp.h:112
tagNvAvtp1722AAFFsd2::reserved
U16 reserved
Definition: nvavtp.h:263
NvAvtpSetStaticAAFHeader
ENvAvtpStatus NvAvtpSetStaticAAFHeader(NvAvtpContextHandle hContext, U8 *pPacket)
Sets the static header part of the AVTP header.
tagNvAvtp618834Fsd3Hdr::reserved0
U16 reserved0
Holds the CIP header 1st quadlet indicator defined in IEC 61883-1.
Definition: nvavtp.h:189
NvAvtpSetDestAdd
ENvAvtpStatus NvAvtpSetDestAdd(NvAvtpContextHandle hContext, U8 *pPacket, U8 *pDestAddr)
Sets the Destination MAC Address in the packet header.
tagNvAvtp1722Header::fsd2
U64 fsd2
Reserved for use by AVTP gateways.
Definition: nvavtp.h:127
tagNvAvtp618834Fsd3Hdr::syAppControl
U16 syAppControl
Holds the application-specific data.
Definition: nvavtp.h:182
tagNvAvtpCRFParams::streamID
U64 streamID
Definition: nvavtp.h:337
eNvAvtpInvalidParam
@ eNvAvtpInvalidParam
Indicates an invalid entry.
Definition: nvavtp.h:90
tagNvAvtpSubHeaderType
tagNvAvtpSubHeaderType
Defines AVTP sub-header types.
Definition: nvavtp.h:60
NvAvtpCRFHeader
struct tagNvAvtpCRFHeader NvAvtpCRFHeader
eNvAAF
@ eNvAAF
Specifies 1722 AVTP audio format.
Definition: nvavtp.h:67
tagNvAvtpInputParams
Specifies the AVTP input parameters structure.
Definition: nvavtp.h:310
tagNvAvtpEthernetHeader::destAddr
U8 destAddr[6]
Holds the Ethernet address of the destination AVB endpoint.
Definition: nvavtp.h:280
NVAVTP_ETH_INT_MAX
#define NVAVTP_ETH_INT_MAX
Definition: nvavtp.h:363
tagNvAvtp1722AAFFsd3Hdr::sp
U16 sp
Definition: nvavtp.h:272
tagNvAvtp1722AAFParams
Defines the AVTP AAF input parameter structure.
Definition: nvavtp.h:321
tagNvAvtpCRFHeader::streamIDValid
U8 streamIDValid
Definition: nvavtp.h:295
NvAvtp1722Header
struct tagNvAvtp1722Header NvAvtp1722Header
Defines the AVTP 1722 header structure.
S8
signed char S8
Definition: nvavtp.h:53
NvAvtp1722AAFFsd3Hdr
struct tagNvAvtp1722AAFFsd3Hdr NvAvtp1722AAFFsd3Hdr
Defines the 1722 AVTP audio format header.
tagNvAvtp618834Fsd3Hdr::quadletPaddingCount
U16 quadletPaddingCount
Holds the quadlet padding count as defined in IEC 61883-1:2003.
Definition: nvavtp.h:199
NvAvtpContextHandle
void * NvAvtpContextHandle
Definition: nvavtp.h:365
NvAvtpSetQTagFields
ENvAvtpStatus NvAvtpSetQTagFields(NvAvtpContextHandle hContext, U8 *pPacket, U32 priority, U32 vid)
Sets the QTag fields of the AVTP header.
NvAvtpCvfFsd2Hdr
struct tagNvAvtpCvfFsd2Hdr NvAvtpCvfFsd2Hdr
Holds the AVTP CVF header structure fsd2.
tagNvAvtp618836Fsd3Hdr::dataBlockContinuity
U16 dataBlockContinuity
Holds DBC as defined in IEC 61883-1:2003, as the sequence number of the first data block in AVTPDU.
Definition: nvavtp.h:163
tagNvAvtp618836Fsd3Hdr::formatDependentField
U16 formatDependentField
Holds FDF as defined in in IEC 61883-1:2003.
Definition: nvavtp.h:170
NvAvtp618834Fsd3Hdr
struct tagNvAvtp618834Fsd3Hdr NvAvtp618834Fsd3Hdr
Holds the AVTP 61883-4 header structure.
tagNvAvtp618836Fsd3Hdr::reserved1
U16 reserved1
Holds the CIP header 2nd quadlet indicator defined in IEC 61883-1.
Definition: nvavtp.h:167
tagNvAvtpEthernetHeader::etherType
U8 etherType[2]
Holds the AVTP EtherType (0x22F0).
Definition: nvavtp.h:286
tagNvAvtp1722AAFFsd3Hdr::evt
U16 evt
Definition: nvavtp.h:271
U64
unsigned long long U64
Definition: nvavtp.h:52
tagNvAvtp618834Fsd3Hdr::packetTcode
U16 packetTcode
Holds the type code as specified in IEEE Std 1394-2008.
Definition: nvavtp.h:185
NvAvtpGetCurrentGptpTimeStamp
ENvAvtpStatus NvAvtpGetCurrentGptpTimeStamp(NvAvtpContextHandle hContext, U32 *pPtpTime)
Gets the current time from PHC.
ENvAvtpStatus
enum tagNvAvtpStatus ENvAvtpStatus
Indicates results from an AVTP function.
tagNvAvtpCvfH264PayloadHdr::payload_type
U8 payload_type
Holds the h264 Data payload format type.
Definition: nvavtp.h:244
NvAvtpSetDynamicAvtpHeader
ENvAvtpStatus NvAvtpSetDynamicAvtpHeader(NvAvtpContextHandle hContext, U8 *pPacket)
Sets the dynamic part of the packet header.
NvAvtpSetSIDValid
ENvAvtpStatus NvAvtpSetSIDValid(NvAvtpContextHandle hContext, U8 *pPacket, U8 sidValid)
Sets Stream ID validity.
NvAvtpParseAvtpPacket
ENvAvtpStatus NvAvtpParseAvtpPacket(NvAvtpContextHandle hContext, U8 *pPacket, ENvAvtpSubHeaderType *peDataType)
Parses the AVTP packet and populates the header offsets specified with hContext.
NvAvtpCvfFsd3Hdr
struct tagNvAvtpCvfFsd3Hdr NvAvtpCvfFsd3Hdr
Holds the AVTP CVF header structure.
tagNvAvtpCRFParams::dataLength
U32 dataLength
Definition: nvavtp.h:334
NvAvtpSetSrcAdd
ENvAvtpStatus NvAvtpSetSrcAdd(NvAvtpContextHandle hContext, U8 *pPacket, U8 *pSrcAddr)
Sets the Source MAC Address in the packet header.
NvAvtp618836Fsd3Hdr
struct tagNvAvtp618836Fsd3Hdr NvAvtp618836Fsd3Hdr
Defines the AVTP 61883-6 header structure.
tagNvAvtp1722AAFFsd2::bitDepth
U16 bitDepth
Definition: nvavtp.h:266
tagNvAvtpCRFHeader::baseFrequencyMidBits
U8 baseFrequencyMidBits
Definition: nvavtp.h:301
tagNvAvtp1722Header::avtpTimestamp
U64 avtpTimestamp
Holds the AVTP presentation time in nanoseconds.
Definition: nvavtp.h:125
tagNvAvtp1722AAFParams::bitDepth
U32 bitDepth
Definition: nvavtp.h:326
tagNvAvtpBool
tagNvAvtpBool
Defines Boolean flags for true/false states.
Definition: nvavtp.h:94
tagNvAvtp618836Fsd3Hdr::packetTcode
U16 packetTcode
Holds type code as specified in IEEE standard 1394-2008.
Definition: nvavtp.h:143
tagNvAvtpCvfFsd3Hdr::rsv1
U8 rsv1
Reserved as defined in IEC 1722 CVF.
Definition: nvavtp.h:228
tagNvAvtp618836Fsd3Hdr::formatTag
U16 formatTag
Holds the format specified by IEEE standard 1394-2008.
Definition: nvavtp.h:138
tagNvAvtp1722Header
Defines the AVTP 1722 header structure.
Definition: nvavtp.h:102
tagNvAvtp1722AAFFsd2
Defines the 1722 AVTP audio format fsd2.
Definition: nvavtp.h:260
tagNvAvtpCRFParams::timestampInterval
U16 timestampInterval
Definition: nvavtp.h:335
tagNvAvtpInputParams::eDataType
ENvAvtpSubHeaderType eDataType
Indicates the header type.
Definition: nvavtp.h:317
tagNvAvtpEthernetHeader
Defines the Ethernet header structure.
Definition: nvavtp.h:278
eNvAvtpInvalidPointer
@ eNvAvtpInvalidPointer
Indicates a null pointer argument.
Definition: nvavtp.h:84
tagNvAvtpCRFHeader::timestampInterval
U16 timestampInterval
Definition: nvavtp.h:304
tagNvAvtp618836Fsd3Hdr::quadletPaddingCount
U16 quadletPaddingCount
Holds the quadlet padding count as defined in IEC 61883-1:2003.
Definition: nvavtp.h:157
tagNvAvtp618834Fsd3Hdr::packetChannel
U16 packetChannel
Holds the channel as specified in IEEE Std 1394-2008.
Definition: nvavtp.h:178
tagNvAvtpCRFHeader::streamID
U64 streamID
Definition: nvavtp.h:298
tagNvAvtp1722AAFFsd2::format
U16 format
Definition: nvavtp.h:261
tagNvAvtp1722Header::timestampUncertain
U64 timestampUncertain
Holds a flag that indicates the timestamps may not be globally synchronized with the network clock.
Definition: nvavtp.h:119
NvAvtpIs1722Packet
ENvAvtpBool NvAvtpIs1722Packet(U8 *pPacket)
Determines whether the Ethernet packet is an AVTP 1722 packet.
NvAvtpSetAAFDefaultParams
ENvAvtpStatus NvAvtpSetAAFDefaultParams(NvAvtpContextHandle hContext)
Sets the default AAF parameters into the context.
tagNvAvtpCRFHeader::CRFDataLength
U16 CRFDataLength
Definition: nvavtp.h:303
tagNvAvtp618836Fsd3Hdr
Defines the AVTP 61883-6 header structure.
Definition: nvavtp.h:134
eNvAvtpFail
@ eNvAvtpFail
Indicates failure.
Definition: nvavtp.h:82
tagNvAvtp1722AAFFsd3Hdr::reserved1
U16 reserved1
Definition: nvavtp.h:273
S16
signed short S16
Definition: nvavtp.h:54
tagNvAvtpInputParams::bAvtpDepacketization
ENvAvtpBool bAvtpDepacketization
Indicates whether the library is being used for packetization or depacketization.
Definition: nvavtp.h:315
tagNvAvtpEthernetHeader::srcAddr
U8 srcAddr[6]
Holds the Ethernet address of the source AVB endpoint.
Definition: nvavtp.h:282
NvAvtp1722AAFParams
struct tagNvAvtp1722AAFParams NvAvtp1722AAFParams
Defines the AVTP AAF input parameter structure.
NvAvtpGetStreamLength
ENvAvtpStatus NvAvtpGetStreamLength(NvAvtpContextHandle hContext, U8 *pPacket, U32 *streamLength)
Gets the length of the data payload in the packet.
NvAvtpGetMpegtsDataPayloadSize
ENvAvtpStatus NvAvtpGetMpegtsDataPayloadSize(NvAvtpContextHandle hContext, U8 *pPacket, U32 *dataPayloadSize)
Gets the payload size of the AVTP MPEGTS packet.
tagNvAvtp618834Fsd3Hdr::dataBlockContinuity
U16 dataBlockContinuity
Holds the DBC as defined in IEC 61883-1:2003.
Definition: nvavtp.h:205
tagNvAvtp1722AAFParams::bytesPerSample
U8 bytesPerSample
Definition: nvavtp.h:328
tagNvAvtpCRFHeader::baseFrequencyHighBits
U8 baseFrequencyHighBits
Definition: nvavtp.h:299
tagNvAvtpCvfFsd3Hdr::reserved1
U8 reserved1
Reserved as defined in IEC 1722 CVF.
Definition: nvavtp.h:235
NvAvtpGetAudioDataPayloadSize
ENvAvtpStatus NvAvtpGetAudioDataPayloadSize(NvAvtpContextHandle hContext, U8 *pPacket, U32 *dataPayloadSize)
Gets the payload size of the AVTP audio packet.
tagNvAvtp1722AAFFsd2::nominalSampleRate
U16 nominalSampleRate
Definition: nvavtp.h:264
tagNvAvtpCRFHeader
Definition: nvavtp.h:289
tagNvAvtp618834Fsd3Hdr::fractionNumber
U16 fractionNumber
Holds the fraction number as defined in IEC 61883-1.
Definition: nvavtp.h:202
NvAvtpSetAAFParams
ENvAvtpStatus NvAvtpSetAAFParams(NvAvtpContextHandle hContext, NvAvtp1722AAFParams *pAvtp1722AAFParameters)
Sets the AAF parameters into the context.
tagNvAvtp618834Fsd3Hdr
Holds the AVTP 61883-4 header structure.
Definition: nvavtp.h:176
eNvAvtpAllocError
@ eNvAvtpAllocError
Indicates a memory allocation error.
Definition: nvavtp.h:86
tagNvAvtp1722AAFParams::bitFormat
U32 bitFormat
Definition: nvavtp.h:323
tagNvAvtpCRFHeader::clockSync
U8 clockSync
Definition: nvavtp.h:291
tagNvAvtp618836Fsd3Hdr::rsv
U16 rsv
Reserved as defined in IEC 61883-1:2003.
Definition: nvavtp.h:151
tagNvAvtpCvfFsd2Hdr::reserved
U64 reserved
Reserved for use by AVTP gateways.
Definition: nvavtp.h:222
U8
unsigned char U8
Definition: nvavtp.h:49
NvAvtpGetAAFParams
ENvAvtpStatus NvAvtpGetAAFParams(NvAvtpContextHandle hContext, U8 *pPacket, NvAvtp1722AAFParams *pAvtp1722AAFParameters)
Gets the recorded AAF parameters from context.
tagNvAvtp1722Header::mediaClockRestart
U64 mediaClockRestart
Holds the change in the source of the media clock.
Definition: nvavtp.h:110
tagNvAvtpCRFHeader::pull
U8 pull
Definition: nvavtp.h:300
tagNvAvtp1722Header::streamDataLength
U64 streamDataLength
Holds the unsigned count of the AVTPDU of the stream's AVTPDU in octets.
Definition: nvavtp.h:130
tagNvAvtp618836Fsd3Hdr::formatId
U16 formatId
Holds the format ID as defined in IEC 61883-1:2003.
Definition: nvavtp.h:165