GStreamer iOS,无法构建管道:没有元素“playbin2”

时间:2013-12-06 15:44:55

标签: ios gstreamer playbin2

我目前正在尝试将GStreamer集成到iOS项目中。

我已经下载了gstreamer-1.0-devel-1.2.1-ios-universal.pkg并将GStreamer.framework添加到项目中。我在http://docs.gstreamer.com/display/GstSDK/iOS+tutorial+4%3A+A+basic+media+player上关注iOS教程,前一个教程工作正常,但是当创建一个基本的媒体播放器时,我总是遇到启动管道的问题,下面是我使用的代码

-(void) app_function{
GstBus *bus;
GSource *timeout_source;
GSource *bus_source;
GError *error = NULL;

GST_DEBUG ("Creating pipeline");

/* Create our own GLib Main Context and make it the default one */
context = g_main_context_new ();
g_main_context_push_thread_default(context);

/* Build pipeline */
pipeline = gst_parse_launch("playbin2 uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm", &error);
if (error) {
    gchar *message = g_strdup_printf("Unable to build pipeline: %s", error->message);
    g_clear_error (&error);
    [self setUIMessage:message];
    g_free (message);
    return;
}
....
}

我收到错误:无法构建管道:没有元素“playbin2”

我同样下载GStreamer for mac,使用相同的方法(gst_parse_launch()),我可以启动一个内部视频播放器来播放视频。

我想也许插件(playbin2)没有很好地安装或配置,我到处搜索希望找到解决方案,但我没有找到...任何帮助将不胜感激。

提前致谢

2 个答案:

答案 0 :(得分:6)

在1.0中,playbin2被重命名为

答案 1 :(得分:1)

我将gst_ios_init.h添加到main.m文件中。

#import "gst_ios_init.h"

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

gst_ios_init.h和gst_ios_init.m都位于gstreamer教程中。 您应该将文件添加到项目之前,通过file->将文件添加到"项目名称"。