<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/100000/">http://git.reviewboard.kde.org/r/100000/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On September 21st, 2010, 10:37 p.m., <b>Stefan Derkits</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Personally I don't really like libofa because it looks like it is an abandoned Project without any current Maintainer</pre>
</blockquote>
<p>On September 22nd, 2010, 9:30 a.m., <b>Sergey Ivanov</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">There is no any alternatives atm (or I just don't know about it?).</pre>
</blockquote>
</blockquote>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">liblastfm also has fingerprinting support that works pretty good. Unfortunatley it doesn't return MBIDs for every Song, mostly just for the Artists.
But it can also use the last.fm API to return you the Tags of fingerprinted songs.</pre>
<br />
<p>- Stefan</p>
<br />
<p>On September 22nd, 2010, 9:23 a.m., Sergey Ivanov wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.orgrb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for amarok.</div>
<div>By Sergey Ivanov.</div>
<p style="color: grey;"><i>Updated 2010-09-22 09:23:42</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">MusicBrainz and MusicDNS services support implementation.
There are three independent parts:
1. MusicBrainzFinder class - used to make requests to MusicBrainz server and process replies. All relies process in separate threads by MusicBrainzXmlParser class. For a search uses guessed from a file name track information. No external dependences required.
2. MusicDNSFinder class - used for the same purpose as MusicBrainzFinder, but i communicate with musicdns server and receives track's PUID as a reply. Replies ether process in separate threads by MusicDNSXmlParser class. Fingerprints generated by libofa (the only external dependence in entire patch). For track decompressing (MusicDNSAudioDecoder class) used xine engine (I'm not sure is It a good choice, but amarok based on phonon media-engine, that uses xine. So we don't deed to pull any other dependences). Received PUIDs sends to MusicBrainzFinder class, for a search routine.
3. View. All classes used for store (MusicBrainzTagsModel, MusicBrainzTrackListModel) and display (MusicBrainzTagsModelDelegate) purposes.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>CMakeLists.txt <span style="color: grey">(191b02e)</span></li>
<li>cmake/modules/FindLibOFA.cmake <span style="color: grey">(PRE-CREATION)</span></li>
<li>config-amarok.h.cmake <span style="color: grey">(981b7b7)</span></li>
<li>src/CMakeLists.txt <span style="color: grey">(42614ff)</span></li>
<li>src/core-impl/capabilities/timecode/TimecodeEditCapability.h <span style="color: grey">(6e15303)</span></li>
<li>src/core-impl/capabilities/timecode/TimecodeEditCapability.cpp <span style="color: grey">(8205d45)</span></li>
<li>src/core-impl/collections/mediadevicecollection/MediaDeviceMeta.h <span style="color: grey">(e35b57f)</span></li>
<li>src/core-impl/collections/mediadevicecollection/MediaDeviceMeta.cpp <span style="color: grey">(9be62d9)</span></li>
<li>src/core-impl/collections/proxycollection/ProxyCollectionMeta.cpp <span style="color: grey">(8bdbf75)</span></li>
<li>src/core-impl/collections/sqlcollection/CapabilityDelegateImpl.cpp <span style="color: grey">(b5cb083)</span></li>
<li>src/core-impl/collections/sqlcollection/SqlMeta.h <span style="color: grey">(ee3ec21)</span></li>
<li>src/core-impl/collections/sqlcollection/SqlMeta.cpp <span style="color: grey">(2da0333)</span></li>
<li>src/core-impl/meta/file/File.h <span style="color: grey">(6d4d395)</span></li>
<li>src/core-impl/meta/file/File.cpp <span style="color: grey">(30cd2ff)</span></li>
<li>src/core-impl/meta/file/TagLibUtils.cpp <span style="color: grey">(15b64a4)</span></li>
<li>src/core-impl/meta/proxy/MetaProxy.h <span style="color: grey">(2ef3805)</span></li>
<li>src/core-impl/meta/proxy/MetaProxy.cpp <span style="color: grey">(341e076)</span></li>
<li>src/core/capabilities/EditCapability.h <span style="color: grey">(79344bd)</span></li>
<li>src/dialogs/MusicBrainzTagger.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/dialogs/MusicBrainzTagger.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/dialogs/MusicBrainzTagger.ui <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/dialogs/TagDialog.h <span style="color: grey">(50cd801)</span></li>
<li>src/dialogs/TagDialog.cpp <span style="color: grey">(68fc5e3)</span></li>
<li>src/dialogs/TagDialogBase.ui <span style="color: grey">(9974d0b)</span></li>
<li>src/musicbrainz/MusicBrainzFinder.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzFinder.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzMetaClasses.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzMetaClasses.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzTagsModel.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzTagsModel.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzTagsModelDelegate.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzTagsModelDelegate.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzTrackListModel.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzTrackListModel.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzXmlParser.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicBrainzXmlParser.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicDNSAudioDecoder.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicDNSAudioDecoder.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicDNSFinder.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicDNSFinder.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicDNSXmlParser.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/musicbrainz/MusicDNSXmlParser.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>tests/core-impl/collections/proxycollection/TestProxyCollectionMeta.cpp <span style="color: grey">(55d1914)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/100000/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>