如何在C#中将AVI转换为3gp?

是否可以在C#中将AVI文件转换为3gp? 如果是这样我怎么能这样做? 任何想法将不胜感激,提前谢谢。

这取决于你的意思“转换”。 3GP和AVI都是包装格式,所以你只是想改变容器格式,还是想重新编码流?

不管怎样,你应该看看ffmpeg ( Windows信息 )。 对于简单的情况(即你有文件,想要一个输出文件),你应该考虑在命令行上调用它(即System.Diagnostics.Process ),这要容易得多(并且不涉及任何许可)问题)。 如果你想以编程方式访问libavcodec / libavormat,我强烈建议跳过任何.NET包装器库(它们都处于不同的吸吮状态; Tao是最好的,但这并不多说)而是编写C ++ / CLI包装器。 我开始这样做了 ,一旦我掌握了数据编组等,并想出如何构建它( 第1 部分 , 第2部分 ),它就不是太难了。

没有非常简单的方法可以做到这一点; 我的建议是使用ffmpeg,通过使用外部调用它的C#包装器。 ffmpeg似乎有几个C#包装器(就像这个 ),但它们似乎都处于开发的各个阶段,并不是真正可用的。 您唯一的选择可能是通过外部调用它。

Interesting Posts