gstreamer:使用 x264、rtph264pay 和 depay 进行流式传输

标签 gstreamer h.264 rtp

基本上我是想让这个东西发挥作用。

gst-launch v4l2src ! videorate ! 'video/x-raw-yuv, framerate=30/1' ! \
x264enc ! rtph264pay ! gstrtpjitterbuffer ! rtph264depay ! \
ffdec_h264 ! xvimagesink

...但我总是得到非常低帧率和这个错误:

gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
There may be a timestamping problem, or this computer is too slow.

显然,即使我尝试 udpsink 流并在 gst-launch 的另一个实例中使用 udpsrc,我也会遇到相同的错误。

我的管道出了什么问题?

谢谢;)

最佳答案

添加到xvimagesink:xvimagesinksync=false。否则它将一直轮询新的帧。

udpsink 也有一个 sync 参数。

关于gstreamer:使用 x264、rtph264pay 和 depay 进行流式传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20311800/

相关文章:

python - 使用Python/Tornado的音频流充当 "radio"

java - Xuggler 编码和混合

ffmpeg - 通过 rtp 协议(protocol)流式传输网络摄像头

linux - GStreamer 将视频流式传输到公共(public) IP 地址

c++ - 将多个视频合并为一个

iphone - 通过 RTP/RTSP 的 H.264 (iPhone)

algorithm - RTP包计算损失

vlc - 使用 VLC 播放 RTP

python - 如何从视频中提取音频?

python - 使用 websocket - Python 从 h.264 视频流中捕获第一张图像