I am having a problem with a function call:
Error: type mismatch: got <proc (n: cint, activationReason: cint, instanceData: ptr pointer, frameData: ptr pointer, frameCtx: ptr VSFrameContext, core: ptr VSCore, vsapi: ptr VSAPI): ptr VSFrameRef{.locks: <unknown>.}> but expected 'VSFilterGetFrame = proc (n: cint, activationReason: cint, instanceData: ptr pointer, frameData: ptr pointer, frameCtx: ptr VSFrameContext, core: ptr VSCore, vsapi: ptr VSAPI): ptr VSFrameRef{.cdecl.}'
Both types look the same to me. What am I missing?:
got <proc (n: cint, activationReason: cint, instanceData: ptr pointer, frameData: ptr pointer, frameCtx: ptr VSFrameContext, core: ptr VSCore, vsapi: ptr VSAPI): ptr VSFrameRef{.locks: <unknown>.}> but expected 'VSFilterGetFrame = proc ( n: cint, activationReason: cint, instanceData: ptr pointer, frameData: ptr pointer, frameCtx: ptr VSFrameContext, core: ptr VSCore, vsapi: ptr VSAPI): ptr VSFrameRef{.cdecl.}'
The line that is causing the error is:
let tmp2:VSFilterGetFrame = cropGetframe
where VSFilterGetFrame is defined as:
type
VSFilterGetFrame* = proc(n: cint, activationReason: cint, instanceData: ptr pointer, frameData: ptr pointer, frameCtx: ptr VSFrameContext, core: ptr VSCore, vsapi: ptr VSAPI):ptr VSFrameRef {.cdecl.}