Version: (using KDE 4.4.1) OS: Linux Installed from: Ubuntu Packages I am a relatively new user to linux. Amarok crashes when using mySQL as the backend database. I have a large music collection with approx 40,000+ songs. When updating under Amarok 2.3.0 the system becomes unresponsive consistently @53% completion, Amarok locks up and the only way to move forward is to forcibly kill Amarok app and restart. The process running at the time appears to be , upon restarting only half the library has been imported. I am able to return to Amarok with half the libary, and retry a full rescan of the collection. The collection resides on an external NAS box connected using NFS. This problem has presented since v2 arrived. Prior to starting Amarok, mySQL database was setup such that 'amarok' database was dropped, then recreated using appropriate permissions for amarok user. Version of mySQL in use is 5.1.37. Latest updates to Amarok, mySQL have been applied to Ubuntu 9.10 64 bit. The older Amarok v1.4 has no issues importing the collection. Expected behaviour is that the music library fully imports without crashing, music files are a mixture of mp3, flac, aac, ogg. Debug output shown below. Amarok hangs whilst amarokcollectionscanner is running, it ends up as a zombie process. No additional plugins loaded, Amarok newly installed with attempt to import music collection. ---- Debug output: TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. amarok: Skipping file with uniqueid "amarok-sqltrackuid://0d7ec39c10b363f9700051d0eda0f216" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/01 Country Home.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/01 - Country Home.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://20f5aef3a48d9c2cf6a31a1ae78b3701" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/02 White Line.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/02 - White Line.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://d2e642408d6b9bba9f3cceef0a62a198" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/03 F_!#In' Up.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/03 - F_!#In' Up.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://64f557fc9800b22edeb1806181b7caaf" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/04 Over And Over.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/04 - Over And Over.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://c7693128827f76170130723556def071" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/05 Love To Burn.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/05 - Love To Burn.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://18e866be8af41e1f1252ce126e941884" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/06 Farmer John.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/06 - Farmer John.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://5dee60b6cfdb6e14454689fa813856ea" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/07 Mansion On The Hill.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/07 - Mansion On The Hill.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://683d3a4ecea836ec2b6c1251109b058f" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/08 Days That Used To Be.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/08 - Days That Used To Be.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://339766e2847ca289bed33536d17593c4" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/09 Love And Only Love.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/09 - Love And Only Love.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://0ff2a140874efe09cdc7c644d014d7e5" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/10 Mother Earth (Natural Anthem) [Li.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/10 - Mother Earth (Natural Anthem) [Live].m4a" TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size This last line keeps repeating....
Sorry, but we need a proper backtrace, as generated by Dr. Konqi. If you can reproduce this bug, please check here on how to get a valid backtrace: http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports Since you are using Kubuntu, you will need amarok-dbg and phonon-dbg at least, ideally you should also have kdelibs5-dbg, libqt4-dbg and libglib2.0-0-dbg. That should cover most of the crashes. Also, please start Amarok in a konsole with 'amarok -d --nofork' If you have experience problems "sinc Amarok v2 arrived" as you say, why do you only report this more than a whole year later? Please stay objective and don't compare with Amarok 1.4, this is a complete rewrite with a totally different codebase. FWIW, I haven't seen a crash of the database scanner here in ages, using Amarok 2.3-git on Kubuntu 9.10 using KDE SC 4.4.1
Backtrace from 'gdb amarokcollectionscanner <pid>' #0 0x00007ff9094b6b00 in __write_nocancel () from /lib/libc.so.6 #1 0x00007ff9094568c3 in _IO_new_file_write (f=0x7ff90974e860, data=0x1d21918, n=61) at fileops.c:1275 #2 0x00007ff90945679d in new_do_write (f=0x7ff90974e860, data=<value optimized out>, n=61) at fileops.c:529 #3 _IO_new_file_xsputn (f=0x7ff90974e860, data=<value optimized out>, n=61) at fileops.c:1369 #4 0x00007ff90944c86d in _IO_fwrite (buf=0x1d21918, size=1, count=61, fp=0x7ff90974e860) at iofwrite.c:45 #5 0x00007ff909c8c815 in std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) () from /usr/lib/libstdc++.so.6 #6 0x00007ff90a15ae1b in operator<<(std::ostream&, TagLib::String const&) () from /usr/lib/libtag.so.1 #7 0x00007ff90a16078f in ?? () from /usr/lib/libtag.so.1 #8 0x00007ff90a15e8bf in ?? () from /usr/lib/libtag.so.1 #9 0x00007ff90a16938a in ?? () from /usr/lib/libtag.so.1 #10 0x00007ff90a1694f8 in ?? () from /usr/lib/libtag.so.1 #11 0x00007ff90a1694f8 in ?? () from /usr/lib/libtag.so.1 #12 0x00007ff90a1694f8 in ?? () from /usr/lib/libtag.so.1 #13 0x00007ff90a1694f8 in ?? () from /usr/lib/libtag.so.1 #14 0x00007ff90a169630 in ?? () from /usr/lib/libtag.so.1 #15 0x00007ff90a1686f0 in TagLib::MP4::File::read(bool, TagLib::AudioProperties::ReadStyle) () from /usr/lib/libtag.so.1 #16 0x00007ff90a168892 in TagLib::MP4::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle) () from /usr/lib/libtag.so.1 #17 0x0000000000425461 in MP4FileTypeResolver::createFile (this=<value optimized out>, fileName=0x180ab38 "/media/fs2/mp3s/Nina Simone/(2000) The Essential Nina Simone/14 - See Line Woman.m4a", readProperties=61, propertiesStyle=TagLib::AudioProperties::Fast) at /build/buildd/amarok-2.3.0/shared/taglib_filetype_resolvers/mp4filetyperesolver.cpp:36 #18 0x00007ff90a179693 in TagLib::FileRef::create(char const*, bool, TagLib::AudioProperties::ReadStyle) () from /usr/lib/libtag.so.1 #19 0x00007ff90a17a08c in TagLib::FileRef::FileRef(char const*, bool, TagLib::AudioProperties::ReadStyle) () from /usr/lib/libtag.so.1 #20 0x000000000040db9b in CollectionScanner::readTags (this=<value optimized out>, path=<value optimized out>, readStyle=TagLib::AudioProperties::Fast) at /build/buildd/amarok-2.3.0/utilities/collectionscanner/CollectionScanner.cpp:563 #21 0x00000000004157bb in CollectionScanner::scanFiles (this=<value optimized out>, entries=<value optimized out>) at /build/buildd/amarok-2.3.0/utilities/collectionscanner/CollectionScanner.cpp:460 #22 0x0000000000418829 in CollectionScanner::doJob (this=0x7fff622887e0) at /build/buildd/amarok-2.3.0/utilities/collectionscanner/CollectionScanner.cpp:298 #23 0x00000000004196e0 in CollectionScanner::qt_metacall (this=0x7fff622887e0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=<value optimized out>) at /build/buildd/amarok-2.3.0/obj-x86_64-linux-gnu/utilities/collectionscanner/CollectionScanner.moc:72 #24 0x00007ff90a9ddc0f in QMetaObject::activate (sender=0x6716f0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293 #25 0x00007ff90a9e53ff in QSingleShotTimer::timerEvent (this=0x6716f0) at kernel/qtimer.cpp:308 #26 0x00007ff90a9da863 in QObject::event (this=0x6716f0, e=0x7fff62288510) at kernel/qobject.cpp:1212 #27 0x00007ff90a9cae0c in QCoreApplication::notifyInternal (this=0x7fff622887e0, receiver=0x6716f0, event=0x7fff62288510) at kernel/qcoreapplication.cpp:704 #28 0x00007ff90a9f7a62 in QCoreApplication::sendEvent (this=0x668020) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #29 QTimerInfoList::activateTimers (this=0x668020) at kernel/qeventdispatcher_unix.cpp:603 #30 0x00007ff90a9f4644 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184 #31 0x00007ff908715bce in g_main_dispatch (context=0x666d20) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:1960 #32 IA__g_main_context_dispatch (context=0x666d20) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2513 #33 0x00007ff908719598 in g_main_context_iterate (context=0x666d20, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2591 #34 0x00007ff9087196c0 in IA__g_main_context_iteration (context=0x666d20, may_block=1) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2654 #35 0x00007ff90a9f4333 in QEventDispatcherGlib::processEvents (this=0x6644f0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412 #36 0x00007ff90a9c9732 in QEventLoop::processEvents (this=<value optimized out>, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece. ) at kernel/qeventloop.cpp:149 #37 0x00007ff90a9c9b0c in QEventLoop::exec (this=0x7fff62288780, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece. ) at kernel/qeventloop.cpp:201 #38 0x00007ff90a9cd84b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #39 0x000000000040d58f in main (argc=8, argv=<value optimized out>) at /build/buildd/amarok-2.3.0/utilities/collectionscanner/CollectionScanner.cpp:81 ----------------- backtrace from 'gdb amarok <pid> #0 0x00007f1c38f8b3c3 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=37801) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f1c3249837c in g_main_context_poll (context=0xf45c00, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2904 #2 g_main_context_iterate (context=0xf45c00, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2586 #3 0x00007f1c324986c0 in IA__g_main_context_iteration (context=0xf45c00, may_block=1) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2654 #4 0x00007f1c398e5333 in QEventDispatcherGlib::processEvents (this=0xdfa0d0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412 #5 0x00007f1c3a2e6f0e in QGuiEventDispatcherGlib::processEvents (this=0x221fd60, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204 #6 0x00007f1c398ba732 in QEventLoop::processEvents (this=<value optimized out>, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece. ) at kernel/qeventloop.cpp:149 #7 0x00007f1c398bab0c in QEventLoop::exec (this=0x7fff798857f0, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece. ) at kernel/qeventloop.cpp:201 #8 0x00007f1c398be84b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #9 0x0000000000408752 in main (argc=3, argv=0x7fff798877c8) at /build/buildd/amarok-2.3.0/src/main.cpp:237 Current language: auto The current source language is "auto; currently c". Hope this helps. Happy to rerun to provide more info. At the point I have captured backtraces amarok is unresponsive, the amarok window does not update keeps screen updates from old moves, the application waits for a good 20 mins before it disappears, there is no Dr. Konqi. The error that appears in the terminal window is as follows: TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0
not really, why don't you just use the command I gave you, namely start amarok in a konsole with that exact line: amarok -d --nofork
This is probably a bug in TagLib, not Amarok, but let's dig down a bit -- if you run amarokcollectionscanner on the command line (with -r for recursion) on your folders, does it finish successfully or does it crash? (BTW, as you can see in your debug log, you have some duplicate files :-) )
The output first provided is the same as what command gives below. Yes there are some duplicates :-) output from 'amarok -d --nofork amarok: [WARNING!] DEPRECATED: bool PlaylistManager::import(const QString&) amarok: BEGIN: bool PlaylistManager::import(const QString&) amarok: BEGIN: virtual bool PlaylistFileProvider::import(const KUrl&) amarok: Playlist "/media/fs2/mp3s/Ministry of Sound/Ministry Of Sound - 2008 Chillout 1991-2008/Chilled 1991-2008 Disc 3 mp3/- Ministry Of Sound - Chilled 1991-2008 Disc 3.m3u" was already imported amarok: END__: virtual bool PlaylistFileProvider::import(const KUrl&) - Took 0.00014s amarok: END__: bool PlaylistManager::import(const QString&) - Took 0.00021s TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. amarok: BEGIN: void ScanManager::startIncrementalScan(const QString&) amarok: scanner already running amarok: END__: void ScanManager::startIncrementalScan(const QString&) - Took 0.00011s TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: A frame of unsupported or unknown type 'CM1' has been discarded TagLib: A frame of unsupported or unknown type 'CM1' has been discarded amarok: Skipping file with uniqueid "amarok-sqltrackuid://b9eb4e46866e7c6674de130117472eff" as it was already seen this scan, file is at "/media/fs2/mp3s/Morrissey/Morrissey/1990 Bona Drag/9 - Everyday Is Like Sunday.mp3" , original file is at "/media/fs2/mp3s/Morrissey/Morrissey/1988 Viva Hate/03-Everyday Is Like Sunday.mp3" TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. amarok: Skipping file with uniqueid "amarok-sqltrackuid://84dd4e10fa8e2a97e67478fcd4475908" as it was already seen this scan, file is at "/media/fs2/mp3s/Morrissey/Morrissey/Concerts/Welcome to the West End/16-We'll Let You Know (live).mp3" , original file is at "/media/fs2/mp3s/Morrissey/Morrissey/1992 Your Arsenal/22 - We'll Let You Know.mp3" amarok: Skipping file with uniqueid "amarok-sqltrackuid://3c2286b0156fcd048c4be51a086179ee" as it was already seen this scan, file is at "/media/fs2/mp3s/Morrissey/Morrissey/Concerts/Welcome to the West End/18-Boxers (live).mp3" , original file is at "/media/fs2/mp3s/Morrissey/Morrissey/1994 Vauxhall and I/20-Boxers (live).mp3" TagLib: A picture frame must contain at least 5 bytes. TagLib: A picture frame must contain at least 5 bytes. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. amarok: [WARNING!] DEPRECATED: bool PlaylistManager::import(const QString&) amarok: BEGIN: bool PlaylistManager::import(const QString&) amarok: BEGIN: virtual bool PlaylistFileProvider::import(const KUrl&) amarok: Playlist "/media/fs2/mp3s/Muse/(2009) The Resistance/Muse - The resistance.m3u" was already imported amarok: END__: virtual bool PlaylistFileProvider::import(const KUrl&) - Took 0.00012s amarok: END__: bool PlaylistManager::import(const QString&) - Took 0.00019s TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: MPEG::Header::parse() -- Invalid sample rate. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. TagLib: ID3v2.4 no longer supports the frame type TSIZ. It will be discarded from the tag. amarok: Skipping file with uniqueid "amarok-sqltrackuid://0d7ec39c10b363f9700051d0eda0f216" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/01 Country Home.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/01 - Country Home.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://20f5aef3a48d9c2cf6a31a1ae78b3701" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/02 White Line.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/02 - White Line.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://d2e642408d6b9bba9f3cceef0a62a198" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/03 F_!#In' Up.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/03 - F_!#In' Up.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://64f557fc9800b22edeb1806181b7caaf" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/04 Over And Over.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/04 - Over And Over.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://c7693128827f76170130723556def071" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/05 Love To Burn.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/05 - Love To Burn.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://18e866be8af41e1f1252ce126e941884" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/06 Farmer John.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/06 - Farmer John.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://5dee60b6cfdb6e14454689fa813856ea" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/07 Mansion On The Hill.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/07 - Mansion On The Hill.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://683d3a4ecea836ec2b6c1251109b058f" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/08 Days That Used To Be.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/08 - Days That Used To Be.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://339766e2847ca289bed33536d17593c4" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/09 Love And Only Love.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/09 - Love And Only Love.m4a" amarok: Skipping file with uniqueid "amarok-sqltrackuid://0ff2a140874efe09cdc7c644d014d7e5" as it was already seen this scan, file is at "/media/fs2/mp3s/Neil Young & Crazy Horse/Ragged Glory/10 Mother Earth (Natural Anthem) [Li.m4a" , original file is at "/media/fs2/mp3s/Neil Young/(1990) Ragged Glory/10 - Mother Earth (Natural Anthem) [Live].m4a" TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size This error keeps repeating indefinitely, amarok is completely unresponsive, when left for 4 hours it never comes back. The error above is as far as it gets. --- Trying 'amarokcollectionscanner -r' results as follows: <tags title="Ain't No Use" compilation="checkforvarious" bitrate="0" uniqueid="amarok-sqltrackuid://5dd155fd417226932e7a4c5dca6e01c4" filetype="3" track="12" artist="Nina Simone" path="/media/fs2/mp3s/Nina Simone/(2000) The Essential Nina Simone/12 - Ain't No Use.m4a" filesize="17981887" length="164000" samplerate="0" album="The Essential Nina Simone" comment="EAC FLAC -8" genre="Metal" year="2000" audioproperties="true"/> <tags title="Mississippi Goddam" compilation="checkforvarious" bitrate="807" uniqueid="amarok-sqltrackuid://e5d6f8a82daa15caf036c062a36af8d5" filetype="2" track="13" artist="Nina Simone" path="/media/fs2/mp3s/Nina Simone/(2000) The Essential Nina Simone/13 - Mississippi Goddam.flac" filesize="28382037" length="281000" samplerate="44100" album="The Essential Nina Simone" comment="EAC FLAC -8" genre="Jazz" year="2000" audioproperties="true"/> <tags title="Mississippi Goddam" compilation="checkforvarious" bitrate="0" uniqueid="amarok-sqltrackuid://951972545b752df7923eb856ad265230" filetype="3" track="13" artist="Nina Simone" path="/media/fs2/mp3s/Nina Simone/(2000) The Essential Nina Simone/13 - Mississippi Goddam.m4a" filesize="29099454" length="281000" samplerate="0" album="The Essential Nina Simone" comment="EAC FLAC -8" genre="Metal" year="2000" audioproperties="true"/> <tags title="See Line Woman" compilation="checkforvarious" bitrate="790" uniqueid="amarok-sqltrackuid://d92d72adaf03a2e03aea8748854e49a9" filetype="2" track="14" artist="Nina Simone" path="/media/fs2/mp3s/Nina Simone/(2000) The Essential Nina Simone/14 - See Line Woman.flac" filesize="22347067" length="226000" samplerate="44100" album="The Essential Nina Simone" comment="EAC FLAC -8" genre="Jazz" year="2000" audioproperties="true"/> TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 TagLib: MP4: Invalid atom size TagLib: ByteVectorMirror::toNumber<T>() -- data is empty, returning 0 ...keeps repeating for hours++++ :-) endless loop. i will try moving directory .../nina simone out of path thx
Please, actually read what I wrote in my comment above.
@reporter: any news on this?
Hi: I don't know if it's the same problem, but when I run "amarokcollectionscanner -r" it crashes when scanning one/some of my folders, and I get several "Taglib: String::prepare() - Unicode conversion error" messages... I've tried to rename the folders and changing the files encoding to utf8 (using convmv) without success. I've then removed the offending folders, and the collection scanner works properly. I have another machine on which I have amarok installed and on that computer, the collection scanner works properly, even with all the folders. I've then compared the differences in the installed packages that are related to amarok (I'm using Debian) and I've found several diferences (not in amarok, but with some of its dependencies, as I'm using KDE 4.4.2 on one machine and 4.4.1 on another). Despite these differences in KDE versions, the versions of libtag1c2a (the package that provides TagLib Audio Meta-Data Library) differ: one is 1.6.2-1 and the other is 1.6.1-1 I might be wrong, but this suggests a bug in libtag and not in amarok... Hope this helps Pedro
Yes -- but you didn't say which one it works and which one it doesn't :-) If it crashes with taglib 1.6.1 and not with taglib 1.6.2 then that's fine -- a bug got fixed in the normal way. If it's the other way around it's a regression in taglib and that's a big problem. Please let me know ASAP; taglib 1.6.3 is going to be released soon and if there's a regression it should be sorted before then.
On 2010-04-14 21:06, Jeff Mitchell wrote: > --- Comment #9 from Jeff Mitchell<mitchell kde org> 2010-04-14 22:06:21 --- > Yes -- but you didn't say which one it works and which one it doesn't :-) > My bad... :-( It crashes with taglib 1.6.2 and not with 1.6.1 ... Sorry for the confusion... Cheers: Pedro
Pedro, please make the file available for testing so it can be debugged. Lukas, he's reporting what appears to be a regression in 1.6.2; hopefully this can be fixed before 1.6.3 is released.
I'll really need the problematic file or at least a good description of the problem. The only issue I see from the error messages is the infinite loop on a broken mp4 file, but I believe that was fixed in 1.6.1 and I don't see TagLib version mentioned here. Then there is an unrelated problem with a crash, but to be sure about that one I'll need the file. Can you please send it to me (lalinsky@gmail.com)? The first few kB should be enough if it's MP3, otherwise I'll probably need the whole file.
Lukas, The original reporter seems to have abandoned the post so you can ignore that. Comments #8 through present are what is relevant. The poster says that his file was fine with taglib 1.6.1 and crashes with 1.6.2. Pedro, do get that file to Lukas please...
Hi: I didn't mentioned any specific file causing problems. I mentioned a set of folders, containing around 165 files (mostly mp3 files and maybe some CD covers). In order to help, I need to get more info about what caused the crash. I've re-scanned the problematic folders using taglib 1.6.1 without any problems. I've sent the amarokcollectionscanner output to Lukas, but I don't think it helped. When I tried to scan these folders using taglib 1.6.2 it crashes and the only output I can see are the paths of the files being scanned - there's no other errors or messages. Lukas suggested that I could compile taglib to enable more debug, but I think you also got that message. I can try to recompile it according to what Lukas suggested, but only as a last resort. I can also try to narrow down the problem by scanning folder by folder until I find the culprit... Maybe then I can find a problematic file? I'm open to other suggestions... Best Pedro
Pedro, See my reply to your private email to Lukas/me.
Never mind -- my mistake, I forgot to CC you. Here's the text: Pedro, You say that if you run amarokcollectionscanner inside the offending folder, it crashes. Can you bisect the files in that folder? So, move half of them to another directory, and run amarokcollectionscanner on each. Assuming it's only one of your files causing the problem, one of the folders should crash, and the other should not. So take the files in the folder that didn't crash, and move them to a third "known good" folder. Then bisect your files again and repeat the process. It should only take a few iterations to find the problematic file...
Alternatively, I'll assume since you're already building on 1.6.2 that you're building from source. You can use the tagreader executable from taglib/examples to find it without moving files: find . -name \*.mp3 -print0 | xargs -0 tagreader
Ok: I have more news: I've sorted a few folders out of the way (they gave no problems when scanned) but I still have some more to test. I also had 3 files on the root folder, which I moved to a separate one. When I ran amarokcollectionscanner on this new folder, it crashed with the following message: paneves@Omar:~$ amarokcollectionscanner -r /home/paneves/media/Moby/testes/ <?xml version="1.0" encoding="UTF-8" ?><scanner><folder path="/home/paneves/media/Moby/testes/"/> <itemcount count="3"/> Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication::notify() and catch all exceptions there. terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc Aborted Does this help you guys? I'll keep on testing and I'l get back to you soon. Cheers: Pedro
No...what will help is figuring out the file(s) that cause the crash(es) and making them available for testing. :-)
I already have the file. It's a problem in ID3v2 APIC frame parsing. I can confirm that it works in 1.6.1, but in 1.6.2.
SVN commit 1115275 by lalinsky: Fix parsing of regular 32-bit integers in SynchData::toUInt() BUG:231075 M +3 -1 NEWS M +4 -8 taglib/mpeg/id3v2/id3v2synchdata.cpp AM tests/data/compressed_id3_frame.mp3 M +14 -0 tests/test_id3v2.cpp M +19 -0 tests/test_synchdata.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1115275