• Raymond Toy's avatar
    Part 1: Split out ABSN code in preparation for SIMD · a806d8e4
    Raymond Toy authored
    Move the core routine that handles the complicated case where the play
    back rate is not 1 or interpolation/extrapolation is needed.
    
    Then break out that routine into two new routines for computing the
    indices and for computing the output so that we can optimize each
    independently.
    
    A slight function difference occurred because we changed the
    interpolation formula from using (1-f)*x0+f*x1 to x0+f*(x1-x0).  This
    is mathematically equivalent and but not in floating point.  This
    shows up in the one test needing the threshold to be updated slightly.
    
    Bug: 1104371
    Change-Id: Id299fb9471d01edad8d9c9da73084af9a53533f5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2342136Reviewed-by: default avatarHongchan Choi <hongchan@chromium.org>
    Reviewed-by: default avatarRaymond Toy <rtoy@chromium.org>
    Commit-Queue: Raymond Toy <rtoy@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#797065}
    a806d8e4
audiobuffersource-loop-points.html 6.02 KB