<!DOCTYPE html>
<html>
  <head>
    <title>
      Test performance of 100 PannerNodes (HRTF).
    </title>
    <script src="../resources/runner.js"></script>
    <script src="resources/webaudio-perf-utils.js"></script>
  </head>
  <body>
    <script>
      function graphBuilder() {
        const context = new OfflineAudioContext(1, 48000, 48000);
        const source = new ConstantSourceNode(context);
        const testNodes = createAndConnectNodesInSeries(
            context, 'PannerNode', 100, {panningModel: 'HRTF'});
        source.connect(testNodes.head);
        testNodes.tail.connect(context.destination);
        source.start();
        return context;
      }

      RunWebAudioPerfTest({
        description: 'Test performance of 100 PannerNodes (HRTF)',
        graphBuilder: graphBuilder,
        tracingOptions: {
          targetCategory: 'disabled-by-default-webaudio.audionode',
          targetEvents: ['PannerHandler::Process'],
        }
      });
    </script>
  </body>
</html>
