chme
5f307c7ce1
Added support for playqueue-contents with negativ span value (returns the previously played songs)
2014-05-03 20:16:51 +02:00
ejurgensen
8eb6b46ed2
Adjustments to queue_move/queue_remove, mostly for consistency
2014-04-21 21:21:40 +02:00
chme
4c5abdac5e
add songs for album or artist ordered by album
2014-04-20 11:03:49 +02:00
chme
01cc83f819
respect coding convention and changed log level
2014-04-20 06:43:01 +02:00
chme
32c3b57fcd
added support for the playqueueedit add next command
2014-04-19 09:12:58 +02:00
chme
475a2f4e8f
added support for the playqueueedit remove command
2014-04-19 08:35:07 +02:00
chme
c3c2c421d2
added support for the playqueueedit move command
2014-04-19 08:09:32 +02:00
ejurgensen
365c5a3bc9
Only queue the rest of the album on quirky query
2014-04-18 22:39:17 +02:00
ejurgensen
9efc97d702
Add support for query-modifier=containers in DACP playqueue-edit
2014-03-31 01:53:46 +02:00
ejurgensen
3ff4fa77be
Merge branch 'libevent2' into dev
2014-03-24 04:59:08 +01:00
ejurgensen
708b76ce1e
Play only a single item when playspec has item-spec (Podcasts/Audiobooks)
2014-03-21 23:38:14 +01:00
ejurgensen
687f349927
Let configure check libevent version and include according to version
2014-03-13 23:33:35 +01:00
ejurgensen
190f91114e
Support songartistid (asri) in group requests and queuefilter=artist
...
- credit misenhower of wp8remote.com
2014-02-21 20:39:57 +01:00
ejurgensen
1ec1528f3b
Mimic iTunes and reply 204 No Content to playqueue-edit&add
2014-02-13 15:46:24 +01:00
ejurgensen
9c90abf603
Allow 0 as an initial value of revision-number
2014-01-03 22:22:21 +01:00
ejurgensen
c360bdd5bd
Also account for playqueue-edit?...queuefilter=album:(null)
2013-11-23 23:05:13 +01:00
ejurgensen
9760a43ccf
Add support for mode 2 (shuffle) in playqueue-edit and -contents
2013-11-22 22:05:55 +01:00
ejurgensen
afd25b79d9
Support for playqueue-edit
2013-11-22 16:41:57 +01:00
ejurgensen
4d542f9e22
Set some dmap_send_error messages to "Invalid request"
2013-11-21 23:44:37 +01:00
ejurgensen
83a89edfd0
Small changes in playqueue-edit wrapper
2013-11-21 23:41:29 +01:00
ejurgensen
a4c16741d9
Better support for playqueue-edit (command add, mode 1)
...
- reply message not fixed
2013-11-21 23:33:03 +01:00
ejurgensen
ecd8b5d940
Misc work on httpd_dacp for support of playqueue-*
...
- playqueue-edit still working poorly, but added documentation
2013-11-17 23:15:50 +01:00
ejurgensen
0576643ae5
Use artist in Up Next
2013-11-16 22:33:12 +01:00
ejurgensen
f42bbd37e1
Add basic support for playqueue-contents (real reply) and add placeholder
...
for playqueue-edit
2013-11-14 23:14:58 +01:00
ejurgensen
00a790c0c1
Fix typo and add more comments
2013-11-09 23:58:18 +01:00
ejurgensen
f71954eb43
Add dummy playqueue-contents support
2013-11-09 23:51:36 +01:00
ejurgensen
0d5fef60e6
Add empty DACP property get for media-kind and extended-media-kind
2013-11-07 22:45:12 +01:00
ejurgensen
c70496bb58
Accept item-spec in playspec requests
2013-10-19 11:07:10 +02:00
ejurgensen
736d19f924
Fix error in c897761ee3
...
Changed the way it's detected if speaker id is hex or dec
2013-08-31 11:03:15 +02:00
ejurgensen
83edef0f01
Fixes two issues with Hyperfine Remote for Android
...
1. H. Remote uses the playpause command to both play and pause,
but forked-daapd would only support play, not pause.
2. H. Remote sends speaker id's in decimal, not in hex like other
remotes. Fixed so forked-daapd will understand both.
2013-08-30 21:50:31 +02:00
Thijs Reus
6b0fde9dba
Fixed RemoteApp communication which broke for Remote 3.0 due to some new properties in the query
2013-05-24 18:44:57 +02:00
Julien BLACHE
4472f9e955
Fix infinite loop on unknown DACP property
...
Missing strtok_r() call in the !dpm case.
2011-08-15 12:50:43 +02:00
Julien BLACHE
52691d6c4d
Rename dmap_helpers.[ch] to dmap_common.[ch]
2011-04-09 10:11:34 +02:00
Julien BLACHE
6949859ff1
Add caiv tag to video-capable devices in speaker list
2011-04-09 10:11:34 +02:00
Julien BLACHE
f3e7836453
Introduce struct spk_flags to reduce argument count for enumeration callback
2011-04-09 10:11:34 +02:00
Julien BLACHE
cbb1669ee1
Replace AVL tree in DACP by a static hash using gperf
2011-04-02 09:52:19 +02:00
Julien BLACHE
ac73ee0ce5
Enable and handle JPEG artwork in DACP
2011-04-01 22:04:09 +02:00
Julien BLACHE
c7209ab699
Add support for JPEG as a valid artwork output format
...
Reduce CPU usage by avoiding unneeded JPEG -> PNG conversions; it appears
all the clients we care about support JPEG as well as PNG.
2011-03-30 21:50:29 +02:00
Julien BLACHE
d6d7450557
Bump DACP protocol version
2010-12-04 15:08:07 +01:00
Julien BLACHE
76621797e2
Implement DACP volume interface for Remote 2.0
2010-12-04 15:08:07 +01:00
Julien BLACHE
1372f90ce7
Send out per-speaker (relative) volume atom
2010-12-04 15:08:07 +01:00
Julien BLACHE
5674314161
Support clear-first in cue play command
2010-12-04 15:08:07 +01:00
Julien BLACHE
0df4ab4555
Implement master volume & per-speaker relative volume
...
Volume is set independently for each speaker relative to the master
volume. Methods allow to set speaker volume independently and in relation
to the master volume.
2010-12-04 15:08:07 +01:00
Julien BLACHE
12daf7237e
Downgrade debug message priority
2010-11-28 17:33:07 +01:00
Julien BLACHE
942f3e4aad
Modify player-to-DACP status update communication
...
Have DACP set a callback (through a sync_command() setter) into the player
instead of setting an fd without any locking. All the code now lies in DACP
instead of being split between DACP and the player.
2010-09-13 18:40:41 +02:00
Julien BLACHE
01b42d3108
Fix typo, checking for evbuf instead of update
2010-09-12 17:31:31 +02:00
Julien BLACHE
535d691a4a
Fix full_uri memory leak in error path
2010-09-10 18:47:42 +02:00
Julien BLACHE
e373f83660
Kill useless memset() call
2010-08-04 19:01:53 +02:00
Julien BLACHE
d9f5e2aa40
Set playlist ID when queueing a playlist via DACP playspec
2010-07-31 12:32:14 +02:00
Julien BLACHE
ec1fc46c01
Include playlist ID in nowplaying
2010-07-31 12:31:56 +02:00
Julien BLACHE
94b4cd2459
Add support for shuffle in DACP playspec request
2010-07-31 12:09:13 +02:00
Kai Elwert
fa0ee0553a
Implement DACP playspec request
2010-07-31 12:09:13 +02:00
Kai Elwert
055fe8f442
Make player_queue_make() generic and introduce player_queue_make_daap()
2010-07-31 10:30:45 +02:00
Julien BLACHE
58f4f2d345
Stop playstatus update event at deinit
2010-07-30 22:16:55 +02:00
Julien BLACHE
f6a9e1f7f4
Kill update request connections during deinit
...
Avoid leaving active requests on the HTTP server before shutting it down.
2010-07-30 21:42:53 +02:00
Julien BLACHE
81d09ed234
Account for new evhttp behaviour on failed incoming connections
...
The evcon associated with a request is freed by evhttp when the connection
fails. Protect against a NULL evcon when handling the connection failure.
2010-07-23 18:28:29 +02:00
Julien BLACHE
3b7a71527a
Check & fix UTF-8 strings before adding/updating files
2010-06-21 17:50:09 +02:00
Julien BLACHE
36f0d0a76e
Implement DACP setproperty for dacp.userrating
2010-05-05 19:13:22 +02:00
Julien BLACHE
eb66a56e1d
Pass query parameters to DACP property setters
2010-05-05 19:13:15 +02:00
Julien BLACHE
548cd2a150
Use httpd_send_reply() instead of evhttp_send_reply() where pertinent
...
gzip replies where useful; artwork should not be compressed, as PNGs are
already compressed and that would be a waste of time.
2010-05-03 19:11:55 +02:00
Julien BLACHE
d38db5868c
Implement jumping in DACP cue play command
2010-05-02 11:45:15 +02:00
Julien BLACHE
c11752e9a6
Honor dacp.shufflestate parameter in cue play command
2010-05-02 11:45:15 +02:00
Julien BLACHE
9f84fd9794
Wire up DACP setproperty for dacp.shufflestate
2010-05-02 11:45:15 +02:00
Julien BLACHE
a74caeed82
Wire up DACP setproperty for dacp.repeatstate
2010-05-02 11:45:15 +02:00
Julien BLACHE
7751c23f18
Implement DACP setproperty for dacp.playingtime
2010-05-02 11:45:15 +02:00
Julien BLACHE
6eca3a98d8
Implement DACP setproperty
2010-05-02 11:45:15 +02:00
Julien BLACHE
297c86c453
Implement DACP getproperty and DACP properties core code
2010-05-02 11:45:15 +02:00
Julien BLACHE
b73631bb5c
Introduce helpers for DACP nowplaying & playingtime
2010-05-02 11:45:15 +02:00
Julien BLACHE
505b7a2ade
Wire up nextitem and previtem
2010-05-02 11:45:15 +02:00
Julien BLACHE
b4a5ba6f3c
Wire up pause and playpause
2010-05-02 11:45:15 +02:00
Julien BLACHE
f5e84d6950
Implement DACP nowplayingartwork
2010-05-02 11:45:15 +02:00
Julien BLACHE
9c569f10a9
Implement playstatus updates
2010-05-02 11:45:15 +02:00
Julien BLACHE
b72948e027
Rework playstatusupdate reply
...
Introduce make_playstatusupdate() and use player_get_status() to get the
player status. Implement the full playstatusupdate reply.
2010-05-02 11:45:15 +02:00
Julien BLACHE
ca2ee21d84
Implement DACP cue requests
2010-05-02 11:45:15 +02:00
Julien BLACHE
bb5703d878
Implement DACP setspeakers
2010-05-02 11:45:14 +02:00
Julien BLACHE
aa20a2e485
Implement DACP getspeakers
2010-05-02 11:45:14 +02:00
Julien BLACHE
bccc6da87f
Set closecb to NULL on update requests' connections at deinit
...
Otherwise the closecb is called when the connection is closed/freed during
deinit, and this happens in the HTTP cleanup after the DAAP and DACP cleanups
have run, leading to spurious "struct update_request not found" messages.
2010-05-02 11:21:07 +02:00
Julien BLACHE
18abda3a97
Use evhttp_connection's closecb instead of our fail_cb extension
...
The closecb callback of evhttp_connection does what we need, so no need
to use that extension anymore.
2010-02-14 09:34:29 +01:00
Julien BLACHE
58faeaceca
Integer types cleanup
...
Try to be a bit more strict about integer types, use off_t or int64_t for
file size and file offsets.
Replace safe_ato*() by safe_atoi32() and safe_atoi64(), fix integer types
at call sites to match.
2010-02-02 21:09:56 +01:00
Julien BLACHE
a52ff42697
Introduce stub DACP protocol implementation
2010-01-30 17:30:22 +01:00