影视飓风那个视频全网下架!还得看看开发者来讲讲视频平台整体技术
本文作者刘歧(社区人称“大师兄悟空”)是 FFmpeg 社区委员会成员,也是 FFmpeg 官方推荐顾问,曾出版技术书籍《FFmpeg 从入门到精通》《深入理解 FFmpeg》。
作为 FFmpeg 开发者,悟空参与了大量相关开发、维护的工作,同时维护 HLS、DASH、FLV 等多个模块,Review 其他开发者提交的 Patch,帮助新手进入 FFmpeg 等。
知名视频创作者「影视飓风」10 月 8 日在 B 站发布视频《清晰度不如 4 年前!视频变糊是你的错觉吗》,指出视频平台的视频画质变糊是平台压缩、降码率行为导致,从而分析探讨编码技术、视频平台降成本、降带宽费用等内容。
同时在视频最后他还呼吁其他创作者发声,让视频平台去考虑、重视画质。
视频发布次日,「影视飓风」称因多方原因将上述视频全网下架。
后续该事件引发全网激烈讨论——主要围绕企业经营、互联网基建成本等角度展开。
那么作为开发者,如何从技术角度看待“视频平台的降码率操作”?
长期以来,视频平台的降码率操作一直饱受创作者和艺术爱好者的诟病,而这个问题最近因为一条视频而彻底爆发。
我也一直有想法把这种科普的内容好好梳理一下然后记下来分享出来,那我现在就简单地说一说都有哪些需要解决的问题,比较粗糙的讲解,详细的可能需要写系列的内容了。
首先我们看一下视频创作的大致过程,从创作者制作视频到用户最终观看,这一过程包含以下关键步骤:
上面这些步骤中,剧本、拍摄、编辑、发布(发布视频的一部分)、投流应该都属于创作者部分的工作内容。
播放就比较好理解了,就是观看创作者发布的视频的观众群体。
通常我们说的视频平台属于创作者部分的发布这一角色中。粗看是视频供给到消费只有 6 个步骤,其实每个步骤都有很多细节。
一、剧本
相信在我们在看视频的时候,大多数时候品类还是以“影画剧集”(概括为影视)为主。
电影有剧本、电视剧有剧本、动画片有剧本、短剧有剧本、甚至一些大V的短视频或者直播也有剧本,视频内容大体上是围绕着剧本演绎的。
一个视频是否会被观众喜欢,剧本的品质好赖有很大的关系,就像是去饭馆选菜系一样,不同的人群口味不同,有的人喜欢鲁菜的葱烧海参,有的人喜欢川菜的连山回锅肉,当然也有的人喜欢卤煮、豆汁,都没什么问题。
定位好观众群体基本上就可以选对应的剧本了,就像是有时候吃葱烧海参的人可能吃腻了,换一换口味吃卤煮了也说不定。这就是为什么有些剧看上去不那么符合常理,但是播放量很高的缘故。
当然,有一些自拍换脸、加猫耳朵、加一些特效不太容易让人看得懂他想表达什么的那种有可能不需要剧本,有可能就是为了展示一下自己的美好生活或者生活的小确幸,这类视频一般按照爆款模板复制就可以了,甚至只要随手拍一拍就可以了,连编辑加工都不需要就可以直接发布。
简述:
创作者创作的内容,有剧本和没剧本,剧本好坏,内容面向的群体最终都会决定一件作品的播放量和用户体验好坏。
二、拍摄
有了剧本以后,通常会需要用摄像镜头采集内容,这时候就会有多种拍摄角色来提供视频素材片段,比如一只三花猫从一张靠窗的电脑桌上跳到桌子附近的沙发上,然后蜷着身子趴在沙发坐垫上眯起眼睛打盹,这是一个镜头。
然后一个全身穿着深蓝色起居服的寸头男士,拎着一张报纸走到猫的左侧,轻轻地坐在沙发上,展开报纸看了一眼后说了句:“不知道明天视频清晰度会不会提升,H.264编码,H.265编码现在能不能保证清晰度相同的情况下看出视频压缩的体积差别,H.266又叫VVC,是不是压缩效果会更好。我个人认为这个意大利面就应该拌42号混凝土。因为这个螺丝钉的长度,它很容易会直接影响到挖掘机的扭矩,你往里砸的时候,一瞬间它就会产生大量的高能蛋白。”
说到这里了,稍微等一下,你有没有觉得这一段台词你背不下来?有没有想过拍摄这段视频的时候会出现各种意外?有没有想起来有这么一个场景:导演喊“咔~~!”。
其实这个过程是拍摄,需要拍摄多个片段,在后面编辑(有时候也称为影视后期制作)的时候以便做最好的选择。
当然,拍摄视频的摄像头可就有讲究了,而且讲究很多,学问也很大,我相信很多人并不是专业的,但是多少也知道一点点,举几个例子:
设备是多种多样的,有的功能比较单一但是非常专业,有的功能非常多但是细节部分有可能并不极致。
比如有些拍摄设备支持8K分辨率 HDR 120fps(帧率)采集,也有些有可能只支持 720p 分辨率 15fps,还有些会带上视频采集的地点信息,例如在阿尔山拍摄的视频、在库布齐沙漠拍摄的视频、在都柏林拍摄的视频、在南非拍摄的视频等。
当然,设备越贵有可能优势越明显,比如拍摄的视频分辨率越高、色彩越接近真实、画面越流畅等优势。设备差的话也不一定拍摄出来的内容会很差,有时候拍摄者的专业程度也很重要。
简述:
1、少数群体:追求艺术的人会尽量发挥最专业的手法(我不专业,可能也不叫手法)拍摄,包括高分辨率、高画面色彩表达、高帧率保证流畅度等;
2、多数群体:也想表达自己拍摄的视频内容但是并不专业的人,可能按照剧本拍摄完成就不错了,剩下的交给编辑工具(后期制作);
3、多数群体:自己也不知道想表达什么,只知道这个内容和模板有很多人看,所以混个流量的拍摄。
这些都需要专业的人,因为专业,所以是少数群体不是么。那你应该能理解很多专业的人批评一些不专业的人群的呀。
三、编辑
说到视频编辑,这个就有趣了,这是一项可以化腐朽为神奇的技能。
举几个例子吧,您还记得那些忘记关美颜然后翻车的主播么?这个也是编辑能力的一种。下面详细介绍一下。
编辑的情况跟拍摄视频一样,分专业和非专业的:
1、精品内容群体:很多大片一般是选择达芬奇、Premiere、Final Cut Pro、Blender(有个开源的电影叫大雄兔就用这个制作)等;
2、次精品内容群体:场景不会特别复杂的一般选择用剪映PC版、快手云剪、爱剪辑等。因为这些软件支持的剪辑能力在PC上可以轻松应用起来,但是相对于达芬奇,Premiere、Final Cut Pro 这类专业视频编辑系统来说还是太简单,很多功能细节支持得比较粗糙,所以专业的视频编辑大神也不太瞧得上这些非专业软件、也不太瞧得上这些软件合成出来的视频。
3、杂品群体:手机随拍随编辑的移动端视频编辑者,这些群体的应用需求比PC更简单,毕竟手机屏幕操作还是小很多。
简述:
比如专业的电影后期制作和短视频的粗略剪辑,两者面向的群体差别可能会比较大,这个也是专业人员跟互联网视频平台经常有冲突的一个地方,但沟通以后应该是能有一个都满意的解决方案。
四、发布
视频发布分三大步:上传、存储、展示。
1、创作者可控和可操作部分
首先说一下上传,上传这个操作相信通过网页上传、通过 ftp 上传大文件的时候,应该很多人都会觉得很慢,用平台提供的工具上传的时候会稍微快一些,这个时候就会有不少上传者会为了加快上传速度,或者有更好的上传体验,采用一些转码工具做降码率处理,或者有一些平台会为了降低用户播放故障率,限制上传者上传的视频格式,有限制的通常也会提供参考的平台支持的格式。
2、平台部分
平台收到创作者上传的视频后,平台会做非常多的工作,随着平台技术能力的不同,用户体验平台服务的好坏也不同。
存储和展示基本上是在一起的,都属于视频平台提供的技术,那么我就粗糙地介绍一下平台部分都需要做什么吧。
至于详细的细节,可能需要以后我抽空一点点介绍了,如果要介绍每个细节,因为需要介绍的内容太多,可能会比较漫长,为了便于理解,我就粗糙地分享一下。
我们普通人理解的平台的功能:
平台存储(UI界面的封面,然后点进去就播放视频),大概是这样的:
看上去很简单对不对?大概看上去是这么简单,那我问几个问题。
第一个问题:你用的是联通网络?电信网络?移动网络?鹏博士网络?广电网络?沃达丰?NTT DOCOMO?其他?
我为什么问这个呢?这是因为联通是一家公司,就像是你自己家开的涮羊肉店一个道理,电信是另一家公司,就像是你邻居家开的一个鲁菜饭店一个道理,其他家通信公司也是类似的理解即可。
那么用户在你家饭店吃涮羊肉的时候,突然馋了,和你家的服务员说想吃葱烧海参了,这个时候怎么办呢?有两个选择,第一个是拒绝用户吃葱烧海参的需求,第二个是去鲁菜馆端一盘葱烧海参回来给客人吃,客人会把葱烧海参的钱和涮羊肉的钱统一付给你家,但是隔壁葱烧海参是免费给的么?肯定不是啊,那么贵对吧。
那么我们看视频,打开网页,或者说数据通信,跨运营商网络传输的时候,就相当于涮羊肉馆从鲁菜馆端葱烧海参一样,是需要结算的,甚至有时候是拒绝的。这时候就需要有这么一个角色出现了——类似于跑腿的人,这个人就是多线机房或者BGP机房。因为人家是跑腿的,那他就付出劳动了,付出劳动的话肯定是需要得到劳动报酬的。
第二个问题:你在哪个城市呢?北京?郑州?上海?西藏?曼谷?慕尼黑?洛杉矶?
我为什么问这个问题呢?假设你用的是联通网络,那么你如果在济南联通,而创作者上传的视频文件在北京的 BGP,这时候我们继续引用刚才的那个例子,客户在济南吃鲁菜(济南联通)呢,他突然想吃北京阳坊的涮羊肉(存储在北京BGP的视频文件)了,而且想马上就吃到,怎么办呢?
这个时候一个新的角色就出现了,就是 CDN(Content Delivery Network),可以这么理解:CDN 就相当于在济南给你建立了一个涮羊肉的冷库,以便济南当地的人们随时能吃到北京的涮羊肉。
说吃的可能饿得快,那用去电影院看电影理解 CDN,CDN 就相当于电影胶片的发行过程,首先是当地有看某一部电影的需求,然后电影院会从发行方那里运这部电影的胶片放在本地电影胶片库,观众想看的时候随时在本地电影院就可以看了,不用跑很远去发行电影胶片的地方看。
这个存在本地电影院的胶片通常被称为缓存(也叫 Cache),观众来看有没有胶片,刚好有,这个状态叫 HIT。观众来看的时候没有,这个状态叫 MISS。既然叫缓存,通常就有缓存时间长度限制,超时未被用的通常会被清理掉,毕竟缓存的存储空间是有限的。
顺便说一下,有些视频可能播放卡顿,这个缓存节点部分也可能是卡顿的一个因素。
好了,第二个问题现在应该是已经了解了。既然是跨省、跨国跑腿了,那就应该得到劳动报酬。
原本平台只需要做这点事就行了,但真的是这样吗?肯定不是了,毕竟画质变得不清晰这个事还没说呢。
别急,咱们先捋一捋整体流程。平台还有很多事需要做的,马上就会说到。
简述:
创作者在平台发布作品之后,平台需要给观众提供可以打开视频的基本支持能力,这部分主要是带宽消耗而已,花点钱就可以轻松解决,当然如果既能节省带宽消耗又能满足用户正常播放就更好了。
五、投流
好不容易拍个视频,总得有观众看,每个创作者都有被看见的权利对不对。创作者很多,都想被看见,有时候会营销的人比不会营销的人更容易被观众看到,制作的内容更容易出爆款。还记得剧本那一段不,在剧本创作或者选剧本的时候,就已经定下了面向哪一类观众,比如霸总剧,穿越剧,武侠剧,再比如短视频剧情解说,比如探店,比如情感调节,比如家长里短等,面向的观众群体是有差别的,所以在投流的时候需要慎重确定自己的视频是面向哪一类群体。
比如骑摩托的时候头顶一个全景摄像头到处旅行的视频,推送给爱看霸总剧的人群,极大可能观看效果不会太好,因为观众的爱好不是全景看一个人骑摩托四处旅行。
那么这个观众群体是怎么被确定的呢?平台会在平台侧看到用户们喜欢看哪一类内容,然后会根据智能分析系统分析到用户的喜好,然后推送用户喜好的内容。当然,偶尔也会刷新一些新的内容品类给用户尝试一下,万一用户发现新大陆了呢。
所以有时候你打开某个 app 看一段时间某一类内容后,平台后续极大可能会为你推送相关的内容,有时候不能怪平台,因为你的访问的内容、停留时间长度等因素已经证明了你喜欢那一类内容。
投流也是有一门很深的学问,并且很烧钱,通常会选择灰度投流,比如先推送给几十万人或者几百万人,或者按照平台的观众的某一类人群的一定比例推送,然后观察一段时间看一看用户是否真的喜欢这类内容。
简述:
这部分我没深入研究过,只是知道个大概,所以不方便评论什么,也不会说太多。
六、播放
这个时候就是表面上看到的视频生产者到播放者的最后一个环节。你真的以为播放这个环节就是打开播放器,播放某个视频链接吗?
不,打开播放器播放某个链接这个操作只是你以为的操作,其实那是你的播放器和你的手机足够强大,才能够什么都可以播放,但事实上你的手机能够播放的音视频内容少得很。
音视频的编码标准比较多(比如视频的 H.264、 AVS3,音频的 MP3、 AAC),封装格式(暂时理解为文件格式,比如 MP4、FLV)。常见的封装格式和过去二三十年常见的格式至少三四十种(时间稍微缩至二三十年,其实视频格式随着历史发展已经有数百种了) ,而单单 MP4 这么一个文件格式中可以存的视频编码格式至少也已经超过了 30 种。
如果只是按照 H.264 这么一种视频编码格式来看,还有按照参考标准提供的 profile 和 level 的组合,除了 profile 和 level 组合之外还有分辨率、是否支持 HDR 等参数的不同组合,其中根据 profile 和 level 做支持判断的话,并不是所有手机中的硬件解码器可以很好地全部支持。分辨率也并不是所有手机的硬件解码器能够全部支持。
举个例子说一下,我这里有一个视频文件:
为了方便理解,我把关键信息以文字的方式贴出来:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Volumes/My Passport/Test/video_source.mov':
Stream #0:0[0x1](eng): Video: prores (HQ) (apch / 0x68637061), yuv422p10le(bt709, progressive), 4096x2160, 944736 kb/s, SAR 1:1 DAR 256:135, 30 fps, 30 tbr, 30 tbn (default)
我用自己的电脑播放这个视频非常卡,主要是码率太高了,而且是用的 CPU 解码(软解码)。
按照追求画质的标准,这个视频足够好,但是我电脑播放的时候卡顿。如果我想要让它能播放,我需要把它变成我的电脑播放能力范围内的压缩标准来播放(硬解码可以支持,即使硬解码不支持的情况下软解码能够流畅),这个就需要转码了,把视频从我电脑播放效果不好转成能够让我电脑很好地播放的这个操作就叫视频转码。
那么我们再来梳理一下播放器跑在手机上应该是什么样。
1、苹果手机:苹果手机的硬件比较统一,视频解码器适配也很好,只要按照每一代产品一款手机适配即可。
2、安卓手机:安卓手机厂商多到很多手机品牌你可能都没听过,即使你听过的也有可能使用不同的手机硬件解决方案。
比如有的手机使用联发科的解决方案,有的使用全志的解决方案,有的使用高通的解决方案,有的使用海思的解决方案,而且视频解码模块还有很多选择,再加上有些手机厂商对自己信心充足,会修改和优化一下视频处理模块,这个时候播放器在安卓手机的视频解码就需要去适配各种解决方案了,视频硬解码失败的概率还是很高的,硬解码失败通常不会让视频无法播放,而是把处理流程跳到使用手机的 CPU 做视频解码,这也是为什么有时候你用手机播视频播着播着就非常烫了,因为你的 CPU 在持续地做三角函数技术,你可以理解他就是 sin(x) 和 cos(x) 这种计算,是浮点计算,而且是大量的浮点计算,起点是数十万次计算几毫秒或者十几毫秒那种,不能超过 40 毫秒,否则就是播放幻灯片了。
3、智能电视机:可以理解电视机几乎就是大号的安卓手机或者大号的苹果手机。
好了,播放部分会遇到的性能问题讲过了,结论就是并不是所有手机都能很好地播放所有的 H.264、 H.265 、 AV1 的视频,更不用说 H.266 、AV1 这种编码的视频了。
当然,如果不确定自己手机是否足够强悍,最好的方式还是在网上搜一下各种格式的视频文件。
4、院线:我们在电影院看的电影,因为播放设备硬件配置的远古,其实大多数 23.976 fps,但是我们现在视频拍摄的设备早就升级到 120fps 以上了,用 iPhone 拍视频都可以设置 60fps 来确保视频看上去更流畅。
不过我们在电影院看视频 23.976fps 的体验依然还是效果不错的,不是吗?当然,院线现在也开始上更先进的设备了。
5、传统电视机:我们的视频观众应该也包含传统电视机,这类电视机播放视频的时候,很多时候还是隔行扫描刷新的方式,所以制作出来的视频本身就是隔行扫描的视频。这样的视频很多时候在我们的平板 、手机或者电脑上播放有画面移动的时候就会看到明显的条纹。
简述:
播放器不是所有的视频都能很好地播放,取决于播放器的硬件设备和软件设备资源,是否足以支撑视频能够被很好地播放达到用户的最优体验。
七、体验
从视频生产到播放这个过程介绍完了,但是对于平台来说,还没完。为什么呢?
因为平台还要为视频生产者提供自己作品的展示平台,为观众提供他们能播放出来且顺利观看的视频,为观众推荐更多生产者提供的优质内容。尝试为观众提供更好的平台播放器使用体验。
那么平台都会做什么呢?
1、优化播放器,从播放器侧感知用户是否能够顺利地播放视频,帮用户尽量根据最优策略缓存即将观看的视频,让用户点击视频后立即可以看到画面和听到声音
2、优化播放器,先确认用户侧的播放器是否能够通过硬件解码器解码音视频,不能的话及时切换到软件解码音视频,如果出现播放卡顿的情况立即调整播放策略,跟平台要低一档的视频来确保用户能够流畅播放
3、本地存储播放器的日志,当用户遇到问题时能够收到用户的反馈
4、服务端统计用户播放日志,主要包括停留时长,播放卡顿,某一个视频是否有大量用户喜欢。平台会有专业的数据分析师或者 AI 技术来分析用户是否喜欢某一品类的视频,从而加大内容创作扶持力度来达到满足用户口味的目的,比如全景翼装飞行
5、有更优质的视频内容被上传到平台的时候,比如 HDR 上传量很大,4K 视频上传到平台的时候,平台的产品经理和研发会尝试把能力支持上,然后上线观察视频被播放的情况,这个时候会有 AB 两类数据对比,比如支持了 HDR 的视频和不支持 HDR 的视频被用户播放的时候,停留时长、播放卡顿、用户点开后点赞,等等大量的各个维度的分析,如果用户的数据是正向向好的情况,那基本上就会全网推动对应的能力上线,否则的话极有可能会不了了之。
这个就是大伙常说的:观众最终会用脚投票。我们也很无奈,甚至怀疑自己做这种高品质的能力的意义。
可以参考知乎章佳杰老师近期的回答
https://www.zhihu.com/question/790765906/answer/4626876825。
6、相信大伙播放部分视频的时候,会感受到手机会随着视频内容中气氛紧张的时候马达跟着震动,这跟前面说的 AB 实验是一样的,偶尔会看到有视频支持一些新功能,平台也在尝试着帮用户恢复对应的效果。
除了这个,还有各种在视频播着播着就有弹窗让用户点一下,接着剧情会跳入到另一个分支,这个通常叫互动视频,也是会通过 AB 实验来决定是不是要把实验变成常规能力。
7、为了让视频能够在所有播放设备上都可以被播放,通常会考虑统一视频编码,统一参数来达到更好的播放兼容效果。怎么样才能叫更好的呢?
那就是调整参数的时候做 AB 实验,这个时候播放器端用户的实际数据反馈就很关键,如果用户量下降了,平台就会归因找问题的根本原因。如果用户量不变,那就会持续观察,如果用户量正常有增长,基本上会毫不犹豫地变成常规参数。也是因为这样的操作,不少平台会针对各个场景做更细致的视频编码参数的优化调整,例如室内车评、室外车评、室内秀场、室外秀场、旅游视频、钓鱼视频、吃播视频等,编码参数都有针对性的调整,来确保用户最优体验。
举个例子吧:当我们看足球比赛的时候,大多数人关注的是足球在哪,球员的表现,偶尔会有关注观众的,广告牌等,很少有人会去关注草地上的草质量怎么样,球门角落是不是有一瓶矿泉水等,这个时候就会有编码对应的侧重点了。
当然,能把带宽消耗顺便也降低就更好了,比如用 H.265 编码来替换 H.264 编码,或者用 H.266 编码来替换 H.265 编码。
转码视频对 CPU 的开销通常也会被关注到,甚至是不是所有的手机都能播放 H.266 也会被测试。所以有时候我们会看到有些人的手机播放的视频是 H.265 编码的视频,有些是 H.264 编码的视频。
为什么用 H.265 替换 H.264 呢?因为压缩同画质的的情况下,H.265 压缩的视频体积会比 H.264 压缩的视频体积小一半还要多,而 H.266 就更优秀了。
至于清晰度被搞坏了,我只能也说,技术参考标准是一样的,不一样的是人,不同的人用相同的技术有可能会有不一样的结果。
简述:
平台也会努力满足用户们的需求,甚至帮用户挖掘需求,平台不是无脑上线任何功能,都会做 AB 实验来确定用户是不是真的喜欢。
毕竟养了很多产品经理和技术人员,如果不创新,不支持平台业务迭代,天天摸鱼也不太好。
八、平台如何养活自己
平台如果想要长时间地生存下去,离不开内容创作者,更离不开内容欣赏者。所以平台很多时候需要有大量的创作者和大量的观众,然后才会有很好的变现路径。
1、有可能是广告。对,就是我们买会员可以不用看广告,后来又变成了超级大会员才能不看广告的那种广告。还有的是不提供买会员——开屏直接就是广告,甚至手机稍微有点倾斜都会跳到广告链接里面。也有用户按暂停的时候播放的静音广告。
2、有可能是电商,播放视频的时候有引导视频中的商品在小黄车里面下单。或者在视频的某个角落有一个商品链接
3、观众觉得视频内容不错,给 up 主或者主播送礼、打赏,平台收提成
4、用户充了会员以后才能享受到的播放版权内容
5、经过最近这件事以后,还真说不定会增加超超级VIP才能播放的高清原片画质,当然这个还是要看对应的观众是不是用脚投票了。
简述:
平台有很多的变现方式能够让平台盈利,当然,如果变现途径并不顺畅,平台发展也会遇到一定的问题。
九、后续
最近几年经常有人会抱怨当前工作不满意,对当前平台有不满意的地方,主播骂官方之类的情况。
当我们看到不满意的地方,应该不只是我们自己对这个不满意的地方不满意,应该还有不少人也有同样的不满意,这个时候不正是一个很好的做一个更好的平台的契机么?
我们看一下 bilibili 的传记最开始的部分。
“Bilibili,全称为哔哩哔哩弹幕网,亦称哔哩哔哩,或简称为B站,昵称“小破站” ,其前身为视频分享网站Mikufans,该网站由网友 “⑨bishi” (徐逸)于2009年6月26日创建。他曾是A站忠实粉丝用户,但是无法忍受A站因为疏于管理而导致的不定期崩溃,于是出走,成立了B站的前身Mikufans。Mikufans建站的初衷是为用户提供一个稳定的弹幕视频分享网站,网站于2010年1月24日改为现名。此时的Mikufans的运营基本靠A站分化出来的部分人为爱发电,基本算是A站后花园。”
平台一般是商业公司,会针对创作者、平台、观众至少三方的利益做考量,然后取一个大家利益都不会太受损失的方案来执行。
所以一般创作者和观众对平台有意见的时候,通常是直接就流失了。这就跟去超市买巧克力一样,明治巧克力、德芙巧克力、Godiva 都有受众群体,尝过明治巧克力的人不喜欢的话通常会去选择德芙或者 Godiva,视频平台其实跟巧克力一样。
这里只说了视频部分,其实构建视频平台还有很多技术需要支持,比如云存储(存储视频需要用硬盘。哪怕是多个分辨率档位的视频,也需要硬盘来存储)、数据库、推荐系统、数据分析系统,日志系统等等大量的非视频技术。
所以,真的要自己单独建立一个新平台的时候,一定要考虑清楚是否真的是自己想要做的事情。
悟空刘歧(Steven Liu)成为FFmpeg社区委员会成员
END
热门文章
Rust非常安全编程语言,使Android漏洞大幅下降高通拟收购英特尔——Arm与x86之争到此为止?“革命性”「Safe C++」扩展提案:质疑Rust、理解Rust、成为Rust?
我有一个大胆的想法:呼吁Linus延迟退休!人称“Node杀手”的Deno正式发布2.0,这集又是Rust赢了!