问题标签 [gstreamer-1.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用 GStreamer GstRTSPServer 为 Axis 相机创建 RTSP 流媒体服务
最后,我想从 Axis 安全摄像头获取 RSTP 流,然后使用 Gstreamers GstRTSPServer 对象使其可用于重新流式传输。现在虽然我什至无法让示例 videotestsrc 在任何播放器中播放。
我一直在关注这里找到的帖子:
GStreamer 启动 RTSP 服务器,用于重新流式传输 IP 摄像机 H264
我已经在控制台中构建并运行了示例代码,但无法在我找到的任何播放器中查看流。我在这里使用的确切代码:
https://github.com/GStreamer/gst-rtsp-server/blob/master/examples/test-readme.c
我使用的两台 Windows 10 计算机都在同一个网络上,我可以双向 ping,两台计算机上的防火墙都完全关闭。
我使用命令尝试了 VLC 播放器、Axis Media Control SDK 修改示例和 GStreamer:
VLC 在日志中声明连接被主动拒绝。它似乎正在尝试连接到端口 80?不确定我是否正确阅读。请参阅下面的 VLC 日志。完整日志从本地机器粘贴到此处: https ://pastebin.com/my3kTsRV ,此处从第二台机器 粘贴: https ://pastebin.com/g1q47UBm
Axis Media Control (AMC) 在本地和辅助计算机上都出现错误:
尝试使用 GStreamer 命令进行连接时,我在本地和辅助计算机上都收到以下错误:
使用 VLC、AMC 和 GStreamer,我可以直接从摄像机中提取流,所以至少有些东西可以工作。在没有 GstRTSPServer 的情况下,我也能够成功运行其他 GStreamer 示例。
如果您想/需要我尝试任何事情,请告诉我。
gstreamer - 如果未在 port-range 属性中指定,则 rtspsrc 使用哪些客户端端口
我有一个来自网络人员的请求,rtspsrc 使用了 RTSP 客户端端口,我们没有在 rtspsrc 元素上设置端口范围属性。
如果未设置此属性,谁能告诉我 rtspsrc 使用了哪些端口?(TCP/UDP)。默认情况下是否有任何最小最大值,或者它是从 1 到 65535 的整个范围。
谢谢你们,克里斯托夫弟兄
gstreamer - gstreamer:在命令行 API 中传递帧 PTS
目前我有这样的设置。
从my-app
我将原始 BGR 帧缓冲区流式传输到 gst。我怎样才能传递这些帧的演示时间戳 (PTS)?我对my-app
. 我可以从它打开其他管道到 gst。
我知道我可以选择使用 gstreamer C/C++ API 或编写 gstreamer 插件,但我试图避免这种情况。
gstreamer - gstreamer-1.0,RTSP H264 流和共享内存
我正在尝试将 RTSP 流写入共享内存,然后将其写入 .mkv 文件。
我使用此命令直接在 .mkv 文件中写入流:
有用。
现在我添加共享内存:
和
我收到消息:
输入缓冲区需要设置 RTP 上限。
好的,我写
我再次收到此消息。
我究竟做错了什么?
linux - 如何为 GStream 配置 v4l2src?
我正在尝试.flv
使用 GStreamer 流式传输网络摄像头流以进行格式化。类似于下面的命令。
我得到以下错误 -
错误的管道:没有元素“v4l2src”
我搜索了这个错误,尝试了下面链接中提到的许多选项。但它似乎不适用于 Ubuntu 16.04 操作系统。
Gstreamer 错误:无法构造管道:没有元素“v4l2src”
更新:我使用 gst-inspect-1.0 来获得以下输出以查看所有已安装的插件。
强文本**
gstreamer - 具有多个摄像头的 gstreamer:如何根据摄像头标识符拆分管道?
我正在尝试构建一个 GStreamer 管道,它将来自多个摄像头的图像交织成一个数据流,该数据流可以通过神经网络传递,然后分成单独的分支进行下沉。我已成功使用appsrc
插件和 Basler Pylon 5 - USB 3.0 API 创建交错馈送。但是,在我完成编写神经网络 GStreamer 元素的工作之前,我想让拆分工作。
目前,我正在考虑用“ID”标记图像,表明它来自哪个相机。然后我想我可以使用这个标签来拆分数据流。但是,我还没有找到任何与此问题完全相关的主题。我已经看到您可以使用tee
插件来分支管道,但我还没有看到它用于基于标签进行拆分。可以tee
用来做这个吗?
我见过人们使用tee
这样的方式根据来源拆分提要:
但是,这不允许我通过神经网络元素拥有单一路径。
如果有帮助,这是我设想的管道图:
gstreamer - 除非我有两个队列,否则为什么屏幕上的视频无法更新?
工作,文件和屏幕显示都工作
不工作。
这是另一组示例。
作品。
没有。为什么不?为什么 tee 的两个输出都需要排队?在最坏的情况下,我希望一个自动视频接收器可以工作而另一个是空白的,但是一个显示单帧而另一个是黑色的。
但以下确实有效。这是怎么回事?
为什么添加第三个输出可以消除对所有这些输出的需要?
有谁知道为什么队列会这样?
这是我正在尝试制作的管道。以上只是缩小的例子。
(注意:管道第一行中奇怪的上限是为了确保我的 Logitech c920 相机输出 h264 而不是 raw,并且我的 Logitech BRIO 以 1080p 输出视频 jpeg,而不是 720p 的 raw。这已经过测试,并且比简单的“decodebin”好得多)
这个问题是通过将 max-size-bytes=0 max-size-buffers=0 max-size-time=10000000000 添加到队列中来解决的。
对于没有开始使用 gstreamer 低级位的任何人来说,这是非常违反直觉的。但如果它有效,我猜它会有效。
gstreamer - 如何在不重新启动管道的情况下更改 gstreamer 管道中当前正在播放的文件?
出于某种原因,我们无法在线找到解决此问题的有效解决方案。
现在我们的源是一个 filesrc 元素。我们目前的非解决方案是将管道的状态更改为 READY,更改 location 属性,并将管道的状态设置为 PLAYING(参见下面的 change_song 方法)。
这给出了以下错误:
我们听到第一首歌曲正在播放,但在尝试重新进入 PLAYING 状态时管道崩溃。这是我们的代码:
我们还尝试了以下方法:
但这给出了同样的错误。
gstreamer - 如何使用 gstreamer 在 windows 上播放 gif 文件
作为标题,我使用这个推荐在 Windows 上播放 gif,但它只显示第一帧然后关闭它。
我想播放整个 gif 文件,是我忘记设置的一些 gst 元素或参数吗?
v4l2 - 将 gstreamer NV12 视频定向到 v4l2loopback 接收器
我想将 NV12 像素格式的视频定向到 v4l2loopback 设备,但我的所有尝试都失败了。我试过这个管道
并且/dev/video1
是我的环回设备。我还尝试使用v4l2loopback-ctl
脚本将环回设备功能设置为 NV12 而没有成功
该管道适用于其他视频格式,那么,将 NV12 定向到 v4l2loopback 设备是否有效?
我正在使用内核版本 4.13.0-37-generic 和 v4l2loopback 版本 0.11.0 使用此提交从源代码编译的 ubuntu 16.04 上工作