Class VFPAPI64
- Namespace
- VisioForge.Core.VideoFingerPrinting
- Assembly
- VisioForge.Core.dll
Provides access to the 64-bit native video fingerprinting API through platform invoke declarations. This class contains methods for fingerprint search, comparison, and image analysis operations. Supports Windows, Linux, and macOS platforms.
public static class VFPAPI64Inheritance
Inherited Members
Methods
VFPCompare_Build(out int, nint)
Builds the final fingerprint data from processed frames for comparison.
public static extern nint VFPCompare_Build(out int pLen, nint pDataTmp)Parameters
pLenint-
Output parameter receiving the length of the fingerprint data.
pDataTmpnint-
Pointer to the comparison context.
Returns
- nint
-
Pointer to the built fingerprint data.
VFPCompare_Clear(nint)
Clears and releases resources associated with the comparison context.
public static extern void VFPCompare_Clear(nint pDataTmp)Parameters
pDataTmpnint-
Pointer to the comparison context to clear.
VFPCompare_Compare(nint, int, nint, int, int)
Compares two fingerprints and returns a similarity score.
public static extern double VFPCompare_Compare(nint pData1, int iLen1, nint pData2, int iLen2, int MaxS)Parameters
pData1nint-
Pointer to the first fingerprint data.
iLen1int-
Length of the first fingerprint data.
pData2nint-
Pointer to the second fingerprint data.
iLen2int-
Length of the second fingerprint data.
MaxSint-
Maximum shift allowed during comparison.
Returns
- double
-
Similarity score between 0 and 100, where higher values indicate greater similarity.
VFPCompare_CompareMirror(nint, int, nint, int, int, out int)
Compares two fingerprints with mirror detection support.
public static extern double VFPCompare_CompareMirror(nint data1, int len1, nint data2, int len2, int maxShift, out int mirrorMode)Parameters
data1nint-
Pointer to the first fingerprint data.
len1int-
Length of the first fingerprint data.
data2nint-
Pointer to the second fingerprint data.
len2int-
Length of the second fingerprint data.
maxShiftint-
Maximum shift allowed during comparison.
mirrorModeint-
Output parameter receiving the detected mirror mode.
Returns
- double
-
Similarity score between 0 and 100, where higher values indicate greater similarity.
VFPCompare_Init(int, nint)
Initializes the fingerprint comparison engine with a specified frame count.
public static extern void VFPCompare_Init(int count, nint pDataTmp)Parameters
countint-
The number of frames to allocate for processing.
pDataTmpnint-
Pointer to the temporary data structure for comparison operations.
VFPCompare_Init2(int)
Initializes the fingerprint comparison engine and returns a handle to the comparison context.
public static extern nint VFPCompare_Init2(int count)Parameters
countint-
The number of frames to allocate for processing.
Returns
- nint
-
A pointer to the initialized comparison context.
VFPCompare_Process(nint, int, int, int, double, nint)
Processes a video frame for fingerprint comparison operations.
public static extern int VFPCompare_Process(nint p, int w, int h, int s, double dTime, nint pDataTmp)Parameters
pnint-
Pointer to the frame pixel data.
wint-
Width of the frame in pixels.
hint-
Height of the frame in pixels.
sint-
Stride (bytes per row) of the frame data.
dTimedouble-
Timestamp of the frame in seconds.
pDataTmpnint-
Pointer to the comparison context.
Returns
- int
-
Status code indicating success (0) or failure.
VFPSearch_Build(out int, nint)
Builds the final fingerprint data from processed frames.
public static extern nint VFPSearch_Build(out int pLen, nint pDataTmp)Parameters
pLenint-
Output parameter receiving the length of the fingerprint data.
pDataTmpnint-
Pointer to the search context.
Returns
- nint
-
Pointer to the built fingerprint data.
VFPSearch_Clear(nint)
Clears and releases resources associated with the search context.
public static extern void VFPSearch_Clear(nint pDataTmp)Parameters
pDataTmpnint-
Pointer to the search context to clear.
VFPSearch_Init(int, nint)
Initializes the fingerprint search engine with a specified frame count.
public static extern void VFPSearch_Init(int count, nint pDataTmp)Parameters
countint-
The number of frames to allocate for processing.
pDataTmpnint-
Pointer to the temporary data structure for search operations.
VFPSearch_Init2(int)
Initializes the fingerprint search engine and returns a handle to the search context.
public static extern nint VFPSearch_Init2(int count)Parameters
countint-
The number of frames to allocate for processing.
Returns
- nint
-
A pointer to the initialized search context.
VFPSearch_Process(nint, int, int, int, double, nint)
Processes a video frame for fingerprint search operations.
public static extern int VFPSearch_Process(nint p, int w, int h, int s, double dTime, nint pDataTmp)Parameters
pnint-
Pointer to the frame pixel data.
wint-
Width of the frame in pixels.
hint-
Height of the frame in pixels.
sint-
Stride (bytes per row) of the frame data.
dTimedouble-
Timestamp of the frame in seconds.
pDataTmpnint-
Pointer to the search context.
Returns
- int
-
Status code indicating success (0) or failure.
VFPSearch_Search(nint, int, int, nint, int, int, out double, int)
Searches for matches between two fingerprints.
public static extern int VFPSearch_Search(nint pData1, int iLen1, int iSkip1, nint pData2, int iLen2, int iSkip2, out double pDiff, int maxDiff)Parameters
pData1nint-
Pointer to the first fingerprint data.
iLen1int-
Length of the first fingerprint data.
iSkip1int-
Number of bytes to skip in the first fingerprint.
pData2nint-
Pointer to the second fingerprint data.
iLen2int-
Length of the second fingerprint data.
iSkip2int-
Number of bytes to skip in the second fingerprint.
pDiffdouble-
Output parameter receiving the difference value between fingerprints.
maxDiffint-
Maximum allowed difference for a match.
Returns
- int
-
The position of the best match, or -1 if no match found.
VFPSearch_SearchMirror(nint, int, nint, int, out int, out int, out int)
Searches for matches between two fingerprints with mirror detection.
public static extern void VFPSearch_SearchMirror(nint data1, int len1, nint data2, int len2, out int diff, out int pos, out int mirrorMode)Parameters
data1nint-
Pointer to the first fingerprint data.
len1int-
Length of the first fingerprint data.
data2nint-
Pointer to the second fingerprint data.
len2int-
Length of the second fingerprint data.
diffint-
Output parameter receiving the difference value between fingerprints.
posint-
Output parameter receiving the position of the best match.
mirrorModeint-
Output parameter receiving the detected mirror mode.
VFPSearch_SearchMirror2(nint, int, nint, int, out int, out int, out int, double, double)
Searches for matches between two fingerprints with mirror detection and duration hints.
public static extern void VFPSearch_SearchMirror2(nint data1, int len1, nint data2, int len2, out int diff, out int pos, out int mirrorMode, double duration1, double duration2)Parameters
data1nint-
Pointer to the first fingerprint data.
len1int-
Length of the first fingerprint data.
data2nint-
Pointer to the second fingerprint data.
len2int-
Length of the second fingerprint data.
diffint-
Output parameter receiving the difference value between fingerprints.
posint-
Output parameter receiving the position of the best match.
mirrorModeint-
Output parameter receiving the detected mirror mode.
duration1double-
Duration of the first video in seconds.
duration2double-
Duration of the second video in seconds.
VFPSetLicenseKey(string)
Sets the license key for the video fingerprinting library.
public static extern void VFPSetLicenseKey(string licenseKey)Parameters
licenseKeystring-
The license key string to activate the library.