问题标签 [ms-media-foundation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-c++ - 将 RGB24 样本保存到位图
我正在使用 Windows Media Foundation 来处理我的网络摄像头。我已经能够成功地从网络摄像头检索数据样本并确定格式为 RGB24。现在我想将单个帧保存为位图。下面是我用来从网络摄像头读取样本的一小段代码。
因此,一旦我用 IMFSample 填充了 pSample,我该如何将其保存为位图?
microsoft-metro - 为什么 Metro 应用程序不支持 MFCreateMediaSession?
我正在学习 Media Foundation,并希望通过 Metro 应用程序使用它。不幸的是,Metro 应用程序不支持 MFCreateMediaSession。这是为什么?Metro 应用程序如何创建媒体会话来播放应用程序动态生成的 PCM 音频流?
flash - Microsoft Media Foundation 的 RTMP 接收器
我是 Microsoft Media Foundation 的新手,我想让我的应用程序通过 Flash Media Streaming Server 支持实时流式传输。我正在为 Media Foundation 搜索第三方 MFT,但不幸的是,我找不到任何提供 MFT 的公司。更准确地说,我需要一个 RTMP 接收器 MFT。你知道任何好的第三方 RTMP 接收器(商业或免费)还是我必须坚持使用 DirectShow?
ms-media-foundation - MediaFoundation 有类似 GraphEdit 的东西吗?
GraphEdit仅适用于DirectShow,不适用于使用MediaFoundation构建的拓扑。
MediaFoundation 是否有与 GraphEdit 类似的工具?
filter - 商业媒体基础过滤器
我想知道是否有人知道一家生产商业媒体基金会 MFT、接收器和源的公司?现在我正在与 DirectShow 合作,但我想转到 Media Foundation。我对 AAC 和 H.264 解码器和编码器以及 RTMP 接收器特别感兴趣。
谢谢,大卫
ffmpeg - 将原始 H264 NALU 流包装到 MP4 等容器中
我有一个应用程序,它使用 x264 x264_encoder_encode 即时发送编码生成的原始 h264 NALU。我通过普通的 TCP 获取它们,所以我不会丢失任何帧。我需要能够使用 Windows 中的硬件加速 (DXVA2) 在客户端中解码这样的流。我一直在努力寻找一种使用 FFMPEG 使其工作的方法。也许尝试 Media Foundation 或 DirectShow 可能更容易,但它们不会采用原始 H264。我要么需要:
更改服务器应用程序的代码以返回 mp4 流。我对x264没有那么有经验。我可以通过调用 x264_encoder_encode 来获取原始 H264,方法是遵循以下问题的答案:如何使用 x264 C API 将一系列图像编码为 H264?我怎样才能从这个转到 MP4 中包装的东西,同时仍然能够实时流式传输它
我可以在接收器处用 mp4 头文件将其包装起来,然后将其输入到可以使用 DXVA 播放的东西中。我不知道该怎么做
我可以找到另一种方法来使用带有 FFMPEG 的 DXVA 或其他以原始格式获取它的东西来加速它。
一个重要的限制是我需要能够在显示每个解码帧之前对其进行预处理。任何一步完成解码和显示的解决方案都不适合我
两种解决方案我都可以
xna - 命令行 MP4 到 WMV9 转换器
所以 XNA 似乎需要 WMV9 格式的视频,而我有 MP4 文件。我找到了一个不错的工具,叫做 ffmpeg,但它只支持 wmv8 格式。有谁知道任何免费提供的工具
ms-media-foundation - 使用 MediaFoundation 指定完整拓扑
我为仅包含一个流(无音频)的视频文件创建了拓扑。
它包含三个按顺序连接的节点:
- 源流节点
- 一个
Mpeg4Part2VideoDecoder
as 变换节点 - EVR的激活对象作为输出节点
调用SetTopology(),允许部分拓扑导致工作回放。但是,我正在尝试自己解决完整的拓扑。
因此,我首先需要将我的输出节点绑定到一个媒体接收器。我遵循手册中指定的指导方针,所有必需的调用似乎都成功了。设置完整拓扑时,我收到MESessionTopologySet
事件。
不幸的是,播放不起作用,但我没有收到任何错误。
- 创建完整拓扑时是否还需要其他任何东西?
- 我记得在 msdn 文档的某处读到,设置部分拓扑时使用的拓扑加载器也设置了媒体类型。这是必需的吗?如果需要,我在哪里可以找到更多相关信息?
ms-media-foundation - 如何在 MFT 中输出 PCM 数据
现在我已经在媒体基础中创建了一个 ogg 解码器。
我已将 ogg 数据解码为 IMFTransform::ProcessOutput 中的 PCM 数据。
但我无法播放 PCM 数据,那么现在如何播放 pcm 数据?
这是我的 ProcessOutput 代码:
我是否遗漏了什么或这段代码有什么问题。谢谢。
video - Directshow EVR慢速视频播放
我使用 directshow 和 EVR 过滤器编写了一个视频播放器。我在具有以下配置的机器上播放缓慢的问题:
处理器:AMD E-350 1.60 GHz 内存:2 GB
分辨率为 1440*1080 或 1920*1080 及以上的视频在 windows media player 和 Media player classic-HC 中播放良好,但不是我渲染它的方式。
播放在其他具有英特尔双核及以上处理器的机器上很流畅。
我只是将 evr 过滤器添加到我制作的视频图表中并播放它。有什么办法可以提高这台机器上视频的播放质量。任何帮助表示赞赏。