39 lines
847 B
C

#pragma once
#include "LinkedBlockingQueue.h"
typedef struct _QUEUED_DECODE_UNIT {
DECODE_UNIT decodeUnit;
LINKED_BLOCKING_QUEUE_ENTRY entry;
} QUEUED_DECODE_UNIT, *PQUEUED_DECODE_UNIT;
void freeQueuedDecodeUnit(PQUEUED_DECODE_UNIT qdu);
int getNextQueuedDecodeUnit(PQUEUED_DECODE_UNIT* qdu);
#pragma pack(push, 1)
#define FLAG_CONTAINS_PIC_DATA 0x1
#define FLAG_EOF 0x2
#define FLAG_SOF 0x4
typedef struct _NV_VIDEO_PACKET {
int streamPacketIndex;
int frameIndex;
char flags;
char reserved[3];
int reserved2;
} NV_VIDEO_PACKET, *PNV_VIDEO_PACKET;
#define FLAG_EXTENSION 0x10
#define FIXED_RTP_HEADER_SIZE 12
#define MAX_RTP_HEADER_SIZE 16
typedef struct _RTP_PACKET {
char header;
char packetType;
unsigned short sequenceNumber;
char reserved[8];
} RTP_PACKET, *PRTP_PACKET;
#pragma pack(pop)