lp:~andywingo/soundscrape/soundscrape

Created by Andy Wingo and last modified
This branch may be out of date, because Launchpad has not been able to access it since .
Get this branch:
bzr branch lp:~andywingo/soundscrape/soundscrape

Related bugs

Related blueprints

Branch information

Owner:
Andy Wingo
Project:
Soundscrape
Status:
Development
Location:
http://wingolog.org/bzr/soundscrape
Last mirrored:
Next mirror:
Disabled

Updating branch...

Launchpad is processing new changes to this branch which will be available in a few minutes. Reload to see the changes.

Recent revisions

29. By Andy Wingo

 * soundscrape/Makefile.am (soundscrapemodule_DATA): Install the
 synth files.

28. By Andy Wingo

2007-06-15 Andy Wingo <email address hidden>

 * soundscrape/util.scm (lambda-with-kwargs): Changed from
 let-kwargs; in almost all cases that's what you want anyway. Does
 cleverness so that docstrings work.
 (define-with-kwargs): Use lambda-with-kwargs, not let-kwargs.
 (wrapping-zip): Be more efficient.

 * soundscrape/ss-spawn-adder.c (ss_spawn_adder_process):
 Initialize the output data to 0.

 * soundscrape/envelopes.scm (envelope:square): New exported
 function.

 * soundscrape/core.scm: Refactor to use the synth interface. As I
 recall this doesn't work completely yet.

 * soundscrape.scm (soundscrape): Don't export (soundscrape synth),
 it's not meant for end-user use.

 * soundscrape/base-synth.scm: Factor out of synth.scm to represent
 a base synth object, that can be customized into being a live
 synth or a synth that records to disk. I can't remember exactly
 why I did this but it seemed like a good idea. One good thing is
 that we don't use global variables any more.

27. By Andy Wingo

bzrignore

26. By Andy Wingo

2007-02-02 Andy Wingo <email address hidden>

 * src/soundscrape.in: Don't discard arguments.

 * soundscrape/util.scm (wrapping-ref): More efficient.
 (fbegin): New macro, HOF that combines functions as if their
 bodies were in a `begin' statement.
 (cutbegin): New macro, wrapping the results of `cut' with fbegin.
 (deq-all!): New function, dequeues all elements on an (ice-9 q).

 * soundscrape/ui/source.scm (soundscrape): It's (gnome
 gtksourceview), not (gnome source-view).

 * soundscrape/ui/controls.scm (slider-control): Use
 define-with-kwargs.

 * soundscrape/streams.scm: Add whitespace.

 * soundscrape/gw/Makefile.am
 (libgw_guile_soundscrape_ui_la_LIBADD): Gar, link to
 libsoundscrape.la. Need to figure out a better linking solution.

 * soundscrape/gst-util.scm (gst-structure-let): New exciting
 macro!
 (graph-src-pads): New exported function.

 * soundscrape/environments.scm: Use define-with-docs and
 define-macro-with-docs.

 * soundscrape/elements.scm (ss-plugin): Load up ss-plugin here,
 not in core. Other fixes to make use-modules work.

 * soundscrape/element-support.scm: Tweaks to make things work a
 little better, but will need more work.

 * soundscrape/core.scm: Eviscerate, so that we use the synth. Not
 fully ported, needs some more GStreamer work...

 * soundscrape.scm: Use and re-export (soundscrape synth).

 * TODO: Update

 * soundscrape/synth.scm: New file, implements a GStreamer 0.10
 pull-mode synth. Not fully tested or anything...

25. By Andy Wingo

2007-01-05 Andy Wingo <email address hidden>

 * soundscrape/util.scm (let-kwargs): Rename from
 let-positional-keywords. Make the implementation more readable.
 (define-with-kwargs): New macro.

 * soundscrape/ss-unary-op.h:
 * soundscrape/ss-unary-op.c:
 * soundscrape/ss-spawn-adder.c:
 * soundscrape/ss-sequencer.h:
 * soundscrape/ss-sequencer.c:
 * soundscrape/ss-plug.h:
 * soundscrape/ss-plug.c:
 * soundscrape/ss-pad.h:
 * soundscrape/ss-pad.c: Port the rest of libsoundscrape.

 * soundscrape/ss-enveloptor.c (ss_enveloptor_class_init): Fix
 property addition.

 * soundscrape/ss-element.c: Fix boilerplate.

 * soundscrape/core.scm (ss-audiosink): alsasink instead of
 osssink.
 (ss-plugin): Update to newer API.
 (ss-filesink, ss-interleave): These do not exist :(
 (ss-buffer-frames): Removed, not necessary any more.
 (ss-fixed-caps): Update to new caps API.

 * soundscrape/config.scm.in: Use define-with-docs.

 * soundscrape/Makefile.am (libsoundscrape_la_LIBADD): Link to
 GStreamer.

 * TODO: Add some things. A bit rotten.

24. By Andy Wingo

2006-12-31 Andy Wingo <email address hidden>

 * soundscrape/ss-element.h:
 * soundscrape/ss-element.c (ss_element_add_pad): New function,
 used by add_pad_from_template.

 * soundscrape/ss-multi-op.h:
 * soundscrape/ss-multi-op.c: Totally port dude.

23. By Andy Wingo

2006-12-31 Andy Wingo <email address hidden>

 * soundscrape/ss-pad.h (SS_PAD_MUST_ALLOC): Removed.
 (SS_PAD_TEMPLATE_SRC_FACTORY, SS_PAD_TEMPLATE_SINK_FACTORY): New
 args, corresponding to the C functions.
 (SSPadFlags): Remove the must_alloc flag, add the holds_audio
 flag.
 (SS_PAD_OLDVALUE, SS_PAD_HOLDS_AUDIO, SS_PAD_RATE)
 (SS_PAD_IS_RATE, SS_PAD_TEMPLATE_RATE, SS_PAD_TEMPLATE_IS_RATE):
 New defines.
 (SSPad): Now has an ->oldvalue member, for the previous value of
 the control pad. Obsoletes ->needs_interp. Also add ->ss_rate.
 (ss_pad_push, ss_pad_update_control): Removed.
 (ss_pad_do_mul, ss_pad_do_add): Now in ss-element.c.

 * soundscrape/ss-pad.c (ss_pad_pull): If, when pulling, we get a
 control buffer on a pad marked as AUDIO, or vice versa, fabricate
 a suitable buffer so the element won't be confused. This behavior
 is disabled if the pad's rate is UNSET.
 (ss_pad_update_control): No more shall ye darken these halls.
 (ss_pad_template_src_new, ss_pad_template_sink_new): Take an extra
 arg, the rate to mark the pad with.

 * soundscrape/ss-ladspa.h:
 * soundscrape/ss-ladspa.c: Port. Also untested. A bit simpler, now
 that we don't have to alloc our own buffers.

 * soundscrape/ss-enveloptor.h:
 * soundscrape/ss-enveloptor.c: Port. Untested.

 * soundscrape/ss-element.h (ss_element_class_add_pad_template):
 New define, calls gst_element_class_add_pad_template with the
 casts done correctly.

 * soundscrape/ss-element.c (ss_element_class_init): Set the
 CAN_PROCESS_IN_PLACE flag by default.
 (ss_element_add_pad_from_template): Return an SSPad instead of a
 GstPad.
 (ss_element_prepare_control_outputs)
 (ss_element_prepare_audio_outputs, ss_element_prepare_outputs):
 Rewrote the logic for deciding whether src pads have control or
 audio data, and ensure that all output pads have a penned buffer.
 Src pads will be allocated audio data if the pad's rate was marked
 as audio, or if the rate was unset and the element's rate was
 marked as audio, or if both are unset and there were audio input
 buffers. Otherwise the pad gets a control buffer in its pen.
 (SS_ELEMENT_DO_OP): Move mul and add here from sspad, we know
 better what to do.
 (ss_element_process): Do mul and add after running ->process().
 (ss_element_getrange): Bundle more of the main functionality here.

 * soundscrape/ss-binary-op.h:
 * soundscrape/ss-binary-op.c: Rename this->srcpad to this->src.
 Adapt to new SSPadTemplate API.
 (ss_binary_op_process): Use the newer sspad/sselement API to
 figure out which pads have control data and which have audio data.

 * soundscrape/Makefile.am (libsoundscrape_la_SOURCES): Add
 enumtypes.

 * soundscrape/ss-enumtypes.h:
 * soundscrape/ss-enumtypes.c: New files, hold the WARP and RATE
 definitions in one place.

22. By Andy Wingo

2006-12-22 Andy Wingo <email address hidden>

 * soundscrape/ss-buffer-pool.c: Port, sortof.

21. By Andy Wingo

2006-12-22 Andy Wingo <email address hidden>

 * soundscrape/ss-element.h:
 * soundscrape/ss-element.c: Rewrite completely, based on
 GstSignalProcessor.

 * soundscrape/ss-pad.h:
 * soundscrape/ss-ladspa.h:
 * soundscrape/ss-control.h:
 * soundscrape/ss-buffer-pool.h: Beginnings of a port...

 * soundscrape/ss-binary-op.c (do_expt_ca): Thanks gcc!
 (ss_binary_op_process): Use the new sselement API instead of loop
 functions.

 * soundscrape/gw/ui-spec.scm (soundscrape): Modernize the module
 use list.

 * soundscrape/gw/ss-slider-control.c (model_state_change): Don't
 listen to state changes any more.
 (ss_slider_control_set_property): Note a few possible memleaks.

 * soundscrape/gw/Makefile.am (ui.scm soundscrape-gw-ui.c): Use
 gnome-0 to select the right guile-gnome library version.

 * ladspa/clz.h: __powerpc__ is what gcc defines for powerpc.

 * ladspa/Makefile.am (AM_CFLAGS): -fmove-all-movables doesn't
 exist any more?
 (%.c): Make foo.c files, not foo.so.c files. Apparently necessary?

20. By Andy Wingo

bzrignore

Branch metadata

Branch format:
Branch format 5
Repository format:
Bazaar-NG Knit Repository Format 1
This branch contains Public information 
Everyone can see this information.

Subscribers

No subscribers.