Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.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
Video streaming rtsp restream上的GStreamer文本覆盖_Video Streaming_Streaming_Gstreamer_Rtsp - Fatal编程技术网

Video streaming rtsp restream上的GStreamer文本覆盖

Video streaming rtsp restream上的GStreamer文本覆盖,video-streaming,streaming,gstreamer,rtsp,Video Streaming,Streaming,Gstreamer,Rtsp,我想在一个rtsp流上放置一个文本覆盖,然后用gst rtsp服务器重新对其进行处理 重排部分工作,但当我想把文本覆盖在它比它失败,不能链接错误 我的管线当前看起来如下所示: ./test-launch "(rtspsrc location=rtsp://hostname/video latency=0 ! application/x-rtp, clockrate=90000, encoding-name=H264, profile=high ! rtph264depay ! h264parse

我想在一个rtsp流上放置一个文本覆盖,然后用gst rtsp服务器重新对其进行处理

重排部分工作,但当我想把文本覆盖在它比它失败,不能链接错误

我的管线当前看起来如下所示:

./test-launch "(rtspsrc location=rtsp://hostname/video latency=0 ! application/x-rtp, clockrate=90000, encoding-name=H264, profile=high ! rtph264depay ! h264parse ! rtph264pay name=pay0 pt=96)"
./test-launch "(rtspsrc location=rtsp://hostname/video latency=0 ! textoverlay text="text" valignment=center halignment=center font-desc=36 ! application/x-rtp, clockrate=90000, encoding-name=H264, profile=high ! rtph264depay ! h264parse ! rtph264pay name=pay0 pt=96)"
当我添加一个简单的textoverlay时,我无法将TextOverlay0链接到rtph264depay,也无法链接到caps或h264parse,或者rtph264pay,因此基本上什么都没有

带有textoverlay的管线如下所示:

./test-launch "(rtspsrc location=rtsp://hostname/video latency=0 ! application/x-rtp, clockrate=90000, encoding-name=H264, profile=high ! rtph264depay ! h264parse ! rtph264pay name=pay0 pt=96)"
./test-launch "(rtspsrc location=rtsp://hostname/video latency=0 ! textoverlay text="text" valignment=center halignment=center font-desc=36 ! application/x-rtp, clockrate=90000, encoding-name=H264, profile=high ! rtph264depay ! h264parse ! rtph264pay name=pay0 pt=96)"

如何向流中添加基本文本覆盖?

那样不行。第一行将只是重新打包RTP数据,而不影响视频比特流。对于您想要做的事情,您必须解码视频,在视频上绘制文本,然后再次编码视频。这意味着您需要一个完整的代码转换管道,与第一个用例相比,它非常消耗CPU。谢谢,同时我发现我必须先解码,但直到现在我还不能制作一个工作管道,因为流非常糟糕,它嵌入了数据流,这导致了各种错误。这就是为什么流没有被触及。在cpu端,我的服务器应该可以轻松地处理这个问题。