gstreamer

无法使用 RIST 协议接收多播 RIST 流,但 RTP 可以工作
gstreamer

无法使用 RIST 协议接收多播 RIST 流,但 RTP 可以工作

我正在使用 gstreamer 来多播 RIST 流: gst-launch-1.0 filesrc location=test.mts ! tee name=t ! queue ! typefind ! rtpmp2tpay ! ristsink address=239.255.0.1 port=5004 t. ! queue ! tsdemux ! fakesink sync=true 然后在我的客户端上,我将 RIST 流转换为标准 RTP 并在 VLC 中对其进行测试: gst-launch-1.0 ristsrc address=239.255....

Admin

将新流添加到 Gstreamer 录制
gstreamer

将新流添加到 Gstreamer 录制

我目前有一组使用 GStreamer 和 SDP 录制的流,命令类似如下 gst-launch-1.0 --eos-on-shutdown filesrc location=test.sdp ! sdpdemux timeout=0 name=demux webmmux name=mux ! filesink location=test.webm demux. ! queue ! rtpopusdepay ! opusparse ! mux. 对于在 SDP 中声明的多个流,这可以正常工作。但是,有时流可能会迟到,因此它们在录制时不是原始 SDP 的一部分...

Admin

使用 GStreamer Pipeline 创建符合 onvif 规范的摄像头
gstreamer

使用 GStreamer Pipeline 创建符合 onvif 规范的摄像头

我有一台摄像机,我正在使用 GStreamer 传输视频数据。使用以下管道。 gst-launch-1.0 -e camerasrc ! video/x-h264,width=1920,height=1080,framerate=30/1 ! h264parse config-interval=-1 ! rtph264pay pt=96 ! udpsink host=127.0.0.1 port=8554 现在我想使流式传输符合 ONVIF 标准。如何使用 Gstreamer 来实现? ...

Admin

如何增加 Xv 适配器端口的数量?
gstreamer

如何增加 Xv 适配器端口的数量?

对于我的使用情况来说,xv 视频端口的数量太少,例如 xvinfo 报告: X-Video Extension version 2.2 screen #0 Adaptor #0: "GLAMOR Textured Video" number of ports: 16 port base: 164 如何将数字增加到 32 或者更好的 64? 而且 gstreamer 无法创建超过 16 个 xvimagesinks,因为没有更多可用端口。 ...

Admin

将 Linux 桌面作为虚假网络摄像头传输到 virtuabox windows 客户机
gstreamer

将 Linux 桌面作为虚假网络摄像头传输到 virtuabox windows 客户机

我想捕获我的 Linux 桌面(ubuntu 20.04)(的一部分),并将其作为网络摄像头传输到在 Virtualbox 中运行的 Windows 10 客户 VM。 我发现在 Linux 上使用桌面作为虚假网络摄像头这让我受益匪浅。 所以我安装了 v4l2loopback ( apt install v4l2loopback-dkms),然后运行modprobe v4l2loopback。 然后我运行了 ffmpeg 命令:ffmpeg -f x11grab -framerate 25 -video_size 1280x720 -i :1.0+0,0 ...

Admin

使用 gphoto2 访问麦克风
gstreamer

使用 gphoto2 访问麦克风

有大量文献使用 gphoto2 将 DSRL 用作网络摄像头。通过这些技术,系统将相机视为新的视频设备 gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video0 或者 gphoto2 --stdout --capture-movie | gst-launch-1.0 fdsrc fd=0 ! decodebin name=dec ! queue ! videoconvert ! tee ! v...

Admin

无法使用 Gstreamer 通过 rtp 传输音频
gstreamer

无法使用 Gstreamer 通过 rtp 传输音频

我正在使用以下 gstreamer 命令行通过 RTP 将音频从 QuickTime 文件发送到端口/端点。我可以成功地将视频从文件发送到端口,但不能发送音频。我在端口 5054 上执行 tcpdump 测试,可以看到数据包通过网络传输。如果我嗅探 5052,则看不到数据包。我可以通过网络正常发送测试信号,所以我怀疑我的解码箱出了什么问题?这引出了下一个问题。有没有办法分析 gstreamer 管道的工作原理? gst-launch-1.0 \ rtpbin name=rtpbin \ filesrc location=starwars.m...

Admin

GStreamer 定义用于传出流量(rtsp)的端口
gstreamer

GStreamer 定义用于传出流量(rtsp)的端口

我尝试运行一些自定义 rtsp 软件,但它有一个令人讨厌的怪癖。它无法协商发送视频的端口。它总是将视频发送到发出请求的端口。下面是一个简单的例子: 假设 gstreamer 使用本地机器上的端口 51000 连接到 RTSP 服务器上的端口 8054。然后,RTSP 服务器将尝试将视频发送到 gstreamer 正在运行的机器上,该端口是 gstreamer 最初用于本地连接到 RTSP 服务器的端口。 我知道的通常行为是协商一个端口并将其用于传输视频。 由于我无法在运行 gstreamer 的机器上使用端口 >50,000,因此我正在寻找一种方...

Admin

视频转码的最大 cuda 实例限制是多少?
gstreamer

视频转码的最大 cuda 实例限制是多少?

我在 Azure Nc6s_v3 虚拟机上设置了 Nvidia V100 卡。我设置了最新的 CUDA 驱动程序和 SDK。我从“Video_Codec_SDK_9.0.20”编译了示例程序,并使用 AppTrans 二进制文件验证了最大并行转码会话。我发现我可以运行 25 个并行转码实例(25 个解码,25 个编码),第 26 个实例将等待任何会话被取消初始化。 有人能解释一下为什么会有这种限制吗? 根据文章最大并发会话数没有限制。 我通过启用 Nvidia 插件(nvdec 和 nvh264enc)编译了 Gstreamer 框架。我在这里也看到了...

Admin

Gstreamer - 丢失“最后”缓冲区
gstreamer

Gstreamer - 丢失“最后”缓冲区

我正在使用带有 souphttp、demux 和 appsink 的 gstreamer。appsink 会在收到新的 pad 请求时动态连接到 demux。我使用的 hlsdemux 似乎正在丢弃“最后一个”缓冲区,因为我错过了大约 0.5 秒的数据包。 我根据“new_sample”信号检索数据包。 关于带有动态 pad 的 demuxers-->appsink 有任何已知问题吗?收到 EOS 或添加新 pad 后我应该做什么具体的事情吗? ...

Admin

Gstreamer - 流媒体任务暂停,原因未协商
gstreamer

Gstreamer - 流媒体任务暂停,原因未协商

我正在尝试使用 gstreamer 在 jetson tx1 和我的电脑之间通过本地网络传输视频。我确保我的相机没有问题,并且我的设备通过本地网络连接。 这是我的终端命令:首先,我使用ssh命令连接到已连接摄像头的 nvidia jetson tx1。然后,在 jetson 上运行以下命令: sudo gst-launch-1.0 v4l2src device=/dev/video1 ! videorate max-rate=25 ! videoconvert ! omxh265enc qp-range=30,50:30,50:30,50 control...

Admin

使用 gstreamer 或 avconv 通过 RTP 传输 .jpg 流
gstreamer

使用 gstreamer 或 avconv 通过 RTP 传输 .jpg 流

我有一个图像文件夹,其中正在不断更新 Photo.jpg(1 FPS)。 我需要能够通过 RTsP 将这张照片作为连续的视频流传输,以便使用 VLC 观看。 执行此操作的有效解决方案或查询是什么?我有 avconv 和 gstreamer,我相信两者都可以解决问题,但我尝试使用这两种启动语法时都没有成功。 gst-launch-1.0 multifilesrc location="C:\\Pictures\\Photo.jpg" loop=true start-index=0 stop-index=0 ! image/jpeg,width=640,h...

Admin

如何使用 gstreamer 将屏幕流传输到远程计算机
gstreamer

如何使用 gstreamer 将屏幕流传输到远程计算机

我想使用 gstreamer 将我的计算机的屏幕传输到其他计算机并生成一个 rtsp 地址以便在 Opencv 中使用。 我尝试了几个在计算机之间传输网络摄像头的示例,并且它运行正常: Command on the remote computer gst-launch-1.0 -v v4l2src device=/dev/video1 ! "image/jpeg,width=1280, height=720,framerate=30/1" ! rtpjpegpay ! udpsink host=192.168.1.17 port=5001 Comman...

Admin

为什么OpenCV + GStreamer比实际时间晚了整整两秒?
gstreamer

为什么OpenCV + GStreamer比实际时间晚了整整两秒?

我正在尝试通过 RTSP 协议上的 h264 摄像头捕获实时视频。在终端上,以下gst-启动-1.0命令提供几乎实时的反馈: gst-launch-1.0 playbin uri=rtsp://IP:PORT/live uridecodebin0::source::latency=0 当我将转换后的 uri 放入 OpenCV VideoCapture 时,它​​可以工作,但总是落后两秒。以下两个 URL 似乎给出了相同的结果: cv2.VideoCapture("uridecodebin uri=rtsp://IP:PORT/live latenc...

Admin

当我在管道中使用 vaapisink 时,GStreamer 播放的视频分辨率不正确
gstreamer

当我在管道中使用 vaapisink 时,GStreamer 播放的视频分辨率不正确

我尝试使用 gstreamer 播放视频。有两个可能的输出接收器可供使用:waylandsink和vaapisink。当我使用播放视频时waylandsink,一切都很好。当我尝试使用播放时vaapisink,它以错误的分辨率播放(屏幕的一部分是空白的)。 当我使用以下管道播放视频时,一切正常 gst-launch 1.0 filesrc location=test.mkv ! video/x-raw ! decodebin3 ! waylandsink 此管道无法正常工作。当我更改分辨率参数时,它们会被忽略。 gst-launch 1.0 fil...

Admin