Commit Graph

65 Commits

Author SHA1 Message Date
Jonas Kvinge 8094957e09 Fix gst_buffer_unref assertion in chromaprinter 2019-04-26 20:40:42 +02:00
Amish Naidu 107e945872 Convert uses of QtAlgorithms to std:: algorithms 2018-10-09 19:17:54 +01:00
Chocobozzz ded3126857 Add compatibility with chromaprint >= 1.4 2016-12-08 23:12:17 +01:00
Mattias Andersson 32b2afbb97 Parse the year of a disc from musicbrainz.
Run make format
2015-06-14 08:56:50 +02:00
Alexander Bikadorov 96f4d64449 Minor coding improvements for c71aa6 . 2015-05-04 15:43:23 +02:00
Alexander Bikadorov c71aa61f8f Simplification and cleanup fixes for chromaprint fingerprint creation.
Fixes among other things the "GLib-CRITICAL **: Source ID XXX was not found" error.
2015-05-04 15:11:31 +02:00
John Maguire af8f4100cd Fix crash when trying to fingerprint but missing a plugin. 2015-02-03 18:13:23 +01:00
Arnaud Bienner 16b2ac547c Sort music brainz releases according to status 2014-12-06 17:54:13 +01:00
Arnaud Bienner 1779050fff Add error message when MB disc id request fails 2014-10-26 17:07:29 +01:00
David Sansome a2408f7c0e Merge branch 'master' into gstreamer-1.2
Conflicts:
	src/moodbar/moodbarloader.cpp
2014-09-21 19:39:27 +10:00
Arnaud Bienner 57ad86064d Limit the MusicBrainz requests by track.
3 should be enough. It's unlikely that the other ids will be really revelant.
2014-08-11 00:37:02 +02:00
Arnaud Bienner 9b8d09061f We should not sort result from Musicbrainz: they seem to be already sorted by relevance. 2014-08-10 14:23:07 +02:00
Arnaud Bienner 80d272f3d0 None was OK to achieve what I want. Should be better now 2014-08-10 14:22:42 +02:00
Arnaud Bienner bc7bc9910d Actually, I was wrong modifying UniqueResults. We should just not sort the results at the end, to keep the initial order we wanted 2014-08-10 13:20:11 +02:00
Arnaud Bienner 93b4b2caac Get more results from MusicBrainz, and sort them by relevance.
We were stopping at the first one in AcoustidClient::RequestFinished.
To make things worse, it seems that results we received weren't sorted, so we sometimes ignored the most relevant one.
2014-08-09 01:48:35 +02:00
David Sansome 6bb81328e8 Merge branch 'master' into gstreamer-1.2
Conflicts:
	ext/clementine-spotifyblob/mediapipeline.cpp
	gst/moodbar/gstfftwspectrum.c
	src/core/songloader.cpp
	src/core/songloader.h
	src/engines/gstengine.cpp
	src/engines/gstenginepipeline.cpp
	src/moodbar/moodbarpipeline.cpp
	src/musicbrainz/chromaprinter.cpp
	src/transcoder/transcoder.cpp
	src/ui/mainwindow.cpp
	src/visualisations/projectmvisualisation.cpp
2014-06-09 16:20:24 +10:00
Mattias Andersson ac162c3477 Move qRegisterMetaType back to SetUpTestCase(). Add comment
regarding ownership of the optional argument to MusicBrainzClient().
2014-06-02 16:34:03 +02:00
Mattias Andersson 68d445fed2 Parse discid xml from MusicBrainz correctly. Fixes #4025. 2014-05-24 13:54:07 +02:00
Mattias Andersson e14c59948f Add test for MusicBrainzClient. 2014-05-24 13:54:07 +02:00
John Maguire 5146bcdebc Some more NULL -> nullptr conversions. 2014-02-21 17:30:46 +01:00
John Maguire 192b60d965 Use nullptr as parent parameter default everywhere 2014-02-10 16:03:54 +01:00
John Maguire 3323c2d094 Convert all instances of foreach() to a C++11 for
find ext src -name '*.cpp' -exec \
    sed -i -e 's/foreach(\([^,]\+\),/for (\1 :/' {} \;
2014-02-10 14:43:32 +01:00
John Maguire bebd781fdf Reformat all non-3rd-party C/C++/Objective-C++.
Command line:
find src ext -regex '.*\.\(h\|cpp\|mm\)' -exec clang-format -i
 -style='{BasedOnStyle: Google, DerivePointerBinding: false}' {} \;
2014-02-07 16:34:20 +01:00
John Maguire 71893e4847 Use nullptr instead of NULL everywhere. 2014-02-06 17:29:59 +01:00
John Maguire 59cb17c08d Change some API URLs to use https. 2014-01-28 12:57:27 +01:00
David Sansome 5ac83bd463 Merge branch 'master' into gstreamer-1.2 2014-01-25 00:24:31 +11:00
David Sansome 7fdaff079d Don't try to stop the chromaprinter event loop a second time after it's
already been stopped.  This can happen if the song is exactly 30 seconds long.

Fixes issue 4001
2013-12-03 20:32:26 +11:00
John Maguire 56c949815b First pass at Gstreamer 1.0 porting.
This at least compiles against gstreamer 1.2.
Things that work:
* Playing audio
* Automatically completing tags

Things that don't work
* Spotify
* Moodbar

Things I haven't tested
* Transcoding
2013-09-26 17:49:24 +02:00
David Sansome e4f0f25feb Use utf-8 instead of the local system encoding when passing filenames to gstreamer in the chromaprinter. Might fix issue 3703. 2013-06-01 12:55:59 +10:00
John Maguire 90803fa0e0 Remove use of deprecated gstreamer functions. 2013-01-29 13:19:26 +01:00
David Sansome 145b811eef Fix a memory leak when fingerprinting songs. Fixes issue 3403. 2013-01-06 07:51:48 +11:00
David Sansome 97c1d3c345 Remove an old connect() that has since been replaced by a closure connection 2013-01-06 07:51:28 +11:00
Arnaud Bienner ba743ee64f Update MusicBrainz DiscId requests to work with Web Service v2: v1 wasn't working anymore 2012-11-18 22:11:47 +01:00
John Maguire f292a3bf98 Port musicbrainz client to closures. 2012-10-12 14:36:14 +02:00
John Maguire ddf380aa05 Port acoustid client to closures. 2012-10-12 14:25:04 +02:00
John Maguire cbc650f44b Use CHECKED_GCONNECT instead of g_signal_connect everywhere. 2012-06-08 15:34:00 +02:00
Arnaud Bienner 2f710a9395 Add the ability to modify the playlistview's background image.
Updates issue 365
It is now possible to also modify background image, instead of just hide the default one
2012-02-18 19:57:36 +01:00
John Maguire 822d766a04 Add constants for chromaprinter decode rate & channels. 2012-02-02 14:15:55 +01:00
John Maguire 4157169ab5 Fix leak of Chromaprint context. 2012-02-02 14:13:34 +01:00
John Maguire 0c5f422eb8 * Add check that chromaprinter is only used from a non-UI thread.
* Update copyright date
2012-01-09 15:32:15 +01:00
David Sansome e9c0b4bd69 Musicbrainz tagging improvements:
* Fix a bug where the song title would be used for the album field
  * Get the album's year as well
  * Include all releases for a song in the results list
  * Remove duplicate albums
  * Sort results
2012-01-07 21:51:02 +00:00
David Sansome d17629586f Use the system version of libchromaprint if available 2012-01-07 15:27:50 +00:00
John Maguire d6bada074a Port Musicbrainz track lookups to API v2. 2012-01-06 17:01:46 +00:00
John Maguire cdb381a85f Rename MusicDNS -> Acoustid. 2012-01-06 16:51:27 +00:00
John Maguire 9bb37fda62 Disable callbacks after generating fingerprint. 2012-01-06 16:45:34 +00:00
John Maguire 598948d16e Remove echoprint. 2012-01-06 16:42:22 +00:00
John Maguire f241124b1d Remove old OFA fingerprinter. 2012-01-06 16:40:08 +00:00
John Maguire db83c411c2 * Use Chromaprinter instead of OFA fingerprinter.
* Send fingerprint to Acoustid instead of MusicDNS.
* Retrieve MBID instead of PUID and send to Musicbrainz.
2012-01-06 16:31:29 +00:00
John Maguire 423295b01e Add Chromaprinter class to generate fingerprint from gstreamer PCM output. 2012-01-06 15:58:46 +00:00
John Maguire 047bec831b Revert irrelevant musicdns changes. 2012-01-05 15:06:32 +00:00