我最近实现了一个简单的代码,该代码可以通过引用this tutorial和this每10秒动态地更改文件接收器位置来记录rtsp流。
Rtsp流示例:rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov
但是,当我测试 x264enc 元素时,结果视频似乎丢失了很多帧。
当我打开录制的视频时,它们始于例如00:07而不是00:00。
这是我的代码。...
编译:
g ++ test.cpp -o测试`pkg-config --cflags --libs gstreamer-1.0`
gstreamer版本:1.14.4
g ++版本:8.2.1
有人可以帮助解决这个问题吗?
编辑:
我终于用这个概念解决了这个问题:
pipeline = rtspsrc ! rtpjpegdepay ! queue ! bin
bin = (ghost pad) ! jpegdec ! openh264enc ! h264parse ! mp4mux ! filesink
bin
将动态地从管道中删除,并每10秒钟向管道中添加一个新的管道。