如何在iOS SDK中使用GStreamer插件 - 好/坏/丑

时间:2015-06-12 04:14:47

标签: xcode plugins sdk gstreamer

根据此处的链接http://gstreamer.freedesktop.org/releases/gst-plugins-base/1.4.5.html

我想使用适用于iOS SDK的Good / Bad插件,但不知怎的,我无法弄清楚如何。 我知道插件可以很容易地安装在MAC OSX上,以便与GOSreamer一起使用MAC OSX,但是如何使它们与iOS SDK一起使用呢?

1 个答案:

答案 0 :(得分:3)

这里是我最终能够使用gst-plugins-good汤来使用来自iOS GStreamer界面的libsoup。

首先说明iOS GStreamer框架的installation。有人可能会收到安装程序可能无法安装在“此位置”的警告。单击该位置将删除该消息,安装程序仍应正常工作。

安装在/Users/user/Library/Developer/GStreamer/iPhone.sdk/GStreamer.framework/Versions/1.0/GStreamer中的大blob(~1.3 GB) 似乎包含所有插件,包括好的和坏的。

旧版iOS安装中的tutorials基本上显示了使用插件需要包含的内容。必须静态声明和注册。教程中的文件gst_ios_init.h和gst_ios_init.m显示了如何完成此操作。只需打开dmg文件并复制文件即可。我还发现网上提到的至少一个插件没有在GStreamer页面上记录,但仍然可以包含下面的方法。请注意必须使用的G_BEGIN_DECLS

G_BEGIN_DECLS

#define GST_IOS_PLUGINS_NET

#if defined(GST_IOS_PLUGIN_SOUP) || defined(GST_IOS_PLUGINS_NET)
GST_PLUGIN_STATIC_DECLARE(soup);

G_END_DECLS



int main (int   argc, char *argv[])
{

#if defined(GST_IOS_PLUGIN_SOUP) || defined(GST_IOS_PLUGINS_NET)
GST_PLUGIN_STATIC_REGISTER(soup);

QString desc = QString("souphttpsrc location=%1").arg(base_url);
source  = gst_parse_bin_from_description_full(desc.toLatin1().data(),  TRUE, NULL, GST_PARSE_FLAG_NO_SINGLE_ELEMENT_BINS, &err);
...

}