youtube-dl を使用して、特定のブログをアーカイブしています。カスタム bash スクリプト (tvify と呼ばれる) を使用して、コンテンツを Plex 対応のファイル名に整理し、後でホーム Plex サーバー経由で再生できるようにしています。
ブロガーが同じ日に複数のビデオを投稿しない限り、コンテンツのアーカイブは正常に機能します。その場合、スクリプトは特定の月/日付に対して複数のファイルを作成し、プレックスは重複したエピソードを認識します。plex アプリでは、それらを同じエピソードの個別の「バージョン」としてまとめます。その結果、ビデオの説明がその内容と一致しなくなり、追加のサブメニューにアクセスしない限り、1 つの「バージョン」のみが表示されます。
ビデオは、cron ジョブから開始された tube-dl によってダウンロードされます。そのダウンローダー スクリプトは、ファイル名をフォーマットし、「シーズン」に適したフォルダーに入れるのに役立つ次のスクリプトを実行します。
シーズンは動画が公開された年、エピソードは月と日の組み合わせを MMDD 形式で表したものです。
以下は私の 'tvify' スクリプトです。これは、ファイル名の操作を実行し、ファイルをシーズンの適切なフォルダーに詰め込むのに役立ちます。
#!/bin/bash
mySuff="$1"
echo mySuff="$mySuff"
if [ -z "$1" ]; then
mySuff="*.mp4"
fi
for i in $mySuff
do
prb=`ffprobe -- "$i" 2>&1`
myDate=`echo "$prb" | grep -E 'date\s+:' | cut -d ':' -f 2`
myartist=`echo "$prb" | grep -E 'artist\s+:' | cut -d ':' -f 2`
myTitle=`echo "$prb" | grep -E 'title\s+:' | cut -d ':' -f 2 | sed 's/\//_/g'`
cwd_stub=`pwd | awk -F'/' '{print $NF}'`
if [ -d "s${myDate:1:4}" ]; then echo "Directory found" > /dev/null; else mkdir "s${myDate:1:4}"; fi
[ -d "s${myDate:1:4}" ] && mv -- "$i" "s${myDate:1:4}/${myartist[@]:1} - s${myDate:1:4}e${myDate:5:8} - ${myTitle[@]:1:40} _$i" || mv -- "$i" "${myartist[@]:1} - s${myDate:1:4}e${myDate:5:8} - ${myTitle[@]:1:40} _$i"
done
そのスクリプトを変更して、競合する年/MMDD ファイルが存在するかどうかを識別し、存在する場合は、エピソード番号に適切な接尾辞を追加して、プレックスがそれらを別個のエピソードとして解釈するようにするにはどうすればよいですか?