FS#3717 - [quodlibet] exfalso broken.

Attached to Project: Arch Linux
Opened by Eric Belanger (Snowman) - Friday, 06 January 2006, 05:17 GMT
Last edited by Dale Blount (dale) - Friday, 06 January 2006, 13:08 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Mark Rosenstand (bitbull)
Architecture not specified
Severity High
Priority Normal
Reported Version 0.7 Wombat
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Exfalso starts but I can't view the tagging information. I get this error message:

W: Error loading /mnt/music/ABBA/Gold - Greatest Hits/01 - Dancing Queen.flac
Traceback (most recent call last):
File "/usr/share/quodlibet/formats/__init__.py", line 41, in MusicFile
return _infos[ext](filename)
File "/usr/share/quodlibet/formats/flac_.py", line 28, in __init__
raise IOError("%s is not a FLAC file" % filename)
IOError: /mnt/music/ABBA/Gold - Greatest Hits/01 - Dancing Queen.flac is not a FLAC file

The file is a flac file and the tag can be viewed/edited with the exfalso from quodlibet 0.15

I'm also having hard freezes (the power button must be used to reboot) when using quodlibet. These hard freezes also happen with xine so I'm not sure if it's a specific quodlibet issue. Playing audio/video files with other players (moreamp, mplayer) works fine.
This task depends upon

Closed by  Mark Rosenstand (bitbull)
Sunday, 08 January 2006, 09:05 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Closing with "Not a bug" because it isn't a packaging issue. Eric, you might want to try a vanilla 2.6.15 before bugging kernel.org :)
Comment by Simon Morgan (sjmorgan) - Friday, 06 January 2006, 13:14 GMT
If you haven't already, try running memtest86+ overnight to be sure it's not bad memory causing the freezes.
Comment by Simon Morgan (sjmorgan) - Friday, 06 January 2006, 13:22 GMT
Looking at the source code it looks like the FLACFile class reads the first 4 bytes of the file and if they don't contain the characters "fLaC", then you get that error. Can you confirm (using "hexdump -C" or the like) that the file does indeed contain those characters?

Also, you don't mention whether Ex Falso works with other FLAC files. Does it?
Comment by Mark Rosenstand (bitbull) - Friday, 06 January 2006, 18:56 GMT
These sound like pretty big issues considering the nature of the application, so it do sound like faulty hardware.

Do you suspect that this is an Arch-specific issue?
Comment by Eric Belanger (Snowman) - Saturday, 07 January 2006, 21:11 GMT
1. I'll do a memtest and will report here.

2. It doesn't work with any flac file. It works with mp3 files, though. I don't think it's a problem with the files because if I downgrade to quodlibet-0.15-1, then exfalso will work with all flac files.

$ hexdump -C /home/eric/music/ABBA/Gold\ -\ Greatest\ Hits/01\ -\ Dancing\ Queen.flac
00000000 49 44 33 03 00 00 00 00 06 3c 54 49 54 32 00 00 |ID3......<TIT2..|
00000010 00 0e 00 00 00 44 61 6e 63 69 6e 67 20 51 75 65 |.....Dancing Que|
00000020 65 6e 54 50 45 31 00 00 00 05 00 00 00 41 42 42 |enTPE1.......ABB|
00000030 41 54 41 4c 42 00 00 00 1f 00 00 00 47 4f 4c 44 |ATALB.......GOLD|
00000040 20 2d 20 31 30 74 68 20 41 4e 4e 49 56 45 52 53 | - 10th ANNIVERS|
00000050 41 52 59 20 45 44 54 49 4f 4e 54 59 45 52 00 00 |ARY EDTIONTYER..|
00000060 00 05 00 00 00 32 30 30 32 43 4f 4d 4d 00 00 00 |.....2002COMM...|
00000070 14 00 00 00 00 00 00 00 43 72 65 61 74 65 64 20 |........Created |
00000080 62 79 20 47 72 69 70 54 43 4f 4e 00 00 00 05 00 |by GripTCON.....|
00000090 00 00 28 31 33 29 54 52 43 4b 00 00 00 02 00 00 |..(13)TRCK......|
000000a0 00 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.1..............|
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000340 00 00 00 00 00 00 66 4c 61 43 00 00 00 22 12 00 |......fLaC..."..|
00000350 12 00 00 00 0e 00 3c c8 0a c4 42 f0 00 9b cd 3c |......<È.ÄBð..Í<|

3. The hard freezes could be kernel related. On recommendation from a forum use, I installed the archck kernel (kernel26archck 2.6.14.archck4-1). Since then, I've use xine and quodlibet quite extensively without any freeze. I can't say if it's an arch specific issue (unless I try to intall python and run quodlibet in WinXP ;? ). However, noone else has reported a similar problem on the ML/forums.
Comment by Simon Morgan (sjmorgan) - Saturday, 07 January 2006, 22:00 GMT
As you can see the first 4 bytes of that file are not fLaC and seem to indicate that you are using the ID3 format to tag your FLAC files. The FLAC FAQ (sounds nice) states:

"FLAC has it's own native tagging system which is identical to that of Vorbis. They are called alternately "FLAC tags" and "Vorbis comments". It is the only tagging system required and guaranteed to be supported by FLAC implementations.

Out of convenience, the reference decoder knows how to skip ID3 tags so that they don't interfere with decoding. But you should not expect any tags beside FLAC tags to be supported in applications; some implementations may not even be able to decode a FLAC file with ID3 tags."

http://flac.sourceforge.net/faq.html#general__tagging

Given this it would seem that Quod Libet is behaving correctly.
Comment by Simon Morgan (sjmorgan) - Saturday, 07 January 2006, 22:10 GMT
It would seem this change was added to fix a problem with malformed FLAC files: http://sacredchao.net/quodlibet/changeset/2504
Comment by Simon Morgan (sjmorgan) - Sunday, 08 January 2006, 02:42 GMT
BTW, there's no point in you reporting back what happens with memtest here as it has nothing to do with this bug. If there are memory errors then all bets are off and you shouldn't file any bugs anywhere until you have working memory. If there are no errors then you should file a kernel bug (upstream?). Even if it is a userland program "causing" the freeze, it's the kernels job to prevent programs from doing nasty things to the rest of the system.
Comment by Eric Belanger (Snowman) - Sunday, 08 January 2006, 03:05 GMT
Thanks for the explanation. That was indeed the problem. I stripped the id3 tag of some files and exfalso is working as it should do.
I would recommend closing this bug.

As for the hard freezes, I will investigate with a memtest and with a vanilla kernel 2.6.14. If needed, I will fill a bug report where appropriate.

Loading...