ms-media-foundation - 微软媒体基金会的现状如何?

标签 ms-media-foundation

Microsoft Media Foundation (MF) 是在 Windows Vista 中作为 DirectShow 的继承者引入的。我基本上忽略了它,但它有一些很难在 DirectShow 中实现的功能(例如 WMV AC-1 文件的解码)。 Media Foundation 也是一个更现代的 API,因此进行切换似乎是合乎逻辑的。

但是,在线教学资源和官方文档似乎非常缺乏。只有一本涵盖该主题的书(由 Microsoft 出版),并且不再以正常价格提供。 (人们对二手版本收取 500 美元或更多费用。)

据我所知,没有其他书籍。而 Microsoft 的其他技术通常会在多个出版商的多本书中介绍。

媒体基金会官方博客自 2011 年以来就没有更新过。在它活跃的两年里,只撰写了 10 篇技术文章,其中 5 篇涉及错误记录/跟踪,而不是实际功能。

StackOverflow 标签 ms-media-foundation 仅用于 328 个问题,其中 142 个问题尚未得到解答。相比之下,有 1641 个 DirectShow 问题,其中只有 496 个未得到解答。

那么微软媒体基金会发生了什么?新的 API 是否会成功并取代 DirectShow,或者甚至微软会放弃 MF 而转而使用旧的、生锈的(可靠的?)DirectShow。或者是否有另一个非 Microsoft 框架已经取代?

最佳答案

首先,我不知道答案,而且我花了很长时间试图让基本的媒体基础场景发挥作用;有时感觉更像是在寻找一些早已失落的 secret 经文,而不是编程。

我怀疑 Microsoft 确实想让 MF 成为 Windows 平台的标准媒体 API,也许最好的指示是 Windows Universal App Samples其中有 7 个“mfapi.h”实例,但有 0 个“dshow.h”实例。此外,相对较新的 WPF MediaCapture 和 MediaElement 控件确实与 Media Foundation API Hook ,因此可以肯定地说,对于所有新工作,Microsoft 都使用 MF 而不是 DirectShow。

哇,我明白你的意思了 Polinger's MF book !我有这本书(我很快就会以这个价格出售)并且可以向你保证它绝对不值得。尽管我重读了很多次,但我从未真正发现它有多大帮助。它与在线文档几乎相同,因为它坚持少数特定场景(事实上,书中的许多章节只是重新打印了 SDK 示例),并且一旦您需要执行这些之外的操作就靠你自己了。

关于 MF 官方博客,MSDN 论坛上有一个帖子对此表示不满,其中一位 Microsoft 人员对此回应说他们已经更换了博客平台(如果他们能在注释中指出这一点,那显然会很好) )。显然,许多 Microsoft MF 开发人员仍在写博客。这个好像是最“活跃”的one .

更新:如果有人碰巧因 Polinger 书籍引用文献而被吸引到这里,请注意,可以从 here 下载配套代码(书中引用的原始链接是http://go.microsoft.com/FWLink/?Linkid=229072,在撰写本文时重定向到上述页面)。

关于ms-media-foundation - 微软媒体基金会的现状如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33539683/

相关文章:

c++ - 设置 MP3 编码器 mft 输出类型失败

visual-c++ - 微软媒体基金会网络摄像头界面

ms-media-foundation - 有没有像 MediaFoundation 的 GraphEdit 之类的东西?

c++ - 实现 'IMFTransform' 编码或解码 H264 或 AAC

c++ - DXGI 桌面重复 : encoding frames to send them over the network

directx - 使用 DirectX11 像素着色器在 GPU 中从 DXGI_FORMAT_B8G8R8A8_UNORM 到 NV12 的颜色转换

windows - 在 Media Foundation 中使用 COINIT_APARTMENTTHREADED 或 COINIT_MULTITHREADED?

ffmpeg - 在 ffplay 中获取绿屏 : Streaming desktop (DirectX surface) as H264 video over RTP stream using Live555

Windows设备: get "location" string for a given IMFActivate* of a UVC webcam

winapi - MediaFoundation中是否有实时混音效果或MFT?