通过ffmpeg通过局域网流式传输?

时间:2018-09-05 10:23:49

标签: ffmpeg ubuntu-16.04

我正在尝试使用命令通过LAN流mpegts文件

ffmpeg -re -i in.ts -vcodec copy -acodec copy -f mpegts "udp://localhost:5000/live/stream"

并尝试通过局域网(在服务器上)捕获10s的数据块

ffmpeg  -i udp://192.168.xx.xx:5000/live/stream -c copy -f segment -segment_time 10 -strftime 1 "in /%Y-%m-%d_%H-%M-%S.mp4"

这不起作用。我在VLC中测试了流,没有任何可玩的内容。

现在,我怀疑这是端口问题,因为FFMPEG似乎无法在指定的5000端口上进行写/听操作。我使用netstat进行检查,并且端口上没有包含ffmpeg的PID。但是,命令

ffmpeg  -i udp://127.0.0.1:5000/live/stream -c copy -f segment -segment_time 10 -strftime 1 "in/%Y-%m-%d_%H-%M-%S.mp4"

与ffplay一样,在我的计算机(localhost)上生成所需的输出。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

使用UDP时,必须指定要向其流式传输的服务器的IP,而不是要从其流式传输的服务器的IP。

流式传输命令

class Category extends Model {
    public function getRouteKeyName() {
        return 'blog_id';
    }
}

捕获命令

ffmpeg -re -i in.ts -vcodec copy -acodec copy -f mpegts "udp://192.168.target.IP:5000/live/stream"