bool bvc_wrapper::init_function_pointers()
{
bool res = false;
- bfcGetVersion = nullptr;
- bfcFactory = nullptr;
- bfcDestroy = nullptr;
- bfcEnumerate = nullptr;
- bfcQueryCardType = nullptr;
- bfcAttach = nullptr;
- bfcDetach = nullptr;
- bfcQueryCardProperty32 = nullptr;
- bfcQueryCardProperty64 = nullptr;
- bfcSetCardProperty32 = nullptr;
- bfcSetCardProperty64 = nullptr;
- bfcGetCardSerialNumber = nullptr;
- bfcGetCardFwVersion = nullptr;
- bfcWaitVideoSyncAsync = nullptr;
- bfcWaitVideoInputSync = nullptr;
- bfcWaitVideoOutputSync = nullptr;
- bfcGetVideoOutputCurrentFieldCount = nullptr;
- bfcGetVideoInputCurrentFieldCount = nullptr;
- bfcVideoCaptureStart = nullptr;
- bfcVideoCaptureStop = nullptr;
- bfcVideoPlaybackStart = nullptr;
- bfcVideoPlaybackStop = nullptr;
- bfcVideoPlaybackAllocate = nullptr;
- bfcVideoPlaybackPresent = nullptr;
- bfcVideoPlaybackRelease = nullptr;
- bfcGetCaptureVideoFrameInfoEx = nullptr;
- bfcRenderBufferCapture = nullptr;
- bfcRenderBufferUpdate = nullptr;
- bfcGetRenderBufferCount = nullptr;
- bfcEncodeHancFrameEx = nullptr;
- bfcDecodeHancFrameEx = nullptr;
-#if defined(_WIN32)
- bfcSystemBufferReadAsync = nullptr;
- bfcSystemBufferWriteAsync = nullptr;
-#else
- bfcSystemBufferRead = nullptr;
- bfcSystemBufferWrite = nullptr;
-#endif
- bfcGetBytesForGroupPixels = nullptr;
- bfcGetPixelsPerLine = nullptr;
- bfcGetLinesPerFrame = nullptr;
- bfcGetBytesPerLine = nullptr;
- bfcGetBytesPerFrame = nullptr;
- bfcGetGoldenValue = nullptr;
- bfcGetVBILines = nullptr;
- bfcGetVANCGoldenValue = nullptr;
- bfcGetVANCLineBytes = nullptr;
- bfcGetVANCLineCount = nullptr;
- bfcGetWindowsDriverHandle = nullptr;
- bfcUtilsGetStringForCardType = nullptr;
- bfcUtilsGetStringForBlueProductId = nullptr;
- bfcUtilsGetStringForVideoMode = nullptr;
- bfcUtilsGetStringForMemoryFormat = nullptr;
- bfcUtilsGetMR2Routing = nullptr;
- bfcUtilsSetMR2Routing = nullptr;
- bfcUtilsGetAudioOutputRouting = nullptr;
- bfcUtilsSetAudioOutputRouting = nullptr;
- bfcUtilsIsVideoModeProgressive = nullptr;
- bfcUtilsIsVideoMode1001Framerate = nullptr;
- bfcUtilsGetFpsForVideoMode = nullptr;
- bfcUtilsGetVideoModeForFrameInfo = nullptr;
- bfcUtilsGetFrameInfoForVideoMode = nullptr;
- bfcUtilsGetAudioSamplesPerFrame = nullptr;
-
#if defined(_WIN32)
#ifdef _DEBUG
h_module_ = std::shared_ptr<void>(LoadLibraryExA("BlueVelvetC64_d.dll", NULL, 0), FreeLibrary);
std::shared_ptr<void> bvc_;
//BlueVelvetC function pointers members
- pFunc_bfcGetVersion bfcGetVersion;
- pFunc_bfcFactory bfcFactory;
- pFunc_bfcDestroy bfcDestroy;
- pFunc_bfcEnumerate bfcEnumerate;
- pFunc_bfcQueryCardType bfcQueryCardType;
- pFunc_bfcAttach bfcAttach;
- pFunc_bfcDetach bfcDetach;
- pFunc_bfcQueryCardProperty32 bfcQueryCardProperty32;
- pFunc_bfcQueryCardProperty64 bfcQueryCardProperty64;
- pFunc_bfcSetCardProperty32 bfcSetCardProperty32;
- pFunc_bfcSetCardProperty64 bfcSetCardProperty64;
- pFunc_bfcGetCardSerialNumber bfcGetCardSerialNumber;
- pFunc_bfcGetCardFwVersion bfcGetCardFwVersion;
- pFunc_bfcWaitVideoSyncAsync bfcWaitVideoSyncAsync;
- pFunc_bfcWaitVideoInputSync bfcWaitVideoInputSync;
- pFunc_bfcWaitVideoOutputSync bfcWaitVideoOutputSync;
- pFunc_bfcGetVideoOutputCurrentFieldCount bfcGetVideoOutputCurrentFieldCount;
- pFunc_bfcGetVideoInputCurrentFieldCount bfcGetVideoInputCurrentFieldCount;
- pFunc_bfcVideoCaptureStart bfcVideoCaptureStart;
- pFunc_bfcVideoCaptureStop bfcVideoCaptureStop;
- pFunc_bfcVideoPlaybackStart bfcVideoPlaybackStart;
- pFunc_bfcVideoPlaybackStop bfcVideoPlaybackStop;
- pFunc_bfcVideoPlaybackAllocate bfcVideoPlaybackAllocate;
- pFunc_bfcVideoPlaybackPresent bfcVideoPlaybackPresent;
- pFunc_bfcVideoPlaybackRelease bfcVideoPlaybackRelease;
- pFunc_bfcGetCaptureVideoFrameInfoEx bfcGetCaptureVideoFrameInfoEx;
- pFunc_bfcRenderBufferCapture bfcRenderBufferCapture;
- pFunc_bfcRenderBufferUpdate bfcRenderBufferUpdate;
- pFunc_bfcGetRenderBufferCount bfcGetRenderBufferCount;
- pFunc_bfcEncodeHancFrameEx bfcEncodeHancFrameEx;
- pFunc_bfcDecodeHancFrameEx bfcDecodeHancFrameEx;
+ pFunc_bfcGetVersion bfcGetVersion = nullptr;
+ pFunc_bfcFactory bfcFactory = nullptr;
+ pFunc_bfcDestroy bfcDestroy = nullptr;
+ pFunc_bfcEnumerate bfcEnumerate = nullptr;
+ pFunc_bfcQueryCardType bfcQueryCardType = nullptr;
+ pFunc_bfcAttach bfcAttach = nullptr;
+ pFunc_bfcDetach bfcDetach = nullptr;
+ pFunc_bfcQueryCardProperty32 bfcQueryCardProperty32 = nullptr;
+ pFunc_bfcQueryCardProperty64 bfcQueryCardProperty64 = nullptr;
+ pFunc_bfcSetCardProperty32 bfcSetCardProperty32 = nullptr;
+ pFunc_bfcSetCardProperty64 bfcSetCardProperty64 = nullptr;
+ pFunc_bfcGetCardSerialNumber bfcGetCardSerialNumber = nullptr;
+ pFunc_bfcGetCardFwVersion bfcGetCardFwVersion = nullptr;
+ pFunc_bfcWaitVideoSyncAsync bfcWaitVideoSyncAsync = nullptr;
+ pFunc_bfcWaitVideoInputSync bfcWaitVideoInputSync = nullptr;
+ pFunc_bfcWaitVideoOutputSync bfcWaitVideoOutputSync = nullptr;
+ pFunc_bfcGetVideoOutputCurrentFieldCount bfcGetVideoOutputCurrentFieldCount = nullptr;
+ pFunc_bfcGetVideoInputCurrentFieldCount bfcGetVideoInputCurrentFieldCount = nullptr;
+ pFunc_bfcVideoCaptureStart bfcVideoCaptureStart = nullptr;
+ pFunc_bfcVideoCaptureStop bfcVideoCaptureStop = nullptr;
+ pFunc_bfcVideoPlaybackStart bfcVideoPlaybackStart = nullptr;
+ pFunc_bfcVideoPlaybackStop bfcVideoPlaybackStop = nullptr;
+ pFunc_bfcVideoPlaybackAllocate bfcVideoPlaybackAllocate = nullptr;
+ pFunc_bfcVideoPlaybackPresent bfcVideoPlaybackPresent = nullptr;
+ pFunc_bfcVideoPlaybackRelease bfcVideoPlaybackRelease = nullptr;
+ pFunc_bfcGetCaptureVideoFrameInfoEx bfcGetCaptureVideoFrameInfoEx = nullptr;
+ pFunc_bfcRenderBufferCapture bfcRenderBufferCapture = nullptr;
+ pFunc_bfcRenderBufferUpdate bfcRenderBufferUpdate = nullptr;
+ pFunc_bfcGetRenderBufferCount bfcGetRenderBufferCount = nullptr;
+ pFunc_bfcEncodeHancFrameEx bfcEncodeHancFrameEx = nullptr;
+ pFunc_bfcDecodeHancFrameEx bfcDecodeHancFrameEx = nullptr;
#if defined(_WIN32)
- pFunc_bfcSystemBufferReadAsync bfcSystemBufferReadAsync;
- pFunc_bfcSystemBufferWriteAsync bfcSystemBufferWriteAsync;
+ pFunc_bfcSystemBufferReadAsync bfcSystemBufferReadAsync = nullptr;
+ pFunc_bfcSystemBufferWriteAsync bfcSystemBufferWriteAsync = nullptr;
#else
- pFunc_bfcSystemBufferRead bfcSystemBufferRead;
- pFunc_bfcSystemBufferWrite bfcSystemBufferWrite;
+ pFunc_bfcSystemBufferRead bfcSystemBufferRead = nullptr;
+ pFunc_bfcSystemBufferWrite bfcSystemBufferWrite = nullptr;
#endif
- pFunc_bfcGetBytesForGroupPixels bfcGetBytesForGroupPixels;
- pFunc_bfcGetPixelsPerLine bfcGetPixelsPerLine;
- pFunc_bfcGetLinesPerFrame bfcGetLinesPerFrame;
- pFunc_bfcGetBytesPerLine bfcGetBytesPerLine;
- pFunc_bfcGetBytesPerFrame bfcGetBytesPerFrame;
- pFunc_bfcGetGoldenValue bfcGetGoldenValue;
- pFunc_bfcGetVBILines bfcGetVBILines;
- pFunc_bfcGetVANCGoldenValue bfcGetVANCGoldenValue;
- pFunc_bfcGetVANCLineBytes bfcGetVANCLineBytes;
- pFunc_bfcGetVANCLineCount bfcGetVANCLineCount;
- pFunc_bfcGetWindowsDriverHandle bfcGetWindowsDriverHandle;
- pFunc_bfcUtilsGetStringForCardType bfcUtilsGetStringForCardType;
- pFunc_bfcUtilsGetStringForBlueProductId bfcUtilsGetStringForBlueProductId;
- pFunc_bfcUtilsGetStringForVideoMode bfcUtilsGetStringForVideoMode;
- pFunc_bfcUtilsGetStringForMemoryFormat bfcUtilsGetStringForMemoryFormat;
- pFunc_bfcUtilsGetMR2Routing bfcUtilsGetMR2Routing;
- pFunc_bfcUtilsSetMR2Routing bfcUtilsSetMR2Routing;
- pFunc_bfcUtilsGetAudioOutputRouting bfcUtilsGetAudioOutputRouting;
- pFunc_bfcUtilsSetAudioOutputRouting bfcUtilsSetAudioOutputRouting;
- pFunc_bfcUtilsIsVideoModeProgressive bfcUtilsIsVideoModeProgressive;
- pFunc_bfcUtilsIsVideoMode1001Framerate bfcUtilsIsVideoMode1001Framerate;
- pFunc_bfcUtilsGetFpsForVideoMode bfcUtilsGetFpsForVideoMode;
- pFunc_bfcUtilsGetVideoModeForFrameInfo bfcUtilsGetVideoModeForFrameInfo;
- pFunc_bfcUtilsGetFrameInfoForVideoMode bfcUtilsGetFrameInfoForVideoMode;
- pFunc_bfcUtilsGetAudioSamplesPerFrame bfcUtilsGetAudioSamplesPerFrame;
+ pFunc_bfcGetBytesForGroupPixels bfcGetBytesForGroupPixels = nullptr;
+ pFunc_bfcGetPixelsPerLine bfcGetPixelsPerLine = nullptr;
+ pFunc_bfcGetLinesPerFrame bfcGetLinesPerFrame = nullptr;
+ pFunc_bfcGetBytesPerLine bfcGetBytesPerLine = nullptr;
+ pFunc_bfcGetBytesPerFrame bfcGetBytesPerFrame = nullptr;
+ pFunc_bfcGetGoldenValue bfcGetGoldenValue = nullptr;
+ pFunc_bfcGetVBILines bfcGetVBILines = nullptr;
+ pFunc_bfcGetVANCGoldenValue bfcGetVANCGoldenValue = nullptr;
+ pFunc_bfcGetVANCLineBytes bfcGetVANCLineBytes = nullptr;
+ pFunc_bfcGetVANCLineCount bfcGetVANCLineCount = nullptr;
+ pFunc_bfcGetWindowsDriverHandle bfcGetWindowsDriverHandle = nullptr;
+ pFunc_bfcUtilsGetStringForCardType bfcUtilsGetStringForCardType = nullptr;
+ pFunc_bfcUtilsGetStringForBlueProductId bfcUtilsGetStringForBlueProductId = nullptr;
+ pFunc_bfcUtilsGetStringForVideoMode bfcUtilsGetStringForVideoMode = nullptr;
+ pFunc_bfcUtilsGetStringForMemoryFormat bfcUtilsGetStringForMemoryFormat = nullptr;
+ pFunc_bfcUtilsGetMR2Routing bfcUtilsGetMR2Routing = nullptr;
+ pFunc_bfcUtilsSetMR2Routing bfcUtilsSetMR2Routing = nullptr;
+ pFunc_bfcUtilsGetAudioOutputRouting bfcUtilsGetAudioOutputRouting = nullptr;
+ pFunc_bfcUtilsSetAudioOutputRouting bfcUtilsSetAudioOutputRouting = nullptr;
+ pFunc_bfcUtilsIsVideoModeProgressive bfcUtilsIsVideoModeProgressive = nullptr;
+ pFunc_bfcUtilsIsVideoMode1001Framerate bfcUtilsIsVideoMode1001Framerate = nullptr;
+ pFunc_bfcUtilsGetFpsForVideoMode bfcUtilsGetFpsForVideoMode = nullptr;
+ pFunc_bfcUtilsGetVideoModeForFrameInfo bfcUtilsGetVideoModeForFrameInfo = nullptr;
+ pFunc_bfcUtilsGetFrameInfoForVideoMode bfcUtilsGetFrameInfoForVideoMode = nullptr;
+ pFunc_bfcUtilsGetAudioSamplesPerFrame bfcUtilsGetAudioSamplesPerFrame = nullptr;
};
spl::shared_ptr<bvc_wrapper> create_blue();
spl::shared_ptr<bvc_wrapper> create_blue(int device_index);
-//spl::shared_ptr<BvcWrapper> create_blue();
-
bool is_epoch_card(bvc_wrapper& blue);
bool is_epoch_neutron_1i2o_card(bvc_wrapper& blue);
bool is_epoch_neutron_3o_card(bvc_wrapper& blue);
EVideoMode get_video_mode(bvc_wrapper& blue, const core::video_format_desc& format_desc);
core::video_format_desc get_format_desc(bvc_wrapper& blue, EVideoMode vid_fmt, EMemoryFormat mem_fmt);
-
}}
\ No newline at end of file