我正在尝试从嵌入式设备流式传输 MP4 文件并在笔记本电脑的 VLC 中播放。我的硬件设置如下所示
-------------- ------------------
| Board | Ethernet | Window Laptop |
| (Android N)|----------------| VLC |
| 192.168.1.5| | 192.168.1.2 |
| ffmpeg | |----------------|
|------------|
我正在尝试从板端发出 ffmpeg 命令,如下所示
嵌入式板--- ./ffmpeg -re -i vid.mp4 -vcodec 复制 -an -f rtp rtp://192.168.1.2:1234 -vn -acodec 复制 -f rtp rtp://192.168.1.2:1234
在笔记本电脑 VLC 端,我的 sdp 文件如下所示
v=0
o=- 453271780569021 453271780586833 IN IP4 /192.168.1.5
s=Unnamed
i=N/A
c=IN IP4 /192.168.1.2
t=0 0
a=recvonly
m=video 1234 RTP/AVP 96
a=rtpmap:96 H264/90000
我在 VLC 端没有看到任何流。我相信有一些我还没想到的错误命令。如果有人知道我如何实现这一目标,请告诉我。顺便说一下,视频文件不限于MP4格式,我对任何文件格式都是开放的。
谢谢,萨蒂什
最佳答案
感谢您的建议。事实上我能够让它工作。我刚刚修改了我的 SDP 文件,如下所示(这只是复制/粘贴从 ffmpeg 命令生成的 SDP 内容)。
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Name
t=0 0
a=tool:libavformat 57.57.100
m=video 1234 RTP/AVP 96
c=IN IP4 192.168.1.2
b=AS:612
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1; sprop-parameter-sets=J0LgHqkYFAX/LgDUGAQa2wrXvfAQ,KN4JyA==; profile-level-id=42E01E
m=audio 1234 RTP/AVP 97
c=IN IP4 192.168.1.2
b=AS:65
a=rtpmap:97 MPEG4-GENERIC/22050/2
a=fmtp:97 profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3; config=1390
谢谢,萨蒂什
关于linux - 在远程 VLC 上使用 FFMPEG 流式传输 MP4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40474980/