12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- // libpress.h
- unit libpress;
- interface
- type
- // DecDCTvlc Table
- DECDCTTAB = array [0..34815] of word;
- DECDCTENV = packed record
- iq_y : array [0..63] of byte; // IQ (Y): zig-zag order
- iq_c : array [0..63] of byte; // IQ (Cb,Cr): zig-zag order
- dct : array [0..63] of smallint; // IDCT coef (reserved)
- end;
- PDECDCTENV = ^DECDCTENV;
- ENCSPUENV = packed record
- src : psmallint; // 16-bit strait PCM
- dest : psmallint; // PlayStation original waveform data
- work : psmallint; // scratch pad or NULL
- size : longint; // size (unit: byte) of source data
- loop_start : longint; // loop start point (unit: byte) of source data
- loop : byte; // whether loop or not
- byte_swap : byte; // source data is 16-bit big endian (1) / little endian (0)
- proceed : byte; // proceeding ? whole (0) / start (1) / cont. (2) / end (4)
- quality : byte; // quality ? middle (0) / high (1)
- end;
- PENCSPUENV = ^ENCSPUENV;
- DecDCTinCallbackFunc = procedure;
- const
- ENCSPU_ENCODE_ERROR = -1;
- ENCSPU_ENCODE_WHOLE = 0;
- ENCSPU_ENCODE_START = 1 shl 0;
- ENCSPU_ENCODE_CONTINUE = 1 shl 1;
- ENCSPU_ENCODE_END = 1 shl 2;
- ENCSPU_ENCODE_LOOP = 1;
- ENCSPU_ENCODE_NO_LOOP = 0;
- ENCSPU_ENCODE_ENDIAN_LITTLE = 0;
- ENCSPU_ENCODE_ENDIAN_BIG = 1;
- ENCSPU_ENCODE_MIDDLE_QULITY = 0;
- ENCSPU_ENCODE_HIGH_QULITY = 1;
- procedure DecDCTReset(mode: longint); external;
- function DecDCTGetEnv(env: PDECDCTENV): PDECDCTENV; external;
- function DecDCTPutEnv(env: PDECDCTENV): PDECDCTENV; external;
- function DecDCTBufSize(bs: pdword): longint; external;
- function DecDCTvlc(bs: pdword; buf: pdword): longint; external;
- function DecDCTvlc2(bs: pdword; buf: pdword; table: DECDCTTAB): longint; external;
- function DecDCTvlcSize(size: longint): longint; external;
- function DecDCTvlcSize2(size: longint): longint; external;
- procedure DecDCTvlcBuild(table: pword); external;
- procedure DecDCTin(buf: pdword; mode: longint); external;
- procedure DecDCTout(buf: pdword; size: longint); external;
- function DecDCTinSync(mode: longint): longint; external;
- function DecDCToutSync(mode: longint): longint; external;
- function DecDCTinCallback(func: DecDCTinCallbackFunc): longint; external;
- function DecDCToutCallback(func: DecDCTinCallbackFunc): longint; external;
- function EncSPU (env: PENCSPUENV): longint; external;
- function EncSPU2(env: PENCSPUENV): longint; external;
- implementation
- begin
- end.
|