Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using EQ Kill / Right Click Reset Introduces Pops + Clicks #7937

Closed
mixxxbot opened this issue Aug 22, 2022 · 5 comments
Closed

Using EQ Kill / Right Click Reset Introduces Pops + Clicks #7937

mixxxbot opened this issue Aug 22, 2022 · 5 comments
Labels
Milestone

Comments

@mixxxbot
Copy link
Collaborator

Reported by: daniel-hams
Date: 2015-04-01T12:17:05Z
Status: Fix Released
Importance: Medium
Launchpad Issue: lp1439160
Attachments: [Kill release noise](https://bugs.launchpad.net/bugs/1439160/+attachment/4363034/+files/Kill release noise)


OS: Arch Linux
CPU: Intel Core2 Quad Q6700, 2.66ghz,
Kernel: 3.19.2-1-ARCH, performance governor selected
Video HW: Nvidia with proprietary drivers
Sound HW: NVIDIA Corporation MCP55 High Definition Audio
Jack: jackdmp 1.9.10
Sound Setup: 48k, 1024 frames, 2 periods
Mixx Version 1.12.0-alpha x64 from 01/04/2015, build master r5315

Problem Description:

Using the EQ and the EQ kill switches introduces half-square waves under certain conditions that are evident as cross spectrum transients.

The issue is most evident with a source sound file containing only low frequency content.

Reproduction scenario:

  • Generate 60 seconds of 60 hz sine using Audacity
  • Load into Deck and adjust gain downwards
  • Make a loop of the entire file
  • Press play
  • Adjust gain back up to get less than clipping
  • Set Low Pass Kill on deck
  • Play with mid pass and high pass kill in decks, turning them on and off

Additional scenario last step:

  • Leave mid/high EQ unkilled, and move EQ gain to far left
  • Right click to reset to center

Speculation:

Mixxx seems to have some signal cascade through the EQ stages - when (I believe) each of the EQ bands should be individually attenuated/amplified and re-mixed together. Using the Kill switches on a particular band should only ask for -INF attenuation rather than performing some kind of signal on/off or bypass to another cascaded EQ section.

@mixxxbot mixxxbot added the bug label Aug 22, 2022
@mixxxbot
Copy link
Collaborator Author

Commented by: daschuer
Date: 2015-04-01T14:10:19Z
Attachments: [Kill release noise](https://bugs.launchpad.net/mixxx/+bug/1439160/+attachment/4363034/+files/Kill release noise)

@mixxxbot
Copy link
Collaborator Author

Commented by: daschuer
Date: 2015-04-01T15:06:11Z


The bug happens due to the special Lipshitz/Vanderkooy mix oft the two
Bessel EQs.
The filtered signal is added or subtracted from a delayed dry signal.

https://github.com/mixxxdj/mixxx/blob/master/src/effects/native/bessel8lvmixeqeffect.cpp

For performance reasons we stop processing the not required filters. This
should happens at unity and produces a bit-perfect sound. It turns out that
it also happens in you kill use case. After re-anabling a filter path, we
have to deal with silence until we are at the desired delay and the filter
is settled.
In the case you disable midi Kill, we have the transaction from the high
low bass stage to the low low pass stage.
Since the low low pass stage is not settled, some low samples are slipping
though.

The Linkwith-Riley type does not have the issue and works like you expect.

I will have a look how we can fix this issue.

@mixxxbot
Copy link
Collaborator Author

Commented by: daniel-hams
Date: 2015-04-01T15:52:57Z


Thanks Daniel,

Your explanation has made it clear why I'm seeing this.

I'll keep the speculation out of any future submissions :-)

@mixxxbot
Copy link
Collaborator Author

Commented by: daschuer
Date: 2015-04-03T00:05:06Z


A fix can be reviewed here:
#544

@mixxxbot
Copy link
Collaborator Author

Issue closed with status Fix Released.

@mixxxbot mixxxbot transferred this issue from another repository Aug 24, 2022
@mixxxbot mixxxbot added this to the 2.0.0 milestone Aug 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant