]> git.ipfire.org Git - thirdparty/shairport-sync.git/log
thirdparty/shairport-sync.git
6 years agomove malloc_cleanup to common.c
Mike Brady [Wed, 23 Jan 2019 16:34:05 +0000 (16:34 +0000)] 
move malloc_cleanup to common.c

6 years agoAdd an "active" mode that can time out after a period -- 10 seconds by default -...
Mike Brady [Mon, 21 Jan 2019 21:44:22 +0000 (21:44 +0000)] 
Add an "active" mode that can time out after a period -- 10 seconds by default -- after play ends.

6 years agoAdd an "active" mode that can time out after a period -- 10 seconds by default -...
Mike Brady [Mon, 21 Jan 2019 21:43:55 +0000 (21:43 +0000)] 
Add an "active" mode that can time out after a period -- 10 seconds by default -- after play ends.

6 years agoHook up active mode stuff to metadata, add two four-char codes, improve external...
Mike Brady [Mon, 21 Jan 2019 21:18:40 +0000 (21:18 +0000)] 
Hook up active mode stuff to metadata, add two four-char codes, improve external command calling.

6 years agoadd initial script-execution functionality to active mode. Make is possible to wait...
Mike Brady [Mon, 21 Jan 2019 18:20:39 +0000 (18:20 +0000)] 
add initial script-execution functionality to active mode. Make is possible to wait for start and stop scripts.

6 years agoAdd an activity monitor -- can set an activity idle timeout.
Mike Brady [Sun, 20 Jan 2019 22:15:02 +0000 (22:15 +0000)] 
Add an activity monitor -- can set an activity idle timeout.

6 years agomake OpenSSL routines un-cancellable, in case there might be possible memory leaks...
Mike Brady [Fri, 18 Jan 2019 16:33:32 +0000 (16:33 +0000)] 
make OpenSSL routines un-cancellable, in case there might be possible memory leaks on cancellation

6 years agomake OpenSSL routines un-cancellable, in case there is a possible memory leak
Mike Brady [Fri, 18 Jan 2019 16:32:31 +0000 (16:32 +0000)] 
make OpenSSL routines un-cancellable, in case there is a possible memory leak

6 years agomake OpenSSL routines un-cancellable, in case there is a possible memory leak
Mike Brady [Fri, 18 Jan 2019 16:31:36 +0000 (16:31 +0000)] 
make OpenSSL routines un-cancellable, in case there is a possible memory leak

6 years agoremove unnecessary file includes
Mike Brady [Fri, 18 Jan 2019 16:30:21 +0000 (16:30 +0000)] 
remove unnecessary file includes

6 years agoQuieten a debug message.
Mike Brady [Fri, 18 Jan 2019 16:28:02 +0000 (16:28 +0000)] 
Quieten a debug message.

6 years agoremove the cause of a CLANG warning
Mike Brady [Fri, 18 Jan 2019 16:27:29 +0000 (16:27 +0000)] 
remove the cause of a CLANG warning

6 years agoBlock on command_execute for unfixable errors.
Mike Brady [Tue, 15 Jan 2019 08:30:00 +0000 (08:30 +0000)] 
Block on command_execute for unfixable errors.

6 years agoAdd an error message if an RTSP thread can not be created.
Mike Brady [Sun, 13 Jan 2019 13:14:39 +0000 (13:14 +0000)] 
Add an error message if an RTSP thread can not be created.

6 years agoRevise the code for retaining and freeing rtsp message memory allocations. Be more...
Mike Brady [Sun, 13 Jan 2019 10:20:26 +0000 (10:20 +0000)] 
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.

6 years agoQuieten the msg_ debug messages.
Mike Brady [Sun, 13 Jan 2019 10:17:34 +0000 (10:17 +0000)] 
Quieten the msg_ debug messages.

6 years agoQuieten a debug message.
Mike Brady [Sun, 13 Jan 2019 10:00:11 +0000 (10:00 +0000)] 
Quieten a debug message.

6 years agoChange how rtsp_messages are memory managed. Add some diagnostics.
Mike Brady [Sat, 12 Jan 2019 21:44:52 +0000 (21:44 +0000)] 
Change how rtsp_messages are memory managed. Add some diagnostics.

6 years agoIf a message is dropped because the pc queue is busy, free any data that might be...
Mike Brady [Sat, 12 Jan 2019 19:17:43 +0000 (19:17 +0000)] 
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.

6 years agoUpdate RELEASENOTES.md
Mike Brady [Fri, 11 Jan 2019 15:18:50 +0000 (15:18 +0000)] 
Update RELEASENOTES.md

6 years agoUpdate RELEASENOTES.md
Mike Brady [Fri, 11 Jan 2019 15:17:17 +0000 (15:17 +0000)] 
Update RELEASENOTES.md

6 years agoUpdate RELEASENOTES.md
Mike Brady [Fri, 11 Jan 2019 15:17:01 +0000 (15:17 +0000)] 
Update RELEASENOTES.md

6 years agoAdd a D-Bus property "DisableStandby" to turn standby oo or off.
Mike Brady [Fri, 11 Jan 2019 14:48:00 +0000 (14:48 +0000)] 
Add a D-Bus property "DisableStandby" to turn standby oo or off.

6 years agoAvoid wrapping back to the first three UDP ports when assigning ports using nextFreeU...
Mike Brady [Fri, 11 Jan 2019 10:42:17 +0000 (10:42 +0000)] 
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.

6 years agoDo not add dither if at full volume or ignoring volume control
Mike Brady [Thu, 10 Jan 2019 17:00:10 +0000 (17:00 +0000)] 
Do not add dither if at full volume or ignoring volume control

6 years agoAlways add dither if no hardware mixer and volume control is not ignored.
Mike Brady [Thu, 10 Jan 2019 16:57:40 +0000 (16:57 +0000)] 
Always add dither if no hardware mixer and volume control is not ignored.

6 years agoclang format
Mike Brady [Thu, 10 Jan 2019 16:12:57 +0000 (16:12 +0000)] 
clang format

6 years agoCLean up timings, clean up DACP interface network timings and error behaviours.
Mike Brady [Thu, 10 Jan 2019 16:11:56 +0000 (16:11 +0000)] 
CLean up timings, clean up DACP interface network timings and error behaviours.

6 years agoAdd some diagnostics, shorten timeouts and set so_linger of zero whenever a write...
Mike Brady [Thu, 10 Jan 2019 16:10:53 +0000 (16:10 +0000)] 
Add some diagnostics, shorten timeouts and set so_linger of zero whenever a write or read error occurs.

6 years agoadd actual waiting time for a failing timed mutex.
Mike Brady [Thu, 10 Jan 2019 16:09:52 +0000 (16:09 +0000)] 
add actual waiting time for a failing timed mutex.

6 years agoreduce thresholds towards a buffer time of 0.2 seconds rather than the 0.25 seconds...
Mike Brady [Wed, 9 Jan 2019 14:15:05 +0000 (14:15 +0000)] 
reduce thresholds towards a buffer time of 0.2 seconds rather than the 0.25 seconds before.

6 years agobackend silence threshold should be 0.060 not 0.6!
Mike Brady [Wed, 9 Jan 2019 10:10:04 +0000 (10:10 +0000)] 
backend silence threshold should be 0.060 not 0.6!

6 years agoDon't use full flush to purge frames after an overrun -- flush will reset the buffers...
Mike Brady [Wed, 9 Jan 2019 10:09:29 +0000 (10:09 +0000)] 
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.

6 years agoGo for a 0.250 second buffer length.
Mike Brady [Tue, 8 Jan 2019 17:28:38 +0000 (17:28 +0000)] 
Go for a 0.250 second buffer length.

6 years agoAdjust thresholds and timings to suit pi zero.
Mike Brady [Tue, 8 Jan 2019 13:06:46 +0000 (13:06 +0000)] 
Adjust thresholds and timings to suit pi zero.

6 years agoPreflight all audio material playing (not lead-in silences though...)
Mike Brady [Tue, 8 Jan 2019 13:01:22 +0000 (13:01 +0000)] 
Preflight all audio material playing (not lead-in silences though...)

6 years agoINcrease the delay between reading chunks of the RTSP message, may it less likely...
Mike Brady [Tue, 8 Jan 2019 13:00:00 +0000 (13:00 +0000)] 
INcrease the delay between reading chunks of the RTSP message, may it less likely to overwhelm the CPU.

6 years agoQuieten a debug message.
Mike Brady [Tue, 8 Jan 2019 12:59:04 +0000 (12:59 +0000)] 
Quieten a debug message.

6 years agoAdd the idea of a preflight message to tell the backend that frames will be coming...
Mike Brady [Mon, 7 Jan 2019 17:34:50 +0000 (17:34 +0000)] 
Add the idea of a preflight message to tell the backend that frames will be coming...

6 years agoMake buffer size threashold 100 ms instead of 50 ms. Remove some surplus snd_pcm_prep...
Mike Brady [Mon, 7 Jan 2019 16:00:58 +0000 (16:00 +0000)] 
Make buffer size threashold 100 ms instead of 50 ms. Remove some surplus snd_pcm_prepare calls.

6 years agoMake the wait time less than the packet interval time to enable SPS to catch up if...
Mike Brady [Mon, 7 Jan 2019 15:59:58 +0000 (15:59 +0000)] 
Make the wait time less than the packet interval time to enable SPS to catch up if it gets behind.

6 years agoOnly look for snd_pcm_status_get_driver_htstamp is alsa version 1.1 or later...
Mike Brady [Fri, 4 Jan 2019 21:52:36 +0000 (21:52 +0000)] 
Only look for snd_pcm_status_get_driver_htstamp is alsa version 1.1 or later...

6 years agoUpdate TROUBLESHOOTING.md
Mike Brady [Fri, 4 Jan 2019 21:08:19 +0000 (21:08 +0000)] 
Update TROUBLESHOOTING.md

6 years agoUse driver htstamp rather than regular one. Use untimed_delay so that a regualr delay...
Mike Brady [Fri, 4 Jan 2019 20:57:18 +0000 (20:57 +0000)] 
Use driver htstamp rather than regular one. Use untimed_delay so that a regualr delay sets the standoff timer for silence.

6 years agoMove stall threshold calculation to init from start, duh.
Mike Brady [Fri, 4 Jan 2019 18:17:30 +0000 (18:17 +0000)] 
Move stall threshold calculation to init from start, duh.

6 years agoExtensive changes to alsa delay() and play() -- recover from XRUN _after_ sending...
Mike Brady [Fri, 4 Jan 2019 17:30:56 +0000 (17:30 +0000)] 
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.

6 years agoclang format
Mike Brady [Fri, 4 Jan 2019 17:26:55 +0000 (17:26 +0000)] 
clang format

6 years agoremove some debugging code from delay().
Mike Brady [Fri, 4 Jan 2019 17:26:00 +0000 (17:26 +0000)] 
remove some debugging code from delay().

6 years agocontinue to change delay() and play() to reflect use of snd_pcm_recover _after_ a...
Mike Brady [Fri, 4 Jan 2019 17:20:15 +0000 (17:20 +0000)] 
continue to change delay() and play() to reflect use of snd_pcm_recover _after_ a XRUN has occurred -- fix rate calculations etc.

6 years agoAdd code for calculating and recognising the interpolation threshold.
Mike Brady [Fri, 4 Jan 2019 17:10:57 +0000 (17:10 +0000)] 
Add code for calculating and recognising the interpolation threshold.

6 years agoAdd code for calculating and recognising the interpolation threshold.
Mike Brady [Fri, 4 Jan 2019 17:10:26 +0000 (17:10 +0000)] 
Add code for calculating and recognising the interpolation threshold.

6 years agoAdd the interpolation threshold setting.
Mike Brady [Fri, 4 Jan 2019 17:09:37 +0000 (17:09 +0000)] 
Add the interpolation threshold setting.

6 years agoAdd code for getting and setting the interpolation threshold.
Mike Brady [Fri, 4 Jan 2019 17:07:21 +0000 (17:07 +0000)] 
Add code for getting and setting the interpolation threshold.

6 years agoAdd default values for the interpolation threshold
Mike Brady [Fri, 4 Jan 2019 17:06:21 +0000 (17:06 +0000)] 
Add default values for the interpolation threshold

6 years agoUse snd_pcm_recover only _after_ an XRUN or suspend has happened. Don't use it to...
Mike Brady [Fri, 4 Jan 2019 13:50:14 +0000 (13:50 +0000)] 
Use snd_pcm_recover only _after_ an XRUN or suspend has happened. Don't use it to remove one -- it doesn't work.

6 years agoRaise the soxr minimum buffer size to something sensible and multiply it by the outpu...
Mike Brady [Fri, 4 Jan 2019 13:48:56 +0000 (13:48 +0000)] 
Raise the soxr minimum buffer size to something sensible and multiply it by the output ratio

6 years agoGive a nice message if the soxr library isn't installed.
Mike Brady [Fri, 4 Jan 2019 13:47:44 +0000 (13:47 +0000)] 
Give a nice message if the soxr library isn't installed.

6 years agoCheck before using snd_pcm_prepare in delay()
Mike Brady [Fri, 4 Jan 2019 11:29:18 +0000 (11:29 +0000)] 
Check before using snd_pcm_prepare in delay()

6 years agoFix parsing error with progress 'prgr' metadata
Mike Brady [Thu, 3 Jan 2019 10:48:54 +0000 (10:48 +0000)] 
Fix parsing error with progress 'prgr' metadata

6 years agoStop dropping metadata with a zero id -- it's not infallible way of determining if...
Mike Brady [Thu, 3 Jan 2019 10:48:09 +0000 (10:48 +0000)] 
Stop dropping metadata with a zero id -- it's not infallible way of determining if the metadata is invalid.

6 years agoStrengthen the ability to recover from an XRUN by putting in a call to snd_pcm_prepar...
Mike Brady [Thu, 3 Jan 2019 10:19:44 +0000 (10:19 +0000)] 
Strengthen the ability to recover from an XRUN by putting in a call to snd_pcm_prepare first.

6 years agoUsing new delay() and play() functions.
Mike Brady [Wed, 2 Jan 2019 22:42:48 +0000 (22:42 +0000)] 
Using new delay() and play() functions.

6 years agoFix trivial error in a debug message.
Mike Brady [Wed, 2 Jan 2019 22:40:48 +0000 (22:40 +0000)] 
Fix trivial error in a debug message.

6 years agonew play(), delay(), delay_prep_and_status() routines in place and working, but with...
Mike Brady [Wed, 2 Jan 2019 19:54:12 +0000 (19:54 +0000)] 
new play(), delay(), delay_prep_and_status() routines in place and working, but with the old stuff taken out.

6 years agonew play(), delay(), delay_prep_and_status() routines in place and working, but with...
Mike Brady [Wed, 2 Jan 2019 19:49:15 +0000 (19:49 +0000)] 
new play(), delay(), delay_prep_and_status() routines in place and working, but with the old stuff still around.

6 years agoTry out a new alsa delay routine. Could be very buggy!
Mike Brady [Wed, 2 Jan 2019 14:43:25 +0000 (14:43 +0000)] 
Try out a new alsa delay routine. Could be very buggy!

6 years agoIf output is stalled, don't write any more frames to the output device.
Mike Brady [Mon, 31 Dec 2018 17:46:31 +0000 (17:46 +0000)] 
If output is stalled, don't write any more frames to the output device.

6 years agoIf output is stalled, don't write any more frames to the output device.
Mike Brady [Mon, 31 Dec 2018 17:46:05 +0000 (17:46 +0000)] 
If output is stalled, don't write any more frames to the output device.

6 years agoModify my_snd_pcm_delay but don't test it yet!
Mike Brady [Sat, 29 Dec 2018 09:34:10 +0000 (09:34 +0000)] 
Modify my_snd_pcm_delay but don't test it yet!

6 years agoAdd some diagnostics around the state of the DAC during delays.
Mike Brady [Fri, 28 Dec 2018 10:35:13 +0000 (10:35 +0000)] 
Add some diagnostics around the state of the DAC during delays.

6 years agoquieten some dacp debug messages
Mike Brady [Thu, 27 Dec 2018 14:36:29 +0000 (14:36 +0000)] 
quieten some dacp debug messages

6 years agoFix some memory leaks, improve silence filling backoff time calculation, alwasy add...
Mike Brady [Thu, 27 Dec 2018 14:05:48 +0000 (14:05 +0000)] 
Fix some memory leaks, improve silence filling backoff time calculation, alwasy add a NUL to an RTSP message.

6 years agoFormat
Mike Brady [Thu, 27 Dec 2018 14:04:31 +0000 (14:04 +0000)] 
Format

6 years agoFix a few memory leaks by deleting responses even when the reply is somehow illegal.
Mike Brady [Thu, 27 Dec 2018 14:02:19 +0000 (14:02 +0000)] 
Fix a few memory leaks by deleting responses even when the reply is somehow illegal.

6 years agoAccount for duration of samples to be played and use the untimed_play when calculatin...
Mike Brady [Thu, 27 Dec 2018 14:01:32 +0000 (14:01 +0000)] 
Account for duration of samples to be played and use the untimed_play when calculating silence-filling backoff period.

6 years agoAlways leave space for, and put a NULL at the end of an RTSP packet.
Mike Brady [Thu, 27 Dec 2018 13:59:20 +0000 (13:59 +0000)] 
Always leave space for, and put a NULL at the end of an RTSP packet.

6 years agoBug fix: close a socket even if it doesn't successfully connect. Enhance some debug...
Mike Brady [Wed, 26 Dec 2018 10:42:52 +0000 (10:42 +0000)] 
Bug fix: close a socket even if it doesn't successfully connect. Enhance some debug messages.

6 years agoReturn genuine error codes where available in actual_open_alsa_device.
Mike Brady [Wed, 26 Dec 2018 10:41:20 +0000 (10:41 +0000)] 
Return genuine error codes where available in actual_open_alsa_device.

6 years agoMerge pull request #784 from a-x-/patch-1
Mike Brady [Sun, 23 Dec 2018 12:27:19 +0000 (12:27 +0000)] 
Merge pull request #784 from a-x-/patch-1

INSTALL.md: which -a shairport-sync find all the copies

6 years agoINSTALL.md: which -a shairport-sync find all the copies 784/head
Alexander Mextner [Sat, 22 Dec 2018 18:19:02 +0000 (21:19 +0300)] 
INSTALL.md: which -a shairport-sync find all the copies

6 years agoFurther adjustments to the silence thread -- make the sleep time 30 ms, thus if the...
Mike Brady [Mon, 17 Dec 2018 17:11:46 +0000 (17:11 +0000)] 
Further adjustments to the silence thread -- make the sleep time 30 ms, thus if the queue goes below 60 ms of samples, silence will be inserted unless an audio write occurred within the last 30 ms.

6 years agoadjust minimum interval between last audio write and writing silence.
Mike Brady [Mon, 17 Dec 2018 16:50:36 +0000 (16:50 +0000)] 
adjust minimum interval between last audio write and writing silence.

6 years agoNeed to use an untimed play for the silence buffer filler.
Mike Brady [Mon, 17 Dec 2018 16:44:19 +0000 (16:44 +0000)] 
Need to use an untimed play for the silence buffer filler.

6 years agoDon't send silence into the alsa device within the scanner's sleep time of the last...
Mike Brady [Mon, 17 Dec 2018 16:31:03 +0000 (16:31 +0000)] 
Don't send silence into the alsa device within the scanner's sleep time of the last legitimate write to it. This is to stop the scanner inserting silent frames while the player is flushing fames.

6 years agoDon't add dither if volume control is set to max.
Mike Brady [Mon, 17 Dec 2018 13:14:40 +0000 (13:14 +0000)] 
Don't add dither if volume control is set to max.

6 years agouse dither if using software mixer (i.e. no hardware mixer and not ignoring the volum...
Mike Brady [Mon, 17 Dec 2018 11:31:28 +0000 (11:31 +0000)] 
use dither if using software mixer (i.e. no hardware mixer and not ignoring the volume control) -- fix a mistake in accounting for the ignore_volume_control setting.

6 years agouse dither if using software mixer (i.e. no hardware mixer and not ignoring the volum...
Mike Brady [Mon, 17 Dec 2018 11:30:23 +0000 (11:30 +0000)] 
use dither if using software mixer (i.e. no hardware mixer and not ignoring the volume control) -- fix a mistake in accounting for the ignore_volume_control setting.

6 years agoUpdate RELEASENOTES.md
Mike Brady [Sat, 15 Dec 2018 17:50:01 +0000 (17:50 +0000)] 
Update RELEASENOTES.md

6 years agoMove the keep_dac_busy in to a configuration setting. Always start the keep_dac_busy...
Mike Brady [Sat, 15 Dec 2018 15:36:44 +0000 (15:36 +0000)] 
Move the keep_dac_busy in to a configuration setting. Always start the keep_dac_busy thread and check if the keep_dac_busy is set. Don't dither is ignore volume control is set.

6 years agoUpdate RELEASENOTES.md
Mike Brady [Fri, 14 Dec 2018 16:10:09 +0000 (16:10 +0000)] 
Update RELEASENOTES.md

6 years agoUpdate RELEASENOTES.md
Mike Brady [Fri, 14 Dec 2018 16:07:50 +0000 (16:07 +0000)] 
Update RELEASENOTES.md

6 years agoBring in the "disable_standby_mode" feature on alsa to stop some DACs making popping...
Mike Brady [Fri, 14 Dec 2018 15:28:32 +0000 (15:28 +0000)] 
Bring in the "disable_standby_mode" feature on alsa to stop some DACs making popping noises. Fix dither generation.

6 years agoFix dither, add dither to silences during lead-in, interpolatied frames and keeping...
Mike Brady [Fri, 14 Dec 2018 15:07:38 +0000 (15:07 +0000)] 
Fix dither, add dither to silences during lead-in, interpolatied frames and keeping out of standby, only if the output device doesn't use a mixer. Check configuration at initialisation.

6 years agoFix dither, add dither to silences during lead-in, interpolatied frames and keeping...
Mike Brady [Fri, 14 Dec 2018 15:07:00 +0000 (15:07 +0000)] 
Fix dither, add dither to silences during lead-in, interpolatied frames and keeping out of standby, only if the output device doesn't use a mixer. Check configuration at initialisation.

6 years agoDon't drop the audio during a flush -- it creates a clunk.
Mike Brady [Thu, 13 Dec 2018 16:59:18 +0000 (16:59 +0000)] 
Don't drop the audio during a flush -- it creates a clunk.

6 years agoUpdate shairport-sync.conf
Mike Brady [Thu, 13 Dec 2018 15:42:51 +0000 (15:42 +0000)] 
Update shairport-sync.conf

6 years agoExperimentally, add the ability to prevent the DAC making popping noises by feeding...
Mike Brady [Thu, 13 Dec 2018 14:48:21 +0000 (14:48 +0000)] 
Experimentally, add the ability to prevent the DAC making popping noises by feeding it with silence instead of allowing it to stop.

6 years agoExperimentally, add the ability to prevent the DAC making popping noises by feeding...
Mike Brady [Thu, 13 Dec 2018 14:47:52 +0000 (14:47 +0000)] 
Experimentally, add the ability to prevent the DAC making popping noises by feeding it with silence instead of allowing it to stop.

6 years agoUpdate RELEASENOTES.md
Mike Brady [Wed, 12 Dec 2018 22:21:40 +0000 (22:21 +0000)] 
Update RELEASENOTES.md

6 years agoRemove connection with common.h -- works properly.
Mike Brady [Wed, 12 Dec 2018 22:07:55 +0000 (22:07 +0000)] 
Remove connection with common.h -- works properly.