Sergey Ivanov got review request #100000!

MusicBrainz and MusicDNS services support implementation

Review Request #100000 - Created Sept. 21, 2010 and submitted

Sergey Ivanov
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.

Sergey Ivanov
Stefan Derkits
Leo Franchi
Leo Franchi
Sergey Ivanov
Review request changed

Change Summary:

1) Added status bar.
2) Added labels above the tag tables.
3) Reorganized Save/Close buttons.
4) Added "Automatic search" ability.
5) Added check for empty track titles.


Revision 9 (+3658 -1)

Show changes