仅 GStreamer iOS 框架的 27MB IPA...我如何使它更小?

27MB IPA with just GStreamer iOS Framework... how do I make much smaller?

我对使用 GStreamer 的 iOS 框架 http://docs.gstreamer.com/display/GstSDK/Installing+for+iOS+development 进行视频流传输非常感兴趣,但是当我将该框架添加到一个空白项目并添加几行代码以利用它时功能强大,最终IPA为27MB。这只是添加到我的项目中的一种方式,什么是最好的方式来剥离它的基本必需品,因为我确信我只使用了 SDK 中包含的一小部分代码.

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

谢谢!

SDK 将源代码封装起来,远离用户。您只能访问头文件。因此,您无法从中提取一些 class ,因为您无权访问实现文件。 当然,如果这个库是开源的,你可以尝试隔离一个 class,但有时一切都紧密相连,几乎不可能。

在 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 .