This discord bot will add random snippets of the miitopia sound track to images and videos sent to it.
Attach an image to your message in discord and mention @miitopia
.
You can add a url to a short MP3 (myinstants.com for example) or a spotify URI to the message to make miitopia use that instead.
-
Install rust and cargo.
-
Clone this repo.
git clone [email protected]:SeeSharpeDen/miitopia.git
and cd tomiitopia
-
obtain the miitopia sound track and make sure it's the correct format. See soundtrack
-
Optional. add spotify api client env vars.
go to https://developer.spotify.com/dashboard/applications and create a new application.
- Set the
SPOTIFY_ID
env var for spotify client id. - Set the
SPOTIFY_SECRET
env var for spotify client secret.
- Set the
-
Set the env vars and run
cargo run
.- The
DISCORD_TOKEN
env var is required. It stores your discord bot token. - The
RUST_LOG
env var sets the logging. Read here for more details.
Example:
RUST_LOG=warn,miitopia=debug DISCORD_TOKEN="[ Token Goes Here ]" cargo run
- The
The miitopia soundtrack you've downloaded very likely isn't in the format miitopia is expecting.
The audio files must be an ogg
file with the .ogg
extension. They also need
a single track (no album art) with the vorbis
or opus
codec.
Example:
$ ffprobe -hide_banner miitopia_001-A-Lively-Inn.flac.ogg
Input #0, ogg, from 'miitopia_001-A-Lively-Inn.flac.ogg':
Duration: 00:01:54.95, start: 0.000000, bitrate: 100 kb/s
Stream #0:0: Audio: vorbis, 32728 Hz, stereo, fltp, 112 kb/s
Metadata:
encoder : Lavc58.134.100 libvorbis
ALBUM : Miitopia Original Soundtrack
ARTIST : Toshiyuki Sudo, Shinji Ushiroda, Yumi Takahashi, Megumi Inoue
COMPOSER : Toshiyuki Sudo, Shinji Ushiroda, Yumi Takahashi, Megumi Inoue
DATE : 2021
GENRE : Game Soundtrack
title : A Lively Inn
track : 1
The audio files need to be stored in the resources/music
directory.
Example:
resources/
└── music
├── miitopia_001-A-Lively-Inn.flac.ogg
├── miitopia_002-Mmmmm.flac.ogg
: ...
└── miitopia_336-Nintendo-3DS-Home-Menu-Banner.flac.ogg
You can convert your existing miitopia/music library to this format with ffmpeg.
The example bash script below converts files ending with .flac
in the
~/Music/miitopia/
directory to an .ogg
file with no video (-vn
), with the
audio codec of libvorbis (-acodec libvorbis
).
#!/bin/bash
for file in ~/Music/miitopia/*.flac
do
ffmpeg -i $file -vn -acodec libvorbis resources/music/$(basename $file).ogg
done
This script can be condensed to a single line like below.
for file in ~/Music/miitopia/*.flac; do ffmpeg -i $file -vn -acodec libvorbis $(basename $file).ogg; done