gpt4 book ai didi

gstreamer - 如何从 rtspsrc 解复用音频和视频,然后使用 matroska mux 保存到文件?

转载 作者:行者123 更新时间:2023-12-01 05:09:23 25 4
gpt4 key购买 nike

我一直在开发一个应用程序,我使用 rtspsrc 将音频和视频从一个网络摄像机收集到另一个网络摄像机。但是,我无法从相机观看流,因此无法验证流是否按预期工作。为了验证流是否正确,我想将其记录在 SD 卡上,然后在计算机上播放该文件。问题是我希望相机尽可能多地进行解析、解码、卸载,因为这是应用程序的目的。

因此,我必须通过解复用器分离音频和视频流,并进行解析、解码等,然后将它们复用回 matroska 文件。

视频解码器已被省略,因为该相机尚未完成。

Demux 到实时播放接收器(作品)

gst-launch-0.10 -v rtspsrc location="rtsp://host:pass@192.168.0.91/XXX/XXXX?resolution=1280x720&audio=1&audiocodec=g711&audiosamplerate=8000&audiobitrate=64000" latency=0 name=d d. ! rtppcmudepay ! mulawdec ! audioresample ! audioconvert ! autoaudiosink d. ! rtph264depay ! ffdec_h264 ! queue ! ffmpegcolorspace ! autovideosink

多个 rtspsrc 到 matroska(作品)
gst-launch-1.0 -v rtspsrc location="rtsp://host:pass@192.168.0.91/XXX/XXXX?audio=1&audiocodec=g711&audiosamplerate=8000&audiobitrate=64000" latency=0 ! rtppcmudepay ! mulawdec ! audioresample ! audioconvert ! queue ! matroskamux name=mux ! filesink location=/var/spool/storage/SD_DISK/testmovie.mkv rtspsrc location="rtsp://root:pass@192.168.0.91/axis-media/media.amp?resolution=1280x720" latency=0 ! rtph264depay ! h264parse ! mux.

单个 rtspsrc 到 matroska(失败)
gst-launch-1.0 -v rtspsrc location="rtsp://host:pass@192.168.0.91/XXX/XXXX?resolution=1280x720&audio=1&audiocodec=g711&audiosamplerate=8000&audiobitrate=64000" latency=0 name=d d. ! queue ! rtppcmudepay ! mulawdec ! audioresample ! audioconvert ! queue ! matroskamux name=mux d. ! queue ! rtph264depay  ! h264parse ! queue ! mux. ! filesink location=/var/spool/storage/SD_DISK/testmoviesinglertsp.mkv

最后一个示例失败并显示错误消息
WARNING: erroneous pipeline: link without source element

我是否误解了 matroska mux 的用法,为什么上面的 2 个例子有效,但不是最后一个?

最佳答案

问题在这里:

queue ! mux. ! filesink

你需要做
queue ! mux. mux. ! filesink

多路复用器。意味着 gst-launch 应该从 mux 中自动选择一个 pad。并链接它。您还可以手动指定名称,例如 mux.src。因此,从语法上讲,您缺少另一个元素/填充以链接到另一个元素。

关于gstreamer - 如何从 rtspsrc 解复用音频和视频,然后使用 matroska mux 保存到文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26180533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com