使用GStreamer在Android上进行硬件video解码

我必须在Android上实现一个GStreamer管道,它将从linux机器上的mpegts服务器获得一个实时的mpegts流(也通过GStreamer实现)。

现在,我有一个Samdung Galaxy Tab2,5113,它有Android-4.1.2-JellyBean和API级别= 16

我的接收器管道如下:data-> pipeline = gst_parse_launch(“udpsrc caps = \”video / mpegts,systemstream = true,packet-size = 188 \“!tsdemux!queue!h264parse!amcviddec-omxgoogleh264decoder!eglglessink”,&error );

这是根据GStreamerSDK的Android-Tutorial-3。

当我按下播放按钮时,我收到此错误:06-26 00:04:56.927:D / GStreamer + tutorial-3(7201):0:00:05.920807000 0x5a65c320 jni / tutorial-3.c:88:set_ui_message设置消息:从元素amcvideodec-omxgoogleh264decoder0收到错误:GStreamer遇到一般支持库错误。

Eclipse IDE的logcat上显示的应用程序的更详细日志: http : //pastebin.com/EX8sgcEp

因此,似乎amcviddec-omxgoogleh264decoder元素无法使输入数据出列,GStreamer也会遇到库错误。

我将不胜感激任何帮助或建议。

我们已经在一段时间后解决了这个问题。

只是把它放在这里供其他人参考。

问题是,如果我们要使用amcviddec-omxgoogleh264decoder,除了gstreamer应用程序之外,还需要安装一些依赖文件。 不要确切地知道它们是什么。

无论如何,如果在android root中看到/etc/media-codec.xml文件,我们就会知道一个Android设备支持的所有多媒体编解码器。 这包括硬件编解码器芯片支持的编解码器。

对我们来说,我们尝试了amcviddec-omxtiducati1videodecoder,它就像一个魅力。

此致,Yusuf Husainy。