Mike Brady and GitHub
ec84f0fd98
Merge pull request #809 from nettings/development
...
Modify audio_jack.c to use native jack lockless buffers and to offer auto connect facilities. Overall, the backend is now written more in the idiom of jack audio.
Many thanks to [Jörn Nettingsmeier](https://github.com/nettings ).
2019-02-19 11:12:03 +00:00
Mike Brady
fce6b5137e
Add a new command line option: -u to send logs to STDERR.
2019-02-16 19:32:13 +00:00
Jörn Nettingsmeier
bd5cfd3583
forgot to add new option autoconnect_pattern to default conf and common.h
2019-02-16 16:08:40 +00:00
Jörn Nettingsmeier
8c5e85c87c
Remove audio_client_disconnect option. This is not good behaviour for a JACK client, and adds nothing.
2019-02-15 23:14:31 +00:00
Jörn Nettingsmeier
edd699dfbc
Remove auto_client_open_interval option, always open JACK connection immediately or fail.
...
Remove client creation thread and wrapper function.
2019-02-15 23:08:04 +00:00
Jörn Nettingsmeier
0b589cbe6d
Remove option to configure port names. This is very unusual for a JACK client, nothing is gained by offering this, and it might confuse users.
2019-02-15 19:29:24 +00:00
Mike Brady
5af6179875
use the term'state' rather than 'mode' when taling about the active state. Use 'while_active' rather than 'while active'
2019-02-12 15:47:10 +00:00
Mike Brady
8b589879be
fix a few minor compilation errors
2019-02-08 09:40:51 +00:00
Mike Brady
c86823c343
Starting to connect active mode with disable standby.
2019-02-08 09:04:33 +00:00
Mike Brady
e76cfa69fe
remove dependency on libdaemon -- leave it in by default, but allow the new configuration option --with-libdaemon.
2019-02-05 15:12:51 +00:00
Mike Brady
552218ab6e
Clean up audio help texts, add in the volume_range_hw_priority setting.
2019-02-05 11:26:54 +00:00
Mike Brady
c5ff0dfed0
Rebuild the volume control calculations. Implement software mute. Try to delay alsa initialisation as long as possible.
2019-01-30 09:24:10 +00:00
Mike Brady
dd1b85383d
move malloc_cleanup to common.c
2019-01-23 16:34:46 +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
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
4483037719
Block on command_execute for unfixable errors.
2019-01-15 08:30:00 +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
80f15e1f57
clang format
2019-01-04 17:26:55 +00:00
Mike Brady
01dbf625fe
Add the interpolation threshold setting.
2019-01-04 17:09:37 +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
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 Brady
7708ee3cdf
Bring in the "disable_standby_mode" feature on alsa to stop some DACs making popping noises. Fix dither generation.
2018-12-14 15:28:32 +00:00
Mike Brady
4046c0e73d
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.
2018-12-14 15:07:00 +00:00
Mike Brady
a8fe3bd13b
Remove connection with common.h -- works properly.
2018-12-12 22:07:55 +00:00
Mike Brady
b40b80247f
Fix a compilation error w.r.t. debuglev and fix a complation warning.
2018-12-12 21:21:54 +00:00
Mike Brady
45ce909214
Tidy up some debug messages and warnings, remove old diagnostic codes and settings.
2018-12-11 10:56:36 +00:00
Mike Brady
9d5ff22f2d
Connect up the stall response to the external command calling -- add a single argument to the unfixable error call.
2018-12-10 22:28:52 +00:00
Mike Brady
e5452e5172
Make the idle timeout on the RTSP link the same as the overall timeout -- 30 seconds is a bit short. Add checks to the alsa interface timing -- 15 ms to write a packet of frames, 1 ms to ask for the delay.
2018-12-08 14:12:33 +00:00
Mike Brady
277d401d24
Ensure watchdog always starts with the starting time of the thread. Add watchdog bark count. On the third bark, execute an unfixable error script if present.
2018-12-04 17:25:15 +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
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
ccc4fe09af
Tidy up the formats.
2018-11-20 22:56:53 +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
58a66ebb0e
Make debuglev volatile, over player_vol past the cleanup push, add some temporary diagnostics.
2018-11-19 14:24:24 +00:00
Mike Brady
e0a4e5cde8
Format tidy-up
2018-10-21 17:10:23 +01:00
Mike Brady
de071aeffc
Try to fix modulo calculations
2018-10-18 17:44:50 +01:00
Maciej Wilczynski
947a0ca291
Add PA sink configuration option
2018-09-15 20:49:11 +02:00
Mike Brady
1b18f45fac
Clang Format Cleanup
2018-09-09 20:43:01 +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
6c6dda9cce
Add ability for the jack back end to automaticlly connect a client when the jack server comes up and to drop the client when a play session is finished.
2018-09-02 17:25:29 +01:00
Mike Brady
959aa08b8f
Clean up the jack backend and add a few options.
2018-08-31 21:41:25 +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
ea20840d6c
Make the play function return a status (ignored for the present). Clean up audio_alsa by removing all the die calls and placing the alsa_mutex calls in pthread cleanup routines.
2018-07-29 13:45:42 +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
Till Zimmermann
02694948f3
Initial MQTT Version
2018-06-19 19:40:08 +02:00
Mike Brady
93f410599f
Add debug_mutex_unlock code in place of a regular pthread_mutex_unlock in some places.
2018-06-01 09:28:28 +01:00