Exaile doesn't recognize the TEMPO tag

Bug #1079871 reported by fberger
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Exaile
Fix Released
Medium
Dustin Spicuzza

Bug Description

The TEMPO tag is frequently used to store the BPM tempo of songs in audio files. Examples are the Banshee media player or the Mixxx DJ software. Exaile however uses the BPM tag and does not recognize the TEMPO tag.

Steps to reproduce:

1. Load songs tagged with TEMPO into a playlist
2. Display the BPM column

Expected behaviour:
The column should display the tempo, honouring the BPM as well as the TEMPO tag.

Actual behaviour:
Songs tagged with the TEMPO tag display "unknown" in the BPM column.

Exaile version: 3.3.0

This bug also affects dynamic playlist generation and the BPM counter plugin, which writes a BPM tag.

Thanks for considering.

Related branches

Revision history for this message
Dustin Spicuzza (dustin-virtualroadside) wrote :

What file format(s) use this tag?

Revision history for this message
Dustin Spicuzza (dustin-virtualroadside) wrote :

I've looked at the Mixxx source code, and they appear to use the TBPM field for MP3's, but use TEMPO for ogg format files... except when they don't.

Also, referring to http://getmusicbee.com/forum/index.php?action=printpage;topic=4499.0, there appears to be some players that use a nonstandard TXXX/Tempo field to describe the tempo as a text name (eg, 'fast', 'slow', etc) as opposed to an integer. Is this the usage you're referring to?

Can you post the output of mutagen-inspect on one of the files that Exaile doesn't handle properly (preferably an output for each different file format if there are multiple file types that we don't handle)? Just run 'mutagen-inspect filename' and post the output here. If you're on WIndows then the mutagen-inspect script is typically located in c:\Python27\scripts, and can be executed by doing "C:\Python27\python.exe c:\Python27\Scripts\mutagen-inspect filename" at a command prompt.

This should be easy enough to fix, I just need the mutagen output.

Revision history for this message
fberger (fberger-fbmd) wrote :

> What file format(s) use this tag?

FLAC and Ogg Vorbis. MP3 seems to use TBPM, correct.

> there appears to be some players that use a nonstandard TXXX/Tempo
> field to describe the tempo as a text name (eg, 'fast', 'slow', etc) as
> opposed to an integer. Is this the usage you're referring to?

No. I have ~1400 audio files here, carefully hand-tagged with a BPM integer in the TEMPO tag, and I would love to use them in Exaile. :-)

> Can you post the output of mutagen-inspect on one of the files
> that Exaile doesn't handle properly (preferably an output for each
> different file format if there are multiple file types that we don't handle)?

Here is an OGG and a FLAC file that are not handled properly by Exaile:

$ mutagen-inspect 07-Freelove.ogg
-- 07-Freelove.ogg
- Ogg Vorbis, 366.55 seconds, 256000 bps (audio/vorbis)
title=Freelove
artist=Depeche Mode
genre=Electronic
date=2001
album=Exciter
tracknumber=7
albumartist=Depeche Mode
musicbrainz_artistid=8538e728-ca0b-4321-b7e5-cff6565dd4c0
tempo=102

$ mutagen-inspect barclay_james_harvest-waiting_on_the_borderline.flac
-- barclay_james_harvest-waiting_on_the_borderline.flac
- FLAC, 242.44 seconds, 44100 Hz (audio/x-flac)
artist=Barclay James Harvest
album=Turn Of The Tide
albumartist=Barclay James Harvest
title=Waiting On The Borderline
genre=Pop
tracknumber=1
tracktotal=10
date=1981
tempo=112

Thanks,
-fberger

Revision history for this message
Dustin Spicuzza (dustin-virtualroadside) wrote :

FIxed in trunk in r4349, and for 3.3.2 in r4316

Please test this and let me know if it works. I was able to create an ogg and a flac file that have the tempo tag in them, and use the files in Exaile. You may need to rescan your collection to get this to work correctly.

Changed in exaile:
assignee: nobody → Dustin Spicuzza (dustin-virtualroadside)
importance: Undecided → Medium
milestone: none → 3.3.2
status: New → Fix Committed
Revision history for this message
fberger (fberger-fbmd) wrote :

I have tested it now, and the behaviour has not been fixed.

The "Tempo" is correctly displayed in the file properties window.

However the "BPM" column still does not display it, and instead says "Unknown".

I have rescanned my library, opened a new playlist and inserted the files in question.

Version tested: Exaile 3.4.0-dev+bzr4365, branched with `bzr branch lp:exaile`.

A (currently not working) test file is at http://static.florian-berger.de/ASD-SPIN-Assembly_2011.ogg

fberger (fberger-fbmd)
Changed in exaile:
status: Fix Committed → New
Revision history for this message
Dustin Spicuzza (dustin-virtualroadside) wrote :

Sorry for the delay. Something is out of sync with respect to your file and the Exaile music DB (which would qualify as a separate bug). I took the file you provided and opened it with a clean set of settings, and the BPM shows up in the BPM column just fine.

Run exaile with the following flags, and let me know if the problem persists:

exaile --all-data-dir /tmp/exaile

Changed in exaile:
status: New → Fix Committed
Revision history for this message
Dustin Spicuzza (dustin-virtualroadside) wrote :

And by that, I mean run it with those flags, and load the file, to see if it works or not. The --all-data-dir flag just tells exaile where to place all the configuration data, music database, etc, so it won't fix your corrupted DB.

Changed in exaile:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.