Chromeの拡張機能を使ってYouTubeのチャット欄を快適にした話

YouTube Liveを見るとき、チャット欄を表示しながら見ると思います。
ただ、最近は荒らしだったり指示コメントだったりで見ていて疲れることもしばしば。
なので拡張機能を使って快適にしました。その備忘録です。

大前提:Chrome拡張機能ってなに?

これでも読んどけ。

前提:元々入れていた拡張機能(ただの布教)

  • FloatFlame

動画を流しながらコメント欄を見たかったので導入。今回は関係なし。

  • YouTube Auto Volume Changer

広告とかプレミア公開のクソデカ音量を自動で下げてくれるやつ。2022/4/29現在、不具合で機能しない模様。(作者さんのTwitterも更新なし。)これも関係ない。

  • Flow Chat for YouTube Live

チャット欄をニコニコみたいに画面に流してくれるやつ。切り抜き動画とかでよく見かける。Chrome StoreになくGithubにあるため導入が若干面倒。今回の本題。

本題:チャット荒れに対応する拡張機能がうまく動かない

「チャット欄の荒らしとか消せる拡張機能入れてぇ」って思ったときにまず入れるやつは多分YouTube Live chat filterです。

こちらとても優秀で、登録した単語を含むチャットをしっかり消してくれます。正規表現にも対応しているため自由度も高い。
コメント数が多いときに挙動がおかしいとか書かれてますが、多分YouTubeの仕様的にチャット欄に表示された瞬間に文字列を取得して処理を行っているので、「チャットを表示する→文字列取得→処理→文字列を消す」となってガクつくんだと思います。(知らんけど)

さて、この拡張機能、機能として十分すぎるんですが一つ問題を抱えています。そう、チャット欄からは消えるんです。先の拡張機能によって画面に表示したチャットは消えてないんです。

まあ自分の視聴環境が完全に悪いんですが…

おそらくですが、フィルターよりも先に画面表示の拡張機能が動く模様。そのため上のような状態になると。
他にも荒らし対応の拡張機能はあれど、どれもうまく働いてくれず。

そんなとき、「久々にチャット流すやつの更新するか」と思って調べてたらこんなの見つけました。

Flow Chat for YouTube Liveの設定画面(一部)

公式で対応策出てたやんけ。

解決:Chat Filter for YouTube Live

名前似てんな。(失礼)

こちら、機能としては先程のYouTube Live chat filterとほぼ同等で、単語などの設定をすることでチャット欄にフィルターをかけます。
ただ、大きな違いとしてYouTube Live chat filterは単語でのフィルター、Chat Filter for YouTube Liveは正規表現でのフィルターとなります。

Chat Filter for YouTube Liveの新規設定画面

実際に設定してみるとわかるのですが、YouTube Live chat filterは単語を羅列することでフィルターを作ります。そのため、とにかく消したい単語や絵文字を登録しまくると言った形です。
これに対し、Chat Filter for YouTube Liveは登録したい内容を正規表現で直接入力します。そのため、自由度は高いものの登録難易度は高いです。

正規表現の書き方についてはここ見るとわかりやすいと思う↓

設定は難しいですが、目的は画面に流れてくるチャットごと消すこと。こちらはしっかり果たしてくれます。
また、正規表現の書き方を知ってしまえばより柔軟な規制がかけられるのもポイント。私はこっちのほうがしっくり来ました。複数のルールを作ることができるので、状況に合わせて切り替えることもできます。

最後に難点を少しだけ。この拡張機能、使い方説明がほとんど見つかりません。「見りゃ分かんだろ」ということでしょうか。便利なんだけどなぁ…
また、設定できるルール数に上限があるもののその表示はないとのこと(ネット情報)。それとは関係なく個人的に不具合?も見つけてます。

時間があったら使い方的な記事も書くかもしれない。(望み薄)

結論:YouTube Liveをより快適に

結局のところ、快適に視聴するためには自衛をしなければなりません。
今回はFlow Chat for YouTube LiveとChat Filter for YouTube Liveを組み合わせることを前提に書きましたが、単独でもかなり有用な拡張機能だと思います。
みんなが不快にならずにYouTube Liveを見れることを願って。

付録:設定してるやつ

ついでなので自分が設定してるものも公開しておきます。

長文を消す

Filed: Message
Condition: Matches Regular Expression
Value: .{40,}

そもそも長文のチャットって目障りになりがちです。なので長いのは消してます。あと荒らしは長文書きがちなのでそれも消えます。
Valueの数字を変えれば消す長さを変えられます。
ただここで問題が…どうやら文字カウントの対象が「ユーザー名+メンバー状態+チャット」になっているらしく、ユーザー名が長いほど短文でも消えます。ここなんとかして…

スタンプ以外の長文を消す

Field: Message
Condition: Matches Regular Expression
Value: [^(〇〇)]{20,}

「〇〇」には、視聴しているチャンネルのメンバースタンプの先頭についている文字列を入れます。つけてないチャンネルだと使えないけど…
またまた問題点なのですが、メンバースタンプは登録しているスタンプ名でカウントされます。なので一文字でも結構な文字数になります。
「長文は消したい…でもスタンプ芸は見たい」といったときに使えると思います。
ま、普段はこの設定OFFにしてるんですが。

短文荒らしを消す

Filed: Message
Condition: Matches Regular Expression
Value: (よな)|((けど)(な|))|(だ(が|ぞ))$

先の設定だけだと短文の荒らしチャットが消せません。なので、特徴的な語尾を設定することで対処してます。
この設定で消せる語尾は以下のとおりです。

  • よな

  • けど

  • けどな

  • だが

  • だぞ

ここをうまく調整することで指示コメも消せます。

長いユーザー名の人を消す

Field: Author
Condition: Matches Regular Expression
Value: .{15,}

荒らしって何故かユーザー名が長い人が多い(気がする)んですよね。アルファベットだったりフランス語とかで使うやつだったり。なのでそこらへんを消します。
弊害としては海外ニキも消えやすいことでしょうか…申し訳ない…

いいなと思ったら応援しよう!