xav*_*666 6 video vlc-media-player ffmpeg streaming
我正在尝试使用 RTP 在 2 台主机之间流式传输视频。我以前使用 VLC 使用以下 2 个命令解决了这个问题
cvlc video_file.mp4 --sout "#transcode{vcodec=h264, acodec=mpga, ab=128, channels=2, samplerate=44100}: duplicate{dst=rtp{dst=10.X.X.X, port=5004, mux=ts}}" --run-time 40 vlc://quit
cvlc rtp://@:5004 --sout "#transcode{vcodec=h264, acodec=mpga, ab=128, channels=2, samplerate=44100}: std{access=file, mux=mp4, dst=downloaded.mp4}" --run-time 40 vlc://quit
现在我想用 FFMPEG 实现相同的目标。等效的命令是什么?
ffmpeg -re -i video_file.mp4 -vcodec libx264 -an -f rtp rtp://10.X.X.X:5004 -vn -acodec libtwolame -f rtp rtp://10.X.X.X:5005
ffmpeg -i rtp://10.X.X.X:5004 -vcodec libx264 -an -i rtp://10.5.19.244:5005 -acodec libtwolame -vn -t 00:00:35 downloaded.mp4
但是,我无法以这种方式记录接收到的流。
假设客户端的IP是10.0.0.2
ffmpeg -re -thread_queue_size 4 -i source_video_file.mp4 -strict -2 -vcodec copy -an -f rtp rtp://10.0.0.2:6005 -acodec copy -vn -sdp_file saved_sdp_file -f rtp rtp://10.0.0.2:7005
运行此代码后,应生成一个名为saved_sdp_file
. 这应该以某种方式传输到客户端,客户端需要它来接收流
ffmpeg -protocol_whitelist "file,rtp,udp" -i saved_sdp_file -strict -2 saved_video_file.mp4
归档时间: |
|
查看次数: |
36845 次 |
最近记录: |