音视频

Web 播放 RTSP 推流最佳方案实践

背景

最近接到一个需求,前端需要接一段视频流播放,刚接到的时候感觉这不挺简单的吗,立刻祭出我的 video.js 大法,不过当我拿到后端发给我的视频流地址的时候 rtsp://video-stream/god 我有点蒙,不知道此为何物,但是我还是尝试着用 <video srd="rtsp://video-stream/god" /> 挣扎了一下,结果却是不尽如人意,随后我在官方仓库也是得到了认证:…

浏览器播放rtsp视频流:4、jsmpeg+go实现局域网下的rtsp视频流web端播放

1.前言

之前的rtsp转webrtc的方案存在如下缺陷:1.只支持h264;2.受限于webrtc的理解难度以及搭建turn/stun的p2p服务等问题,对于局域网下的业务需求来说有些杀猪用牛刀的意思;3.ios不支持webrtc。

基于以上原因,我又找到了一些其它的方案进行了测试,目前看jsmpeg的方案更加适合我们的需求,而且普通压缩大小为135kb,gzip方式压缩后仅仅42kb,在嵌入式场景下也可以使用。只是转码服务需要ffmpeg,在不进程裁剪开发的情况下,需要在设备或者PC或者局域网路由器设备等上安装的该插件服务会比较大。…

WebRTC 中的 ICE:服务器设置和相对性能

专用 WebRTC 端点通常通过从源到目的地进行映射的网络与公共互联网隔离开来。映射有助于进出私有系统的流量到达正确的主机。此过程称为网络地址转换或 NAT。

虽然不一定是限制性的,但这些接口需要被针孔化以创建公私对,以便媒体流从外部世界流入 WebRTC 浏览器。如RFC 8445中所定义,这种收集候选者并确定其优先级以便与远程对等方成功建立媒体连接的过程称为交互式连接建立或 ICE。

vivo 短视频用户访问体验优化实践

本文介绍了 vivo 短视频用户访问体验优化的实践思路,并简单讲解了实践背后的几点原理。

一、背景

我们平时在看抖音快手视频的时候,如果滑动到某个视频画面一直几 s 不动的时候,大概率就会划走了,所以在短视频项目中,画面卡顿是非常影响用户体验的,启播速度越快,就越能留住用户。

启播速度简单来说就是从调用开始播放到首帧上屏的时间,大致可分为两部分:…

        

音视频会议的带宽要求是什么?

一、音视频会议推荐带宽
  1. 会议中仅开启音频
发送音频需要至少 60 Kbps。
  1. 会议中开启视频
移动端
  • 高质量视频会议推荐带宽为 1 Mbps 及以上。
桌面端和网页版
  • 高质量视频会议推荐带宽为 2 Mbps 及以上。
会议室
  • 高质量视频会议推荐带宽为 3 Mbps 及以上。
  1. 会议中共享屏幕
移动端
  • 使用屏幕共享推荐带宽为 1 Mbps 及以上。
    

适用于 Linux 的五大流媒体直播应用

本文列出了 Linux 上的五大流媒体直播应用,包括了它们的功能、亮点、下载详情和对比。

现在是为你的业务纳入在线视频内容的最佳时机。为什么?因为研究表明,全球在线视频市场正以每年约 20% 的速度增长。

而且,由于开发者们提供的一些优秀软件,任何人都可以轻松地创建视频内容,并在 YouTube 和 Twitch 等几个流行的平台上传播。如果你仔细想想,你会发现如今你在网上观看的视频内容比基于文本的内容更多。

因此,在这篇文章中,我们将列出一些适用于 Ubuntu 和其他 Linux 的免费软件,这些软件很容易用于为你和你的企业创建超级有趣的流媒体内容。

Linux 的五大流媒体直播应用

OBS Studio

本列表中的第一个免费应用程序是 OBS Studio(即 Open Broadcaster Software)。它是一个具有屏幕广播功能的流媒体直播应用程序,可用于 Linux、Windows 和 macOS。

出于几个原因,OBS Studio 是这个名单上最好的一个。它内置了编码,支持 RTMP 广播、多源、网络摄像头、绿屏、捕捉卡和你的应用程序窗口。

其用户界面相当简单明了,功能丰富。你可以从第三方开发的插件中获得帮助,以扩展其功能,例如,在直播时将 Twitter 上的实时推文混入你的流媒体。不过,OBS 不支持多比特率流媒体。

适用于 Linux 的五大流媒体直播应用

OBS Studio

H264编码profile & level控制

背景知识

先科普一下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

WebTransport 是一种新的 API,提供低延迟、双向、客户端-服务器消息传递。了解有关其用例的更多信息,以及如何就实施的未来提供反馈。