Last modified: Thu Aug 20 23:46:32 JST 2020

[Fire タブレット関係に戻る]

YouTube 動画をダウンロードする方法

YouTube をダウンロードしてオフラインで動画再生なんて法的にアウトだと思っていましたが、調べた結果、そうではないという結論に達し、解説する事と致しました。2020年6月成立、2021年1月1日に施行の改正著作権法も考慮しています。

法的側面

YouTube 側は、コピー可としている動画以外はダウンロードできないとしているものの、個人的に保存することに関しては、以下に説明する、違法な権利侵害コンテンツの場合を除いて著作権保護の侵害とはされないので処罰対象にならない。

ダウンロードするだけで罪になる物

しかしながら、そもそも YouTube には、違法にアップロードされた音楽や映画や漫画作品などは無い。もしあれば、速やかに削除される。

よって、YouTube 側は動画はダウンロードしないでくれとは言っているものの、YouTube には、ユーザーがダウンロードしたら著作権侵害の罪に問われるような動画は無いので (有料で映画が見れる会員等になっている場合は、そのような作品動画に関しては話は別) ダウンロードを禁止する法的根拠は無い。

要するに、音楽映画や漫画など本来は金を払わないと見れないコンテンツを違法にアップロードされたものに関しては、私的利用もへったくれもなくダウンロードしただけで違法となるが、YouTube で無料で見れる「踊ってみた」や著名ユーチューバーの動画、ペットの動画、その他に関しては、ダウンロードは違法ではない。YouTube は法律を作れるわけではなく、著作権法で処罰対象にならない行為を YouTube が勝手に処罰はできない。あくまで「ダウンロードしないで」とお願いしているに過ぎない。そもそも、YouTube にある動画の所有者は、アップロードした作者の物である。作者がアップロードして YouTube のサーバーを借りて公衆送信している物を、YouTube が勝手に「これは俺の物だ、ダウンロードしたら刑事罰だ!」などとはできない。

YouTube をダウンロードする方法

全般的に言える事ですが、YouTubeは「ダウンロードさせまい」と、猫の目のように仕様変更します。そのためか、以前は便利だと評判の良かったダウンロードツールも、追従できなくなって「ダウンロードできず」になっている場合があります。最近はアップデートでが迅速な youtube-dl しか使っていない (これを使っていれば他の必要性が感じられない) ので、 youtube-dl 以外は簡単な紹介になります。

PCでダウンロード

ClipGrub

ClipGrub は無償です。タブレットでは動きませんが、とても使い方が簡単なアプリです。Windows版もありますが、Linux 版は YouTube 以外の動画サイトからのダウンロードにも対応しています。

もしかしたら、今のバージョンでは YouTube のダウンロードができなくなっているかもしれません。

Craving Explorer

10年位前には使っていましたが、今も公式サイトWikipediaの記事がありました。

Fireタブレットでダウンロード

Clipbox

現在、Google の Playストアからダウンロードできるバージョンは、YouTube の動画をダウンロードする機能が無くなっています。。詳しくは「ClipboxでYouTubeの動画がダウンロードできなくなった」とアプリの説明文を参照願いいます。YouTube は以前から Google に買収されていますので、自社の利益を損なう YouTube の動画がダウンロード出来るようなアプリを Google Play から配信しないようにしたのだと思います。【お知らせ】名称・一部機能変更のお知らせもご覧ください。

YouTube がダウンロードできる Clipbox の過去のバージョンとしては 1.5.9 がネットで挙げられていますが、1.6.2 はどうなのか、など詳しいことはわかりません。これのどれかをインストールすれば可能なのかもしれませんが、私自信はテストしていないし、マルウェアを仕込まれていないと自信を持って紹介できるAPK配布サイトはありません。定評のある配布サイトは、このプログラムは配布していないし、配布している所は、怪しげな所が目に付きます。

getvideo.at

getvideo.at というサイトを利用すると、タブレットにアプリをインストールする必要もなく、ブラウザで YouTube 動画をダウンロードできました。もしかしたら、今のバージョンでは YouTube のダウンロードができなくなっているかもしれません。

dirpy

使えるのかわかりませんが、公式サイトがあるようです。

youtube-dl

youtube-dl は、Python のスクリプトです。仕様変更への追従が早いのが特徴。Fireタブレットで動きます。コマンドラインツールです。これは難易度が高いので、手取り足取り説明しないといけない人なら出来ないだろうから簡単に書きます。こういうやり方が好きという人向け。

手順

Google Play から Termux をインストールします。無償でサイズは僅か215k。それでいて非常に高機能。使い方は難しい。root 不要。なお、Android 5 および 6 向けは、2020年1月をもって開発終了となりました。

Termux コマンド操作例

他に足りないコマンド等があったら、入れておいてください。いっぽう ffmpeg は、入れちゃ駄目です。 (後述)

root 権限は無いので、ユーザー権限とディレクトリで動かします。

便利設定
termux-setup-storage

これで、$HOME/storage/shared/ 以下にシンボリックリンクが張られます。

パスを通す
vi ~/.bashrc
export PATH=$PATH:$HOME/bin

この位でも youtube-dl は一応使用可能ですが、不便なので簡単なスクリプトを書きます。

スクリプトの例

vi ~/bin/you.sh としましょうか。 (他人が使うことを想定していない、いい加減な作りにはなっていますが)

python $HOME/bin/youtube-dl --o '$HOME/storage/shared/Movies/%(title)s.%(ext)s' $*
ls -l $HOME/storage/shared/Movies

この、謎の %(title)s.%(ext)s というのは、youtube-dl の README に書いてある通りの python の変数なので、私に聞かないで README を見てください。シェルからだと、シングルクオーテーションで囲わないと動きませんでした。

実行例
you.sh https://m.youtube.com/watch?v=E6mkdyoPfYk

などとすると、動画が Movies のフォルダに保存されます。

ダウンロードしたい URL を列挙したファイルを、適当な名前にして保存し、次々にダウンロードする場合は、例えば list という名前だと、

you.sh -a list

となります。このあたり、手抜きスクリプトっぷりがバレますが。

youtube-dl は、README によると、プレイリストの動画を全部ダウンロードするといった事も可能なようで、使いこなせれば非常に強力なようです。

youtube-dl のアップデート
youtube-dl -U
ftp でファイルを転送する例
ftp
open 192.168.10.73 2221
francis
francis
bi
cd どこぞ
prompt
mput *.mp4
bye
ffmpeg の件

youtube-dlを使ってYouTubeから最高画質で最高音質の動画をダウンロードするを参考に、ffmpeg も入れて、 youtube-dl -f bestvideo+bestaudio --merge-output-format mp4 等を試してみましたが、こちらのミス・力量不足なのかもしれませんが、「やったぁ!」と喜び勇んで出来上がった mp4 を再生すると、画像が止まったり出なかったりでまるで駄目。挫折を味わいスクリプトを元に戻しても駄目。依然として、勝手に動画と音声を別々にダウンロードして、マージして、観賞に耐えない mp4 ファイルができてしまいます。「なぜだ!」「まさか?」と思って、ffmpeg をアンインストールしたら、以前同様に、映像と音楽を同時にダウンロードし、ちゃんと再生できる mp4 が得られました。

youtube-dl は、賢いので、ffmpeg があると、それを使った動作になるのかもしれないです。(youtube-dl のソースを追いかける気力は無いです)

bestvideo+bestaudio --merge-output-format 、みたいな指定をしなかった場合、youtube-dl はデフォルトでビデオとオーディオがひとつになったファイルのうち最良の物をダウンロードするようです。心残りではありますが、これで手を打つことにします。

microSD のエリアに保存する方法

Android のセキュリティが強化されたため microSD には、termux が使うエリア以外は直接の保存はできません。SAFの枠組みで書き込む方法も提案されたようですが、本質的に、termux はプログラムが実行可能なシェルなので、それも不適当として採用は見送られました。よって普通には、 Ghost Commandar など、microSD に書き込めるファイルマネージャーで移動してください。

どうしても書き込みたい場合は、UserLAndでSDカードにアクセスを参考に、 com.termux のディレクトリを作成しておいてください。これも、Ghost Commandar で作成できます。 (Ghost Commandar は SAF が使用可能なので) 後は

$ ls /storage
14A7-635B  emulated  self

とすると、端末一台ごとに異なりますが、microSD のマウントポイントが表示されます。この例では 14A7-635B でした。そこで you.sh を、例えば以下のように修正します。

python $HOME/bin/youtube-dl --o '/storage/14A7-635B/Android/media/com.termux/%(title)s.%(ext)s' $*
ls -l /storage/14A7-635B/Android/media/com.termux

これで YouTube の動画の保存先が microSD になります。Fireタブレットは内蔵ストレージが狭いので、microSD に保存できると便利です。なお、VLCプレーヤーなどは、 microSD の、 Movies フォルダでなくても、保存された動画を再生できます。ですから、YouTube を microSD にどんどん保存して、 VLC で再生 (Phots でも可能) する事も可能です。

おまけ: wget
YouTube とは違う話ですが、mp4 ファイルがWebサイトからダウンロードできるようになっている場合、wget で直接 microSD にダウンロードする事が可能です。例として
cd /storage/14A7-635B/Android/media/com.termux
wget どこぞ

といった感じです。

NHK World の VOD をダウンロードする方法

上記の youtube-dl の、最新版を使えば可能です。時々 NHK World の動画配信の仕様が変わるので、youtube-dl でも古いバージョンではダウンロードできません。

以下は Linux PC 用のスクリプトですが

/usr/local/bin/youtube-dl -o '%(title)s.%(ext)s' $1
chmod 644 *.mp4

ダウンロードした動画を再生する

VLC for Android などの再生アプリでダウンロードした YouTube 動画を再生します。VLC は無料で広告も出ず気に入っています。


[Fire タブレット関係に戻る]