Browse Source

Script: Support embedding tumbnails in playlists

wayland
Riyyi 3 days ago
parent
commit
5ecf4b09e7
  1. 41
      .local/bin/dl

41
.local/bin/dl

@ -74,24 +74,29 @@ done
embedAudioThumbnail() embedAudioThumbnail()
{ {
# Get file name # Get file names
fileName="$(youtube-dl --get-filename "$1")" youtube-dl --get-filename "$1" |
fileName="${fileName%.*}" while IFS= read -r fileName; do
fileName="${fileName%.*}"
# Convert thumbnail to actually be a jpg
yes y | ffmpeg -i "${fileName}.webp" "${fileName}_converted.jpg" > /dev/null 2>&1 # Skip if no thumbnail
yes y | ffmpeg -i "${fileName}.jpg" "${fileName}_converted.jpg" > /dev/null 2>&1 [ ! -f "${fileName}.webp" ] && [ ! -f "${fileName}.jpg" ] && continue
# Embed thumbnail into mp3 # Convert thumbnail to actually be a jpg
yes y | ffmpeg -i "${fileName}.mp3" -i "${fileName}_converted.jpg" \ yes y | ffmpeg -i "${fileName}.webp" "${fileName}_converted.jpg" > /dev/null 2>&1
-map 0:0 -map 1:0 -c copy -id3v2_version 3 \ yes y | ffmpeg -i "${fileName}.jpg" "${fileName}_converted.jpg" > /dev/null 2>&1
-metadata:s:v title="Album cover" \
-metadata:s:v comment="Cover (front)" \ # Embed thumbnail into mp3
"${fileName}_embed.mp3" > /dev/null 2>&1 yes y | ffmpeg -i "${fileName}.mp3" -i "${fileName}_converted.jpg" \
-map 0:0 -map 1:0 -c copy -id3v2_version 3 \
# Remove left over files -metadata:s:v title="Album cover" \
rm -f "./${fileName}_converted.jpg" "./${fileName}.jpg" "./${fileName}.mp3" -metadata:s:v comment="Cover (front)" \
mv "${fileName}_embed.mp3" "${fileName}.mp3" "${fileName}_embed.mp3" > /dev/null 2>&1
# Remove left over files
rm -f "./${fileName}_converted.jpg" "./${fileName}.jpg" "./${fileName}.webp"
mv -f "${fileName}_embed.mp3" "${fileName}.mp3"
done
} }
downloadAudio() downloadAudio()

Loading…
Cancel
Save