提问人:LUN2 提问时间:6/15/2022 更新时间:6/15/2022 访问量:45
使用 IMediaEventSink 从 pin 方法发布用户消息 (DirectShow)
Using IMediaEventSink to post user message (DirectShow) from the pin methods
问:
DirectShow(Win10,C++)图形元素 - 引脚是否可以使用IMediaEventSink接口发布自己的消息(通知方法)? 例如,在我的 FillBuffer() 实现中,我想将有关从外部源接收数据时发生的错误的信息传递给扩展的主应用程序。 是否可以使用此接口来执行此操作? 如果是,引脚(FillBuffer 的所有者)如何获取此接口? 据我所知,FillBuffer() 在单独的线程中工作。Notify() 的调用是线程安全的吗?
答:
0赞
Roman R.
6/15/2022
#1
筛选器类已具有成员方法 CBaseFilter::NotifyEvent
来帮助传递事件/消息。
下面是筛选器实现如何发送事件的示例。
应用程序是以常规方式处理此类事件:处理图形事件。
你不需要为额外的线程安全而烦恼,运行时和基类来解决这个问题。
评论