| 2026-10-04 05:08 | Add sad.1 and sacc.1 man pages and install them | equwal |
| 2026-10-04 04:56 | Add Cygwin install target, sacc client and Windows wrappers | equwal |
| 2026-10-04 04:33 | Add OSS output backend, link only the selected backend | equwal |
| 2021-01-21 19:01 | Re-format code | sin |
| 2021-01-21 06:11 | Use #define macros to simplify configuration | Spenser Truex |
| 2021-01-21 10:03 | Re-format code | sin |
| 2021-01-20 13:52 | Bugfix: important part of volume change in error catch | Spenser Truex |
| 2021-01-20 13:02 | Add support for the 'status volume' PROTOCOL | Spenser Truex |
| 2021-01-20 05:24 | No to "pause [0|1]" toggles pause | Spenser Truex |
| 2015-02-01 01:14 | Use proper type for isrunning | sin |
| 2015-01-23 15:07 | sad.h: dont include limits.h here | Hiltjo Posthuma |
| 2015-01-23 14:02 | fix some warnings | Hiltjo Posthuma |
| 2015-01-23 13:21 | scripts/sad-add: check if path is a unix domain socket before trying stuff | Hiltjo Posthuma |
| 2015-01-23 13:19 | sad: cleanup fds and unlink socket on exit | Hiltjo Posthuma |
| 2015-01-23 09:53 | Minor fix in PROTOCOL | sin |
| 2015-01-19 20:39 | Use 'r' for return value instead of 'ok' | sin |
| 2015-01-15 00:17 | "%s: %s\n", statevar, infomsg | dcat |
| 2015-01-14 20:01 | Remove useless blank line | sin |
| 2015-01-14 19:49 | Use else-if as only one of these is possible at a time | sin |
| 2015-01-14 19:47 | Add missing prototype | sin |
| 2015-01-14 19:44 | Implement initial status command | dcat |
| 2015-01-07 17:05 | Bring up alsa latency - some audio tracks stutter | sin |
| 2015-01-03 20:05 | Remove useless include | sin |
| 2015-01-02 18:21 | Disable alsa resampling and bring down latency to 50ms instead of 500ms | sin |
| 2015-01-02 18:05 | No need for a separate init callback for decoders | sin |
| 2015-01-02 17:50 | Align vars | sin |
| 2015-01-02 17:48 | Style fix | sin |
| 2015-01-02 17:06 | Remove cmdsearch() | sin |
| 2015-01-02 16:12 | Remove the concept of library entirely | sin |
| 2015-01-02 15:59 | Style fix | sin |
| 2015-01-02 15:53 | Fix memory leak + size calculations when removing an element from the playlist | sin |
| 2015-01-02 15:48 | Add support to remove playlist entries | sin |
| 2015-01-02 15:32 | Update wording in PROTOCOL | sin |
| 2015-01-02 15:31 | Update PROTOCOL and rename delete to remove | sin |
| 2015-01-02 15:10 | Add short to float conversions and vice-versa | sin |
| 2015-01-02 14:51 | Simplify expression | sin |
| 2015-01-02 14:50 | Factor our pcm conversion functions to a separate file | sin |
| 2014-12-31 22:20 | Style fix | sin |
| 2014-12-31 22:19 | Style fix | sin |
| 2014-12-31 21:36 | Add stereo to mono conversion | sin |
| 2014-12-31 19:30 | Simplify s16monotostereo() | sin |
| 2014-12-31 19:28 | Style fix, be consistent with the other conditionals | sin |
| 2014-12-31 18:31 | Keep a copy of the buffer to simplify freeing resources | sin |
| 2014-12-31 18:21 | Perform mono to stereo conversion if necessary | sin |
| 2014-12-31 18:10 | We can only handle 16-bit on the outputs at the moment | sin |
| 2014-12-31 18:07 | Enable alsa backend by default | sin |
| 2014-12-31 18:06 | Simplify config.def.h | sin |
| 2014-12-31 17:58 | Use Format for outputs too | sin |
| 2014-12-31 17:50 | No need to keep format global | sin |
| 2014-12-31 17:19 | Introduce Format type and start using it | sin |
| 2014-12-31 16:29 | Don't name the struct | sin |
| 2014-12-31 16:21 | Update PROTOCOL | sin |
| 2014-12-31 15:46 | Do not treat "OK" as a song ID | sin |
| 2014-12-31 15:30 | Default to SOXR_QQ | sin |
| 2014-12-31 15:27 | Implement volume setting for the alsa backend | sin |
| 2014-12-31 15:14 | Correctly cleanup if an error occurs in the alsa backend | sin |
| 2014-12-31 15:12 | Simplify a bit the output enable/disable semantics | sin |
| 2014-12-30 18:10 | Factor out playoutput() | sin |
| 2014-12-30 17:57 | Style fix - group related blocks | sin |
| 2014-12-30 17:48 | Bomb out if we cannot initialize the resampler | sin |
| 2014-12-30 17:46 | Allow resampling quality to be tweaked via config.h | sin |
| 2014-12-30 17:00 | Add initial implementation of resampler | sin |
| 2014-12-30 15:48 | Calculate framesize automatically instead of hardcoding | sin |
| 2014-12-30 15:39 | Add .flac too to sad-add | sin |
| 2014-12-29 09:48 | flac: fix non-16bit FLAC (untested) | Hiltjo Posthuma |
| 2014-12-29 02:25 | Add cmdrepeat and cmdrandom | sin |
| 2014-12-29 02:20 | Add repeat/random modes | sin |
| 2014-12-28 22:02 | Fix error message | sin |
| 2014-12-28 21:57 | Implement cmdclose() | sin |
| 2014-12-28 20:11 | Add initial implementation of the notifier API | sin |
| 2014-12-28 19:41 | Convert atoi() calls to strtonum() | sin |
| 2014-12-29 00:26 | flac: add basic flac support using libsndfile | Hiltjo Posthuma |
| 2014-12-28 23:18 | scripts/sad-add: change to library "learn" | Hiltjo Posthuma |
| 2014-12-28 23:18 | alsa: put device at top | Hiltjo Posthuma |
| 2014-12-28 22:56 | alsa output: start, needs alot more work | Hiltjo Posthuma |
| 2014-12-28 15:51 | Just return the old entry if it already exists | sin |
| 2014-12-28 15:44 | Only allow one instance of each file to be added to the library | sin |
| 2014-12-28 15:40 | Initialize the struct properly in config.def.h | sin |
| 2014-12-28 12:14 | Update PROTOCOL | sin |
| 2014-12-28 12:03 | Add enable/disable output commands | sin |
| 2014-12-28 11:18 | Add empty command | sin |
| 2014-12-28 11:11 | Add initial library code | sin |
| 2014-12-27 23:19 | Add enable/disable commands | sin |
| 2014-12-27 23:15 | Update error message | sin |
| 2014-12-27 23:15 | Update PROTOCOL | sin |
| 2014-12-27 22:52 | Up buffer again | sin |
| 2014-12-27 20:55 | Add cmdline option to choose socket path | sin |
| 2014-12-27 20:31 | Add arg.h | sin |
| 2014-12-27 18:49 | Add compat.h as a prereq | sin |
| 2014-12-27 18:43 | Update CFLAGS | sin |
| 2014-12-27 18:26 | Remember to undef strtonum | sin |
| 2014-12-27 18:26 | Add strtonum() | sin |
| 2014-12-27 18:23 | Remove -g from default CFLAGS | sin |
| 2014-12-27 18:22 | Add strlcat | sin |
| 2014-12-27 18:20 | Add strlcpy | sin |
| 2014-12-27 18:15 | Fix some warnings | sin |
| 2014-12-27 18:13 | List object files on separate lines in Makefile | sin |
| 2014-12-27 18:11 | Simplify Makefile | sin |
| 2014-12-27 15:14 | Up buffer size | sin |
| 2014-12-27 15:08 | Unstaticise | sin |
| 2014-12-27 15:07 | Add config.def.h | sin |
| 2014-12-27 14:54 | Add version command to PROTOCOL | sin |
| 2014-12-27 14:44 | Halve buffer size | sin |
| 2014-12-27 14:42 | Add FIFO output | sin |
| 2014-12-27 14:27 | Remove useless include | sin |
| 2014-12-27 14:25 | Just link against libvorbisfile | sin |
| 2014-12-27 14:23 | Add TODO comment | sin |
| 2014-12-27 14:23 | Rename voloutput to setvol | sin |
| 2014-12-27 14:21 | Mostly style fixes | sin |
| 2014-12-27 13:02 | Just add $HOME/music | sin |
| 2014-12-27 12:51 | Add setinputfmt() - will be needed later for SRC | sin |
| 2014-12-27 13:35 | playlist realloc: we error on reallocarray so remove temp var | Hiltjo Posthuma |
| 2014-12-27 13:33 | scripts: add example scripts | Hiltjo Posthuma |
| 2014-12-27 11:43 | Collapse struct | sin |
| 2014-12-27 11:36 | Add close output functions | sin |
| 2014-12-27 11:34 | Just call openoutput() | sin |
| 2014-12-27 11:30 | Add output.c | sin |
| 2014-12-27 11:16 | Do not capitalize array, it is not a typedef | sin |
| 2014-12-27 11:11 | Remove unneeded include | sin |
| 2014-12-27 10:43 | Keep the output open | sin |
| 2014-12-27 10:12 | Rename some functions | sin |
| 2014-12-27 10:08 | Remove findsong() | sin |
| 2014-12-27 00:57 | No more prints | sin |
| 2014-12-27 00:55 | Add play() and stop() | sin |
| 2014-12-27 00:41 | Add playnext() and playprev() | sin |
| 2014-12-27 00:10 | Add cmdversion | sin |
| 2014-12-27 00:08 | Add some more diagnostics | sin |
| 2014-12-27 00:02 | Path to sock is now /tmp/sad-sock | sin |
| 2014-12-27 00:01 | Use version instead of sad | sin |
| 2014-12-26 23:47 | Default to repeat mode for now | sin |
| 2014-12-26 23:42 | Remove leftover field | sin |
| 2014-12-26 23:41 | Fix play semantics | sin |
| 2014-12-27 00:38 | doc: "prev" command | Hiltjo Posthuma |
| 2014-12-27 00:35 | cmd: add regex search "search" | Hiltjo Posthuma |
| 2014-12-26 23:17 | Update PROTOCOL | sin |
| 2014-12-26 23:10 | Remove tokenizer.o target from Makefile | sin |
| 2014-12-26 23:08 | Initialize return value | sin |
| 2014-12-26 23:00 | No need to enclose error messages in double quotes | sin |
| 2014-12-26 22:56 | Remove useless function | sin |
| 2014-12-26 22:47 | Add Hiltjo to LICENSE | sin |
| 2014-12-26 22:56 | rework tokenizer | Hiltjo Posthuma |
| 2014-12-26 19:16 | Style fix | sin |
| 2014-12-26 18:33 | Fill the entire buffer | sin |
| 2014-12-26 18:27 | Style fix | sin |
| 2014-12-26 18:26 | Oops fix random change | sin |
| 2014-12-26 18:24 | Don't bother initializing cursect | sin |
| 2014-12-26 18:23 | play() should return number of bytes written | sin |
| 2014-12-26 18:20 | Fix error path | sin |
| 2014-12-26 18:19 | Use ov_fopen() | sin |
| 2014-12-26 17:52 | fclose if vorbis open fails | sin |
| 2014-12-26 18:44 | compat: add reallocarray for linux | Hiltjo Posthuma |
| 2014-12-26 17:47 | Reset cursect | sin |
| 2014-12-26 17:42 | Use unsigned char + fix missing include | sin |
| 2014-12-26 16:56 | Pull rate and chans from the file itself | sin |
| 2014-12-26 16:48 | Add vorbis decoder | sin |
| 2014-12-26 16:02 | Keep initializing decoders | sin |
| 2014-12-26 15:59 | Reply with pong on ping | sin |
| 2014-12-26 15:53 | Fixup error messages a bit | sin |
| 2014-12-26 15:47 | Add TODO comment | sin |
| 2014-12-26 15:43 | Report failures to change volume | sin |
| 2014-12-26 15:08 | Rename doaudio() to playaudio() | sin |
| 2014-12-26 15:06 | Style fix | sin |
| 2014-12-26 14:11 | Style fix | sin |
| 2014-12-26 14:10 | Refactor decoder again | sin |
| 2014-12-26 14:02 | Refactor decoder | sin |
| 2014-12-26 13:53 | playlist: dynamic list, grow by 4096 | Hiltjo Posthuma |
| 2014-12-26 13:52 | Add mp3 decoder | sin |
| 2014-12-26 00:28 | fix a few warnings | Hiltjo Posthuma |
| 2014-12-26 11:25 | Simplify decode() | sin |
| 2014-12-26 11:05 | Remove init/exit callbacks for the output | sin |
| 2014-12-25 23:04 | Only allow volume changes when we have a valid context | sin |
| 2014-12-25 22:43 | Just use the current song as a reference when moving to next/prev | sin |
| 2014-12-25 17:49 | Actually use bits | sin |
| 2014-12-25 17:48 | Style fix | sin |
| 2014-12-25 17:46 | Implement kill command | sin |
| 2014-12-25 17:44 | Implement prev command | sin |
| 2014-12-25 17:42 | Add some TODO | sin |
| 2014-12-25 17:40 | Implement next command | sin |
| 2014-12-25 17:31 | Increase timeout to 10ms | sin |
| 2014-12-25 17:30 | Update PROTOCOL | sin |
| 2014-12-25 17:29 | Staticise symbols | sin |
| 2014-12-25 17:25 | More error checking | sin |
| 2014-12-25 17:20 | Handle multiple input formats (8, 16, 24 and 32 bit) | sin |
| 2014-12-25 17:11 | Implement clearplaylist() | sin |
| 2014-12-25 15:29 | Rearrange local var | sin |
| 2014-12-25 15:25 | Reset state on failure | sin |
| 2014-12-25 14:51 | Add some error checking for changing volume | sin |
| 2014-12-25 14:49 | Add volume control | sin |
| 2014-12-25 14:43 | If a song is already playing, properly close the decoder before moving on | sin |
| 2014-12-25 14:21 | Use BUFSIZ | sin |
| 2014-12-25 14:10 | Complain for unknown commands | sin |
| 2014-12-25 14:08 | Fix docmd() return value | sin |
| 2014-12-25 14:03 | Handle reading multiple lines in a single read etc. | sin |
| 2014-12-25 13:43 | Ensure params have been accepted | sin |
| 2014-12-25 13:13 | Add libsndfile | sin |
| 2014-12-25 11:33 | Add wav.c too | sin |
| 2014-12-25 11:33 | Back to the drawing board | sin |
| 2014-12-24 23:19 | Various updates - completely broken atm | sin |
| 2014-12-24 16:11 | Close decoder + output on stop | sin |
| 2014-12-24 16:05 | Forgot return | sin |
| 2014-12-24 15:02 | Add some error checking | sin |
| 2014-12-24 14:42 | Fix indentation and send protocol version | sin |
| 2014-12-24 14:33 | Initial commit | sin |