2016-05-21 45 views
0

我正在为音频文件构建某种扫描算法。 我正在使用多个正在处理其分配的文件段的线程。性能非常好,但是如果我将它与Microsoft Media Foundation Transcode API进行比较,它仍然非常慢。所以我删除了音频帧的处理,因此它只剩下IO访问权限。但它仍然比MediaFoundation慢得多。所以我想知道如何使用FileStream读出整个文件比使用MediaFoundation处理整个文件要慢。我看了一下使用API Monitor的处理,但结果很奇怪:Windows本地文件系统访问API

我在API监视器中看不到任何文件系统访问权限(我已经打开了监视器中的所有数据访问API ):

enter image description here

那么,有没有任何更快的API,开发者不能使用?我错过了什么?

回答

0

我想指出您的注意力在Windows的多媒体类调度程序服务(MMCSS) - MMCSS。 MediaFoundation是针对媒体内容处理进行优化的媒体框架。因此它可以用特定的优化模式处理读写操作。 MMCSS具有下一个名字 - 模式: 音频, 捕获, 分布, 游戏, 播放, 专业音响, 窗口管理器

MediaFoundation通过MFAllocateWorkQueue创建工作队列,并通过 MFBeginRegisterWorkQueueWithMMCSS

执行任务