Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在Gstreamer中构建hls视频(AES加密与否)的管道_Ios_Video_Encryption_Gstreamer_Http Live Streaming - Fatal编程技术网

Ios 如何在Gstreamer中构建hls视频(AES加密与否)的管道

Ios 如何在Gstreamer中构建hls视频(AES加密与否)的管道,ios,video,encryption,gstreamer,http-live-streaming,Ios,Video,Encryption,Gstreamer,Http Live Streaming,我是gstreamer的新手。我想通过gstreamer实现一个iOS应用程序来播放hls视频。我使用的是1.6.2版。我在互联网上学习了一些教程,因此获得了以下信息: souphttpsrc location=some_m3u8_url!hlsdemux!tsdemux name=mux mux!队列h264parse!avdec_h264!自动视频接收多路复用器!队列啊!法德!自动音频接收器 我发现一些hls视频URL需要测试,但奇怪的是,它部分工作。 有时,它会在几秒钟内播放视频,然后停止

我是gstreamer的新手。我想通过gstreamer实现一个iOS应用程序来播放hls视频。我使用的是1.6.2版。我在互联网上学习了一些教程,因此获得了以下信息:

souphttpsrc location=some_m3u8_url!hlsdemux!tsdemux name=mux mux!队列h264parse!avdec_h264!自动视频接收多路复用器!队列啊!法德!自动音频接收器

我发现一些hls视频URL需要测试,但奇怪的是,它部分工作。
有时,它会在几秒钟内播放视频,然后停止播放,并给出:
从元素hlsdemux0接收到的错误:内部数据流错误。

有时它不播放视频,只显示视频的第一帧

我还尝试了
playbin
decodebin
,但都不起作用。错误消息如下:
缓冲4%

缓冲8%

从元素hlsdemux0接收到错误:GStreamer遇到一般流错误

这种错误让我心烦意乱了好几个星期,我找不到任何帮助。此外,我还需要播放加密视频,但我不知道该功能是否集成

希望有人能帮助我或给我一些建议。非常感谢


PS:Dev环境:Xcode 7.3,iOS 9.3.1(ipad)。

几个月前我找到了解决方案,它工作得非常好。所以我把它贴出来,以防有人需要

souphttpsrc name=src!hlsdemux!tsdemux名称=u!队列h264parse!avdec_h264!自动视频接收器!队列啊!法德!音频转换!音频重采样!自动音频接收器


当然,对于那些没有太多定制需求的用户,您可以使用playbin或uridecodebin。

我几个月前就找到了解决方案,效果非常好。所以我把它贴出来,以防有人需要

souphttpsrc name=src!hlsdemux!tsdemux名称=u!队列h264parse!avdec_h264!自动视频接收器!队列啊!法德!音频转换!音频重采样!自动音频接收器


当然,对于那些不太需要定制的用户,您可以使用playbin或uridecodebin。

您可以升级到1.6.4吗?我想有一些错误修正。。您还可以使用缓冲区大小和更大的缓冲区,也可以使用更简单的管道,使用
uridecodebin uri=somelocation buffer size=10000000 name=u!自动视频接收器。autoaudiosink
或类似的东西。@otopolsky感谢您的建议。我更新了,但没有更好的。它一直缓冲到98%,然后停止并停留在第一帧。无论我如何改变缓冲区大小,我都无法播放它。你能升级到1.6.4吗?我想有一些错误修正。。您还可以使用缓冲区大小和更大的缓冲区,也可以使用更简单的管道,使用
uridecodebin uri=somelocation buffer size=10000000 name=u!自动视频接收器。autoaudiosink
或类似的东西。@otopolsky感谢您的建议。我更新了,但没有更好的。它一直缓冲到98%,然后停止并停留在第一帧。无论我如何改变缓冲区大小,我都无法播放它。