Linux openRTSP默认25fps编码(不是24)

Linux openRTSP默认25fps编码(不是24),linux,encoding,rtsp,frame-rate,avconv,Linux,Encoding,Rtsp,Frame Rate,Avconv,我想从一些IP摄像头捕获RTSP流,环顾四周后,我发现了两个很好的工具:avconv和openRTSP openRTSP -u user password rtsp://10.48.34.125/axis-media/media.amp avconv -i "rtsp://user:password@10.48.34.125/axis-media/media.amp" -vcodec copy -f mp4 10.48.34.125.mp4 但出于某些巫毒的原因,当我需要使用没有特定扩展名的U

我想从一些IP摄像头捕获RTSP流,环顾四周后,我发现了两个很好的工具:avconv和openRTSP

openRTSP -u user password rtsp://10.48.34.125/axis-media/media.amp
avconv -i "rtsp://user:password@10.48.34.125/axis-media/media.amp" -vcodec copy -f mp4 10.48.34.125.mp4
但出于某些巫毒的原因,当我需要使用没有特定扩展名的URL时,例如:

rtsp://user:password@10.48.34.46/
avconv返回401未经授权

所以我现在只能使用openRTSP

问题是,与avconv不同,openRTSP输出的原始文件被编码为25fps,这使得我的一些视频看起来像是在快进。我发现了一种cpu昂贵的方法,可以将文件重新编码到更接近我需要的帧速率:

avconv -r 7 -i video-H264-1 -r 24 -f mp4 10.48.34.28.mp4
在本例中,我强制原始文件的帧速率为7,输出文件的帧速率为24。我尝试使用openRTSP内置标志,但输出文件的帧速率仍然为25:openRTSP-F7-u用户密码rtsp://10.48.34.145/mpeg4/media.3gp

可悲的是,视频在某些点上看起来很奇怪,这是因为原始流有时具有可变的帧速率,例如在夜间

我的问题是,有没有什么方法可以将这个默认的Enconding取消到25fps

为什么是25岁?我的意思是,这不是24小时的标准吗?

试试:

avconv -rtsp_transport tcp -i rtsp://server -an -vcodec copy -f mp4 10.48.34.28.mp4
如果要将原始视频速率更改为24,则必须对其进行转码:

avconv -rtsp_transport tcp -i rtsp://server -an -vcodec libx264 -r 24 -f mp4 10.48.34.28.mp4