hedgewars/uVideoRec.pas
changeset 7538 2d6e69b392cb
parent 7392 bc3306c59a08
child 7540 cc6c656f70b5
equal deleted inserted replaced
7536:e1b80da69991 7538:2d6e69b392cb
    25 interface
    25 interface
    26 implementation
    26 implementation
    27 end.
    27 end.
    28 {$ELSE}
    28 {$ELSE}
    29 
    29 
    30 {$IFDEF UNIX}
    30 {$IFNDEF WIN32}
    31     {$LINKLIB avwrapper}
    31     {$LINKLIB avwrapper}
    32     {$LINKLIB avutil}
    32     {$LINKLIB avutil}
    33     {$LINKLIB avcodec}
    33     {$LINKLIB avcodec}
    34     {$LINKLIB avformat}
    34     {$LINKLIB avformat}
    35 {$ENDIF}
    35 {$ENDIF}
    51 
    51 
    52 implementation
    52 implementation
    53 
    53 
    54 uses uVariables, uUtils, GLunit, SDLh, SysUtils, uIO, uMisc, uTypes;
    54 uses uVariables, uUtils, GLunit, SDLh, SysUtils, uIO, uMisc, uTypes;
    55 
    55 
    56 {$IFDEF WIN32}
    56 const AVWrapperLibName = {$IFDEF WIN32}'libavwrapper.dll'{$ELSE}''{$ENDIF};
    57 const AVWrapperLibName = 'libavwrapper.dll';
       
    58 {$ENDIF}
       
    59 
    57 
    60 type TAddFileLogRaw = procedure (s: pchar); cdecl;
    58 type TAddFileLogRaw = procedure (s: pchar); cdecl;
    61 
    59 
    62 {$IFDEF WIN32}
       
    63 procedure AVWrapper_Init(
    60 procedure AVWrapper_Init(
    64               AddLog: TAddFileLogRaw;
    61               AddLog: TAddFileLogRaw;
    65               filename, desc, soundFile, format, vcodec, acodec: PChar;
    62               filename, desc, soundFile, format, vcodec, acodec: PChar;
    66               width, height, framerateNum, framerateDen, vquality: LongInt); cdecl; external AVWrapperLibName;
    63               width, height, framerateNum, framerateDen, vquality: LongInt); cdecl; external AVWrapperLibName;
    67 procedure AVWrapper_Close; cdecl; external AVWrapperLibName;
    64 procedure AVWrapper_Close; cdecl; external AVWrapperLibName;
    68 procedure AVWrapper_WriteFrame( pY, pCb, pCr: PByte ); cdecl; external AVWrapperLibName;
    65 procedure AVWrapper_WriteFrame( pY, pCb, pCr: PByte ); cdecl; external AVWrapperLibName;
    69 {$ELSE}
       
    70 procedure AVWrapper_Init(
       
    71               AddLog: TAddFileLogRaw;
       
    72               filename, desc, soundFile, format, vcodec, acodec: PChar;
       
    73               width, height, framerateNum, framerateDen, vquality: LongInt); cdecl; external;
       
    74 procedure AVWrapper_Close; cdecl; external;
       
    75 procedure AVWrapper_WriteFrame( pY, pCb, pCr: PByte ); cdecl; external;
       
    76 {$ENDIF}
       
    77 
    66 
    78 type TFrame = record
    67 type TFrame = record
    79                   realTicks: LongWord;
    68                   realTicks: LongWord;
    80                   gameTicks: LongWord;
    69                   gameTicks: LongWord;
    81                   CamX, CamY: LongInt;
    70                   CamX, CamY: LongInt;