MusicMirror is a utility script to mirror a directory tree of music files into a different directory. In the process, the music files can be transcoded into a different format and/or quality (which is also the main purpose of this script).
The main use case is converting a music collection in lossless or high-quality format for use in a lo-fi environment, such as a mobile player.
MusicMirror keeps track of files that have already been mirror-converted and processes only new files.
$ musicmirror /path/to/source /path/to/target
This will convert all supported files under /path/to/source/* and store the results under /path/to/target/*. The directory structure will be prevented.
There are several option to control the conversion:
$ musicmirror --encode mp3 --setting low --processes 4 /path/to/source /path/to/target
Will create MP3 files in low quality. 4 parallel processes will be used for transcoding.
A command like this could be run on a regular schedule (cron-job) or based on events (whenever a file in the source-directory is changed).