ILMVUserCallback3是用户自定义的接口。方法的put_ReceiveProcObj方法来注册ILMVCallback接口。这个接口有一个方法。
pData | 一个指向帧数据的有效指针,传递给一个LONGLONG (__int64)变量。 |
lWidth | 边框宽度。 |
lHeight | 框架的高度。 |
lBitCount | 帧的每像素位。 |
lSize | 帧缓冲区的大小,以字节为单位。 |
bTopDown | 值,该值指示传递的缓冲区(pData)中的图像是自上而下(1)还是自下而上(0)。 |
lFOURCC | 代表帧的媒体格式的FOURCC代码值。0表示RGB格式。 |
属性接收到的每一帧都调用此方法视频回调过滤器.用户可以通过修改帧的数据来修改每一帧。请注意,每个帧的内存都属于回调过滤器。如果您希望保留帧数据,则必须对其进行复制。用户回调函数可以通过用户回调函数返回代码来指定在回调之后是否继续使用该帧。
在处理帧数据后,这个函数可以返回以下值之一:
价值 | 意义 |
VDCALBK_ERR_OK | 成功。过滤器继续正常工作,传递经过处理的帧。 |
VDCALBK_ERR_DROP | 请勿交付框架。过滤器将丢弃帧,并正常地继续处理流中的下一帧。 |
VDCALBK_ERR_DELIVERLASTFRAME | 交付前一帧(交付的最后一帧)。过滤器保存它向下游传递的最后一帧,以防需要多次传递相同的帧。 |
C/ c++用户注意:你可以简单地将pData转换为指向unsigned char的指针。
.NET用户注意事项:关于如何在.NET应用程序中使用帧数据的更多示例,请参阅ILMAUserCallback3接口.
.NET用户注意事项:这些回调函数在. net中是作为一个没有返回值的函数实现的。为了能够从应用程序返回VDCALBK_ERR_OK以外的值,你需要在从ReceiveProc返回之前抛出HRESULT异常。这样做的一种方法是如下面的例子:
公共类ReturnValueException:异常
{
公共HResultValue ReturnValueException(对象)
{
HResult = (int) HResultValue;
}
}
公共类LEADCallbackPlay: LMVCallbackLib。ILMVUserCallback3
{
公共无效ReceiveProc (intpData,intlWidth,intlHeight,intlBitCount,intlSize,intbTopDown,intlFOURCC)
{
你需要扔只是一个错误如果你想要返回除了VDCALBK_ERR_OK
'扔新ReturnValueException (LMVCallbackLib.VdCalBkErrConstants.VDCALBK_ERR_DROP);
}
}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网络查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送给技术支持!应该有人联系!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格,开始新的聊天。
所有代理目前都离线。
聊天时间:
星期一至星期五
美国东部时间上午8:30 -下午6点
如需与我们联系,请填写此表格,我们将通过电子邮件与您联系。