Compatibility
- 0.8.2 and master5.35.25.15.04.2
- 0.8.2 and masteriOSmacOS(Intel)macOS(ARM)LinuxtvOSwatchOS
Plex media management made easy!
Let's be honest. Managing your Plex media can be a pain. Especially when you have a ton of new stuff you want to add all at once or if you are just constantly adding new stuff! That's where Monitr comes in.
Downloading movies or tv shows or ripping cds/dvds/blu-rays is now the hardest part of getting new media onto your plex server. No more manually placing files or hacking together the proper metadata for your media. Monitr makes adding new media to your Plex server much easier. Just make sure you add new files to a designated "downloads" directory and that's all! Monitr puts it exactly where Plex wants it and names it appropriately so that Plex can identify it and find it's proper metadata match.
It works by watching a designated "Downloads" directory and whenever a new video, audio, or subtitle file is added to that directory, Monitr will automatically move it right to where it should be, then Plex takes care of the rest!
You can also configure Monitr to automatically transcode media into Plex Direct Play/Stream capable formats. This means that Plex won't have to transcode media on-the-go and can help keep your CPU load lower when watching movies or TV shows.
It supports either Linux or macOS operating systems using Apple's Swift language (and a tiny bit of C for some of the stuff on Linux). It also has some dependencies, like ruby (if you're enabling the conversion capabilities).
# transcode_video dependency installation (only needed if you're going to enable automatic media conversion)
sudo add-apt-repository ppa:stebbins/handbrake-releases
sudo add-apt-repository ppa:jonathonf/ffmpeg-3
sudo apt-get remove handbrake* ffmpeg && sudo apt autoremove
sudo apt-get update
sudo apt-get install -y ruby handbrake-cli ffmpeg mkvtoolnix mp4v2-utils libav-tools x264 x265
# transcode_video installation (only needed if you're going to enable automatic media conversion)
sudo gem install video_transcoding
# Swiftenv installation (makes installing and updating swift super easy)
git clone https://github.com/kylef/swiftenv.git ~/.swiftenv
echo 'export SWIFTENV_ROOT="$HOME/.swiftenv"' >> ~/.bash_profile
echo 'export PATH="$SWIFTENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(swiftenv init -)"' >> ~/.bash_profile
source ~/.bash_profile
# Plex-Monitr and swift installation
git clone https://github.com/Ponyboy47/Plex-Monitr.git
cd Plex-Monitr
swiftenv install $(cat .swift-version)
swift build
swift run monitr
# Homebrew installation (To install swiftenv and also the transcode_video dependencies)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# transcode_video dependencies and installation (only needed if you're going to enable automatic media conversion)
brew install handbrake ffmpeg mkvtoolnix mp4v2 && gem install video_transcoding
# Makes installing and updating swift super easy
brew install kylef/formulae/swiftenv
# Plex-Monitr and swift installation
git clone https://github.com/Ponyboy47/Plex-Monitr.git
cd Plex-Monitr
swiftenv install $(cat .swift-version)
swift build
swift run monitr
cd ~/Plex-Monitr
rm Package.{resolved,pins}
# If config changes have been made, you will need to regenerate and save your new config
rm ~/.config/monitr/settings.json
git pull
swiftenv install $(.swift-version)
swift package update
swift build
swift run monitr
There are a number of ways to configure your Monitr. Like any CLI application, any of these arguments can be used at the same time to create the exact Monitr that you need.
-h
or --help
-v
or --version
-f
or --config
-p
or --plex-dir
-d
or --download-dirs
--home-video-download-dirs
-c
or --convert
-i
or --convert-immediately
-a
or --convert-cron-start
-z
--convert-cron-end
--convert-threads
--delete-original
--abr
or --average-bitrate-rcs
defaults to false
NOTE: To determine if you should use this option, run transcode-video --help
and read the information about the --abr option.
--x265
defaults to false
NOTE: To determine if you should use this option, you may want to check out this link if you're trying to dramatically reduce file sizes when converting and can use the h265 converter.
If you need me to expose additional options to the transcode-video command, create a new issue and I can do that pretty easily.
-t
or --target
May be used multiple times
NOTE: To determine if/how to use this option, run transcode-video --help
and read the information about the --target options.
--speed
or --transcode-speed
--x264-preset
--convert-video-container
--convert-video-codec
--convert-audio-container
--convert-audio-codec
--convert-video-subtitle-scan
defaults to false
NOTE: This is an experimental feature in the transcode_video tool. If it screws up, you could end up with the wrong subtitle track burned into your video. See @donmelton's own documentation on this feature in his transcode_video. If you are going to use this, it is HIGHLY RECOMMENDED that you do not use the --delete-original
flag, just to be safe.
--convert-language
--convert-video-max-framerate
--convert-temp-dir
--delete-subtitles
-s
or --save-settings
defaults to false
The current settings are saved at the --config-file
path (defaults to ~/.config/monitr/settings.json)
NOTE: If true, subsequent monitr instances will load the settings file from the --config-file
option and use its config values instead of the usual defaults.
--level
or --log-level
-o
or --log-file