短视频平台的那些事

短视频平台的那些事

文章目录

  • 短视频平台的那些事
    • [1. 前言](#1. 前言)
    • [2. 概览介绍](#2. 概览介绍)
    • [3. 业务框架](#3. 业务框架)
    • [4. 关键技术能力](#4. 关键技术能力)
      • [4.1 视频处理](#4.1 视频处理)
        • [4.1.1 FFMPEG技术](#4.1.1 FFMPEG技术)
      • [4.2 视频安全,合规](#4.2 视频安全,合规)
        • [4.2.1 视频安全审核](#4.2.1 视频安全审核)
        • [4.2.2 视频MD5校验](#4.2.2 视频MD5校验)
        • [4.2.3 视频AI指纹](#4.2.3 视频AI指纹)
      • [4.3 视频内容理解](#4.3 视频内容理解)
        • [4.3.1 视频分类](#4.3.1 视频分类)
        • [4.3.2 视频标签](#4.3.2 视频标签)
        • [4.3.3 视频质量](#4.3.3 视频质量)
      • [4.4 视频推荐,分发](#4.4 视频推荐,分发)
        • [4.4.1 分发](#4.4.1 分发)
        • [4.4.2 推荐](#4.4.2 推荐)
    • [5. 支撑域](#5. 支撑域)
      • [5.1 用户域-创作者平台](#5.1 用户域-创作者平台)
        • [5.1.1 等级、权益、资格认证体系](#5.1.1 等级、权益、资格认证体系)
        • [5.1.2 用户留存,促活体系](#5.1.2 用户留存,促活体系)
      • [5.2 数据分析领域](#5.2 数据分析领域)
      • [5.3 收益结算领域](#5.3 收益结算领域)
    • [6. 总结](#6. 总结)

1. 前言

过去几年,我一直专注于短视频平台的建设和开发工作。在这个过程中,我发现这个领域有着非常多的挑战和机遇,也涌现出了许多新的技术和创新。今天大家分享我个人的一些经验,希望能够为大家带来一些启发和帮助。

2. 概览介绍

通常一个短视频平台会有自己的视频输入服务(C端App侧 & Web端创作者平台 & 业务方API推送),视频处理服务(转码,水印,片头片尾...),安全服务(涉黄涉暴等安全检测),推荐分发服务(个人推荐,任意渠道推荐,可以超业务域分发,对接外部),数据分析服务(视频,用户相关播放数据和粉丝数据),结算服务(按数据分析结果进行收益结算)。 由于是视频类服务,其中还必须配置CDN文件加速和图片、视频防盗链系统。除了这些之外,实际中会有很多更深层次的或边缘性赋能的业务细节,但今天在这我将不去深扒,而围绕整体上层的功能特点为大家介绍下短视频业务的建设架构和核心能力。

3. 业务框架

以之前的业务举例,如下图有很多短视频相关的基础能力(视频处理,内容理解,审核,流通,分发,数据存储,数据分析)都统一建设到了我们的视频中台,可以大大的缩减新视频业务的对接时间,提高处理和传播效率。由不同的视频发布入口传入中台,在视频中台这个通用域完成视频剪辑处理和合法性判断,并将最终结果推荐分发到各个的渠道方,完成视频的整体流转,同时中台提供数据查询和分析能力。因此外部的视频发布平台(创作者平台、短视频APP)就可以在高度定制化自己的引流、促活业务的同时快速接入视频中台的处理能力,很好的达到了视频中台能力的"多路复用"的效果。

服务分层图:

4. 关键技术能力

4.1 视频处理

4.1.1 FFMPEG技术

多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给视频加水印等,一条命令就可以给视频添加很多效果,以下为一些简单例子(实际一条指令可以有很多复杂的操作,大家有兴趣的话可以自己去操作玩一下,使用的时候也需要注意CPU资源):

转码(修改视频格式,分辨率,码率...)案例:

bash 复制代码
//转码demo
//-i输入,-r 指定帧率,-s 指定分辨率,-b 指定比特率;于此同时可以对声道进行转码,-acodec 指定音频编码,-ab 指定音频比特率,-ac 指定声道数
ffmpeg -i out.ogv -s 640x480 -b 500k -vcodec h264 -r 29.97 -acodec libfaac -ab 48k -ac 2 out.mp4

截图案例:

bash 复制代码
/ffmpeg 通过指定 -vcodec 参数为 mjpeg,或者指定 -f 参数为 mjpeg时,可以输出 jpg截图,指定 -vcodec参数为png,或者指定输出文件扩展名为png
ffmpeg -i 1.mp4 sample.png -ss 00:00:05  -vframes 1 -an -vcodec mjpeg

水印案例:

bash 复制代码
//在视频左下角添加图片水印
ffmpeg -i input.mp4 -i logo.png -filter_complex 'overlay=x=10:y=main_h-overlay_h-10' output.mp4

//在视频左上角添加一条白色字体的文字水印
ffmpeg -i input.mp4 -vf "drawtext=fontfile=simhei.ttf: text='技术是第一生产力':x=10:y=10:fontsize=24:fontcolor=white:shadowy=2" output.mp4

4.2 视频安全,合规

4.2.1 视频安全审核

安全审核算法(类似易盾系统)对视频进行判断分析,任何涉黄涉爆的文字,图片,视频内容都将被检测处理,机器审核和人工审核进行双重干预。

4.2.2 视频MD5校验

对所有流入系统的视频进行简单MD5值计算,排除重复的视频。

4.2.3 视频AI指纹

对于高度相似度的类搬运视频,需要通过AI指纹算法进行相似度判重,将已有的高质量视频的AI指纹入库,任何新进的视频都将和指纹库的视频进行相似度对比(空间向量对比,词频碰撞对比),更多详情可上华为云或阿里云上搜索视频指纹相关服务进行了解。

4.3 视频内容理解

4.3.1 视频分类

视频分类算法是通过对视频进行抽样拆帧分析各帧的属性,例如美妆,风景,人文,建筑,游戏等不同类别,通过算法聚合高频分类得到视频的最终分类。

4.3.2 视频标签

同视频分类类似,视频标签算法都是通过算法取帧分析视频画面得到视频标签,但是视频标签会更加专注于一些关键词、热点词,更加具象化。

4.3.3 视频质量

任何视频都可以通过视频质量算法打出质量分数,从而更好的去定性一个视频,判别依据包含但不限于机器判别的视频分辨率、码率、帧率、黑白屏、乱码、马赛克以及人工判别的视频调性(与视频类目和标签相关度)。

4.4 视频推荐,分发

4.4.1 分发

分发主要指的是向不同视频接受渠道分发视频(结合用户黑白名单,渠道业务倾向),一般会有几种策略:

  • 按渠道定制视频分类分发
  • 按视频质量分发
  • 按视频标签分发
  • 全量分发
4.4.2 推荐

推荐主要是通过视频推荐算法是通过对视频进行推送,会结合各种大数据计算出来的用户画像与其对应的消费场进行高度融合,推送的对象可以是个人创作者也可以是业务渠道,在建设推荐算法的过程中会进行大量的AB实验(在播放数据、粉丝数据、收益数据等不同影响面进行对比)用于验证和优化算法。

5. 支撑域

5.1 用户域-创作者平台

5.1.1 等级、权益、资格认证体系

原创认证,实名认证,大V认证等都为关键的资质认证渠道,认证完成的用户在信用分,分发优先级,收益结算等都有优先处理权。

不同等级对应不同权益,定制化成长任务,等级提升会有流量、特权、金额奖励。

5.1.2 用户留存,促活体系

开设新手指导和各种各样的活动,这些活动在激励用户进行视频投稿时会区分不同用户群体,依据不同层次的用户画像(头部、腰部、尾部)开启留存,促活,品宣等激励策略。

5.2 数据分析领域

涵盖用户数据(粉丝数据,活跃数据,各类排行榜),播放数据(播放量,点赞量,收藏量,分享量,完播率等),以用户和视频两个不同维度(单篇,多渠道对别)多方面展示数据,让用户可以清晰便捷的查看自己的相关数据的波动情况。

5.3 收益结算领域

收益结算环节是每个创作者最关心的,所以必须要保证此步骤的透明、公正、及时(生产,反馈)、无误差以及查看分析的便捷性。

结算逻辑通常会开启定时任务自动化统计并分析流量收益、优质收益、活动收益等,保存进入预估收益明细,自动对生成预估对账单与结算单,C端和web端支持用户按指定结算周期查看、提现、审核、打款。同时必不可少的是结算相关的预警,因为涉及到金钱,结算中的所有环节都要有预警和补偿方案,从而保证结算业务的稳定性。

6. 总结

以上就是我总结的一些短视频平台的主要建设要点,相信大家已经有了一些了解,其实总体来说短视频业务非常依赖于高效的算法,利用它们去对输入的视频进行快速过滤、定性、推荐,这样就可以更好提高短视频流通的实时性与准确性。除此之外在创作者端的各种激励策略是最重要的,如何能保持平台的吸引力,打开视频消费市场,怎么才能很好的完成用户的留存、促活,所以实际中还有很多其他的辅助平台需要搭建,例如视频剪辑平台(视频剪辑)、MCN平台(个创+机构)、审核平台(机审,人审)、运营后台等,这些平台更多的是为了短视频的生产、审核、流程化、合规化做业务支持。

相关推荐
chengxuyuan1213_3 分钟前
python常用基础语法
开发语言·windows·python
得寸进尺的鸡丝面10 分钟前
tomcat官网下载历史版本
java·tomcat
罗政13 分钟前
PDF书籍《手写调用链监控APM系统-Java版》第7章 插件与链路的结合:Tomcat插件实现
java·pdf·tomcat
程序猿毕设源码分享网21 分钟前
基于springboot校园招聘系统源码和论文
java·spring boot·后端
山山而川粤36 分钟前
美食推荐系统|Java|SSM|JSP|
java·开发语言·后端·学习·mysql
小小药39 分钟前
012-spring的注解开发
java·后端·spring
找了一圈尾巴40 分钟前
Wend看源码-Java-集合学习(Queue)
java·学习
#sakura42 分钟前
javaEE
java·开发语言·java-ee
arong_xu42 分钟前
Modern C++ std::atomic简介
开发语言·c++·atomic
余~~185381628001 小时前
碰一碰发视频矩阵系统源码搭建,支持OEM
音视频