Commit Graph

234 Commits

Author SHA1 Message Date
John Maguire 87fed5d0f4 Merge pull request #4715 from Chocobozzz/albumartist_flac
Fix album artist for FLAC/OGG files (with vorbis comments)
2015-01-19 10:57:31 +01:00
Chocobozzz c61d866caf Fix album artist for FLAC/OGG files (with vorbis comments) 2015-01-16 18:30:11 +01:00
Arnaud Bienner e1139e731f run make format 2015-01-14 22:55:20 +01:00
Arnaud Bienner 7039c2a2bf Spotify: add the ability to add/remove tracks to/from Starred playlist 2015-01-14 22:49:36 +01:00
Arnaud Bienner 7278e7c4d0 Add ability to get a link to share Spotify playlists 2014-12-27 18:05:04 +01:00
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
John Maguire 4f4c8f6894 Merge pull request #4580 from Chocobozzz/hide_internet_services
Hide internet services
2014-10-31 12:02:29 +01:00
Arnaud Bienner f2eecadbd3 Don't write rating if not set
Fixes issue #4128
2014-10-21 21:49:23 +02:00
Andreas c43eb02efd Android Remote: Add global search. 2014-10-21 18:07:02 +02:00
Chocobozzz 50b7b7d889 Make format after update to avoid conflicts 2014-10-15 21:57:57 +02:00
David Sansome 88a6300509 Completely revert the Spotify seeking stuff - it's hacky and I don't like
waiting 4 seconds to have my songs start.  I'll reimplement it properly later.

Reverts commits 96387803cd and 160b151652.
2014-10-14 19:33:03 +11:00
Arnaud Bienner f81fa2d119 Add the ability to remove tracks from Spotify playlists 2014-09-28 02:00:32 +02:00
Arnaud Bienner 39db4dbefe Add the ability to add a Spotify track to a Spotify playlist through context menu.
TODO: drag and drop (i.e. implement DropMimeData), update special playlist (Favorites), remove from playlist.
2014-09-22 22:40:21 +02:00
David Sansome eaad4c32ee Merge branch 'gstreamer-1.2'
Fixes #3332
2014-09-22 22:45:28 +10:00
David Sansome bb08a0f416 Fix misleading offset_bytes names 2014-09-22 00:13:00 +10:00
David Sansome 3f0dc01b06 Make Spotify work with gstreamer-1.0. 2014-09-21 22:39:30 +10:00
David Sansome a2408f7c0e Merge branch 'master' into gstreamer-1.2
Conflicts:
	src/moodbar/moodbarloader.cpp
2014-09-21 19:39:27 +10:00
David Sansome 6b32ecec27 Various bits for gstreamer-1.0 compatability 2014-09-21 19:38:13 +10:00
Arnaud Bienner 160b151652 Add seek ability to Spotify tracks.
This is functional but pretty hacky.
And, as noted in the comments, there is a small delay (depends, but usually several seconds) to have the seek taken into account. But IMHO it's better than nothing.
Fixes #2503
2014-09-14 02:15:58 +02:00
pie.or.paj cbc6e5cf4d Pause spotify track (issue 2503)
(patch slightly modified, not sure why it wasn't applied before: it looks good to me)
2014-09-06 19:21:23 +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
Chocobozzz ef6dd38d0d use unique_ptr instead 2014-06-05 17:42:55 +02:00
Chocobozzz 2595df9779 Change the comment for TagLib::MPEG:File 2014-06-05 15:48:20 +02:00
Chocobozzz 357a9ff194 Fix memory leak in tagreader 2014-06-05 15:47:14 +02:00
David Sansome 0bf911aec4 Clean up the stream if ownership isn't taken by a taglib file. 2014-06-05 20:20:57 +10:00
Andreas f52e48c956 Send filesize and file count in advance when client wants to download songs. 2014-05-10 14:53:38 +02:00
Andreas 24481ae7bc Clementine Remote can now download all urls that are in the library. 2014-05-08 19:17:58 +02:00
John Maguire 41e9c15248 Add arraysize macro from Chromium 2014-04-29 14:11:52 +02:00
John Maguire 30d1c2f8db Remove Ubuntu One support.
http://blog.canonical.com/2014/04/02/shutting-down-ubuntu-one-file-services/
2014-04-02 16:02:00 +02: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 1ac3f53a89 Build spotify blob as c++11 2014-02-06 18:06:25 +01:00
John Maguire 71893e4847 Use nullptr instead of NULL everywhere. 2014-02-06 17:29:59 +01:00
John Maguire d309d4ab27 Use c++11 instead of boost where possible. 2014-02-06 16:51:39 +01:00
David Sansome 5ac83bd463 Merge branch 'master' into gstreamer-1.2 2014-01-25 00:24:31 +11:00
Andreas 8ff0692809 Network remote: send md5 hash along with library and files. 2013-12-31 15:26:42 +01:00
Martin Brodbeck b5eb77528b Don't use TPE1 for performer 2013-12-19 14:03:23 +01:00
Martin Brodbeck a8ae737bce Improved file type detection for Ogg/Opus 2013-12-16 13:45:25 +01:00
Martin Brodbeck 587fa39dad Improved embedded cover handling for Ogg METADATA_BLOCK_PICTURE 2013-12-11 14:30:27 +01:00
Martin Brodbeck 818a028739 Added rudimentary support for METADATA_BLOCK_PICTURE tag 2013-12-10 15:39:43 +01:00
Andreas 03a4145082 Check if track position is valid before sending. Bump protocol version. 2013-12-08 20:19:25 +01:00
John Maguire cc43e339c1 Use boost function for compatibility 2013-11-22 11:53:47 +00:00
John Maguire b17b075361 Compile fixes for 10.9 2013-11-21 17:59:31 +00:00
Andreas 7470f67acf - Fix remove songs from playlist in network remote.
- Update protocol buffer version.
2013-10-31 19:52:02 +01: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
Andreas 9237356e33 - Send songrating to client.
- Receive songrating as float (like saved in Song).
- On RemoteClient destructor check if socket is still connected before calling waitForDisconnect()
2013-09-22 12:06:19 +02:00
David Sansome f0b9120c43 Create a Fatal logging level, and use it when sqlite symbols can't be resolved. 2013-09-18 00:15:46 +10:00
Andreas 1254d025ab Include rate song feature in network remote. 2013-08-15 20:52:12 +02:00
Arnaud Bienner 8ddba1dfb5 Make ConvertPOPMRating works with slightly different POPM rating scheme for 5 stars. Fix issue 3794. 2013-08-02 22:13:29 +02:00
Arnaud Bienner c32408eded Fix ConvertToPOPMRating 2013-08-02 22:09:46 +02:00
Andreas 3a309e9b25 Added message to retrive the library (table songs). 2013-08-01 18:13:14 +02:00
Andreas 0785214949 - Do not offer streams to download clients.
- Move Google Play logo and qr code to the middle of the settings screen.
2013-07-27 14:13:02 +02:00
Andreas cf1dfe0d58 Clementine will offer a song before download first. The client can deceide if it want to download it or not. Only when the client accepted the file, Clementine sends it. 2013-07-23 16:59:50 +02:00
Andreas 1e4819f2df Add stop after current track feature to network remote. 2013-07-20 19:38:37 +02:00
Andreas f67083c92e Network remote: Each song will be send after client confirms that the previous track was received. Saves a lot of memory especially when sendings lossless files. 2013-07-18 11:28:53 +02:00
Andreas c09d77f413 Network remote can now send songs to clients. 2013-07-12 12:31:27 +02:00
Andreas 9e0b877e5a The network remote can now send lyrics to clients. 2013-07-10 13:24:23 +02:00
Andreas 7406057e5f Bump proto version, so users have to update Clementine in order to use the new features. 2013-05-07 18:33:45 +02:00
Andreas 4bb433e912 - Correct filename in coverexport when textfield is empty.
- Network clients can now love and ban tracks.
2013-05-07 17:57:53 +02:00
Andreas 5fe0f3402a New requests for opening and closing playlists in the network remote. 2013-04-20 16:11:57 +02:00
Andreas 8888cc410a Send closed playlists too if requested. 2013-04-16 13:57:04 +02:00
pie.or.paj 18e8d6ca20 - Added basic playlist management (add and remove tracks) in network remote. 2013-04-13 11:57:05 +02:00
Arnaud Bienner 88918d45c5 Update issue 1175:
Save rating and statistics in two distinct ways, and let users activate them separately in preferences.
2013-03-30 23:42:29 +01:00
Andreas a79834755b Change connect message handling. 2013-03-27 16:54:02 +01:00
Andreas 8251b53411 Merge branch 'master' of https://code.google.com/p/clementine-player 2013-03-21 16:15:38 +01:00
Andreas 7939890545 - Send the playlisttracks from the currenly active one in SendFirstData().
- New proto type FIRST_DATA_SENT_COMPLETE: Is send, when the method SendFirstData() finishes.
2013-03-21 16:14:13 +01:00
John Maguire a459eff0d3 Support audio/x-flac as a mime type for FLAC files. 2013-03-21 14:03:41 +01:00
Andreas be68c9f702 If use auth code is enabled, check if the client has sent the correct auth code before processing any messages. 2013-03-21 10:57:52 +01:00
Andreas ed86c7b09b - New protocol buffer type: ACTIVE_PLAYLIST_CHANGED. This type is sent when the currenly active playlist changes instead of sending all playlists to the clients. 2013-03-20 15:57:22 +01:00
Arnaud Bienner 8450a9ded0 Try to fix Windows build 2013-03-18 23:41:01 +01:00
Arnaud Bienner 77c6a22962 Write/Read score to/from files' tags, as "Amarok score" as we use the same algorithm 2013-03-15 22:54:59 +01: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
Arnaud Bienner 1abadaf8fd Use constants 2013-03-03 00:49:51 +01:00
Arnaud Bienner 0b6e91daea FMPS support for MP4 files 2013-03-03 00:18:59 +01:00
Arnaud Bienner f04923210d FMPS support for ASF files 2013-03-02 23:54:54 +01:00
Arnaud Bienner b0d643cbd9 Save/read FMPS tags to/from FLAC using Vorbis comments + some refactoring to parse VorbisComments in a unique place, when possible. 2013-03-02 00:03:51 +01:00
Arnaud Bienner 1386a54d78 Read/Write FMPS tags for Ogg files 2013-02-28 20:55:21 +01:00
Arnaud Bienner 16793744c0 Read and write POPM tags 2013-02-28 02:17:15 +01:00
John Maguire dd59aaada0 Delete closures if the receiver is deleted. 2013-02-26 16:27:44 +01:00
Arnaud Bienner 08d40f5fca Handle statistics tags apart, and write them to file when they change.
Next step: add a preference to activate this (should be deactivated by default IMO).
2013-02-24 17:45:25 +01:00
Arnaud Bienner 39e1275980 Write FMPS metadata (rating, playcount) to MP3 files in tagreader + corresponding test cases 2013-02-23 20:12:17 +01:00
Arnaud Bienner ba1a3f45ec Fix the build 2013-02-23 01:02:36 +01:00
Arnaud Bienner 3fb041ff03 Ooops... I forgot tagreader files :/ 2013-02-23 00:02:02 +01:00
Arnaud Bienner 47c9153fe2 Move everything about reading/writing tags from tagreaderworker to a new tagreader class.
Re-activate Song tests.
2013-02-22 23:57:31 +01:00
John Maguire b3d5c3e6e2 Remove unused variables. 2013-02-12 12:23:29 +01:00
Andreas 589816e82c - Added various playlist signals.
- Bump Proto version to 3, so that people update Clementine when using new Android App Version is released.
2013-02-07 21:34:04 +01:00
John Maguire 53608665e4 Merge branch 'master' of https://code.google.com/r/asfa194-clementineremote 2013-01-28 15:41:51 +01:00
Martin Brodbeck d05041dfa1 Add support for Opus tags. 2013-01-26 11:18:24 +00:00
Andreas 9472c5ace2 - Fixed a bug where clementine crashed when restarting the server (e.g. changed setting). Cause by wrong connect statement.
- Added set track position feature in proto
- Added authentication method
- Clementine sends now a disconnect message when closed
2013-01-23 20:02:12 +01:00
Andreas 0828115c74 - Display a qr code in the remote control settings to download the android app
- Transfer the current track position to clients
2013-01-22 22:02:16 +01:00
Chris Throup 6cb083be30 Read comments from MP4 tags. 2013-01-22 08:58:28 +00:00
Chris Throup f41d333788 Read and write extra metadata for MP4 tags. Fixes issue 222.
Now writes album artist, disc number, composer, compilation and bpm.
Now reads disc number and composer.
Previously read album artist.
Unconfirmed read for compilation and bpm.
2013-01-21 09:16:18 +00:00
Andreas 51ba9f47dc added repeat and shuffe functionality 2013-01-15 14:43:02 +01:00
Andreas 0a97623df3 Changed sending playlist songs 2013-01-15 14:03:00 +01:00
John Maguire 06568248fc Tidy up some remote control protobuf usage and style quirks. 2013-01-15 13:05:43 +01:00
Andreas 8cb0b3d349 fixed commit 2013-01-14 22:00:56 +01:00
Andreas 570b4f9e88 Corrected proto 2013-01-14 21:42:08 +01:00
Andreas aa8d512444 Merge remote-tracking branch 'remote/remotecontrol'
Conflicts:
	ext/libclementine-remote/remotecontrolmessages.proto
	src/networkremote/networkremote.cpp
2013-01-14 21:39:01 +01:00
Andreas 516e58fbc9 Changed proto 2013-01-14 19:07:34 +01:00