目前只知道使用 flash 推送 rtmp 流,请教各位两个问题,1 、是否可以不用 flash 推 rtmp 流; 2 、h5 怎么实现?
1
Rrrrrr 2022-02-15 12:00:38 +08:00 1
rtmp 只有 flash 可以用。现在主流 hls ,flv 。h5 上应该 hls 比较省事
|
2
statumer 2022-02-15 12:09:44 +08:00 via iPhone 1
需要服务端中转(通过 Chrome Native 插件可以本地中转)。了解两个 API ,一个是 Media Capture 一个是 Media Recorder 。
|
3
xlzyxxn OP @statumer 中转有具体的插件名吗? 另外我想要实现浏览器获取摄像头视频流并推流,这种场景下中转后再推流会不会有损耗和延迟
|
4
duan602728596 2022-02-15 14:33:22 +08:00
|
5
wkmike 2022-02-15 14:46:05 +08:00
WebAssembly
|
6
mxT52CRuqR6o5 2022-02-15 14:56:09 +08:00
flash 、chrome/firefox native 插件、微软的 ActiveX ,纯原生 web 肯定是做不到的
|
7
acess 2022-02-15 18:13:40 +08:00 via Android
我不是搞开发的,但最近也在折腾这块。
想起 flv.js ,应该比较相关。随便一搜搜到一篇博客: https://wxzzz.com/425.html 另外我看 Media source extensions 貌似说在 iPhone 上没开放( iPad 上倒是开放了),没用过 iPhone 也不知道具体啥情况 |
8
acess 2022-02-15 18:17:04 +08:00 via Android
又搜了一下,stack exchange 上说 web 低延迟直播的正解应该是 webrtc……具体情况就不知道了
|
9
acess 2022-02-15 18:26:56 +08:00 via Android
额,貌似 flvjs 作者本人很吐槽 rtmp/flv 这些
https://twitter.com/magicxqq/status/1410629407018872832 |
10
2055 2022-02-15 18:34:54 +08:00
之前做过
web 负责采集音视频流和录制,把录制的 blob 再传到转推服务器通过 ffmpeg RTMP 推流 推上去再拉 FLV 流 延迟<3s |
11
0xsui 2022-02-15 18:34:58 +08:00 via Android
看看 m3u8 推流?
|
12
acess 2022-02-15 18:42:58 +08:00 via Android
(额……楼主忽略我吧……我之前好像把问题的意思都理解反了)
|
13
torrent 2022-02-15 21:04:15 +08:00 via Android
需要套一个转换,可以用 ffmpeg 转成 flv ,然后前端用 flv.js 或者 mpegts.js ,亲测 mpegts.js 延迟比 flvjs 小很多,局域网跑可以干到 1s 左右
另外为什么不试试 webrtc 呢 |
14
torrent 2022-02-15 21:15:56 +08:00 via Android
以前写作业时做过类似的,不过是前端播放,也是进 ffmpeg 转 flv 流然后套 nginx 出来,前端 mpegts.js 播放。不担心延迟的话 hls 更好。你要做前端推流的话估计还要麻烦一点。前面楼里说的 wasm 倒是有现成的 ffmpeg wasm ,但是人家不支持 rtmp 。感觉最好的方案就是 webrtc 了
|
15
anying 2022-02-15 21:19:37 +08:00
最好的方式是 webrtc ,之前项目实际比较过。
|
16
theresa233 2022-02-16 01:14:34 +08:00 via Android
还是建议使用 webrtc ,真要推流可以用 webrtc 连服务端这样的
|
17
damngoto 2022-07-15 15:32:06 +08:00
楼主最后怎么解决的。
|
18
userdhf 2022-10-15 03:09:52 +08:00
1. ffmpeg 将 rtmp 输出 m3u8 貌似仅支持手机端实体机
2. nodeMediaServer 输出 m3u8 和 flv ,pc 端需要配合 flv.js |