RTSP帧抓取会产生污点,像素化和损坏的图像 [英] RTSP Frame Grabbing creates smeared , pixeled and corrupted images
问题描述
我正在尝试使用以下命令每秒从RTSP流中捕获单个帧ffmpeg -i rtsp://XXX -q:v 1 -vf fps = fps = 1 -strftime 1 ZZZZ \%H_%M_%S.jpg
I am trying to capture a single frame per second from a RTSP stream with following command ffmpeg -i rtsp://XXX -q:v 1 -vf fps=fps=1 -strftime 1 ZZZZ\%H_%M_%S.jpg
但是某些帧被涂抹,像素化和损坏-如果提高rtsp分辨率,此效果会大大增加 (如果分辨率为例如减少到720P,大多数帧都可以)
But some of the frames are smeared ,pixeled and corrupted - this effect is drastically increases if rtsp resolution is increased (if the resolution is decreased for example to 720P most of the frames are OK)
我不得不说,在VLC或FFPLAY中播放相同的rtsp流是没有流程的.
I have to say that playing same rtsp stream in VLC or FFPLAY is flowless.
我如何解决它以获取更好的质量
How I can fix it to grab better quality
谢谢.
推荐答案
解决方案显然是强制FFMPEG按照以下方式使用 TCP PROTOCOL
Solution for that apparently is to force FFMPEG use TCP PROTOCOL following way
ffmpeg -rtsp_transport tcp -i rtsp://XXX -q:v 1 -vf fps = fps = 1 -strftime 1 ZZZZ \%H_%M_%S.jpg
ffmpeg -rtsp_transport tcp -i rtsp://XXX -q:v 1 -vf fps=fps=1 -strftime 1 ZZZZ\%H_%M_%S.jpg
非常感谢此问题和解决方案
这篇关于RTSP帧抓取会产生污点,像素化和损坏的图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!