mirror of
https://github.com/danog/id3bot.git
synced 2024-11-26 11:54:43 +01:00
76 lines
4.7 KiB
Bash
Executable File
76 lines
4.7 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Licensed under GPLV3
|
|
|
|
echo "Send me the audio files that you wish to modify (up to 1.5 gigabytes thanks to @pwrtelegram)"
|
|
read url
|
|
url=$(echo "$url" | sed 's/^\s*//g;s/\s*$//g')
|
|
name="$RANDOM"$(basename "$url")
|
|
wget "$url" -qO /tmp/"$name" || { echo "Couldn't download file. Please try again in a few minutes."; rm "$name" &>/dev/null; exit 1; }
|
|
mimetype /tmp/"$name" | sed 's/.*\s//' | grep -qE '^audio/' || { echo "You didn't send me an audio file."; rm "$name" &>/dev/null; exit 1; }
|
|
|
|
help=$(id3v2 --help 2>&1)
|
|
echo "Now send me the appropriate command to set the the id3 tags, type /done when you're done."
|
|
|
|
until [ "$read" == "/done" ];do
|
|
read "read"
|
|
case "$read" in
|
|
"/artist")
|
|
echo "Send me the artist information"
|
|
read wut
|
|
id3v2 --artist "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
;;
|
|
"/album")
|
|
echo "Send me the album information"
|
|
read wut
|
|
id3v2 --album "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
;;
|
|
"/song")
|
|
echo "Send me the song's name"
|
|
read wut
|
|
id3v2 --song "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
|
|
;;
|
|
"/comment")
|
|
echo "Send me some comments in the format DESCRIPTION:COMMENT:LANGUAGE"
|
|
read wut
|
|
id3v2 --comment "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
;;
|
|
"/genre")
|
|
echo "Send me the genre number"
|
|
echo "Available genres: 0: Blues, 1: Classic Rock, 2: Country, 3: Dance, 4: Disco, 5: Funk, 6: Grunge, 7: Hip-Hop, 8: Jazz, 9: Metal, 10: New Age, 11: Oldies, 12: Other, 13: Pop, 14: RB, 15: Rap, 16: Reggae, 17: Rock, 18: Techno, 19: Industrial, 20: Alternative, 21: Ska, 22: Death Metal, 23: Pranks, 24: Soundtrack, 25: Euro-Techno, 26: Ambient, 27: Trip-Hop, 28: Vocal, 29: Jazz Funk, 30: Fusion, 31: Trance, 32: Classical, 33: Instrumental, 34: Acid, 35: House, 36: Game, 37: Sound Clip, 38: Gospel, 39: Noise, 40: AlternRock, 41: Bass, 42: Soul, 43: Punk, 44: Space, 45: Meditative, 46: Instrumental Pop, 47: Instrumental Rock, 48: Ethnic, 49: Gothic, 50: Darkwave, 51: Techno-Industrial, 52: Electronic, 53: Pop-Folk, 54: Eurodance, 55: Dream, 56: Southern Rock, 57: Comedy, 58: Cult, 59: Gangsta, 60: Top 40, 61: Christian Rap, 62: Pop/Funk, 63: Jungle, 64: Native American, 65: Cabaret, 66: New Wave, 67: Psychedelic, 68: Rave, 69: Showtunes, 70: Trailer, 71: Lo-Fi, 72: Tribal, 73: Acid Punk, 74: Acid Jazz, 75: Polka, 76: Retro, 77: Musical, 78: Rock Roll, 79: Hard Rock, 80: Folk, 81: Folk-Rock, 82: National Folk, 83: Swing, 84: Fast Fusion, 85: Bebob, 86: Latin, 87: Revival, 88: Celtic, 89: Bluegrass, 90: Avantgarde, 91: Gothic Rock, 92: Progressive Rock, 93: Psychedelic Rock, 94: Symphonic Rock, 95: Slow Rock, 96: Big Band, 97: Chorus, 98: Easy Listening, 99: Acoustic,100: Humour,101: Speech,102: Chanson,103: Opera,104: Chamber Music,105: Sonata,106: Symphony,107: Booty Bass,108: Primus,109: Porn Groove,110: Satire,111: Slow Jam,112: Club,113: Tango,114: Samba,115: Folklore,116: Ballad,117: Power Ballad,118: Rhythmic Soul,119: Freestyle,120: Duet,121: Punk Rock,122: Drum Solo,123: A capella,124: Euro-House,125: Dance Hall,126: Goa,127: Drum Bass,128: Club-House,129: Hardcore,130: Terror,131: Indie,132: Britpop,133: Negerpunk,134: Polsk Punk,135: Beat,136: Christian Gangsta Rap,137: Heavy Metal,138: Black Metal,139: Crossover,140: Contemporary Christian,141: Christian Rock ,142: Merengue,143: Salsa,144: Thrash Metal,145: Anime,146: JPop,147: Synthpop."
|
|
read wut
|
|
id3v2 --genre "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
;;
|
|
"/year")
|
|
echo "Send me the year"
|
|
read wut
|
|
id3v2 --year "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
;;
|
|
"/track")
|
|
echo "Send me the the track number in the format track number/(optional) total tracks"
|
|
read wut
|
|
id3v2 --track "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
|
;;
|
|
"/art")
|
|
echo "Send me the album art (URL or image)"
|
|
read art
|
|
extension="${art##*.}"
|
|
wget "$art" -qO /tmp/"$name"art."$extension" || { echo "Couldn't download file. Please try again in a few minutes."; rm /tmp/"$name"art."$extension"; continue; }
|
|
echo "Removing old images..."
|
|
eyeD3 --remove-images /tmp/"$name" &>/dev/null
|
|
echo "Adding new image..."
|
|
eyeD3 --add-image=/tmp/"$name"art."$extension":FRONT_COVER /tmp/"$name" &>/dev/null || { echo "Couldn't insert album art. Please check the image format."; rm /tmp/"$name"art."$extension"; continue; }
|
|
rm /tmp/"$name"art."$extension"
|
|
;;
|
|
"/done")
|
|
break
|
|
;;
|
|
esac
|
|
echo "Done."
|
|
done
|
|
|
|
echo "Send /start to restart the process and check out my other bots: @video_dl_bot, @mklwp_bot, @caption_ai_bot, @cowsaysbot, @cowthinksbot, @figletsbot, @lolcatzbot, @filtersbot, @id3bot, @pwrtelegrambot"
|
|
echo "myfilelocationstartshere /tmp/$name"
|
|
exit
|