我目前正在使用MediaFoundation使用HTTP从远程服务器读取MP4视频。我使用源解析器方法CreateObjectFromURL
创建媒体源。
除了一个巨大的痛点外,这个效果非常好并且视频很棒:
源收到的所有数据似乎都缓存到磁盘,特别是...AppData\Local\Microsoft\Windows\INetCache\IE
。这并不理想,因为流可以无限期打开,因为视频是实时的。
目前唯一真正的解决方案是定期断开连接,清理临时互联网文件,然后重新连接。这需要每隔几个小时完成一次,以阻止机器充满和爆炸。当然,对于最终用户来说,这不是一个真正可以接受的长期解决方案。
我尝试通过将媒体源上的MFNETSOURCE_CACHEENABLED
属性设置为false来禁用缓存,但它似乎根本不会停止缓存。
我在某处丢失了一个技巧吗?