早口キモオタの自分には、等倍のYoutubeは遅すぎる。
ありがたいことに、Youtubeには速度変更がデフォルトで搭載されている。
が、ブラウザ(タブ)を閉じると再度等倍になるという罠。
アカウント情報に紐づけてくれないかなぁ?
パソコンでYoutubeを見ている前提のお話。
この記事書いたあとに思ったのだが、今の多くのユーザーはスマホユーザーなのであまり参考にならないかも。
基本1.5倍速で見たい私
若い人は倍速で見るのが当たり前になっているらしい。
私も若くはないが、基本は倍速で視聴したい勢。
私の人生は広く浅くがモットーだ。
(深い方がいいけどw)
Youtubeを常時1.5倍速にしたい
さて、ここで冒頭で話した内容だ。
常にYoutubeを開いていればいいのだが、実際そうではない。
ふと気づいたときに「等倍」に戻っていて、動画視聴の途中で気づくのである。
あるある。
毎回速度変更を気にしていられないし、仕組みで解決しよう。
どんな時でもYoutubeの再生速度が1.5倍速になっていてほしい。
拡張機能を探す
GoogleChromeには拡張機能(アドオン)という便利な機能がある。
自分と同じ気持ちの人たちがアドオンを作ってくれているだろうと思ったのだが…。
残念ながらざっと探した感じは存在していなかった。
あったら教えてほしい。
ないなら作るぞ
ないなら仕方ない。
自作だ。
自分で使うだけのChromeアドオンを作成する
正直なにも使い勝手を考慮していないアドオンなら誰でも作成できる。
manifest.jsonを
{
"name": "Youtube - Speed Change",
"version": "1.0.0",
"manifest_version": 2,
"description": "Sample Chrome Extension",
"content_scripts": [{
"matches": ["https://www.youtube.com/*"],
"js": [
"content.js"
]
}]
}
こんな感じで作って、
content.jsを
window.addEventListener("load",main,false)
function main() {
// Timerに名前をつける、1000ミリ秒毎にjsLoadedを実行
const jsInitCheckTimer = setInterval(jsLoaded, 1000);
function jsLoaded(){
// 要素が見つかったら、clearIntervalでTimerストップ、再生速度変更
if(document.querySelector('video') != null) {
clearInterval(jsInitCheckTimer);
// 再生速度をx1.5に
document.querySelector('video').playbackRate = 1.5;
}
}
}
こんな感じにする。
※なんでJSだけスペース4なんだ
これを拡張機能に追加してあげて完成だ!
何をしているのか
Youtubeの規約的にどうなんだって話はあるが、CSSセレクタで取得した値を書き換えている。
糞ダサコードだが本職じゃないので許してほしい。
実現できているから良いのだ。
DOMが読み込まれる前にアドオンが走っていたようなので、wait処理も入れている。
これでYoutubeの再生画面に遷移すると、アドオンが発火し、自動でDOMを書き換えて1.5倍速にしてくれる。
我ながら完璧だ。
みんなも1.5倍速でみよう
1.5倍速で見始めると、もう等倍には戻れない。
ちなみに今回紹介したアドオンはあくまで自分用で作っているものだ。
YoutubeのUI上の再生速度は標準になっているが、1.5倍速になっているという不具合(仕様)もある。
等倍に戻すときは別の速度を選択してから、再度「標準」を選ばなくてはならないという不便なところもある。
でもそれで自分のやりたいことが実現できているのだから良いのだ。
直す気力もないし。
ちなみに、規約違反だったらこっそり教えてほしい。
コメント