It works well, I've been using it for a while now, but it is clunky and requires some user input (which isnt a horrible thing).

Maybe you can try implementing multiple peak functionality...