Commit Graph
265 Commits
Author SHA1 Message Date
Mike Brady 67083665ad Get more diagnostic messages when a TuneBlade-induced error occurs. 2018-11-13 11:00:05 +00:00
Mike Brady 501e349466 Add better error handling if a reply header message is faulty. 2018-11-12 16:41:29 +00:00
Mike Brady 2f1f259d03 Use "/dev/urandom" instead of "/dev/random" to generate a nonce for AirPlay passwords. 2018-11-03 12:46:17 +00:00
Mike Brady e0a4e5cde8 Format tidy-up 2018-10-21 17:10:23 +01:00
Mike Brady e5259e8764 Remove a few compiler warnings. 2018-10-21 17:00:56 +01:00
Mike Brady c9b3d2a2f4 Many changes to compilation and linking flags. Stop using HAVE_* flags except where necessary, use CONFIG_* for optional stuff, use HAS_* for immediate definitions, use USE_* for AM definitions. Probably introduced bgs, sigh. 2018-09-09 20:41:31 +01:00
Mike Brady 69642bb7de Partly clean up use of automake, autoconfig and compiler flags. Works but still not consistent. 2018-09-09 14:12:20 +01:00
Mike Brady 76c5dd9285 Stop using SIGUSR1 for cancelling threads, use pthread_cancel and friends instead, fix some memory leaks, add accurate ouput rate calculation to statistics, add "quit" verb to MPRIS and native d-bus interfaces. Probably still buggy. 2018-07-30 10:07:11 +01:00
Mike Brady 577449dffa Remove use of SIGUSR1 and pthread_kill to stop threads. Not debugged! 2018-07-27 10:58:36 +01:00
Mike Brady a30c254bb6 Quieten some debug messages. 2018-07-23 14:26:48 +01:00
Mike Brady dc4e577d8f Improve some debug messages. 2018-07-23 13:56:54 +01:00
Mike Brady 865c71b1d0 Remove an unwanted debug messages 2018-07-22 16:29:36 +01:00
Mike Brady 2eaaa9cdb3 Fix a bug where the dacp notification handlers are called 2018-07-21 15:35:07 +01:00
Mike Brady f1d4503431 Try to add proper cancellation code to all threads -- not complete, buggy. 2018-07-20 13:50:38 +01:00
Mike Brady c8c70b6016 Add quit commands to the MPRIS and native D-Bus command set. Not tested ecologically. 2018-07-18 15:32:07 +01:00
Mike Brady a4eaace76b Begin to try to get Shairport Sync to quit cleanly, relinquishing memory and ports etc. properly so that valgrind can be more useful. 2018-07-17 10:28:06 +01:00
Mike Brady dc84d87b7b Make session interruption work properly. 2018-07-15 15:20:25 +01:00
Mike Brady 01f2a374b9 Use pthread_cancel to stop a player thread rather than SIGUSR1 and pthread_kill. 2018-07-15 13:54:33 +01:00
Mike Brady d3b79b965d Make more of the code amenable to pthread cancel 2018-07-14 19:34:31 +01:00
Mike Brady bae7585cff Make pc add and get items work if pthread_cancel occurs 2018-07-14 14:32:22 +01:00
Mike Brady c2e3fa5aa7 Move ab_mutex, flow control CV and flush mutex initialisation and teardown out of the player thread. Thus remove need for player theread lock. Format some of the surce files. 2018-07-14 13:38:29 +01:00
Mike Brady d49333a81a Do some very elementary checking of an ANNOUNCE packet -- check for content length over 1k and for negative remaining line lengths... 2018-06-30 15:47:54 +01:00
Till Zimmermann 02694948f3 Initial MQTT Version 2018-06-19 19:40:08 +02:00
Mike Brady 69e0a4836e Modify the RTSP write response code to output the entire response in one go. 2018-06-11 20:18:05 +01:00
Mike Brady f14389e455 Quieten some debug messaging around TEARDOWN 2018-06-11 15:42:01 +01:00
Mike Brady d0dda0b095 Increase debugging temporarily for a TEARDOWN. 2018-05-29 21:53:38 +01:00
Mike Brady 452e1f72fb Include all RTSP messages in debug level 2 except for the OPTIONS message; tidy up some other debug messages. 2018-05-25 13:48:12 +01:00
Mike Brady 3aba10e3cc If a TEARDOWN request is received, print the message and the response. 2018-05-25 09:36:17 +01:00
Mike Brady 499fae9796 Tidy up and quieten some debug messages. 2018-05-18 10:08:01 +01:00
Mike Brady 7d0eb37958 Move to using pthread_cancel in place of pthread_kill -- due to a problem in CYGWIN, but the move makes the code simpler and more rugged. 2018-05-17 10:16:44 +01:00
Mike Brady 4addf7d215 Fix a misue of rwlock and unlock -- they must be made on the same thread. 2018-05-13 14:41:15 +01:00
Mike Brady 418b1ba7c7 Add a read-write mutex to protect a player thread when it's being created or deleted; make player_flush get a read lock to get access. 2018-05-12 15:10:27 +01:00
Mike Brady d805ce914e Make some essentially cosmetic changes to return memory when the program exits. The program never exits, but it's good for valgrind. 2018-05-11 10:56:16 +01:00
Mike Brady a5f7cd89cf Quieten a debug message. 2018-05-05 19:24:57 +01:00
Mike Brady 21e1e12c76 If it's an AirPlay user agent up to and including version 363 (iOS 11.1.2) use the old offset calculation by adding 11,205 frames to the offset. 2018-05-04 18:25:52 +01:00
Mike Brady 9e944e4050 Allow for an actual NULL DACP-ID string 2018-04-11 09:55:12 +01:00
Mike Brady 665a53a8b5 Allow sps to deal with duplicate RTSP messages like RECORD and SETUP. Add some diagnostics to the player. 2018-04-10 17:35:39 +01:00
Mike Brady 08a7d4ffb5 Use snprintf in place of sprintf. 2018-04-08 15:36:05 +01:00
Mike Brady a0f8a27868 Update a comment about AirPlay -- now it gives the latency as 88200 directly. 2018-04-03 22:45:17 +01:00
Mike Brady 8bf83c149f Modify latency detection to use the second word of a sync packet to decide whether to add an extra delay or not. Use all sync packets, not just one with the exception flag. Use 1024 buffers -- a bit profligate, but hey. 2018-04-02 16:42:46 +01:00
Mike Brady 32c7a535a1 Make scanning for DACP port part of the dacp handler. Only emit 'clip' and 'svip' for a play connection, suppress 'pfls' until 'pffr' has been emitted 2018-03-31 17:34:59 +01:00
Mike Brady 69b3b5d776 Send rtsp events to the metadata thteread for handling. Begin to clean up signals. 2018-03-31 12:39:26 +01:00
Mike Brady d692fab9e4 Clean up native dbus interface files and associated changes to existing files. 2018-03-20 16:31:59 +00:00
Mike Brady c02e53ea80 Add server status -- i.e. can we still send commands to the DACP server. Hook it up as "Server" property in basic remote control. 2018-03-19 16:53:58 +00:00
Mike Brady fba40733f3 Add more basic remote control stuff, but SPS gets confused about who it can control. 2018-03-18 19:10:45 +00:00
Mike Brady 372efdde33 Reword a debug message 2018-03-13 11:41:41 +00:00
Mike Brady 9d9b0a1824 Add a Shairport Sync Diagnostics DBus Onject, only part working 2018-03-10 17:01:42 +00:00
Mike Brady 8991f3420c Remove many causes of warnings at the -Wextra level 2018-03-07 20:48:21 +00:00
Mike Brady c36a7822a3 Tidy up using clang-format 2018-03-07 14:35:25 +00:00
Mike Brady 07e46565ca Eliminate almost all warnings from -Wall 2018-03-07 14:29:14 +00:00