html - 是否可以通过 webrtc 或其他方式从浏览器发送大型视频文件(大于 4 Gig)并通过 HLS 或其他格式进行流式传输?
问题描述
我的问题是关于 HTML 方面的问题(通过 chrome 或 safari 等浏览器)...
**** 还主要关注的是通过 4 Gig 发送文件时的 chrome / safari 限制
<input type="file" >
示例:https ://obsproject.com/是您安装在桌面上的流式传输软件,用于从摄像机或视频文件流式传输到 RTMP 端点......
但它是否可行(发送预先录制的.mov)并将其流式传输到服务器和该服务器以“记录”它以使其在流后可用......就像使用浏览器的webrtc api并发送将其传输到多点控制单元 (MCU) 并记录或转换为 HLS .m3u8 格式...
在谷歌中挖掘让我发现了这个 https://webrtc.github.io/samples/src/content/capture/video-pc/ 演示不起作用:(
••••• 我也发现了这个https://github.com/muaz-khan/FileBufferReaderfunction FileBufferReader() {...
但是记录呢(从用户浏览器到另一个对等点,但另一个对等点可能是一个服务器,它接收这个“流”并重新组装它并执行 .m3u8 HLS 格式)?
解决方案
交付 4 GB 文件是有问题的 - 交付期间的任何网络故障都可能导致问题。
OBS 将视频 RTMP 流发送到许多服务以“直播”,例如 Twitch、YouTube 等(我为api.video工作,我们赞助 OBS,可以使用这种方式进行直播)。
这些服务为您将 RTMP 流转换为 HLS 并将流交付给您的客户。
如果您有 4 GB 的 .mov 文件 - 您也可以将其上传到服务以转换为 HLS 格式。但是 - 就像你说的,4Gb 可能有问题。我们的解决方法是使用 JavaSCript 中的 file.slice 将大视频拆分为可管理的块(在服务器上重新组装)。
我写了一篇关于如何做到这一点的博客文章: https ://api.video/blog/tutorials/uploading-large-files-with-javascript
和现场演示(使用 api.video 后端):https ://upload.a.video
道格
推荐阅读
- react-native - 文本字符串必须在
组件错误 - javascript - React Native JavaScript Emoji 正则表达式问题
- testing - 如何在 package.json 脚本上创建动态路径
- javascript - 为什么我的事件侦听器无法处理最初隐藏的元素?
- python - 如何让表单集出现在表单内的内联表单中?(Python/Django)
- android - 为什么我在尝试执行备份时收到“代理错误”?
- wordpress - Elementor 和 Woocommerce 的问题“无法加载预览”
- html - 带有外部 URL 的电子邮件确认模板
- javascript - 在 JS 中为特定值编写字符串解析器
- python - 我应该卸载所有全局安装的 Python 包并仅在 VENV 环境中本地安装它们吗?