Commit Graph

80 Commits

Author SHA1 Message Date
ejurgensen
94f94b03fe Swap artwork arguments so destination evbuffer comes first 2015-04-09 21:23:20 +02:00
ejurgensen
f1931bfc1a Abandon raop_metadata_arg, and defer metadata time setting 2015-04-09 21:04:35 +02:00
ejurgensen
ad81e05ab4 Better thread safety by making sure that the raop globals are only accessed through the player thread 2015-04-07 23:35:56 +02:00
ejurgensen
e4c0c13a20 Remove irrelevant comment 2015-03-31 23:40:52 +02:00
ejurgensen
e49c941a00 Add a worker thread to support async tasks from the player thread
(and maybe others later)
2015-03-31 23:05:24 +02:00
ejurgensen
f947948a29 Avoid database locks when raop constructs metadata 2015-03-30 23:11:21 +02:00
ejurgensen
b8d8df132b Support for remote m3u playlists (ref pr #79) 2015-03-20 23:40:42 +01:00
ejurgensen
6221e24f1b Support for live ICY metadata for streams (incl. artwork) 2015-03-14 21:42:53 +01:00
ejurgensen
d542ab9c98 Remove/disable raop_check_cseq because raop/rtsp servers like Reflector and AirFoil don't return it according to spec (issue #98) 2015-02-09 17:57:49 +01:00
ejurgensen
5a02f926e3 Fix bug in float to string conversion of raop volume (credit @andreas-p, issue #84) 2015-01-08 22:03:53 +01:00
chme
7578bb1205 Artwork caching (pull request #61), and also:
- introduced new section in config file for sqlite pragma settings,
added config for artwork cache
- added setting of pragma synchronous, cache size and journal mode to
daap cache
2014-11-10 22:53:08 +01:00
ejurgensen
495aebec40 Fix bug where it would hang because it looked for artwork in named pipes
- also some refactoring of the artwork code to diminish redundancy
2014-09-29 23:40:38 +02:00
ejurgensen
8468f55910 Honor the "ek" (encryption) flag for RAOP_DEV_OTHER + slight rewrite of raop_device_cb 2014-05-18 17:19:50 +02:00
ejurgensen
23a7e82a1f Add support for max volume for AirPlay devices (raop) 2014-02-09 16:07:00 +01:00
Justin Maggard
5c8b28cda4 Fix crash with an empty buffer 2014-02-05 17:38:14 -08:00
ejurgensen
9c5c3a6625 Merge branch 'master' into libav9 2014-01-09 23:02:07 +01:00
ejurgensen
a1236f4400 Lower log level of message "Failed to retrieve artwork..." 2014-01-08 22:13:20 +01:00
ejurgensen
9ac23dcbd0 Downgrade "No CSeq in reply" log message level 2014-01-06 23:48:00 +01:00
ejurgensen
a4f9920a09 Fix error in boundary check in raop.c: raop_v2_resend_range
- this prevents crashing when using AirBubble as speaker
- also lower log level to warning
2013-12-11 23:11:50 +01:00
ejurgensen
1199a459ac Obey device "md" (metadata) tag - credit @couteau
- original patch https://gist.github.com/couteau/7532531
2013-11-23 11:25:30 +01:00
ejurgensen
6fb718b55e Fix for Apple TV update 6.0
- don't send Apple Challenge and RSA/AES key/iv if no encryption
- assume no password if no pw field
- clean up some indentation in raop.c
2013-10-13 21:48:15 +02:00
ejurgensen
b6df68b75b Fix: Clearing retransmit buffer after player stop could crash due
to reading pointer from free'd memory (in raop.c). Also added some
safeguards against passing invalid file descripters to close()
in player.c.
2013-08-17 23:05:50 +02:00
ejurgensen
3215d32b57 AirFoil will not return CSeq, so skip checking if it's missing 2013-08-13 22:11:21 +02:00
Kai Elwert
49ab2a3ce4 Allow playback on non apple airplay devices 2013-07-04 14:57:00 +02:00
Julien BLACHE
e2390f9d22 Initialize sockaddr before binding 2011-07-09 11:54:55 +02:00
Julien BLACHE
2cd56dfc6d Bail out early on if artwork format is not supported 2011-04-30 11:41:12 +02:00
Julien BLACHE
a70a45d925 Fix DAAP songlist generation after code move to dmap_common
Handling of the sort tags was left into httpd_daap.c where the code runs
after the song is added to the songlist - effectively adding the sort tags
to the *next* song, leading to incorrect sort tags on the current song.
2011-04-28 18:25:14 +02:00
Julien BLACHE
53588f36af Wire up metadata handling in player and RAOP
This enables sending out metadata to AppleTV.
2011-04-09 10:11:35 +02:00
Julien BLACHE
e3b756c730 Document progress values for AppleTV metadata 2011-04-09 10:11:35 +02:00
Julien BLACHE
1c861a6662 Add support for AppleTV AirTunes metadata in RAOP
The AppleTV gets sent the song metadata (DMAP data), artwork and progress
data during AirTunes streaming. Add support for this in RAOP.
2011-04-09 10:11:35 +02:00
Julien BLACHE
627062cab8 Add wants_metadata flag to struct raop_session 2011-04-09 10:11:35 +02:00
Julien BLACHE
7984b4baea Document RAOP request queueing 2011-04-03 10:45:10 +02:00
Julien BLACHE
961b2484b8 Re-establish closecb only when no requests are in flight 2011-04-03 10:45:03 +02:00
Julien BLACHE
ef52e922b2 Turn req_in_flight into a counter 2011-04-03 10:44:18 +02:00
Julien BLACHE
a4f02ed08d Manage CSeq in raop_add_headers() 2011-04-03 10:43:37 +02:00
Julien BLACHE
7fcb8e4447 Check reply CSeq against request CSeq 2011-04-03 10:42:49 +02:00
Julien BLACHE
f097d80d6a Add optional RTP-Info parameter to raop_send_req_set_parameter() 2011-04-03 10:42:42 +02:00
Julien BLACHE
9c43a9a900 Make SET_PARAMETER content-type an argument to raop_send_req_set_parameter() 2011-04-03 09:54:12 +02:00
Julien BLACHE
5cf5cac9c2 Fix misuse of RAOP_CONNECTED in session state test 2011-03-27 17:04:24 +02:00
Julien BLACHE
5bad343278 Rename RAOP callbacks for consistency 2011-03-26 11:45:17 +01:00
Julien BLACHE
c2579dc0a6 Bring raop_send_req_flush() prototype in line with others 2011-03-26 11:45:17 +01:00
Julien BLACHE
c66496176e Fix debug message loglevel 2011-03-21 18:41:38 +01:00
Julien BLACHE
0d0877de9c Honour IPv6 config option in player/RAOP 2011-03-20 12:20:07 +01:00
Julien BLACHE
ec7c3d108c Let player know about IPv6 status in RAOP 2011-03-15 19:20:38 +01:00
Julien BLACHE
652fa9371f Add terminal \r\n sequence for RAOP volume control on 802.11g ApEx
The 802.11g ApEx seems to require a terminal \r\n sequence, otherwise it
just ignores the setting.
2011-03-04 21:20:07 +01:00
Julien BLACHE
83d966df09 Fix typo in RAOP debug message 2011-03-04 20:47:36 +01:00
Julien BLACHE
13e2b12f9e Make proper use of IN6_ARE_ADDR_EQUAL()
Pass pointers to sin6_addr instead of passing sin6_addr.s6_addr32 which
isn't portable and isn't the proper way to use the macro anyway.
2011-02-24 19:51:37 +01:00
Raivo Hool
1a11efec58 Use sys/endian.h on FreeBSD 2011-02-23 20:44:49 +01:00
Julien BLACHE
fa299a9be9 Add debug message for RTSP requests 2010-12-12 15:06:57 +01:00
Julien BLACHE
1e9078182d Fix RAOP volume printing
Partial revert of 4ac75a316a, going back to
the previous way of computing the RAOP volume. Fixes printing when volume
is 0.0 (would print -0.000000).
2010-12-07 12:49:48 +01:00