Commit Graph

63 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
Andreas 1ad5884b39 Fix some minor C++ things in OutgoingDataCreator. 2014-10-23 18:07:39 +02:00
Andreas c43eb02efd Android Remote: Add global search. 2014-10-21 18:07:02 +02: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 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
Arnaud Bienner 7084697aa3 Prevent Clementine to loop forever when trying to play a song with repeat enabled in a playlist which contains only unavailable songs 2014-02-04 22:08:32 +01:00
Andreas 7ad1d7abc3 Remote: Use sha1 instead of md5 for file hashing. 2014-01-18 18:33:49 +01:00
Andreas 8ff0692809 Network remote: send md5 hash along with library and files. 2013-12-31 15:26:42 +01:00
Andreas 00fd9b4724 Androids like kittens, too 2013-12-22 15:16:42 +01:00
Andreas 03a4145082 Check if track position is valid before sending. Bump protocol version. 2013-12-08 20:19:25 +01:00
Andreas b5ba1164af Send only songs from library which are available. 2013-12-03 12:19:46 +01:00
Andreas 42d9a86ff0 Calculate chunkcount with the real file size, not the size saved in the database (might be wrong and results in corrupted download). 2013-11-29 13:59:48 +01:00
Andreas f6ab3a9044 Fix library download in network remote. 2013-10-25 20:31:56 +02:00
Andreas 90c8929f96 Fix crash when fetching lyrics with the network remote. 2013-10-09 19:33:59 +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
Andreas 9e322adfd4 Track position timer was not started when a client connects and Clementine is playing a track. 2013-08-11 21:46:29 +02:00
Andreas 53b8f59e6f Try to fix Windows build. 2013-08-01 19:13:43 +02:00
Andreas 3a309e9b25 Added message to retrive the library (table songs). 2013-08-01 18:13:14 +02:00
Andreas 662b635d96 - Do not send cover arts on file download chunks.
- Set the version in the send function, not in each function that creates a protocol buffer message.
2013-08-01 10:52:01 +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 7238916359 Some code style improvements. 2013-07-19 14:41:49 +02:00
Andreas b4cf8280c3 - DownloadItem has a constructor now.
- Use QQueue instead of QQueue* for download_queue_.
- Code cleanup.
2013-07-19 14:16:32 +02:00
Andreas d1da0159e2 - Check if Queue is empty before sending next song.
- Changed the way the queue is deleted after client disconnects.
2013-07-18 12:14:00 +02:00
Andreas 66eff922d8 Delete download queue entry only if it contains the client. 2013-07-18 11:39:52 +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 01084de461 Fix memory leak when a client downloads tracks. 2013-07-16 22:16:05 +02:00
Andreas 6c19acdf48 Memory optimization in network remote. 2013-07-16 17:47:49 +02:00
Andreas 150345f2a6 Fix build error with QT < 4.7 2013-07-12 13:27:52 +02:00
Andreas c09d77f413 Network remote can now send songs to clients. 2013-07-12 12:31:27 +02:00
Andreas 6b92048c15 Code cleanup. 2013-07-10 20:00:52 +02:00
Andreas c413beda8f Only send lyrics from active providers. 2013-07-10 13:51:18 +02:00
Andreas 9e0b877e5a The network remote can now send lyrics to clients. 2013-07-10 13:24:23 +02:00
Andreas 20e1f1b3d6 Rescale album art when heigt is greater than 1000px, too. 2013-06-01 13:52:39 +02:00
Andreas bcaeac7a02 Track position update was sometimes not sent on first track. 2013-05-27 16:08:35 +02:00
Arnaud Bienner e9f14d9f8a Fix GetPlaylist and update network remote 2013-05-11 23:59:51 +02:00
Andreas 8888cc410a Send closed playlists too if requested. 2013-04-16 13:57:04 +02:00
Andreas a79834755b Change connect message handling. 2013-03-27 16:54:02 +01:00
Andreas 3f2aae602e - Send data to clients only if they are authenticated.
- Send songs of the active playlist if the active playlist changes.
2013-03-23 17:02:00 +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
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
Andreas 578e143cf1 Fix: playlist name with non ASCII characters was not transfered correctly. 2013-02-15 15:57:45 +01:00
Andreas 8175e23f91 Always send default version. With the default tag the version is not sent automatically. 2013-02-08 18:52:14 +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
Andreas 8a97e317a6 Send Random and Repeat Mode on connection. 2013-02-03 20:24:36 +01:00
Andreas 617c575ef4 Send all playlist on connect. 2013-02-02 16:51:48 +01:00
Andreas 4ed516ad1f Send the current track position when a client connects 2013-01-26 11:52:53 +01:00