LibMWCapture  3.3.1
LibMWCapture Documentation
MWProCapture.h
Go to the documentation of this file.
1 /************************************************************************************************/
2 // MWProCapture.h : header file
3 
4 // MAGEWELL PROPRIETARY INFORMATION
5 
6 // The following license only applies to head files and library within Magewell's SDK
7 // and not to Magewell's SDK as a whole.
8 
9 // Copyrights © Nanjing Magewell Electronics Co., Ltd. ("Magewell") All rights reserved.
10 
11 // Magewell grands to any person who obtains the copy of Magewell's head files and library
12 // the rights,including without limitation, to use on the condition that the following terms are met:
13 // - The above copyright notice shall be retained in any circumstances.
14 // -The following disclaimer shall be included in the software and documentation and/or
15 // other materials provided for the purpose of publish, distribution or sublicense.
16 
17 // THE SOFTWARE IS PROVIDED BY MAGEWELL "AS IS" AND ANY EXPRESS, INCLUDING BUT NOT LIMITED TO,
18 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19 // IN NO EVENT SHALL MAGEWELL BE LIABLE
20 
21 // FOR ANY CLAIM, DIRECT OR INDIRECT DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT,
22 // TORT OR OTHERWISE, ARISING IN ANY WAY OF USING THE SOFTWARE.
23 
24 // CONTACT INFORMATION:
25 // SDK@magewell.net
26 // http://www.magewell.com/
27 //
28 /************************************************************************************************/
29 #pragma once
30 
31 #ifdef LIBMWCAPTURE_EXPORTS
32 #define LIBMWCAPTURE_API __declspec(dllexport)
33 #elif LIBMWCAPTURE_DLL
34 #define LIBMWCAPTURE_API __declspec(dllimport)
35 #else
36 #define LIBMWCAPTURE_API
37 #endif
38 
39 #include "MWCaptureExtension.h"
40 #include "MWUSBCaptureExtension.h"
41 
42 #ifdef __cplusplus
43 extern "C"
44 {
45 #endif
46 
54 // Channel
55 HCHANNEL
58  int nBoardValue,
59  int nChannelIndex
60  );
61 
62 // Device Clock
69 MW_RESULT
72  HCHANNEL hChannel,
73  LONGLONG* pllTime
74  );
75 
82 MW_RESULT
85  HCHANNEL hChannel,
86  LONGLONG llTime
87  );
88 
95 MW_RESULT
98  HCHANNEL hChannel,
99  LONGLONG llTime
100  );
101 
102 // Timer Event
109 HTIMER
112  HCHANNEL hChannel,
113  MWHANDLE hEvent
114  );
115 
122 MW_RESULT
125  HCHANNEL hChannel,
126  HTIMER hTimer
127  );
128 
136 MW_RESULT
139  HCHANNEL hChannel,
140  HTIMER hTimer,
141  LONGLONG llExpireTime
142  );
143 
144 // Notify Event
152 HNOTIFY
155  HCHANNEL hChannel,
156  MWHANDLE hEvent,
157  DWORD dwEnableBits
158  );
159 
166 MW_RESULT
169  HCHANNEL hChannel,
170  HNOTIFY hNotify
171  );
172 
180 MW_RESULT
183  HCHANNEL hChannel,
184  HNOTIFY hNotify,
185  ULONGLONG* pullStatus
186  );
187 
188 // Video Capture
195 MW_RESULT
198  HCHANNEL hChannel,
199  MWHANDLE hEvent
200  );
201 
207 MW_RESULT
210  HCHANNEL hChannel
211  );
212 
220 MW_RESULT
223  HCHANNEL hChannel,
224  MWCAP_PTR pbFrame,
225  DWORD cbFrame
226  );
227 
234 MW_RESULT
237  HCHANNEL hChannel,
238  LPBYTE pbFrame
239  );
240 
255 MW_RESULT
258  HCHANNEL hChannel,
259  int iFrame,
260  MWCAP_PTR pbFrame,
261  DWORD cbFrame,
262  DWORD cbStride,
263  BOOLEAN bBottomUp,
264  MWCAP_PTR64 pvContext,
265  DWORD dwFOURCC,
266  int cx,
267  int cy
268  );
269 
275 MW_RESULT
278  HCHANNEL hChannel,
279  int iFrame,
280  LARGE_INTEGER llFrameAddress,
281  DWORD cbFrame,
282  DWORD cbStride,
283  BOOLEAN bBottomUp,
284  MWCAP_PTR64 pvContext,
285  DWORD dwFOURCC,
286  int cx,
287  int cy
288  );
289 
298 MW_RESULT
301  HCHANNEL hChannel,
302  int iFrame,
303  MWCAP_PTR pbFrame,
304  DWORD cbFrame,
305  DWORD cbStride,
306  BOOLEAN bBottomUp,
307  MWCAP_PTR64 pvContext,
308  DWORD dwFOURCC,
309  int cx,
310  int cy,
311  HOSD hOSDImage,
312  const RECT * pOSDRects,
313  int cOSDRects
314  );
315 
321 MW_RESULT
324  HCHANNEL hChannel,
325  int iFrame,
326  LARGE_INTEGER llFrameAddress,
327  DWORD cbFrame,
328  DWORD cbStride,
329  BOOLEAN bBottomUp,
330  MWCAP_PTR64 pvContext,
331  DWORD dwFOURCC,
332  int cx,
333  int cy,
334  HOSD hOSDImage,
335  const RECT * pOSDRects,
336  int cOSDRects
337  );
338 
362 MW_RESULT
365  HCHANNEL hChannel,
366  int iFrame,
367  LPBYTE pbFrame,
368  DWORD cbFrame,
369  DWORD cbStride,
370  BOOLEAN bBottomUp,
371  MWCAP_PTR64 pvContext,
372  DWORD dwFOURCC,
373  int cx,
374  int cy,
375  DWORD dwProcessSwitchs,
376  int cyParitalNotify,
377  HOSD hOSDImage,
378  const RECT * pOSDRects,
379  int cOSDRects,
380  SHORT sContrast,
381  SHORT sBrightness,
382  SHORT sSaturation,
383  SHORT sHue,
384  MWCAP_VIDEO_DEINTERLACE_MODE deinterlaceMode,
385  MWCAP_VIDEO_ASPECT_RATIO_CONVERT_MODE aspectRatioConvertMode,
386  const RECT * pRectSrc,
387  const RECT * pRectDest,
388  int nAspectX,
389  int nAspectY,
390  MWCAP_VIDEO_COLOR_FORMAT colorFormat,
391  MWCAP_VIDEO_QUANTIZATION_RANGE quantRange,
392  MWCAP_VIDEO_SATURATION_RANGE satRange
393  );
394 
400 MW_RESULT
403  HCHANNEL hChannel,
404  int iFrame,
405  LARGE_INTEGER llFrameAddress,
406  DWORD cbFrame,
407  DWORD cbStride,
408  BOOLEAN bBottomUp,
409  MWCAP_PTR64 pvContext,
410  DWORD dwFOURCC,
411  int cx,
412  int cy,
413  DWORD dwProcessSwitchs,
414  int cyParitalNotify,
415  HOSD hOSDImage,
416  const RECT * pOSDRects,
417  int cOSDRects,
418  SHORT sContrast,
419  SHORT sBrightness,
420  SHORT sSaturation,
421  SHORT sHue,
422  MWCAP_VIDEO_DEINTERLACE_MODE deinterlaceMode,
423  MWCAP_VIDEO_ASPECT_RATIO_CONVERT_MODE aspectRatioConvertMode,
424  const RECT * pRectSrc,
425  const RECT * pRectDest,
426  int nAspectX,
427  int nAspectY,
428  MWCAP_VIDEO_COLOR_FORMAT colorFormat,
429  MWCAP_VIDEO_QUANTIZATION_RANGE quantRange,
430  MWCAP_VIDEO_SATURATION_RANGE satRange
431  );
432 
439 MW_RESULT
442  HCHANNEL hChannel,
443  MWCAP_VIDEO_BUFFER_INFO * pVideoBufferInfo
444  );
445 
453 MW_RESULT
456  HCHANNEL hChannel,
457  BYTE i,
458  MWCAP_VIDEO_FRAME_INFO* pVideoFrameInfo
459  );
460 
467 MW_RESULT
470  HCHANNEL hChannel,
471  MWCAP_VIDEO_CAPTURE_STATUS * pStatus
472  );
473 
474 // Audio Capture
480 MW_RESULT
483  HCHANNEL hChannel
484  );
485 
491 MW_RESULT
494  HCHANNEL hChannel
495  );
496 
503 MW_RESULT
506  HCHANNEL hChannel,
507  MWCAP_AUDIO_CAPTURE_FRAME* pAudioCaptureFrame
508  );
509 
516 MW_RESULT
519  HCHANNEL hChannel,
520  DWORD dwDelayMS
521  );
522 
523 // OSD
531 HOSD
534  HCHANNEL hChannel,
535  int cx,
536  int cy
537  );
538 
546 MW_RESULT
549  HCHANNEL hChannel,
550  HOSD hImage,
551  LONG* plRet
552  );
553 
561 MW_RESULT
564  HCHANNEL hChannel,
565  HOSD hImage,
566  LONG* plRet
567  );
568 
590 MW_RESULT
593  HCHANNEL hChannel,
594  HOSD hImage,
595  MWCAP_VIDEO_COLOR_FORMAT cfDest,
596  MWCAP_VIDEO_QUANTIZATION_RANGE quantRangeDest,
597  MWCAP_VIDEO_SATURATION_RANGE satRangeDest,
598  WORD xDest,
599  WORD yDest,
600  WORD cxDest,
601  WORD cyDest,
602  MWCAP_PTR64 pvSrcFrame,
603  DWORD cbSrcFrame,
604  DWORD cbSrcStride,
605  WORD cxSrc,
606  WORD cySrc,
607  BOOLEAN bSrcBottomUp,
608  BOOLEAN bSrcPixelAlpha,
609  BOOLEAN bSrcPixelXBGR
610  );
611 
617 MW_RESULT
620  HCHANNEL hChannel,
621  HOSD hImage,
622  MWCAP_VIDEO_COLOR_FORMAT cfDest,
623  MWCAP_VIDEO_QUANTIZATION_RANGE quantRangeDest,
624  MWCAP_VIDEO_SATURATION_RANGE satRangeDest,
625  WORD xDest,
626  WORD yDest,
627  WORD cxDest,
628  WORD cyDest,
629  LARGE_INTEGER llSrcFrameAddress,
630  DWORD cbSrcFrame,
631  DWORD cbSrcStride,
632  WORD cxSrc,
633  WORD cySrc,
634  BOOLEAN bSrcBottomUp,
635  BOOLEAN bSrcPixelAlpha,
636  BOOLEAN bSrcPixelXBGR
637  );
638 
645 MW_RESULT
648  HCHANNEL hChannel,
649  unsigned int* pnTemp
650  );
651 
652 //linux
653 // V4l2
660 MW_RESULT
663  HCHANNEL hChannel,
664  int * pnCount
665  );
666 
674 MW_RESULT
677  HCHANNEL hChannel,
678  MWCAP_STREAM_INFO * pStreamInfos,
679  int * pnCount
680  );
681 
688 MW_RESULT
691  HCHANNEL hChannel,
692  int nCrtlID
693  );
694 
701 MW_RESULT
704  HCHANNEL hChannel,
705  MWCAP_VIDEO_CONNECTION_FORMAT * pConnectFormat
706  );
707 
714 MW_RESULT
717  HCHANNEL hChannel,
718  MWCAP_VIDEO_PROCESS_SETTINGS * pProcessSettings
719  );
720 
727 MW_RESULT
730  HCHANNEL hChannel,
731  MWCAP_VIDEO_PROCESS_SETTINGS processSettings
732  );
733 
740 MW_RESULT
743  HCHANNEL hChannel,
744  MWCAP_VIDEO_OSD_SETTINGS * pOSDSettings
745  );
746 
753 MW_RESULT
756  HCHANNEL hChannel,
757  MWCAP_VIDEO_OSD_SETTINGS OSDSettings
758  );
759 
766 MW_RESULT
769  HCHANNEL hChannel,
770  MWCAP_VIDEO_OSD_IMAGE * pOSDImage
771  );
772 
779 MW_RESULT
782  HCHANNEL hChannel,
783  MWCAP_VIDEO_OSD_IMAGE OSDImage
784  );
785 
792 MW_RESULT
795  HCHANNEL hChannel,
796  int *pnBrightness
797  );
798 
805 MW_RESULT
808  HCHANNEL hChannel,
809  int nBrightness
810  );
811 
818 MW_RESULT
821  HCHANNEL hChannel,
822  int * pnContrast
823  );
824 
831 MW_RESULT
834  HCHANNEL hChannel,
835  int nContrast
836  );
837 
844 MW_RESULT
847  HCHANNEL hChannel,
848  int * pnHue
849  );
850 
857 MW_RESULT
860  HCHANNEL hChannel,
861  int nHue
862  );
863 
870 MW_RESULT
873  HCHANNEL hChannel,
874  int * pnSaturation
875  );
876 
883 MW_RESULT
886  HCHANNEL hChannel,
887  int nSaturation
888  );
889 
895 MW_RESULT
898  HCHANNEL hChannel
899  );
900 
906 MW_RESULT
909  HCHANNEL hChannel
910  );
911 
912 // VGA/Component timings
919 MW_RESULT
922  HCHANNEL hChannel,
923  BOOLEAN * pbAuto
924  );
925 
932 MW_RESULT
935  HCHANNEL hChannel,
936  BOOLEAN bAuto
937  );
938 
945 MW_RESULT
948  HCHANNEL hChannel,
949  BYTE * pbyValue
950  );
951 
958 MW_RESULT
961  HCHANNEL hChannel,
962  BYTE byValue
963  );
964 
971 MW_RESULT
974  HCHANNEL hChannel,
975  BOOLEAN * pbAuto
976  );
977 
984 MW_RESULT
987  HCHANNEL hChannel,
988  BOOLEAN bAuto
989  );
990 
997 MW_RESULT
1000  HCHANNEL hChannel,
1001  MWCAP_VIDEO_TIMING videoTiming
1002  );
1003 
1011 MW_RESULT
1014  HCHANNEL hChannel,
1015  MWCAP_VIDEO_TIMING * pVideoTiming,
1016  long * plCount
1017  );
1018 
1025 MW_RESULT
1028  HCHANNEL hChannel,
1029  MWCAP_VIDEO_CUSTOM_TIMING videoTiming
1030  );
1031 
1038 MW_RESULT
1041  HCHANNEL hChannel,
1042  DWORD * pdwCount
1043  );
1044 
1052 MW_RESULT
1055  HCHANNEL hChannel,
1056  MWCAP_VIDEO_CUSTOM_TIMING * pVideoCustomTiming,
1057  DWORD * pdwCount
1058  );
1059 
1067 MW_RESULT
1070  HCHANNEL hChannel,
1071  MWCAP_VIDEO_CUSTOM_TIMING * pVideoCustomTiming,
1072  DWORD dwCount
1073  );
1074 
1081 MW_RESULT
1084  HCHANNEL hChannel,
1085  DWORD * pdwCount
1086  );
1087 
1095 MW_RESULT
1098  HCHANNEL hChannel,
1099  MWCAP_SIZE * pResolutionSize,
1100  DWORD * pdwCount
1101  );
1102 
1110 MW_RESULT
1113  HCHANNEL hChannel,
1114  MWCAP_SIZE * pResolutionSize,
1115  DWORD dwCount
1116  );
1117 
1118 // Event
1123 MWCAP_PTR
1126  );
1127 
1133 MW_RESULT
1135 MWCloseEvent(
1136  MWCAP_PTR hEvent
1137  );
1138 
1144 MW_RESULT
1146 MWSetEvent(
1147  MWCAP_PTR hEvent
1148  );
1149 
1155 MW_RESULT
1157 MWClearEvent(
1158  MWCAP_PTR hEvent
1159  );
1160 
1166 BOOLEAN
1168 MWIsSetEvent(
1169  MWCAP_PTR hEvent
1170  );
1171 
1177 int
1180  MWCAP_PTR hEvent
1181  );
1182 
1189 int
1191 MWWaitEvent(
1192  MWCAP_PTR hEvent,
1193  int nTimeout
1194  );
1195 
1203 DWORD
1206  MWCAP_PTR * hEvents,
1207  int nCount,
1208  int nTimeout
1209  );
1210 
1211 #ifdef __cplusplus
1212 }
1213 #endif
MW_RESULT LIBMWCAPTURE_API MWGetVideoCaptureStatus(HCHANNEL hChannel, MWCAP_VIDEO_CAPTURE_STATUS *pStatus)
Gets video capture status according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoOSDImage(HCHANNEL hChannel, MWCAP_VIDEO_OSD_IMAGE *pOSDImage)
Gets OSD location according to channel handle.
int LIBMWCAPTURE_API MWTryWaitEvent(MWCAP_PTR hEvent)
Waits for the event.
MW_RESULT LIBMWCAPTURE_API MWSetVideoContrast(HCHANNEL hChannel, int nContrast)
Sets the contrast of video captured according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWReloadPreset(HCHANNEL hChannel)
Reloads the presetting configurations of video capture according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoProcessSettings(HCHANNEL hChannel, MWCAP_VIDEO_PROCESS_SETTINGS processSettings)
Sets video capture configuration according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoContrast(HCHANNEL hChannel, int *pnContrast)
Gets the contrast of video captured according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoPreferredTimingArray(HCHANNEL hChannel, MWCAP_VIDEO_TIMING *pVideoTiming, long *plCount)
Gets the preset video timing according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetTemperature(HCHANNEL hChannel, unsigned int *pnTemp)
Gets temperature according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoAutoHAlign(HCHANNEL hChannel, BOOLEAN *pbAuto)
Gets whether the horizontal direction of the video is automatically adjusted according to channel han...
MW_RESULT LIBMWCAPTURE_API MWSetVideoOSDSettings(HCHANNEL hChannel, MWCAP_VIDEO_OSD_SETTINGS OSDSettings)
Sets OSD settings according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetCustomVideoResolutionsArray(HCHANNEL hChannel, MWCAP_SIZE *pResolutionSize, DWORD *pdwCount)
Gets customized video resolution according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWUploadImageFromVirtualAddress(HCHANNEL hChannel, HOSD hImage, MWCAP_VIDEO_COLOR_FORMAT cfDest, MWCAP_VIDEO_QUANTIZATION_RANGE quantRangeDest, MWCAP_VIDEO_SATURATION_RANGE satRangeDest, WORD xDest, WORD yDest, WORD cxDest, WORD cyDest, MWCAP_PTR64 pvSrcFrame, DWORD cbSrcFrame, DWORD cbSrcStride, WORD cxSrc, WORD cySrc, BOOLEAN bSrcBottomUp, BOOLEAN bSrcPixelAlpha, BOOLEAN bSrcPixelXBGR)
Uploads a OSD image from the virtual memory.
MW_RESULT LIBMWCAPTURE_API MWGetVideoProcessSettings(HCHANNEL hChannel, MWCAP_VIDEO_PROCESS_SETTINGS *pProcessSettings)
Gets the video capture settings according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoSamplingPhase(HCHANNEL hChannel, BYTE byValue)
Sets the sampling phase according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoOSDImage(HCHANNEL hChannel, MWCAP_VIDEO_OSD_IMAGE OSDImage)
Sets OSD location according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetCustomVideoResolutionsArray(HCHANNEL hChannel, MWCAP_SIZE *pResolutionSize, DWORD dwCount)
Sets customized video resolution according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetStreamInfos(HCHANNEL hChannel, MWCAP_STREAM_INFO *pStreamInfos, int *pnCount)
Gets the information of streams according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWCaptureVideoFrameToVirtualAddressEx(HCHANNEL hChannel, int iFrame, LPBYTE pbFrame, DWORD cbFrame, DWORD cbStride, BOOLEAN bBottomUp, MWCAP_PTR64 pvContext, DWORD dwFOURCC, int cx, int cy, DWORD dwProcessSwitchs, int cyParitalNotify, HOSD hOSDImage, const RECT *pOSDRects, int cOSDRects, SHORT sContrast, SHORT sBrightness, SHORT sSaturation, SHORT sHue, MWCAP_VIDEO_DEINTERLACE_MODE deinterlaceMode, MWCAP_VIDEO_ASPECT_RATIO_CONVERT_MODE aspectRatioConvertMode, const RECT *pRectSrc, const RECT *pRectDest, int nAspectX, int nAspectY, MWCAP_VIDEO_COLOR_FORMAT colorFormat, MWCAP_VIDEO_QUANTIZATION_RANGE quantRange, MWCAP_VIDEO_SATURATION_RANGE satRange)
Gets a video frame with customized settings, fill it into virtual memory.
MW_RESULT LIBMWCAPTURE_API MWOpenImage(HCHANNEL hChannel, HOSD hImage, LONG *plRet)
Opens image according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWCaptureVideoFrameWithOSDToPhysicalAddress(HCHANNEL hChannel, int iFrame, LARGE_INTEGER llFrameAddress, DWORD cbFrame, DWORD cbStride, BOOLEAN bBottomUp, MWCAP_PTR64 pvContext, DWORD dwFOURCC, int cx, int cy, HOSD hOSDImage, const RECT *pOSDRects, int cOSDRects)
Gets a video frame with OSD, fills it into physical memory.
MW_RESULT LIBMWCAPTURE_API MWSetVideoHue(HCHANNEL hChannel, int nHue)
Sets the hue of video captured according to channel handle.
HCHANNEL LIBMWCAPTURE_API MWOpenChannel(int nBoardValue, int nChannelIndex)
Open channel according to the nBoardValue and nChannelIndex.
BOOLEAN LIBMWCAPTURE_API MWIsSetEvent(MWCAP_PTR hEvent)
Querys whether the event is triggered.
MW_RESULT LIBMWCAPTURE_API MWGetDeviceTime(HCHANNEL hChannel, LONGLONG *pllTime)
Gets Device clock according to the channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoAutoHAlign(HCHANNEL hChannel, BOOLEAN bAuto)
Sets whether the horizontal direction of the video is automatically adjusted according to channel han...
MW_RESULT LIBMWCAPTURE_API MWSetVideoBrightness(HCHANNEL hChannel, int nBrightness)
Sets the brightness of video captured according to channel handle.
MWCAP_PTR LIBMWCAPTURE_API MWCreateEvent()
Creates events.
MW_RESULT LIBMWCAPTURE_API MWCaptureVideoFrameToPhysicalAddress(HCHANNEL hChannel, int iFrame, LARGE_INTEGER llFrameAddress, DWORD cbFrame, DWORD cbStride, BOOLEAN bBottomUp, MWCAP_PTR64 pvContext, DWORD dwFOURCC, int cx, int cy)
captures a video frame, fills it into physical memory
MW_RESULT LIBMWCAPTURE_API MWCloseEvent(MWCAP_PTR hEvent)
Destroys the event.
int LIBMWCAPTURE_API MWWaitEvent(MWCAP_PTR hEvent, int nTimeout)
Waits for the event.
MW_RESULT LIBMWCAPTURE_API MWCaptureAudioFrame(HCHANNEL hChannel, MWCAP_AUDIO_CAPTURE_FRAME *pAudioCaptureFrame)
Captures audio frame according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoSamplingPhaseAutoAdjust(HCHANNEL hChannel, BOOLEAN *pbAuto)
Gets whether the video sampling phase is automatically adjusted according to channel handle...
MW_RESULT LIBMWCAPTURE_API MWGetVideoConnectFormat(HCHANNEL hChannel, MWCAP_VIDEO_CONNECTION_FORMAT *pConnectFormat)
Gets the video capture format according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWPinVideoBuffer(HCHANNEL hChannel, MWCAP_PTR pbFrame, DWORD cbFrame)
Pins a video buffer according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoSamplingPhase(HCHANNEL hChannel, BYTE *pbyValue)
Gets the sampling phase according to channel handle.
DWORD LIBMWCAPTURE_API MWMultiWaitEvent(MWCAP_PTR *hEvents, int nCount, int nTimeout)
Waits for the events.
MW_RESULT LIBMWCAPTURE_API MWSetEvent(MWCAP_PTR hEvent)
trigger the event
HNOTIFY LIBMWCAPTURE_API MWRegisterNotify(HCHANNEL hChannel, MWHANDLE hEvent, DWORD dwEnableBits)
Registers notification object according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoBufferInfo(HCHANNEL hChannel, MWCAP_VIDEO_BUFFER_INFO *pVideoBufferInfo)
Gets video buffered in the pro capture card according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWCaptureVideoFrameToVirtualAddress(HCHANNEL hChannel, int iFrame, MWCAP_PTR pbFrame, DWORD cbFrame, DWORD cbStride, BOOLEAN bBottomUp, MWCAP_PTR64 pvContext, DWORD dwFOURCC, int cx, int cy)
captures a video frame, fill it into virtual memory
MW_RESULT LIBMWCAPTURE_API MWSetCustomVideoTiming(HCHANNEL hChannel, MWCAP_VIDEO_CUSTOM_TIMING videoTiming)
Sets the customized video timing according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetDeviceTime(HCHANNEL hChannel, LONGLONG llTime)
Set Device time according to the channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetCustomVideoTimingsCount(HCHANNEL hChannel, DWORD *pdwCount)
Gets the number of customized video timing according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetPostReconfig(HCHANNEL hChannel, DWORD dwDelayMS)
Sets reconfig delay according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetCustomVideoTimingsArray(HCHANNEL hChannel, MWCAP_VIDEO_CUSTOM_TIMING *pVideoCustomTiming, DWORD *pdwCount)
Gets customized video timing according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWRegulateDeviceTime(HCHANNEL hChannel, LONGLONG llTime)
Calibration of the device time with the channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoSaturation(HCHANNEL hChannel, int nSaturation)
Sets the saturation of video captured according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWCloseImage(HCHANNEL hChannel, HOSD hImage, LONG *plRet)
Closes image according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWUploadImageFromPhysicalAddress(HCHANNEL hChannel, HOSD hImage, MWCAP_VIDEO_COLOR_FORMAT cfDest, MWCAP_VIDEO_QUANTIZATION_RANGE quantRangeDest, MWCAP_VIDEO_SATURATION_RANGE satRangeDest, WORD xDest, WORD yDest, WORD cxDest, WORD cyDest, LARGE_INTEGER llSrcFrameAddress, DWORD cbSrcFrame, DWORD cbSrcStride, WORD cxSrc, WORD cySrc, BOOLEAN bSrcBottomUp, BOOLEAN bSrcPixelAlpha, BOOLEAN bSrcPixelXBGR)
Uploads an OSD image physical memory.
MW_RESULT LIBMWCAPTURE_API MWGetNotifyStatus(HCHANNEL hChannel, HNOTIFY hNotify, ULONGLONG *pullStatus)
Gets notify status according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWScheduleTimer(HCHANNEL hChannel, HTIMER hTimer, LONGLONG llExpireTime)
Schedules timer object according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoBrightness(HCHANNEL hChannel, int *pnBrightness)
Gets the brightness of video captured according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoFrameInfo(HCHANNEL hChannel, BYTE i, MWCAP_VIDEO_FRAME_INFO *pVideoFrameInfo)
Gets video frame info according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoTiming(HCHANNEL hChannel, MWCAP_VIDEO_TIMING videoTiming)
Sets the video timing according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWUnpinVideoBuffer(HCHANNEL hChannel, LPBYTE pbFrame)
Unlocks part of video buffer according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoHue(HCHANNEL hChannel, int *pnHue)
Gets the hue of video captured according to channel handle.
HTIMER LIBMWCAPTURE_API MWRegisterTimer(HCHANNEL hChannel, MWHANDLE hEvent)
Registers timer according to the channel handle.
HOSD LIBMWCAPTURE_API MWCreateImage(HCHANNEL hChannel, int cx, int cy)
Creates OSD image according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWStopVideoCapture(HCHANNEL hChannel)
Stops video capture according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetStreamCount(HCHANNEL hChannel, int *pnCount)
Gets the number of streams according to channel handle.
#define LIBMWCAPTURE_API
Definition: MWProCapture.h:36
MW_RESULT LIBMWCAPTURE_API MWStartVideoCapture(HCHANNEL hChannel, MWHANDLE hEvent)
Starts video capture according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetCustomVideoTimingsArray(HCHANNEL hChannel, MWCAP_VIDEO_CUSTOM_TIMING *pVideoCustomTiming, DWORD dwCount)
Sets customized video timing according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetVideoSaturation(HCHANNEL hChannel, int *pnSaturation)
Gets the saturation of video captured according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetVideoSamplingPhaseAutoAdjust(HCHANNEL hChannel, BOOLEAN bAuto)
Sets whether the video sampling phase is automatically adjusted according to channel handle...
MW_RESULT LIBMWCAPTURE_API MWCaptureVideoFrameToPhysicalAddressEx(HCHANNEL hChannel, int iFrame, LARGE_INTEGER llFrameAddress, DWORD cbFrame, DWORD cbStride, BOOLEAN bBottomUp, MWCAP_PTR64 pvContext, DWORD dwFOURCC, int cx, int cy, DWORD dwProcessSwitchs, int cyParitalNotify, HOSD hOSDImage, const RECT *pOSDRects, int cOSDRects, SHORT sContrast, SHORT sBrightness, SHORT sSaturation, SHORT sHue, MWCAP_VIDEO_DEINTERLACE_MODE deinterlaceMode, MWCAP_VIDEO_ASPECT_RATIO_CONVERT_MODE aspectRatioConvertMode, const RECT *pRectSrc, const RECT *pRectDest, int nAspectX, int nAspectY, MWCAP_VIDEO_COLOR_FORMAT colorFormat, MWCAP_VIDEO_QUANTIZATION_RANGE quantRange, MWCAP_VIDEO_SATURATION_RANGE satRange)
Gets a video frame with customize settings, fills it into physical memory.
MW_RESULT LIBMWCAPTURE_API MWSaveSettingsAsPreset(HCHANNEL hChannel)
Saves the presetting configurations of video capture according to channel handle. ...
MW_RESULT LIBMWCAPTURE_API MWUnregisterTimer(HCHANNEL hChannel, HTIMER hTimer)
Unregisters timer according to the channel handle.
MW_RESULT LIBMWCAPTURE_API MWCaptureVideoFrameWithOSDToVirtualAddress(HCHANNEL hChannel, int iFrame, MWCAP_PTR pbFrame, DWORD cbFrame, DWORD cbStride, BOOLEAN bBottomUp, MWCAP_PTR64 pvContext, DWORD dwFOURCC, int cx, int cy, HOSD hOSDImage, const RECT *pOSDRects, int cOSDRects)
Gets a video frame with OSD, fill it into virtual memory.
MW_RESULT LIBMWCAPTURE_API MWGetVideoOSDSettings(HCHANNEL hChannel, MWCAP_VIDEO_OSD_SETTINGS *pOSDSettings)
Gets OSD settings according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWClearEvent(MWCAP_PTR hEvent)
Resets the event.
MW_RESULT LIBMWCAPTURE_API MWUnregisterNotify(HCHANNEL hChannel, HNOTIFY hNotify)
Unregisters notification object.
MW_RESULT LIBMWCAPTURE_API MWStopAudioCapture(HCHANNEL hChannel)
Stops to capture audio according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWSetCtrlStreamID(HCHANNEL hChannel, int nCrtlID)
Sets the ID of controlled stream according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWGetCustomVideoResolutionsCount(HCHANNEL hChannel, DWORD *pdwCount)
Gets the number of customized video resolution according to channel handle.
MW_RESULT LIBMWCAPTURE_API MWStartAudioCapture(HCHANNEL hChannel)
captures audio according to channel handle