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 |
|
Mike Brady
|
9552b278b7
|
remove some debugging code from delay().
|
2019-01-04 17:26:00 +00:00 |
|
Mike Brady
|
7496364aaa
|
continue to change delay() and play() to reflect use of snd_pcm_recover _after_ a XRUN has occurred -- fix rate calculations etc.
|
2019-01-04 17:20:15 +00:00 |
|
Mike Brady
|
3434761517
|
Add code for calculating and recognising the interpolation threshold.
|
2019-01-04 17:10:57 +00:00 |
|
Mike Brady
|
7b97ea4019
|
Add code for calculating and recognising the interpolation threshold.
|
2019-01-04 17:10:26 +00:00 |
|
Mike Brady
|
01dbf625fe
|
Add the interpolation threshold setting.
|
2019-01-04 17:09:37 +00:00 |
|
Mike Brady
|
db0e718c12
|
Add code for getting and setting the interpolation threshold.
|
2019-01-04 17:07:21 +00:00 |
|
Mike Brady
|
5e38fcd50f
|
Add default values for the interpolation threshold
|
2019-01-04 17:06:21 +00:00 |
|
Mike Brady
|
459dd51a31
|
Use snd_pcm_recover only _after_ an XRUN or suspend has happened. Don't use it to remove one -- it doesn't work.
|
2019-01-04 13:50:14 +00:00 |
|
Mike Brady
|
4610d0870d
|
Raise the soxr minimum buffer size to something sensible and multiply it by the output ratio
|
2019-01-04 13:48:56 +00:00 |
|
Mike Brady
|
4f9730e3b2
|
Give a nice message if the soxr library isn't installed.
|
2019-01-04 13:47:44 +00:00 |
|
Mike Brady
|
8e5733e6ae
|
Check before using snd_pcm_prepare in delay()
|
2019-01-04 11:29:18 +00:00 |
|
Mike Brady
|
c35fb69e33
|
Fix parsing error with progress 'prgr' metadata
|
2019-01-03 10:48:54 +00:00 |
|
Mike Brady
|
f5707d4f18
|
Stop dropping metadata with a zero id -- it's not infallible way of determining if the metadata is invalid.
|
2019-01-03 10:48:09 +00:00 |
|
Mike Brady
|
41c8c8b9a1
|
Strengthen the ability to recover from an XRUN by putting in a call to snd_pcm_prepare first.
|
2019-01-03 10:19:44 +00:00 |
|
Mike Brady
|
b973619d66
|
Using new delay() and play() functions.
|
2019-01-02 22:42:48 +00:00 |
|
Mike Brady
|
15729ebcd4
|
Fix trivial error in a debug message.
|
2019-01-02 22:40:48 +00:00 |
|
Mike Brady
|
8d8b8c05f6
|
new play(), delay(), delay_prep_and_status() routines in place and working, but with the old stuff taken out.
|
2019-01-02 19:54:12 +00:00 |
|
Mike Brady
|
59d26918f6
|
new play(), delay(), delay_prep_and_status() routines in place and working, but with the old stuff still around.
|
2019-01-02 19:49:15 +00:00 |
|
Mike Brady
|
6f8b35d121
|
Try out a new alsa delay routine. Could be very buggy!
|
2019-01-02 14:43:25 +00:00 |
|
Mike Brady
|
b4505593b2
|
If output is stalled, don't write any more frames to the output device.
|
2018-12-31 17:46:31 +00:00 |
|
Mike Brady
|
fe857037de
|
If output is stalled, don't write any more frames to the output device.
|
2018-12-31 17:46:05 +00:00 |
|
Mike Brady
|
fc08572631
|
Modify my_snd_pcm_delay but don't test it yet!
|
2018-12-29 09:34:10 +00:00 |
|
Mike Brady
|
919c5fe8b8
|
Add some diagnostics around the state of the DAC during delays.
|
2018-12-28 10:35:13 +00:00 |
|
Mike Brady
|
59b3abd965
|
quieten some dacp debug messages
|
2018-12-27 14:36:29 +00:00 |
|
Mike Brady
|
fbb381133e
|
Fix some memory leaks, improve silence filling backoff time calculation, alwasy add a NUL to an RTSP message.
|
2018-12-27 14:05:48 +00:00 |
|
Mike Brady
|
ad6c721d5a
|
Format
|
2018-12-27 14:04:31 +00:00 |
|
Mike Brady
|
668f78062e
|
Fix a few memory leaks by deleting responses even when the reply is somehow illegal.
|
2018-12-27 14:02:19 +00:00 |
|
Mike Brady
|
1828545602
|
Account for duration of samples to be played and use the untimed_play when calculating silence-filling backoff period.
|
2018-12-27 14:01:32 +00:00 |
|
Mike Brady
|
6e5f84d2a0
|
Always leave space for, and put a NULL at the end of an RTSP packet.
|
2018-12-27 13:59:20 +00:00 |
|
Mike Brady
|
10985a0bec
|
Bug fix: close a socket even if it doesn't successfully connect. Enhance some debug messages.
|
2018-12-26 10:42:52 +00:00 |
|
Mike Brady
|
284cb9d3fb
|
Return genuine error codes where available in actual_open_alsa_device.
|
2018-12-26 10:41:20 +00:00 |
|
Mike Brady
|
70cd4fe81f
|
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.
|
2018-12-17 17:11:46 +00:00 |
|
Mike Brady
|
2830cdf712
|
adjust minimum interval between last audio write and writing silence.
|
2018-12-17 16:50:36 +00:00 |
|
Mike Brady
|
a96d28c4e5
|
Need to use an untimed play for the silence buffer filler.
|
2018-12-17 16:44:19 +00:00 |
|
Mike Brady
|
cb17fb263a
|
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.
|
2018-12-17 16:31:03 +00:00 |
|
Mike Brady
|
57e9619e5b
|
Don't add dither if volume control is set to max.
|
2018-12-17 13:14:40 +00:00 |
|
Mike Brady
|
4db9c117a2
|
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.
|
2018-12-17 11:31:28 +00:00 |
|
Mike Brady
|
14e867a66b
|
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.
|
2018-12-17 11:30:23 +00:00 |
|
 Mike BradyandGitHub
|
aa2e2c3d24
|
Update RELEASENOTES.md
|
2018-12-15 17:50:01 +00:00 |
|
Mike Brady
|
4ba0947ddb
|
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.
|
2018-12-15 15:36:44 +00:00 |
|
 Mike BradyandGitHub
|
efa592db41
|
Update RELEASENOTES.md
|
2018-12-14 16:10:09 +00:00 |
|
 Mike BradyandGitHub
|
c20fc79a6e
|
Update RELEASENOTES.md
|
2018-12-14 16:07:50 +00:00 |
|