You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The internal plugin Limiter seems also to normalize the output.
If i put in the Limiter in a board and examine the output, it is always scaled to [-1.0; +1.0] after the Limiter.
I would not expect this behaviour, is it intended?
Example code to reproduce:
pedalboard=Pedalboard(
[
Limiter(),
],
)
# Open input file:withReadableAudioFile(filename="input.wav") asf:
# Open an audio file to write to:withWriteableAudioFile(filename="output.wav", samplerate=f.samplerate, num_channels=f.num_channels, bit_depth=16) asoutfile:
# Read all the frames from the file:chunk=f.read(f.frames).flatten()
print(f"type chunk: {type(chunk)}")
print(f"size chunk: {chunk.shape}")
print(f"max chunk: {chunk.max()}")
print(f"min chunk: {chunk.min()}")
# Run the audio through our pedalboard:effected=pedalboard(chunk, f.samplerate, reset=False)
print(f"type effected: {type(effected)}")
print(f"size effected: {effected.shape}")
print(f"max effected: {effected.max()}")
print(f"min effected: {effected.min()}")
# Write the output to our output file:outfile.write(effected)
For example i get this output:
type chunk: <class 'numpy.ndarray'>
size chunk: (109656,)
max chunk: 0.6926786303520203
min chunk: -0.5552842617034912
type effected: <class 'numpy.ndarray'>
size effected: (109656,)
max effected: 1.0
min effected: -1.0
The text was updated successfully, but these errors were encountered:
First, pedalboard is really awesome open source lib, Thanks!
I too discovered that the Limiter() is not just limiting after finding out that the output files look like maxed out bricks.
I hoped to pass the audio through Limiter() to ensure there is no hard clipping.
The documentation is a bit lacking, just mentioning that there are two compressors inside and one can set threshold_db. Without knowing compressor ratio etc its hard to tell what the threshold_db exactly does.
Could you add an optional argument to bypass the internal compression part to have just pureLimiter?
The internal plugin
Limiter
seems also to normalize the output.If i put in the Limiter in a board and examine the output, it is always scaled to
[-1.0; +1.0]
after the Limiter.I would not expect this behaviour, is it intended?
Example code to reproduce:
For example i get this output:
The text was updated successfully, but these errors were encountered: