【发布时间】:2015-05-22 13:55:35
【问题描述】:
我的应用程序中有一个要求,我必须从 mp4 文件中读取所有可用的轨道流。
Mp4 文件使用 AAC 格式的轨道数编码。我必须解码才能从文件中获取所有可用的曲目。目前我正在使用 SharpDX 和 IMSourceReader (Media Foundation dlls) 来读取 Streams。但默认情况下,SourceReader 仅返回文件中的第一个音频流。我做对了吗?或者我必须使用任何其他第三方库来实现这一点?
【问题讨论】:
-
仅供参考,尝试使用 SDK topoedit 应用程序打开具有多个音轨的 MP4,我看到 Media Foundation 绝对能够读取多个音轨。
-
如果是。你能分享一下用于读取音轨数量的代码吗?
-
我没有代码 - Topoedit 显示它是可能的,所以你可以查看 SharpDX 为什么它没有被拾取(SharpDX 只选择第一个音轨并跳过其余的?)。跨度>
标签: c# audio sharpdx ms-media-foundation