chiark / gitweb /
disorder
13 years agospeaker refactoring
rjk@greenend.org.uk [Sun, 23 Sep 2007 19:06:54 +0000 (20:06 +0100)]
speaker refactoring

13 years agoprep for more speaker refactoring
rjk@greenend.org.uk [Sun, 23 Sep 2007 19:02:18 +0000 (20:02 +0100)]
prep for more speaker refactoring

13 years agomore speaker refactoring
rjk@greenend.org.uk [Sun, 23 Sep 2007 17:24:46 +0000 (18:24 +0100)]
more speaker refactoring

13 years agopcm_format is ALSA-only
rjk@greenend.org.uk [Sun, 23 Sep 2007 17:19:04 +0000 (18:19 +0100)]
pcm_format is ALSA-only
enable_translation() is driven by a flag

13 years agodoxygen
rjk@greenend.org.uk [Sun, 23 Sep 2007 17:14:06 +0000 (18:14 +0100)]
doxygen

13 years agosplit out activate()
rjk@greenend.org.uk [Sun, 23 Sep 2007 15:55:31 +0000 (16:55 +0100)]
split out activate()

13 years agostart refactoring speaker
rjk@greenend.org.uk [Sun, 23 Sep 2007 15:33:27 +0000 (16:33 +0100)]
start refactoring speaker

13 years agonever reduce socket buffers
rjk@greenend.org.uk [Sun, 23 Sep 2007 15:17:30 +0000 (16:17 +0100)]
never reduce socket buffers

13 years agonever reverse rtp_time. leave a comment explaining
Richard Kettlewell [Sun, 23 Sep 2007 15:07:52 +0000 (16:07 +0100)]
never reverse rtp_time.  leave a comment explaining

13 years agodisable some debug chatter from speaker
Richard Kettlewell [Sun, 23 Sep 2007 12:40:57 +0000 (13:40 +0100)]
disable some debug chatter from speaker

13 years agobump up send socket buffer too
Richard Kettlewell [Sun, 23 Sep 2007 12:40:04 +0000 (13:40 +0100)]
bump up send socket buffer too

13 years ago--rcvbuf option; warn if -L is used
Richard Kettlewell [Sun, 23 Sep 2007 12:36:12 +0000 (13:36 +0100)]
--rcvbuf option; warn if -L is used

13 years agoarrange for a rounder number of samples per packet
Richard Kettlewell [Sun, 23 Sep 2007 12:10:09 +0000 (13:10 +0100)]
arrange for a rounder number of samples per packet

13 years agoconfigure playahead in ms
Richard Kettlewell [Sun, 23 Sep 2007 12:00:35 +0000 (13:00 +0100)]
configure playahead in ms

13 years agoseparate thread to add to heap
Richard Kettlewell [Sun, 23 Sep 2007 11:54:25 +0000 (12:54 +0100)]
separate thread to add to heap

13 years agosaner play rate logic for speaker process
Richard Kettlewell [Sun, 23 Sep 2007 10:28:23 +0000 (11:28 +0100)]
saner play rate logic for speaker process

13 years agoupdate mac support
Richard Kettlewell [Sun, 23 Sep 2007 09:16:00 +0000 (10:16 +0100)]
update mac support

13 years agomove audio translation to the right place
rjk@greenend.org.uk [Sat, 22 Sep 2007 18:54:27 +0000 (19:54 +0100)]
move audio translation to the right place

13 years agominor fixes
rjk@greenend.org.uk [Sat, 22 Sep 2007 18:21:21 +0000 (19:21 +0100)]
minor fixes

13 years agobring alsa code up to date
rjk@greenend.org.uk [Sat, 22 Sep 2007 17:52:13 +0000 (18:52 +0100)]
bring alsa code up to date

13 years agodoxygen
Richard Kettlewell [Sat, 22 Sep 2007 13:25:27 +0000 (14:25 +0100)]
doxygen

13 years agodoxygen
Richard Kettlewell [Sat, 22 Sep 2007 12:08:04 +0000 (13:08 +0100)]
doxygen

13 years agomore playrtp fiddling. still noise.
Richard Kettlewell [Sat, 22 Sep 2007 11:47:26 +0000 (12:47 +0100)]
more playrtp fiddling.  still noise.

13 years agodoxygen
Richard Kettlewell [Sat, 22 Sep 2007 11:31:53 +0000 (12:31 +0100)]
doxygen

13 years agoplayrtp now uses heap.h
Richard Kettlewell [Sat, 22 Sep 2007 11:11:47 +0000 (12:11 +0100)]
playrtp now uses heap.h

13 years agodoxygen
Richard Kettlewell [Sat, 22 Sep 2007 11:11:32 +0000 (12:11 +0100)]
doxygen

13 years agohelp/version checks
Richard Kettlewell [Sat, 22 Sep 2007 10:25:10 +0000 (11:25 +0100)]
help/version checks

13 years agodoxygen
Richard Kettlewell [Fri, 21 Sep 2007 23:29:09 +0000 (00:29 +0100)]
doxygen

13 years agomore doxygen
Richard Kettlewell [Fri, 21 Sep 2007 23:02:52 +0000 (00:02 +0100)]
more doxygen

13 years agotidying and docs
Richard Kettlewell [Fri, 21 Sep 2007 22:58:24 +0000 (23:58 +0100)]
tidying and docs

13 years agomention heap.h in makefile so it is distributed
Richard Kettlewell [Fri, 21 Sep 2007 22:43:01 +0000 (23:43 +0100)]
mention heap.h in makefile so it is distributed

13 years agobinary heap macro and a simple test case
Richard Kettlewell [Fri, 21 Sep 2007 22:38:11 +0000 (23:38 +0100)]
binary heap macro and a simple test case

13 years agodoxygen
Richard Kettlewell [Fri, 21 Sep 2007 22:37:46 +0000 (23:37 +0100)]
doxygen

13 years agocorrect hex() for 0 length outputs
Richard Kettlewell [Fri, 21 Sep 2007 22:31:34 +0000 (23:31 +0100)]
correct hex() for 0 length outputs

13 years agoabolish linked list of packets. (linux still to do.)
Richard Kettlewell [Tue, 18 Sep 2007 23:37:49 +0000 (00:37 +0100)]
abolish linked list of packets.  (linux still to do.)

13 years agodrop 0s at end of rtp packets
Richard Kettlewell [Tue, 18 Sep 2007 23:37:26 +0000 (00:37 +0100)]
drop 0s at end of rtp packets

13 years agomore logging
Richard Kettlewell [Tue, 18 Sep 2007 21:34:05 +0000 (22:34 +0100)]
more logging

13 years agomore rtp_time fixes. still borked l-(
Richard Kettlewell [Mon, 17 Sep 2007 18:37:29 +0000 (19:37 +0100)]
more rtp_time fixes.   still borked l-(

13 years agodon't backtrack rtp_time. still not good l-(
Richard Kettlewell [Mon, 17 Sep 2007 18:34:37 +0000 (19:34 +0100)]
don't backtrack rtp_time.  still not good l-(

13 years agolog rtp timestamp updates (which shows that they are wrong)
Richard Kettlewell [Mon, 17 Sep 2007 18:23:09 +0000 (19:23 +0100)]
log rtp timestamp updates (which shows that they are wrong)

13 years agosort of works on macos
Richard Kettlewell [Mon, 17 Sep 2007 18:11:35 +0000 (19:11 +0100)]
sort of works on macos

13 years agonon-server builds want alsa too now
Richard Kettlewell [Mon, 17 Sep 2007 07:42:14 +0000 (08:42 +0100)]
non-server builds want alsa too now

13 years agoplayrtp now builds on macos. untested.
Richard Kettlewell [Mon, 17 Sep 2007 07:39:36 +0000 (08:39 +0100)]
playrtp now builds on macos.  untested.

13 years agoyet more logging; dots at every snd_pcm_wait
rjk@greenend.org.uk [Sun, 16 Sep 2007 20:47:07 +0000 (21:47 +0100)]
yet more logging; dots at every snd_pcm_wait

13 years agomore logging; halve default buffer size
rjk@greenend.org.uk [Sun, 16 Sep 2007 20:27:43 +0000 (21:27 +0100)]
more logging; halve default buffer size

13 years agomore logging and a saner way to figure out what to play next
rjk@greenend.org.uk [Sun, 16 Sep 2007 20:19:45 +0000 (21:19 +0100)]
more logging and a saner way to figure out what to play next

13 years agoa bit more doxygen
rjk@greenend.org.uk [Sun, 16 Sep 2007 19:41:47 +0000 (20:41 +0100)]
a bit more doxygen

13 years agomissing samples_written assign
rjk@greenend.org.uk [Sun, 16 Sep 2007 19:37:03 +0000 (20:37 +0100)]
missing samples_written assign

13 years agomake watermarks configurable and up default; ignore EAGAIN from snd_pcm_writei
rjk@greenend.org.uk [Sun, 16 Sep 2007 19:13:56 +0000 (20:13 +0100)]
make watermarks configurable and up default; ignore EAGAIN from snd_pcm_writei

13 years agosort of works
rjk@greenend.org.uk [Sun, 16 Sep 2007 19:04:00 +0000 (20:04 +0100)]
sort of works

13 years agocorrect next_timestamp logic
rjk@greenend.org.uk [Sun, 16 Sep 2007 18:52:30 +0000 (19:52 +0100)]
correct next_timestamp logic

13 years agonow builds on linux
rjk@greenend.org.uk [Sun, 16 Sep 2007 18:08:46 +0000 (19:08 +0100)]
now builds on linux

13 years ago--wide-open option; better login failure logging
rjk@greenend.org.uk [Sun, 16 Sep 2007 16:26:14 +0000 (17:26 +0100)]
--wide-open option; better login failure logging

13 years agostart on doxygenization of guts
rjk@greenend.org.uk [Sun, 16 Sep 2007 16:19:14 +0000 (17:19 +0100)]
start on doxygenization of guts

13 years agocorrect backend docs
rjk@greenend.org.uk [Sun, 16 Sep 2007 16:18:55 +0000 (17:18 +0100)]
correct backend docs

13 years agomention broadcast, broadcast_from in disorder_config(5)
rjk@greenend.org.uk [Sun, 16 Sep 2007 15:50:58 +0000 (16:50 +0100)]
mention broadcast, broadcast_from in disorder_config(5)

13 years agoalsa code builds again
rjk@greenend.org.uk [Sun, 16 Sep 2007 15:20:45 +0000 (16:20 +0100)]
alsa code builds again

13 years agoInstall disorderd under launchd in Mac OS X.
Richard Kettlewell [Tue, 4 Sep 2007 21:53:55 +0000 (22:53 +0100)]
Install disorderd under launchd in Mac OS X.

disorder-speaker can now transmit RTP over the network.  Effectively
untested and not yet fully documented.

New playrtp client.  Totally untested, might not even build.

13 years agorescan reports progress every 1000 tracks
Richard Kettlewell [Sat, 25 Aug 2007 16:19:02 +0000 (17:19 +0100)]
rescan reports progress every 1000 tracks

13 years agofix scratch path
Richard Kettlewell [Sat, 25 Aug 2007 14:29:28 +0000 (15:29 +0100)]
fix scratch path

13 years agoonly report volume change fail once
Richard Kettlewell [Sat, 25 Aug 2007 14:28:54 +0000 (15:28 +0100)]
only report volume change fail once

13 years agorefer to README.raw
Richard Kettlewell [Sat, 25 Aug 2007 12:58:47 +0000 (13:58 +0100)]
refer to README.raw

13 years agomention plugin install locations
Richard Kettlewell [Sat, 25 Aug 2007 12:58:00 +0000 (13:58 +0100)]
mention plugin install locations

13 years agomention raw players
Richard Kettlewell [Sat, 25 Aug 2007 12:57:52 +0000 (13:57 +0100)]
mention raw players

13 years agomake sure tests is last directory
Richard Kettlewell [Wed, 22 Aug 2007 19:42:44 +0000 (20:42 +0100)]
make sure tests is last directory

13 years agogc.h might be in /sw/include/gc
Richard Kettlewell [Wed, 22 Aug 2007 18:14:03 +0000 (19:14 +0100)]
gc.h might be in /sw/include/gc

13 years agoput the newline in the right place
Richard Kettlewell [Wed, 22 Aug 2007 18:13:52 +0000 (19:13 +0100)]
put the newline in the right place

13 years agoREADME hint for debian users
rjk@greenend.org.uk [Sun, 19 Aug 2007 15:55:30 +0000 (16:55 +0100)]
README hint for debian users

13 years agoDB_RECORDCOUNT has been deprecated for ages and has gone in db4.6
Richard Kettlewell [Sun, 19 Aug 2007 15:54:53 +0000 (15:54 +0000)]
DB_RECORDCOUNT has been deprecated for ages and has gone in db4.6

13 years agoskeletal test infrastructure
Richard Kettlewell [Tue, 31 Jul 2007 19:17:18 +0000 (20:17 +0100)]
skeletal test infrastructure

13 years agodon't leak cn->container. FINALLY.
rjk@greenend.org.uk [Sun, 29 Jul 2007 18:48:47 +0000 (19:48 +0100)]
don't leak cn->container.  FINALLY.

13 years agofurther horrid memory debugging stuff
rjk@greenend.org.uk [Sun, 29 Jul 2007 18:40:54 +0000 (19:40 +0100)]
further horrid memory debugging stuff

13 years agoreport cache size with MDEBUG
rjk@greenend.org.uk [Sun, 29 Jul 2007 17:10:55 +0000 (18:10 +0100)]
report cache size with MDEBUG

13 years agouse clear_children() more consistently
rjk@greenend.org.uk [Sun, 29 Jul 2007 16:56:54 +0000 (17:56 +0100)]
use clear_children() more consistently

13 years agodon't leak list of children
rjk@greenend.org.uk [Sun, 29 Jul 2007 16:55:11 +0000 (17:55 +0100)]
don't leak list of children

13 years agomore verbose menu items
rjk@greenend.org.uk [Sun, 29 Jul 2007 15:59:48 +0000 (16:59 +0100)]
more verbose menu items

13 years agoquieten compiler
Richard Kettlewell [Sun, 29 Jul 2007 14:48:34 +0000 (15:48 +0100)]
quieten compiler

13 years ago,commit
rjk@greenend.org.uk [Sun, 29 Jul 2007 14:36:28 +0000 (15:36 +0100)]
,commit

13 years agoremember to dist disorder-speaker.8
Richard Kettlewell [Thu, 26 Jul 2007 19:32:52 +0000 (20:32 +0100)]
remember to dist disorder-speaker.8

13 years agoa couple of missing pcre -> gc bindings
Richard Kettlewell [Wed, 18 Jul 2007 19:11:16 +0000 (20:11 +0100)]
a couple of missing pcre -> gc bindings

13 years agoDon't link against -lgc if not using garbage collection.
Richard Kettlewell [Tue, 17 Jul 2007 21:44:51 +0000 (22:44 +0100)]
Don't link against -lgc if not using garbage collection.

13 years ago-liconv where needed
Richard Kettlewell [Sun, 15 Jul 2007 21:38:58 +0000 (22:38 +0100)]
-liconv where needed

13 years agodisorder-rescan now obsoletes tracks that belong to no collection;
rjk@greenend.org.uk [Sun, 15 Jul 2007 16:43:59 +0000 (17:43 +0100)]
disorder-rescan now obsoletes tracks that belong to no collection;
handy when you remove some collection.  The code should be relatively
robust against such tracks but they'll annoy the random track picker.

trackdb_rescan() is thus modified to be able to return all tracks.

find_track_collection() maps a track to its collection, or 0 if it
doesn't have one.

13 years agominor tidying following last change
rjk@greenend.org.uk [Sun, 15 Jul 2007 15:09:56 +0000 (16:09 +0100)]
minor tidying following last change

13 years agoAbolish shared libdisorder; now we use a static one.
rjk@greenend.org.uk [Sun, 15 Jul 2007 15:07:16 +0000 (16:07 +0100)]
Abolish shared libdisorder; now we use a static one.

New server/exports.c ensures that all the right symbols are exported
to plugins.

13 years agodisobedience: don't crash if no password
Richard Kettlewell [Sun, 15 Jul 2007 14:05:32 +0000 (15:05 +0100)]
disobedience: don't crash if no password

13 years agoupdate README.streams to be bidirectional. (don't cross the streams\!)
rjk@greenend.org.uk [Tue, 10 Jul 2007 23:28:18 +0000 (00:28 +0100)]
update README.streams to be bidirectional.  (don't cross the streams\!)

13 years agodisobedience more robust against server restart
rjk@greenend.org.uk [Tue, 10 Jul 2007 23:14:31 +0000 (00:14 +0100)]
disobedience more robust against server restart

13 years agoupdated CHANGES
rjk@greenend.org.uk [Tue, 10 Jul 2007 23:09:01 +0000 (00:09 +0100)]
updated CHANGES

13 years agoNew queue_pad option defines how big to keep the queue (by adding
rjk@greenend.org.uk [Tue, 10 Jul 2007 23:08:49 +0000 (00:08 +0100)]
New queue_pad option defines how big to keep the queue (by adding
random tracks).  User-chosen tracks are added before the final block
of random tracks.

Also updated CHANGES a bit.

13 years agonote bug
rjk@greenend.org.uk [Tue, 10 Jul 2007 23:08:22 +0000 (00:08 +0100)]
note bug

13 years agomore speaker mode care
rjk@greenend.org.uk [Tue, 10 Jul 2007 22:30:41 +0000 (23:30 +0100)]
more speaker mode care

13 years agospeaker process is now more consistent about whether it's using ALSA
rjk@greenend.org.uk [Tue, 10 Jul 2007 22:23:39 +0000 (23:23 +0100)]
speaker process is now more consistent about whether it's using ALSA
or writing to a subprocess.

13 years agoNew configuration option sox_generation to choose between different
rjk@greenend.org.uk [Tue, 10 Jul 2007 21:53:42 +0000 (22:53 +0100)]
New configuration option sox_generation to choose between different
sox syntaxes.

13 years agoignore tarballs
Richard Kettlewell [Tue, 10 Jul 2007 20:38:54 +0000 (21:38 +0100)]
ignore tarballs

13 years agodocs note that sox is required for speaker_command
rjk@greenend.org.uk [Sun, 8 Jul 2007 14:19:56 +0000 (15:19 +0100)]
docs note that sox is required for speaker_command

13 years agomissing break in soxargs()
rjk@greenend.org.uk [Sun, 8 Jul 2007 14:15:17 +0000 (15:15 +0100)]
missing break in soxargs()

13 years agobuild speaker even if no alsa
rjk@greenend.org.uk [Sun, 8 Jul 2007 14:05:50 +0000 (15:05 +0100)]
build speaker even if no alsa

13 years agodocument speaker_command and sample_format
rjk@greenend.org.uk [Sun, 8 Jul 2007 13:44:43 +0000 (14:44 +0100)]
document speaker_command and sample_format

13 years agoMerge from Mark's branch.
rjk@greenend.org.uk [Sun, 8 Jul 2007 13:35:16 +0000 (14:35 +0100)]
Merge from Mark's branch.
    revno: 9
    committer: mdw@distorted.org.uk
    branch nick: disorder
    timestamp: Sat 2007-06-09 12:58:16 +0100
    message:
      server/speaker: Wake up on POLLERR on kidpipe too.

      Ooops.  The theory was that the speaker process would notice an EPIPE on
      its kid pipe and respawn its kid.  Unfortunately I don't understand
      poll(2) enough, and failed to listen for POLLERR, so in fact the speaker
      goes into a tailspin if its kid dies.
    ------------------------------------------------------------
    revno: 8
    committer: Mark Wooding <mdw@distorted.org.uk>
    branch nick: disorder
    timestamp: Wed 2007-05-30 11:56:52 +0100
    message:
      Support streaming to external process.

      Introduce two new configuration variables:

* speaker_command: Shell command to pipe audio to instead of using an
  ALSA device.

* sample_format: The sample format expected by this process in the
  form BITS/RATE/CHANNELS -- each integers, except that BITS may be
  suffixed by `b' or `l' for big- or little-endian respectively.  The
  default is 16/44100/2.

      If speaker_command is unset, everything is as it used to be.  If it's
      set, however, disorder-speaker will resample its input (using sox) to
      conform to the desired format if necessary, and pipe the result to the
      command's stdin.  Only one speaker_command is run at a time (respawned
      automatically if it quits), and it receives the audio data of many
      tracks.

      An example command (and the reason I did this grim hack):

    lame -h -r -s44.1 -b128 -x -mj --preset standard - - |
      ices -c /etc/disorder/ices.conf >/dev/null

      re-encodes as an MP3 stream and feeds the result to my IceCast server.