只有GStreamer iOS Framework的27MB IPA ...我如何做得更小?

时间:2015-10-28 07:30:32

标签: ios gstreamer multimedia

我非常有兴趣将GStreamer的iOS框架http://docs.gstreamer.com/display/GstSDK/Installing+for+iOS+development用于视频流,但是当我将框架添加到空白项目并添加几行代码以利用它时强大的功能,最终的IPA是27MB。这是添加到我的项目中的最重要的方法,最好的方法是将这个问题剥离出来,因为我确信我只使用了一小部分代码。包含在SDK中。

这是一张显示IPA包装内容的图片: Package Contents

谢谢!

2 个答案:

答案 0 :(得分:2)

在gst_ios_main.h中,您可以禁用所有不需要的插件(确保启用链接器优化,以便删除未使用的代码)。如果这还不够,您可以使用http://cgit.freedesktop.org/gstreamer/cerbero/构建自己的iOS二进制版本(您需要从.package和.recipe文件中删除内容以仅构建您需要的内容)。在99%的情况下,只是从gst_ios_main.h中禁用内容就足够了。

请注意,默认情况下,您将为多个体系结构构建应用程序,因此生成的应用程序将相当大。根据您的使用情况,您可以放弃一些架构。

另一方面,gstreamer.com提供了一个完全过时的GStreamer版本,与GStreamer项目没有任何关系。官方网站是http://gstreamer.freedesktop.org

答案 1 :(得分:1)

SDK的源代码远离您,即用户。您只能访问头文件。因此,您无法从中提取某些类,因为您无权访问实现文件。 当然,如果这个库是开源的,你可以尝试隔离一个类,但有时一切都是如此深层次的联系,几乎不可能。