UWP中用于拆分的抓取器
Grabber for splitting in UWP
我需要你的建议。我想开发使用Metro接口进行音频/视频分割的应用程序。
通常我使用DirectShow,使用以下模式:创建一个抓取器,将其添加到DS图中,通过它捕获音频/视频流,并将它们传递给我的AVstream驱动程序进行拆分。但在新的程序中,我想使用媒体基金会,并将其插入UWP。
我如何看待我的新应用程序。它必须有Metro接口来进行通用控制:选择源、添加参数、更改模式等。我也想使用MediaCapture类来捕获流并渲染它们。在这里,我没有看到任何问题,MSDN有很多示例。但我不知道如何在源代码和渲染之间插入抓取器。
抓取器将执行哪些操作:
- 接收来自MediaCapture的输入流
- 流转换:YUV->RGB,添加效果等
- 发送输出流以进行渲染(MediaCapture),并发送到我的AVstream驱动程序以与任何应用程序(Skype、Adobe Flash Player、Edge…)进行拆分
如何制作抓取器。在MSDN中,我找到了三种方法:
- 样品采集槽(https://msdn.microsoft.com/en-us/library/windows/desktop/hh184779(v=vs.85).aspx)。在MF dll中接收/控制/发送流没有问题。但我不知道如何将dll与MediaCapture链接
- 源阅读器(https://msdn.microsoft.com/en-us/library/windows/desktop/dd940436(v=vs.85).aspx)。同样的问题,加上源阅读器无法播放
- 自定义MFT?在任何情况下,MediaCapture都允许通过AddEffectAsync()连接到MFT
我的环境:MS Windows 10,MS Visual Studio Community 2015。
谢谢你的意见。
这个问题和UWP对我来说根本不是实际的。我发现了以下内容:
"有些应用程序可以在后台集中工作,例如视频转换、在线财务数据处理等。现在,当UWP应用程序离开屏幕时,它将被暂停。"
https://wpdev.uservoice.com/forums/110705-universal-windows-platform/suggestions/9950598-exclude-suspending-in-desktop
因此,如果用户最小化程序窗口,则程序会停止视频流。
相关文章:
- 为什么这个加载函数只抓取文件中的第一件事?
- 无法使用 OpenCv 3.4.5 从具有C++ dll 的网络摄像机 (rtsp) 中抓取帧
- 如何从日志文件中抓取状态代码?(在 C++ 中)
- DXGI API:AcquireTextFrame()从不抓取更新的图像,始终为空
- 如何从 avi 文件中抓取所有帧 - 如何修改 MS 样本采集卡样本
- 如何抓取指向Qt中弹出对话框的指针,该对话框阻止了QTest中的UI线程
- 为什么抓取窗口标题的代码会导致应用崩溃?
- 用Xcb而不是Xlib抓取像素的颜色
- 如何在C ++(qt)代码中使用python脚本?(网页抓取方面)
- OpenCV 3.2 在抓取时提供选择超时,但 fscyber 可以工作
- 使用 Matrox 进行帧抓取
- C++生产者使用者中,同一使用者线程会抓取所有任务
- 在编译时间之前抓取常数值
- OpenCV + QML(从另一个线程抓取帧)
- OpenCV视频捕获抓取和检索
- 从文本中抓取句子,将所有句子分别存储在某个数据结构中
- 视频抓取不起作用 OpenCV
- 不抓取时的QGraphicsPixmapItem mouseMoveEvent
- 从二进制文件中抓取文本时,为什么 xdg_vtnr=8 是我的结果
- UWP中用于拆分的抓取器