hedgewars/uVideoRec.pas
changeset 8666 1652c1d9adc8
parent 8370 0c79946e96f8
child 8697 9624836094de
equal deleted inserted replaced
8665:3ff8694d9e22 8666:1652c1d9adc8
    26 implementation
    26 implementation
    27 end.
    27 end.
    28 {$ELSE}
    28 {$ELSE}
    29 
    29 
    30 {$IFNDEF WIN32}
    30 {$IFNDEF WIN32}
    31     {$LINKLIB ../bin/libavwrapper.a}
    31     {$linklib avcodec}
       
    32     {$linklib avformat}
       
    33     {$linklib avutil}
    32 {$ENDIF}
    34 {$ENDIF}
    33 
    35 
    34 interface
    36 interface
    35 
    37 
    36 var flagPrerecording: boolean = false;
    38 var flagPrerecording: boolean = false;
    46 
    48 
    47 procedure initModule;
    49 procedure initModule;
    48 procedure freeModule;
    50 procedure freeModule;
    49 
    51 
    50 implementation
    52 implementation
    51 
       
    52 uses uVariables, uUtils, GLunit, SDLh, SysUtils, uIO, uMisc, uTypes;
    53 uses uVariables, uUtils, GLunit, SDLh, SysUtils, uIO, uMisc, uTypes;
    53 
    54 
    54 type TAddFileLogRaw = procedure (s: pchar); cdecl;
    55 type TAddFileLogRaw = procedure (s: pchar); cdecl;
       
    56 const AvwrapperLibName = 'libavwrapper';
    55 
    57 
    56 procedure AVWrapper_Init(
    58 procedure AVWrapper_Init(
    57               AddLog: TAddFileLogRaw;
    59               AddLog: TAddFileLogRaw;
    58               filename, desc, soundFile, format, vcodec, acodec: PChar;
    60               filename, desc, soundFile, format, vcodec, acodec: PChar;
    59               width, height, framerateNum, framerateDen, vquality: LongInt); cdecl; external {$IFDEF WIN32}'libavwrapper.dll'{$ENDIF};
    61               width, height, framerateNum, framerateDen, vquality: LongInt); cdecl; external AvwrapperLibName;
    60 procedure AVWrapper_Close; cdecl; external {$IFDEF WIN32}'libavwrapper.dll'{$ENDIF};
    62 procedure AVWrapper_Close; cdecl; external AvwrapperLibName;
    61 procedure AVWrapper_WriteFrame( pY, pCb, pCr: PByte ); cdecl; external {$IFDEF WIN32}'libavwrapper.dll'{$ENDIF};
    63 procedure AVWrapper_WriteFrame( pY, pCb, pCr: PByte ); cdecl; external AvwrapperLibName;
    62 
    64 
    63 type TFrame = record
    65 type TFrame = record
    64                   realTicks: LongWord;
    66                   realTicks: LongWord;
    65                   gameTicks: LongWord;
    67                   gameTicks: LongWord;
    66                   CamX, CamY: LongInt;
    68                   CamX, CamY: LongInt;