yt-dlp 設定メモ書き youtube-dl win linux ubuntu podsync docker

2022-12-26 2022-12-26 Android側からの設定。

VPN接続のみでaddlist.txtを更新できるようにしました。

ファイルマネージャー+のリモートを使ってVPN経由でのアクセスをしています。

お気に入りにaddlist.txtを追加も可能。

 

2022-12-26 12:16:54 原因不明でダウンロードされない状況対応

xxxxx.mp4 has already been downloaded

なるほど。既に同じ名前のでファイルがあるためダウンロードできなかった。

こちらのURLのオプションを参考に出力ファイル名を追加しました。

――――引用ーーーーーー

-o, –output [TYPES:]TEMPLATE
ファイル名を指定する。TYPESの使い方は–pathsと一緒。使用できる変数は後述のOUTPUT TEMPLATEを参照。

ーーーーーーーーーーーー

-o “/path/%(title)s_%(upload_date>%Y-%m-%d)s_%(duration>%H-%M-%S)s_%(epoch-3600>%H-%M-%S)s_%(id)s.%(ext)s”

とはいえ、同じ日の再生時間まで同じだったらやっぱりかぶってしまうのかも?

とりあえずこれで様子を見ることにします。

 

2022-07-12(TUE)Docker名前がを指定するとエラーで起動しないのを対応しないと

 



docker: Error response from daemon: Conflict. The container name "/podsync_container" is already in use by container "多分以前使ったコンテナ名". You have to remove (or rename) that container to be able to reuse that name.



 

 

コンテナ名を指定して削除してから起動すれば良いと思われます。参考

 

2022-07-11(MON)Ubuntu16にインストール

 

参考

sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp

sudo chmod a+rx /usr/local/bin/yt-dlp

yt-dlp –version

f’You are using an unsupported version of Python. Only Python versions 3.6 and above are supported by yt-dlp’ # noqa: F541

一々バージョンが古いと言うのは不便なのでUbuntu自体のバージョンを上げるべきなんだけどね。

python -V
Python 2.7.12

ls /usr/bin/ | grep python

と、いや待てよ。ここまでやっておいてだけど、Dockerを使えばいいのではないか??

PodsyncのDockerでは既にyt-dlpとかffmpegとかを使っているのだから。

docker ps

ghcr.io/fqx/podsync-with-yt-dlp:latest

docker container exec -it コンテナID ash

bashではなくash

youtube-dl –version
2022.06.29

という事でyt-dlpではなくyoutube-dl として使えるようになっているようです。実態はyt-dlpでしょう。

このコンテナの中で実行すればいいのではないか?

youtube-dl https://xxxxxxxxxxxxxxx

で、ダウンロード可能でした。

yt-dlp.conf

Firefoxのクッキーの設定を抜きました。まあそうだよね。



-o "/app/data/video_downloadHelper/"
-U
-N 2
--embed-thumbnail
--no-mtime
--console-title
-a ../dlurl.txt


 

エラー

Postprocessing: file:/Invalid argument

とりあえず、

–embed-thumbnail

を抜いてみました。要はマージする所でエラーになっているようなので。

違ったみたい。ではこれか?

-U

-N 2

でもない。要はオプションのファイルの作り方が間違ってるな。とりあえず保留。

youtube-dl + URL直で指定すれば取りあえずダウンロードできるんだから。

後はDLのパスを指定して、定期的にコンテナ内を使って実行する。

DLリストは適宜追加するように設定しよう。

 

――――それとは別に、
分かった。文字コード、改行コードが違っていた。

yt-dlp.conf

をUTF-8
LF
にして保存。
win10から持ってきて再利用してたから間違ってしまった。



-o "/app/data/video_downloadHelper/%(title)s.%(ext)s"
-U
-N 2
--embed-thumbnail
--no-mtime
--console-title
-a ../dlurl.txt


 

正常に完了しました。

 

docker exec イメージ名 ash /docker内path/youtube-dlが走るスクリプト.sh

Cronで定期的に走らせるように設定。

スクリプトの内容




#!/bin/bash
echo カレントディレクトリに移動
cd `dirname $0`
sleep 3

FILE=../dlurl.txt
if [ ! -s $FILE ]; then
#空の場合の処理
  echo "$FILE は0byte、処理なし"
else
# 0byte 以上の処理
  ls -l $FILE
  echo yt-dpl_youtube-dl実行
  youtube-dl
fi
sleep 3
echo yt-dpl完了
sleep 3
echo DL終わったのでdlurl.txt削除
rm ../dlurl.txt
sleep 3
echo addedlist.txtをdlurl.txtにリネーム
mv ../adddlist.txt ../dlurl.txt
sleep 3
echo 空のadddlist.txtを作成
touch ../adddlist.txt
sleep 3
echo adddlist.txtのアクセス権を設定
chmod アクセス権 ../adddlist.txt
sleep 3
echo 完了




 

 

 

2022-06-27(MON)テストダウンロードなど

 

参考はこちらのGIGAZINEのURLです。

Win環境?Linux環境?

とりあえずWin環境でも使うかもしれないので。

yt-dlp.exe を使ってテストしています。

パスは変更しました。userフォルダだとファイルがいっぱいになってしまうので。yt-dlpフォルダにして、batでパスを変更します。

ダウンロード中は.part になります。ファイル名が。

スクリプトを後で作るとして、起動時にアップデート。

yt-dlp -U

オプションを一応付けておいた方がログイン状態でダウンロード可能。

–cookies-from-browser

yt-dlp –cookies-from-browser firefox URL

 

ダウンロードファイルリストを使ってダウンロード

yt-dlp -a [リストのファイル名]

ダウンロードパスの指定も必要と思われます。後に作るスクリプトで

yt-dlp -o “Path\%(title)s.%(ext)s”

進行状況を表示。

–console-title

 

yt-dlp.conf ファイルを使う。


-o "Path\%(title)s.%(ext)s"
-U
-N 2
--embed-thumbnail
--cookies-from-browser firefox
--no-mtime
--console-title
-a ../dlurl.txt

 

batファイルは以下

yt.dlp.bat

net use x: \\192.168.x.xxx\data
cd /d %~dp0
yt-dlp
pause

 

net useは外部HDDに保存しているため。Pathが無かったら再接続。

VPN環境での実行を想定するのでIPはローカルでOK.

フォルダ構成

\yt-dlp/win/各ファイル

/yt/dlp/dlurl.txt

複数PCから利用、winとLinuxで共通のdl.txtを使いたいため、dlurl.txtは1つ上のディレクトリとしています。

実行!

うまくDLできている。しかし、再度実行したら既にダウンロードが終わったやつは上書きされるのか?

ダウンロードが終わったリストを削除しないといけないのではないか?

 

f248.webm
f251.webm

とサムネイルがダウンロードされる。

をマージして、.mkvになる。
webmはDeleteされる。
更にサムネイルをくっつける。
と言う処理を行っていました。

なかなかに手間がかかっているな。

・・・・時間かかりすぎているな。とりあえず中断。強制的に落とします。

 

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です