在MonoTouch上即时转换MPEG文件

时间:2009-11-03 21:53:18

标签: .net mono ffmpeg xamarin.ios mpeg

我有一个iPhone应用程序,它使用小型MPEG电影显示荷兰手语的手势。我得到了Gebarencentrum的电影,得到了他们的许可。但它们都采用旧的MPEG-1格式,而iPhone则无法播放。允许我批量转换几部电影并将它们放在我自己的网站上,但他们不会让我用6000部电影做到这一点。所以我需要将电影从服务器转到我的iPhone后将电影从MPEG-1转换为MP4。 我搜索了像ffmpeg这样的库,但是如果它已经移植到Mono则没有。也许我没有将ffmpeg移植到.NET / Mono,因为我可以P / Invoke到ffmpeg库。但是我可以在我的iPhone上安装ffmpeg吗?如果是的话,怎么样?

我对任何想法持开放态度。

谢谢,

理查德

2 个答案:

答案 0 :(得分:3)

将ffmpeg编译为XCode中的库,然后将其链接到您的程序: http://wiki.monotouch.net/HowTo/Interop/Consuming_3rd_Party_ObjC_Libraries

由于应用程序只能在iPhone上静态链接,而不是通过共享库名称使用P / Invoke,如下所示:

[DllImport(“ffmpeg.so”)] extern static int ffmpeg_init();

您需要使用__Internal目标:

[DllImport(“__ Internal”)] extern static int ffmpeg_init();

答案 1 :(得分:0)

是不是使用ffmpeg将mpeg-1转换为iPhone上可播放的非常mp4(v)slowww? 或者这是一个好方法吗?