inital commit
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
#ifndef SCE_MPEG_VIBUF_H
|
||||
#define SCE_MPEG_VIBUF_H
|
||||
|
||||
#include "typedefs.h"
|
||||
|
||||
#include "sce/libipu.h"
|
||||
|
||||
#define DMA_ID_REFE 0
|
||||
#define DMA_ID_NEXT 2
|
||||
#define DMA_ID_REF 3
|
||||
|
||||
#define VIBUF_ELM_SIZE 2048
|
||||
#define VIBUF_SIZE 256
|
||||
#define VIBUF_TS_SIZE (VIBUF_SIZE*2)
|
||||
|
||||
#define TAG_ADDR(i) ((u_int)DmaAddr(f->tag + i))
|
||||
#define DATA_ADDR(i) ((u_int)f->data + VIBUF_ELM_SIZE * (i))
|
||||
#define WRAP_ADDR(addr) ((u_int)(f->data) + (((u_int)(addr) - (u_int)(f->data)) % (VIBUF_ELM_SIZE * f->n)))
|
||||
#define IsInRegion(i,start,len,n) ( (0 <= (((i) + (n) - (start)) % (n))) && ((((i) + (n) - (start)) % (n)) < (len)))
|
||||
|
||||
extern inline int IsPtsInRegion(int tgt, int pos, int len, int size)
|
||||
{
|
||||
int tgt1 = (tgt + size - pos) % size;
|
||||
return tgt1 < len;
|
||||
}
|
||||
|
||||
typedef struct { // 0x18
|
||||
/* 0x00 */ long int pts;
|
||||
/* 0x08 */ long int dts;
|
||||
/* 0x10 */ int pos;
|
||||
/* 0x14 */ int len;
|
||||
} TimeStamp;
|
||||
|
||||
typedef struct { // 0x60
|
||||
/* 0x00 */ u_long128 *data;
|
||||
/* 0x04 */ u_long128 *tag;
|
||||
/* 0x08 */ int n;
|
||||
/* 0x0c */ int dmaStart;
|
||||
/* 0x10 */ int dmaN;
|
||||
/* 0x14 */ int readBytes;
|
||||
/* 0x18 */ int buffSize;
|
||||
/* 0x1c */ sceIpuDmaEnv env;
|
||||
/* 0x40 */ int sema;
|
||||
/* 0x44 */ int isActive;
|
||||
/* 0x48 */ long int totalBytes;
|
||||
/* 0x50 */ TimeStamp *ts;
|
||||
/* 0x54 */ int n_ts;
|
||||
/* 0x58 */ int count_ts;
|
||||
/* 0x5c */ int wt_ts;
|
||||
} ViBuf;
|
||||
|
||||
#endif // SCE_MPEG_VIBUF_H
|
||||
Reference in New Issue
Block a user