Commit Graph
3174 Commits
Author SHA1 Message Date
Mike Brady a5c65ceced Move UDP port cloure to the RTSP thread, don't allow calls to mdns_* to be cancelled. Remove usage of (p)select in rtsp thread handling. 2018-11-30 14:55:04 +00:00
Mike Brady 0eac2b9cb3 Move closing of ports to the player thread cleanup. They can be bound without the UDP threads ever having been called, so they must be closed when the player thread exits. 2018-11-29 22:03:49 +00:00
Mike Brady f2a3ba00cc Move cleanup push to start of RTSP initialisation. Take more care at startup and closedown to make stuff uncancellable. 2018-11-29 17:14:40 +00:00
Mike Brady 4a5b0009a4 Quieten a debug message 2018-11-29 17:13:12 +00:00
Mike Brady 4d4272c8ba Improve player watchdog, improve clearing down of ports, improve handling of write- and read-erroes on the RTSP channel. Improve code for holding and releasing the player. 2018-11-29 15:36:18 +00:00
Mike Brady 1240c6efab Adds checks for posession of the player in order to handle flush, teardown requests. 2018-11-29 15:32:06 +00:00
Mike Brady fdd5ce430d Check in SETUP and RECORD that the player is available, clean up setup code by removing gotos. 2018-11-29 13:13:51 +00:00
Mike Brady bcf9b1a843 Quieten a debug message 2018-11-29 13:12:53 +00:00
Mike Brady ca45d2ecbe Clang formatted. 2018-11-29 12:18:07 +00:00
Mike Brady c318796e55 Add an uncancellable usleep timer. Make the player and UDP thread cleanups uncancellable. 2018-11-29 11:37:56 +00:00
Mike Brady 7bf22b4265 Add some debug messages to closing the UDP ports. 2018-11-28 19:49:12 +00:00
Mike Brady 1cf28be647 Add SO_REUSEADDR to the UDP sockets. See if it makes any difference. 2018-11-28 19:39:11 +00:00
Mike Brady 22f3e3e318 Move watchdog to cover connection from start, not just from start of play. Start investigating UDP port allocation. Tidy up handling or RTSP write errors -- remove the pselect code from before a write. 2018-11-28 17:18:03 +00:00
Mike Brady 4ab81ce0b7 Add extra diagnostic to capture a meg_write_response error. 2018-11-27 22:53:27 +00:00
Mike Brady 227c38a89c Try to capture what happens after a write error. 2018-11-27 22:03:56 +00:00
Mike Brady b7ee743a0e Quieten a few debug messages. 2018-11-27 17:44:45 +00:00
Mike Brady eaa98ea7d9 Quieten a few debug messages. 2018-11-27 17:40:07 +00:00
Mike Brady 76ee6d5e43 Add new watchdog thread for the player -- should be more reliable than the existing code. 2018-11-26 19:33:22 +00:00
Mike Brady 57ae8ad846 Change order of header files (again?) to avoid OpenBSD compilation errors. 2018-11-24 11:35:16 +00:00
Mike Brady 998e7cea2c clang-format 2018-11-24 11:16:57 +00:00
Mike Brady a932298d3a Small correction to port selection logic. If a new sesion waits for an existing session to close that it hasn't interrupted, reset the ports base. Quieten some debug messages. 2018-11-24 11:06:20 +00:00
Mike Brady dcd8fbc1ec Remove some unnecessary test code from the debug messaging. 2018-11-23 16:10:18 +00:00
Mike Brady d93aeec50a Quieten a few debug messages. 2018-11-23 15:11:04 +00:00
Mike Brady ae1453f8aa Stop going to verbosity level 3 on occasion. It's not so useful now. 2018-11-23 13:57:34 +00:00
Mike Brady 1e5219faa9 Fix bugs in interrupting an existing session, and use fresh ports if necessary. 2018-11-23 13:40:42 +00:00
Mike Brady 4c5790de28 Fix off-by-one error in UDP range counting 2018-11-23 13:39:23 +00:00
Mike Brady 093bf1dd46 Rotate usage of UDP ports if a session is interrupted. Avoids out-of-date packets landing in a new session. 2018-11-23 13:29:09 +00:00
Mike Brady 3709ac8180 experimental 2018-11-23 08:53:27 +00:00
Mike Brady 0e6835589c Try making dropping and closing the DAC un-cancelable to stop the bcm DMA problem. Add some diagnostics. 2018-11-22 21:57:54 +00:00
Mike BradyandGitHub 23eb7d7038 Update shairport-sync.conf 2018-11-22 10:08:00 +00:00
Mike Brady d3aca80c9e Add back in the ability to interrupt a session. Clean up a few debug messages. 2018-11-21 21:33:21 +00:00
Mike Brady 303a85c3b5 Add back in the ability to interrupt a session. Clean up a few debug messages. 2018-11-21 21:32:18 +00:00
Mike Brady 36e13535e9 Forgot!
Merge branch 'development' of https://github.com/mikebrady/shairport-sync into development
2018-11-20 23:49:46 +00:00
Mike Brady 0529a58179 Wait properly when a session is being interrupted. 2018-11-20 23:49:22 +00:00
Mike Brady 4911dacc7c Rationalise some of the flush code -- reomve an inner loop, use the flush facility for skipping to sync. 2018-11-20 22:58:06 +00:00
Mike Brady ccc4fe09af Tidy up the formats. 2018-11-20 22:56:53 +00:00
Mike Brady 8f34c181e1 Remove inner flush loop from get_buffer. Use flush for fixing large positive error. 2018-11-20 22:41:23 +00:00
Mike Brady 61cf21fda8 Shouldn't have been in the repository. 2018-11-20 14:21:00 +00:00
Mike Brady 8644cfb00a Put in a cancellation point explicitly in the player_thread main loop. Tidy up some debug messages. 2018-11-20 14:19:35 +00:00
Mike Brady 6e6c8213e6 Put in a cancellation point explicitly in the player_thread main loop. Tidy up some debug messages. 2018-11-20 14:18:33 +00:00
Mike Brady 18497e6491 Double check debug is not a cancellation point and move the dacp monitor initialisation code to after the subsidiary session threads are created. 2018-11-20 12:07:15 +00:00
Mike Brady ec7d46bc32 Double check debug is not a cancellation point and move the dacp monitor initialisation code to after the subsidiary session threads are created. 2018-11-20 12:06:13 +00:00
Mike Brady 8991a08278 Make debug_mutex lock and unlock completely quiet if the debug level is chosen to be 0. 2018-11-19 20:51:49 +00:00
Mike Brady d17df82df3 Add the sort-of mutex name to the debug_mutex_lock and _unlock. Also, setting the debug level to 0 turns off the debug logging of them. Handy. 2018-11-19 20:30:00 +00:00
Mike Brady 95f0f0121a Stop logging an error if the pthread_cond_wait times out. 2018-11-19 20:28:02 +00:00
Mike Brady f7342a70df Add the sort-of mutex name to the debug_mutex_lock and _unlock. Also, setting the debug level to 0 turns off the debug logging of them. Handy. 2018-11-19 20:12:57 +00:00
Mike Brady 0052389d1e Stop noisy mutex unlock 2018-11-19 19:43:17 +00:00
Mike Brady a2681ba04c Try to make the debug stuff pthread_cancel-proof including the debug / warn / inform / die and debug_mutex calls. Tidy up usage of program_stop. 2018-11-19 18:26:42 +00:00
Mike Brady d4435e2068 Try to make the debug stuff pthread_cancel-proof including the debug / warn / inform / die and debug_mutex calls. Tidy up usage of program_stop. 2018-11-19 18:26:03 +00:00
Mike Brady 7258b801c8 Add extra checks to look for a hang in TuneBlade 2018-11-19 15:35:47 +00:00