一款优质的短视频APP诞生并非易事,开发过程也是需要考虑各种问题,包括音视频问题、开屏速度等等。无论是短视频还是直播,都要经过无数次的测试、优化等步骤完成。
那么今天我们就来看一下,短视频直播源码如何利用软硬编码两种方式为用户提供更流畅的使用感。
一、编解码有什么用?
短视频APP开发必然会涉及到编码方式的选择,软编码即非硬件编码,是利用软件本身,或者说使用CPU对视频拍主所拍摄的原视频进行编码的方式,而硬编码即硬件编码,利用手机硬件芯片(如GPU)对原视频进行编码的操作。
在音视频进行流媒体传播时,直接上传原视频会占用很多带宽,很费网速,于是为了节约带宽,便于观看者手机解码,在上传前,直播源码中内置的编码功能会对原视频进行压缩和编码,让视频文件变小,成为统一的编码格式,这样一来,不但能节约宽带,还能提高视频加载速度,所以编解码是必不可少的。
三、软编码和硬编码有什么区别?
总的来说,硬编码方式处理速度快,由于GPU承担起了编码的重担,因此硬编码对CPU的占用率低,就算长时间高清录制视频手机也不会发烫降频。而软编码方式处理更精细,兼容性好,能解码所有的视频格式文件,画质清晰、画面精致。
它们当然也都有自己的劣势,软件编码的CPU占用率高,一些性能比较差的手机可能会因CPU发热而降频、卡顿,但是随着现在手机性能的普遍提高,已经不是什么难点了。而硬件编码的缺点就更明显,在某些智能手机上,由于机型区别,采取硬件编码的方式可能会出现兼容性上的问题,还有硬件编码画面不够精细的问题一直都很难解决。
四、软硬编码如何选择
由于客户开发需求不同,所以就软硬编码的选择不能一概而论。才艺展示类短视频的用户可能会更适合用硬编码,而美妆类、开箱视频类、游戏类短视频拍主可能会更适合用软编码模式,如果平台需要的话,也可以在个人中心设置选择拍摄清晰度和流畅度(软硬编码)的按钮,供用户自行选择。
五、目前的主流GPU加速平台
Intel、AMD、NVIDIA
目前主流的GPU平台开发框架
CUDA:NVIDIA的封闭编程框架,通过框架可以调用GPU计算资源
AMD APP:AMD为自己的GPU提出的一套通用并行编程框架,标准开放,通过在CPU、GPU同时支持OpenCL框架,进行计算力融合。
OpenCL:开放计算语言,为异构平台编写程序的该框架,异构平台可包含CPU、GPU以及其他计算处理器,目标是使相同的运算能支持不同平台硬件加速。
Inel QuickSync:集成于Intel显卡中的专用视频编解码模块。
近日,据Reddit上的帖子和Cyber Kendra上的一份报告显示,LAPSUS$ (Lapsus) 组织入侵了微软的DevOps帐户,该组织此前入侵了NVIDIA和三星。 下面的截图由Lapsus发布,但很快被删除,由Cyber Kendra保存了下来。该组织声称可以访问微软的一些DevOps...
近日名为 Nimbuspwn 的漏洞组合被曝光,可以让本地攻击者在 Linux 系统上提升权限,部署从后门到勒索软件等恶意软件。微软的安全研究人员在今天的一份报告中披露了这些问题,并指出它们可以被串联起来,在一个脆弱的系统上获得 root 权限。 Nimbuspwn 存在于 networkd-dis...
上周,Chrome Security 团队的 Adrian Taylor,在一篇谷歌安全博客文章中解释了“为何在野外被利用的 CVE 漏洞似乎有所增加”。对于这种漏洞利用的可见性增长趋势,归咎于多个方面的因素。而谷歌旗下的 Project Zero 团队,也有对包括 WebKit、IE、Flash、...
Krebs On Security 周二警告称:黑客正越来越多地利用受感染的政府和警察部门的电子邮件账户,以从移动运营商、互联网服务提供商(ISP)和社交媒体公司榨取敏感的客户信息。周四,美国参议院内精通技术的议员之一表示,其对这份报告感到很是不安,并且已向科技企业和联邦机构发去询问,以了解此类活动...
Hackernews 编译,转载请注明出处: 一个广泛应用于 Windows、 Linux 和 Mac 环境的开源模块的维护者最近破坏了它的功能,以抗议乌克兰的战争,大众再次将注意力集中在与软件代码依赖相关的潜在的严重安全问题上。 Node-ipc 是一个用于进程间通信的 JavaScrip...
根据区块链数据公司Chainalysis的一份报告,在2021年底,网络犯罪分子拥有超过110亿美元与非法活动有关的加密货币,比2020年底的30亿美元有了飞速的增长。最有利可图的犯罪行为是盗窃。据该公司称,犯罪分子、加密货币钱包中93%的资金是由价值98亿美元的被盗币构成。 为了找到这些数字,Ch...