<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>219561</bug_id>
          
          <creation_ts>2020-12-04 17:12:51 -0800</creation_ts>
          <short_desc>Reduce memory copying in MultiChannelResampler::provideInputForChannel()</short_desc>
          <delta_ts>2020-12-07 08:30:19 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>219560</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ggaren</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1712218</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-12-04 17:12:51 -0800</bug_when>
    <thetext>Reduce memory copying in MultiChannelResampler::provideInputForChannel() by using the passed-in buffer as memory for the first channel in the AudioBus.
This way we avoid having to memcpy() the data for the first channel.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712219</commentid>
    <comment_count>1</comment_count>
      <attachid>415478</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-12-04 17:15:51 -0800</bug_when>
    <thetext>Created attachment 415478
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712462</commentid>
    <comment_count>2</comment_count>
      <attachid>415478</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-12-07 08:29:48 -0800</bug_when>
    <thetext>Comment on attachment 415478
Patch

Clearing flags on attachment: 415478

Committed r270505: &lt;https://trac.webkit.org/changeset/270505&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712463</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-12-07 08:29:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712464</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-07 08:30:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/72048111&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415478</attachid>
            <date>2020-12-04 17:15:51 -0800</date>
            <delta_ts>2020-12-07 08:29:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219561-20201204171550.patch</filename>
            <type>text/plain</type>
            <size>4672</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNDYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjA2NzNhN2E1NDQ2MTY1
ZmYyZWM2ZjMwM2E1NmMxM2Y5ZDBlMjhhYi4uYmUyMDUzZDJhMDc0ODhlMDdmMGE2M2I0NTEwZDRi
YzQzNmEzZDEzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTEyLTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUmVkdWNlIG1lbW9yeSBjb3B5
aW5nIGluIE11bHRpQ2hhbm5lbFJlc2FtcGxlcjo6cHJvdmlkZUlucHV0Rm9yQ2hhbm5lbCgpCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTk1NjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWR1Y2UgbWVt
b3J5IGNvcHlpbmcgaW4gTXVsdGlDaGFubmVsUmVzYW1wbGVyOjpwcm92aWRlSW5wdXRGb3JDaGFu
bmVsKCkgYnkgdXNpbmcKKyAgICAgICAgdGhlIHBhc3NlZC1pbiBidWZmZXIgYXMgbWVtb3J5IGZv
ciB0aGUgZmlyc3QgY2hhbm5lbCBpbiB0aGUgQXVkaW9CdXMuCisgICAgICAgIFRoaXMgd2F5IHdl
IGF2b2lkIGhhdmluZyB0byBtZW1jcHkoKSB0aGUgZGF0YSBmb3IgdGhlIGZpcnN0IGNoYW5uZWwu
CisKKyAgICAgICAgQ2hyb21pdW0ncyBNdWx0aUNoYW5uZWxSZXNhbXBsZXIgaGFzIHRoZSBzYW1l
IG9wdGltaXphdGlvbi4KKworICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL011bHRpQ2hhbm5lbFJl
c2FtcGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNdWx0aUNoYW5uZWxSZXNhbXBsZXI6Ok11
bHRpQ2hhbm5lbFJlc2FtcGxlcik6CisgICAgICAgIChXZWJDb3JlOjpNdWx0aUNoYW5uZWxSZXNh
bXBsZXI6OnByb3ZpZGVJbnB1dEZvckNoYW5uZWwpOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlv
L011bHRpQ2hhbm5lbFJlc2FtcGxlci5oOgorCiAyMDIwLTEyLTA0ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxpZnkgYXVkaW8gcmVzYW1wbGluZyBjb2Rl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9NdWx0aUNoYW5uZWxS
ZXNhbXBsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vTXVsdGlDaGFubmVs
UmVzYW1wbGVyLmNwcAppbmRleCA3YTQ5ZDhjOGJmOWVhOGMxZTFiMDhhNTVhOGQ4ZWU2OGU5NmQy
Y2U3Li5iOTY2ZmEwNmNkMzBlYjM0ZGY3MWZjZmJkZTdjMTY1ODIzMTExMjFmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9NdWx0aUNoYW5uZWxSZXNhbXBsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL011bHRpQ2hhbm5lbFJlc2FtcGxl
ci5jcHAKQEAgLTQwLDggKzQwLDE4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIE11bHRpQ2hhbm5l
bFJlc2FtcGxlcjo6TXVsdGlDaGFubmVsUmVzYW1wbGVyKGRvdWJsZSBzY2FsZUZhY3RvciwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgdW5zaWduZWQgcmVxdWVzdEZyYW1lcywgRnVuY3Rpb248
dm9pZChBdWRpb0J1cyosIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpPiYmIHByb3ZpZGVJbnB1dCkK
ICAgICA6IG1fbnVtYmVyT2ZDaGFubmVscyhudW1iZXJPZkNoYW5uZWxzKQogICAgICwgbV9wcm92
aWRlSW5wdXQoV1RGTW92ZShwcm92aWRlSW5wdXQpKQotICAgICwgbV9tdWx0aUNoYW5uZWxCdXMo
QXVkaW9CdXM6OmNyZWF0ZShudW1iZXJPZkNoYW5uZWxzLCByZXF1ZXN0RnJhbWVzKSkKKyAgICAs
IG1fbXVsdGlDaGFubmVsQnVzKEF1ZGlvQnVzOjpjcmVhdGUobnVtYmVyT2ZDaGFubmVscywgcmVx
dWVzdEZyYW1lcywgZmFsc2UpKQogeworICAgIC8vIEFzIGFuIG9wdGltaXphdGlvbiwgd2Ugd2ls
bCB1c2UgdGhlIGJ1ZmZlciBwYXNzZWQgdG8gcHJvdmlkZUlucHV0Rm9yQ2hhbm5lbCgpIGFzIGNo
YW5uZWwgbWVtb3J5IGZvciB0aGUgZmlyc3QgY2hhbm5lbCBzbyB3ZQorICAgIC8vIG9ubHkgbmVl
ZCB0byBhbGxvY2F0ZSBtZW1vcnkgaWYgdGhlcmUgaXMgbW9yZSB0aGFuIG9uZSBjaGFubmVsLgor
ICAgIGlmIChudW1iZXJPZkNoYW5uZWxzID4gMSkgeworICAgICAgICBtX2NoYW5uZWxzTWVtb3J5
LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobnVtYmVyT2ZDaGFubmVscyAtIDEpOworICAgICAgICBm
b3IgKHVuc2lnbmVkIGNoYW5uZWxJbmRleCA9IDE7IGNoYW5uZWxJbmRleCA8IG51bWJlck9mQ2hh
bm5lbHM7ICsrY2hhbm5lbEluZGV4KSB7CisgICAgICAgICAgICBtX2NoYW5uZWxzTWVtb3J5LnVu
Y2hlY2tlZEFwcGVuZChtYWtlVW5pcXVlPEF1ZGlvRmxvYXRBcnJheT4ocmVxdWVzdEZyYW1lcykp
OworICAgICAgICAgICAgbV9tdWx0aUNoYW5uZWxCdXMtPnNldENoYW5uZWxNZW1vcnkoY2hhbm5l
bEluZGV4LCBtX2NoYW5uZWxzTWVtb3J5Lmxhc3QoKS0+ZGF0YSgpLCByZXF1ZXN0RnJhbWVzKTsK
KyAgICAgICAgfQorICAgIH0KKwogICAgIC8vIENyZWF0ZSBlYWNoIGNoYW5uZWwncyByZXNhbXBs
ZXIuCiAgICAgZm9yICh1bnNpZ25lZCBjaGFubmVsSW5kZXggPSAwOyBjaGFubmVsSW5kZXggPCBu
dW1iZXJPZkNoYW5uZWxzOyArK2NoYW5uZWxJbmRleCkKICAgICAgICAgbV9rZXJuZWxzLmFwcGVu
ZChtYWtlVW5pcXVlPFNpbmNSZXNhbXBsZXI+KHNjYWxlRmFjdG9yLCByZXF1ZXN0RnJhbWVzLCBz
dGQ6OmJpbmQoJk11bHRpQ2hhbm5lbFJlc2FtcGxlcjo6cHJvdmlkZUlucHV0Rm9yQ2hhbm5lbCwg
dGhpcywgc3RkOjpwbGFjZWhvbGRlcnM6Ol8xLCBzdGQ6OnBsYWNlaG9sZGVyczo6XzIsIGNoYW5u
ZWxJbmRleCkpKTsKQEAgLTc4LDEwICs4OCwxNSBAQCB2b2lkIE11bHRpQ2hhbm5lbFJlc2FtcGxl
cjo6cHJvY2VzcyhBdWRpb0J1cyogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlcwog
dm9pZCBNdWx0aUNoYW5uZWxSZXNhbXBsZXI6OnByb3ZpZGVJbnB1dEZvckNoYW5uZWwoZmxvYXQq
IGJ1ZmZlciwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcywgdW5zaWduZWQgY2hhbm5lbEluZGV4KQog
ewogICAgIEFTU0VSVChjaGFubmVsSW5kZXggPCBtX211bHRpQ2hhbm5lbEJ1cy0+bnVtYmVyT2ZD
aGFubmVscygpKTsKLSAgICBBU1NFUlQoZnJhbWVzVG9Qcm9jZXNzIDw9IG1fbXVsdGlDaGFubmVs
QnVzLT5sZW5ndGgoKSk7CisgICAgQVNTRVJUKGZyYW1lc1RvUHJvY2VzcyA9PSBtX211bHRpQ2hh
bm5lbEJ1cy0+bGVuZ3RoKCkpOwogCi0gICAgaWYgKCFjaGFubmVsSW5kZXgpCisgICAgaWYgKCFj
aGFubmVsSW5kZXgpIHsKKyAgICAgICAgLy8gQXMgYW4gb3B0aW1pemF0aW9uLCB3ZSB1c2UgdGhl
IHByb3ZpZGVkIGJ1ZmZlciBhcyBtZW1vcnkgZm9yIHRoZSBmaXJzdCBjaGFubmVsIGluIHRoZSBB
dWRpb0J1cy4gVGhpcyBhdm9pZHMKKyAgICAgICAgLy8gaGF2aW5nIHRvIG1lbWNweSgpIGZvciB0
aGUgZmlyc3QgY2hhbm5lbC4KKyAgICAgICAgbV9tdWx0aUNoYW5uZWxCdXMtPnNldENoYW5uZWxN
ZW1vcnkoMCwgYnVmZmVyLCBmcmFtZXNUb1Byb2Nlc3MpOwogICAgICAgICBtX3Byb3ZpZGVJbnB1
dChtX211bHRpQ2hhbm5lbEJ1cy5nZXQoKSwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KIAogICAgIC8vIENvcHkgdGhlIGNoYW5uZWwgZGF0YSBmcm9tIHdoYXQgd2Ug
cmVjZWl2ZWQgZnJvbSBtX211bHRpQ2hhbm5lbFByb3ZpZGVyLgogICAgIG1lbWNweShidWZmZXIs
IG1fbXVsdGlDaGFubmVsQnVzLT5jaGFubmVsKGNoYW5uZWxJbmRleCktPmRhdGEoKSwgc2l6ZW9m
KGZsb2F0KSAqIGZyYW1lc1RvUHJvY2Vzcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9NdWx0aUNoYW5uZWxSZXNhbXBsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2F1ZGlvL011bHRpQ2hhbm5lbFJlc2FtcGxlci5oCmluZGV4IDcyYmRhYWU1YmE1ZGI2
MTU1OGZlZWIxN2RjYWI0YmQ4YzJjMWEwYWUuLjFjMWFlZmRmZTNkNjg4MTgwMDJmZjAyZjNiNTUx
NDVmNWEyOTY2OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL011
bHRpQ2hhbm5lbFJlc2FtcGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L011bHRpQ2hhbm5lbFJlc2FtcGxlci5oCkBAIC0yOSw2ICsyOSw3IEBACiAjaWZuZGVmIE11bHRp
Q2hhbm5lbFJlc2FtcGxlcl9oCiAjZGVmaW5lIE11bHRpQ2hhbm5lbFJlc2FtcGxlcl9oCiAKKyNp
bmNsdWRlICJBdWRpb0FycmF5LmgiCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0Zi9W
ZWN0b3IuaD4KIApAQCAtNjAsNiArNjEsNyBAQCBwcml2YXRlOgogICAgIHNpemVfdCBtX291dHB1
dEZyYW1lc1JlYWR5IHsgMCB9OwogICAgIEZ1bmN0aW9uPHZvaWQoQXVkaW9CdXMqLCBzaXplX3Qg
ZnJhbWVzVG9Qcm9jZXNzKT4gbV9wcm92aWRlSW5wdXQ7CiAgICAgUmVmUHRyPEF1ZGlvQnVzPiBt
X211bHRpQ2hhbm5lbEJ1czsKKyAgICBWZWN0b3I8c3RkOjp1bmlxdWVfcHRyPEF1ZGlvRmxvYXRB
cnJheT4+IG1fY2hhbm5lbHNNZW1vcnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>