Package: beets-bpmanalyser
BPM Analyser (beets plugin)Abeetsplugin for insane obsessive-compulsive music geeks.Thebeets-bpmanalyserplugin lets you analyse the tempo of the songs you have in your library and write the bpm information on the bpm tag of your media files.InstallationThe plugin can be installed via:$pipinstallbeets-bpmanalyserIt has two dependencies:numpyandaubioboth of which will be installed automatically when installing the plugin itself.UsageActivate the plugin in your configuration file:plugins:-bpmanalyser# [...]Check if plugin is loaded withbeet version. It should list 'bpmanalyser' amongst the loaded plugins.Your default configuration is:bpmanalyser:auto:nodry-run:nowrite:yesthreads:2force:noquiet:noHeads up! THeautooption is NOT YET IMPLEMENTED! It will be used to execute the analysis during import.The other configuration options can also be set from the command line when running the plugin.
Here are the options explained:-d, --dry-run: Do not update the library or the media files. Only display the bpm values.-f, --force: By default only songs with no bpm value (bpm:0) are analysed. Use this option to force the analysis regardless of the current bpm value.-w, --write: Write the bpm values directly to the media files.-t THREADS, --threads=THREADS: Set the number of processes that can run in parallel. It will default to the number of cores of your processor(s).-q, --quiet: Do not display any output from the command.-v, --version: Displays the version number of the plugin.Examples:Calculate but show only (do not store) tempo information on all AC/DC songs:$ beet bpmanalyser --dry-run artist:AC/DCUpdate tempo information on all songs where it is missing:$ beet bpmanalyser bpm:0Force the update of tempo information on all songs where it has already been set:$ beet bpmanalyser -f ^bpm:0AccuracyBPM values from acousticbrainz:$beet-cdev.ymlacousticbrainzartist:AC/DC
acousticbrainz:gettingdatafor:[format:MP3][bpm:121.106361389]:::/_TmpMusic_/A/AC_DC/HighVoltage/01.Baby,PleaseDon't Go.mp3acousticbrainz: getting data for: [format:MP3][bpm:117.203399658] ::: /_TmpMusic_/A/AC_DC/High Voltage/02. She'sGotBalls.mp3
acousticbrainz:gettingdatafor:[format:MP3][bpm:106.826393127]:::/_TmpMusic_/A/AC_DC/HighVoltage/03.LittleLover.mp3
acousticbrainz:gettingdatafor:[format:MP3][bpm:119.486862183]:::/_TmpMusic_/A/AC_DC/HighVoltage/04.StickAround.mp3
acousticbrainz:gettingdatafor:[format:MP3][bpm:133.189102173]:::/_TmpMusic_/A/AC_DC/HighVoltage/05.SoulStripper.mp3
acousticbrainz:gettingdatafor:[format:MP3][bpm:128.054992676]:::/_TmpMusic_/A/AC_DC/HighVoltage/06.YouAin'tGotaHoldonMe.mp3
acousticbrainz:gettingdatafor:[format:MP3][bpm:123.012046814]:::/_TmpMusic_/A/AC_DC/HighVoltage/07.LoveSong.mp3
acousticbrainz:gettingdatafor:[format:MP3][bpm:136.914703369]:::/_TmpMusic_/A/AC_DC/HighVoltage/08.ShowBusiness.mp3BPM values calculated by aubio:$beet-cdev.ymlbpmanalyserartist:AC/DC-df
bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/01.Baby,PleaseDon't Go.mp3] bpm: 122bpmanalyser: Song[/_TmpMusic_/A/AC_DC/High Voltage/02. She'sGotBalls.mp3]bpm:117bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/03.LittleLover.mp3]bpm:106bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/04.StickAround.mp3]bpm:120bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/05.SoulStripper.mp3]bpm:132bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/06.YouAin'tGotaHoldonMe.mp3]bpm:128bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/07.LoveSong.mp3]bpm:125bpmanalyser:Song[/_TmpMusic_/A/AC_DC/HighVoltage/08.ShowBusiness.mp3]bpm:139Development NotesRead thedevelopmentdocs.AcknowledgementsMany thanks to the developers and contributors of thebeets check plugin. Some structural concepts and best practices were adopted to start on this plugin.