AbemaTVをStreamlinkで録画(ダウンロード)する方法

どうも、はまかわさきです。

今回は、割と多くの方から要望を頂いていたAbemaTVの録画(ダウンロード)方法についてです。
あまりにも多くのアフィカスブログが「スクリーン録画してね」「そもそも規約違反でつ!!れ!!」みたいなクソ記事しか書いてなくて頭に来たので…

…と言いつつ、基本はこちらの記事の受け売りですが…

【追記】なんかアクセスが増えてるみたいですが、もしこの方法で出来ない方いましたら管理人のTwitterまでお気軽にご連絡下さい。
基本暇人なので出来る限り対応したいと思います。

注意

  • 全て自己責任でお願いします。どこかから怒られても知りません。
  • 一応「AbemaTVの規約違反」であって(どっかにうpしない限りは)「違法」ではありません(そこら辺はYouTubeもニコニコも全て同じ)。
  • 私は技術的保護手段の解除には当たらないと判断していますが、割とグレーにはなるので怖いって方は今のうちにやめときましょう(ただ正直確かめようがない所ではあります・私は法の専門家ではないのでネットに強い弁護士にでも聞いてください)
  • 基本「アフィカスブログが「スクリーン録画ソフトで録画してねww」とか言ってるけど綺麗な画質で直接ダウンロード・録画したい」的な方向けです。画面録画だけで満足な方にはオススメできませんし面倒だと思います。
  • 一応言っておきますがPC必須です。スマホではソフトがないので無理だと思います。諦めるかPC買いましょう。
  • 目を通していれば分かるかと思いますが、.7zの圧縮ファイルの解凍方法も分からないようなPC初心者の方にはあまりオススメできません。そこそこ作業が難しい箇所があるのでPC中級者以上の方向けです。
  • そのうち対策されてこの方法が使えなくなる可能性も当然あります。そこをご留意のを上行ってください(2019年4月現在はこの方法で行けます)。
  • なんかバッチとかめんどくさいのでその内ソフト作ってexe化するかもしれません

前提用語

  • Streamlink…コマンドプロンプト上で実行する、AbemaTVを録画(ダウンロード)するのに必要なソフト(Python製)のこと。
  • abematv.py…StreamlinkでAbemaTVを録画(ダウンロード)するのに必要なStreamlinkのプラグイン(同じくPython製)のこと。
  • ffmpeg…コマンドプロンプト上で実行する、どんな形式の動画・音声でもまるっと変換してしまうウルトラスーパー高機能CUI動画/音声変換ソフトのこと。
    • 機能面で言えば有料ソフトと大差ないくらいの事が出来る万能ソフトですが、その分ファイルサイズが大きいので注意して下さい。
    • (念のため)基本コマンドプロンプトから実行するCUIソフトため、ffmpeg.exeをクリックしても何も起きません。
    • (あとGUIは)ないです。(ラッパーソフトは114514個くらいあります)
  • Streamlink-DL.bat…このダウンロード作業をURL・画質・保存先を入力するだけで簡単にできるようにする私の作成したバッチファイルのこと。
    • ダブルクリックで実行できます(デスクトップにでも配置して下さい)。
    • バッチの仕様がゴミ過ぎなのでそのうち通常のGUIソフト化するかもです…
    • Streamlink-DLと言いつつ基本AbemaTVのDLに特化しています。
    • バッチファイルの中身は実はメモ帳とかで編集できるので環境に合わせて適宜書き換えてください。
  • 生録画…AbemaTVの個々のチャンネルで流されている生の放送のこと。
    • どうやらCMに入るタイミングで映像が破損するようなので、基本的にはオススメできません(CMを手動回避すれば行ける可能性もあります)。
    • (基本的にはアーカイブが暫く残るので私はほとんどやったこと)ないです
  • タイムシフト動画…AbemaTVの個々に放映されていた番組のアーカイブのこと。
    • こちらはFFMpegで無劣化変換を行うことで正常にDL・再生できます。
  • ビデオ化された動画…AbemaTVで放送された後にAbemaTVビデオとしてアーカイブされる動画のこと。
    • いまいちタイムシフト動画との違いがよく分からないのですが、こちらもFFMpegで無劣化変換することで正常にDL・再生できます。
  • .tsファイル…MPEG2-TS形式の動画ファイルのこと。
    • AbemaTVの動画は全てMPEG2-TS形式で保存されます。
    • ちなみに、テレビで放映されている動画もMPEG2-TS形式です。
    • MPEG2-TS形式はファイルサイズ食う上になんか上手く再生できないため、上記のFFMpegを使用して.mp4形式に無劣化変換します(後述・ファイルサイズが20MBくらい減る上に画質が殆ど劣化しない)。
  • .mp4ファイル…みんな大好き.mp4形式の動画のこと。
    • 無劣化変換してできる動画ファイルです。普通に閲覧できます。
    • ようつべとかニコニコの動画はほとんど.mp4形式です。
  • 無劣化変換…動画ファイルの中身の動画、音声データをまるごとコピーして変換する方式のこと。
    • 動画ファイルはコンテナのようなものなので、中には動画データと音声データが入っています。
    • コンテナがMPEG2-TS形式の場合は主に動画がAVC形式、音声がAAC形式で入っているので、それを中身はそのままにMP4形式のコンテナに移し替えるイメージです。
    • ただファイルサイズが結構行くのでファイルサイズを削減したい方は無劣化変換ではなくビットレート指定して適当にffmpegで変換した方がいいかもしれません(ただその分画質は落ちます)

長くなりましたが、サラッと理解できれば大丈夫だと思います。
(上記の内容が微塵も理解できないと厳しい気がします…)

必要なソフトの導入

  1. 基本的にダウンロードしたソフトはC:\freesoft\以下に置くことを推奨します。
    • (Streamlink-DL.batのデフォルト設定をC:\freesoft\以下にしている他、C:\Program files\やC:\Users\以下だと上手く動かない可能性があります)
  2. ここで使うソフトは全てインストーラー等はありません。
    • 単純にダウンロード・解凍して任意のフォルダに配置するだけで完了です。
    • 後述の環境設定等の設定は行う必要はあります(Streamlink-DL.batを使う場合は必要ありません)。
  3. ※ここではStreamlinkはC:\freesoft\Streamlink\、FFMpegはC:\freesoft\ffmpeg\に置いてあること前提で話を進めます。

 

  • Streamlinkここ(Github)より一番上にある最新バージョンのStreamlink_for_Windows_Portable_○○○○.zipをダウンロードします。
    • 執筆時点のバージョンはv0.14.2です。
    • DLしたら解凍し、任意のフォルダに配置します。
    • フォルダ名はStreamlinkにリネームしておいて下さい。

  • abematv.pyここ(Github)にソースが置いてあるのでメモ帳にコピペしてabematv.pyとして保存するか、
    • ここ(Rawソース)を開くと生のソースが出てくるので右クリック→名前を付けて保存からabematv.pyとして保存します。
    • 先日Twitterに問い合わせがあったのですが、abematv.py.txtなどのファイル名にするとStreamlink側で読み込む事が出来ません。
      必ず拡張子を.pyにして下さい(.pyはPythonスクリプトの拡張子です)
    • DLしたらabematv.pyを(任意のフォルダ)\Streamlink\Plugins\以下に配置します。

  • FFMpegここ(公式)からDownload Buildボタンを押してダウンロードします。
    • バージョンはできれば安定版(画像では4.1・上の物は開発版です)、ArchitectureはそれぞれのOSに合ったものを選択(基本はWindows-64bitでおk)、Linkingは必ずStaticを選んでください。
    • DL(60MBくらいあります)したら解凍し、任意のフォルダに配置します。
    • フォルダ名はffmpegにリネームしておいて下さい。
  • Streamlink-DL.batこちらから私の作ったバッチファイルをダウンロードできます(使う方のみ・コマンド打つの方が楽(՞ةڼ◔)という方はDLしなくてOKです)。
    • 適当にデスクトップにでも配置してください。
    • DLした後、右クリック→編集から内部のソースが見れるので、上の方の設定箇所の部分を自分の環境に合わせて変更して下さい(C:\freesoft\以下にStreamlink・ffmpegを配置している場合は基本変更の必要はありません)。
    • ダブルクリックで実行できます。

環境変数の設定

※この作業は、後述のStreamlink-DL.batを使用する際には必要ありませんが、出来るだけ設定しておくことをお勧めします。

※環境変数の設定はWindows10とWindows7では画面が一部異なります。今回はWindows10の画面で説明します。

  1. Windows10の場合、検索窓から「システム環境変数の編集」と入力して検索結果に出て来た奴をダブルクリックします。
  2. システムのプロパティというウインドウが出るので、「環境変数」をクリックします。

  3. 環境変数というウインドウが出るので、システム環境変数の中のPathを選択し「編集」をクリックします。

  4. 環境変数名の編集というウインドウが出るので、「新規」を押します。
  5. すると入力できるようになるので、ffmpeg・Streamlinkそれぞれのexeファイルがあるフォルダのパスを入力するか「参照」を押してそれぞれのexeファイルがあるパスを選択します。
    • C:\freesoft\ 以下に配置した場合、ffmpeg・Streamlinkがあるパスは、
    • fffmpegが C:\freesoft\ffmpeg\bin 、
    • Streamlinkが C:\freesoft\Streamlink です。(適宜読み替えて下さい)

環境変数の設定は以上です。

この作業を行うと、コマンドプロンプトから「Streamlink」「ffmpeg」と入力するだけでStreamlinkやffmpegが実行できるようになります。
初心者の方には難しい(私も昔は難しかったです)と思いますが、私はもう慣れました(՞ةڼ◔)

録画(ダウンロード)方法

ようやく録画(ダウンロード)に入ります。

AbemaTVは 1080p・720p・480p・360p・240p・180p の全ての画質が用意されているので、画質設定をbestにしておけば基本1080pの画質でダウンロードされます。

ただ、アニメ等の場合、どうやら画質としては1080pなど全て用意されているもののソースの動画が720p・480pしかない場合もあり、
1080pを入力しても実際には720pの動画がダウンロードされてくる事もあります(ソフト的には1080pをダウンロードしたはずなのに中身が720p、みたいな感じです)。
そこは恐らく配信上の関係だと思うので仕方ないような気がします…

アニメによっても変わってくるようですが、1080pで配信されていた場合ファイルサイズが物によりますが300MBは確実に超えるので、出来ればTB級のHDDを用意しておいた方がいいでしょう。

ただその分1080pで配信されていればテレビで放映されている物(1440×1080)よりも綺麗な映像(1920×1080)でダウンロードできる上に(当然局ロゴは入らない)、
一応(無料では1週間の期間限定ですが)公式で配信されているものなので、合法的に1080pのアニメをダウンロードする方法という意味ではある意味唯一と言えるかもしれません。

Streamlink-DL.batを使用する方法(比較的簡単)

  1. デスクトップにでも配置したStreamlink-DL.batをダブルクリックして実行します。

  2. すると上のような黒いウインドウが出てくるので、
    ダウンロードしたい動画/生放送のURLをコピペしてEnterを押します。

    • 右クリックするとコピーしたURLを貼り付けられます。
    • 怖いイメージがあるかもしれませんが、このバッチを使う場合は出てくる指示通りに入力してEnterを打つだけなのでコマンドを打つ必要はありません。

  3. Enterすると次に動画の画質を訊かれるので、best・1080p・720p・480p・360p・240p・180p から選んで入力します。

    • 基本的にはbestを入力しておけば自動で1080pでダウンロードされます。
    • ただファイルサイズが大きくなるので、その際は480pとかにしておくとファイルサイズを削減できます(その分画質も荒くなります)

  4. 最後に動画の保存先を訊かれるので、保存したい動画の拡張子なしファイルパスを入力します。

    • エクスプローラーのフォルダをドロップするとそのフォルダのパスが入力されます。
    • ファイルパス中に空白を入れるとエラーになります(ファイル名に空白があってもフォルダ名に空白があってもダメです・アンダーバーかなんかにして下さい)。
    • 保存先は拡張子なしファイル名なので、間違っても¥をつけないで下さい(ソフト側がファイル名をフォルダと受け取ってしまいエラーになります)。
    • (フォルダを自動で作ってくれる高度な機能は)ないです(事前に作っておいてください)。

  5. これでEnterすると「ダウンロードを開始します」と出るので、Enterを押すと、ダウンロードとMP4への変換が自動で開始されます。

    • ファイルサイズが大きいだけに回線速度にもよりますがそこそこ時間がかかります。お茶でも飲んで待ちましょう。
    • ちなみに、Active Code page: 65001とか出てるのは文字コードをUTF-8にしているためです(こうしないと文字化けする)
    • 「他の動画/生放送もダウンロードしますか?」と出ていればダウンロード終了です。お疲れ様でした。

直接コマンドラインから実行する方法(上級者向け)

※上級者向け(コマンド操作に慣れてる人向け)なのでコマンドの方が楽とかいう人以外にはあまりオススメしません。(そんなに難しい訳じゃないですが)

  1. コマンドプロンプトを開きます。
  2. Streamlink “(AbemaTVの動画・チャンネル等のURL)”  “(画質(best・1080p・720p・480p・360p・240p・180pの中から選ぶ))”  -o “出力先のフォルダ\ファイル名.ts” という風にコマンドラインで実行し、動画をダウンロードします。
  3. このままだとMPEG2-TSのままなので、FFMPEGでMP4に無劣化変換します
    • ここでは無劣化変換していますが、ファイルサイズが気になる方は上記のように-c copyを外し、-vcodec libx264 -vb (変換したい動画のビットレート) -acodec aac -ab 128k とかにして変換するとある程度ファイルサイズ削減できると思います(ビットレートの値を下げるだけ画質は落ちますが、上げ過ぎると無駄にファイルサイズだけ増えるので注意してください)。
  4. ffmpeg -i “出力先のフォルダ\ファイル名.ts” -c copy “出力先のフォルダ\ファイル名.mp4″ という風にコマンドラインで実行し、動画をMP4に変換(コーデックの入れ替え)します。
  5. これでダウンロードは完了です。お疲れ様でした。

あとがき

なんか昔はこんな内容難しいと思ってたはずなのにいつの間にかクッソ簡単(՞ةڼ◔)ってなってるので慣れって怖いなあと思った(小並感)

コメント