我正在开发一个 windows phone 7 应用程序,它可以录制视频。我想获取视频文件(MP4)的声音部分并对声音进行一些增强。我相信声音在 MP4 中保存为 AAC 帧。(对吗?)如何提取视频 MP4 文件的声音?
由于这是一个视频文件,它可能是一个巨大的文件。所以上传到云端并进行处理并不是一个好的选择。由于这个 WP7 应用程序我不能使用未打包的 dll :( 有没有办法在纯 C# 中做?任何开源工具/示例?
谢谢!
我正在开发一个 windows phone 7 应用程序,它可以录制视频。我想获取视频文件(MP4)的声音部分并对声音进行一些增强。我相信声音在 MP4 中保存为 AAC 帧。(对吗?)如何提取视频 MP4 文件的声音?
由于这是一个视频文件,它可能是一个巨大的文件。所以上传到云端并进行处理并不是一个好的选择。由于这个 WP7 应用程序我不能使用未打包的 dll :( 有没有办法在纯 C# 中做?任何开源工具/示例?
谢谢!
MP4 是一种容器格式,实际上声音部分并不总是 AAC。它可以是 MP3 或任何其他数量的不同音频格式。您可能正在考虑 M4A,我认为这需要 AAC 或 ALAC。
关于音频提取,应该可以仅使用托管代码从 MP4 中提取音频。您必须阅读 MP4 格式(例如,此处-这个问题也值得一读),然后在文件中搜索音频的位置,然后将其复制到自己的缓冲区或进行操作块。即使那样,您也必须能够识别它何时不是您的应用程序不支持的音频格式。
可能已经存在一个可以完成所有这些工作的 .net 库,但我不知道。它可能不是很受欢迎,因为托管代码绝对不是解决此问题的最佳角度,但考虑到这是 Windows Phone,正如您所指出的,它是您唯一的方法。
祝你好运!