您好我正在尝试在客户端使用ffmpeg接收udp / rtp流但是遇到了麻烦。
服务器端管道:
gst-launch-1.0 -v filesrc location=video2.mp4 ! decodebin ! x264enc !
rtph264pay ! udpsink host=127.0.0.1 port=5006
在客户端,我可以使用以下管道播放视频:
gst-launch-1.0 -e udpsrc uri=udp://0.0.0.0:5006 ! application/x-rtp, clock-rate=90000, payload=96 ! rtph264depay ! decodebin ! autovideosink
但是,由于我想将流转换为rtsp / http流,我尝试使用ffmpeg接收rtp流并执行以下操作:
ffmpeg -i udp://127.0.0.1:5006 -acodec copy -vcodec copy http://localhost:8090/feed1.ffm
但在此之前,我正在测试这种方法,将流保存到mp4文件中:
ffmpeg -f h264 -i udp://127.0.0.1:5006 -strict -2 -f mp4 stream.mp4
但这不起作用,它给了我以下错误:
访问单元中缺少图片,大小为15019525 [h264 @ 0x11d5100] 没有框架! [h264 @ 0x11f06c0]流0的解码失败[h264 @ 0x11f06c0]无法找到流0的编解码器参数(视频:h264): 未指定的大小考虑增加的值 'analyzeuration'和'probesize'选项[h264 @ 0x11f06c0] 估计比特率的持续时间,这可能是不准确的 udp://127.0.0.1:5006:找不到编解码器参数
有没有人尝试过此类方法或遇到过类似问题,我想就如何解决问题找到一些方向。谢谢!