Ah, guilty as charged.
Those LPC plugins don't work very well due to discuntinuities in the filter kernel across DSP block boundaries. It has been on my to-do list for a very long time to recode those objects using a different method. One way to guarantee that things will screw up is to change the number of poles rapidly. The problem is that some objects can generate unstable errors that are orders of magnitude greater than normal audio signals. Then there is a signal that maybe goes between +/- 100000 rather than +/- 1, and the volume control makes little difference. Please don't ask me for specific instances - I can't remember any at the moment, but it's happened to me before.
I personally do not use PD with headphones unless it is a patch I know well, with reliable outputs. Conversely, a lot of "noise" music created using PD is played permanently clipped to oblivion.
One thing you can do is to use a limiter before the dac~. If the problem persists then avoid this plugin.
The metastudio has lots of these. A limited volume control for stereo is enclosed (check the "limit" box, or send a [limit 1( message into the right inlet).
Best wishes, Ed Kelly
On 2011-08-29 11:52, Hans-Christoph Steiner wrote:
On Aug 23, 2011, at 3:43 PM, Martin wrote:
On 23/08/11 03:29 PM, Stephen Lavelle wrote:
I've managed to hurt my ears twice over the past two days when using PD w/ headphones. Even at lowest system volumes, it seems that Terrible Things can happen. Are there any precautions that I can take to make it feel less like I'm taking my life into my hands when I have to use headphones?
Try making a [noise~] connected directly to a [dac~] and set the headphone volume so you can live with that. Nothing will ever be louder than that.
Hmm, I don't think that's actually true in all cases. On a MacBook Pro running Mac OS X, I've had the volume set to one above mute, but had massive feedback from LPC patches that were very very loud. [noise~] would be very comfortable at that volume setting. I think some platforms do the output mixing in the digital domain, so my min volume would be [*~ 0.01], so that this would still make a very loud sound:
[noise~] | [*~ 999999] | [*~ 0.01] (i.e. the Apple output mixing) |
In this particular case, the sound output actually gets shutdown entirely, so you have to reboot to get sound output again.
That make no sense. How can you have two sounds at the same level going into a mixer that come out at different levels? Or do you mean that a squealing sound is perceived to be louder than white noise? Maybe you could demonstrate with a patch?
Martin
"If it seems like magic your assumptions are wrong." Martin Peach
I am taking a biologist's approach here: I've observed this happening multiple times in the wild, now I have to figure out why. Its very reproducible, I've taken the
field mice into the lab and seen them reproduce ;) Take Ed Kelly's fun LPC cross-synth example, in ekext/examples/lpc-cross-synthesis.pd. Put some loud samples
into it and go crazy with the parameters and... MELTDOWN! I've never heard my computer make a louder sound... I knew that this patch has some feedback
aspect to it, so I was doing my standard practice, having the volume very low.
.hc
Mistrust authority - promote decentralization. - the hacker ethic
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
On Mon, 29 Aug 2011, Ed Kelly wrote:
The problem is that some objects can generate unstable errors that are orders of magnitude greater than normal audio signals. Then there is a signal that maybe goes between +/- 100000 rather than +/- 1, and the volume control makes little difference.
It's much, much worse than that. If you have anything that multiplies the amplitude of the signal by 1.0001 at every sample, the amplitude gets 82 times louder every 44100 samples, and it will go beyond 8e+37 and rounded to infinity, where no multiplication by a fraction can possibly fix it.
that's quite a few billion billion billion.
It's easy to get there. Put the wrong number in [*~] in a delay-loop, or put the wrong number in [rpole~], ...
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC
On 2011-08-29 20:04, Mathieu Bouchard wrote:
On Mon, 29 Aug 2011, Ed Kelly wrote:
The problem is that some objects can generate unstable errors that are orders of magnitude greater than normal audio signals. Then there is a signal that maybe goes between +/- 100000 rather than +/- 1, and the volume control makes little difference.
It's much, much worse than that. If you have anything that multiplies the amplitude of the signal by 1.0001 at every sample, the amplitude gets 82 times louder every 44100 samples, and it will go beyond 8e+37 and rounded to infinity, where no multiplication by a fraction can possibly fix it.
that's quite a few billion billion billion.
It's easy to get there. Put the wrong number in [*~] in a delay-loop, or put the wrong number in [rpole~], ...
Yeah, you can actually blow the whole planet to pieces by accidentally multiplying your output by a trillion.
Martin
On Mon, 29 Aug 2011, Martin Peach wrote:
Yeah, you can actually blow the whole planet to pieces by accidentally multiplying your output by a trillion.
Why not... after all, the first blackholes appeared after a division by zero.
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC
----- Original Message -----
From: Mathieu Bouchard matju@artengine.ca To: Ed Kelly morph_2016@yahoo.co.uk Cc: PD List pd-list@iem.at Sent: Monday, August 29, 2011 8:04 PM Subject: Re: [PD] making puredata headphone-safe
On Mon, 29 Aug 2011, Ed Kelly wrote:
The problem is that some objects can generate unstable errors that are
orders of magnitude greater than normal audio signals. Then there is a signal that maybe goes between +/- 100000 rather than +/- 1, and the volume control makes little difference.
It's much, much worse than that. If you have anything that multiplies the amplitude of the signal by 1.0001 at every sample, the amplitude gets 82 times louder every 44100 samples, and it will go beyond 8e+37 and rounded to infinity, where no multiplication by a fraction can possibly fix it.
So why not always have [clip~ -1 1] before and/or after your pd master volume control? Could the distortion resulting from clipping out of range values possibly result in a signal anywhere near as loud as what you're describing? Or would adjusting the
master volume to an acceptable level for the loudest possible clipped sound result in too
small a dynamic range?
-Jonathan
that's quite a few billion billion billion.
It's easy to get there. Put the wrong number in [*~] in a delay-loop, or put the wrong number in [rpole~], ...
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
On Mon, 29 Aug 2011, Jonathan Wilkes wrote:
So why not always have [clip~ -1 1] before and/or after your pd master volume control?
Dunno, I only ever use OSS and ALSA, which already clip. I have no use for the extra clip.
Could the distortion resulting from clipping out of range values possibly result in a signal anywhere near as loud as what you're describing?
After a [clip~ -1 1] it can't get worse than what we discussed before.
I'm talking about how terrible it can get before getting into the clipper.
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC
----- Original Message -----
From: Mathieu Bouchard matju@artengine.ca To: Jonathan Wilkes jancsika@yahoo.com Cc: Ed Kelly morph_2016@yahoo.co.uk; PD List pd-list@iem.at Sent: Monday, August 29, 2011 9:41 PM Subject: Re: [PD] making puredata headphone-safe
On Mon, 29 Aug 2011, Jonathan Wilkes wrote:
So why not always have [clip~ -1 1] before and/or after your pd master
volume control?
Dunno, I only ever use OSS and ALSA, which already clip. I have no use for the extra clip.
It would guarantee clipping for anyone who uses your patch.
Could the distortion resulting from clipping out of range values possibly
result in a signal anywhere near as loud as what you're describing?
After a [clip~ -1 1] it can't get worse than what we discussed before.
I'm talking about how terrible it can get before getting into the clipper.
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC
On Mon, 29 Aug 2011, Jonathan Wilkes wrote:
From: Mathieu Bouchard matju@artengine.ca On Mon, 29 Aug 2011, Jonathan Wilkes wrote:
So why not always have [clip~ -1 1] before and/or after your pd master
volume control? Dunno, I only ever use OSS and ALSA, which already clip. I have no use for the extra clip.
It would guarantee clipping for anyone who uses your patch.
I haven't published any audio patches that might need clipping, have I ?
The only ones that I have published are GF helpfiles for [#to~] and [#from~], and examples qbert.pd and spectrogram.pd, and what else...?
Ok, I just found photo_pianoroll.pd can clip a bit. I put a clip~ and didn't notice the difference.
Any others ?
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC