Gstreamer SDK,支持iOS8的硬件解码器

Gstreamer SDK,支持iOS8的硬件解码器,ios8,video-streaming,gstreamer,hardware-acceleration,Ios8,Video Streaming,Gstreamer,Hardware Acceleration,我正在寻找一种在gstreamer管道中使用iOS8中的硬件解码器的方法 我采取了以下方法: 我从下载了该软件包 并安装在mac计算机中[10.9.4] 2我已经设法在Xcode中编译了示例代码,并且我正在使用下面的管道组件来解码蒸汽通道中的RTP数据包 udpsrc port=5000 ! application/x-rtp, clock-rate=90000, encoding-name=(string)H264, payload=96 ! rtph264depay ! vtdec! au

我正在寻找一种在gstreamer管道中使用iOS8中的硬件解码器的方法

我采取了以下方法:

我从下载了该软件包 并安装在mac计算机中[10.9.4]

2我已经设法在Xcode中编译了示例代码,并且我正在使用下面的管道组件来解码蒸汽通道中的RTP数据包

udpsrc port=5000 ! application/x-rtp, clock-rate=90000, encoding-name=(string)H264, payload=96  ! rtph264depay ! vtdec! autovideosink sync=true
3不幸的是,它找不到vtdec或vtdec_h264组件

4要检查库中是否有硬件解码器插件,请在installaed软件包中使用xplored小点:

下面是otool over Gstreamer Mach-O通用二进制的输出,共有3种体系结构

发现:

1上述内容不包括,libgstaplemedia_la-vtdec.o

2 gst-plugins-bad-1.4.3/sys/applemedia的Makefile.am包含以下代码

if HAVE_VIDEOTOOLBOX
      libgstapplemedia_la_SOURCES +=  vtenc.c  vtdec.c
      libgstapplemedia_la_LDFLAGS += -Wl,-framework -Wl,VideoToolbox
endif
问题:

1.上述理解是正确的[如果我错了,请纠正我], 在哪里可以获得具有硬件解码功能的iOS GStreamer SDK库 可以在iOS8中使用

2如果不是,我们是否需要借助Cerbero构建系统自行构建GStreamer SDK


我还需要注意什么怪癖

您必须等待1.4.4版本,或者使用cerbero构建系统构建自己。来自1.4或主分支。你可以在这里找到它:

为了构建您自己,您将需要ios8sdk,否则就不会构建硬件解码器/编码器。此外,在应用程序中,您还必须将-weak framework VideoToolbox添加到其他框架旁边的链接器标志中

在1.4.3及之前版本中,vtdec/vtenc仅适用于OSX

if HAVE_VIDEOTOOLBOX
      libgstapplemedia_la_SOURCES +=  vtenc.c  vtdec.c
      libgstapplemedia_la_LDFLAGS += -Wl,-framework -Wl,VideoToolbox
endif