关于视频:视频加密防盗录防下载有什么好的方法

针对教育行业外围数据的平安诉求,能够通过防下载、防盗链、防录屏及防篡改等4大技术,进攻对外围资源的攻打,防止视频数据泄露,保障网站视频的平安与可用性。   1.防下载(视频数据加密、播放器加密)   A.视频数据加密-VRM13:保利威采纳碎片化混同加密技术,将上传视频切片、对碎片逐个加密,采纳AES128加密,XOR加密,关键帧错序,碎片混同加密等技术,对要害数据进行混同爱护,视频破解难度倍增。   B.播放器加密:保利威自主播放器采纳防反编译、代码混同等形式,对视频平安进行双重坚固,爱护视频版权。  2.OVP防盗链即黑白名单,启用业界当先的OVP技术,设置视频只容许某些指定的域名下能力失常播放,其余域名无奈播放。 3.防录屏(问答播放器、浏览器防录屏、视频水印及ID跑马灯)  A. ID跑马灯 将用户ID、电话号码或其余信息内容等展示在视频上,实现设定文字在视频上不规则地跑动,可追溯录屏者身份,对小窗录屏/全屏录屏等行为起到强有力的震慑作用。 B. 视频水印 在视频中增加用户专属的视频水印,从而让视频中融入企业的版权信息,避免盗录者盗取版权,爱护公司的知识产权。 C. 浏览器防录屏   通过播放器实时监测,如果检测到视频处于录屏状态或小窗待录屏状态,视频会立刻进行播放,以此来避免视频被盗取。   D. 问答播放器 视频播放到某个工夫点,弹出问答播放器,只有答题正确,提交后能力持续观看,减少了录屏的难度,进步录屏老本,升高了盗版视频的观看体验。 4. 网页数据防篡改  传输链路反对ATS/HTTPS加密协议。从服务器端到分发端,从分发端到观看端,均满足数据安全要求。防止视频在传输过程中被截取或被篡改。 视频版权保护体系,通过对视频内容加密、播放器代码加密、视频播放防录屏、视频传输防篡改等4大技术,让视频实现从上传、散发、传输到播放的端对端的视频平安管控。  5. 加密成果实例演示我做的加密演示实例成果:https://tony.89525.com/edu/index.php

September 7, 2023 · 1 min · jiezi

关于视频:如何定位分析视频异常画面

前言视频典型画面不失常次要蕴含画面卡顿、画面含糊、画面不显示、画面花屏这 4 类问题。本文次要介绍的是画面花屏的状况,这里的画面花屏蕴含了花屏、闪屏、绿屏、黑屏。视频花屏是多媒体工程师最常见的问题之一,也是最辣手的问题之一,笔者此前也数次遇到这样的问题,明天在此总结分享下教训,心愿浏览到这篇文章的小伙伴们都可能有所播种。 问题定位很多小伙伴碰到此类问题,往往感觉大刀阔斧,实质起因还是对于视频链路不太清晰,导致无从下手。当遇到视频花屏时,首先要定位是最先呈现的花屏的是哪个阶段产生的,再逐层进行剖析定位。以 RTC 视频为例,分为发送端、服务器、接收端,其具体流程如下: 如果发现对端显示不失常,排查程序: (1)排查接收端; (2)排查发送端 ; (3)排查服务器; 如果发现是本端显示不失常,排查程序: (1)排查发送端 ; (2) 其次是分环节排查。 接收端流程 播放器流程 rtmp-解协定-解码-后处理-渲染。 mp4/flv-解封装-解码-后处理-渲染。 播放器数据起源来自网络视频或者本地视频。 如果本地视频呈现问题,能够先应用其余播放器 VLC/ffplay 播放本地的视频看看。 如果网络视频呈现问题,能够保留解码前的数据,应用 ffplay 播放 h264 试试。 依据播放器的 2 种流程,还有可能在解协定或者解封装的阶段,因而能够在这之后 dump h264 码流看看。 WebRTC接收端流程rtp-jitterbuffer-解码-后处理-渲染。网络局部:嵌入式设施用了webrtc,其网卡对于带宽限度重大,会造成数据包失落重大;另外就是理论网络状况差,导致接收端数据包失落重大;都有可能导致生成的画面花屏。 解码局部:硬件解码容易出错,一是硬件解码器会因各种厂商定制化存在差别,兼容性问题多,容易呈现报错的状况,二是 YUV 格局的不同,软解个别是 YUV420p,硬解是 NV12 等,对于解码器的格局指定,须要关注解码器自身的能力。咱们还能够在解码之后 dump YUV 数据来查看具体的状况,如果播放 dump 之后的数据存在绿屏、花屏,有可能是内存对齐的问题,也有可能是 dump 格局不对,或者是硬件解码器的问题。 后处理局部:图像格式转换、opengl 内存对齐、GPU 数据多线程同步问题等。 渲染局部:渲染呈现色调偏差,有可能是图像格式转换的计算公式上的偏差,也有可能是opengl内存对齐的问题。画面裂屏有可能是渲染脏数据的问题,次要起因是GPU数据的多线程同步问题。 发送端流程 采集环节:自身摄像头进去的数据就存在异样,属于硬件采集设施异样,特地是一些 USB 内部摄像头;其次就是采集原始格局如 MJPEG 格局,Pipeline 上在采集模块将 MJPEG 转为 I420,图像格式转换也有可能导致数据异样。回调环节:将采集数据回调内部,内部进行二次解决,如美颜等,也有可能导致数据异样,常见的就是画面黑屏、闪屏等景象,次要是因为内部模块因为 OpenGL 出错,导致给出的 GPU 数据没有填充等起因。前解决环节:包含图像格式的转换和 GPU 纹理渲染都有可能存在异样,以及相干的前解决视频算法。编码环节:dump h264 码流,排查编码引入的问题。本地预览环节:包含图像格式的转换和 GPU 纹理渲染都有可能存在异样。发送环节:udp 发送,有可能存在丢包状况;弱网导致队列呈现了数据沉积,并产生了 drop 数据的状况;短时间发送大量数据,如 I 帧的迅速发送。dump 环节:通常咱们通过 YUV dump 排查具体是上述哪个环节引入的问题,但对于 dump 自身也有可能存在问题,例如 dump 的格局和理论大小的尺寸,在播放时设置不统一,就会呈现问题。服务器转发 ...

June 8, 2023 · 2 min · jiezi

关于视频:大淘宝技术斩获NTIRE-2023视频质量评价比赛冠军内含夺冠方案

近日,CVPR NTIRE 2023 Quality Assessment of Video Enhancement Challenge比赛结果颁布,来自大淘宝音视频技术团队的同学组成「TB-VQA」队伍,从37支队伍中怀才不遇,拿下该较量(惟一赛道)冠军。此次夺冠是团队继MSU 2020和2021世界编码器较量、CVPR NTIRE 2022压缩视频超分与加强较量夺魁后,再次在音视频核心技术的权威较量中折桂。赛事介绍CVPR NTIRE (New Trends in Image Restoration and Enhancement workshop and challenges on image and video processing) 是近年来图像和视频加强解决畛域最具影响力的全球性赛事。往年(2023)的赛事包含Quality Assessment of Video Enhancement Challenge(视频品质评估,VQA)、real-time image super-resolution、image shadow removal、video colorization、image denoising等,笼罩许多图像和视频加强解决的经典工作。由上述比赛不难看出,视频加强解决曾经在学术界大量钻研并在工业界失去广泛应用。随着互联网视频化的深刻,越来越多的UGC(user generated content)等非传统广电视频(包含但不限于短视频、直播等)在互联网平台上被生产或播放,并大都通过加强解决。天然地,如何无效地掂量加强解决后的视频品质就成为一项重要且紧迫的工作。因而,VQA比赛应运而生,并由NTIRE于往年首次举办。主办方构建了蕴含1,211个实在利用场景的视频的数据集 ,对其进行包含色调、亮度、和对比度加强、去抖动、去模糊等加强解决,并对解决后的视频进行打分作为GT(ground truth)。参赛者设计方案对上述视频进行打分,与GT更为靠近(应用相关性作为掂量指标,包含SRCC和 PLCC,是业界最罕用的指标,更高的SRCC和PLCC示意与GT拟合水平更高)的参赛者名次更好。本次比赛由苏黎世联邦理工学院计算机视觉实验室主办,仅有惟一赛道——无参考视频品质评估,星散了国内外几十只参赛队伍,包含字节、快手、网易、小米、Shopee等出名科技企业,北京航空航天大学、新加坡南洋理工大学等高校均有参赛。通过强烈的角逐,大淘宝音视频技术的参赛队伍「TB-VQA」在惟一赛道夺冠,在Main Score、SRCC、和PLCC三项指标均胜出。 表1. CVPR NTIRE 2023 VQA较量排行榜 值得一提的是,本次较量的冠军是大淘宝音视频技术团队继MSU 2020和2021世界编码器较量、CVPR NTIRE 2022压缩视频超分与加强较量夺魁后,再次在音视频核心技术的权威较量中获得佳绩。团队在视频编码、视频加强解决、视频品质评估、以及视频传输等视频核心技术畛域均有布局,一些技术冲破发表在CVPR、ICCV等计算机视觉和视频畛域的顶级会议,在上述较量获得杰出问题,也是团队长期以来继续投入和不断创新的阶段性成绩。 在视频编码方面,MSU(莫斯科国立大学)世界视频编码器大赛是视频编码畛域最权威的全球性顶级赛事,迄今已由MSU的Graphics & Media Lab间断举办了二十三届,其评测报告被业界宽泛认可,吸引了包含Google、Netflix、Intel、Nvidia、腾讯、字节、华为等国内外出名科技企业参加,代表了行业倒退的风向标。大淘宝音视频技术团队自研的奇点编码器S265和S266,相比业界风行的开源编码器x265、VVEnC等,在编码速度、编码品质、和编码延时等多方面均有显著冲破,并联结阿里云视频云团队加入了MSU 2020和2021间断两届较量,获得多个赛道第一。S265曾经全面利用于包含淘宝直播、逛逛、首页信息流在内的大淘宝内容业务,通过奇点编码器压缩后,一般手机在3G网络也可顺滑播放720p的高画质,最新公布的手机甚至可反对4k 30FPS超高清直播。 在视频加强解决方面,CVPR NTIRE 压缩视频超分与加强较量自2020年起已举办三届,在工业界和学术界均产生了重大的影响,吸引了包含腾讯、字节、华为等出名科技企业,中科院、北大、港中文、ETH等科研机构参赛,其中很多参赛者都是间断参赛,竞争强烈。CVPR NTIRE 2022压缩视频超分与加强较量蕴含三个赛道,别离是: 赛道1:针对视频编码的高压缩比带来的失真的视频复原问题;赛道2:在赛道1的根底上,同时解决高压缩和2倍超分问题。;赛道3:在赛道2的根底上,进一步摸索4倍超分问题。其中,Track1和Track2的问题曾经在工业界失去广泛应用,将视频还原到现实视频的画质可能大幅晋升人眼感官,吸引人们的观看志愿。通过强烈的角逐,大淘宝音视频技术团队自研的视频超分办法TaoMC2,获得了三个赛道两冠一亚(赛道3亚军)的问题。相干视频加强技术目前已广泛应用于点淘、逛逛在内的所有大淘宝内容业务,反对直播、短视频的实时和非实时转码过程中的画质加强;相干超分辨率技术也宽泛用于诸如弱网等场景下的低分辨率视频传输、保障低传输带宽下的高分辨率的用户播放画质体验。后文分享咱们的具体的计划—— 参考计划视频品质评估依照对参考视频可用性个别能够分成三类:全参考视频品质评估、局部参考视频品质评估、和无参考视频品质评估 [1]。因为视频加强场景不存在完满的参考视频,因而更适宜采纳无参考视频品质评估办法。无参考视频品质评估作为品质评估的次要钻研方向之一,在过来的几年里失去了宽泛的关注。支流办法有:基于图像识别 [2] 或者图像品质评估 [3] 工作的预训练模型来提取视频的帧级特色、思考时序上的相关性回归特色或者进一步联合时域特色 [4] 、以及针对视频失真进行端到端的特色表征学习 [5] 等。 ...

April 26, 2023 · 2 min · jiezi

关于视频:视频编辑场景下的文字模版技术方案

作者 | Lok'tar ogar 导读 本文依据度咔剪辑APP文字模版开发实际,分享视频编辑场景下,动态文字模版渲染能力的技术计划。作为富文本渲染计划的父集,此技术计划能够扩大到其余须要简单富文本渲染的场景下。 全文6745字,预计浏览工夫17分钟。 先睹为快文字模版成果展现:△文字模版在度咔剪辑中的利用 01 背景视频创作工具的外围竞争力之一是其丰盛的素材库,其中包含各种视频素材、音频素材以及贴纸素材等等。其中的文字模版也是不可或缺的一部分。文字模版提供了富文本的编辑性能,使用户可能在视频中增加更多样式柔美的文字信息,从而削减了视频素材的多样性。此外,通过预设的款式,用户能够更加不便地抉择适宜本人的文字模版,节俭了素材抉择的工夫,晋升了用户体验。在度咔的晚期版本中,咱们并没有提供文字模版这一素材类型。为了晋升产品的竞争力和进步素材渗透率,咱们进行了肯定的研发工作,最终推出了文字模版素材。这些文字模版素材不仅能够满足用户的需要,而且能够为用户提供更多的创作灵感和思路。同时,咱们也一直地更新和优化咱们的素材库,以确保用户可能取得最新和最优质的素材资源。文字模版须要出现的图文款式较为简单,度咔文字模版已反对的个性见上面的列表: 02 整体设计咱们基于已建设的素材平台,新增了文字模版这一类型,并且在素材平台提供了素材编辑、预览、配置上线的性能。素材生产和预览相结合,能够在同一界面预览刚刚调整的成果,能够间接匹配度咔的字体库,以及间接批改图片资源。这种素材生产方式具备高可复用性,用一个文字模版,改一个背景图、新增一个描边,就能够间接生产出另一个文字模版。公布这一模版,并导出效果图,即进入待审核队列,审核后可配置上线。截至目前,咱们已上线了361套文字模版,并实现了【素材生产】-【素材平台预览】-【素材下发和客户端载入】-【客户端渲染】的残缺链路。 03 性能实现3.1 素材生产目前视频编辑行业支流的素材格局通常采纳资源文件和配置文件(形容文件)的形式进行。其中,资源文件包含图片资源和字体文件,而配置文件则次要用于形容文字模版的排版属性和渲染参数。这种形式的长处在于,生产端只须要通过特定字段来形容相干个性,就能够在渲染端出现进去。这种形式灵便度较高,能够依据具体场景须要由简略到简单地迭代相干个性,同时实现老本也绝对较低。不过,毛病在于素材生产模式是自定义的,须要肯定的设计学习老本。除此之外,还有一种生产方式是针对业余设计软件的,以Photoshop(PS)为例。PS有比拟成熟的文件格式文档,蕴含了各类数据结构,能够间接应用PSD文件解析图文属性进行渲染。这种形式的长处在于素材生产方式较为通用,设计简直没有学习老本。不过,毛病在于咱们须要的一些个性无奈通过PSD简略地满足,比方多层暗影成果,其是由多个文本框层层叠加失去的成果。在批改文字内容的时候,咱们须要同步批改这几个文本框,因而须要把它们作为一个组来解决,逻辑就变得比较复杂。如果用配置文件来形容,则能够间接进行多层绘制,免去简单的逻辑解决。思考到业务ROI和短期上线性能的可行性,咱们采纳了第一种形式,并借鉴了黄油相机团队的素材生产规范,设计了用于形容排版属性和渲染参数的JSON构造。 3.2 端渲染在视频编辑场景下,文字的解决须要进行文字排版和文字绘制两个局部的解决。对于文字排版,iOS平台采纳了CoreText底层框架来进行排版解决,而Android则能够通过FontMetrics等获取底层FreeType对于字形解决的后果。不论是将一段文字作为整体进行排版解决,还是别离计算每个文字的地位,总的解决的性能耗费是雷同的。在进行文字绘制方面,须要在性能开销和开发成本之间寻求均衡。最终,iOS采纳了QuartzCore框架,Android则应用Canvas来进行文字绘制。这样,在预览时,文字能够间接出现在视图上,反对实时编辑预览。当须要将视频导出时,咱们将其解决为贴纸的模式增加在视频中。以iOS为例,花字组件架构如下: 3.3 形容文件设计上文提到,咱们用json文件形容文字模版的排版属性和渲染参数,资源下发到客户端后,客户端会解析对应参数,来进行文字模版的排版和最终成果出现。形容文件中会波及以下内容: (1)文字排版属性 baseline:字符基线,baseline是虚构的线ascent:字形最高点到baseline的举荐间隔descent:字形最低点到baseline的举荐间隔leading:行间距,即前一行的descent与下一行的ascent之间的间隔advance width:Origin到下一个字形Origin的间隔left-side bearing:Origin到字形最右边的间隔right-side bearing:字形最左边到下一个字形Origin的间隔bounding box:蕴含字形的最小矩形x-height:个别指小写字母x最高点到baseline的举荐间隔Cap-height:个别指H或I最高点到baseline的举荐间隔(2)文本对象组合下图为两个文字绘制区域的组合示例 3.4 排版绘制流程在咱们的文字模版中,排版和绘制是密不可分的,须要在代码逻辑中交叉进行解决。咱们的绘制步骤是从底层到顶层逐层绘制,但因为一些绘制过程会耗费大量工夫,为了防止阻塞主线程,咱们应用了异步绘制的技术。在异步绘制的过程中,咱们将一些比拟耗时的绘制过程放在了后盾线程中进行解决,这样就可能不影响用户的失常应用。同时,在异步绘制的过程中,咱们也会进行文字排版的计算,这样可能在后续绘制过程中疾速获取到文字的相干信息,进而进步绘制效率。总的来说,咱们通过采纳异步绘制的形式,可能保障文字模版的排版和绘制过程顺利进行,同时也不会对用户造成太多的烦扰。 04 难点与挑战1、多端成果的对齐咱们的我的项目反对web、iOS和Android端的渲染,但因为通用的跨端计划须要在底层应用OpenGL渲染,而过后的人力资源限度使得短期内难以实现。因而,咱们采纳了多端独立渲染的形式,每个平台都有独立的渲染计划。这种形式也带来了一个问题:不同平台的渲染成果会有差别。为了解决这个问题,咱们须要保障多端成果的一致性。因为在技术层面难以抹平差别,咱们决定通过规定和规范的对立来实现一致性。在设计json文件的格局时,咱们就对立了多端渲染的规范,比方文字装璜绝对于文字的初始地位是左上角对齐还是居中对齐,坐标原点的对立等。同时,咱们还对立了对应的参数所用的单位,从而最大水平地保障了最终出现成果的一致性。这样,无论在哪个平台上渲染,咱们都可能失去统一的后果,使用户体验更加对立和良好。 2、文字预排版在文字模版中,咱们将字号分为两种类型:固定字号和非固定字号。对于固定字号,咱们能够间接进行文字排版计算和绘制。然而,对于非固定字号的字体,咱们须要进行预排版的计算,以算出以后文字内容下对应的字号大小。这里有些计划是采纳二分法,先定一个较大的字号值,在0到该字号值的范畴内逐步迫近正确值,但这样其实造成了非必要的工夫损耗,联合文字排版的根底逻辑和限定条件,咱们能够做出工夫复杂度靠近O(1)的算法:计算最大字高->计算最小字高->计算字数最长行的字高->依据行数算字高->算出最终字高->依据字高算字号。iOS中用CoreText排版技术时,少部分状况会主动裁切填不满的文字,间接用计算出的字号会导致局部文字被裁切,所以要将以上后果作为估算后果,将size逐次减1,直至能填入path。 CGFloat ascent, descent; UIFont *font = [self.calFont fontWithSize:size]; CTFontRef fontRefMeasure = (__bridge CTFontRef)font; [attrString addAttribute:(id)kCTFontAttributeName value:(__bridge id)fontRefMeasure range:NSMakeRange(0, attrString.length)]; CTLineRef line = CTLineCreateWithAttributedString((__bridge CFAttributedStringRef)attrString); CTLineGetTypographicBounds(line, &ascent, &descent, NULL); //calculate max font size CGFloat calFontHeight = MIN(height, width); self.maxFontHeight = calFontHeight; //calculate min font size CGFloat maxLine = self.document.maxLine * BDTZBigFontDataOriginScale; if (maxLine <= 0) { maxLine = 1; } calFontHeight = [self itemWidth] / (maxLine + (maxLine - 1) * (self.leadingRatio * BDTZBigFontDataOriginScale - 1)); self.minFontHeight = MIN(self.maxFontHeight, calFontHeight); // longest column int64_t n = 0; NSArray *strArray = [self.document.content componentsSeparatedByString:@"\n"]; NSString *measureStr = self.document.content; // 这里是针对多行文本的解决,循环次数为行数,量级较小(个别为1-10行) for (NSString *str in strArray) { if (str.length > n) { n = str.length; measureStr = str; } } CGFloat fontWidthRatioOrigin = (self.document.fontWidthRatio * BDTZBigFontDataOriginScale); CGFloat trackingRatio = (self.document.trackingRatio * BDTZBigFontDataOriginScale) * (ascent + descent) / ascent; CGRect rect = [@"我" boundingRectWithSize:CGSizeMake(CGFLOAT_MAX, CGFLOAT_MAX) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:self.calFont} context:nil]; CGFloat fontWidthRatio = fontWidthRatioOrigin > 0 ? fontWidthRatioOrigin * (ascent + descent) / ascent : rect.size.width / rect.size.height; CGFloat fontHeight = width / (n * fontWidthRatio + n * trackingRatio); if (strArray.count > 1) { //calculate font size accoring column count calFontHeight = [self itemWidth] / (strArray.count + (strArray.count - 1) * (self.leadingRatio * BDTZBigFontDataOriginScale - 1)); //take the min value of the above two font sizes fontHeight = MIN(fontHeight, calFontHeight); } if (fontHeight > self.maxFontHeight) { fontHeight = self.maxFontHeight; } else if (fontHeight < self.minFontHeight) { fontHeight = self.minFontHeight; } CGFloat calSize = fontHeight; calFontHeight = [self calculateFontHeightSize:calSize]; calSize = floorf(calSize / (calFontHeight * (ascent + descent) / ascent) * calSize); //exact value, calculate repeatedly with frame until the path can be filled //依据估算后果,将size逐次减1,直至能填入path,此处代码省略 if (calSize <= 0) { return calSize; } calFontHeight = [self calculateFontHeightSize:calSize]; self.fontHeight = calFontHeight * (ascent + descent) / ascent; self.font = [self.calFont fontWithSize:calSize];3、绘制性能文字模版的实时预览须要频繁绘制,这会对CPU带来较大的累赘,从而导致卡顿。为了解决这个问题,咱们必须采纳异步绘制的形式。具体来说,咱们能够创立一个异步的串行队列,来存储用户每次操作的文字内容状态。每当用户进行批改操作时,咱们就将以后状态退出到队列中,期待后盾线程进行异步绘制。以后一个状态绘制实现后,咱们再从队列中取出下一个待绘制状态,直到所有状态都被绘制结束。这样,既实现了异步绘制避免卡主线程,又将用户每次批改的后果残缺出现进去。为了进一步优化文字模版的用户体验,除了异步绘制之外,还能够思考应用缓存机制来晋升渲染性能。在用户对文字模版进行操作时,文字视图会从新进行排版和绘制,如果每次都从新绘制整个模版,不仅会占用大量CPU资源,而且会升高用户体验。因而,咱们能够应用缓存来存储已绘制的模版视图,当用户批改文字内容时,只须要从新绘制被批改的局部,而不是整个视图。通过这种形式,咱们能够进步渲染性能,同时还能缩小资源耗费,进步零碎的响应速度。 ...

March 23, 2023 · 2 min · jiezi

关于视频:什么是投屏SDK

投屏软件想必咱们都是十分理解的,那么什么是SDK呢?SDK其实就是集成在APP外面的第三方工具包,也就是软件开发工具包。这个软件开发工具包能够帮忙APP高效率低成本的实现地图领取,统计、社交、广告等一系列性能。简略的来讲就是通过第三方服务包实现产品性能的软件工具棒,其实在咱们生存当中与SDK的接触也是十分亲密的,例如咱们在生存当中接管到的短信验证码就有可能来自第三方之手。投屏SDK是开发者通过调用SDK接口,就能够轻松的将各种视频流媒体或者直播流媒体推送到智能电视上进行播放了。这也十分符合现代人的一些需要,尤其是短视频频道的崛起,越来越多的人们开始利用投屏SDK。在泛滥投屏SDK当中,乐播投屏SDK是一套基于乐联协定开发实用于安卓或者ios设施的程序接口。我只须要下载乐播投屏app,就能够轻轻松松的将手机上的视频投放到电视上进行播放了,这样的话,能够真正的解决小屏实现大屏的快感,当然也能够将一些短视频下面的直播推送到电视上,这样能够更清晰的理解,粉丝的反馈与粉丝进行无效的互动和沟通了。投屏SDK也真正实现了多屏互动,而且平台也反对多个终端的应用,肯定水平上也升高了研发的老本,同时也进步了用户的粘性,进步了用户的满意度,现在投屏时代曾经降临,既能够将小屏投放到大屏,也能够将大屏投放到小屏,当然除了能够投放到智能电视之外,也能够投放到电脑当中,只须要把握肯定的办法,就能够轻轻松松的实现这些性能了。有限投屏SDK兼容性也比拟强,可实用于ios零碎,安卓零碎,windows零碎和MacOS零碎。乐播投屏操作起来十分的简略。用户只须要通过手机关上乐播投屏app扫描电视上的二维码就能够实现投屏了,电脑投屏,无需任何转接线,在乐播投屏电脑端抉择索要投屏的设施或者输出大屏端显示的投屏码就能够实现投屏了,当然对于一些游戏爱好者来说,想要体验大屏的畅爽的话,也能够将游戏搬到荧屏上。乐播投屏为游戏玩家打造了沉迷式的游戏体验,也彻底解放了小屏的时代。长期应用手机体验游戏的话,会造成眼睛酸涩甚至视力含糊,视力降落这样的状况。将游戏搬到荧屏上,能够体验大屏的快感,同时也丰盛了玩家的体验。这样的游戏形式也是十分新鲜独特的,现在互联网时代的交互性也极大的扭转了人们的休闲娱乐形式,尤其是对于一些热衷网络云社交云游戏的人们来说,通过投屏互动也丰盛了业余文化生存,进步了生活品质。乐播投屏也让云投屏的互动性和电视大屏的视频劣势进行完满的联合,也让投屏更加好玩畅爽。这也是时代提高的一种体现。

February 13, 2023 · 1 min · jiezi

关于视频:纠删码在实时视频流中的应用丨Dev-for-Dev-专栏

本文为「Dev for Dev 专栏」系列内容,作者为声网网络体验团队王瑞。01 背景在实时音视频通话中,音视频品质受网络丢包影响较大,特地是对于视频。 为什么视频对丢包更敏感呢?通常来说,音频的原始码率绝对视频来说比拟小,因而音频编码器的压缩率比视频编码器要小很多。音频帧通常都是独立编码和解码的,因而任何一帧数据的失落,都不会影响其余帧的解码。 而对于视频来说,为了达到较高的压缩率,通常会采纳残差编码的办法来去除大量的空间和工夫冗余信息,这就导致了在解码时,须要依赖参考帧能力正确解码,任何一帧数据的失落,都会导致后续相互关联的一些帧无奈解码。因为视频帧之间的这种相关性就导致了视频对传输丢包更加敏感。 常见的丢包包含 IP 传输网络的拥塞丢包,以及凑近用户侧的无线丢包。拥塞丢包个别是因为网络中解决能力比拟小的瓶颈节点导致的,可能体现为随机或间断丢包,无线丢包个别是因为信道烦扰导致的,常常体现为间断丢包。当然,在理论网络的丢包起因很多,体现也都不一样。 通过拥塞控制算法能够肯定水平防止拥塞丢包的产生,但无奈解决所有场景的丢包问题。 丢包产生后,通常会采纳以下两种补救办法: (1)重传(Automatic Repeat-reQuest, ARQ) 重传是一种高效的补救伎俩,但它依赖反馈信道,同时重传效率对网络RTT十分敏感。在高丢包下可能须要多次重传。 (2)纠错编码(Forward Error Correction, FEC) 纠错编码无需反馈信道,同时网络RTT的大小也不会影响它的效率。 在一对一的互联场景中,如果网络RTT较低,重传是一种适合的抉择。但在RTT较大的时候,重传的效率会明显降低。另外在大规模的多播和播送利用中,过多的重传申请可能会加剧网络拥塞和丢包。 在这些状况下,采纳FEC技术是更适合的抉择。FEC在编码端进行冗余编码,在接收端通过冗余数据主动复原出失落的数据包,其劣势在于不依赖反馈信道,且纠错效率不受RTT影响。因而,在高RTT环境中,能够无效防止重传导致的高提早。本文次要对实时视频传输中的FEC技术做简要介绍,并介绍声网的最佳实际。 02 基本概念介绍1、删除信道如果发送端发送的一组数据,通过特定信道传输,其失落数据的地位对接收端是已知的,那么这种信道模型就称之为删除信道。基于互联网的包交换网络是一种典型的删除信道,在这种信道模型下,所有已接管到的数据都被认为是正确的。 2、检错码,纠错码与纠删码在信道编码中,差错控制编码依据编码用处不同,能够分为检错码、纠错码和纠删码三种。 检错码是为了校验数据通过信道传输后是否呈现了谬误,罕用的检错码包含简略奇偶校验码、循环冗余校验码等。纠错码不仅能够辨认到信道传输是否呈现了谬误,还能纠正传输谬误。在纠错码看来,通过过错信道传输后,接收端收到的数据都是不牢靠的,须要通过解码来发现和纠正错误。常见的纠错码包含汉明码、BCH码等(见参考资料5)。 纠删码能够认为是一种非凡的纠错码,对于纠删码来说,其过错信道是一种删除信道,对接收者来说谬误的地位是已知的,并且收到的数据都认为是正确的,因而其编译码会比纠错码更容易一些。 传统纠错码技术的倒退曾经十分成熟,通常用在网络协议的物理层和数据链路层,用于保障牢靠的链路级信道。而纠删码大部分是基于纠错码的实践倒退而来,罕用于应用层的FEC编码。 3、RS码在视频传输的应用层FEC编码算法中,RS码是一种常见的算法。RS码是一类重要的线性分组码,也是一种性能优异的短码,工作在无限域上。线性分组码通常用(n,k)码来示意,对于位编码来说,k和n示意比特数,其中k为信息位个数,n为码长;而在应用层FEC畛域,FEC编码采纳包编码方式,在包编码中,k和n都示意包数。对于码长为n的RS纠删码来说,只有收到任意k个信息位,就能够解码出所有n个数据。 对于一个(n,k)线性纠删码,能够示意为如下的矩阵运算: Y = x * G 其中,x是信息位向量,y是码字向量,G是生成矩阵。 在RS码中,常见的生成矩阵有范德蒙矩阵和柯西矩阵,别离如下图所示,这两种矩阵的特点是任意子矩阵均可逆,因而总能利用任意k个接管码字来解码出残余n-k个码字。 ■范德蒙矩阵 ■柯西矩阵 4、无限域运算域是一个能够在其上进行加、减、乘、除运算而后果不会超出域的汇合,如果域中的元素个数是无限的,就称为无限域,或伽罗华域。无限域在密码学、编码实践中有着宽泛的利用。 RS码是一种工作在无限域GF(2^q)上的多进制纠删码,RS码的全副码元取自无限域GF(2^q)上。通常,咱们能够用以下两种办法来结构无限域: 定理一:对于汇合Zp={0,1,…,p-1},如果p为素数,那么在Zp上进行模p的加法和乘法运算就形成一个无限域。 即Z2,Z3,Z5都是无限域,然而Z8不是,因为8不是素数。为了可能在非素数上结构无限域,就须要借助于本原多项式。 定理二:如果p为素数,m为正整数,那么在GF(p^m)上模一个m阶本原多项式也形成无限域。 根源多项式就是首项系数为1的不可约多项式,在理论算法实现中,思考到性能与算法复杂性,RS算法常实现在GF(2^8)域上,本原多项式能够有多个,如下就是一个8阶根源多项式的例子: 03 实时视频流的FEC编码方案1、卷积码与分组码所谓分组码是指编码器须要事后把输出数据分组,达到分组长度能力编码。而卷积码的输出是间断的,输入也是间断的,不须要进行预分组。 分组码的输入只与以后编码的分组数据无关,例如(n,k)分组码以k个输出为一组,编码出n个输入,输入仅与k个输出无关。而(n,k,L)卷积码的编码输入不仅与k个输出无关,还与历史的L个输出无关。L为束缚长度,或记忆深度。 为了加强反抗间断丢包的能力,通常会减少分组码的分组长度(即k),然而因为分组码的解码提早是线性的,k值的减少会导致解码提早的减少。这就带来了分组长度的抉择问题,较长的分组长度能提供更好的纠错能力,但同时增大了零碎提早。而卷积码不须要思考分组长度问题,能够实现on-the-fly coding,更适宜实时流传输场景应用。 2、常见的几种编码方案对实时视频流来说,常见有以下几种编码方案,帧级编码、GOP级编码、扩窗编码、滑窗编码。其中前两种是分组码,后两种是卷积码的利用。 帧级FEC编码以单帧为分组单位(如下图),在这种编码方案中,FEC能够实现最小解码提早,但在低码率下因为分组太小,导致在间断丢包时很容易呈现无奈解码的状况。GOP级编码以GOP为分组单位,这种编码方案的益处是大幅提高了间断丢包下的解码稳定性,然而也带来了较大的解码提早,在实时场景中难以利用。 扩窗和滑窗编码是卷积码的具体利用,因为不存在分组问题,所以实践上能够在视频流的任意地位进行编码。两者的区别是,对帧X进行编码时,扩窗编码会编码所在GOP范畴内的第1至第X帧,而滑窗编码只会编码第X-T到X帧,其中T为最大窗口长度。这两种编码方式都能很好的进步间断丢包场景下的解码概率,同时不会额定减少解码提早。但因为扩窗编码在大GOP下存在性能问题,因而滑窗编码是一个更为理论的计划。下图是一个T=3的滑窗FEC编码的例子。 3、信源与信道联结卷积编码在声网的实际中,咱们不仅大规模利用了卷积码计划,验证了卷积码在实时视频流传输中的劣势,同时,咱们将信源编码与信道编码联合,发明了一种新的编码方案,并命名为DMEC(Dense Matrix Erasure Coding),DMEC真正施展了卷积码的最大性能劣势,可能实现在不同场景下的最优视频QoE。 在信息论中,对信息的编码分为信源编码和信道编码,信源编码是为了去除冗余信息,进步通信效率,例如罕用的视频编码器H.264就是一种信源编码器。而信道编码是为了反抗信道中的噪声和衰减,通过减少冗余,来进步抗干扰和纠错能力,例如下面讲到的RS码就是一种信道编码算法。 对于视频信源编码器来说,以H264为例,通常视频帧是逐帧参考的,即后一帧总是参考同GOP内的前一帧。但在分层编码的状况下则不然,在分层编码时,视频帧会分为根底层和一个或多个加强层。在多上行的场景中,分层编码能够为不同设施和不同网络状况的终端提供不同等级的自适应视频流。但与此同时,分层编码使得视频帧的依赖关系变得复杂,如果依然套用简略的滑窗FEC编码,视频品质将无奈达到最优。 ...

September 7, 2022 · 2 min · jiezi

关于视频:Uniapp实现实时音视频的基础美颜滤镜功能

视频根底美颜性能简介ZEGO 音视频SDK提供根底美颜性能,为用户呈现出良好的肌肤状态,打造独特天然的美颜成果。美颜滤镜性能罕用于视频通话、直播等场景。 开发者能够开启美颜开关,而后依据须要调整美白、磨皮、锐化以及红润的水平,轻松实现根底美颜性能。 Uniapp实现根底美颜的前提条件在实现根底美颜性能之前,请确保: 已在我的项目中集成 ZEGO Express SDK,实现根本的实时音视频通话性能,详情请参考 疾速开始 - 集成 和 疾速开始 - 实现视频通话。已在 ZEGO 控制台 创立我的项目,并申请无效的 AppID 和 AppSign,详情请参考 控制台 - 项目管理 中的“我的项目信息”。Uniapp根底美颜SDK应用步骤初始化根底美颜性能的环境若您须要应用根底美颜性能,则必须在 startPreview 开始预览、startPublishingStream 推流前,调用 startEffectsEnv 接口初始化美颜环境。 /** 1. 创立美颜环境 */await this.engine.startEffectsEnv();开关根底美颜性能的成果展现enableEffectsBeauty 接口和 setEffectsBeautyParam 接口的调用时序无先后之分。 初始化美颜环境后,您能够在推流前后,调用 enableEffectsBeauty 接口实时开启或敞开美颜成果。 /** 开关美颜成果 */await this.engine.enableEffectsBeauty(true);设置根底美颜成果参数初始化美颜环境后,您能够在推流前后,调用 setEffectsBeautyParam 接口实时设置美颜成果参数。 smoothIntensity:磨皮,在保留脸部细节的根底上进行磨皮,比方脸上的痣会保留。whitenIntensity:美白,对画面整体调高亮度来美白脸部。rosyIntensity:红润,对画面整体进行寒色解决。sharpenIntensity:锐化,对画面整体进行锐化解决,当画面有些含糊时能够略微调大锐化使轮廓清晰。以上四个参数的取值范畴都为 0 ~ 100,取值越大美颜水平越高,默认值为 50。 // 创立美颜参数对象let beautyParam = {};// 美白、红润、磨皮、锐化beautyParam.whitenIntensity = 50;beautyParam.rosyIntensity = 50;beautyParam.smoothIntensity = 50;beautyParam.sharpenIntensity = 50;/** 3. 设置美颜参数 */await this.engine.setEffectsBeautyParam(beautyParam);销毁根底美颜环境当调用 enableEffectsBeauty 接口设为 “false” 时,会敞开美颜成果,但美颜模块还是会占用资源并耗费性能。如果想彻底开释资源,节俭性能耗费,则须要在预览和推流前调用 stopEffectsEnv 接口销毁美颜环境。 ...

September 7, 2022 · 1 min · jiezi

关于视频:从技术全景到场景实战透析窄带高清的演进突破

随着5G时代的到来,互联网短视频、电影电视剧、电商直播、游戏直播、视频会议等音视频业务呈井喷式倒退。 作为通用云端转码平台,阿里云视频云的窄带高清须要解决海量、不同品质的视频。对于中高质量的视频,现有的窄带高清1.0就能提供称心的转码成果,并带来达30%的带宽老本升高;而对于有显著压缩失真和成像噪声的低质量视频,须要使用性能更好的窄带高清2.0进行去压缩失真、去噪和加强解决从而失去更好的观看体验。 在2022稀土开发者大会上,阿里云智能视频云技术专家周明才以《阿里云窄带高清的演进冲破与场景实战》为主题,深度分享阿里云视频云在窄带高清上的研发思考与实际。 01 窄带高清的源起谈及窄带高清之前,先来聊聊一般的云端转码流程。转码实质上是一个先解码再编码的过程。从下图能够看到,一般云端转码是在用户端先造成一个原始视频,通过编码之后以视频流的模式传到服务端,在服务端解码之后做转码,而后再编码通过CDN(内容散发网络)散发进来,此时一般转码次要的性能就是做视频格式的对立,并在肯定水平上降低码率。 窄带高清是什么?它与一般转码的次要区别是什么?通过窄带高清的字面意思能够了解,“窄带”是指让视频通过窄带高清转码之后,对带宽的需要变得更小。同时,“高清”是指通过转码后的画质依然可能放弃高清、丰盛的视觉体验。 上图的下半局部也就是窄带高清的流程,与一般转码流程不同点在于,在云端做了解码之后,窄带高清还会对视频品质做加强解决,以及利用编码信息来辅助晋升视频品质。通过品质晋升后,再用针对主观品质做过优化的编码器进行编码,最初进行散发。 总结来说,窄带高清实质上解决的是品质晋升和压缩的问题,其次要指标是谋求品质、码率和老本的最优平衡。阿里云早在2015年就曾经提出了窄带高清这一概念。在2016年正式推出窄带高清这一技术品牌并且进行了产品化。 往年,阿里云推出了窄带高清2.0极致修复生成版本。相较于先前版本,最大特点是能生成细节纹理做到极致修复。 窄带高清全景图窄带高清在做自适应参数决策时次要思考三个维度:业务场景、视频热度、视频内容。 因为业务场景的不同,比方电商直播、游戏直播、赛事直播,所须要的视频加强和编码参数不一样;对于一些高热内容,如:在手淘场景中能够用窄带高清2.0启动二次转码来实现品质的进一步晋升和码率的节俭;在视频内容维度,会针对以后的视频做一些High-level和 Low-level的剖析,High-level蕴含语义的剖析,特地是ROI的检测,Low-level包含视频压缩水平、含糊水平、噪声水平的视频品质剖析。 依据以上这些维度的剖析,能够失去自适应参数的决策后果。依据此后果,窄带高清再去做相应的视频修复和视频加强。具体来说,视频修复包含强压缩失真、降噪等,视频加强蕴含细节加强、色调加强、对比度加强等。 02 视频内容分析ROIROI的次要目标是在码率受限或码率统一的状况下,将码率尽可能调配到人眼更关注的区域,比方在电影电视剧中,观众会更多关注配角的脸。 基于ROI的解决和压缩,有以下两个难点:一是如何失去低成本的ROI算法,二是如何基于ROI进行码控决策,例如:保障ROI区域主观品质晋升的同时,非ROI区域的主观品质不会显著降落;同时做到时域间断、不闪动。 在低成本ROI计算方面,阿里云自研了自适应决策的人脸检测跟踪算法,这是一款低成本、高精度的算法。在极大局部工夫只须要做计算量极小的人脸跟踪,只有少部分工夫做人脸检测,从而在保障高精度的状况下,实现超低老本和疾速ROI获取。 从下图表格外面能够看到,阿里云自研算法相比开源人脸检测算法,精度和召回基本上没有损失,同时复杂度和计算耗时有显著数量级的降落。 在有了ROI算法之后,须要对场景、视频品质的自适应码率调配进行决策。针对此难题,次要思考与编码器联合,在主观和主观之间获得平衡,同时保障时域的统一。 JND传统视频压缩办法次要基于信息实践,从预测构造的角度减小时域冗余、空间冗余、统计冗余,但这对视觉冗余开掘是远远不够的。 在JND算法里,次要采纳了两个算法,一个是空域JND算法,一个是时域JND算法,拿到这些JND算法后,咱们再基于MOS的自适应码控算法,对QP做自适应的调配,最终实现在通用场景及主观状况下,码率能够节俭30%以上。 03 视频修复加强细节加强讲到视频修复加强,提及最多的就是细节加强局部,成果的确会比拟显著。 通常的细节加强基于UnSharp Mask的框架。阿里云视频云自研的细节加强算法,有以下三个特点:第一是有更精密的图像纹理细节提取形式,能提取不同尺寸,不同特色的图像纹理构造,加强成果更优;第二,算法能够通过对图像内容纹理构造剖析,依据区域纹理复杂度实现部分区域自适应加强;第三个特点是算法能够和与编码联合,依据编码器的编码信息反馈来自适应调整加强策略。 色调加强通常采集的视频素材,因为采集的设施或者光线亮度的起因,导致素材色彩可能看起来会比拟黯淡。特地是在短视频场景,这类视频会失去视觉吸引力,因而须要色调加强。 色调加强存在哪些难点问题?具体如何做色调加强? 像Ffmpeg外面有EQ filter,EQ filter会用UV通道去做色调加强。而在咱们的自研算法里,实际上是在RGB色彩空间去做加强,即会依据以后色彩点的饱和度,去做一些部分的自适应。同时,也会依据以后画面整体的状况,做一个整体的自适应。 在肤色爱护这块,因为传统的色调加强完之后,人脸区域会泛红,主观视觉上不天然。为了解决这一问题,咱们采纳了肤色爱护的办法,对肤色区域做一个额定的爱护。 这是一个色调加强前跟加强后的成果比照。能够看到加强后的绿色的蔬菜、肉,整个的色彩看着会更丰满,对于美食类视频来讲更可能激发起观众的食欲。 对比度加强在对比度加强中,应用了经典的CLAHE算法,其思路是对一个视频帧做分块,通常分成8x8个分块,在每一块统计直方图。而后统计直方图的时候,对直方图做一个Clip,就是所谓的对比度受限的直方图平衡,这次要是克服适度放大噪声的问题。基于CLAHE的视频对比度加强其实有一个难点,就是时域闪动问题。这在学术界也是一个较难的问题,到目前为止,还没有失去十分彻底的解决。 降噪降噪在ffmpeg外面有很多算法,比方像BM3D、BM4D、 NLM,这些算法的去噪成果好,然而复杂度十分高,会导致速度慢老本高,可能还须要配合噪声预计模块来一起应用。 另外还有一些绝对平衡的算法,速度比拟快,然而成果不强。如果想要晋升它的去噪强度,通常会引入一些伪影或细节失落的问题。 基于这些调研,咱们自研的降噪算法采纳基于多分辨率合成在下面做滤波框架。首先是对输出图像会做小波合成,失去高频跟低频信息。对于高频做软阈值解决。对于低频采纳双边滤波降噪。通过这种滤波或者软阈值之后,再从新合成回去,就能够达到去噪目标。算法的外围难点在于如何去做减速,使得老本和运算速度可能满足转码要求,尤其是实时转码场景,对速度要求是十分高的。 减速算法团队对于小波变换减速做了包含整形化很多的尝试,总是存在一些累积误差。所以咱们最初采纳了浮点型减速形式,用avx2浮点减速可能达到大略三倍的晋升。 另外是双边滤波这部分的减速,传统的双边滤波基于邻域像素的操作。这种基于邻域的操作其实十分慢的。因而,咱们采纳了RBF这个疾速算法,把二维的滤波分解成一维的,同时采纳递归的形式去从左到右,从右到左,从上到下,从下到上,这样的一维操作,就能够实现相似于原始双边滤波成果。通过采纳RBF这个疾速算法,咱们能够取得大略13倍的减速。此外咱们还做了这种AVX2汇编的优化,这块可能额定减速十倍左右。 上图是SDR+的整体效果图,在通过SDR+的解决之后,画面整体的对比度、亮度、清晰度会有很大的晋升,以上这些是针对视频加强做的一些工作。 CDEF去振铃首先是CDEF去振铃,CDEF自身是源自于AV 1的一个技术,在CDEF解决之前,强边缘左近会有很多的毛刺和振铃。通过CDEF解决之后,画面中的噪声失去很大的剔除。 CDEF算法的外围步骤,其实是一个平滑滤波的过程,只不过它的平滑滤波的权重、偏差都做了一些非凡的解决。特地是它的滤波权重,跟以后像素点所在的8x8像素区域的次要方向是有关系,也就是图中左下角这里展现的,它会去做一个最优方向的一个搜寻。搜寻完了之后,依据主方向来确定它的这个滤波器抽头的方向和权重。此外,CDEF有两局部的权重,一个是主方向的WP,另一个是辅助方向WS。而后对于邻域点和以后点的灰度偏差做截断,这能够防止过平滑。 去压缩失真除了用CDEF基于传统的图像处理算法做去振铃之外,还做了基于深度学习的去压缩失真的算法。这个算法是基于多帧的计划,更利于帧间连续性,不易呈现帧间闪动。“窄带高清”算法分成两大块:一个是品质检测模块,一个是去压缩模块。品质检测模块能够辨认不同品质视频源的压缩水平,而后输入QP MAP作为压缩强度掂量指标。另一个是去压缩模块,输出多帧视频和对应帧的QP MAP,利用QP MAP进行自适应去压缩。 极致修复生成极致修复生成次要是针对画质比拟差的场景,去除较强的压缩失真的同时,生成一些因压缩而失落的细节。在极致修复生成研发中,有以下几个要点:一是构建训练数据(在训练数据构建时,参照了Real-ESRGAN的二阶进化思路);二是对比拟敏感的人脸区域,保障人脸生成稳定性;三是做模型压缩时,使得模型计算量低的同时保持良好的成果;四是模型部署。 极致修复的场景实战在六月份NBA决赛直播时,百视TV心愿通过应用咱们的窄带高清2.0修复生成技术,来晋升他们赛事直播的品质。如两头这个截图所示,截图的上半局部是主播间接推过来的视频成果,下半局部是通过极致修复生成之后的成果。 能够看到修复之后,Youtube这几个字母边缘会更清晰、洁净,不再毛躁。其余篮球场景相干的,比方球员身后的数字及球员的身材轮廓,也会变得特地清晰。另外也有些生成成果,比方地板上有生成一些纹理,使整体的赛事观感大大晋升。 除了自研的算法,阿里云也有一些高校合作项目,字幕修复就是其中一个合作项目的成绩。能够看图中右下角理论修复字幕例子。该字幕取自一个老片MV,下面一行是原始MV里的字幕,能够看到“话”字的言字旁几条横笔画会有一些粘连,此外文字边缘还有很多的噪声。上面一行是通过字幕修复之后的成果,可能看到会变得很洁净、清晰。 ...

August 3, 2022 · 1 min · jiezi

关于视频:从云原生到智能化深度解读行业首个视频直播技术最佳实践图谱

在2022阿里云直播峰会上,多位直播产业畛域技术专家与行业先行者,独特探讨超视频化时代视频直播技术的演进趋势与将来倒退。会上,阿里云重磅公布了行业首个「视频直播技术最佳实际图谱」,将直播技术演绎总结为7点:云原生、高牢靠、低延时、超高清、智能化、专业性及多场景,本文将对「视频直播技术最佳实际图谱」进行深度解读。 视频直播的趋势就是极致升高延时,其蕴含传输延时和计算延时。 谈到延时,公众对于延时的了解次要集中在传输延时上,根据视频的延时,能够将视频分成点播、直播、连麦互动、实时互动等。 当传输的延时在3-10秒,这样的视频具备可播送的属性,如:体育赛事直播;当传输的延时在250-800毫秒之间,可进行沟通、互动,如:互动课堂连麦等;当传输的延时升高至50-80毫秒,此时视频便具备可操控性和沉迷感,如:云实时3D渲染、近程视频操控…… 除了传输延时,视频的编解码、高清化等技术的计算也会带来算力的延时。紧随直播的趋势,如何能将传输延时和计算延时一直升高,为更多直播场景带来技术撑持及设想空间? 阿里云的直播技术基于云原生的底座和分布式边缘节点,通过对传输协定的革新,交融实时媒体解决能力与边缘算力,可能大幅无效升高传输延时与计算延时,并通过寰球实时流媒体传输网络GRTN(Global Real-time Transport Network)、超低延时直播服务RTS(Real-time Streaming)、实时媒体解决能力、视频+AI等技术利用,实现低延时的最佳实际,实现老本与体验的最佳均衡,在带来泛滥通用直播解决方案的同时,也衍生出泛滥场景化解决方案。 本次峰会公布的行业首个「视频直播技术最佳实际图谱」,是通过阿里云多年的直播技术摸索与实际积淀而来的,演绎总结为7大点:云原生、高牢靠、低延时、超高清、智能化、专业性及多场景。 云原生视频技术就是云原生的最佳实际。阿里云所提倡的云原生次要有三点:“产品的服务化”,“随便的弹性”,“软硬一体、云边一体、云端一体”,而视频技术恰好就是云原生的最佳实际。 云的基础设施,包含核心节点、边缘节点、CDN网络是保障大规模散发和传输的根底;云原生的软硬一体,能反对CPU/GPU/FPGA/ASIC等多种软硬件异构计划;云与端的严密协同和算力调配,能实现云、挪动端、Web端、PC端渲染成果统一。 除此之外,云原生的工夫、空间、异构弹性,不仅能反对数十种业务混跑,云边端计算量化灵便调整,还能实现100+种实时传输、媒体解决、AI工作多机型异构混跑,给视频业务带来有限的算力的同时将资源充沛无效利用起来,大幅降低成本,衍生出更多新场景。 高牢靠热点视频有千万级的实时并发,高牢靠是最根本的要求。视频直播技术须要高牢靠,尤其是热点视频往往会带来百万、千万级的并发,此时高牢靠是最根本的要求。阿里云的视频技术高牢靠次要体现两方面,一是在架构上领有全链路日志/监测/报警/预测和高牢靠、多正本的秒级切换,能实现智能自动化运维和接入网络秒级信息排查,带来跨核心逃逸能力及容灾服务保障。 高牢靠的第二个方面,体现在对弱网体验的晋升。阿里云独有的QoS技术,能对带宽进行精准预测,大幅晋升带宽利用率和拥塞控制能力,同时联合编码器的弱网感知和抗丢包技术,能在70%的丢包状态下仍达到较高清晰度和流畅性。基于深度学习的智能语音丢包弥补,能晋升弱网状态下的音频清晰度,而麦上麦下提早敏感自适应技术,能在多场景下实现音频流畅性和通话提早的均衡。QoS技术能辨认和动静适配如:丢包、延时等多种网络场景,大大晋升终端用户对业务性能的音视频主观感触。 低延时GRTN打造最佳流媒体实际场景。延时指的是主播端的画面传递到用户屏幕所消耗的工夫,当排除网络、码流、设施性能的状况下,在不同的直播场景中选用适合的直播流协定,能大大降低直播的延时。回顾直播的历史,也是直播协定的历史,支流的协定有耳熟能详的HLS、DASH、RTMP等,延时广泛在5s以上,在强互动的需要下,直播协定也在一直向低延时转化,比方:SRT、LL-HLS等。 阿里云在低延时上的最佳实际,次要在两个方面。一是在网络层面,将传统的CDN内容散发网络革新成GRTN寰球实时传输网,其定位是基于核心云和边缘云的异构节点,构建超低延时、全分布式下沉的通信级流媒体传输网络。 GRTN目前交融了互联网直播和RTC等多种业务场景的音视频流传输和替换,并具备泛滥其余核心技术,如:GRTN构建的双向的实时信令网可能做到切网音讯的毫秒级传递,当有一个公布端的媒体流产生网络切换后,订阅的客户端对GRTN外部产生的切换行为是齐全无感知的。 二是在这“一张网”上,阿里云打造了超低延时直播服务RTS(Real-Time Streaming)。基于GRTN的短延时直播RTS能够反对规范H5 WebRTC推播,在千万级并发状况下延时能够管制在1s以内;RTC端到端延时能够管制在250ms左右。观看下方RTS和RTMP的直播协定的比照视频,能够发现在有肯定丢包率的状况下,RTS在体验、晦涩度和色调上都绝对RTMP有显著的劣势。 https://www.youku.com/video/X...RTS与RTMP提早比照视频 超高清老本与体验的最佳和谐,带来更沉迷、更极致的音视频体验。对于超高清在视频直播技术中的实际,阿里云自研的s265编码技术能实现高画质低码率,并反对4K实时编码;反对AV1编码,较HEVC节俭25%以上的码率。公众熟知的“窄带高清”技术,窄高1.0对多场景进行优化,通过RIO和JND智能编码节约码率,窄高2.0自适应视频降噪和内容修复,通过色调和纹理加强晋升人眼主观画质,带来体验和老本的最佳和谐。 与此同时,阿里云在直播技术上还对采集编码传输链路进行优化,全链路反对4K和8K。在工程上,通过各类算法对帧率、码率、分辨率、色调等各维度进行晋升,无论是老片、瑕疵、人像、还是动画场景,都能进行修复带来超高清的体验。除了在云端对视频进行解决,还能在端侧进行超分插帧、降噪、色调加强等,即便是非HDR的设施,通过色调加强SDR+技术,也能实现端侧统一的超高清体验。 端侧超高清比照 色调加强SDR+技术 智能化在超视频化时代,音视频的智能化是一大趋势。深度学习能带来各类AI能力的晋升,在视频实际上是最好的一个进口。在智能化方面,阿里云的视频直播技术,除了传统的智能配音、智能拆条、智能集锦,还能对音视频内容实时审核,针对黄反暴恐广告实现精准辨认,节俭了大量的人工甄别老本。 经过训练的虚拟人技术,反对3D头像、Live2D、风格化迁徙、虚构主播等,带来更多XR技术的演进。此外,“智能化”还体现在音频体验上,基于深度学习技术与传统信号处理有机联合的3A技术,能实现智能降噪、突出人声、无损音乐,并能够广泛应用于各类实时场景。智能语音超分技术,在小模型的状况下仍可放弃高音质,这些都是AI与视频联合带来的成果。 https://www.youku.com/video/X...“智能降噪”的多场景体验 专业性专业性,让直播逐步演变成“智播”。阿里云对于直播技术的专业性体现在多码率、多协定、内容爱护和实时制作上,直播逐步演变为“智播”。值得一提的是,在实时制作方面,阿里云将传统导播台云端再造,交融实时翻译、图文包装、动静标签、广告替换等导播创新能力,兼顾直播专业性与近程导播劣势。 同时,基于多路实时实景抠像,阿里云还曾将“虚构演播室”搬到冬奥现场。阿里云的“云导播”技术,不仅反对多种设施、多机位、异地开播,还可能实现双屏、分屏、画中画等开播场景,最大水平贴近直播需要。 https://www.youku.com/video/X...互动虚构演播室助力冬奥 阿里云在直播技术上的专业性联合“云导播”丰盛的节目制作模式、更低的老本,可能广泛应用到广电新媒体、赛事直播、流动直播、商业直播等场景中,帮忙客户突破业务瓶颈,更快更好地开展业务。 https://www.youku.com/video/X...《这!就是街舞》云导播+帧级别多视角同步 多场景“直播+”已成为一种趋势,渗透到各个场景。从场景来看,直播从最早的大型文体直播、电商直播、游戏直播逐步渗透到企业培训、在线教育、广电新媒体场景。阿里云将直播、点播、在线会议的各种算法能力都集成到同一个SDK外面,实现多场景交融的同时,一体化SDK还能按需打包实现灵便的自定义。从传统的SDK接入、API接入到“低代码直播样板间”,阿里云直播针对电商直播、在线教育、企业直播等提供一站式接入的场景计划,通过简略的三步对接和十几行代码,让客户轻松接入直播的体验,助力业务的倒退。 以后,直播业务已成为数字化社会服务的重要组成部分,越来越多的内容与产业转向“直播+”模式,直播技术倒退的将来图景随着市场需求变动更加清晰。 「视频直播技术最佳实际图谱」正是基于阿里云在直播技术上多年的摸索和最佳实际,从直播技术的外围,到直播的全场景笼罩,再到直播技术创新与利用,助力企业深度了解“直播”,突破技术壁垒,携手各行各业在万物互联的浪潮中一直更迭与前行。 「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实际技术文章,在这里与音视频畛域一流工程师交换切磋。公众号后盾回复【技术】可退出阿里云视频云产品技术交换群,和业内大咖一起探讨音视频技术,获取更多行业最新信息。    

July 20, 2022 · 1 min · jiezi

关于视频:百家号基于AE的视频渲染技术探索

作者 | 金展 导读:百家号作为百度为创作者打造的集创作、公布、变现于一体的内容创作平台,在图文、短视频方面曾经深耕多年,基于百度根底AI能力,通过视觉、语音、 NLP等技术将图文内容智能合成视频是目前次要的摸索方向,目前每天帮忙创作者制作数千条靠近于真人制作程度的视频。视频渲染合成作为内容视频化的最初一个制作环节,决定着视频内容品质、时效性等要害指标,本文将带你理解百家号视频渲染合成的技术实现,具体介绍AE在视频渲染方面的独特劣势。。 全文8634字,预计浏览工夫22分钟。 01 背景短视频作为近年来挪动互联网衰亡的重要内容模式,市场规模持续增长,依据2021年12月CNNIC的数据报告,短视频用户规模就已达9.34亿,占互联网用户的90.5%。如何高效智能地进行短视频合成来满足用户的视频内容生产,越来越成为内容创作者的一个挑战。百家号作为百度为创作者打造的集创作、公布、变现于一体的内容创作平台,在图文、短视频方面曾经深耕多年,如何基于百度根底AI能力,通过视觉、语音、 NLP等技术将图文内容智能合成视频是目前次要的摸索方向。 晚期,百家号是基于VidPress(https://ai.baidu.com/creativi...) ,通过五大步骤实现图文主动转视频;VidPress的工作原理和剪辑师制作视频的步骤相似:先筹备文字脚本,而后收集媒体素材,再将素材解决成视频片段,将脚本配音和视频进行对齐,最初进行编辑和查看。通过 AI 技术,VidPress 能够实现文字剖析和摘要、视频内容搜寻、素材智能化解决、音视频对齐,以及智能剪辑等5个步骤的自动化。这不仅保障了视频生成品质靠近于真人制作程度,同时也大幅晋升视频创作的效率。 基于该技术,百家号已服务数十家媒体,在热点资讯、媒体报道等多个畛域发展了屡次利用,每天帮忙创作者自动生产数千条视频内容。整体的业务性能如下: 而随着百家号的业务迭代,更多的个性化需要为智能合成视频带来了一些挑战,例如:度晓晓播报天气,在视频中增加虚拟人等,在实现了文字剖析和摘要提取、视频素材智能化解决、音视频合成之后,视频的出现成果是百家号业务要解决的外围问题之一,视频创作不仅须要AI的加持,同样离不开视频合成这个关键环节;视频渲染合成作为内容视频化的最初一个制作环节,决定着视频内容品质、时效性等要害指标。 所以,百家号从往年3月份开始致力于渲染局部的优化工作,本文咱们将重点聊聊视频渲染合成这个环节。 △度晓晓播报天气视频成果 02 为什么抉择AE谈到视频合成,咱们会想到 FFmpeg、OpenGL、Shader 这些根底库,以及建设在这些根底库之上的Adobe After Effects(简称 AE) 、UE4、Unity 3d等视频处理软件和渲染引擎。 FFmpeg 在视频解决方面性能非常弱小,被誉为多媒体畛域的瑞士军刀,在视频合成方面(https://ffmpeg.org/ffmpeg.html)和转场成果(一个例子:https://trac.ffmpeg.org/wiki/...) 方面都有着杰出的体现,FFmpeg 的命令比拟弱小,能够实现视频转码,视频拼接、图片合成、音频合成,也是咱们业务中视频合成的根底依赖之一。 例如:你只须要筹备 img01.png,img02.png两张尺寸雷同的图片,在装置FFmpeg当前,执行以下代码就能生成一个带有过渡成果的视频。 ffmpeg -loop 1 -t 5 -i img01.png -loop 1 -t 5 -i img02.png -filter_complex "[0][1]xfade=transition=fade:duration=1:offset=4,format=yuv420p" output.mp4OpenGL计划OpenGL是驰名的图形库,反对各种丰盛的图形动画,在转场动画方面也能实现十分酷炫的成果(https://gl-transitions.com/),而且是跨平台的。然而要定制个性化成果,有肯定的学习老本和开发成本。 AE 的视频合成设计师应用 Adobe After Effects(AE) 做好一个模板,开发者应用Adobe Extension Scripts(AES)脚本形式替换掉模板中占位的内容(包含视频、图片和文本),基于内容数据驱动和AE模板来创立视频。 过后在百度外部也有一些团队在应用这个计划,在咱们看来,基于AE合成视频,能以较低的研发老本晋升视频成果的丰盛度,保障视频合成的品质。在百家号目前业务场景,咱们感觉 AE 是一个值得抉择的计划之一,也是目前次要的渲染计划。基于 AE 作为视频渲染引擎有 3 大劣势,别离是丰盛的特效插件生态、弱小的脚本能力、设计师的成果无损还原。 2.1 丰盛的特效插件 AE 作为弱小的视频后期制作软件,AE的三大性能,视频合成、特效制作、图形动画,能帮忙创作者疾速实现一些多样化的视觉效果。从广告短片到网页动画再到电影特效,都有它的身影。AE 有着丰盛的插件生态,咱们来看一些简略例子: ...

July 12, 2022 · 3 min · jiezi

关于视频:浏览器下载视频

浏览器下载视频 function _download(url, name = "file") { var downUrl = url; var fileName = name; var xhr = xhr = new XMLHttpRequest() xhr.open('GET', downUrl, true); xhr.responseType = 'blob'; xhr.onload = function () { if (this.status === 200) { var type = xhr.getResponseHeader('Content-Type') var blob = new Blob([this.response], { type: type }) if (typeof window.navigator.msSaveBlob !== 'undefined') { window.navigator.msSaveBlob(blob, fileName) } else { var URL = window.URL || window.webkitURL var objectUrl = URL.createObjectURL(blob) if (fileName) { // 创立a标签用于跳转至下载链接 var a = document.createElement('a') if (typeof a.download === 'undefined') { window.location = objectUrl } else { a.href = objectUrl a.download = fileName document.body.appendChild(a) a.click() a.remove() } } else { window.location = objectUrl } URL.revokeObjectURL(objectUrl) } } } xhr.send();}

May 17, 2022 · 1 min · jiezi

关于视频:视频开播时长首帧检测方案

1、边缘检测从第1张图片开始剖析前后两张图片的类似度,类似度低于阀值的临界图片代表画面开始呈现切换动画,即为点击开始的工夫,此种办法实用于起始界面绝对静止的场景。而首帧呈现机会,能够通过边缘检测数值序列判断从含糊到不含糊来判断,仅实用于切换播放时有转场过渡画面。例如直播关上场景,缘检测数值序列从激烈变动值复原绝对安稳的值,认为首帧呈现。 2、特色元素的地位辨认播放转场,并无两头加载过程或页面切换,画面始终处于动静状态,此时基于边缘检测剖析计算出来的数据根本就不可信了,此时能够通过特色元素的地位辨认,失去变动曲线,也能够计算出变动起始工夫。 3、部分特色的梯度计算以后后画面都有动静播放,且无法控制被测视频的内容时,基于类似度剖析和基于特色元素地位辨认的计划都不能齐全解决误差,例如最常见的上下滑举荐场景,此时须要通过部分特色的剃度计算来辨认画面的首帧时长。

February 8, 2022 · 1 min · jiezi

关于视频:视搭-视频可视化搭建

TNTWeb - 全称腾讯新闻前端团队,组内小伙伴在 Web 前端、NodeJS 开发、UI 设计、挪动 APP 等大前端畛域都有所实际和积攒。 目前团队次要反对腾讯新闻各业务的前端开发,业务开发之余也积攒积淀了一些前端基础设施,赋能业务提效和产品翻新。 团队提倡开源共建,领有各种技术大牛,团队 Github 地址:https://github.com/tnfe 明天为大家介绍 shida, 我的项目地址: shida 介绍可视化搭建,听起来神秘又弱小。然而他又能够非常简单。 随着网络上短视频流量的持续增长,随着生产、生活习惯的扭转,便捷、活泼的视频化内容展示模式,胜利博得了用户的信赖,用户们对短视频的依赖水平也直线回升。视频可视化搭建平台的渗透力也越来越强。 视频可视化搭建工具, 是常见的经营工具, 能够让用户疾速编辑和生成视频, 晋升效率。但从零开始设计和开发出这种工具并不简略。 明天要介绍的《视搭》, 提供了视频可视化搭建的外围性能, 免去从零实现视频可视化搭建工具的艰难。 《视搭》是一个视频可视化搭建我的项目。您能够通过简略的拖拽形式疾速生产一个短视频,应用形式就像易企秀或百度 H5 等 h5 搭建工具一样的简略。目前行业内罕有对于视频可视化搭建的开源我的项目,《视搭》是一个绝对比拟残缺的开源我的项目,仅抛砖引玉心愿您喜爱。 《视搭》的后端视频合成局部是基于FFCreatorhttps://github.com/tnfe/FFCre...这个库开发的,FFCreator 是一个基于 node.js 的轻量、灵便的短视频加工库。您只须要增加几张图片或视频片段再加一段背景音乐,就能够疾速生成一个很酷的视频短片。 《视搭》前端局部 fork 自quark-h5我的项目开发,本我的项目未做太多扩大。quark-h5 是一个很棒的 h5 搭建开源工具,架构正当、代码比拟清晰易读,感激作者。 我的项目预览: 工程目录|-- client --------前端我的项目界面代码 |--common --------前端界面对应动态资源 |--components --------组件 |--config --------配置文件 |--eventBus --------eventBus |--filter --------过滤器 |--mixins --------混入 |--pages --------页面 |--router --------路由配置 |--store --------vuex状态治理 |--service --------axios封装 |--App.vue --------App |--main.js --------入口文件 |--permission.js --------权限管制|-- server --------服务器端我的项目代码 |--confog --------配置文件 |--controller --------数据库链接相干 |--extend --------框架扩大 |--model -------Schema和Model |--middleware --------中间件 |--core --------Koa MVC实现主动加载外围文件 |--views --------ejs页面模板 |--public --------动态资源 |--router.js --------路由 |--app.js --------服务端入口|-- common --------前后端专用代码模块(如加解密)|-- engine-template --------页面模板引擎,应用webpack打包成js提供页面援用|-- config.json --------配置文件编辑器整体设计一个组件抉择区,提供使用者抉择须要的组件一个编辑预览画板,提供使用者拖拽排序页面预览的性能一个组件属性编辑,提供给使用者编辑组件外部 props、公共款式和动画的性能用户在左侧组件区域抉择组件增加到页面上,编辑区域通过动静组件个性渲染出每个元素组件。视频合成外围基于FFCreatorhttps://github.com/tnfe/FFCre...,只须要很少的依赖和较低的机器配置就能够疾速开始工作开发调试启动 mongodb装置 mongodb:https://zhuanlan.zhihu.com/p/...配置 mongodb:配置文件在/server/config/index.js启动 mongodb:https://www.cnblogs.com/zhm19...装置依赖npm i启动前端并开启 watch 模式此模式下会开启热更新 ...

January 27, 2022 · 1 min · jiezi

关于视频:视频加密软件选择你都怎么选

想要给本人的视频课程加密的时候,咱们应该如何去抉择适宜本人的加密计划呢?现在,市面上的加密软件流行,防破解、防录屏也是成为了视频加密用户最为关怀的话题,同时也是一场技术上的较量,须要长时间的经验和工夫去做。市场上也有一些收费的视频加密软件,然而收费的会有质量保证吗?因而咱们在抉择视频加密软件计划时更应该抉择一家齐全牢靠又有肯定技术实力的公司来做。在抉择时咱们能够依据本身的理论状况和想要的软件需要来看,因为适宜本人才是最重要的。 首先能够看下视频加密软件须要具备的几项性能: 安全性强 对视频采纳逐帧加密,并且不会扭转视频的格局2.后盾管制权限 后盾能够操控视频播放的工夫、次数,并且在产生一些非凡状况时随时能够召回 3.跨平台播放 可能反对多平台播放,如安卓、iOS、Mac、Windows,保障观看者的体验 4.方便快捷 只需装置专用的播放器,激活后就能稳固播放 5.主动绑定设施激活观看视频主动绑定设施,分享流传无奈观看 6、导入视频不便 反对WiFi导入,文件夹导入,下载后也能够间接选用点盾云的形式间接关上。 7、后盾管理系统提供后盾管理系统,能够不便地保护学生信息和课程信息。 依据以上的性能来看,点量软件的视频加密是从以下方面来体现的: 反对支流视频格式,如MP4、FLV、F4V等视频加密一次即可在手机端和电脑端播放,反对安卓、iOS、Windows、Mac。只需装置专门的播放器即可播放,无需装置其余利用基于关键帧加密技术,加密前后的文件变动只减少几十个字节,根本保持一致大小,不减少网络传输压力。不同用户有不同的加密密钥,一机一码,激活后即便分享也不能观看,只能在激活的设施上观看。多种计划可选,反对在线视频加密观看、离线加密视频观看、网站视频加密、SDK加密计划等从多方面满足所有客户的不同加密需要。

January 22, 2022 · 1 min · jiezi

关于视频:短视频如何有效去重vivo-短视频分享去重实践

✏️ 编者按:对于短视频产品而言,晋升视频去重性能、升高误杀率,是晋升用户体验的必要环节。在此次 Milvus 社区发动的「Milvus 实战系列直播」中,咱们有幸邀请到了 vivo 互联网服务器开发工程师马运杰,与大家分享开源向量数据库 Milvus 在 vivo 视频中的实际。 嘉宾简介: 马运杰,vivo 短视频后端架构师,负责 vivo 短视频服务端以及视频解决平台的零碎架构设计,毕业于南京邮电大学,热衷新技术预研与难点攻坚。 业务背景为什么要视频去重? 对于观众来说,良好的观看体验与视频内容有着很大的关系。以后,全网范畴内次要精品视频次要来自于 MCN 机构,一些公司为了更快更好地去笼罩全网内容,会抉择和内容代理单干,而代理手上会有很多反复的版权内容,导致反复内容呈现。另外,搬运类视频也会产生反复内容。如果将反复的内容间接分发给用户,就会造成极差的用户体验,堪称「劝退」。所以,内容进行去重解决是十分有必要的。 目前,视频去重面临哪些痛点? 目前,根底样本数据已达到大几千万,在不久的未来会过亿。目前的难点是,在亿级样本数据的根底上反对百万级别的吞吐量,同时须要兼顾去重的精度以及高召回率。接下来,我将为大家介绍咱们是如何应答这几个问题的。 算法流程设计首先,进行视频特征提取,对视频进行抽帧。视频抽帧有多种策略,能够依照固定的工夫距离抽帧,或者抽取视频所有的关键帧等。咱们首先对视频进行场景检测,优先抽取出场景切换中具备代表性的一些关键帧,而后利用图像算法提取关键帧的部分特色,之后再把这些部分特色去合并失去全局特色。全局特色是几千维的浮点型的向量,最初咱们还会再进行一层哈希压缩,这层哈希压缩其实压缩了很多的数字量,然而也会给咱们带来一些问题,后续会提到。除了视频特色之外,咱们还会提取视频的音频指纹,作为比对的重要依据。 特征提取后,咱们进行特色匹配。将历史提取的视频特色放在向量数据库 Milvus 中,通过 Milvus 数据库召回 topK 的向量,而后通过肯定的策略进行过滤合并,失去类似的视频的候选集,通过粗疏的音频指纹的比对,根本能够失去类似视频的汇合。最初,依据业务上的其余特色,如时长、题目等等特色的残缺比对,最终造成类似视频汇合。 辨认成果须要同时兼顾召回和精度这两个方面。在视频召回的时候,咱们会适当放宽整个限度,尽可能多地召回类似视频;而在音频比对当中,咱们会更严格地进行筛选。这种策略有肯定缺点,比方短视频罕用的“拍同款”性能中,拍进去的音频十分相似,比对后果可能不是很好。整体来看的话,这样的策略还是能达到 90% 以上的精度和召回率指标。 去重零碎设计整体零碎架构如上图,分为三个服务、四个步骤。第一个局部是特征提取,次要是负责视音频特色的提取以及特色文件的治理,其中还包含了视频的镜头检测以及抽帧。第二个局部是去重策略,次要包含了业务上的逻辑以及去重的策略管制。第三个局部是特色召回局部,次要是作为 Milvus 数据库的客户端代理工作,工作内容次要是负责创立汇合以及索引。第四个局部则是基于 Milvus 数据库搭建的检索集群,外面分为主集群和备集群。 在进行零碎的具体介绍之前,咱们先来看一组压测后果。从后果中能够看到,第一列向量数量、第三列向量维度和最终的 TPS 呈负线性相关。向量数量、向量维度和索引参数,是影响 TPS 的次要因素,也是咱们前面去晋升这个性能的次要方向。 咱们所做的第一个工作是集群化部署。 从压测数据能够看出,单实例只能反对几百万的向量检索,也就是几十万的视频样本。尽管这种单机部署也会有它的一些劣势,比如说部署起来非常简单,使用方便等等。然而对于全局去重的业务不适合的。咱们抉择应用 Mishards 插件来搭建分布式集群,通过一直地退出 Milvus 实例,来分担每个实例的查问数量,晋升整个集群的吞吐量。Milvus 数据库外部解决申请的时候其实都是单线程的,如果要晋升整个零碎的并发能力,能够思考左边这样多集群部署形式,晋升咱们整体的吞吐量。 除了集群化部署之外,创立索引也是晋升性能的次要形式。上图右边示意精度,左边示意性能。能够看到,在增加索引之后会导致一些召回率上的损失,nlist 越小,损失越大,所以咱们天然想把 nlist 设置得大一些。然而,Milvus 对二值型向量的反对比拟弱,在构建索引的时候没有充分利用 CPU 资源,构建工夫十分长。比方,nlist 等于 1024 的时候,索引构建工夫曾经达到一个小时左右。咱们就只能斗争地升高 nlist 的大小,给咱们带来了召回率上的一些损失。 此外,构建索引期间集群外面的数据无奈失常写入的,只有期待整个索引构建实现之后后,才可能失常插入申请,这也是为什么咱们须要 Milvus 备级群。咱们把向量的读写分为三个状态:失常状态(对主集群进行读写)、索引构建时的状态(不能写入主集群,应用备集群,而后同时查问主集群及备集群)索引构建完结状态(主集群曾经能够失常读写,须要把备用集群的数据迁徙回主集群,迁徙实现后,这个状态也就从新变成了失常的状态)。通过这样主备切换,咱们解决了索引构建期间无奈失常写数据的问题。 整个集群的样本数据量越来越大,集群的吞吐量会随着工夫的迁徙而变小。为了管制整个集群的吞吐量,咱们抉择通过业务上的一些规定进行了分支。比方,咱们发现两个雷同或者类似的视频,咱们会是依据视频的公布工夫以周为单位去进行分区。在召回的时候,抉择该视频所在分区相近的几个分区进行查问。通过这样一种形式,咱们对整个比对的数量进行了严格控制,从而保障了检索效率。以上就是咱们基于 Milvus 数据库所做的零碎设计和性能优化。 ...

December 27, 2021 · 1 min · jiezi

关于视频:实时音频抗弱网技术揭秘

本文由百度智能云-视频云技术架构师——柯于刚 在百度开发者沙龙线上分享的演讲内容整顿而成。内容从抗弱网技术意义登程,梳理抗弱网的概念与办法,联合百度RTC抗弱网过程中遇到的问题,重点分享抗弱网技术优化的摸索与实际。心愿本次分享可能让开发者反抗弱网技术有一个全面的意识并把握肯定的webRTC优化办法文/ 柯于刚整顿/ 百度开发者核心视频回放:https://developer.baidu.com/l... 本次分享的主题是:实时音频抗弱网技术揭秘,内容次要分为以下三个方面: RTC抗弱网技术的意义RTC抗弱网技术解析百度RTC抗弱网实际与摸索 1.抗弱网技术的意义在开发过程中,直播、点播 CDN 等云服务往往会通过从「能用」、「好用」到「大规模应用」等阶段。相似地,RTC 正处于从「能用」走向「好用」的过程中。咱们须要晋升用户的视频参观体验,实现标准化的服务,而抗弱网技术是一个关键性的步骤。另一方面,不同于RTMP、RTSP 等「尽力而为」的网络协议,它们只解决网络问题;RTC 是一个面向视频交付的协定,联动传输和编解码,造成牢靠的视频交付。因而,抗弱网技术是实现全场景交付的撑持性技术。 2.RTC抗弱网技术解析2.1 抗弱网波及的环节和罕用伎俩2.1.1抗弱网波及的环节最典型的RTC系统结构通常包含两个局部:平台侧和终端。而平台侧通常又分以下两局部: 用户端接入, 包含信令和媒体。服务间流的直达和管制,包含媒体散发、调度。 2.1.2 RTC抗弱网的技术手段抗弱网的技术手段能够演绎为2个层面,蕴含4个办法。「2个层面」即网络层面和音视频层面。「4个办法」包含:(1)自适应办法。自适应地对网络的带宽进行评估、正当应用带宽,并依据带宽自适应地调整码率。(2)纠错办法。针对丢包、丢帧等状况,通过前向纠错,在网络数据包、视频、音频层面上进行纠错。(3)缓存办法。针对网络抖动、设施不稳固、设施性能无限等问题,设置视频、音频的缓存区。(4)调度办法。尽可能地将用户调度到最好的接入点,或在服务器侧进行直达,实现最优的内容散发调度,从而解决低延时和稳定性问题。 2.2 WebRTC抗弱网技术简介WebRTC 提供了蕴含一系列组件的低延时框架,次要环节包含:编码、发送、接管和解码。绝大部分自研零碎的架构也与此相似,但会在具体实现过程中对算法做相应的调整。编码环节:就发送方而言,咱们须要依据其网络状况自适应地采纳适合的码率;就接管方而言,咱们会通过 Simulcast、SVC 等编码伎俩依据网络状况自适应地抉择接管办法。此外,咱们还能够通过动静 Gop 依据场景控制传输压力。发送环节:首先进行带宽预计和调配。如果产生了数据谬误,咱们会进行 RTX 重传,或采取 FEC 等伎俩。此外,咱们还能够采纳 PACING实现网络的平滑发送,并确定数据带宽应用和发送的优先级。承受环节:须要与发送方就带宽的预计、重传等操作进行配合。咱们能够通过 NACK 申请发送方从新发送数据包,或者通过 RTCP 的反馈批示接管方理论的承受状况,也能够通过动静视频、音频缓存适应网络的抖动。解码环节:须要解决谬误暗藏问题,在数据出错之后尽可能晋升用户体验。此外,咱们还须要针对不平衡、不稳固的网络实现稳固的继续输入。之前的流媒体协定次要作用在网络层面,没有实现网络和编解码环节的联动,而WebRTC 能够大大晋升对弱网的适应性。 2.3 抗弱网技术总览进一步演绎,抗弱网技术次要须要解决丢包、延时、乱序抖动、限速、网络品质渐变等状况。咱们会在带宽评估、带宽调配、带宽应用、缓存、解码渲染等环节上解决上述问题。在进行带宽预计时,咱们能够采纳基于丢包、基于时延、基于 ACK 带宽的办法,也能够通透与探测实现带宽预计;在进行带宽调配时,咱们能够通过网络状况动静地调配视频、音频的编码码率,实现 FEC 前向纠错和互相纠错重传的带宽预调配。在带宽应用方面,对于纠错后调配的带宽,咱们须要通过 Nack、Sack、FEC 等数据重传,或通过 Pacing 等技术确定数据的优先级,晋升发送的均衡性;就缓存技术而言,WebRTC 中提供了面向视频的 JitterBuff 和面向音频的 NetEQ,从而适应网络的抖动、修补数据的完好、将网络数据包转换成音频帧或视频帧。 2.4 关键技术解析2.4.1 带宽评估——TCC根本了解TCC 是一种带宽评估技术,其输出为接管情况的反馈,该数据会输出给带宽预计的三个控制点:丢包预计、延时预计、确认带宽预计。丢包预计:依据丢包率的大小,在上次评估的带宽根底上,判断是减少带宽还是升高带宽。延时预计:采纳 Aimd 调节实现「和」式的带宽减少,以及乘法级的带宽升高。具体实现形式:别离计算再发送端和接收端,间断两个包之间的差值之差,拟合线性回归函数,依据斜率断定网络是拥塞、轻载、稳固,再确定如何调节带宽,带宽基值依赖于接受方反馈带宽估值,调节形式按照和增乘减形式。确认带宽预计:基于FeedBack接管统计丢包率,采纳贝叶斯评估接管方到码率,该值作为延时预计的带宽基值。咱们对丢包预计得出的带宽值和由 Aimd 解决后的时延预计后果取最小值,从而失去最终的带宽评估后果。值得一提的是,确认带宽预计提供带宽须要调节的基准值,而丢包预计和时延预计则提供调节动向。 2.4.2 TCC的优缺点TCC技术的设计长处包含: 采纳「丢包+延时」网络拥塞检测办法,实现了边界性的爱护。面向视频利用,思考未充沛应用的带宽、利用已确认的带宽,并探测预计出的带宽是否无效。TCC 技术的不足之处在于:所有预计强烈依赖反馈,接收端会影响发送端。发送方的丢包、延时拥塞预计都基于统计实现,反映灵敏度低。未笼罩高抖动等场景。 2.4.3 带宽调配带宽调配最典型的利用场景是对视频和音频的带宽调配。就音频而言,其带宽次要蕴含音频的原始码率以及为重传、纠错预留的带宽。大部分的带宽将调配给视频,视频的带宽分为三局部:(1)视频原始码率(2)前向纠错的 FEC带宽(3)视频的 Nack 所须要的带宽。须要指出的是,Nack 的带宽不是预调配失去的,而是依据之前的网络状况统计得出。在具体实现中,咱们会采取一些保护措施,例如:要求视频 FEC 的码率加上理论重传的码率小于等于最终调配给视频的带宽的一半。在这种设置下,WebRTC 的抗丢包率约为20-30%,咱们能够依据理论的丢包、延时状况扭转 nack+fec 的带宽分配比例,从而晋升抗丢包率。 ...

October 11, 2021 · 1 min · jiezi

关于视频:云智一体全场景智能视频技术与应用解析白皮书下载申请

云计算和 AI 的倒退为智能视频的到来注入短缺能源。百度智能视频云3.0充沛交融端、边、云、智的能力,提供云智一体、端到端、全场景的智能视频平台解决方案,从技术一体化、服务平台化、利用场景化,全面赋能视频生产、解决、治理、散发、生产等全流程,深刻产业智能化。 "云智一体"全场景智能视频技术与利用解析白皮书是业内为数不多专一于全场景智能视频技术与利用的解读白皮书。该白皮书源于百度智能云重磅打造的“云智技术论坛”系列流动第二期"云智一体的全场景智能视频前沿技术",深度解析了视频进入云计算和人工智能之后面临的挑战,详述了具备“云智一体”独特劣势的百度智能云,如何通过端边云一体化的智能视频云架构3.0,满足内容高清化、体验沉迷化、剖析智能化的视频利用与体验新需要,并介绍了云智一体的视频技术在泛媒体、泛互联网及泛产业等三大行业利用场景中的作用与价值。立刻下载 那么,如何充分利用最前沿的智能视频技术,为用户提供更好的利用、体验和效力的降级? 9月15日-29日,百度开发者核心请到百度智能视频云的几位技术架构师,为大家直播解析百度智能视频云3.0 五大外围能力:智感超清、终端引擎优化、实时音视频通信、低延时直播、视频散发减速 CDN, 以及低延时、编解码、WebRTC等技术的最新动向。 直播预约 | 百度智能视频云3.0全场景音视频技术解析

September 10, 2021 · 1 min · jiezi

关于视频:B站视频下载器推荐亲测有效

你还在为怎么下载B站视频而困扰吗?给你举荐一个简略好用的B站视频下载器-4K Video Downloader,它能够疾速帮你将喜爱的B站视频下载到本地离线观看。 如何用4K Video Downloader下载B站视频? 第一步:首先返回哔哩哔哩网站找到喜爱的视频,而后复制其链接地址  第二步:而后下载安装4K Video Downloader软件,并运行它,接着将B站链接粘贴到程序里解析  第三步:4K Video Downloader软件会主动开始下载B站视频,你能够看到每个视频的进度条  第四步:期待B站视频下载实现,点击旁边的播放按钮即可离线观看。   以上就是怎么下载B站视频的具体操作步骤,学会了吗?连忙下载4K Video Downloader软件试一下吧! 文章分类

August 17, 2021 · 1 min · jiezi

关于视频:唐桥云会议分组讨论新的参会互动方式

课堂教学须要分组讨论,但线上教学时却无从下手?校园招聘转阵线上,但群面分组环节难以落地?唐桥云会议分组讨论性能曾经上线!仅需3步,轻松上手。 一、什么是唐桥云会议分组讨论?主持人在会议中可将参会用户随机或者按需分成若干个小组,进行小组讨论,探讨完结后能够从新回到主会议室持续散会。 每个小组内探讨的任何信息仅小组可见,如聊天、视频内容、录制信息、表情等,任何小组外成员均不可见;主持人能够自在进出每个小组,参加小组讨论。主持人能够插播整体播送,管制探讨进度和内容。规定工夫后或者主持人一键即可完结分组讨论。二、分组讨论适宜用在哪里?场景1.教育培训:老师提出特定问题,学生针对问题进行分组讨论;场景2.招聘面试:多人面试中,面试官出题,将面试者进行分组讨论,而后返场分享各自观点;场景3.我的项目竞标:各竞标团队小组讨论内部结构,并返场陈说本人的观点。场景4.答辩竞猜:针对某一问题/工作进行限时分组答辩竞猜,并返场陈诉观点场景5.线上会展:按需将参会者与赞助商/供应商分组讨论,进一步商务洽谈··· ··· 三、如何开启一场分组讨论第一步. 创立讨论组进入会议后,主持人点击下方【分组讨论】即可创立讨论组。 (2)调配讨论组人员的二种形式依据会议须要,主持人可抉择讨论组个数,通过随机分组、手动分组2种形式调配讨论组。 形式一,点击【随机分组】,参会者将被随机安顿进不同的讨论组;形式二,点击【手动分组】,主持人可依据会议需要安顿参会者进入所需的讨论组; 第二步. 编辑讨论组创立讨论组后,主持人能够依据须要对讨论组进行进一步编辑。 (1)批改名称鼠标移至讨论组名称一栏,点击【重命名】进行编辑即可。(2)新增/删除讨论组• 点击【新增讨论组】即可增加新的讨论组;• 鼠标移至讨论组名称一栏,点击红色【删除】即可删除讨论组。(3)探讨组成员治理• 调配成员:鼠标移至讨论组名称一栏,点击【调配】,即可抉择探讨组成员;• 挪动成员:可抉择对应成员,将其挪动至别的组。• 替换成员:可抉择对应成员,按需与其余讨论组的成员进行替换 第三步. 开始探讨开始探讨后,组内探讨的任何信息仅小组可见,如聊天、视频会议、录制、表情等,任何小组外成员均不可见。(1)主持人退出讨论组 如果有须要邀请主持人退出讨论组,可将鼠标挪动至申请帮忙,点击【邀请主持人】即可 主持人如有须要,可鼠标移至讨论组名称一栏,点击【退出】即可退出该小组。(2)主持人发送整体音讯如需对整体参会成员发送音讯,主持人点击【播放一条群音讯】,键入告诉内容后,点击【启动播送】即可。 (3)参会者可发送申请给主持人参会者如需帮忙,点击【申请帮忙】即可邀请主持人进小组,主持人收到邀请后可进行解决。 参会者视角页面 主持人视角页面 (4)完结讨论组主持人点击【分组讨论完结】,即可完结分组讨论,所有成员将回到主会场。 当初,降级到唐桥云会议v6.2.7版本即可应用分组讨论性能下载传送门:https://meeting.techbridge-in...

August 11, 2021 · 1 min · jiezi

关于视频:使用-VideoToolbox-探索低延迟视频编码-WWDC-演讲实录

本文依据 Peikang 在 WWDC 2021 分享翻译,演讲者 Peikang,来自 Video Coding 和 Processing 团队。译者陶金亮,网易云信资深音视频开发工程师,领有多年端侧音视频工作教训。 反对低提早编码已成为视频利用程序开发过程的一个重要方面,在低提早直播和 RTC 畛域有着宽泛的利用。本分享次要分享了 VideoToolbox(一个低级框架,提供对硬件编码器和解码器的间接拜访, 它提供视频压缩和解压缩服务,以及存储在 CoreVideo 像素缓冲区中的光栅图像格式之间的转换)是如何反对低提早 H.264 硬件编码,以最大限度地缩小端到端提早并实现新的性能程度,最终实现最佳实时通信和高质量视频播放。 分享实录视频:https://developer.apple.com/videos/play/wwdc2021/10158 低提早编码对于许多视频利用十分重要,尤其是实时视频通信利用。在本次演讲中,我将在 VideoToolbox 中介绍一种新的编码模式,以实现低提早编码。这种新模式的指标是针对是实时视频通信利用优化现有的编码器流水线。那么实时视频通信利用须要什么?咱们须要最大限度地缩小通信中的端到端提早。 咱们冀望通过让视频应用程序与更多设施进行通信来加强互操作性。例如:当呼叫中有多个接收者时,编码器管道也应该是高效的,并且,该应用程序须要以最佳视觉品质来出现视频。那么,咱们须要一种牢靠的机制来从网络失落引入的谬误中复原通信。 我明天要讲的低提早视频编码将在这些方面进行优化。应用低提早编码模式,咱们的实时应用程序能够达到新的性能程度。在本次演讲中,我将首先概述低提早视频编码。咱们能够对如何在管道中实现低提早有根本的理解。而后我将展现如何应用 VTCompressionSession API 来构建管道并应用低提早模式进行编码。最初,我将探讨咱们在低提早模式下引入的多个性能。 低提早视频编码 首先让我概述一下低提早视频编码。这是 Apple 平台上视频编码器管道的简图。 VideoToolbox 将 CVImagebuffer 作为输出图像,它要求视频编码器执行 H.264 等压缩算法以缩小原始数据的大小。输入的压缩数据封装在 CMSampleBuffer 中,能够通过网络传输进行视频通信。从上图中咱们能够留神到,端到端提早可能受两个因素影响:解决工夫和网络传输工夫。 为了最大限度地缩小解决工夫,低提早模式打消了帧从新排序,遵循一进一出的编码模式。此外,该低提早编码模式下的速率控制器对网络变动的适应速度也更快,因而也能够最大限度缩小网络拥塞造成的提早。通过这两个优化,咱们曾经能够看到与默认模式相比,曾经有了显著的性能晋升。对于 720p 30fps 的视频,低提早编码能够缩小高达 100 毫秒的提早。这种节俭对于视频会议至关重要。 通过这样的操作实现了缩小提早,咱们能够为视频会议和直播等实时通信实现更高效的编码管道。 此外,低提早模式始终应用硬件加速视频编码器以节俭电量。请留神,此模式反对的视频编解码器类型为 H.264,咱们将在 iOS 和 macOS 上引入此性能。 在 VideoToolbox 中应用低提早模式接下来,我想谈谈如何在 VideoToolbox 中应用低提早模式。我将首先回顾 VTCompressionSession 的应用,而后向您展现启用低提早编码所需的步骤。 VTCompressionSession 的应用当咱们应用 VTCompressionSession 时,首先要应用 VTCompressionSessionCreate API 创立会话。并通过 VTSessionSetProperty API 配置会话,例如指标比特率。如果未提供配置,编码器将以默认行为运行。 ...

June 23, 2021 · 2 min · jiezi

关于视频:在线网页视频下载实用教程

怎么下载网页上的视频?大家都晓得,网页上的视频是不能间接下载的,那咱们看到喜爱的视频想要保留下来怎么办?很多人的第一反馈是录屏,然而录屏不仅会毁坏视频的原始品质,而且十分浪费时间,明天来给大家分享一个简略的网页视频下载办法: 第一步:返回网站下载这款网页视频下载器到你的PC或者Mac电脑上 第二步:关上在线网站,找到你想要下载的视频,而后复制其链接地址 第三步:关上网页视频下载器,将复制的视频链接粘贴到程序里进行解析 第四步:这时软件会主动开始下载网页视频,你能够清晰地看到进度条 第五步:期待网页视频下载实现,点击旁边的按钮即可播放或者分享给好友 以上就是网页视频下载办法和具体操作步骤了,你学会了吗?连忙下载4K Video Downloader (网页视频下载器)试下吧!

June 9, 2021 · 1 min · jiezi

关于视频:油管视频下载-如何下载油管视频到本地

油管视频怎么下载?油管是国外驰名的视频共享网站,相似于国内的B站和西瓜视频,外面有很多乏味精彩的视频,然而只能在线观看,无奈间接缓存,怎么下载油管视频始终是大家比拟关注的话题,明天小编就来分享一下具体的操作的办法,喜爱的同学记得点赞珍藏! 如何下载油管视频到本地第一步: 下载安装这款油管视频下载器到你的电脑上而后运行它。 第二步:返回油管网站,找到你喜爱的视频而后点击复制其链接地址。 第三步:关上油管视频下载器,将视频链接粘贴到程序里进行解析。 第四步:接着从弹出的窗口中抉择你想要的分辨率,而后点击下载按钮。 第五步:这时软件会主动开始下载油管视频,你能够间接看到进度条。 第六步:期待油管视频下载实现,点击视频旁边的播放按钮即可离线观看。 以上就是如何下载油管视频的具体方法和操作步骤,你学会了吗?连忙试一下吧!应用这款油管视频下载器,你不仅能够下载油管视频,还能够下载推特,脸书,INS,哔哩哔哩等其余网站上的视频。

June 1, 2021 · 1 min · jiezi

关于视频:国内外主流网站视频下载教程-建议收藏

目录教程B站视频下载https://www.4kvideodownloader.com/tutorial/download-bilibili-videos/腾讯视频下载https://jingyan.baidu.com/article/3a2f7c2ec1b5fd26afd61100.html爱奇艺视频下载https://jingyan.baidu.com/article/f71d6037d5dfd91ab641d1e2.html西瓜视频下载https://jingyan.baidu.com/article/76a7e40925afb5fc3b6e1503.html优酷视频下载http://www.leawo.cn/space-627-do-thread-id-33076.html油管视频下载https://www.4kvideodownloader.com/tutorial/download-youtube-videos/推特视频下载https://www.4kvideodownloader.com/tutorial/twitter-video-download/脸书视频下载https://www.4kvideodownloader.com/tutorial/download-facebook-videos/INS视频下载https://www.4kvideodownloader.com/tutorial/download-instagram-videos/抖音视频下载https://www.4kvideodownloader.com/tutorial/download-tiktok-videos/

May 11, 2021 · 1 min · jiezi

关于视频:B站视频下载如何下载B站视频到本地

B站视频怎么下载?哔哩哔哩网站上有很多乏味的动画、番剧、国创、音乐、舞蹈、游戏、常识、娱乐、生存、鬼畜视频,然而B站自身不提供视频下载性能,这对于想要将喜爱的视频保留下来离线观看或者分享到其余平台的同学来说十分不不便,因而怎么下载B站视频始终是大家比拟关注的话题。明天在这里,小编来分享一个无效的B站视频下载办法,心愿对大家有所帮忙。 第一步:返回4K Video Downloader网站下载安装这款哔哩哔哩视频下载器。 第二步:返回B站,找到你喜爱的视频,播放它,而后复制地址栏中的URL。 第三步:关上4K Video Downloader软件,将方才复制的链接粘贴到程序里进行解析。 第四步:抉择下载音视频或者将视频转换成MP3, 而后点击下载按钮,软件会主动开始运行。 第五步:期待B站视频下载完,关上已实现界面,点击视频旁边对应的按钮即可播放。 以上就是下载B站视频的五个简要步骤,你学会了吗?连忙下载4K Video Downloader试一下吧!应用这款弱小的视频下载器,你不仅能够下载哔哩哔哩网站上的视频,还能够下载油管,脸书,推特,INS, TED, 抖音等网站的视频。此外,它还反对将B站视频转换成MP3, MP4, MOV, MKV, AVI等格局。 英文请参考:3 Methods to Download Videos from Bilibili

April 30, 2021 · 1 min · jiezi

关于视频:华为云薛浩走进视频新时代

摘要:随着社会倒退,视频产业的倒退也在迅速放慢。视频“新时代”带来了新的时机、也有新的挑战。华为云在面对视频“新时代”的想法、投入及对产业界的认识有哪些?大家上午好,我是来自华为云的薛浩,在华为云负责视频、会议以及IoT等相干产品。明天非常高兴有机会和大家分享华为云在视频畛域的一些想法、投入及对产业界的认识。 1.这是一个“视频优先”的时代首先,表白一个观点,咱们认为将来的世界会进入一个“视频优先”的时代。 1.1. 视频成为古代社会的根底服务咱们看到这些年视频整体业务产生了变动——从单纯的娱乐视频逐步向工业视频倒退,影响着人们的工作、生存等方方面面,目前寰球大略有3亿人通过视频会议进行办公合作。这种状况是如何产生的?实际上从人类的生物学构造上来说,人类对视频信息更敏感,科学研究表明,人类83%的信息输出是靠视觉进行触发和感知的,视频留下的印象和输出冲击会更大。同时,大脑解决视觉信息的速度比文字信息快60000多倍,这也从另一个层面验证为什么大家对视频有更多的依赖。也正是因为这些特点,视频当初逐步变成了一个根底服务。 2020年,视频在IDC数据中心的流量占比曾经达到了73%,预计在2025年将达到95%以上。从中国及华为云的状况来看,大略有80%以上的网络流量承载着视频,同时存储中50%以上是视频的结构化数据。这意味着人类社会对视频的认知曾经从增值翻新服务逐步变成根底服务。 我认为做视频的人不会有35岁景象或45岁景象那种职业焦虑,因为它是终生的行业和事业。援用互联网“点、线、面、体”说法,视频行业是一个大船在后退,所以我感觉十分荣幸,可能和在座各位从事视频相干行业的搭档一起向将来航行。 1.2. 视频正在扭转咱们的世界 视频在扭转咱们的生存。我置信大家手机上都装置了不止一个视频app,很多人1/3的空闲工夫都是在生产视频中度过的,将来兴许还会投入到VR社交、AR社交等等。视频在扭转咱们的工作。我想在座的各位每天均匀要加入一到两场视频会议,我可能每天加入三到四场,以前的本地会议缓缓向近程共享合作方面进行晋升,改良工作效率。视频也在扭转行业。以前是人生产视频,当初是机器生产视频。当初所有的监控、摄像头都阐明视频正在扭转行业,视频赋予了人们感触万物的能力,我置信视频这个空间是足够大的。明天咱们看到有这么大这么广大的空间,那咱们本人又处于一个怎么的地位? 实际上,对于从业者来说,咱们站在了时代的临界点——翻新逐渐地放慢:从过来的2D到3D、从1080P到2K再到4K,人类对体验感知的诉求在逐渐放慢、迭代速度在放慢——以前十年一代的技术,当初可能三年一代。 另一个是视频从标清走向高清,从单向走向双向。由俭入奢易,由奢入俭难,当人们曾经做到更好的视频体验时,就很难再次回到过来。举个例子:应用过85寸电视机之后,就很难再承受35寸的电视机。当初要思考的是,以后行业整个技术体系是否适应将来大家对视频业务的需要?对视频业务投入的翻新和能源是否足够撑持行业的疾速迭代?这个产业将来会倒退到哪些方向?这也是华为面临视频业务问题时所思考的。 1.3. 视频是一个长价值链业务 第二个变动点是,以前的视频都是单点技术的翻新,当初所做的新畛域会有一些明确的翻新焦点。而行情所示,视频的产业链十分长——从根底的实践钻研、到规范和专利、再到芯片、到工业化的利用。在工业化利用过程中,从生产、制作、传输、散发再到最初的生产,产业链十分长,例如RTC、VR、AR这样的技术,光单点的技术创新是很难实现真正的商用。同样视频产业也如此,产业链越长,产业的组合度、筹备度也就越高。人们明天看到的每一个视频场景,新产业的推出都须要各个行业的紧密配合以及整个产业链相互的匹配。 1.4. 端-边-云协同时代,冲破时延极限 将来如AR、VR这种体验的需要出现着翻新快、品质高、密度大的特点,所以咱们在做技术创新时从以前专门在云上或者专门在端侧变成了“端、边、云”的技术创新。 以VR为例,它波及到许多根底钻研的迷信:计算机图形畛域、语音辨认、人工智能、建模压缩传输等。当初视频的场景越来越多样化,智能终端也越来越强,所以做业务时要综合思考算力散布、生产端散布、如何做好品质老本以及延时和体验的均衡。我认为须要产业链突破行业技术的天花板才可能施展全链条的整体优势、冲破单点限度。 华为自身有根底钻研、硬件、操作系统、传输、云的技术劣势,所以对华为来说使命是如何晋升行业天花板。咱们尝试在无线网络下,做到业界最极致的时延。目前行业内大家能广泛实现的时延在200ms左右,根本达到了极限,然而200ms能够做视频会议,却很难做近程和声演唱,也很难做VR、AR直播和互动。那么如何把行业“端到端”的提早做到极致? 举一个例子,上图是华为联结上海交通大学做的技术实际,环境是在上海交通大学无线网络笼罩条件下,通过华为云的边缘及云上,再到华为企业内网的无线媒体实验室,端到端用1080P/30帧为例,尝试如何优化时延。 实际上咱们做了几个协同点:第一个协同点是从终端的感知和编解码登程,应用的是华为终端(P系及Mate系手机——这个手机因为华为的鸿蒙生态、能力及硬件,做了许多优化)。在图像的采集成像和编码封装上根本缩短了一半提早。大家都晓得华为的利用在私有云上而不在运营商的网络里,所以从运营商网络、核心网再到公网上有很多跳,两头可能还有防火墙。咱们在网络空口和媒体传输这个阶段,尤其是针对媒体传输做了很多优化,加了一些公有协定或者标签让它辨认为媒体属性的流,针对媒体属性的流做优化能够升高十分大的提早,同时还有一些上行如WI-FI、无线,咱们多路径地分到上行后再拼装。 最初是在端侧解决时,一些AI的插帧、分帧等。咱们看到通过“云、管、端、芯、媒”的互感联动,其实能够把“端到端”的提早做到100ms以下,极限时能够做到60ms。 昨天和虎牙同学交换时,我也提到心愿业界的利用玩家们可能参加进来。一方面是商业,另一方面投入科技前沿的翻新。是否能够快一点将将来的技术商品化,把产业链的筹备度减少一些,心愿通过和业界单干从而找到更好的解决行业痛点的办法。 2.产业链现状:一边向左、一边向右后面介绍了产业链的现状,接下来再讲一讲华为在中国市场看到的产业问题。看一看中国产业链是否筹备好面向未来视频业务演进。 2.1. 中国视频生产内容极其凋敝 咱们先看一组数据(上图),毫无疑问,中国是视频生产大国。纵观寰球视频类app下载数量,中国占据50%以上,榜首是字节跳动的抖音和TikTok,Top10的利用中中国占到50%,同时依照观影人数和次数统计,中国也是世界电影市场票房的第二大市场,观影人数曾经超过18亿人次。 在寰球的网络流量中,中国的网络流量占20%,其中有80%是视频流量。比照欧美国家,能够看到中国从21点开始网络流量急剧升高、直到凌晨1点,中国的娱乐视频是丰富多彩的。 2.2. 中国有差距、晋升快 与之相匹配的,上面和大家介绍中国在根底钻研投入的状态。 做视频最根底的是编解码,这个畛域其实是利用范畴最广的,方才宋利老师讲了很多规范的状况及倒退演进。整体来看,支流规范长期被国外垄断,比方MPEG、H.26x系列,中国的话语权很弱。在过来,每做一个MPEG设施,要领取很多钱,就像明天咱们做手机要给高通交“高通税”一样,中国每年都要收入百亿级专利许可费。但也有一个十分好的景象,最近五年中国厂商提高很快,特地是华为、字节跳动、联发科、腾讯、阿里巴巴和快手做出了表率,尤其是公布了中国的AVS编码,这其实和以前的WC、CGM一样,中国肯定要有话语权,在这个过程中,中国企业要积极参与。我心愿无论是大厂共事或是初创公司共事都可能关注并且反对中国本人的规范和利用。 2.3. 图形处理专利多却不强 在GPU图像处理畛域,实际上真正的根底专利在日、美、韩三国。尽管中国的GPU专利多,然而不强,尤其是四方认可的根底专利只有14项,排名第七。在根底专利上,中国次要是科研机构在参加,企业参与感很低,表单TOP20中都没有中国企业。 2.4. 计算机视觉畛域,钻研与技术利用脱节 计算机视觉畛域能够被分成很多类,比方生物合成视频、视频感知、静止追踪等。之前可能讲了许多利用场景,从利用场景到根底实际、专利,国内都处于脱节缺失的状态。目前从申请专利来看,把握话语权的是美国企业,中国有些科研院所发表的专利次要聚焦在生物特色辨认,可能与安防监控行业倒退较好无关。但像一些其余的根底钻研方面,咱们还是以利用为主。 2.5. 视频制作生产畛域,效率低下、根底工具受限 接下来是视频内容制作畛域。前段时间,我参观了广电媒资行业,传统的省电视台,心田深受震撼,很多电视台在传统媒资制作和内容生产畛域根本是美国规范、日本设施,广电媒资行业很多企业都被绑架,将美国的软件加日本的硬件设施做成一体机,这既没有做到技术创新、也没方法向将来演进。广电行业是将来视频倒退一个十分重要的畛域,咱们不能只关注互联网视频,要看到在影视制作畛域也有十分大的空间。影视制作中有许多行业痛点和问题,比方内容的上传散发。当初很多是上传之后应用硬盘人工形式去做,我置信有一天,内容制作和生产能够用在云上,不便所有后续视频散发和生产。这也是视频制作畛域的一个问题,根底工具简直为零。 2.6. 虚拟现实技术畛域,美日欧已当先布局 下一部分是大家很关注的VR、AR局部,大家都认为这是将来业务的洼地,华为也有许多VR、AR的利用,包含展台展现了华为云带来的虚构数字人。然而如果从AR、VR向下看根底专利、投入工具,能够看到它们波及到了方方面面,如光学工程、语音成像工程、人工智能、3D等等,这里有十分大的差别。从上图表格中,咱们看到专利申请数量的TOP20中只有一个是中国机构- 一所高校,它正在做仿真模仿,与生产级利用不太一样。咱们发现从根底专利到企业应用的过程十分漫长,后面说到Facebook投入十分大精力去做,但国内没有企业投资在根底钻研上,在此我也呐喊各位,如果你是主管请通知老板投入根底钻研,如果是开发者请做你认为对的事件,这是在虚拟现实技术畛域的状况。 2.7. 路在脚下 —— 扭转行业,从你我做起 综合以上景象,首先中国是当之无愧的视频业务大国,前途是光明的,视频利用或内容生产极其凋敝,可能多于美国和欧洲。但同时,视频根底技术很单薄,所有的利用简直在做同质化竞争。根底专利的有余是漫长的过程,中国的产业话语权非常少,容易被国外规范所左右,所以面向未来的翻新是有余的。 如何做将来的投入和翻新?华为摸索了很长时间,有几个方面能够跟大家分享。 第一,作为视频行业从业者、技术爱好者和要害力量,须要独特改变现状,让公司扭转的前提是开发者的扭转,所以扭转行业,从你我做起。第二,加大根底技术创新。除了做利用外,还要做根底技术投入,尤其是行业根底技术投入,后面也看到了行业的利用,在根底的,尤其和本人公司相干的根底技术专利,大家须要多投入一些.第三是在某些倒退成熟的行业中,中国的技术实力存在肯定差距,并且很难取得显著的冲破,就像中国为什么不投入做燃油车而做电动车一样,燃油车专利及整个产业链曾经被日本、德国所垄断。同样在做视频产业时,后面讲到广电媒资行业根本是美国专利、日本设施,所以咱们要做翻新,抉择的赛道应该是在云上的技术创新和基于云原生服务的翻新。第四是要做好产业生态,要与学术界、高校及研究院所建设单干,将企业遇到的关键技术问题和高校独特进行冲破,实际上这不只是华为,其余许多大企业也在做。3.面对视频行业,华为在做些什么后面介绍了对行业的认知和认识,当初分享华为是如何做的。 从1995年开始,华为就投入ICT基础设施和视频相干行业,最后与广电做IPTV,做一些技术的编解码;2012年,在中国成立了媒体研究院及实验室,有许多人物都是从这个实验室走进去的,这就是行业的提高和倒退。华为的业务倒退也很广,比方终端上的摄像技术、云原生技术,华为投入的团队和资源很大,在这个过程中有许多合作伙伴和开发者与咱们一起。 3.1. 专一视频根底技术、策略投入面对视频行业,根底技术创新阶段应该如何投入? 华为的视频技术布局实际上是“四横八纵”:“四横”是硬件、网络、计算/存储和AI,“八纵”是从采集、生产、音频、编解码、到传输,这也是重点技术单点畛域,它们是犬牙交错的。从1995年到当初,华为在根底音视频技术的投入超过100亿,尤其当初是视频产业的高速发展期,翻新焦点很多,华为每年在视频翻新投入的根底钻研超过20亿美金,所以视频的技术钻研和利用开发须要消耗大量资源。 3.2. 被动拥抱云,构建云原生的视频世界 从将来开发趋势角度以及行业化角度,当初的翻新焦点根本是聚焦于云上,而且是原生于云。因为云上技术创新迭代很快,当初在云上做技术创新和利用有几个特点:第一,原生的视频是Born in cloud,不必思考怎么上云、可靠性等问题,因为它是原生于云的视频。第二,Grow with cloud,大家晓得云的迭代倒退速度是十分快的,云用DevOps的开发方式,咱们的视频利用技术也是这样迭代的。第三,Benefit from cloud,云有许多比拟好的个性,比方随时随地、弹性膨胀、老本管制、业务指标的保障,这些都能够人造的为视频所利用。所以在云上做业务的翻新和利用会有十分好的收益。 3.3. 面向未来,被动布局,继续翻新 最初一点是面向未来。后面讲到了很多技术创新,其实VR、AR根本造成了共识,这两个技术畛域的根底技术钻研上有许多断点,比方3D建模、光栅、渲染全视角6Dof,华为也做了很多技术创新。 华为一贯将技术创新转化为商业,如自在视角、VR、河图AR等等。咱们发现技术畛域从最开始的实验室验证走向商业,这部分的停顿比设想中更快。当然,在和产业链单干的同时,政府主导的力量很要害,尤其在最开始的技术引进孵化阶段,这是高强度的投入,单从企业方面来说,商业化形式是不良好的,和政府单干能够帮忙企业走过技术猎捕期。华为在马栏山视频文创园和江西VR核心也做了产业园,欢送各位开发者入驻。 ...

April 21, 2021 · 1 min · jiezi

关于算法:文字工作者福音四行代码实现翻译支持50种语言开源代码附性能实测

最近(确切地说是昨天),有人公布了应用深度学习技术进行文本翻译的 Python 库,调用起来十分不便,基于 Facebook AI 提出的多语种翻译模型,反对 50 种语言,几乎是文字工作者的福音,我立马下来查看了一下,写了篇文章,来帮忙大家应用。 留神:应用它可能不须要对深度学习有所理解,然而须要理解根底的 Python 常识。 应用形式装置装置它非常简单,只须要执行这行代码: pip install dl-translate然而倡议新建一个环境装置,该库基于最新版的 PyTorch,没有在别的版本上测试。为了不扰乱零碎内的环境(懂的都懂),还是新建一个环境比拟好。 conda create -n torch1.8 python=3.8conda activate torch1.8pip install dl-translate应用官网指南中给出的应用代码,只有四行,就能实现翻译,十分的不便: import dl_translate as dltmt = dlt.TranslationModel() # 定义模型text_hi = " "mt.translate(text_hi, source=dlt.lang.HINDI, target=dlt.lang.ENGLISH)留神第一次应用须要下载模型,可能会比较慢,因为模型反对翻译 50 种语言,所以模型十分大, 有 2.3G 。如果需要的话,我能够帮忙大家下载下来传到百度网盘。 查看模型反对的语言: 对于比拟长的一段话,翻译起来可能十分慢,所以倡议先将它分为句子的模式,而后再一句一句翻译,对于英文,能够应用 nltk 包进行分句,而后将各个句子的翻译后果合并起来。 import nltknltk.download("punkt")text = "Mr. Smith went to his favorite cafe. There, he met his friend Dr. Doe."sents = nltk.tokenize.sent_tokenize(text, "english") # don't use dlt.lang.ENGLISH" ".join(mt.translate(sents, source=dlt.lang.ENGLISH, target=dlt.lang.FRENCH))批量翻译在翻译过程中,咱们能够利用 GPU 并行计算的劣势进行翻译,调整 batch\_size,当然前提是你的 GPU 能放得下这么多句子。 ...

March 19, 2021 · 2 min · jiezi

关于视频:WebRTC-音视频同步原理与实现

所有的基于网络传输的音视频采集播放零碎都会存在音视频同步的问题,作为古代互联网实时音视频通信零碎的代表,WebRTC 也不例外。本文将对音视频同步的原理以及 WebRTC 的实现做深入分析。工夫戳 (timestamp)同步问题就是快慢的问题,就会牵扯到工夫跟音视频流媒体的对应关系,就有了工夫戳的概念。 工夫戳用来定义媒体负载数据的采样时刻,从枯燥线性递增的时钟中获取,时钟的精度由 RTP 负载数据的采样频率决定。音频和视频的采样频率是不一样的,个别音频的采样频率有 16KHz、44.1KHz、48KHz 等,而视频反映在采样帧率上,个别帧率有 25fps、29.97fps、30fps 等。 习惯上音频的工夫戳的增速就是其采样率,比方 16KHz 采样,每 10ms 采集一帧,则下一帧的工夫戳,比上一帧的工夫戳,从数值上多 16 x10=160,即音频工夫戳增速为 16/ms。而视频的采样频率习惯上是依照 90KHz 来计算的,就是每秒 90K 个时钟 tick,之所以用 90K 是因为它正好是下面所说的视频帧率的倍数,所以就采纳了 90K。所以视频帧的工夫戳的增长速率就是 90/ms。 工夫戳的生成音频帧工夫戳的生成WebRTC 的音频帧的工夫戳,从第一个包为 0,开始累加,每一帧减少 = 编码帧长 (ms) x 采样率 / 1000,如果采样率 16KHz,编码帧长 20ms,则每个音频帧的工夫戳递增 20 x 16000/1000 = 320。这里只是说的未打包之前的音频帧的工夫戳,而封装到 RTP 包外面的时候,会将这个音频帧的工夫戳再累加上一个随机偏移量(构造函数里生成),而后作为此 RTP 包的工夫戳,发送进来,如上面代码所示,留神,这个逻辑同样实用于视频包。 视频帧工夫戳的生成WebRTC 的视频帧,生成机制跟音频帧齐全不同。视频帧的工夫戳来源于零碎时钟,采集实现后至编码之前的某个时刻(这个传递链路十分长,不同配置的视频帧,走不同的逻辑,会有不同的获取地位),获取以后零碎的工夫 timestamp_us_ ,而后算出此零碎工夫对应的 ntp_time_ms_ ,再依据此 ntp 工夫算出原始视频帧的工夫戳 timestamp_rtp_ ,参看上面的代码,计算逻辑也在 OnFrame 这个函数中。为什么视频帧采纳了跟音频帧不同的工夫戳计算机制呢?我的了解,个别状况音频的采集设施的采样距离和时钟精度更加精确,10ms 一帧,每秒是 100 帧,个别不会呈现大的抖动,而视频帧的帧间隔时间较大采集精度,每秒 25 帧的话,就是 40ms 一帧。如果还采纳音频的依照采样率来递增的话,可能会呈现跟理论时钟对不齐的状况,所以就间接每取一帧,依照取出时刻的零碎时钟算出一个工夫戳,这样能够再现实在视频帧跟理论工夫的对应关系。 ...

March 8, 2021 · 2 min · jiezi

关于视频:厉害了这群95后正在用三维成像技术让科幻变成现实

摘要:2049年咱们能领有一个“虚构敌人”么? 将来尚不可知,然而当初,咱们曾经领有了地面三维成像技术。《银冀杀手2049》中,虚构女友乔伊取得了大家的青眼,她漂亮、贴心、善解人意,关怀着男主的点滴,总能在适当的时候给予激励与帮忙,陨落前冲上去说我爱你,一个从投影中透射进去的人工智能产品有了灵魂,这兴许是将来科技想要达到的。 2049年咱们能领有这样一个“虚构敌人”么? 将来尚不可知,然而当初,咱们曾经领有了地面三维成像技术。 这意味着,咱们的视觉形式很快就会产生天翻地覆的变动。关上手机,不论是网购、玩游戏还是刷视频,出现在咱们眼前的图像不再只是手机屏幕上的二维扁平图像,而是有空间感的三维立体图。 听他们本人说有一群来自北京邮电大学的年轻人通过6年的工夫,终于实现了无介质地面成像。观众不须要佩戴任何仪器、眼镜,仅通过裸眼就可看到脱离物理屏幕40厘米以上的三维画面,极具悬浮感、立体感,由教育部组织、权威专家组成的业余委员会评估该技术为寰球独创,且外围指标达到国内领先水平。并在第六届中国国内“互联网+”大学生翻新守业大赛中拿到了全国总决赛银奖的好问题。 北京邮电大学的95后团队是如何实现无介质地面成像的?一起来看看他们怎么说吧! 点击查看视频:这群95后,正用三维世界让科幻照进事实! 文可敲代码,武可住工厂这支平均年龄只有26岁的团队,由北京邮电大学信息光子学与光通信国家重点实验室的十余位博士、硕士生组成。在本科期间,第一次接触到三维显示,这些年轻人就被眼前的成像成果吸引了,科幻电影中设想的场景与理论生存有了连贯,那种视觉所带来的震撼感让他们热血磅礴。 “超常幻境——将来全息光场显示的定义者”这个名字继承自往届前辈们。人们习惯把这项技术和“3D”做比照,但其实两者是齐全不同的概念。“全息”在物理上咱们把它叫物体的全副信息,比方给一个苹果拍照,一般照片咱们能看到它的色彩、亮度等信息,而全息影像能够从手机上、平板电脑上“跳”进去,看到一个特地真切的苹果浮现在眼前,前后左右能看到各个维度的平面影像,就是物体的全副信息。全息能够不借助任何VR眼镜、3D眼镜等辅助设施,仅靠技术出现,将图像飞离显示屏幕,裸眼就能看见悬浮在地面的物体。 从2010年开始,导师就率领着学生们钻研裸眼显示畛域。课题在一代代年轻人的热血中连续,他们一路读研、读博,在三维显示畛域花了大量的工夫、精力,每天都在钻研到底如何可能进步视觉效果,哪怕只是一丁点的提高都能让他们欢呼雀跃很久。 但这群痴迷其中的年老人们,并没有意识畛域的将来性,会导致他们无奈找到能够相匹配的硬软件条件,有时只是一个光学元件都能让他们解体许久。 为了可能让成像成果更好,每个光学元件都会通过团队反反复复设计、但因为他们技术的前沿性,导致在市场上找不到相应的硬件反对,辛辛苦苦做的设计,往往并不能如愿生产,厂家看过设计后,要么间接回绝说太难;要么就是加工后,拿到手里发现货不对板。 设施问题不解决,哪怕技术再牛也毫无意义,既然工厂没有方法间接依照设计生产进去,那么他们就与工人一起去打磨,“既然没有人能去做,那咱们就跟那些人去分割,咱们一起去学。” 为了找到适合的厂家,本来在实验室里搞技术、搞研发的人都跑去了工厂,与工人们一起探讨如何加工,间断找了三十多家工厂后才终于找到了深圳一家工厂。 工厂位于深圳市区,周边都没有什么其余设施,这群从小没有吃过什么苦头的年轻人,拖着行李开始跟工人同吃同住,与工人一起探讨、研发,将本人的业余理论知识与工人的实操教训相结合。 工厂条件很艰辛,但每次一有新的计划,团队就立马火急火燎赶过去,一待就是20多天。本来生疏的工厂变成了他们的第二个大本营,已经不相熟的工人们也打成了一片,还经常互开玩笑,他们说工人个个都身怀绝技,工人感叹他们的发量太过浓密。 每一个光学元件都通过了这般打磨,每一件产品也都是这样缓缓拼接加工进去的,每当看到产品一点点成形,这群年轻人早已遗记在工厂里所吃过的苦头。 正是这般一头扎进行业里的执拗,设施能力落地。 ▲设施外观 以后我的项目获得了阶段性胜利,但仍面临一些挑战——成像设施太大,不够笨重便携。但置信靠他们这股死磕劲,这一问题终究会被解决,毕竟,在74年前世界上第一台通用计算机“埃尼亚克”,也曾是占地170平方米、重达30吨的硕大无朋。‘ 万事俱备,巧遇华为用当初定义将来,这个研发过程远比设想中难,除了设施的生产、打磨之外,还有以后软件局限性带来的重重挑战。 全息光场景课题从2010年开始着手钻研,到2016年疾速倒退,之后放弃着每年一次的迭代速度,在分辨率、视角和出屏间隔三个重要参数上失去两到三倍的晋升。2018年,在技术计划引进的过程中与华为结下了不解之缘,缘分始终连续到当初。在产品更新迭代中,华为提供了很大的帮忙。 首先,华为解决了海量数据存储问题。图像要实现三维平面,从采集过程开始,就要比二维图像更加简单。一个三维物体在图片采集阶段,至多须要五六十台相机全方位的拍摄,这些高清图片叠加在一起就是一个不小的储存量,图片在传输、渲染时也会造成十分大的运算量。 将三维成像与一般电影做比照,大略会在一千倍左右。三维显示展示一张8K图片,须要7680×4320的像素,每个像素有3个子像素,每个子像素离开编码,一共有7680×4320×3,大略是1亿个子像素须要计算。在试验阶段,团队往往要消耗大量的工夫来期待程序运行结束,有时只是渲染一帧图像,就须要一天一夜。 而目前正在钻研的3D全息通信技术,须要上传视频或者实时直播,单张图片就有1亿子的运算,而每一秒的视频大略有30帧左右,这样每秒的计算量就是30×1亿,目前团队应用的光线追踪技术,须要发射1亿的光线合成一张图像,速度慢,耗费工夫长。 基于华为的海量存储、海量运算的技术,团队开发了一个平台,将它命名为“海量光场数据集成并行渲染平台”,通过平台将8K图片进行区域的拆分,拆成几百个小区域,每一个区域同步计算,这样一来,整个运算成果失去了显著晋升,而且每一个区域同步的计算量也比之前应用CPU计算的速度快很多,同时升高渲染工夫,达到实拍实时传输,实时显示的状态。相比于自行购买硬件,市面上高性能显卡都极其低廉,如RTX3090价格超过一万元,应用华为云在经济上也更节俭。 分布式光场图像渲染软件平台联合华为云弹性计算的个性,防止了后期的硬件投入,解决高质量光场图像渲染效率低下的难题。通过REST接口对模型数据进行治理和应用,联合华为提供的SQS点对点服务实现了此分布式系统中异步音讯的构建,实现了多渲染工作的并行执行。 另外,华为解决了实时动静的问题。比方空气中浮现了一个苹果的三维影像,咱们用手去触碰,它能展现出触碰后的状态,旋转或者变形,这个就要求三维数据实时发生变化,引入华为技术之后,帮忙团队实现实时数据转化,齐全实现实时的交互。 ▲人体器官全息再现 2018年,团队与华为独特单干钻研全息通信畛域。咱们目前的通信形式都是二维层面的,脸、身材禁锢在屏幕中,尽管解决了大多数通话需要但将来必定不仅局限于此,一位远方的母亲是否想要看见孩子平面的脸庞,并触碰到他呢?除了日常通信,会议也逐步成为人们工作沟通的形式,即便远隔千里,利用技术将对方一颦一笑清晰的出现在眼前,就像科幻电影里的场景一样,听听就很兴奋。 而不论是全息视频还是全息会议都须要两个根本技术来撑持。第一个技术就是通信,2019年世界进入5G商用元年,华为将5G技术推向了全世界,它带来的不仅仅是速度上的晋升,还有万物互联的构建。华为提出了“智能体”概念,以AI为外围,以云为根底,云网边端协同。通过联接、人工智能、云、计算及行业利用的有机协同,构建一个立体感知、全域协同、精准判断、继续进化的凋谢的智能零碎。而5G的倒退正好是实现网络无缝笼罩和万物互联的根底。将来将是一个物理世界和数字世界的交融。另外一个就是显示终端,华为在技术上帮忙团队传输数据再实时转化成空间的实在人物浮现。目前我的项目第一期曾经完结,团队和华为正在为第二期的钻研做筹备。 科幻事实化,还远吗现在,超常幻境我的项目成绩曾经申请国家发明专利21项、受权11项,胜利利用到了国家20多个重要单位和企业中,波及展览、通信、金融等多个畛域,用颠覆三维显示的技术同时也颠覆了其余畛域的传统利用形式。 北京天文馆里,应用全息光场显示技术展现宇宙中八大行星绕着太阳转的场景,不再是依附屏幕中的二维图像或3D动画来展现,而是可能用真正的三维图像让人身临其境。 同时,在教育部举办的寰球首届世界慕课大会中,超常幻境项目组被邀请到现场,寰球直播展现将来互联网+线上教育的可能性。 对于学习几何、空间的孩子来说,不必再害怕不足想象力而感觉学习吃力、艰难。 置信不久的将来,孩子们都可能在学习中间接看到呈现出的几何图像,毋庸设想,就能看到书本中描述的物体全貌,这就意味着,将来对于平面、空间等等须要设想的常识,都能够变成咱们可能看到的三维平面图像。 而这只是超常幻境我的项目将来场景的一个缩影,这群年轻人所做的事件,就是要颠覆公众司空见惯的二维视觉形式,用全新的三维视觉扭转咱们生存的方方面面。目前团队正在与华为联结研发下一代交互式全息视频通信零碎,曾经获得重大进展。 ▲华为将本产品利用到宽带通信业务 这世界究竟是靠有谋求、有酷爱的年轻人在推动,当越来越多的年轻人能把心血都投入到定义将来畛域里,那么这个社会定将会飞速发展。 作为一家领有高端技术和人才的企业,华为始终都在为这样的年轻人提供技术支持、我的项目帮扶。但从去年开始,华为将不再只限于此,与高校联结造就更多可能定义将来的高端人才。 华为联结教育部,在无关高校建设“智能基座”产教交融协同育人基地,现已在北京大学、清华大学、上海复旦大学、上海交通大学、西安交通大学、哈尔滨工业大学等72所高校,把鲲鹏、昇腾系列课程融入计算机专业、软件工程业余、人工智能业余、电子信息业余进行首批试点。 中国的将来看高端技术的倒退,高端技术的倒退看各大高校的年轻人,现如今,华为带着技术走进了各大高校,置信不久的将来会有越来越多有技术、有想法、有激情的年轻人喷涌而出,到那时智能化还会远吗? 点击关注,第一工夫理解华为云陈腐技术~

February 18, 2021 · 1 min · jiezi

关于视频:云上视频业务基于边缘容器的技术实践

视频网关是视频云零碎下的一个边缘容器设施,它起着将视频数据承前启后的性能。 视频云说到边缘视频网关就不得不提到云计算中的视频云,它是各畛域的视频零碎比方安防监控等向着智能化、物联网、上云倒退的产物。 在云平台上通过云服务器和边缘视频设施将采集的视频输入编码后通过网络实时传输给终端,终端进行实时解码后显示输入。终端同时能够进行操作,通过网络将操作控制信息实时传送给云端利用后盾对边缘视频设施进行管制。 一个物联网场景下云边协同的智能视频云零碎,具备实时流、历史录像性能,并反对对视频数据算法剖析与后果联动管制,能够兼容市面上大多数厂商的视频设施比方摄像头和NVR。不仅能够在私有云/公有云部署,甚至提供反对有损服务的本地局域网视频最小零碎。 视频网关视频网关是云计算在视频垂直畛域中的边缘容器设施,能够将其了解连贯视频数据在视频传感器与云上服务之间的桥梁,是视频云零碎中的要害一环,实现视频设施宽泛的兼容性以及云边协同都离不开它的身影。设计一个性能齐备,可扩大,高可用的视频网关是十分值得投入的。 如何实现视频网关须要实现的基本功能包含视频流采集与推送、视频设施接入与治理等,作为一个与底层硬件打交道的设施,又波及到云计算中的接入、平安以及云边协同等方面,堪称麻雀虽小五脏俱全。 视频数据采集视频云零碎中视频数据的采集由位于边缘侧的视频网关实现,视频网关连贯视频采集设施比方IPC/NVR, 通过厂家SDK或者ONVIF协定对视频采集设施进行治理,网关拉取视频采集设施的数据流并推送云端或者边缘侧的视频服务,由视频服务对视频数据进行转码、数据流协定转换等操作以适配不同的播放客户端。 视频设施治理摄像头、NVR等视频设施位于用户局域网内,通过边缘视频网关接入到视频云零碎中。边缘视频网关和视频设施须要在治理平台上通过导入的形式做注销以便明确视频网关与视频设施以及视频网关与业务的绑定关系。视频网关治理视频设施并将设施状态实时同步到云视频零碎中,治理平台实现"设施影子"并提供对视频网关以及视频设施状态信息的增删改查接口。 数据安全视频上云须要平安认证,视频云零碎中边缘容器设施接入云端服务、边缘容器设施之间以及边缘容器设施与云端服务之间的数据流采纳规范国密算法保障其运行的安全性,其中边缘容器设施接入云视频流程中采纳国密sm2非对称秘钥技术保障接入平安,边缘容器设施与云视频之间的数据通道采纳国密sm4对称秘钥技术保障信令与视频数据的平安。 设施接入视频云零碎中视频网关等边缘容器设施通常位于用户局域网内,视频网关在局域网内连贯视频设施比方IPC或者NVR,并作为一个边缘容器设施接入到云视频。视频网关通过注册、登录形式接入云视频保障安全性,整个设施接入流程中视频网关与云视频之间通信采纳国密sm2非对称加密技术进行音讯加密与签名校验,接入云视频后视频网关与云视频之间的信令通道采纳国密sm4对称秘钥形式进行数据加解密。 1)在视频云开放平台为视频网关设施申请sn序列号后即能够失去视频网关的私钥以及接入云视频所需的公钥; 2)视频网关接入云视频的注册阶段,首先网关应用网关私钥对本身信息进行签名,而后应用云视频公钥将签名信息以及设施sn等信息进行加密并发送云视频,这一过程能够保障网关的注册申请只能被云视频解析,并且云视频能够通过签名验签辨认音讯是由视频网关收回。 3)注册云视频胜利后,云视频会将其与视频网关之间的信令通道等相干信息通过云视频私钥加密后返回给视频网关,视频网关通过云视频公钥能够解析。 4)视频网关接入云视频的登录阶段会与云视频协商信令通道对称秘钥,首先网关应用网关私钥对本身信息进行签名,而后应用云视频公钥将签名信息以及设施惟一标识、对称秘钥向量等信息进行加密后发送云视频,这一过程能够保障网关的登录申请只能被云视频解析,并且云视频能够通过签名验签辨认音讯是由视频网关收回。 5)登录云视频胜利后,云视频会将其与视频网关之间信令通道中应用的对称秘钥key、token以及无效工夫等信息通过云视频私钥加密后返回给视频网关,视频网关通过云视频公钥能够解析。 数据通道边缘容器设施与云视频之间的业务数据,比方视频网关与云视频之间的视频流推送、摄像头列表保护等音讯通过数据通道传播,采纳国密sm2对称秘钥技术加密,如果数据通道的token、对称秘钥过期须要视频网关从新登录云视频获取。 以边缘视频网关向云视频推送视频流这一过程为例阐明,视频网关采集到摄像头设施的视频流后对视频帧加密后传输到云端视频后盾服务,其中视频网关与云端视频后盾服务之间推视频流建设握手的token以及推流数据加密应用的国密sm4 key等平安信息是通过视频网关与云视频之间的数据通道下发的,视频链路保障该加密信息的单次应用时效性,也就是说单次推流的信令中所蕴含的加密信息如果在一个工夫阈值内不应用或者握手胜利后就不可再次复用了。 视频云零碎中边缘容器设施接入与数据通道的平安认证机制如下图所示。 云边协同灵便的云边协同和边缘计算能力,集中管理能力云端收拢,局部逻辑下沉边缘,保障疾速响应,即使在云环境网络异样下也能提供根底的本地视频服务实现高可用。 在传统的视频监控畛域,摄像头、算法和监控软件会部署在同一个局域网内,对于用户而言,往往有在公网短时播放的需要。如果将视频放到公网上进行播放,又会带来带宽老本以及平安问题。视频云零碎为解决以上问题,提供云边协同和边缘计算能力,在云端管制边缘节点,能够将已训练好的算法或者事件联动能力下沉到边缘容器设施进行运行,大大降低云端压力。同时领有灵便边缘路由能力,依据云端拉流需要,将局部视频推到云端进行播放,极大升高带宽老本,进步零碎的稳定性。 云边零碎高可用 技术计划跨平台编程视频网关作为一种嵌入式媒体网关设施,次要有两种设施状态,一种是以通用服务器搭载网关服务的模式,这样的零碎比拟重,老本比拟高然而性能强劲,另一种是嵌入式盒子设施比方树莓派,成本低同时性能较低,依照我的项目利用场景正当搭配解决方案。 视频网关作为一个能够跨平台,跨零碎并深度交融云计算视频云畛域的服务,软件咱们采纳了golang语言,借助于其人造的跨平台个性,能够反对网关服务运行在各种芯片平台以及操作系统之上。go tool dist list 能够看到go语言反对的平台和零碎如下。 操作系统主控芯片平台linux386/amd64/arm/arm64/mips/mips64/mips64le/mipsle/ppc64/ppc64le/riscv64/s390xandroid386/amd64/arm/arm64darwin386/amd64/arm/arm64freebsd386/amd64/arm/arm64solarisamd64plan9386/amd64/armopenbsd386/amd64/arm/arm64netbsd386/amd64/arm/arm64aixppc64windows386/amd64/arm从上述列表能够看出,从linux/arm64的嵌入式零碎到linux/s390x的大型机零碎,再到Windows、linux和darwin(mac)这样的支流操作系统、amd64、386这样的支流处理器体系,Go对各种平台和操作系统的反对不堪称不宽泛。 go语言被称作互联网时代的c语言其长处很多,语法简略、原生反对并发、平台可移植性好、运行速度快、有功能丰富并且对立的规范库等等,其中对于跨平台有一种说法go是为了解决c/c++那些简单的依赖而来的,这肯定水平上得益于Go独立实现了runtime,作为技术栈上的选型这里对于runtime多说一些。 runtime是撑持程序运行的根底。libc(C运行时)是目前支流操作系统上利用最广泛的运行时,通常以动态链接库的模式(比方:/lib/x86_64-linux-gnu/libc.so.6)随着零碎一并公布,它的性能大抵有如下几个: 提供根底库函数调用,比方:strncpy;封装syscall(操作系统提供的API口,当用户层进行零碎调用时,代码会trap(陷入)到内核层面执行),并提供同语言的库函数调用,比方:malloc、fread等;提供程序启动入口函数,比方:linux下的__libc_start_main。晚期的零碎的磁盘/内存资源非常缓和,采纳动态链接库的形式能够使得编译的程序/过程磁盘/内存占用小。不过时代变了,当初的服务器配置曾经足够,因为libc等c runtime lib是基于线程模型的并且历史版本简单,对于开发人员来说这里的累赘很重,一些从事c/c++开发多年的同学可能有过这样的经验,链接runtime库时须要抉择链接反对多线程的库还是只反对单线程的库。 go独立实现runtime层,封装了syscall将Go user-level code与OS syscall解耦,把go 移植到一个新平台时,将runtime与新平台的syscall对接即可,根本解脱对libc的依赖,这样动态编译的go程序具备很好的平台适应性。而且穿插编译很简略,只波及两个重要的环境变量:GOOS和GOARCH,别离代表Target Host OS和Target Host ARCH,这里须要留神CGO_ENABLED=0的状况下,即不波及cgo的前提下go采纳纯动态编译。 业务性能视频网关位于视频零碎的边缘侧,次要业务性能是负责拉取视频流并推送到视频后盾服务。在系统管理层面,视频网关须要连贯设施侧的IPC/NVR等,并接入到视频零碎的管制内核,作为边缘容器设施接管云视频零碎内核的信令对视频设施进行治理,执行相应的操作,并将视频设施的反馈后果以及状态上报到云视频零碎内核。 网络接入视频网关不仅可通过固网接入视频云零碎,也可通过蜂窝网,wifi等无线形式接入。视频网关通过驱动搭载WIFI/4G/5G等通信模块实现无线接入能力,其中局域网内能够应用WIFI等协定,连贯互联网能够应用4G/5G通信。视频网关可依据视频零碎组网的理论状况以及现场视频设施的理论能力,将整个视频零碎的有线/无线网络联合。 无线接入框架 设施初始化视频网关在接入层采纳插件化的框架,向下能够兼容ONVIF协定、SDK等多种形式接入视频设施,向上能够兼容mqtt/http等物联网传输协定接入云计算视频平台。 初始化能力集视频网关通过视频设施的设施影子中厂商、流起源等属性判断应用ONVIF协定还是厂商SDK对视频设施进行初始化,获取视频设施的能力列表比方RTSP连贯等。 视频设施初始化流程 初始化音讯通道视频网关和云视频零碎内核之间的音讯通道反对http/mqtt等物联网通信协议,视频网关具体应用某种通信协议由用户抉择相应的配置在系统启动阶段实现初始化。 音讯通道的初始化流程 安全策略视频网关在接入云视频零碎内核过程反对双向鉴权,信令通道以及视频流传输反对数据加密等多种安全策略。 视频网关接入云视频零碎内核分为注册、挑战、登录三步,网关与内核之间采纳tcp公有协定形式通信,接入过程中应用sm2/4国密进行数据加密和签名。其中视频网关的设施私钥、设施公钥以及云视频零碎内核的公钥由视频网关在申请云视频零碎内核放号的过程中获取。 视频网关安全策略 视频流加密内核下发推流音讯命令字告诉视频网关推视频数据流,网关依据音讯中的流起源字段辨别收流设施是IPC还是NVR,网关推送视频流的目标端信息以及视频流加密秘钥由内核下发音讯指定。 ...

January 12, 2021 · 1 min · jiezi

关于视频:前端面试每日-31-第631天

明天的知识点 (2021.01.06) —— 第631天 (我也要出题)[html] HTML5如何播放ts视频流?[css] 在Less中的嵌套作用是什么?[js] 写一个办法将一个数组中的元素,从前到后顺次两两组合,最初一个与第一个组合[软技能] 你心愿通过这份工作取得什么?《论语》,曾子曰:“吾日三省吾身”(我每天屡次检查本人)。前端面试每日3+1题,以面试题来驱动学习,每天提高一点!让致力成为一种习惯,让奋斗成为一种享受!置信 保持 的力量!!!欢送在 Issues 和敌人们一起探讨学习! 我的项目地址:前端面试每日3+1【举荐】欢送跟 jsliang 一起折腾前端,零碎整顿前端常识,目前正在折腾 LeetCode,打算买通算法与数据结构的任督二脉。GitHub 地址 微信公众号欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个Star, 同时欢送微信扫码关注 前端剑解 公众号,并退出 “前端学习每日3+1” 微信群互相交换(点击公众号的菜单:交换)。 学习不打烊,充电加油只为遇到更好的本人,365天无节假日,每天早上5点纯手工公布面试题(死磕本人,愉悦大家)。心愿大家在这虚夸的前端圈里,放弃沉着,保持每天花20分钟来学习与思考。在这变幻无穷,类库层出不穷的前端,倡议大家不要等到找工作时,才狂刷题,提倡每日学习!(不忘初心,html、css、javascript才是基石!)欢送大家到Issues交换,激励PR,感激Star,大家有啥好的倡议能够加我微信一起交换探讨!心愿大家每日去学习与思考,这才达到来这里的目标!!!(不要为了谁而来,要为本人而来!)交换探讨欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个[Star]

January 6, 2021 · 1 min · jiezi

关于视频:支撑抖音跳动数年后火山引擎新一代视频点播服务正式对外开放

依靠抖音、西瓜视频等产品多年音视频技术积攒和根底资源,字节跳动旗下数字服务与智能科技品牌火山引擎于12月28日正式推出一站式视频点播服务,心愿用理论场景中验证过的极致视频技术能力,解决宽广企业在点播业务中存在的体验和老本问题。 火山引擎视频点播服务架构 火山引擎推出的多媒体服务为全新一代的视频点播,除了提供底层资源外,更提供下层通过理论场景验证后的体验,具备服务能力一站式、体验佳双重特点。性能上,火山引擎视频点播提供了包含短视频编辑、视频上传、多媒体解决、视频播放和品质平台等端到端服务,残缺笼罩了音视频采集、编辑、上传、存储、转码解决、散发、内容审核、播放等流程。体验上,火山引擎充分发挥了背靠字节跳动宏大用户规模积淀下来的教训劣势,基于理论业务中海量的A/B试验及用户反馈继续进行优化,提供真正晦涩的视频接入和播放体验。 火山引擎视频点播还提供详尽的服务质量监控、报表服务和专家一对一参谋服务,帮忙企业疾速落地视频能力外,真正的晋升视频体验。 以后,火山引擎视频点播可广泛应用于短视频、长视频、版权视频、直播转点播等场景,具体落地上针对用户体验、稳定性、场景化和品质管控进行了粗疏的打磨: • 用户体验:火山引擎视频点播致力于为用户提供更优越的播放体验,在首屏感、卡登时延、画质、弱网和弱机用户等方面做了精密的技术打磨,并聚焦“快、爽、清”继续晋升服务能力;• 稳定性:通过自有APP的海量机型、播放量的验证,点播的稳定性通过了充沛的打磨,Crash率和用户报障率远优于开源播放器;• 场景化:视频点播立足业务视角,开发了多种实用功能,力求贴合业务场景、合乎特定业务诉求。如谋求老本的增效转码,它能自在适配客户理论业务需要;同时,增效转码也能实现智能动静、实时调整转码解决计划,针对性、定制化的有限趋近客户的最优转码解决配置;• 品质管控:火山引擎视频点播配有齐备的品质平台,可积淀全量用户全链路播放行为数据。大数据能力撑持下,品质平台领有欠缺的指标监控,可疾速定位播放问题源、问题类型,并提供剖析与技术策略倡议。 除了前述优化改良外,火山引擎视频点播还在老本上做了很好的优化。火山引擎智能视频云产品经理王浩然介绍,基于字节跳动独特的智能编码技术、动静实时策略和播放器缓存管制,在等同画质、等同播放量下,能给客户带来20%~40%的老本节俭。 火山引擎视频官网页面 目前,火山引擎视频点播服务了包含懂球帝、天天鉴宝、半次元、图虫、钠镁股票、抖音、头条和皮皮虾在内的数十家内外部客户,帮忙他们在生产流程降本增效,并进步视频服务的品质、晦涩度和稳定性。 据悉,火山引擎提供全新一代视频点播对外服务的背地,是一段字节跳动多媒体技术能力一直迭代的自研史: • 第一代建设了全链路能力:在购买第三方服务的同时,买通了存储、转码、CDN、播放等整条链路;• 第二代做极致的性能优化和质量体系:基于严格的A/B试验和继续的技术迭代,推出性能更优的自研播放器、行业当先的编解码能力,并积淀出品质平台、全链排障数据;• 第三代是深度的场景体验优化:基于海量数据,对不同的网络状况、机器性能、业务场景等输入最佳策略,精细化的优化用户体验,对留存、人均播放时长等产生正向作用,赋能业务增长。 火山引擎智能视频云高级总监赵鹏伟示意,视频作为效率远高于图片和文字的信息传递载体,将来视频和直播能力是任何行业的都应该具备的能力。“在视频通道之上,咱们心愿联合本身业务积淀、数据分析能力提供体验佳、性能强、玩法多样的视频能力,满足业务场景的实在需要,让企业和开发者开箱即用,不再反复造轮子。”

December 30, 2020 · 1 min · jiezi

关于视频:CSS控制video标签的控制栏组件-隐藏video播放器右下角三个点

video标签默认是不显示管制条的,在video标签增加controls可显示视频播放器的管制条,蕴含视频的播放管制按钮、进度条、全屏按钮等。<video controls></video> css暗藏按钮//全屏按钮video::-webkit-media-controls-fullscreen-button { display: none;}//播放按钮video::-webkit-media-controls-play-button { display: none;}//进度条video::-webkit-media-controls-timeline { display: none;}//观看的以后工夫video::-webkit-media-controls-current-time-display{ display: none; }//剩余时间video::-webkit-media-controls-time-remaining-display { display: none; }//音量按钮video::-webkit-media-controls-mute-button { display: none; }video::-webkit-media-controls-toggle-closed-captions-button { display: none; }//音量的管制条video::-webkit-media-controls-volume-slider { display: none; }//所有控件video::-webkit-media-controls-enclosure{ display: none;}controlslist暗藏按钮controlsList属性返回DOMTokenList,帮忙用户在显示其本人的控件集时抉择要在媒体元素上显示的控件,能够设置以下三个可能值中的一个或多个:nodownload,nofullscreen和noremoteplayback nodownload关键字暗示的下载管制应应用用户代理本人的一套媒体元素控件时被暗藏。nofullscreen关键字暗示在应用用户代理本人的媒体元素控件集时,应暗藏全屏模式控件。noremoteplayback关键字暗示当应用用户代理本人的媒体元素控件集时,应暗藏近程播放控件。MDN HTMLMediaElement.controlsList // nodownload: 不要下载// nofullscreen: 不要全屏// noremoteplayback: 不要近程回放// disablePictureInPicture: 不要画中画 <video controls disablePictureInPicture="true" controlslist="nodownload nofullscreen noremoteplayback"</video>暗藏播放器右下角三个点如图 可能须要暗藏右下角的三个点,外面蕴含下载和画中画!须要将下载和画中画暗藏后才回齐全暗藏这三个点。只须要将controlslist="nodownload",而后设置disablePictureInPicture="true"就能够了 或者间接应用js获取dom节点后设置对应属性 const el = document.querySelector('video');el['disablePictureInPicture'] = true; // disablePictureInPicture的属性改为true 禁用画中画el['controlslist'] = 'nodownload noremoteplayback'; // 暗藏下载按钮 去掉右侧三个点后的款式

December 15, 2020 · 1 min · jiezi

关于视频:前端面试每日-31-第602天

明天的知识点 (2020.12.08) —— 第602天 (我也要出题)[html] H5播放的video视频,如何实现对视频截图?[css] 你是如何查看css语法是否正确的?有哪些办法?[js] 为什么js里定义的数组能够不定长且数据类型能够不固定呢?[软技能] 谈下你对裸职的认识《论语》,曾子曰:“吾日三省吾身”(我每天屡次检查本人)。前端面试每日3+1题,以面试题来驱动学习,每天提高一点!让致力成为一种习惯,让奋斗成为一种享受!置信 保持 的力量!!!欢送在 Issues 和敌人们一起探讨学习! 我的项目地址:前端面试每日3+1【举荐】欢送跟 jsliang 一起折腾前端,零碎整顿前端常识,目前正在折腾 LeetCode,打算买通算法与数据结构的任督二脉。GitHub 地址 微信公众号欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个Star, 同时欢送微信扫码关注 前端剑解 公众号,并退出 “前端学习每日3+1” 微信群互相交换(点击公众号的菜单:交换)。 学习不打烊,充电加油只为遇到更好的本人,365天无节假日,每天早上5点纯手工公布面试题(死磕本人,愉悦大家)。心愿大家在这虚夸的前端圈里,放弃沉着,保持每天花20分钟来学习与思考。在这变幻无穷,类库层出不穷的前端,倡议大家不要等到找工作时,才狂刷题,提倡每日学习!(不忘初心,html、css、javascript才是基石!)欢送大家到Issues交换,激励PR,感激Star,大家有啥好的倡议能够加我微信一起交换探讨!心愿大家每日去学习与思考,这才达到来这里的目标!!!(不要为了谁而来,要为本人而来!)交换探讨欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个[Star]

December 8, 2020 · 1 min · jiezi

关于视频:WebAssembly-在-Web-端视频的应用

WebAssembly 从诞生起,赋予了前端更宽敞的利用设想。绘图视频渲染,剪辑,编解码,游戏都有可能基于 WebAssembly 在浏览器端推出相干的产品。 什么是 WebAssemblyWebAssembly(wasm) 是一种二进制代码格局, 具备高效,跨平台性,蕴含这种格局的二进制文件,能够被各个平台的浏览器高效的加载,解析执行。 只有浏览器反对 wasm, 用户便能够应用 wasm 所提供的性能,也就是说 wasm 的跨平台性其实是基于浏览器的跨平台性。下层用户编译 wasm 时,不须要关注底层架构是什么,只有编译进去正确的二进制文件,就能够在各个反对的浏览器运行。 wasm 加强了 js 的能力,js 不善于做的事件,比方绘图,编码,解码,数学计算等,都能够在 wasm 中实现,而后 js 就能够应用wasm所提供的能力。 现阶段曾经有很多 WebAssembly 的利用,比方 ffmpeg 的编解码利用, unity 3d, unreal engine, google earth等都相继反对了 wasm。 如何应用WebAssembly 当初反对从 C/C++, go, rust 编译成 wasm 模块。应用 emscripten sdk, 能够从 C/C++ 源码间接编译成 wasm 文件,而后在网页中 间接加载应用。 参考 https://emscripten.org/docs/g... 入门。参考 https://emscripten.org/docs/c... 编译我的项目。 然而如何从网页调用 wasm 的办法。两种办法: 间接应用 emscripten 提供的底层函数,把wasm 的办法导出到 js 运行环境中。在底层应用 embinding 间接导出 c/c++ 的函数和类,而后在 js 中调用。如果利用在视频剪辑中基于 wasm 提供的能力,ffmpeg 解码, 图片解码, OpenGL, 多线程,视频剪辑利用的结构图如下, 该系列文章,会不定期更新,介绍基于此图的架构和技术原理: ...

November 30, 2020 · 1 min · jiezi

关于视频:前端面试每日-31-第591天

明天的知识点 (2020.11.27) —— 第591天 (我也要出题)[html] 如何给<video>视频增加字幕(WebVTT)?[css] 说说你对screen.width伪响应式的了解[js] 剖析下sum = n * (n - 1) / 2的工夫复杂度是什么?[软技能] 说说你对ASCII码的理解,它有什么用处?《论语》,曾子曰:“吾日三省吾身”(我每天屡次检查本人)。前端面试每日3+1题,以面试题来驱动学习,每天提高一点!让致力成为一种习惯,让奋斗成为一种享受!置信 保持 的力量!!!欢送在 Issues 和敌人们一起探讨学习! 我的项目地址:前端面试每日3+1【举荐】欢送跟 jsliang 一起折腾前端,零碎整顿前端常识,目前正在折腾 LeetCode,打算买通算法与数据结构的任督二脉。GitHub 地址 微信公众号欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个Star, 同时欢送微信扫码关注 前端剑解 公众号,并退出 “前端学习每日3+1” 微信群互相交换(点击公众号的菜单:交换)。 学习不打烊,充电加油只为遇到更好的本人,365天无节假日,每天早上5点纯手工公布面试题(死磕本人,愉悦大家)。心愿大家在这虚夸的前端圈里,放弃沉着,保持每天花20分钟来学习与思考。在这变幻无穷,类库层出不穷的前端,倡议大家不要等到找工作时,才狂刷题,提倡每日学习!(不忘初心,html、css、javascript才是基石!)欢送大家到Issues交换,激励PR,感激Star,大家有啥好的倡议能够加我微信一起交换探讨!心愿大家每日去学习与思考,这才达到来这里的目标!!!(不要为了谁而来,要为本人而来!)交换探讨欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个[Star]

November 27, 2020 · 1 min · jiezi

关于视频:从0到1-构建实时音视频引擎

最近几年,实时音视频畛域越来越热,往年的疫情更是“推波助澜”了一把。网易智企旗下产品网易云信在实时音视频畛域深耕多年,积攒了不少实践经验。在本文里,笔者将以烹饪为比喻,深入浅出地将网易云信如何从0到1构建实时音视频引擎的过程分享给读者。 跟业界很多引擎的实现计划一样,网易云信也是基于WebRTC构建的实时音视频引擎。本文会从介绍WebRTC提供了什么开始,一步步引入工程化/产品化/优化实际等内容,残缺出现引擎的整个构建过程。 首先,WebRTC是什么? WebRTC全称Web Real-Time Communication。本来是用于反对网页浏览器开发实时音视频用的一套API,它提供了对立的交互协定:SDP,同时提供了视频会议的核心技术,包含音频引擎、视频引擎、传输管制三大块,并且还反对跨平台:Windows / Mac / Linux / Android / iOS。 WebRTC原本就是给浏览器用的,没有native代码能够参考。然而,在2011年它被Google开源了,源码被利用于各种native开发,并被业内宽泛借鉴,大有一统天下的趋势。 有了WebRTC,是不是就等于有了实时音视频引擎呢?并不是,以烹饪来做比喻的话,有了WebRTC就好比是有了厨具/原材料,而实时音视频引擎是给客户的那顿大餐。 有了厨具/原材料,第一步是什么呢?“学会厨具应用办法”—WebRTC的源码工程化。 WebRTC官网和其余第三方渠道已有不少材料介绍如何应用Google提供的工具编译出WebRTC的生成物,本文不再具体赘述。 会用厨具之后,是不是就能做出一顿好吃的饭菜了呢? 事实往往是这样的:用着很牛的厨具和资料,做着难以下咽的操持… 所以要以正当的步骤来做一顿饭菜,这饭菜才适宜下咽。在网易云信的实际中,咱们抉择了怎么的步骤呢?因为基于WebRTC建设通话的根底是通过设置SDP来实现的,所以咱们抉择了通过信令传递SDP信息,而后设置SDP信息给PeerConnection来实现建联。整个多人音视频能力中外围的是公布、订阅、响应订阅等媒体性能,其余的性能都是围绕着这些外围性能来做的。而外围性能是采纳如下流程来实现的: 举例: 公布音视频:把本人的SDP信息给媒体服务器(上图中的媒体服务器是SFU服务器),媒体服务器把本人对应的SDP信息返回来。这样就具备了Local SDP 和 Remote SDP,就能够实现一次设置并建联了。 订阅和被订阅也是相似的过程,通过发送本人的SDP给服务器,拿到远端的SDP信息,而后建设/更新联接。 以上是一个根本的建联过程。拿烹饪来说,是不是饭菜做熟了就很好吃了呢?其实还有很多须要晋升的:把饭菜做得更好吃/依据不同人的口味做不同的饭菜。这个晋升的过程,就是各种优化。 网易云信的优化实际有很多,上面介绍其中的几种优化。 优化一:Simulcast 所谓Simulcast,就是在一路视频里提供多个分辨率的视频流,订阅方灵便依据须要订阅想要的视频流。典型的就是在会议场景的利用,如下图: 如果没有Simulcast性能,假设须要720P的视频,在这个场景里,发送方须要发送/压码一路720P视频,接管/解码4路720P视频,带宽和性能压力十分大。如果减少了Simulcast能力,同时可能发送720P/180P的视频。在这个场景里,发送方通常只有发送/压码180P视频,接管/解码1路720P视频,接管/解码3路180P视频。带宽要求和性能要求降到了原先的1/4左右,而成果是齐全一样的。 WebRTC的Simulcast性能,并不是由WebRTC团队实现的,而是一个第三方开发团队开发,并merge到WebRTC里去的。要开启它,须要开启一个实验室接口,而后在Video quality control里更改相应的源码能力失常运行。配合下层的信令,就能做到灵便订阅了。 优化二:__视频硬件编解码 通常,视频硬件编解码会比软件编解码性能开销更低。无论在日常应用还是上高清分辨率(比方1080P)都有很重要的作用。WebRTC的硬件编解码性能不够残缺,为了能用起来,咱们在整条门路中做了不少事件。如下图: Android端次要是硬件的碎片化引起,iOS端次要是偶发的解体引起。碎片化靠下发白名单来解决(只对认证过的硬件启用),偶发解体靠收集线上信息来限度特定版本/特定机型来解决。两个挪动端都有偶发失败的问题,所以设计了一个失败时的回退机制,免得视频卡住的景象产生。最初再补完simulcast逻辑,就实现了这个硬件编解码的反对。 以上的优化,基本上是大部分场景都能够实用的,但也有些优化要看具体场景确定。这就好比不同的人口味不一样,有人喜爱辣,有人喜爱原味,做不到一套办法搞定所有的食客,于是咱们做了定制化的优化来进行适应。 优化三:__Audio profile Audio的优化做了很多,这其中挑了一个Audio profile的优化来讲。语音场景里,须要的编码码率不太高,而娱乐场景里(比方播放伴音歌曲的),对码率要求就高很多了,不然会失落音质。码率要求高了对网络要求也会高,所以为了应答不同的场景,audio的采样数/声道数都是不一样的。音频硬件又是形形色色,能力不对立,如果采集上来的数据不适合,就须要做重采样反对。同时codec的偏向也做了speech和music的辨别,以适应不同的须要。WebRTC原先的设计里,根本只思考了语音,跟娱乐场景相干的局部都须要优化反对。同时,为了可能兼容更多的音频解决/更差性能的机器,咱们在优化过程中,将播放/采集线程进行了拆散,相当于硬件要求升高了一半。 优化四:__传输策略优化 传输策略要关照实时性/清晰度/晦涩度三个维度,现实中的优化当然是三个都做得更好,惋惜这三个维度是互为掣肘的。如下图所示: 这三个点里,一个点增强了,其余点会被影响。举个例子:实时性要求很高,那缓存工夫就得升高,这时候如果呈现网络抖动,很可能会卡顿,流畅性就受影响。所以想要同一个策略满足不同的需要不太事实。在我的项目实际中,咱们依据不同的场景,设置不同的策略,来满足不同偏向的需要。 通信场景个别对实时性要求高。举个例子,你跟他人语音聊天,隔了一秒钟才听见对面的声音,那么两个人的聊天很容易“打架”,相互抢着发言。如果是多人语音聊天,那这个景象就更加重大了。娱乐直播场景对清晰度要求很高,但却能够承受较高的延时。所以咱们在实际过程中给予了不同的策略反对,就好比做不同口味的饭菜来满足不同人的口味。 以上就是网易云信在构建音视频引擎过程中的一些实践经验,在此分享给大家,心愿能给有趣味的同学参考。

November 16, 2020 · 1 min · jiezi

关于视频:谁说AI看不懂视频

摘要:人工智能在视觉畛域倒退趋于成熟,基于人工智能的视频内容分析能从根本上解决传统内容分析方法性能低下的问题,视频剖析开启2.0智能时代。视频数据量激增,数据处理和内容经营老本居高不下云计算、大数据、物联网、人工智能等信息技术飞速发展及传统产业数字化的转型,一方面媒体数据量出现几何级增长,据IDC预测,寰球数据总量预计2020年达到44ZB,我国数据量将达到8060EB,占寰球数据总量的18%;另一方面,媒体的生产、流传和生产模式降级。巨量数据中,70%将会以图片和视频的模式存储和流传。这些数据从生产、流传到用户生产,传统形式经营老本居高不下。人工智能在视觉畛域倒退趋于成熟,基于人工智能的视频内容分析能从根本上解决传统内容分析方法性能低下的问题。AI助力,视频剖析将全面进入智能时代。 视频从生产到生产全流程智能化视频从生产到生产的全流程降级,如图1所示。 图1 视频生产、编辑、散发和生产流程降级 华为云EI助力视频剖析全面进入智能时代。 生产视频采集,从业余设施到挪动终端,视频内容采集大众化。华为云EI在采集阶段可提供美颜、个性化等特效解决技术,助力视频采集即解决。内容审核,用户采集内容上传存储前,华为云EI提供视频内容智能审核能力,包含视频品质评估、黄/暴/恐甄别、反复/类似甄别及版权指纹剖析等,解决反复/疑似不平安内容进入流传流程。 编辑结构化分析,华为云EI针对各种类型的长、短视频,提供智能结构化分析,将视频以镜头、内容片段等结构化模式进行形容,便于后续的内容分析、存储和散发。内容分析,对结构化示意的视频内容,华为云EI从场景辨认、主体辨认、行为/事件检测、语音/文本剖析及内容形容等方面对其进行智能化剖析,反对多保护内容查问和检索。智能编辑,基于智能内容分析,初步提供以下智能视频编辑技术:(1)视频拆条 相比拟长视频,短视频更有利于在互联网流传,对传统媒体的节目进行拆条是不可或缺的。华为云EI基于人物、场景、语音、OCR字幕等多模态信息剖析技术,疾速准确地把长视频宰割成不同主题的片段。面向海量多媒体视频,大幅提高视频辨认、剪辑、检索等解决的效率,升高人工经营的老本。整体效率绝对人工晋升10+倍,新闻类视频拆条准确率超过95%,特定场景准确率超过98%。 (2)视频摘要 动态摘要,基于视频镜头变换、内容了解技术,华为云EI针对不同类型的长、短视频提供视频动态摘要服务,可能将1个小时视频压缩成5分钟的摘要内容,可用于经营管理人员的内容疾速浏览及用户疾速内容播放。 视频稀释,应用背景建模、主体检测、静止轨迹跟踪、前/背景交融技术,华为云EI提供视频稀释服务,将极长的视频中的事件提取进去,稀释到较短的视频片段,便于视频内容中事件的疾速观看。 (3)视频封面 基于视频镜头变换、内容了解和剖析技术,疾速提取内容相干、构图柔美的关键帧作为封面吸引用户进一步观看。相比于人工选取封面,智能封面选取速度进步20+倍,大幅升高经营老本;同时精彩的封面可能吸引用户的留神,大幅提高视频点击率。 (4)视频内容标签 视频OCR,视频物体辨认,视频人物辨认,从多维度对视频内容进行提取,将非结构化的视频文件,转换为结构化的数据,为视频搜寻,视频举荐,视频经营等提供了必不可少的信息。 (5)水印解决 用户上传的内容除了新采集的视频,还有很大一部分为已有视频的从新流传。而反复流传的这部分视频极有可能曾经打上了不同的水印。为了便于企业内容治理,华为云EI提供水印检测和解决技术,可能智能检测水印地位、重构水印并对水印进行解决。 (6)音视频指纹 视频指纹具备极大的应用场景,包含:(1) 对用户上传的内容进行反复检测;(2) 可对内容进行版权追踪;(3) 反对多维度、多粒度内容存储和检索; 华为云基于音频、视频内容分析技术,提供音、视频指纹生成、存储及检索技术。 (7)主动唱词 在新闻媒体、教育等畛域往往只有视频和对应的音频信息,主动唱词技术能够依据视频主动增加字幕,相比人工增加字幕,能够极大进步视频公布的及时性,进步生产效率。 散发,基于前述的视频结构化和智能剖析,视频内容可依照多维度进行存储,联合用户行为日志剖析,反对疾速检索和关联举荐,将内容以最快的速度推送到相应的用户。生产,在用户生产视频的过程中,华为云EI提供主动评论及交互播放技术计划,晋升终端用户体验。人工智能正在进入以标准化、自动化、模块化为特点的工业大生产阶段。AI会将人类社会带入智能时代。本文针对视频从生产、编辑、散发到生产的整个过程如何实现智能化,进行了技术剖析,心愿能为对AI感兴趣的小伙伴们指点迷津,也为始终苦于传统经营模式下的你关上场面。 点击关注,第一工夫理解华为云陈腐技术~

October 22, 2020 · 1 min · jiezi

关于视频:后疫情时代华为云会议如何定义未来会议

摘要:有着超过20年视频会议产品研发教训的华为云会议来说,华为做的视频会议零碎有点不一样。疫情过后,火了什么?视频会议零碎! 不可否认,疫情让很多人晓得了视频会议,并在相当长的一段时间成为了咱们工作生存的必需品。时代的弄潮儿们,怎么可能不乘上这波东风呢? 视频会议零碎如雨后春笋般涌现在公众视线,作为大厂个性化解决方案的对外输入,每个厂商视频会议软件的广告宣传侧重点各有不同,作为有着超过20年视频会议产品研发教训的华为云会议来说,华为做的视频会议零碎有点不一样。 华为云会议更加高清、稳固超过20年的音视频畛域摸索,华为云积攒了业界当先的音视频媒体解决技术,领有更加高清、稳固的语音、视频、数据会议。华为云会议利用业界当先的OPUS音频编解码技术,实现80%音频抗丢包,30%视频抗丢包,实现端到端时延<200ms。H.265 4K视频编解码解决技术,让华为云会议能够在更大的屏幕上出现更精密的图像,从而让近程合作实现精细操作,让近程医疗等成为可能。业界惟一电脑端和手机端1080P的清晰度,让电脑和手机也能成为业余视频会议终端;独特的视频降噪,背景提亮,背景虚化以及虚构背景,人物美颜,提供更佳的视频画面成果。 端云协同,开启智慧办公新时代华为云会议反对电脑、手机、平板、智慧大屏、高清视频会议终端等全系列终端通过互联网接入,实现全场景的沟通合作空间,打造云时代的生产力工具,让人人享有智能化工作形式,开释组织效力,代表着一个新时代的到来。 全场景多屏互动体验,实现会议室与挪动会议完满联合,让内外部会议无缝连接。在公司的会议室或者开放区用华为的企业智慧屏散会,长期有事不能到场的共事,能够通过电脑、手机、平板接入,仍然能够参加到会议中来。无论你在会议室、办公室还是在家里,还是在路上,随时随地都可接入会议,与团队进行互动交换。 丰盛的会议告诉华为云会议的会议告诉做的真的是很贴心了,会议可通过短信、邮件、微信分享,通过扫码、链接、输会议ID等多种形式一键入会。预约会议后,会议发一个会议告诉短信,告诉短信中蕴含入会链接,入会ID,间接点击入会链接或者在华为云会议客户端输出会议ID数字就能够进入会议。除此之外, 扫码邀会议室终端入会,大屏入会更便捷。 华为云会议还能够与Outlook日历联合,日历会议告诉揭示,从日历中一键入会。会议告诉、加入会议都是特地不便的。 疾速邀请内部联系人参会邀请参会时,可灵便增加企业内部邮箱和手机号,不仅邀请参会不便,还能够更好的治理客户和搭档信息。而且华为云会议app未登录状况下,点击会议链接就会弹出主界面并且匿名入会,实现跨企业沟通的需要。 数据共享,多方标注,让合作更高效华为云会议能够抉择分享屏幕上的所有内容或仅分享某一窗口,这使您领有对桌面可见性的齐全管制并保障了您的隐衷。通过共享屏幕,您能够向敌人、共事或客户演示设施上的任何媒体内容,而无需发送任何文件,这包含演示文稿,文档,图像,甚至视频。反对多人在线实时标注,这探讨更加高效。 扫一扫带走白板会议纪要当初越来越多的公司散会都开始应用电子白板,通过华为云会议扫一扫就能够将白板上的会议纪要带走,免去了之前纸质缮写会议纪要、手机照片保留会议的麻烦。 业界最佳投屏华为云会议反对极速传屏,音视频皆可共享。多种无线投屏形式可供选择,通过碰一碰、输出投屏数字、连贯投屏器均可投屏。能够多人同时投屏,大屏上分屏演示,比照查看一屏到位。 在大屏上还能够对小屏进行反向管制,如PPT翻页等,能够间接在大屏上操作;还有特地贴心的反向投屏性能,当你坐在边远的培训教室的前面,无奈看清讲台大屏上的内容时,应用反向投屏,将讲师展现的内容反投到本人的电脑上,发明出本人的小教室,是不是很神奇? 业余会控,让会议居然有序华为云会议反对会议画面灵便布局,让重要的人永居C位;反对整体静音还能够实时定位发言人,实现会前、会中高效治理会议秩序。 华为云会议更加安全可靠华为云会议反对共享水印,避免会议泄露,爱护会议隐衷。华为云会议从牢靠、可用、平安、韧性,隐衷、有害6大个性塑造产品安全可信,可用性SLA>99.95%,端到端实现产品生成过程可信。同时人造具备了华为云的安全可靠能力,从云端防护、管道传输平安、端侧接入等方面都构筑了全方位的安全可靠能力。 华为云会议产品设计始终从爱护企业数据与信息安全角度登程,提供多重平安个性。一企业一租户,租户数据隔离;通讯录、会议录制文件等用户数据加密存储; AES256加密算法,防窃取破解;反对锁定,无关人员无奈入会等。 华为云会议领有更强的云会议保障团队华为作为泛滥大型会议的技术支持单位,提供业余的会议保障服务,有着丰盛的重大会议保障教训,疾速响应,依据会议制订专属接入计划,具备欠缺的应急预案与办法,防止会议呈现问题或者呈现问题后准备应答措施。 在疫情期间,华为云会议屡次撑持了国家商务部、多地省市政府、卫健委、医院与抗疫一线医疗队之间,国家卫健委、税务总局、国家能源团体、国家邮政团体、民航局等企业的视频会议。不仅如此,华为云会议还针对数字政府、智慧教育、数字金融、智慧医疗、交通制作修建等各行业提供了更加欠缺的专属音视频会议解决方案。 华为云会议已上线套餐模式,目前分为免费版、专业版、企业版三个版本,三个版本的性能及免费均有所不同,当你试用免费版的感觉还不错,能够无缝降级到专业版及企业版。如果你正在筛选视频会议产品,不如就试试华为云会议吧! 收费注册即可取得华为云会议永恒(25方并发,及1个及硬件接入)收费会议套餐服务 华为云会议产品体验官炽热征集中,领先体验华为云会议新产品和新性能 点击关注,第一工夫理解华为云陈腐技术~

October 14, 2020 · 1 min · jiezi

关于视频:无差别视频提取工具

背景之前笔者实现了m3u8 视频在线提取工具,可对 m3u8 视频进行提取,合并,下载。实现整个视频下载流程。后续还实现了非定制性的 ASE 解密性能(不提供定制性服务,定制性解密,属于破解,侵权行为,需尊重知识产权)但上述工具仍存在肯定的通用性问题。为彻底解决通用性,实现无差别视频提取,开发了这个工具。特点长处,通用性强,无差别提取,只有应用到 MES 支流媒体播放技术的视频,均可捕捉。长处,足够简略,在视频播放的最初一个步骤进行拦挡,躲避视频加载,加密,解密等简单过程。毛病,被动,无奈被动干涉视频加载,只可被动捕捉视频资源。毛病,有肯定门槛,依赖 chrome 浏览器开发者模式,无奈实现全自动化,有肯定应用门槛。应用示例链接性能阐明 【已捕捉 0 个片段】 显示程序已捕捉的视频片段数。【下载已捕捉片段】 能够强制下载曾经捕捉的片段,无需期待整个视频全副捕捉实现。【十倍速捕捉】 因为视频捕捉是依赖视频加载进度的。点击该按钮,能够十倍速播放,减速视频加载,减速视频捕捉。当视频全副加载实现,将触发主动下载。 若无触发,可手动点击「下载已捕捉片段」按钮,对捕捉到的视频进行下载。应用形式示例试验链接 复制工具代码 能够间接复制本文中的外围源码也能够点开示例试验链接,点击按钮,疾速复制工具代码。关上目前页面的控制台ctrl + f ,输出 <iframe,判断是否存在 iframe 内嵌页面。若存在 iframe,请看完本阐明,再持续查看下一节「iframe 解决方案」。若无,则下一步关上代码调试面板在调试面板中,找到以后页面的代码 留神文件的寻找办法,需依据 URL 中的门路层级寻找。点击下方按钮,对代码进行排版。 搜寻,找到第一个 <script 标签,并设置多个断点 搜寻,如果第一个 <script 标签是一个链接。则找到对应文件,设置断点。刷新页面,呈现如下状态,则证实断点设置胜利 若页面白屏,为失常景象,依照步骤继续执行即可。 在 console 栏,粘贴工具代码,回车 回到 source 栏,点击按钮,复原运行 若页面呈现这几个按钮,则证实注入胜利,工具运行胜利 失常观看视频,期待视频捕捉 可点击「十倍速捕捉」,接口视频播放速度,放慢视频捕捉速度。若页面呈现如下弹窗,即捕捉实现,视频主动下载(也能够点击「下载已捕捉片段」,手动下载) 视频下载实现,失去「音频」文件,「视频」文件 可应用专属播放器,进行播放。也能够应用其余工具,进行合并。iframe 解决方案示例试验链接 找到 iframe 标签,复制 src 中的 url,新建页面关上该 url。 如果该新建页面能失常播放视频,则在该新建页面,应用上述「应用阐明」即可。如果新建页面没有失常播放页面,则回到原页面,换一种形式实现。回到原页面,找到 iframe 内嵌页面的源码。 同样搜寻 <script,但这一次,要找带 src 的 script 标签找到该 src 对应的文件,并打断点刷新页面,并在源文件中,插入代码 留神,打断点和插入代码是在不同的栏,打断点的栏中,有「:format」标识。插入代码的栏,没有该标识。 粘贴代码,ctrl + s 进行保留复原执行(操作形式,查看上一节「应用阐明」)实现代码插入,捕捉视频特地阐明在代码操作过程中,页面白屏是失常的,依照步骤继续执行即可。如果不行,装置应用阐明,多试几遍就能够了。可能是视频广告导致。留神 Chrome 的多文件下载询问,如果回绝过,须要从新关上。视频捕捉,分为「视频」文件与「音频」文件,「视频」文件是纯视频,没声音的。须要搭配「音频」文件播放。点击这里,应用专属播放器。专属播放器因为采集工具是独自对「视频」和「音频」离开采集的。应用一般播放器可能无奈失常播放。可利用本工具同时加载「视频」和「音频」同步播放。本工具还附有倍速播放性能。原理支流视频媒体播放技术,均应用到 MES 技术MES 技术播放流程个别如下: ...

September 30, 2020 · 2 min · jiezi

关于视频:前端面试每日-31-第531天

明天的知识点 (2020.09.28) —— 第531天 (我也要出题)[html] H5的video能够播放哪些类型的文件?能够播放rtsp流吗?[css] 请说说width: auto和width: 100%有什么?区别[js] 写个办法获取给定开始和完结工夫的所有日期和月份[软技能] 你认为沟通和技术哪个更为重要?《论语》,曾子曰:“吾日三省吾身”(我每天屡次检查本人)。前端面试每日3+1题,以面试题来驱动学习,每天提高一点!让致力成为一种习惯,让奋斗成为一种享受!置信 保持 的力量!!!欢送在 Issues 和敌人们一起探讨学习! 我的项目地址:前端面试每日3+1【举荐】欢送跟 jsliang 一起折腾前端,零碎整顿前端常识,目前正在折腾 LeetCode,打算买通算法与数据结构的任督二脉。GitHub 地址 微信公众号欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个Star, 同时欢送微信扫码关注 前端剑解 公众号,并退出 “前端学习每日3+1” 微信群互相交换(点击公众号的菜单:交换)。 学习不打烊,充电加油只为遇到更好的本人,365天无节假日,每天早上5点纯手工公布面试题(死磕本人,愉悦大家)。心愿大家在这虚夸的前端圈里,放弃沉着,保持每天花20分钟来学习与思考。在这变幻无穷,类库层出不穷的前端,倡议大家不要等到找工作时,才狂刷题,提倡每日学习!(不忘初心,html、css、javascript才是基石!)欢送大家到Issues交换,激励PR,感激Star,大家有啥好的倡议能够加我微信一起交换探讨!心愿大家每日去学习与思考,这才达到来这里的目标!!!(不要为了谁而来,要为本人而来!)交换探讨欢送大家前来探讨,如果感觉对你的学习有肯定的帮忙,欢送点个[Star]

September 28, 2020 · 1 min · jiezi

关于视频:超酷-Atlas给黑白视频上色

摘要:随着人工智能技术倒退,AI曾经可能为黑白的老视频 “上色”,重现今日的情景,让黑白图像变得栩栩如生。怎么样,是不是看起来题目跟昨天的博客名称差不多?昨天是图片,明天是视频。从情理上说,将视频中的图像一一抓取,上色,合起来就是视频了。。。(我猜原理就是这样的) 所以,让咱们把18.04的quick-start的demo折腾完吧。这次是依据 https://gitee.com/lovingascend/quick_start/blob/master/Atlas200DK_separate_MD/video_sample.md ,将视频给上色了。 闲话少说,咱们依照阐明来,应用”开发环境穿插编译第三方库,再将第三方库导入运行环境,提供运行调用“的办法。 先在虚拟机环境装presentagent: 而后顺次照做: bash configure make -j8(编译的工夫会有点长。。。) sudo make install 上面编译arm版本的so,为迁徙到开发板做筹备: make distclean ./configure --build=x86_64-linux-gnu --host=aarch64-linux-gnu --with-protoc=protoc make -j8(急躁地等编译完结。。。) sudo make install 上面到运行环境同步方才编译好的第三方库: 留神这里手册有个bug:(scp须要加上一层arm目录),否则会找不到文件:scp $HOME/ascend_ddk/arm/lib/libpresenteragent.so HwHiAiUser@192.168.1.2:/home/HwHiAiUser 而后登录开发板,再拷贝so文件: 咱们再做最初的一步,获取视频我的项目: 回到虚拟机的开发环境: unzip colorization_video.zip 解压 建好目录,下载模型和权重文件:(如同跟上次是一样的) 回到MindStudio.敞开原来的工程并关上新下载的工程: 上面的步骤跟上次图片上色的那个根本是统一的:转换模型,加载模型到我的项目中,编译,运行。。。 个人感觉模型转换能够省略,因为图片上色的时候曾经做过了。这次仅仅抉择了加载。 查看下虚构网卡的地址 192.168.1.223 以及 script/presentserver/display/config/config.conf中的presenter_server_ip 是否对应: 没问题。 再查看 src/colorize_process.cpp 106行地址是否跟后面对应: ...

September 11, 2020 · 1 min · jiezi

关于视频:视频会议专线部署不会别急我教你

业务场景及诉求1、企业心愿部署welink视频会议,然而各分支机构共用一个公网进口,如果通过公网拜访应用云上的welink视频会议,当企业外部视频会议终端海量接入时,每路视频都须要占用肯定的带宽,对企业总部的公网进口总带宽要求十分高。心愿能解决会议业务进口带宽压力过大的问题。 2、如果通过公网拜访,还存在提早高,网络抖动不稳固的因素,无奈保障稳固的高清视频会议。心愿保障和晋升会议业务的品质。 计划背景1、Welink业务部署在华为云上,通过EIP对外提供服务,包含WeLink媒体EIP、利用EIP及会控EIP。装置welink客户端的主机须要和这些EIP进行通信实现视频会议的业务 2、welink业务部署在华为云上,通过在云专线买通IDC和华为云VPC,使视频业务流量通过专线上云,网络传输更稳固,能够防止公网高提早、抖动不稳固的毛病。 计划介绍1、 在IDC进口的物理设施搭建云专线和云上VPC对接。将视频会议的业务流量通过云专线引到云上。 2、 同region的EIP互访,不波及公网链路。在云上配置NAT网关,增加对应的SNAT规定,通过NAT网关的地址转换,使IDC内的机器具备拜访EIP的能力。IDC内的视频业务流量上云后,通过NAT网关和welink服务进行通信。 图1 网络拓扑 阐明: 1、云专线保障IDC进口设施到WeLink服务VPC之间的网络品质 2、倡议优先将专线接入到北京四 3、IDC进口和云专线对接的路由器须要反对BGP协定,且反对至多200条的路由学习 配置步骤1.实现物理连贯接入物理连贯由“专线”与“端口”组成,华为云间接提供专线接入的端口,专线局部须要向运营商洽购和部署,具体操作步骤请参考《物理连贯接入》 2.创立VPC和VPC网段创立VPC请参考《虚构公有云用户指南》。各VPC子网网段请勿抵触。 a.IDC:192.168.3.0/24 b.华为云:192.168.4.0/24 3.配置专线a.虚构网关配置 导航栏抉择“云专线 > 虚构网关 ”,在虚构网关页面,创立虚构网关,在“创立虚构网关”对话框中,输出对应的参数;同时还要为IDC拜访Welink的公网IP增加路由。因而虚构网关的本端子网为192.168.4.0/24,EIPB/32, 如图2所示。具体步骤请参考创立虚构网关。 图2 虚构网关配置 此处只做示范增加了三个须要拜访的Welink公网IP,理论须要增加全副拜访Welink的公网IP,包含WeLink媒体EIP、利用EIP及会控EIP。本端子网最多反对增加50个网段,以“,”隔开。 b.虚构接口配置 导航栏抉择“云专线 > 虚构接口 ”在控制台虚构接口页面,创立虚构接口,在“创立虚构接口”对话框中,输出对应的参数。配置参数请参见表1。 图3 虚构接口配置 单击“提交”,当所创立的虚构接口状态列为“失常”时,实现虚构接口的创立。 阐明:  客户配置本地侧网络,本地侧的本端子网和远端子网要与云上互成镜像。  专线配置好后,须要配置IDC路由,将流量指向云上。 4. 购买弹性公网IP并配置NAT网关a.购买弹性公网IP 具体步骤请参考购买弹性公网IP,这里购买弹性公网IP后,无需绑定云主机。 b.购买NAT网关 在云上购买NAT网关,登录网络控制台,在服务列表中抉择“NAT网关”,点击页面右上方“创立NAT网关”。 图4 Nat网关界面 依据界面提醒,配置NAT网关的根本信息,配置参数请参见表2。 配置实现上述信息,会显示NAT网关配置费用,可通过“理解计费详情”查看计费信息。 c.增加SNAT规定 NAT网关创立胜利后,您能够为NAT网关增加SNAT规定。通过增加SNAT规定,云专线IDC侧的服务器能够通过共享弹性公网IP拜访互联网。 一个网段对应一条SNAT规定,如果云专线IDC侧有多个网段中的服务器须要拜访公网,则能够通过创立多个SNAT规定实现共享一个或多个弹性公网IP资源。 单击须要增加SNAT规定的NAT网关名称,在SNAT规定页签中,单击“增加SNAT规定”。 图5 配置SNAT规定界面 依据界面提醒,配置增加SNAT规定参数,详情请参见表3。 阐明:  依据业务需要,能够为一个NAT网关增加多条SNAT规定 ...

August 7, 2020 · 1 min · jiezi

移动端自动播放视频之TS视频

ts简介TS(Transport Stream,传输流)是一种封装的格式,它的全称为MPEG2-TS。是一种视频格式,一般用于实时流媒体和广播电视领域。 Ts与Mp4优势对比Mp4在IOS下可以自动播放,但是在部分安卓机下无法自动播放产生黑屏。Ts可实现自动播放,IOS8以上和Android4.4以上都支持。基于自动播放的优势,本妹子在本厂的618大促主会场及各个活动需求上就用了Ts技术。 生成ts视频需要下ffmpeg来将Mp4转化成Ts视频。下面下载操作如下所示:mac下可以运行 brew install ffmpegwindows下可以在https://ffmpeg.zeranoe.com/builds/中下载。 然后用ffmpeg 转化 ffmpeg -i in.mp4 -f mpegts -codec:v mpeg1video -codec:a mp2 -b 0 out.ts还可以控制视频大小(-s),帧速率(-r),视频比特率(-b:v),音频比特率(-b:a),音频通道数(-ac),采样率(-ar ) 以及更多。 有关详细信息,请参阅ffmpeg文档。如下所示 ffmpeg -i in.mp4 -f mpegts \ -codec:v mpeg1video -s 960x540 -b:v 1500k -r 30 -bf 0 \ -codec:a mp2 -ar 44100 -ac 1 -b:a 128k \ out.ts注意:尽量用高质量的MP4来转成Ts,如果在手机上显示,采用比特率1500k即可。ffmpeg -i in.mp4 -f mpegts -codec:v mpeg1video -b:v 1500k -codec:a mp2 out.ts播放ts视频推荐用jsmpeg-player,它是基于jsmpeg封装的npm包。最好准备一个封面,将视频盖住,等视频播发再去掉封面,详情如下: import React, { useEffect, useState, useRef } from 'react';import './index.less';import JSMpeg from '@cycjimmy/jsmpeg-player';export default function VideoTs(props) { //封面 const cover ='https://img11.360buyimg.com/imagetools/jfs/t1/105707/30/17596/32160/5e8c8ae6Ee2bfd8db/1ef4084de9ec103f.jpg' const tsSrc='https://storage.360buyimg.com/xingdianzhang/%E6%B5%8B%E8%AF%95ts.ts' const hdVideo = useRef(null); var [isCover, setIsCover] = useState(true);//是否用封面覆盖 useEffect(() => { initTs() }, []) function initTs() { let canvas = hdVideo.current.querySelector('.hdVideo-ts'); canvas.style.width = '0px' new JSMpeg.VideoElement(canvas, tsSrc, { canvas, autoplay: true, loop: true, progressive: false,//是否为chunk control: false, poster: cover, preserveDrawingBuffer: true, decodeFirstFrame: true, disableGl: true, }, { audio: false, //静音 onPlay: () => { canvas.style.width = hdVideo.current.clientWidth + 'px' setIsCover(false) } }) } return ( <div ref={hdVideo} className='hdVideo'> {isCover ? <img className="hdVideo-image" src={cover} /> : null} <canvas className="hdVideo-ts"></canvas> </div> );}<!--index.less-->.hdVideo{ width: 750px; height: 400px; .hdVideo-image{ width: 100%; height: 100%; } .hdVideo-ts{ width: 100%; height: 100%; }}注意的坑兼容性问题Ts存在兼容问题,系统版本 < android7 || 系统版本 < ios 11, Ts不兼容,可以以图片第一帧为兜底图片 ...

June 18, 2020 · 2 min · jiezi