WPT
wpt / webaudio / the-audio-api / the-pannernode-interface / panner-automation-basic.html
Spec: Web Audio API ↗
Runs: Chrome 155.0.8043.0 (wpt@b89af32bc, 2026-09-05) | Firefox 157.0a1 (wpt@b89af32bc, 2026-09-05) | Safari 251 preview (wpt@9b965429d, 2026-09-05) | Ladybird 1.0-d25dc (wpt@b89af32bc, 2026-09-05) | Servo Servo 0.6 (wpt@2c385f65e, 2026-09-04) | Blitz a50cb8971 (wpt@a95401e4e, 2026-09-03)
View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi
| Chrome | Firefox | Safari | Ladybird | Servo | Blitz | |
|---|---|---|---|---|---|---|
| Total | 147/147 | 19/147 | 147/147 | 147/147 | 19/147 | NOT RUN |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| # AUDIT TASK RUNNER STARTED. | PASS | PASS | PASS | PASS | PASS | — |
| Executing "Stereo panner.positionX" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Mono panner.positionX" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Stereo panner.positionY" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Mono panner.positionY" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Stereo panner.positionZ" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Mono panner.positionZ" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Stereo listener.positionX" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Mono listener.positionX" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Stereo listener.positionY" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Mono listener.positionY" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Stereo listener.positionZ" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "Mono listener.positionZ" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "setPosition" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "orientation setter" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "forward setter" | PASS | FAIL | PASS | PASS | FAIL | — |
| Executing "up setter" | PASS | FAIL | PASS | PASS | FAIL | — |
| Audit report | PASS | PASS | PASS | PASS | PASS | — |
| > [Stereo panner.positionX] | PASS | PASS | PASS | PASS | PASS | — |
| Stereo panner.positionX.value frame [0, 128) channel 0 contains only the constant 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Stereo panner.positionX.value frame [0, 128) channel 1 contains only the constant 3. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionX.value frame [128, 256) channel 0 contains only the constant 6.123233968888981e-21. | PASS | — | PASS | — | — | — |
| Stereo panner.positionX.value frame [128, 256) channel 1 contains only the constant 0.00029999998514540493. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionX: Output at frame 128 channel 0 is not equal to 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Stereo panner.positionX: Output at frame 128 channel 1 is not equal to 3. | PASS | — | PASS | PASS | — | — |
| < [Stereo panner.positionX] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Mono panner.positionX] | PASS | PASS | PASS | PASS | PASS | — |
| Mono panner.positionX.value frame [0, 128) channel 0 contains only the constant 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Mono panner.positionX.value frame [0, 128) channel 1 contains only the constant 1. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionX.value frame [128, 256) channel 0 contains only the constant 6.123233968888981e-21. | PASS | — | PASS | — | — | — |
| Mono panner.positionX.value frame [128, 256) channel 1 contains only the constant 0.00009999999747378752. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionX: Output at frame 128 channel 0 is not equal to 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Mono panner.positionX: Output at frame 128 channel 1 is not equal to 1. | PASS | — | PASS | PASS | — | — |
| < [Mono panner.positionX] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Stereo panner.positionY] | PASS | PASS | PASS | PASS | PASS | — |
| Stereo panner.positionY.value frame [0, 128) channel 0 contains only the constant 1. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionY.value frame [0, 128) channel 1 contains only the constant 2. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionY.value frame [128, 256) channel 0 contains only the constant 0.00009999999747378752. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionY.value frame [128, 256) channel 1 contains only the constant 0.00019999999494757503. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionY: Output at frame 128 channel 0 is not equal to 1. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionY: Output at frame 128 channel 1 is not equal to 2. | PASS | — | PASS | PASS | — | — |
| < [Stereo panner.positionY] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Mono panner.positionY] | PASS | PASS | PASS | PASS | PASS | — |
| Mono panner.positionY.value frame [0, 128) channel 0 contains only the constant 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionY.value frame [0, 128) channel 1 contains only the constant 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionY.value frame [128, 256) channel 0 contains only the constant 0.00007071067375363782. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionY.value frame [128, 256) channel 1 contains only the constant 0.00007071067375363782. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionY: Output at frame 128 channel 0 is not equal to 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionY: Output at frame 128 channel 1 is not equal to 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| < [Mono panner.positionY] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Stereo panner.positionZ] | PASS | PASS | PASS | PASS | PASS | — |
| Stereo panner.positionZ.value frame [0, 128) channel 0 contains only the constant 1. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionZ.value frame [0, 128) channel 1 contains only the constant 2. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionZ.value frame [128, 256) channel 0 contains only the constant 0.00009999999747378752. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionZ.value frame [128, 256) channel 1 contains only the constant 0.00019999999494757503. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionZ: Output at frame 128 channel 0 is not equal to 1. | PASS | — | PASS | PASS | — | — |
| Stereo panner.positionZ: Output at frame 128 channel 1 is not equal to 2. | PASS | — | PASS | PASS | — | — |
| < [Stereo panner.positionZ] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Mono panner.positionZ] | PASS | PASS | PASS | PASS | PASS | — |
| Mono panner.positionZ.value frame [0, 128) channel 0 contains only the constant 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionZ.value frame [0, 128) channel 1 contains only the constant 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionZ.value frame [128, 256) channel 0 contains only the constant 0.00007071067375363782. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionZ.value frame [128, 256) channel 1 contains only the constant 0.00007071067375363782. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionZ: Output at frame 128 channel 0 is not equal to 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono panner.positionZ: Output at frame 128 channel 1 is not equal to 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| < [Mono panner.positionZ] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Stereo listener.positionX] | PASS | PASS | PASS | PASS | PASS | — |
| Stereo listener.positionX.value frame [0, 128) channel 0 contains only the constant 1. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionX.value frame [0, 128) channel 1 contains only the constant 2. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionX.value frame [128, 256) channel 0 contains only the constant 0.00030002999119460583. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionX.value frame [128, 256) channel 1 contains only the constant 0. | PASS | — | — | — | — | — |
| Stereo listener.positionX: Output at frame 128 channel 0 is not equal to 1. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionX: Output at frame 128 channel 1 is not equal to 2. | PASS | — | PASS | PASS | — | — |
| < [Stereo listener.positionX] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Mono listener.positionX] | PASS | PASS | PASS | PASS | PASS | — |
| Mono listener.positionX.value frame [0, 128) channel 0 contains only the constant 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionX.value frame [0, 128) channel 1 contains only the constant 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionX.value frame [128, 256) channel 0 contains only the constant 0.00010001000191550702. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionX.value frame [128, 256) channel 1 contains only the constant 0. | PASS | — | — | — | — | — |
| Mono listener.positionX: Output at frame 128 channel 0 is not equal to 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionX: Output at frame 128 channel 1 is not equal to 0.7071067690849304. | PASS | — | PASS | PASS | — | — |
| < [Mono listener.positionX] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Stereo listener.positionY] | PASS | PASS | PASS | PASS | PASS | — |
| Stereo listener.positionY.value frame [0, 128) channel 0 contains only the constant 0.40824827551841736. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionY.value frame [0, 128) channel 1 contains only the constant 1.5629488229751587. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionY.value frame [128, 256) channel 0 contains only the constant 0.0000707106664776802. | PASS | — | PASS | — | — | — |
| Stereo listener.positionY.value frame [128, 256) channel 1 contains only the constant 0.00027071067597717047. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionY: Output at frame 128 channel 0 is not equal to 0.40824827551841736. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionY: Output at frame 128 channel 1 is not equal to 1.5629488229751587. | PASS | — | PASS | PASS | — | — |
| < [Stereo listener.positionY] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Mono listener.positionY] | PASS | PASS | PASS | PASS | PASS | — |
| Mono listener.positionY.value frame [0, 128) channel 0 contains only the constant 0.22094237804412842. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionY.value frame [0, 128) channel 1 contains only the constant 0.5334020853042603. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionY.value frame [128, 256) channel 0 contains only the constant 0.00003826833926723339. | PASS | — | PASS | — | — | — |
| Mono listener.positionY.value frame [128, 256) channel 1 contains only the constant 0.00009238795610144734. | PASS | — | PASS | — | — | — |
| Mono listener.positionY: Output at frame 128 channel 0 is not equal to 0.22094237804412842. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionY: Output at frame 128 channel 1 is not equal to 0.5334020853042603. | PASS | — | PASS | PASS | — | — |
| < [Mono listener.positionY] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Stereo listener.positionZ] | PASS | PASS | PASS | PASS | PASS | — |
| Stereo listener.positionZ.value frame [0, 128) channel 0 contains only the constant 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Stereo listener.positionZ.value frame [0, 128) channel 1 contains only the constant 3. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionZ.value frame [128, 256) channel 0 contains only the constant 0.00010001000191550702. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionZ.value frame [128, 256) channel 1 contains only the constant 0.00020003000099677593. | PASS | — | PASS | PASS | — | — |
| Stereo listener.positionZ: Output at frame 128 channel 0 is not equal to 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Stereo listener.positionZ: Output at frame 128 channel 1 is not equal to 3. | PASS | — | PASS | PASS | — | — |
| < [Stereo listener.positionZ] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [Mono listener.positionZ] | PASS | PASS | PASS | PASS | PASS | — |
| Mono listener.positionZ.value frame [0, 128) channel 0 contains only the constant 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Mono listener.positionZ.value frame [0, 128) channel 1 contains only the constant 1. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionZ.value frame [128, 256) channel 0 contains only the constant 0.00007071421714499593. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionZ.value frame [128, 256) channel 1 contains only the constant 0.0000707212820998393. | PASS | — | PASS | PASS | — | — |
| Mono listener.positionZ: Output at frame 128 channel 0 is not equal to 6.123234262925839e-17. | PASS | — | PASS | — | — | — |
| Mono listener.positionZ: Output at frame 128 channel 1 is not equal to 1. | PASS | — | PASS | PASS | — | — |
| < [Mono listener.positionZ] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [setPosition] | PASS | PASS | PASS | PASS | PASS | — |
| setPosition.value frame [0, 128) channel 0 contains only the constant 0.40824827551841736. | PASS | — | PASS | PASS | — | — |
| setPosition.value frame [0, 128) channel 1 contains only the constant 1.5629488229751587. | PASS | — | PASS | PASS | — | — |
| setPosition.value frame [128, 256) channel 0 contains only the constant 0.000124290119856596. | PASS | — | PASS | — | — | — |
| setPosition.value frame [128, 256) channel 1 contains only the constant 0.0002424988488201052. | PASS | — | PASS | PASS | — | — |
| setPosition: Output at frame 128 channel 0 is not equal to 0.40824827551841736. | PASS | — | PASS | PASS | — | — |
| setPosition: Output at frame 128 channel 1 is not equal to 1.5629488229751587. | PASS | — | PASS | PASS | — | — |
| < [setPosition] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [orientation setter] | PASS | PASS | PASS | PASS | PASS | — |
| panner.orientation{XYZ}.value frame [0, 128) channel 0 contains only the constant 0.5005000233650208. | PASS | — | PASS | PASS | — | — |
| panner.orientation{XYZ}.value frame [0, 128) channel 1 contains only the constant 1.0010000467300415. | PASS | — | PASS | PASS | — | — |
| panner.orientation{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.07899462431669235. | PASS | — | — | — | — | — |
| panner.orientation{XYZ}.value frame [128, 256) channel 1 contains only the constant 0.1579892486333847. | PASS | — | — | — | — | — |
| panner.orientation{XYZ}: Output at frame 128 channel 0 is not equal to 0.5005000233650208. | PASS | — | PASS | PASS | — | — |
| panner.orientation{XYZ}: Output at frame 128 channel 1 is not equal to 1.0010000467300415. | PASS | — | PASS | PASS | — | — |
| < [orientation setter] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [forward setter] | PASS | PASS | PASS | PASS | PASS | — |
| listener.forward{XYZ}.value frame [0, 128) channel 0 contains only the constant 0.5005000233650208. | PASS | — | PASS | PASS | — | — |
| listener.forward{XYZ}.value frame [0, 128) channel 1 contains only the constant 1.0010000467300415. | PASS | — | PASS | PASS | — | — |
| listener.forward{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.5133963823318481. | PASS | — | PASS | — | — | — |
| listener.forward{XYZ}.value frame [128, 256) channel 1 contains only the constant 1.0009169578552246. | PASS | — | PASS | PASS | — | — |
| listener.forward{XYZ}: Output at frame 128 channel 0 is not equal to 0.5005000233650208. | PASS | — | PASS | PASS | — | — |
| listener.forward{XYZ}: Output at frame 128 channel 1 is not equal to 1.0010000467300415. | PASS | — | PASS | PASS | — | — |
| < [forward setter] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| > [up setter] | PASS | PASS | PASS | PASS | PASS | — |
| listener.up{XYZ}.value frame [0, 128) channel 0 contains only the constant 0.12537500262260437. | PASS | — | PASS | PASS | — | — |
| listener.up{XYZ}.value frame [0, 128) channel 1 contains only the constant 0.47998905181884766. | PASS | — | — | PASS | — | — |
| listener.up{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.1447705775499344. | PASS | — | — | PASS | — | — |
| listener.up{XYZ}.value frame [128, 256) channel 1 contains only the constant 0.4569823145866394. | PASS | — | — | — | — | — |
| listener.up{XYZ}: Output at frame 128 channel 0 is not equal to 0.12537500262260437. | PASS | — | PASS | PASS | — | — |
| listener.up{XYZ}: Output at frame 128 channel 1 is not equal to 0.47998905181884766. | PASS | — | — | PASS | — | — |
| < [up setter] All assertions passed. (total 6 assertions) | PASS | — | PASS | PASS | — | — |
| # AUDIT TASK RUNNER FINISHED: 16 tasks ran successfully. | PASS | PASS | PASS | PASS | PASS | — |
| Stereo listener.positionX.value frame [128, 256) channel 1 contains only the constant 5.326854929377234e-11. | — | — | PASS | — | — | — |
| Mono listener.positionX.value frame [128, 256) channel 1 contains only the constant 1.3317137323443085e-11. | — | — | PASS | — | — | — |
| panner.orientation{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.07899458706378937. | — | — | PASS | — | — | — |
| panner.orientation{XYZ}.value frame [128, 256) channel 1 contains only the constant 0.15798917412757874. | — | — | PASS | — | — | — |
| listener.up{XYZ}.value frame [0, 128) channel 1 contains only the constant 0.47998911142349243. | — | — | PASS | — | — | — |
| listener.up{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.14477059245109558. | — | — | PASS | — | — | — |
| listener.up{XYZ}.value frame [128, 256) channel 1 contains only the constant 0.4569823741912842. | — | — | PASS | — | — | — |
| listener.up{XYZ}: Output at frame 128 channel 1 is not equal to 0.47998911142349243. | — | — | PASS | — | — | — |
| Stereo panner.positionX.value frame [0, 128) channel 0 contains only the constant 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Stereo panner.positionX.value frame [128, 256) channel 0 contains only the constant 6.123031616600461e-21. | — | — | — | PASS | — | — |
| Stereo panner.positionX: Output at frame 128 channel 0 is not equal to 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Mono panner.positionX.value frame [0, 128) channel 0 contains only the constant 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Mono panner.positionX.value frame [128, 256) channel 0 contains only the constant 6.123031616600461e-21. | — | — | — | PASS | — | — |
| Mono panner.positionX: Output at frame 128 channel 0 is not equal to 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Stereo listener.positionX.value frame [128, 256) channel 1 contains only the constant 2.000400023405291e-8. | — | — | — | PASS | — | — |
| Mono listener.positionX.value frame [128, 256) channel 1 contains only the constant 5.0010000585132275e-9. | — | — | — | PASS | — | — |
| Stereo listener.positionY.value frame [128, 256) channel 0 contains only the constant 0.00007071067375363782. | — | — | — | PASS | — | — |
| Mono listener.positionY.value frame [128, 256) channel 0 contains only the constant 0.000038268342905212194. | — | — | — | PASS | — | — |
| Mono listener.positionY.value frame [128, 256) channel 1 contains only the constant 0.00009238794882548973. | — | — | — | PASS | — | — |
| Stereo listener.positionZ.value frame [0, 128) channel 0 contains only the constant 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Stereo listener.positionZ: Output at frame 128 channel 0 is not equal to 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Mono listener.positionZ.value frame [0, 128) channel 0 contains only the constant 6.123031769111886e-17. | — | — | — | PASS | — | — |
| Mono listener.positionZ: Output at frame 128 channel 0 is not equal to 6.123031769111886e-17. | — | — | — | PASS | — | — |
| setPosition.value frame [128, 256) channel 0 contains only the constant 0.00012429013440851122. | — | — | — | PASS | — | — |
| panner.orientation{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.07899460941553116. | — | — | — | PASS | — | — |
| panner.orientation{XYZ}.value frame [128, 256) channel 1 contains only the constant 0.15798921883106232. | — | — | — | PASS | — | — |
| listener.forward{XYZ}.value frame [128, 256) channel 0 contains only the constant 0.5133965015411377. | — | — | — | PASS | — | — |
| listener.up{XYZ}.value frame [128, 256) channel 1 contains only the constant 0.456982284784317. | — | — | — | PASS | — | — |