Commit Graph

206 Commits

Author SHA1 Message Date
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
John Maguire d1a1f70bf9 Make version and msgType optional for better backwards-compatibility. 2013-01-14 16:53:57 +01:00
John Maguire 088d179e9b Add UNKNOWN to remote control proto to make backwards compatible changes
easier later.
2013-01-14 16:50:00 +01:00
John Maguire 555467e764 Tidy up remote control protobuf. 2013-01-14 16:17:36 +01:00
Andreas e915d2e993 Transfer coverart without base64 2013-01-14 16:09:22 +01:00
Andreas 6bb02d2731 Transfer coverart without base64 2013-01-12 17:22:40 +01:00
Andreas 04ccdbbf08 added version to protocol buffer message
changed client handling
only non public ips can connect (can change that in options)
2013-01-10 21:21:55 +01:00
Andreas c732e70511 multiclient support and shuffle feature 2013-01-09 20:07:28 +01:00
Andreas fe0c1b5206 Changed xml to protocol buffers 2013-01-03 21:40:47 +01:00
John Maguire 195e1cb2ad Support arbitrary return type in closure for member function pointer. 2012-12-13 16:55:23 +01:00
John Maguire 020f08438f Support member function pointers in Closure.
Bonus: type-safe slots
2012-12-13 16:27:55 +01:00
John Maguire 94f76a9d08 Support function pointers and std functions with arguments in Closure. 2012-12-13 16:13:38 +01:00
John Maguire 919e9215c4 Support indexing files from Skydrive. 2012-12-13 14:27:21 +01:00
John Maguire 62e3e4cb91 Support WMA in cloud services. 2012-12-07 12:07:43 +01:00
John Maguire 941aaca87c Refactor cloud tagging into base class. 2012-12-06 14:23:27 +01:00
John Maguire 951cac2ad6 Use changes API instead of search API in Google Drive. 2012-12-05 14:17:03 +00:00
John Maguire 18c7f3d5ed Support m4a and flac in dropbox. 2012-11-30 16:56:23 +01:00
John Maguire 90bb00939b Don't ignore HTTP errors when reading tags from cloud providers. 2012-11-30 16:12:12 +01:00
John Maguire 8e91e42dcc Add dropbox files locally after tagging and make them playable. 2012-11-29 20:48:34 +01:00
John Maguire 3c9b3d99e6 Read tags from dropbox files. 2012-11-29 20:48:34 +01:00
John Maguire 6c5e831a7d Remove tag encoding detection as we don't really use it anymore. 2012-11-29 13:41:20 +01:00
John Maguire 1981fd0b7e Fix minimal build. 2012-11-29 12:17:47 +01:00
John Maguire bd899b382d Range-based for loops not supported in GCC 4.4. 2012-11-28 17:34:54 +01:00
John Maguire 9c7a3ab105 Rename google drive tagging methods to more appropriate generic names. 2012-11-28 16:34:10 +01:00
John Maguire 210f978188 Rename GoogleDriveStream -> CloudStream. 2012-11-28 16:25:57 +01:00
John Maguire db586ca00e Read tags from Ubuntu One files and add to local database. 2012-11-28 14:43:03 +01:00
John Maguire c294098aef Use tr1 for mac compatibility 2012-11-26 10:10:20 +01:00
John Maguire 11f664083a Add support for standard function callbacks in NewClosure (including C++11 lambdas). 2012-11-26 09:41:26 +01:00
John Maguire 4e9231976e Unpack variadic arguments into QGenericArguments without boost::tuple. 2012-11-22 17:57:26 +01:00