朝尘的小站

朝与尘的世界

各位观众姥爷、帅老 DD、单推人新年好,感谢大家在去年来看 DD 机传的自动切片或是我自己剪的切片又或是写得专栏(如果有的话,如果没有的话感谢您能点进这篇专栏),特别是要感谢愿意关注我这个“某种意义上是蹭热度”的监控室老大爷的粉丝们。这一切都是我两个月前决定开始搞这个项目时所没有想到的。

所以年终总结的最开始,就是一个经典问题——**是什么把你变成这样的,H_****__吗?**某种意义上讲还真是这样的。虽然说去年可以算是虚拟区得到巨大发展的一年,特别是去年上半年很多人的生活都因为疫情而受到了巨大的影响,某种客观意义上给虚拟区的井喷式发展提供了契机。尽管如此,上半年我还是一个切片型边缘 DD,相比之下,各位经常能在我的切片的 staff 表里看到的破扇子,则是狮子组勤勤恳恳的工具人。后来的事情大家应该都熟,草台班子到了,泥潭因为冲蝗和高效引流都快成了虚拟区唯一指定论坛、奇迹之夜……就像冰糖说的那样,V 的一个月相当于“人间”一年,今年最后三个月则颇能体现出这一点。

当时我正好在研究 GPT,于是用 GPT-2 整了个活——拟态发言生成。当然这玩意只能图一乐,实际上没有什么作用。不过这件事(包括在泥潭乱逛)让我遇到了一些有趣的人,甚至有人私信提供 5ch 语料库,多多少少感受到了一点早期互联网的氛围。再之后,我看见了 CNFurikana 这个项目,当时好像还是 tcl/tk 做的界面(后来换成了 qt),多少有一种看到了当年刚开始编程写 GUI 的自己。于是乎,我用中午两个小时的时间开发了一个 web 版本以方便使用,并且在当天晚上发了出来,意外地非常受欢迎(也要多谢 DD 情报局的转发)。这让我开始考虑整上一些更有趣的东西出来,于是乎一波头脑风暴之后有了很多的想法,当然在去年首先做也是唯一一个完成的就是这个切片型 DD 机。

作为一个切片型边缘 DD,我十分认同切片对于虚拟主播(也就是直播势、VLiver)的重要性,因为全程高能的直播确实很少见,直播中的绝大多数时间都是相对平静的,可以很好地固粉却很难涨粉,而相比之下来自直播中的高光时刻的切片,则相对容易得到曝光并一定程度上转化为粉丝,一是切片包含了更精华的内容,二是切片时间更短。因此就想做一个自动录播子哦对那个切片的工具,不仅能方便我当监控室大爷(不用开很多个直播间,可以之后看精华内容),也能用来方便后面进一步剪辑。最开始的计划还有自动轴、STT 和自动翻译的功能,但是发现成本太高,效果不好于是砍掉了,就剩下目前的自动录播、自动切片、提取弹幕关键词作为标题和自动上传的功能,并且后续也在自动切片的基础上人工添加字幕形成最终的切片。(地址:https://github.com/AsaChiri/DDRecoder,欢迎试用并反馈)。说点题外的,在 11 月 25 日我用这个工具传上了第一个自动切片的时候,我觉得这个工具基本可以完成了,然而……我没有考虑到主播们日常无法独立完成直播、尤其无法独立下播,导致出现了各种各样我没能预料到的问题,以致于进行了多达两次的代码重构,总之,有一些离谱。

因为这样的原因看了很多事情、认识了很多有趣的人与灵魂,有时候会在想:Vup、Vtuber、VLiver 到底是什么?其实他们与 Up 主、Youtuber 或者主播本质上没有区别,都是为了让人能够展现自己。正所谓“天生我材必有用”,每个人都有独特的才能,每个人多多少少都有一些表现欲。有些人可能在颜值这个过去的重要因素上不那么吸引人(其实无声系 V 的出现,说明完全可以靠文字打动人,如同新时代的作家一般),有些可能有现实生活上的顾虑导致表现欲被压制了,也有可能是某种意义上的社会不适应者等等,但相关技术的出现使得他们有机会能够表现自己,成为一名 Up 主、Youtuber 或者是 Liver,同样地展现自己、带来欢乐与思考。甚至某种意义上可以预言,技术的进一步发展带来的会是更加的去中心化,会有更多的人利用新技术表现自己。

当然这个思考也让我决定弄一个《Vup/VLiver 工具指南》的栏目出来,去年更新了关于 BiliChat 的文章。毕竟虚拟区的很多工具都在早期阶段或是依靠个人用爱发电在维护,却又很大程度上是必需品,如果能够让更多的人能够上手这些工具更好地进行表演或是创作,更是某种意义上是针对于 VUP、Vtuber 和 VLiver 初心的进一步推进。技术的普及,带来的会是更精彩的世界。

说到这里,有必要说一说今年的计划了。目前我这里的自动切片机还会继续运行(最近考虑给他搬个家),精选切片也会持续产出。另外欢迎大家试用代码来关注你所喜欢的直播并反馈意见,我会持续更新。另外,之前的头脑风暴里还有一些没有实施的计划,包括各种弹幕工具的集成体(?)、用新的公开算法倒腾面捕软件(??)、给切片机约个形象(???)等等。此外《Vup/VLiver 工具指南》应该也会不定期更新。除此之外,今年我还考虑可能做一个 Python 教程系列,提供高实用性的对零基础友好的 Python 教程(现有的 Python 教程历史包袱太重,而且常见的编排开幕类型 + 格式化输出属实劝退)。(其实想法很多,但是能够付诸实现的有限,毕竟谁不想当顶级抓娃娃机呢?)

前言

之所以想到做这个栏目,是因为各种直播事故看得太多了。相比传统主播,Vup/VLiver 开播需要操作的东西更多,相比之下有更大的可能遇到各种奇奇怪怪的问题。再加上许多 Vup/VLiver 用到的工具大多来自于开源社区用爱发电,相比商业软件确实可能在用户体验方面存在不足。虽说有句话叫做“久病成医”,但是作为秃头程序员兼监控室老大爷,在今天在希希那里看见又一次 BiliChat 掉线之后,实在是忍不住心血来潮写了这么一个专栏,主要还是希望能够提供一定程度的帮助。

为什么要使用本地 BILICHAT 服务器

BiliChat 的作者 3Shain 大佬自己提供了一个运行着 BiliChat 的公共服务器,让很多 Vup/VLiver 可以非常简单地使用 BiliChat。而且正如 BiliChat 的网站上显示的那样,使用公共服务器的 Vup/VLiver 非常的多,这无疑会给公共服务器带来很大的压力……以及随时有可能的掉线。正如 3Shain 自己所写的一样“请优先使用本地部署版本,虽然公共服务器能保证 99% 的稳定性,但因公共服务器调试/故障/宕机造成直播事故,BILICHAT 不会为此负责。”所以为了 避免可能的直播事故,使用本地 BiliChat 服务器是一个更好的选择。而且,使用本地 BiliChat 服务器的效果与使用公共服务器无异,且几乎没有特殊要求,因此是一个非常棒的选择。

用公共服务器的非常多

但是 3Shain 大佬写的本地部署教程太简略了,对于非计算机行业的绝大多数 Vup/VLiver 来说等于没说,而且官网上的本地版链接是空的(离谱),所以专门写了这么一个专栏来介绍如何使用本地 BiliChat 服务器。教程主要分为两部分,一是如何安装,二是如何启动。

如何安装本地 BILICHAT 服务器

BiliChat 需要一个名为 Node.js 的软件作为基础,因此安装本地 BiliChat 服务器主要就是安装 Node.js。本文提供了两种方式,一是手动下载安装,二是使用脚本自动安装。

手动下载安装 Node.js 和 BiliChat

要安装 Node.js,首先要下载。Node.js 的下载地址是 https://nodejs.org/zh-cn/ 点击进入后会看到这样的界面。(下载平台根据各位 Vup/VLiver 所用的系统有所不同)

直接点击左侧的大型绿色按钮(长期支持版)下载,并等待其下载完成。下载完成后双击得到的安装包运行即可开始安装。

安装过程就是一路点击 Next/Install。完成后 Finish。

到此为止 Node.js 就安装完成了,接下来就是安装 BiliChat。对于使用 Windows 10 的各位,只需要在开始菜单按钮上右键打开菜单,选择“Windows Powershell(管理员)”,打开后会看见一个类似于这样的界面。

此时,键入或者复制一下内容并按下回车。等待其执行完成得到类似的结果安装就完成了。

使用脚本安装 Node.js 和 BiliChat

本来我个人想推荐这种做法的,毕竟可以一键完成,然后发现我没有签名不好发布脚本,所以只能把脚本放在这里,需要自己新建一个脚本,将内容复制进去然后运行。脚本内容如下:

首先我们需要自己新建一个脚本。首先我们需要打开后缀名显示。我们需要点击 Windows 资源管理器菜单栏上的“查看”选项卡。

然后在“文件扩展名”前的方框中打勾。

接下来我们新建一个文本文档,然后对它重命名,将其原有名字完全清空,然后重命名成以下的文件名(请注意最后是阿拉伯数字 1 不是 l,建议复制粘贴)

此时会弹出对话框提示,选择“是”。

完成后,双击打开,将上面的代码粘贴进去保存即可。

在这之后,右击该文件,选择”使用 powershell 运行“。

此时如果您的系统版本比较早,可能会收到提示”……在此系统上禁止运行脚本……“。(如果没有可以忽略)此时只需要在开始菜单按钮上右键打开菜单,选择“Windows Powershell(管理员)”,打开后会看见一个类似于这样的界面。

此时,键入或者复制以下内容并按下回车即可。

接下来你可能会看到类似画面

当出现上一张图片一样的画面(包含提示“NodeJS 下载完成”,“NodeJS 安装完成“和”BiliChat 安装完成”)后,按回车即可退出,此时安装就完成了。

如何运行本地 BILICHAT 服务器

安装完成后,需要在每次开始直播前开启本地的 BiliChat 服务器,才能正常工作,这也可以有两种办法。

一是在开始菜单按钮上右键打开菜单,选择“Windows Powershell”,打开后会看见一个类似于这样的界面。

此时,键入或者复制以下内容并按下回车。

就会看到如下画面。

此时,就可以类似于使用原本的公共服务器一样在 OBS 中添加浏览器源了,只需要将原本在 URL 处填写的 https://bilichat.3shain.com/gkd/<你的直播间 ID> 改为上面提示的 URL(比如说我这里是 http://localhost:4000/gkd/<你的直播间号> )即可。有一点需要记住,在下播前,请务必不要关闭这个窗口,否则会导致 BiliChat 掉线。

第二种方法本质上没有区别,但是是找到 BiliChat 实际所在的位置,之后创建一个快捷方式,之后双击快捷方式即可运行。那么,BiliChat 实际所在的位置在哪呢?如果是跟着本文安装的话,你的 BiliChat 应该在以下路径中。其中<你的用户名>请根据你的实际用户名自行判断。

另外,由于 AppData 默认隐藏,因此需要以下步骤来显示隐藏文件夹。我们需要点击 Windows 资源管理器菜单栏上的“查看”选项卡。

然后在“隐藏的项目”前的方框中打勾。

这样就可以在文件夹里找到 bilichat.cmd 了,右击选择发送到 - 桌面快捷方式”,就可以在桌面上看到新建的对应的快捷方式了,每次开播前双击打开,就可以看到以下界面。

同样的此时,就可以类似于使用原本的公共服务器一样在 OBS 中添加浏览器源了,只需要将原本在 URL 处填写的 https://bilichat.3shain.com/gkd/<你的直播间 ID> 改为上面提示的 URL(比如说我这里是 http://localhost:4000/gkd/<你的直播间号> )即可。有一点需要记住,在下播前,请务必不要关闭这个窗口,否则会导致 BiliChat 掉线。

到此,关于如何安装和使用本地服务器版本的 BiliChat 就介绍完了,如果有什么问题可以在评论区留言或者私信我,我会尽量解答,也希望看到本文的 DD 多多转载,看到本文的 Vup/VLiver 能够直播顺利,在虚拟的世界里留下属于自己的华章。

如何使用?

本项目在 Github 和 Gitee 上部署,欢迎使用
https://cnfurikana.asachiri.com/
https://cnfurikana.github.io/ (国外访问速度较快,国内访问速度较慢)
https://cnfurikana.gitee.io/ (国内访问速度较快,国外访问速度较慢)

此外本项目支持 PWA,使用支持 PWA 的主流浏览器访问本工具,你可以找到将应用安装到本地的按钮,通过这种方法,你可以将本工具安装到本地,像本地应用一样使用而无需每次打开浏览器访问工具页面,而且安装到本地支持全平台。

简介

本项目是收到 Khadaaa 的 CNfurikana 项目的启发,开发的第三方 web 版本,主要是希望通过 web 版本能够让这个工具使用起来更加方便。

Khadaaa 的 CNfurikana 项目的 NGA 原帖:https://www.bilibili.com/read/cv8366379

Khadaaa 的 CNfurikana 项目的 Github 地址:https://github.com/Gleiphir/cnfurikana

本项目有什么功能特性?

+ 为输入或上传的文本中的汉字注音,可以标注假名或者拼音,并可选择是否标注声调。
+ 基于 HTML5 ruby 特性,注音位置更加准确。
+ 基于 web,使用更加方便。
+ PWA 支持,可以在任意支持的平台将其安装到本地使用。
+ TTS 支持,可以直接朗读输入的文本的中文发音。
+ 多语言支持,支持简体中文、繁体中文、英语和日语。

以后再也不用担心不会念舰长和 SC 发送者的名字了;Hiiro 和咩栗也不用怕 鹀鮾簋麳簟懎嶀 的 SC 了

今天去团长直播间发现还是舰长感谢回,字幕组辛苦了;如果有这个工具或许会方便一些?
而且也可以帮助中文学习 (各种意义上
欢迎各位 DD 向有需要的 Vtuber 和字幕组推荐本工具~

已知问题

从上传文件中读取文本后需要刷新页面才能上传文件。
日语翻译为谷歌娘翻译,存在不准确的情况。
如果遇到其他使用上的问题,欢迎向我反馈。

讨论贴:https://ngabbs.com/read.php?tid=24273071 或者也可以直接在此处评论或在 Github 发 issue

开源

项目地址:https://github.com/ZhaoWeicheng98/cnfurikana-web
开源许可证:MIT

致谢

Khadaaa 的 CNfurikana 项目
vue.js, element-ui, pinyin.js, cnchar.js, speak-tts.js

0%