首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么不能在Ubuntu上接收rtp流?

为什么不能在Ubuntu上接收rtp流?
EN

Unix & Linux用户
提问于 2021-06-24 12:46:13
回答 1查看 1.7K关注 0票数 1

我正在使用来自计算机A的ffmpeg在rtp上播放桌面,以下是我的ffmpeg代码:

代码语言:javascript
复制
ffmpeg -f x11grab -framerate 25 -video_size 1920x1080 -i :1.0 -c:v libx264 -preset fast -pix_fmt bgr0 -b:v 3M -g 25 -an -f rtp_mpegts rtp://230.0.0.1:5005

我可以在"rtp://@230.0.0.1:5005“中在计算机A中播放vlc中的实时流。但是,我无法通过在VLC中打开"rtp://@230.0.0.1:5005“来播放来自B计算机的流,它与计算机A处于同一个网络中。

如果我在http上传输一个mp4文件,B计算机就能播放它。对于http流,我只需转到VLC -> Media -> -> (添加mp4文件),然后以A上8080端口的HTTP格式进行流,然后在机器B上用"http://serverIP:portnumber““在VLC中打开它。

我在这里做错什么了?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2021-06-24 20:00:21

为什么不能在Ubuntu上接收rtp流?

因为您使用的是多播地址230.0.0.1,而且当前的设置在这两个主机之间没有多播路径。

所以,现在解决这个问题的方法之一就是使用单播传输。只需使用您要监视的主机的ip地址更改230.0.0.1即可。

代码语言:javascript
复制
ffmpeg -f x11grab -framerate 25 -video_size 1920x1080 -i :1.0 -c:v libx264 -preset fast -pix_fmt bgr0 -b:v 3M -g 25 -an -f rtp_mpegts rtp://a.b.c.d:5005

其中a.b.c.d是Ubuntu主机的IP地址。

然后,在Ubuntu主机上可以这样做:

代码语言:javascript
复制
vlc rtp://@:5005
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/655667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档