Commit Graph

82 Commits

Author SHA1 Message Date
Andreas ff172f6ed4 Network remote can now transcode lossless files before sending them to the remote.
- It is configurable in the settings.
- Any format can be chosen that is supported by the transcoder.
- The status of the transcoder is send to the remote.

- Transcoder format settings have now a postfix so we can define mutliple transcoder formats and use them separatly. Here one for the normal transcoder and one for the network remote transcode. You can pass the postfix in the constructor.
- Fixed Transcoder crash (was introduced with the gstreamer1.0 merge, decodebin doesn't have a "new-decoded-pad").
- Transcoder emits the output filename as well on "JobComplete" signal
- Transcoder can now convert a file to a temporary file ("AddTemporaryJob")
2014-11-13 22:31:49 +01:00
Arnaud Bienner 7ac9e4c6d1 Fix a bug in InsertItems functions that makes Cdda tracks to not be saved/restored correctly when restarting Clementine 2014-10-26 17:08:12 +01:00
John Maguire 5146bcdebc Some more NULL -> nullptr conversions. 2014-02-21 17:30:46 +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
Andreas 94ccd325d7 - Move sha1 cover hash to utilities
- When initializing song check if we have a cover art. If not, check if there is one in the cache and use this.
2013-12-31 15:21:50 +01:00
David Sansome eb20fb5945 Remove all the soruce for WMDM devices. Fixes issue 3748 2013-06-30 08:25:12 +00:00
Uwe Klotz a6d3b48231 Extend tag support: performer, grouping
The transaction handling while upgrading the database schema had to be revised.
Furthermore some QSqlQuery statements needed to be finished properly.

Fixes issue 2556
2013-03-10 18:16:03 +11:00
Mateusz Kowalczyk 7f2c17a0b7 Add track rating/score to OSD.
Fixes issue #2586
2013-02-26 16:33:05 +01:00
Joel Bradshaw 9578c6c647 Adding spot for a unique album ID and implementing on Spotify
To resolve albums with duplicate tracks

Fixes issue 3429
2013-02-02 15:05:11 +01:00
Martin Brodbeck d05041dfa1 Add support for Opus tags. 2013-01-26 11:18:24 +00:00
David Sansome e3c8caa613 Preserve user stats like play/skip counts when reloading song metadata when opening the edit tag dialog. Fixes issue 3359. 2012-12-26 00:50:32 +11:00
John Maguire 941aaca87c Refactor cloud tagging into base class. 2012-12-06 14:23:27 +01:00
Arnaud Bienner af8e8c753e Use a better data structure to track uniques songs when removing duplicate. 2012-11-22 02:06:29 +01:00
Przemysław Dąbek 92637cb7d1 improved removing duplicated songs 2012-11-21 16:06:19 +01:00
John Maguire 543a6bf2fa Remove use of linked SAC shim and depend on DLL version (which doesn't exist yet) 2012-11-13 17:04:54 +01:00
John Maguire f48383c73e Index Google Drive MP3s and write to local database. 2012-07-27 16:04:12 +02:00
Arnaud Bienner b49c3db6e0 Sort retrieved GS songs only in some cases.
Indeed, even it makes sense sometimes (e.g. for playlists) it doesn't make sense at all for search results...
Make the sorting function part of Song.
2012-06-27 01:55:51 +02:00
Kacper "mattrick" Banasik f606ae9ba8 Add an option to prefer AlbumArtist tag over Artist when scrobbling to Last.fm. Fixes issue 2901 2012-05-13 16:05:17 +01:00
Руслан Ижбулатов 5c45e22e28 Make SAC and WMDM optional 2012-01-22 14:35:22 +00:00
David Sansome 31f423a0ff Fix a compilation error 2012-01-07 22:58:19 +00:00
David Sansome 9be641ee87 The external tagreader mostly works now:
* Make TagReaderClient a singleton until it's easier to pass dependencies around
 * Add a WaitForSignal() that uses a local event loop to wait for a signal to be emitted
 * Add a WaitForFinished() to _MessageReplyBase that blocks using a semaphore
 * Add blocking versions of all TagReaderClient methods
 * Use the TagReaderClient everywhere that Song::InitFromFile and friends were used before
2012-01-07 00:26:07 +00:00
David Sansome 85f2f087cb Start work on moving everything that uses taglib out into an external process. 2012-01-05 23:24:48 +00:00
David Sansome b873209d39 Remove the <xiphcomment.h> include from song.h so that windows headers don't infect everything else. Also move other bits of song.h into song.cpp, and reduce the number of includes in song.h. 2011-11-28 13:56:55 +00:00
Angus Gratton 360aaabd0d Add playlist album artist for use in playlist grid view (Issue 509) 2011-11-28 11:04:38 +00:00
Angus Gratton edb9b0b4fe Add album effective_artist filter that falls back to artist when unavailable (Issue 509) 2011-11-28 11:04:38 +00:00
David Sansome 8334484c1e Fix some symbol naming conflicts that happen when including windows header files (taglib >1.7 brings them in for us). 2011-11-27 19:43:07 +00:00
David Sansome b8ee548eb4 Rename the existing "Shuffle by album" mode to "Shuffle tracks in this album", and add a new "Shuffle albums" mode that plays all the tracks in each album sequentially, but then jumps to a different random album afterwards.
Fixes issue 1152
2011-11-27 15:01:10 +00:00
David Sansome 9a739a3346 Add a DBus interface onto the global search engine, and add a KDE krunner plugin that performs global searches in Clementine.
This is optional and is not compiled unless you have the plasma developer packages installed.
2011-10-19 23:17:24 +01:00
David Sansome c8305c0eee Don't record an undo step when all the songs inserted into the playlist were vetoed. Thanks schizosfera. 2011-07-01 20:48:18 +00:00
David Sansome 7415d85dce When initialising a song from a library query, don't always assume the metadata originally came from a file (which means icycast tags are ignored when it is played). Fixes issue 1857 2011-06-17 20:00:10 +00:00
Arnaud Bienner 272841ab73 Starting audio CD support. Starts issue 701 2011-06-09 23:08:43 +00:00
David Sansome 7de618beff Fix registration of metatypes for list handlers on Qt 4.7 2011-05-29 14:08:55 +00:00
David Sansome 792352be3b When songs disappear from the filesystem (either they're deleted or are on a removable media that was unmounted), mark them as unavailable instead of removing them from the database. Thanks google@robbertkrebbers.nl. Fixes issue 401 2011-05-14 13:43:57 +00:00
David Sansome ccb9f8cf94 Use URLs everywhere instead of filenames. Move the URL parsing and song loading code out of individual playlist parsers and into the base class. Fix the playlist parser unit tests. 2011-04-28 12:27:53 +00:00
Arnaud Bienner 65ef047c38 Loading file in async way, in two times: fast loading files and insert them in playlist view, while loading info (tags, ...) in background thread 2011-04-16 14:04:15 +00:00
Paweł Bara bfb068a6d1 conditionally hide some context menu actions in library view and playlist view
Song.is_stream()
2011-03-20 12:43:10 +00:00
David Sansome cb275f318f Add an option to disable automatic crossfading between tracks on the same album or from the same cuesheet. Fixes issue 1479 2011-03-13 18:37:46 +00:00
Paweł Bara 8722e00103 Clementine now skips songs that don't exist anymore (updates issue #250) 2011-03-10 18:01:35 +00:00
John Maguire 19af887465 Disable automated tag encoding correction and instead just mark tags as "suspicious". 2011-03-06 16:39:36 +00:00
David Sansome 285f2c9ff9 Add cross-links to the PyQt4 docs, document Song, NetworkAccessManager, PlaylistSequence 2011-02-27 17:16:22 +00:00
David Sansome 8c691d2b3e Use constants instead of "1eN" literals for converting between time units. 2011-02-14 19:34:37 +00:00
David Sansome 507c5e2632 Change the fields in Song from seconds to nanoseconds 2011-02-13 18:34:30 +00:00
Paweł Bara 9a9d8ad177 don't let invalid CUE related media files into library (invalid == those which were not recognized by TagLib)
better logging of erroneous DB queries (error + query + bound values instead of just error)
2011-02-05 13:43:04 +00:00
John Maguire 084b9a2fe3 Remove taglib prefix from includes as the taglib include path contains it already. 2011-02-04 12:36:56 +00:00
Paweł Bara 77151d7ebd Hiding some of Song's cover art logic complexity in Song's API (namely: embedded and manually unset covers). 2011-02-02 21:01:08 +00:00
David Sansome 5e9edd52fe Hold the taglib mutex while loading embedded cover art from files. Fixes issue #1350 2011-01-24 20:06:59 +00:00
Paweł Bara a883630ab3 duplicate remover script (fixes #21)
fix a scripting crash when one native object was registered more than once
veto mechanism for inserting songs into playlist
2011-01-16 23:46:58 +00:00
Paweł Bara ddd3f119d3 CUE songs are now properly updated in library - you can delete a CUE sheet, add it, you can change section markers in it etc. and everything should work as expected
Song now knows it's cue path (if any)
2011-01-15 18:46:23 +00:00
Paweł Bara bbe97b00a2 make engine 'multiple-section songs' aware -> you should now be able to play your .cue related music 2011-01-02 18:53:45 +00:00
Paweł Bara d7fe4600b8 an initial version of .cue sheets parser
initial support for multipart media files in Song ('beginning' and 'end' fields)
2010-12-23 21:13:43 +00:00