【发布时间】:2019-12-01 08:10:24
【问题描述】:
在实际释放 IMFSample 本身之前,我找不到任何有关释放 IMFSample 中的缓冲区的要求的信息。如果我只是释放 IMFSample 会自动释放它的缓冲区吗?我正在编写一个视频播放器应用程序,并且我收到了来自 IMFSourceReader::ReadSample 的样本。虽然我看到代码正在运行,但我发现 VS2017 中的内存使用量略有增加,但我不确定它是否存在泄漏。我使用的代码基于这篇文章中的示例代码。 Media Foundation webcam video H264 encode/decode produces artifacts when played back
我发现 IMFSample::RemoveAllBuffers 方法可能会或可能不会释放缓冲区,它没有在文档中指定。也许这需要在发布 IMFSample 之前使用? https://msdn.microsoft.com/en-us/library/windows/desktop/ms703108(v=vs.85).aspx
(我在研究中也遇到过另一篇相关文章,但我认为它不适用于我的问题:) Should I release the returned IMFSample of an internally allocated MFT output buffer?
谢谢!
【问题讨论】: