Commit Graph
3328 Commits
Author SHA1 Message Date
Mike Brady 7a4949b32f quieten a returned error-code message. 2019-01-24 09:15:09 +00:00
Mike Brady b02e5d9f20 Use returned codes from do_open() to control the state machine -- don't go to abm_connected unless, eh, connected. 2019-01-24 09:14:41 +00:00
Mike Brady 9fb37e4293 Reorganise code to make it respond dynamically to changes in settings. 2019-01-23 22:22:27 +00:00
Mike Brady 0697a40b08 fix crypto library flags 2019-01-23 22:21:43 +00:00
Mike Brady bd81e733cd Introduce a simple state machine into the alsa backend to keep track of the connected state of it. Needed to deal properly with disabling and enabling standby dynamically. 2019-01-23 16:44:02 +00:00
Mike Brady dd1b85383d move malloc_cleanup to common.c 2019-01-23 16:34:46 +00:00
Mike Brady 0a9063fafe move malloc_cleanup to common.c 2019-01-23 16:34:34 +00:00
Mike Brady 0feb59eaa5 move malloc_cleanup to common.c 2019-01-23 16:34:05 +00:00
Mike Brady eda674850f Add an "active" mode that can time out after a period -- 10 seconds by default -- after play ends. 2019-01-21 21:44:22 +00:00
Mike Brady 2e4428538d Add an "active" mode that can time out after a period -- 10 seconds by default -- after play ends. 2019-01-21 21:43:55 +00:00
Mike Brady 604ca8dee4 Hook up active mode stuff to metadata, add two four-char codes, improve external command calling. 2019-01-21 21:18:40 +00:00
Mike Brady 2e181f937f add initial script-execution functionality to active mode. Make is possible to wait for start and stop scripts. 2019-01-21 18:20:39 +00:00
Mike Brady a8639f6c40 Add an activity monitor -- can set an activity idle timeout. 2019-01-20 22:15:02 +00:00
Mike Brady a40a48693f make OpenSSL routines un-cancellable, in case there might be possible memory leaks on cancellation 2019-01-18 16:33:32 +00:00
Mike Brady 61c870bac1 make OpenSSL routines un-cancellable, in case there is a possible memory leak 2019-01-18 16:32:31 +00:00
Mike Brady 99fd6b85d0 make OpenSSL routines un-cancellable, in case there is a possible memory leak 2019-01-18 16:31:36 +00:00
Mike Brady 3566cf0caf remove unnecessary file includes 2019-01-18 16:30:21 +00:00
Mike Brady f6d6700d6e Quieten a debug message. 2019-01-18 16:28:02 +00:00
Mike Brady 020a69dfb9 remove the cause of a CLANG warning 2019-01-18 16:27:29 +00:00
Mike Brady 4483037719 Block on command_execute for unfixable errors. 2019-01-15 08:30:00 +00:00
Mike Brady 68f20fe8db Add an error message if an RTSP thread can not be created. 2019-01-13 13:14:39 +00:00
Mike Brady 6c912d6ce5 Revise the code for retaining and freeing rtsp message memory allocations. Be more careful about cleaning up a possible message allocation when the rtsp channel is closed. Watch for overreleasing a message. 2019-01-13 10:20:26 +00:00
Mike Brady 93cae8a5d1 Quieten the msg_ debug messages. 2019-01-13 10:17:34 +00:00
Mike Brady 6a27712e94 Quieten a debug message. 2019-01-13 10:00:11 +00:00
Mike Brady 9fbdc062b4 Change how rtsp_messages are memory managed. Add some diagnostics. 2019-01-12 21:44:52 +00:00
Mike Brady ca72645cb8 If a message is dropped because the pc queue is busy, free any data that might be associated with it as well as just the rtsp message. 2019-01-12 19:17:43 +00:00
Mike Brady a74261bbd3 Add a D-Bus property "DisableStandby" to turn standby oo or off. 2019-01-11 14:48:00 +00:00
Mike Brady b9d78c8af6 Avoid wrapping back to the first three UDP ports when assigning ports using nextFreeUDPPort because the call resetFreeUDPPorts, called when not interrupting an existing session, will assign the first three ports without checking (or knowing) if they were recently in use. 2019-01-11 10:42:17 +00:00
Mike Brady 2ca6e42b62 Do not add dither if at full volume or ignoring volume control 2019-01-10 17:00:10 +00:00
Mike Brady fbd8377519 Always add dither if no hardware mixer and volume control is not ignored. 2019-01-10 16:57:40 +00:00
Mike Brady 8f20e5808b clang format 2019-01-10 16:12:57 +00:00
Mike Brady 1c40176468 CLean up timings, clean up DACP interface network timings and error behaviours. 2019-01-10 16:11:56 +00:00
Mike Brady 8e72574a57 Add some diagnostics, shorten timeouts and set so_linger of zero whenever a write or read error occurs. 2019-01-10 16:10:53 +00:00
Mike Brady 9f8b8a25c9 add actual waiting time for a failing timed mutex. 2019-01-10 16:09:52 +00:00
Mike Brady c958d506b1 reduce thresholds towards a buffer time of 0.2 seconds rather than the 0.25 seconds before. 2019-01-09 14:15:05 +00:00
Mike Brady 2a9d46afed backend silence threshold should be 0.060 not 0.6! 2019-01-09 10:10:04 +00:00
Mike Brady 34d6d89707 Don't use full flush to purge frames after an overrun -- flush will reset the buffers as well. Fix a potential bug if a flush actually occurs. 2019-01-09 10:09:29 +00:00
Mike Brady e9623faa44 Go for a 0.250 second buffer length. 2019-01-08 17:28:38 +00:00
Mike Brady 56f4b124bd Adjust thresholds and timings to suit pi zero. 2019-01-08 13:06:46 +00:00
Mike Brady 2e3be271fd Preflight all audio material playing (not lead-in silences though...) 2019-01-08 13:01:22 +00:00
Mike Brady c3668b3fc0 INcrease the delay between reading chunks of the RTSP message, may it less likely to overwhelm the CPU. 2019-01-08 13:00:00 +00:00
Mike Brady 1b3d64ce85 Quieten a debug message. 2019-01-08 12:59:04 +00:00
Mike Brady caf06c5aba Add the idea of a preflight message to tell the backend that frames will be coming... 2019-01-07 17:34:50 +00:00
Mike Brady 4613ee6bcb Make buffer size threashold 100 ms instead of 50 ms. Remove some surplus snd_pcm_prepare calls. 2019-01-07 16:00:58 +00:00
Mike Brady 67a19bf3c9 Make the wait time less than the packet interval time to enable SPS to catch up if it gets behind. 2019-01-07 15:59:58 +00:00
Mike Brady 0e37f7e78d Only look for snd_pcm_status_get_driver_htstamp is alsa version 1.1 or later... 2019-01-04 21:52:36 +00:00
Mike Brady 6b42abab72 Use driver htstamp rather than regular one. Use untimed_delay so that a regualr delay sets the standoff timer for silence. 2019-01-04 20:57:18 +00:00
Mike Brady 48043a81cc Move stall threshold calculation to init from start, duh. 2019-01-04 18:17:30 +00:00
Mike Brady 43a2813b8c Extensive changes to alsa delay() and play() -- recover from XRUN _after_ sending frames; doesn't work otherwise. Update soxr buffer threshold code. Improve missing libsoxr message. Fix syntax of progress metadata. Stop dropping YouTube metadata -- the indication it was invalid is unsafe. 2019-01-04 17:30:56 +00:00
Mike Brady 80f15e1f57 clang format 2019-01-04 17:26:55 +00:00