使用NAudio替换视频的音频流



我有两个文件。两者长度相同(以秒为单位):

  1. 视频文件(H.264,.mov)
  2. 音频文件(PCM,.wav)

如何使用C#应用程序中的NAudio.NET库用文件#2的音频覆盖文件#1的音频?我想将最终结果作为新的视频文件写入磁盘。

我相信使用NAudio 1.7的Media Foundation功能是可能的,但我不知道如何修改视频文件的音频流并重新保存视频。

恐怕NAudio 1.7无法做到这一点。NAudio为媒体基础API的很大一部分提供了互操作包装器,但MediaFoundationReaderMediaFoundationEncoder类的重点仅在于音频。Media Foundation应该可以做到这一点,所以如果您能找到一个使用MF API实现这一点的C++示例,您可以使用NAudio的互操作包装器在C#中重新创建它。或者,您可以尝试使用不同的托管Media Foundation库,如Media Foundation.NET

您可以使用FFMPEG来完成此操作。从c#调用FFMPEG并找到将视频与音频合并的命令。

最新更新