// avcstrm.h
typedef struct _AVCSTRM_FORMAT_INFO {
ULONG SizeOfThisBlock;
AVCSTRM_FORMAT AVCStrmFormat;
CIP_HDR1 cipHdr1;
CIP_HDR2_SYT cipHdr2;
ULONG SrcPacketsPerFrame;
ULONG FrameSize;
ULONG NumOfRcvBuffers;
ULONG NumOfXmtBuffers;
DWORD OptionFlags;
ULONG AvgTimePerFrame;
ULONG BlockPeriod;
ULONG Reserved[4];
} AVCSTRM_FORMAT_INFO, *PAVCSTRM_FORMAT_INFO;
View the official Windows Driver Kit DDI referenceNo description available.
The AVCSTRM_FORMAT_INFO structure is used to describe a data stream.
SizeOfThisBlockSpecifies the size of this data structure, in bytes.
AVCStrmFormatSpecifies one of the AV/C streaming subunit formats defined in AVCSTRM_FORMAT.
cipHdr1Specifies the definition of the first quadlet of the two quadlet CIP header.
cipHdr2Specifies the definition of the second quadlet of the two quadlet CIP header.
SrcPacketsPerFrameSpecifies the number of source packets to fill a data frame.
FrameSizeSpecifies the data buffer size.
NumOfRcvBuffersSpecifies the number of receiving buffers.
NumOfXmtBuffersSpecifies the number of transmitting buffers.
OptionFlagsSpecifies any option flags. Currently, only one flag is defined:
| Flag | Description |
|---|---|
| AVCSTRM_FORMAT_OPTION_STRIP_SPH | Strip the SPH (source packet header) from the 192-byte data packet for MPEG2TS. |
AvgTimePerFrameSpecifies the average time per frame in 100 nanosecond units.
BlockPeriodSpecifies the block period. This is used for transmit only. It is calculated from 1/ BlockPerSecond 1,000,000,000 picoseconds. For SDDV, it transmits one block per 1394 cycle. 1/(29.97 250) * 1,000,000,000,000 = 133,466,800 picoseconds.
ReservedReserved. Do not use. Must be set to 0.