1

大家好

如果我尝试在 gst-launch 上使用 rtspsrc 代理设置,我有一台带有 gstreamer 版本 1.8.3 的 ubuntu 机器和一台带有 gstreamer 版本 1.4.4 的 arm 设备。我在两个设备上都有相同的内存分配错误。

我想测试是否可以通过轴相机手册中描述的 HTTP 隧道播放轴相机流:

RTSP 可以通过 HTTP 进行隧道传输。为了通过防火墙等,这可能证明是必要的。为了通过 HTTP 隧道传输 RTSP,设置了两个会话;一个 GET(用于命令回复和流数据)和一个 POST(用于命令)。在 POST 连接上发送的 RTSP 命令是 base64 编码的,但在 GET 连接上的回复是纯文本的。要将两个会话绑定在一起,Axis 产品需要一个唯一 ID(在 x-sessioncookie 标头中传递)。HTTP 端口(默认 80)和 RTSP 服务器端口(默认 554)都接受 GET 和 POST 请求。

我在 rtspsrc 看到有 HTTP 隧道的代理设置,我不知道它是否有效,或者我是否走错了路。

为了继续完成这项任务,我将测试这个代理属性,但是如果我启动 gst-launch,我会遇到这个 mem alloc 错误。

管道:

gst-launch-1.0 rtspsrc location="rtsp://root:1qay2wsx@192.168.1.211/axis-media/media.amp" proxy="http://root:1qay2wsx@192.168.1.211/axis-media/media.amp" ! rtph264depay! h264parse ! decodebin ! autovideosink

错误:

(gst-launch-1.0:15450): GLib-ERROR **: /build/glib2.0-prJhLS/glib2.0-2.48.2/./glib/gmem.c:100: failed to allocate 18446744073709551614 bytes

我希望任何人都可以帮助我,并感谢您的帮助。

克里斯托夫

4

0 回答 0