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