使用 VLC 进行流式传输时增加 fps 并减少持续时间

Increasing fps & decreasing duration while streaming using VLC

你好 Whosebug:3

我一直在尝试提高 fps 并有效地减少持续时间,同时提高使用 vlc 从我的硬盘驱动器流式传输视频时的速度。如果可能的话,我想转码 ,而 我正在流式传输。我已经可以在流式传输之前加速视频,但这不是我想要的任务。

我经常使用的流媒体命令是(注意xxx.xxx.x.xxx代表我的ip):

vlc --intf dummy -vvv /Users/amr/Downloads/bigbangsample.mp4 --sout '#rtp{dst=127.0.0.1,port=1234,sdp=rtsp://xxx.xxx.x.xxx:1236/test.sdp}'

遵循 Change Frames Per Second for VLC Stream 的提示后,我尝试使用以下命令进行转码:

vlc --intf dummy -vvv /Users/amr/Downloads/bigbangsample.mp4 --sout='#transcode{fps=60}:rtp{dst=127.0.0.1,port=1234,sdp=rtsp://xxx.xxx.x.xxx:1236/test.sdp}'

虽然我仍然可以在没有警告或错误的情况下观看流,但视频似乎根本没有受到影响。

我不确定我的命令是否有误,或者 fps 是否确实已更改但通过复制帧来保持持续时间不变。我是 vlc 和视频处理的新手,非常感谢任何输入。

更新: ffprobe(见下文)似乎表明 fps 没有改变。是否有更改流 fps 的标准方法?

Input #0, rtsp, from 'rtsp://xxx.xxx.x.xxx:1236/test.sdp':

  Metadata:
    title           : Unnamed
    comment         : N/A
  Duration: N/A, start: 21.377938, bitrate: N/A
    Stream #0:0: Audio: aac (LC), 48000 Hz, stereo, fltp
    Stream #0:1: Video: h264 (High), yuv420p(tv, bt709/unknown/unknown, progressive), 720x404 [SAR 1:1 DAR 180:101], 23.98 fps, 23.98 tbr, 90k tbn, 47.95 tbc

感谢您的宝贵时间。

我认为您必须添加 vcodec,即使它是相同的。所以试试

vlc --intf dummy -vvv /Users/amr/Downloads/bigbangsample.mp4 --sout='#transcode{vcodec=h264,fps=60}:rtp{dst=127.0.0.1,port=1234,sdp=rtsp://xxx.xxx.x.xxx:1236/test.sdp}'

(至少对我有用)