WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
45077
Add EqualPowerPanner files
https://bugs.webkit.org/show_bug.cgi?id=45077
Summary
Add EqualPowerPanner files
Chris Rogers
Reported
2010-09-01 17:48:57 PDT
Add EqualPowerPanner files
Attachments
Patch
(7.28 KB, patch)
2010-09-01 17:50 PDT
,
Chris Rogers
no flags
Details
Formatted Diff
Diff
Patch
(7.71 KB, patch)
2010-10-01 14:22 PDT
,
Chris Rogers
no flags
Details
Formatted Diff
Diff
Patch
(7.29 KB, patch)
2010-10-04 15:32 PDT
,
Chris Rogers
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Chris Rogers
Comment 1
2010-09-01 17:50:14 PDT
Created
attachment 66307
[details]
Patch
Kenneth Russell
Comment 2
2010-09-07 17:44:03 PDT
Comment on
attachment 66307
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=66307&action=prettypatch
> WebCore/platform/audio/EqualPowerPanner.cpp:85 > + const double kDezipperK = 0.0005;
This or similar constants are replicated in a few places in the code, for example in the AudioBus (where it's ten times as large). Can this be refactored? Also, what about a FIXME indicating that it's sample rate dependent?
> WebCore/platform/audio/EqualPowerPanner.cpp:98 > + m_gainR = gainR;
Why does this class not need to expose these gains externally, like the AudioBus does via the lastMixGain outgoing argument in processWithGainFromMonoStereo and processWithGainFrom?
Chris Rogers
Comment 3
2010-10-01 14:22:04 PDT
Created
attachment 69518
[details]
Patch
Chris Rogers
Comment 4
2010-10-01 14:27:08 PDT
(In reply to
comment #2
)
> (From update of
attachment 66307
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=66307&action=prettypatch
> > > WebCore/platform/audio/EqualPowerPanner.cpp:85 > > + const double kDezipperK = 0.0005; > This or similar constants are replicated in a few places in the code, for example in the AudioBus (where it's ten times as large). Can this be refactored? Also, what about a FIXME indicating that it's sample rate dependent?
I've uploaded a patch for AudioUtilities which contains a discreteTimeConstantForSampleRate() function and am now using this. The actual time-constant value (non sample-rate dependent) is chosen empirically for panning and may be different than volume smoothing.
> > > WebCore/platform/audio/EqualPowerPanner.cpp:98 > > + m_gainR = gainR; > Why does this class not need to expose these gains externally, like the AudioBus does via the lastMixGain outgoing argument in processWithGainFromMonoStereo and processWithGainFrom?
The smoothing state is best kept inside this class. The reason they have to be kept externally in the AudioBus case is because many different sources may be summing into the same AudioBus, thus each source must keep track of its own state. In the case of EqualPowerPanner, there is only a single source, so it makes logical sense to keep the state inside this class.
Kenneth Russell
Comment 5
2010-10-04 15:13:50 PDT
Comment on
attachment 69518
[details]
Patch Looks good to me, but please update the license text before committing.
Chris Rogers
Comment 6
2010-10-04 15:32:03 PDT
Created
attachment 69700
[details]
Patch
Chris Rogers
Comment 7
2010-10-04 15:32:38 PDT
Was previously R+, just fixed the license.
Kenneth Russell
Comment 8
2010-10-04 15:47:01 PDT
Comment on
attachment 69700
[details]
Patch Looks good to me.
WebKit Commit Bot
Comment 9
2010-10-05 00:45:22 PDT
Comment on
attachment 69700
[details]
Patch Clearing flags on attachment: 69700 Committed
r69089
: <
http://trac.webkit.org/changeset/69089
>
WebKit Commit Bot
Comment 10
2010-10-05 00:45:28 PDT
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug