
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
TagLib is a C++ library for reading and modifying audio meta data, commonly called "tags". TagLib has been used since KDE 3.2 for reading audio metadata.
13 years ago
Changes from 1.4 to 1.5
- Support for Mac OS X and Microsoft Windows
- Distributed under the MPL (in addition to the previous LGPL license)
- Added support for Speex files
- Added support for TrueAudio files
- Added support for WavPack files
- Added support for ID3v2 general encapsulated object frames
- Added support for ID3v2 unsynchronized lyrics frames
- Added support for ID3v2 URL frames
- Propper exports of all public classes / functions
- Updated the APE::Item API to work with value lists
- Added support to the FileRef class for new Xiph (Ogg) extensions
- Made the samples per frame for MPEG headers accessible
- Made MP3 Xing headers accessible
- Prevent invalid encodings from being written to ID3v1 tags
- Non-Latin1 ID3v2 text frames are automatically converted to UTF-8 on write (if they are not explicitly set to UTF-16)
- Added support for reading ID3v2.2/3 unsynchronized tags
- Made it possible to search for ID3v2 comment frames by description
- Fixed a number of bugs in ID3v2 relative volume adjustment reading and writing
- Added work arounds for iTunes writing invalid ID3v2 frame lengths
- Added work arounds for iTunes not being able to correctly parse numerical ID3v2 genres
- Added work arounds for iTunes putting non-text information in ID3v2 comment frames
- Added a function to export strings to std::wstring
- Added a function to check ASCII compatibility of strings
- Added a function to check Latin1 compatibility of strings
13 years ago
Changes from 1.4 to 1.5
- Support for Mac OS X and Microsoft Windows
- Distributed under the MPL (in addition to the previous LGPL license)
- Added support for Speex files
- Added support for TrueAudio files
- Added support for WavPack files
- Added support for ID3v2 general encapsulated object frames
- Added support for ID3v2 unsynchronized lyrics frames
- Added support for ID3v2 URL frames
- Propper exports of all public classes / functions
- Updated the APE::Item API to work with value lists
- Added support to the FileRef class for new Xiph (Ogg) extensions
- Made the samples per frame for MPEG headers accessible
- Made MP3 Xing headers accessible
- Prevent invalid encodings from being written to ID3v1 tags
- Non-Latin1 ID3v2 text frames are automatically converted to UTF-8 on write (if they are not explicitly set to UTF-16)
- Added support for reading ID3v2.2/3 unsynchronized tags
- Made it possible to search for ID3v2 comment frames by description
- Fixed a number of bugs in ID3v2 relative volume adjustment reading and writing
- Added work arounds for iTunes writing invalid ID3v2 frame lengths
- Added work arounds for iTunes not being able to correctly parse numerical ID3v2 genres
- Added work arounds for iTunes putting non-text information in ID3v2 comment frames
- Added a function to export strings to std::wstring
- Added a function to check ASCII compatibility of strings
- Added a function to check Latin1 compatibility of strings
gohanz
15 years ago
http://www.slacky.it
http://www.slacky.it/index.php?option=com_remository&Itemid=29&func=fileinfo&filecatid=153&parent=category
Report
wheeler
15 years ago
Report
catmandu
15 years ago
Report
wheeler
15 years ago
Report
RND
15 years ago
Report
catmandu
15 years ago
Report
MxCl
15 years ago
Report
josep
15 years ago
This is the backtrace that I get when I start juK:
(no debugging symbols found)
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(no debugging symbols found)
`system-supplied DSO at 0xffffe000' has disappeared; keeping its symbols.
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1235021696 (LWP 12590)]
(no debugging symbols found)
(no debugging symbols found)
[KCrash handler]
#4 0xb7c66cb8 in __gnu_cxx::__mt_alloc::deallocate ()
from /usr/lib/libmusicbrainz.so.4
#5 0xb7c66e4e in std::_List_base::_M_clear ()
from /usr/lib/libmusicbrainz.so.4
#6 0xb7c3728b in TagLib::List::~List () from /usr/lib/libtag.so.1
#7 0xb7c39693 in TagLib::Ogg::Page::packets () from /usr/lib/libtag.so.1
#8 0xb7c348eb in TagLib::Ogg::File::packet () from /usr/lib/libtag.so.1
#9 0xb7c3d51d in TagLib::Vorbis::File::read () from /usr/lib/libtag.so.1
#10 0xb7c3d6a2 in TagLib::Vorbis::File::File () from /usr/lib/libtag.so.1
#11 0x080fbabe in Tag::Tag ()
#12 0x080af611 in FileHandle::refresh ()
#13 0x080a4889 in CollectionListItem::checkCurrent ()
#14 0x080a4fff in CollectionList::slotCheckCache ()
#15 0x080a5ade in CollectionList::qt_invoke ()
#16 0xb7185e37 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#17 0xb74a6f6a in QSignal::signal () from /usr/lib/libqt-mt.so.3
#18 0xb71a0fbc in QSignal::activate () from /usr/lib/libqt-mt.so.3
#19 0xb71a829c in QSingleShotTimer::event () from /usr/lib/libqt-mt.so.3
#20 0xb71295a5 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
#21 0xb7129e52 in QApplication::notify () from /usr/lib/libqt-mt.so.3
#22 0x426b111c in KApplication::notify () from /usr/lib/libkdecore.so.4
#23 0xb711e2f9 in QEventLoop::activateTimers () from /usr/lib/libqt-mt.so.3
#24 0xb70d99d2 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#25 0xb713f378 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#26 0xb7128eb3 in QApplication::processEvents () from /usr/lib/libqt-mt.so.3
#27 0xb7128ee1 in QApplication::processEvents () from /usr/lib/libqt-mt.so.3
#28 0x080ce8e9 in processEvents ()
#29 0x080d5a01 in Playlist::addFile ()
#30 0x080d5f7b in Playlist::addFile ()
#31 0x080d6289 in Playlist::addFiles ()
#32 0x080a59c2 in CollectionList::slotNewItems ()
#33 0x080ea213 in PlaylistCollection::ActionHandler::qt_invoke ()
#34 0xb7185e37 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#35 0x41927afd in KDirLister::newItems () from /usr/lib/libkio.so.4
#36 0x41927e6a in KDirLister::emitItems () from /usr/lib/libkio.so.4
#37 0x4192983c in KDirLister::addNewItems () from /usr/lib/libkio.so.4
#38 0x41931317 in KDirLister::openURL () from /usr/lib/libkio.so.4
#39 0xb7185e37 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#40 0x418713e6 in KIO::ListJob::entries () from /usr/lib/libkio.so.4
#41 0x418816ca in KIO::ListJob::slotListEntries () from /usr/lib/libkio.so.4
#42 0x41881c78 in KIO::ListJob::qt_invoke () from /usr/lib/libkio.so.4
#43 0xb7185e37 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#44 0x4186148d in KIO::SlaveInterface::listEntries ()
from /usr/lib/libkio.so.4
#45 0x41863682 in KIO::SlaveInterface::dispatch () from /usr/lib/libkio.so.4
#46 0x41861e80 in KIO::SlaveInterface::dispatch () from /usr/lib/libkio.so.4
#47 0x4185f204 in KIO::Slave::gotInput () from /usr/lib/libkio.so.4
#48 0x4185f399 in KIO::Slave::qt_invoke () from /usr/lib/libkio.so.4
#49 0xb7185e37 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#50 0xb7186411 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#51 0xb74a7b98 in QSocketNotifier::activated () from /usr/lib/libqt-mt.so.3
#52 0xb71a322d in QSocketNotifier::event () from /usr/lib/libqt-mt.so.3
#53 0xb71295a5 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
#54 0xb7129e52 in QApplication::notify () from /usr/lib/libqt-mt.so.3
#55 0x426b111c in KApplication::notify () from /usr/lib/libkdecore.so.4
#56 0xb711d392 in QEventLoop::activateSocketNotifiers ()
from /usr/lib/libqt-mt.so.3
#57 0xb70d9918 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#58 0xb713f378 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#59 0xb7128eb3 in QApplication::processEvents () from /usr/lib/libqt-mt.so.3
#60 0xb7128ee1 in QApplication::processEvents () from /usr/lib/libqt-mt.so.3
#61 0x080ce8e9 in processEvents ()
#62 0x080d5a01 in Playlist::addFile ()
#63 0x080d5f7b in Playlist::addFile ()
#64 0x080d5f7b in Playlist::addFile ()
#65 0x080d6289 in Playlist::addFiles ()
#66 0x080e344d in PlaylistCollection::scanFolders ()
#67 0x080ea05a in PlaylistCollection::ActionHandler::qt_invoke ()
#68 0xb7185e37 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#69 0xb74a6f6a in QSignal::signal () from /usr/lib/libqt-mt.so.3
#70 0xb71a0fbc in QSignal::activate () from /usr/lib/libqt-mt.so.3
#71 0xb71a829c in QSingleShotTimer::event () from /usr/lib/libqt-mt.so.3
#72 0xb71295a5 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
#73 0xb7129e52 in QApplication::notify () from /usr/lib/libqt-mt.so.3
#74 0x426b111c in KApplication::notify () from /usr/lib/libkdecore.so.4
#75 0xb711e2f9 in QEventLoop::activateTimers () from /usr/lib/libqt-mt.so.3
#76 0xb70d99d2 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#77 0xb713f27b in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
#78 0xb713f194 in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
#79 0xb7128f0f in QApplication::exec () from /usr/lib/libqt-mt.so.3
#80 0x080c722e in main ()
All Qt/KDE/Juk/Taglib was build with GCC 4.0.1, amaroK 1.2.3 doesn't crash.
Report
Superstoned
16 years ago
Report
shafff
16 years ago
(in amarok).
Report
wheeler
16 years ago
Report
Superstoned
16 years ago
so many thanx for the work!
Report
veton
16 years ago
Report
shlomil
17 years ago
Just wanted to thank you again for adding the "override the default string handler" feature. This is very important for some of us. I just hope that juk and amaroK's developer will use this feature soon so I can finally read the tags in my mp3 file.
Report
BOSSoNe
17 years ago
i would replace id3lib and vorbisfile by taglib in my apps, but i don't find how to handle pictures stored in id3v2 tags.
Can you give me some little help?
if i've correctly read the api doc for reading i should use:
ID3v2::Tag::frameListMap["APIC"].data()
with this i get the complete frame, so i need to split it to get text encoding
(first byte), mime type, picture type, description and picture data. am i
right?
Thank's
Cyril.
Report
wheeler
17 years ago
<Header for 'Attached picture', ID: "APIC">
Text encoding $xx
MIME type <text string> $00
Picture type $xx
Description <text string according to encoding> $00 (00)
Picture data <binary data>
I'm also planning on adding support for this frame directly in the next release.
Report
wheeler
16 years ago
Report
navindra
17 years ago
I think it would be useful for KDE apps to have a version number, even if it's just 0.1...
Report
wheeler
17 years ago
Report
navindra
17 years ago
I guess someone fixed it.
Report
wheeler
17 years ago
Report
navindra
17 years ago
Report
forestie
17 years ago
Report
wheeler
17 years ago
Report
forestie
17 years ago
Report