On Wed, 2009-12-09 at 00:40 +0100, Derek Holzer wrote: > I'm trying to put together a simple oscilloscope abstraction that > imitates the "trigger" function of a real one, so that the waveform can > be seen from its starting point. In other words, a [tabwrite~] would > graph on the upward swing of a zero crossing. To do this, I'd like to > know if there is an audio object which gives a bang at a zero crossing, > or perhaps even only at a crossing from the negative to the positive > domain of the signal. I've thought of something with [expr~ $v1 < 0], > but what comes out is still in the audio domain and isn't the bang which > [tabwrite~] needs. > > Other suggestions welcome.
It would be nice to be able to do something like that. Two problems need to be overcome first: * I don't know of any object class, that creates timed[1] messages from an audio signal. All object classes I can think of convert signal->message either triggered by a message like [vsnapshot~] or triggered by an internal [metro] (like [env~]/[avg~]). We would definitely need an object class, that generates timed messages according to the signal input without requiring any message. I haven't seen such a thing yet. * [tabwrite~] only starts writing on block boundaries. The desired behaviour in this case _could_ actually be emulated by delaying the signal in a manner, so that the zero-crossing is shifted exactly on block boundaries. However, it would be more straight-forward, if there'd be something like a [vtabwrite~]. Probably I am just uncreative and there actually _is_ a way. If so, I definitely want to learn it! Roman [1] by 'timed' I am referring to the mechanism used by [vline~] and co to get accurate timing. _______________________________________________ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list