前言
起因
去年在 B 站发现一个后期超强的 UP 主:修仙不倒大小眼,专出 PDD 这样知名主播的吃鸡精彩集锦,涨粉超快。于是想怎么做这样的 UP,遇到的第一个问题便是素材,精彩时刻需要手动从直播录播中剪辑,很低效。
用户习惯
我经常看直播,但是很少发弹幕和送礼物,只有在主播玩出很溜的操作或讲很好玩的事情时,才会发弹幕互动、送礼物支持,经常看直播的室友也是如此。
基于这个用户习惯,不难推断出在直播间的弹幕高峰或礼物高峰期,主播应该做了些好玩的事情,比如吃到鸡了,或者全队被歼灭之类的…这些时刻都可以作为精彩时刻的素材。能写程序自动截取这些素材吗?答案是肯定的。
实现效果
弹幕抓取
数据统计
根据弹幕和礼物高峰生成的精彩剪辑
实现思路
通过爬虫抓取 B 站直播间数据,找出弹幕激增的时间点,使用 FFmpeg 自动剪辑时间点前后的视频即可。
> bilibili-live-crawler $ tree -L 2
.
├── README.md
├── config.php # 配置文件:配置 FFmpeg 可执行文件的位置,录像的保存路径
├── const.php # 常量文件:API 地址,定义数据库用户名和密码、弹幕激增的判定参数等
├── crawler.php # 连接并抓取弹幕服务器的数据
├── cut_words
│ └── seg.php # 分词脚本:将弹幕做分词处理,可用于生成本次直播的词图
├── db.sql # 数据存储
├── edit.php # 剪辑脚本
├── functions.php # 公