Web 播放 RTSP 推流最佳方案实践
背景
最近接到一个需求,前端需要接一段视频流播放,刚接到的时候感觉这不挺简单的吗,立刻祭出我的 video.js
大法,不过当我拿到后端发给我的视频流地址的时候 rtsp://video-stream/god
我有点蒙,不知道此为何物,但是我还是尝试着用 <video srd="rtsp://video-stream/god" />
挣扎了一下,结果却是不尽如人意,随后我在官方仓库也是得到了认证:…
记录-交流-Web开发知识分享
最近接到一个需求,前端需要接一段视频流播放,刚接到的时候感觉这不挺简单的吗,立刻祭出我的 video.js
大法,不过当我拿到后端发给我的视频流地址的时候 rtsp://video-stream/god
我有点蒙,不知道此为何物,但是我还是尝试着用 <video srd="rtsp://video-stream/god" />
挣扎了一下,结果却是不尽如人意,随后我在官方仓库也是得到了认证:…
之前的rtsp转webrtc的方案存在如下缺陷:1.只支持h264;2.受限于webrtc的理解难度以及搭建turn/stun的p2p服务等问题,对于局域网下的业务需求来说有些杀猪用牛刀的意思;3.ios不支持webrtc。
基于以上原因,我又找到了一些其它的方案进行了测试,目前看jsmpeg的方案更加适合我们的需求,而且普通压缩大小为135kb,gzip方式压缩后仅仅42kb,在嵌入式场景下也可以使用。只是转码服务需要ffmpeg,在不进程裁剪开发的情况下,需要在设备或者PC或者局域网路由器设备等上安装的该插件服务会比较大。…
本文介绍了 vivo 短视频用户访问体验优化的实践思路,并简单讲解了实践背后的几点原理。
我们平时在看抖音快手视频的时候,如果滑动到某个视频画面一直几 s 不动的时候,大概率就会划走了,所以在短视频项目中,画面卡顿是非常影响用户体验的,启播速度越快,就越能留住用户。
启播速度简单来说就是从调用开始播放到首帧上屏的时间,大致可分为两部分:…
…本文列出了 Linux 上的五大流媒体直播应用,包括了它们的功能、亮点、下载详情和对比。
现在是为你的业务纳入在线视频内容的最佳时机。为什么?因为研究表明,全球在线视频市场正以每年约 20% 的速度增长。
而且,由于开发者们提供的一些优秀软件,任何人都可以轻松地创建视频内容,并在 YouTube 和 Twitch 等几个流行的平台上传播。如果你仔细想想,你会发现如今你在网上观看的视频内容比基于文本的内容更多。
因此,在这篇文章中,我们将列出一些适用于 Ubuntu 和其他 Linux 的免费软件,这些软件很容易用于为你和你的企业创建超级有趣的流媒体内容。
Linux 的五大流媒体直播应用
OBS Studio
本列表中的第一个免费应用程序是 OBS Studio(即 Open Broadcaster Software)。它是一个具有屏幕广播功能的流媒体直播应用程序,可用于 Linux、Windows 和 macOS。
出于几个原因,OBS Studio 是这个名单上最好的一个。它内置了编码,支持 RTMP 广播、多源、网络摄像头、绿屏、捕捉卡和你的应用程序窗口。
其用户界面相当简单明了,功能丰富。你可以从第三方开发的插件中获得帮助,以扩展其功能,例如,在直播时将 Twitter 上的实时推文混入你的流媒体。不过,OBS 不支持多比特率流媒体。
OBS Studio
先科普一下profile&level。(这里讨论最常用的H264)
H.264有四种画质级别,分别是baseline, extended, main, high:
1、Baseline Profile:基本画质。支持I/P 帧,只支持无交错(Progressive)和CAVLC;
2、Extended profile:进阶画质。支持I/P/B/SP/SI 帧,只支持无交错(Progressive)和CAVLC;(用的少)
3、Main profile:主流画质。提供I/P/B 帧,支持无交错(Progressive)和交错(Interlaced), …
WebTransport 是一种新的 API,提供低延迟、双向、客户端-服务器消息传递。了解有关其用例的更多信息,以及如何就实施的未来提供反馈。
…
stream.getVideoTracks()[0].addEventListener('ended', () => { errorMsg('The user has ended sharing the screen'); });
先注册以上事件 .
当点击"停止共享" 按钮时,触发此事件 .
…
…
近期评论