怎么通过rtp协议播放ffmpeg采集到的视频?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么通过rtp协议播放ffmpeg采集到的视频?相关的知识,希望对你有一定的参考价值。

我在百度百科上看到:
ffmpeg在Linux下的视频采集 在Linux平台上,ffmpeg对V4L2的视频设备提供了很好的支持,如: ./ffmpeg -t 10 -f video4linux2 -s 176*144 -r 8 -i /dev/video0 -vcodec h263 -f rtp rtp://192.168.1.105:5060 > /tmp/ffmpeg.sdp 以上命令表示:采集10秒钟视频,对video4linux2视频设备进行采集,采集QCIF(176*144)的视频,每秒8帧,视频设备为/dev/video0,视频编码为h263,输出格式为RTP,后面定义了IP地址及端口,将该码流所对应的SDP文件重定向到/tmp/ffmpeg.sdp中,将此SDP文件上传到流媒体服务器就可以实现直播了。

我想问一下, rtp://192.168.1.105:5060这里定义的IP地址是什么用的?应该设为服务器的IP还是客户端的IP?
如果我在A电脑把SDP重定向到/tmp/ffmpeg.sdp中。

我在B电脑上想播放A电脑采集的视频信息, 应该用怎么样的命令播放?

求大神赐教!!

参考技术A rtp://192.168.1.105:5060 这个是接收端的ip和端口

你可以用vlc 来进行接受和播放追问

播放不了

追答

28785698 去这个QQ群里问吧

尝试通过RTP cpp使用ffmpeg库发送视频流时数据包丢失

我有一个流媒体代码和一个用cpp编写的接收器。我试图从流媒体(flv视频)中的视频发送包含图片流的数据包,但在接收器中我得到these errors。我在接收器中有一个包含以下数据的sdp文件:

v=0
o=- 0 0 IN IP4 127.0.0.1
s=No name
t= 1 1000000
a=tool:libavformat 55.19.104
m=video 1234 RTP/AVP 117
c=IN IP4 127.0.0.1
b=AS:394
a=rtpmap:117 H264/90000

有谁知道问题的原因是什么,以及解决问题的最佳方法?

答案

我不知道这是你唯一的问题,但H.264的有效载荷格式是“H264 / 90000”......接收器可能会将其视为“90”​​。混乱的时钟速率可以解释您在丢失和延迟数据包时所看到的内容。

以上是关于怎么通过rtp协议播放ffmpeg采集到的视频?的主要内容,如果未能解决你的问题,请参考以下文章

FFmpeg有啥用?

使用FFmpeg将RTP的数据包保存为mp4文件

视频播放相关的网络协议都有哪些?

视频概念信息像素色彩

android 怎么播放rtsp流

音视频开发-FFmpeg