Changeset 265038 in webkit
- Timestamp:
- Jul 29, 2020 5:35:54 AM (4 years ago)
- Location:
- trunk
- Files:
-
- 4 deleted
- 29 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/imported/w3c/ChangeLog
r265020 r265038 1 2020-07-29 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, reverting r265002. 4 https://bugs.webkit.org/show_bug.cgi?id=214919 5 6 Broke imported/w3c/web-platform-tests/webaudio/the-audio-api 7 /the-scriptprocessornode-interface/simple-input-output.html 8 9 Reverted changeset: 10 11 "Added constructor methods to ChannelMergerNode, 12 ChannelSplitterNode" 13 https://bugs.webkit.org/show_bug.cgi?id=214851 14 https://trac.webkit.org/changeset/265002 15 1 16 2020-07-28 Oriol Brufau <obrufau@igalia.com> 2 17 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/idlharness.https.window-expected.txt
r265002 r265038 502 502 FAIL AudioNode interface: new BiquadFilterNode(context) must inherit property "channelInterpretation" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new BiquadFilterNode(context)')" 503 503 PASS ChannelMergerNode interface: existence and properties of interface object 504 PASS ChannelMergerNode interface object length 504 FAIL ChannelMergerNode interface object length assert_equals: wrong value for ChannelMergerNode.length expected 1 but got 0 505 505 PASS ChannelMergerNode interface object name 506 506 PASS ChannelMergerNode interface: existence and properties of interface prototype object 507 507 PASS ChannelMergerNode interface: existence and properties of interface prototype object's "constructor" property 508 508 PASS ChannelMergerNode interface: existence and properties of interface prototype object's @@unscopables property 509 PASS ChannelMergerNode must be primary interface of new ChannelMergerNode(context) 510 PASS Stringification of new ChannelMergerNode(context) 511 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "connect(AudioNode, optional unsigned long, optional unsigned long)" with the proper type 512 PASS AudioNode interface: calling connect(AudioNode, optional unsigned long, optional unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError 513 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "connect(AudioParam, optional unsigned long)" with the proper type 514 PASS AudioNode interface: calling connect(AudioParam, optional unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError 515 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect()" with the proper type 516 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(unsigned long)" with the proper type 517 PASS AudioNode interface: calling disconnect(unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError 518 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioNode)" with the proper type 519 PASS AudioNode interface: calling disconnect(AudioNode) on new ChannelMergerNode(context) with too few arguments must throw TypeError 520 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioNode, unsigned long)" with the proper type 521 PASS AudioNode interface: calling disconnect(AudioNode, unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError 522 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioNode, unsigned long, unsigned long)" with the proper type 523 PASS AudioNode interface: calling disconnect(AudioNode, unsigned long, unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError 524 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioParam)" with the proper type 525 PASS AudioNode interface: calling disconnect(AudioParam) on new ChannelMergerNode(context) with too few arguments must throw TypeError 526 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioParam, unsigned long)" with the proper type 527 PASS AudioNode interface: calling disconnect(AudioParam, unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError 528 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "context" with the proper type 529 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "numberOfInputs" with the proper type 530 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "numberOfOutputs" with the proper type 531 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "channelCount" with the proper type 532 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "channelCountMode" with the proper type 533 PASS AudioNode interface: new ChannelMergerNode(context) must inherit property "channelInterpretation" with the proper type 509 FAIL ChannelMergerNode must be primary interface of new ChannelMergerNode(context) assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 510 FAIL Stringification of new ChannelMergerNode(context) assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 511 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "connect(AudioNode, optional unsigned long, optional unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 512 FAIL AudioNode interface: calling connect(AudioNode, optional unsigned long, optional unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 513 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "connect(AudioParam, optional unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 514 FAIL AudioNode interface: calling connect(AudioParam, optional unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 515 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 516 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 517 FAIL AudioNode interface: calling disconnect(unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 518 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioNode)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 519 FAIL AudioNode interface: calling disconnect(AudioNode) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 520 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioNode, unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 521 FAIL AudioNode interface: calling disconnect(AudioNode, unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 522 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioNode, unsigned long, unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 523 FAIL AudioNode interface: calling disconnect(AudioNode, unsigned long, unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 524 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioParam)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 525 FAIL AudioNode interface: calling disconnect(AudioParam) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 526 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "disconnect(AudioParam, unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 527 FAIL AudioNode interface: calling disconnect(AudioParam, unsigned long) on new ChannelMergerNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 528 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "context" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 529 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "numberOfInputs" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 530 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "numberOfOutputs" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 531 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "channelCount" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 532 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "channelCountMode" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 533 FAIL AudioNode interface: new ChannelMergerNode(context) must inherit property "channelInterpretation" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context)')" 534 534 PASS ChannelSplitterNode interface: existence and properties of interface object 535 PASS ChannelSplitterNode interface object length 535 FAIL ChannelSplitterNode interface object length assert_equals: wrong value for ChannelSplitterNode.length expected 1 but got 0 536 536 PASS ChannelSplitterNode interface object name 537 537 PASS ChannelSplitterNode interface: existence and properties of interface prototype object 538 538 PASS ChannelSplitterNode interface: existence and properties of interface prototype object's "constructor" property 539 539 PASS ChannelSplitterNode interface: existence and properties of interface prototype object's @@unscopables property 540 PASS ChannelSplitterNode must be primary interface of new ChannelSplitterNode(context) 541 PASS Stringification of new ChannelSplitterNode(context) 542 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "connect(AudioNode, optional unsigned long, optional unsigned long)" with the proper type 543 PASS AudioNode interface: calling connect(AudioNode, optional unsigned long, optional unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 544 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "connect(AudioParam, optional unsigned long)" with the proper type 545 PASS AudioNode interface: calling connect(AudioParam, optional unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 546 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect()" with the proper type 547 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(unsigned long)" with the proper type 548 PASS AudioNode interface: calling disconnect(unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 549 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioNode)" with the proper type 550 PASS AudioNode interface: calling disconnect(AudioNode) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 551 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioNode, unsigned long)" with the proper type 552 PASS AudioNode interface: calling disconnect(AudioNode, unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 553 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioNode, unsigned long, unsigned long)" with the proper type 554 PASS AudioNode interface: calling disconnect(AudioNode, unsigned long, unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 555 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioParam)" with the proper type 556 PASS AudioNode interface: calling disconnect(AudioParam) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 557 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioParam, unsigned long)" with the proper type 558 PASS AudioNode interface: calling disconnect(AudioParam, unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError 559 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "context" with the proper type 560 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "numberOfInputs" with the proper type 561 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "numberOfOutputs" with the proper type 562 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "channelCount" with the proper type 563 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "channelCountMode" with the proper type 564 PASS AudioNode interface: new ChannelSplitterNode(context) must inherit property "channelInterpretation" with the proper type 540 FAIL ChannelSplitterNode must be primary interface of new ChannelSplitterNode(context) assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 541 FAIL Stringification of new ChannelSplitterNode(context) assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 542 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "connect(AudioNode, optional unsigned long, optional unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 543 FAIL AudioNode interface: calling connect(AudioNode, optional unsigned long, optional unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 544 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "connect(AudioParam, optional unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 545 FAIL AudioNode interface: calling connect(AudioParam, optional unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 546 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect()" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 547 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 548 FAIL AudioNode interface: calling disconnect(unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 549 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioNode)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 550 FAIL AudioNode interface: calling disconnect(AudioNode) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 551 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioNode, unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 552 FAIL AudioNode interface: calling disconnect(AudioNode, unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 553 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioNode, unsigned long, unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 554 FAIL AudioNode interface: calling disconnect(AudioNode, unsigned long, unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 555 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioParam)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 556 FAIL AudioNode interface: calling disconnect(AudioParam) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 557 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "disconnect(AudioParam, unsigned long)" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 558 FAIL AudioNode interface: calling disconnect(AudioParam, unsigned long) on new ChannelSplitterNode(context) with too few arguments must throw TypeError assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 559 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "context" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 560 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "numberOfInputs" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 561 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "numberOfOutputs" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 562 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "channelCount" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 563 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "channelCountMode" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 564 FAIL AudioNode interface: new ChannelSplitterNode(context) must inherit property "channelInterpretation" with the proper type assert_equals: Unexpected exception when evaluating object expected null but got object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context)')" 565 565 FAIL ConstantSourceNode interface: existence and properties of interface object assert_own_property: self does not have own property "ConstantSourceNode" expected property "ConstantSourceNode" missing 566 566 FAIL ConstantSourceNode interface object length assert_own_property: self does not have own property "ConstantSourceNode" expected property "ConstantSourceNode" missing -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffersourcenode-interface/buffer-resampling-expected.txt
r265002 r265038 1 1 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 FAIL Executing "interpolate" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.startRendering()4 .then')"3 FAIL Executing "interpolate" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 4 context, {numberOfChannels: context.destination.channelCount})')" 5 5 PASS Audit report 6 6 PASS > [interpolate] Interpolation of AudioBuffers to context sample rate -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching-expected.txt
r265002 r265038 1 1 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 FAIL Executing "buffer-stitching-1" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'testBufferStitching(sampleRate, bufferRate, bufferLength)4 .then')"5 FAIL Executing "buffer-stitching-2" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'testBufferStitching(sampleRate, bufferRate, bufferLength)6 .then')"3 FAIL Executing "buffer-stitching-1" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 4 context, {numberOfInputs: context.destination.channelCount})')" 5 FAIL Executing "buffer-stitching-2" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 6 context, {numberOfInputs: context.destination.channelCount})')" 7 7 PASS Audit report 8 8 PASS > [buffer-stitching-1] Subsample buffer stitching, same rates -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioparam-interface/k-rate-dynamics-compressor-connections-expected.txt
r265002 r265038 1 1 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 FAIL Executing "attack" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'refNode[paramName]')" 4 FAIL Executing "knee" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'refNode[paramName]')" 5 FAIL Executing "ratio" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'refNode[paramName]')" 6 FAIL Executing "release" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'refNode[paramName]')" 7 FAIL Executing "threshold" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'refNode[paramName]')" 3 FAIL Executing "attack" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 4 context, {numberOfInputs: context.destination.channelCount})')" 5 FAIL Executing "knee" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 6 context, {numberOfInputs: context.destination.channelCount})')" 7 FAIL Executing "ratio" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 8 context, {numberOfInputs: context.destination.channelCount})')" 9 FAIL Executing "release" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 10 context, {numberOfInputs: context.destination.channelCount})')" 11 FAIL Executing "threshold" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 12 context, {numberOfInputs: context.destination.channelCount})')" 8 13 PASS Audit report 9 14 PASS > [attack] Dynamics compressor attack 10 FAIL X attack: refNode = new DynamicsCompressorNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new DynamicsCompressorNode(context)')". assert_true: expected true got false11 15 PASS > [knee] Dynamics compressor knee 12 FAIL X knee: refNode = new DynamicsCompressorNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new DynamicsCompressorNode(context)')". assert_true: expected true got false13 16 PASS > [ratio] Dynamics compressor ratio 14 FAIL X ratio: refNode = new DynamicsCompressorNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new DynamicsCompressorNode(context)')". assert_true: expected true got false15 17 PASS > [release] Dynamics compressor release 16 FAIL X release: refNode = new DynamicsCompressorNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new DynamicsCompressorNode(context)')". assert_true: expected true got false17 18 PASS > [threshold] Dynamics compressor threshold 18 FAIL X threshold: refNode = new DynamicsCompressorNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new DynamicsCompressorNode(context)')". assert_true: expected true got false 19 FAIL # AUDIT TASK RUNNER FINISHED: 5 out of 5 tasks were failed. assert_true: expected true got false 19 PASS # AUDIT TASK RUNNER FINISHED: 5 tasks ran successfully. 20 20 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/simple-input-output.https-expected.txt
r265002 r265038 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 3 FAIL Executing "Initialize worklet" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.audioWorklet.addModule')" 4 FAIL Executing "test" promise_test: Unhandled rejection with value: object "ReferenceError: Can't find variable: AudioWorkletNode" 4 FAIL Executing "test" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 5 context, {numberOfChannels: context.destination.channelCount})')" 5 6 PASS Audit report 6 7 PASS > [Initialize worklet] -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/active-processing.https-expected.txt
r265002 r265038 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 3 FAIL Executing "initialize" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.audioWorklet.addModule')" 4 FAIL Executing "test" promise_test: Unhandled rejection with value: object " ReferenceError: Can't find variable: AudioWorkletNode"4 FAIL Executing "test" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode(context, {numberOfInputs: numberOfInputs})')" 5 5 PASS Audit report 6 6 PASS > [initialize] -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/audiochannelmerger-basic-expected.txt
r265002 r265038 6 6 PASS > [exceptions-channels] 7 7 PASS context.createChannelMerger() did not throw an exception. 8 PASS context.createChannelMerger(0) threw IndexSizeError: " Number of inputsis not in the allowed range.".8 PASS context.createChannelMerger(0) threw IndexSizeError: "The index is not in the allowed range.". 9 9 PASS context.createChannelMerger(32) did not throw an exception. 10 PASS context.createChannelMerger(33) threw IndexSizeError: " Number of inputsis not in the allowed range.".10 PASS context.createChannelMerger(33) threw IndexSizeError: "The index is not in the allowed range.". 11 11 PASS < [exceptions-channels] All assertions passed. (total 4 assertions) 12 12 PASS > [exceptions-properties] 13 PASS merger.channelCount is equal to 1. 14 PASS merger.channelCount = 3 threw InvalidStateError: "Channel count cannot be changed from 1.". 15 PASS merger.channelCountMode is equal to explicit. 16 PASS merger.channelCountMode = "max" threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 17 PASS < [exceptions-properties] All assertions passed. (total 4 assertions) 18 PASS # AUDIT TASK RUNNER FINISHED: 2 tasks ran successfully. 13 FAIL X merger.channelCount is not equal to 1. Got 2. assert_true: expected true got false 14 FAIL X merger.channelCount = 3 did not throw an exception. assert_true: expected true got false 15 FAIL X merger.channelCountMode is not equal to explicit. Got max. assert_true: expected true got false 16 FAIL X merger.channelCountMode = "max" did not throw an exception. assert_true: expected true got false 17 FAIL < [exceptions-properties] 4 out of 4 assertions were failed. assert_true: expected true got false 18 FAIL # AUDIT TASK RUNNER FINISHED: 1 out of 2 tasks were failed. assert_true: expected true got false 19 19 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/ctor-channelmerger-expected.txt
r265002 r265038 3 3 PASS Executing "initialize" 4 4 PASS Executing "invalid constructor" 5 PASS Executing "default constructor" 6 PASS Executing "test AudioNodeOptions" 7 PASS Executing "constructor options" 5 FAIL Executing "default constructor" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'node.numberOfInputs')" 6 FAIL Executing "test AudioNodeOptions" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'node.channelCount')" 7 FAIL Executing "constructor options" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'node.numberOfInputs')" 8 8 PASS Audit report 9 9 PASS > [initialize] … … 11 11 PASS < [initialize] All assertions passed. (total 1 assertions) 12 12 PASS > [invalid constructor] 13 PASS new ChannelMergerNode() threw TypeError: " Not enough arguments".14 PASS new ChannelMergerNode(1) threw TypeError: " Argument 1 ('context') to the ChannelMergerNode constructor must be an instance of BaseAudioContext".15 PASS new ChannelMergerNode(context, 42) threw TypeError: " Type error".13 PASS new ChannelMergerNode() threw TypeError: "function is not a constructor (evaluating 'new window[name]()')". 14 PASS new ChannelMergerNode(1) threw TypeError: "function is not a constructor (evaluating 'new window[name](1)')". 15 PASS new ChannelMergerNode(context, 42) threw TypeError: "function is not a constructor (evaluating 'new window[name](context, 42)')". 16 16 PASS < [invalid constructor] All assertions passed. (total 3 assertions) 17 17 PASS > [default constructor] 18 PASS node0 = new ChannelMergerNode(context) did not throw an exception. 19 PASS node0 instanceof ChannelMergerNode is equal to true. 20 PASS node0.numberOfInputs is equal to 6. 21 PASS node0.numberOfOutputs is equal to 1. 22 PASS node0.channelCount is equal to 1. 23 PASS node0.channelCountMode is equal to explicit. 24 PASS node0.channelInterpretation is equal to speakers. 25 PASS < [default constructor] All assertions passed. (total 7 assertions) 18 FAIL X node0 = new ChannelMergerNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new window[name](context, options.constructorOptions)')". assert_true: expected true got false 19 FAIL X node0 instanceof ChannelMergerNode is not equal to true. Got false. assert_true: expected true got false 26 20 PASS > [test AudioNodeOptions] 27 PASS new ChannelMergerNode(c, {channelCount: 1}) did not throw an exception. 28 PASS node.channelCount is equal to 1. 29 PASS new ChannelMergerNode(c, {channelCount: 2}) threw InvalidStateError: "Channel count cannot be changed from 1.". 30 PASS (new ChannelMergerNode(c, {channelCount: 1})).channelCount = 1 did not throw an exception. 31 PASS new ChannelMergerNode(c, {channelCountMode: "explicit"} did not throw an exception. 32 PASS node.channelCountMode is equal to explicit. 33 PASS new ChannelMergerNode(c, {channelCountMode: "max"}) threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 34 PASS new ChannelMergerNode(c, {channelCountMode: "clamped-max"}) threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 35 PASS (new ChannelMergerNode(c, {channelCountMode: "explicit"})).channelCountMode = "explicit" did not throw an exception. 36 PASS new ChannelMergerNode(c, {channelInterpretation: "speakers"}) did not throw an exception. 37 PASS node.channelInterpretation is equal to speakers. 38 PASS new ChannelMergerNode(c, {channelInterpretation: "discrete"}) did not throw an exception. 39 PASS node.channelInterpretation is equal to discrete. 40 PASS new ChannelMergerNode(c, {channelInterpretation: "foobar"}) threw TypeError: "Type error". 41 PASS node.channelInterpretation after invalid setter is equal to discrete. 42 PASS < [test AudioNodeOptions] All assertions passed. (total 15 assertions) 21 FAIL X new ChannelMergerNode(c, {channelCount: 1}) incorrectly threw TypeError: "function is not a constructor (evaluating 'new window[nodeName]')". assert_true: expected true got false 43 22 PASS > [constructor options] 44 PASS node1 = new ChannelMergerNode(context, {"numberOfInputs":3,"numberOfOutputs":9,"channelInterpretation":"discrete"}) did not throw an exception. 45 PASS node1.numberOfInputs is equal to 3. 46 PASS node1.numberOfOutputs is equal to 1. 47 PASS node1.channelInterpretation is equal to discrete. 48 PASS new ChannelMergerNode(c, {"numberOfInputs":99}) threw IndexSizeError: "Number of inputs is not in the allowed range.". 49 PASS new ChannelMergerNode(c, {"channelCount":3}) threw InvalidStateError: "Channel count cannot be changed from 1.". 50 PASS new ChannelMergerNode(c, {"channelCountMode":"max"}) threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 51 PASS < [constructor options] All assertions passed. (total 7 assertions) 52 PASS # AUDIT TASK RUNNER FINISHED: 5 tasks ran successfully. 23 FAIL X node1 = new ChannelMergerNode(context, {"numberOfInputs":3,"numberOfOutputs":9,"channelInterpretation":"discrete"}) incorrectly threw TypeError: "function is not a constructor (evaluating 'new ChannelMergerNode(context, options)')". assert_true: expected true got false 24 FAIL # AUDIT TASK RUNNER FINISHED: 3 out of 5 tasks were failed. assert_true: expected true got false 53 25 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelsplitternode-interface/audiochannelsplitter-expected.txt
r265002 r265038 6 6 PASS Audit report 7 7 PASS > [construction] Construction of ChannelSplitterNode 8 PASS createChannelSplitter(0) threw IndexSizeError: " Number of outputs is not in the allowed range".9 PASS createChannelSplitter(33) threw IndexSizeError: " Number of outputs is not in the allowed range".8 PASS createChannelSplitter(0) threw IndexSizeError: "The index is not in the allowed range.". 9 PASS createChannelSplitter(33) threw IndexSizeError: "The index is not in the allowed range.". 10 10 PASS splitternode = context.createChannelSplitter(32) did not throw an exception. 11 11 PASS splitternode.numberOfOutputs is equal to 32. -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelsplitternode-interface/ctor-channelsplitter-expected.txt
r265002 r265038 3 3 PASS Executing "initialize" 4 4 PASS Executing "invalid constructor" 5 PASS Executing "default constructor" 6 PASS Executing "test AudioNodeOptions" 7 PASS Executing "constructor options" 5 FAIL Executing "default constructor" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'node.numberOfInputs')" 6 FAIL Executing "test AudioNodeOptions" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'node.channelCount')" 7 FAIL Executing "constructor options" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'node.numberOfInputs')" 8 8 PASS Audit report 9 9 PASS > [initialize] … … 11 11 PASS < [initialize] All assertions passed. (total 1 assertions) 12 12 PASS > [invalid constructor] 13 PASS new ChannelSplitterNode() threw TypeError: " Not enough arguments".14 PASS new ChannelSplitterNode(1) threw TypeError: " Argument 1 ('context') to the ChannelSplitterNode constructor must be an instance of BaseAudioContext".15 PASS new ChannelSplitterNode(context, 42) threw TypeError: " Type error".13 PASS new ChannelSplitterNode() threw TypeError: "function is not a constructor (evaluating 'new window[name]()')". 14 PASS new ChannelSplitterNode(1) threw TypeError: "function is not a constructor (evaluating 'new window[name](1)')". 15 PASS new ChannelSplitterNode(context, 42) threw TypeError: "function is not a constructor (evaluating 'new window[name](context, 42)')". 16 16 PASS < [invalid constructor] All assertions passed. (total 3 assertions) 17 17 PASS > [default constructor] 18 PASS node0 = new ChannelSplitterNode(context) did not throw an exception. 19 PASS node0 instanceof ChannelSplitterNode is equal to true. 20 PASS node0.numberOfInputs is equal to 1. 21 PASS node0.numberOfOutputs is equal to 6. 22 PASS node0.channelCount is equal to 6. 23 PASS node0.channelCountMode is equal to explicit. 24 PASS node0.channelInterpretation is equal to discrete. 25 PASS < [default constructor] All assertions passed. (total 7 assertions) 18 FAIL X node0 = new ChannelSplitterNode(context) incorrectly threw TypeError: "function is not a constructor (evaluating 'new window[name](context, options.constructorOptions)')". assert_true: expected true got false 19 FAIL X node0 instanceof ChannelSplitterNode is not equal to true. Got false. assert_true: expected true got false 26 20 PASS > [test AudioNodeOptions] 27 PASS new ChannelSplitterNode(c, {channelCount: 6}) did not throw an exception. 28 PASS node.channelCount is equal to 6. 29 PASS new ChannelSplitterNode(c, {channelCount: 7}) threw IndexSizeError: "Channel count must be set to number of outputs.". 30 PASS (new ChannelSplitterNode(c, {channelCount: 6})).channelCount = 6 did not throw an exception. 31 PASS new ChannelSplitterNode(c, {channelCountMode: "explicit"} did not throw an exception. 32 PASS node.channelCountMode is equal to explicit. 33 PASS new ChannelSplitterNode(c, {channelCountMode: "max"}) threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 34 PASS new ChannelSplitterNode(c, {channelCountMode: "clamped-max"}) threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 35 PASS (new ChannelSplitterNode(c, {channelCountMode: "explicit"})).channelCountMode = "explicit" did not throw an exception. 36 PASS new ChannelSplitterNode(c, {channelInterpretation: "speakers"}) threw InvalidStateError: "Channel interpretation cannot be changed from discrete.". 37 PASS (new ChannelSplitterNode(c, {channelInterpretation: "discrete"})).channelInterpretation = "discrete" did not throw an exception. 38 PASS < [test AudioNodeOptions] All assertions passed. (total 11 assertions) 21 FAIL X new ChannelSplitterNode(c, {channelCount: 6}) incorrectly threw TypeError: "function is not a constructor (evaluating 'new window[nodeName]')". assert_true: expected true got false 39 22 PASS > [constructor options] 40 PASS node1 = new ChannelSplitterNode(context, {"numberOfInputs":3,"numberOfOutputs":9,"channelInterpretation":"discrete"}) did not throw an exception. 41 PASS node1.numberOfInputs is equal to 1. 42 PASS node1.numberOfOutputs is equal to 9. 43 PASS node1.channelInterpretation is equal to discrete. 44 PASS new ChannelSplitterNode(c, {"numberOfOutputs":99}) threw IndexSizeError: "Number of outputs is not in the allowed range". 45 PASS new ChannelSplitterNode(c, {"channelCount":3}) threw IndexSizeError: "Channel count must be set to number of outputs.". 46 PASS new ChannelSplitterNode(c, {"channelCountMode":"max"}) threw InvalidStateError: "Channel count mode cannot be changed from explicit.". 47 PASS < [constructor options] All assertions passed. (total 7 assertions) 48 PASS # AUDIT TASK RUNNER FINISHED: 5 tasks ran successfully. 23 FAIL X node1 = new ChannelSplitterNode(context, {"numberOfInputs":3,"numberOfOutputs":9,"channelInterpretation":"discrete"}) incorrectly threw TypeError: "function is not a constructor (evaluating 'new ChannelSplitterNode(context, options)')". assert_true: expected true got false 24 FAIL # AUDIT TASK RUNNER FINISHED: 3 out of 5 tasks were failed. assert_true: expected true got false 49 25 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-oscillatornode-interface/detune-limiting-expected.txt
r265002 r265038 1 1 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 FAIL Executing "detune limits" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.startRendering()4 .then')"3 FAIL Executing "detune limits" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 4 context, {numberOfInputs: context.destination.channelCount})')" 5 5 FAIL Executing "detune automation" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.startRendering() 6 6 .then')" -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-distance-clamping-expected.txt
r265002 r265038 3 3 PASS Executing "ref-distance-error" 4 4 PASS Executing "max-distance-error" 5 FAIL Executing "min-distance" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.startRendering().then')"6 FAIL Executing "max-distance" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.startRendering().then')"5 FAIL Executing "min-distance" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context, {numberOfOutputs: 2})')" 6 FAIL Executing "max-distance" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelSplitterNode(context, {numberOfOutputs: 2})')" 7 7 PASS Audit report 8 8 PASS > [ref-distance-error] -
trunk/LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-scriptprocessornode-interface/simple-input-output-expected.txt
r265002 r265038 1 1 2 2 PASS # AUDIT TASK RUNNER STARTED. 3 FAIL Executing "test" promise_test: Unhandled rejection with value: object "TypeError: undefined is not an object (evaluating 'context.startRendering()4 .then')"3 FAIL Executing "test" promise_test: Unhandled rejection with value: object "TypeError: function is not a constructor (evaluating 'new ChannelMergerNode( 4 context, {numberOfChannels: context.destination.channelCount})')" 5 5 PASS Audit report 6 6 PASS > [test] ScriptProcessor with stopped input source -
trunk/Source/WebCore/CMakeLists.txt
r265028 r265038 466 466 Modules/webaudio/ChannelInterpretation.idl 467 467 Modules/webaudio/ChannelMergerNode.idl 468 Modules/webaudio/ChannelMergerOptions.idl469 468 Modules/webaudio/ChannelSplitterNode.idl 470 Modules/webaudio/ChannelSplitterOptions.idl471 469 Modules/webaudio/ConvolverNode.idl 472 470 Modules/webaudio/DelayNode.idl -
trunk/Source/WebCore/ChangeLog
r265031 r265038 1 2020-07-29 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, reverting r265002. 4 https://bugs.webkit.org/show_bug.cgi?id=214919 5 6 Broke imported/w3c/web-platform-tests/webaudio/the-audio-api 7 /the-scriptprocessornode-interface/simple-input-output.html 8 9 Reverted changeset: 10 11 "Added constructor methods to ChannelMergerNode, 12 ChannelSplitterNode" 13 https://bugs.webkit.org/show_bug.cgi?id=214851 14 https://trac.webkit.org/changeset/265002 15 1 16 2020-07-28 Fujii Hironori <Hironori.Fujii@sony.com> 2 17 -
trunk/Source/WebCore/DerivedSources-input.xcfilelist
r265028 r265038 315 315 $(PROJECT_DIR)/Modules/webaudio/ChannelInterpretation.idl 316 316 $(PROJECT_DIR)/Modules/webaudio/ChannelMergerNode.idl 317 $(PROJECT_DIR)/Modules/webaudio/ChannelMergerOptions.idl318 317 $(PROJECT_DIR)/Modules/webaudio/ChannelSplitterNode.idl 319 $(PROJECT_DIR)/Modules/webaudio/ChannelSplitterOptions.idl320 318 $(PROJECT_DIR)/Modules/webaudio/ConvolverNode.idl 321 319 $(PROJECT_DIR)/Modules/webaudio/DelayNode.idl -
trunk/Source/WebCore/DerivedSources-output.xcfilelist
r265028 r265038 314 314 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelMergerNode.cpp 315 315 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelMergerNode.h 316 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelMergerOptions.cpp317 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelMergerOptions.h318 316 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelSplitterNode.cpp 319 317 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelSplitterNode.h 320 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelSplitterOptions.cpp321 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSChannelSplitterOptions.h322 318 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSCharacterData.cpp 323 319 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSCharacterData.h -
trunk/Source/WebCore/DerivedSources.make
r265028 r265038 398 398 $(WebCore)/Modules/webaudio/ChannelInterpretation.idl \ 399 399 $(WebCore)/Modules/webaudio/ChannelMergerNode.idl \ 400 $(WebCore)/Modules/webaudio/ChannelMergerOptions.idl \401 400 $(WebCore)/Modules/webaudio/ChannelSplitterNode.idl \ 402 $(WebCore)/Modules/webaudio/ChannelSplitterOptions.idl \403 401 $(WebCore)/Modules/webaudio/ConvolverNode.idl \ 404 402 $(WebCore)/Modules/webaudio/DelayNode.idl \ -
trunk/Source/WebCore/Modules/webaudio/AudioNode.h
r265002 r265038 181 181 182 182 ChannelInterpretation channelInterpretation() const { return m_channelInterpretation; } 183 virtualExceptionOr<void> setChannelInterpretation(ChannelInterpretation);183 ExceptionOr<void> setChannelInterpretation(ChannelInterpretation); 184 184 185 185 protected: -
trunk/Source/WebCore/Modules/webaudio/BaseAudioContext.cpp
r265002 r265038 41 41 #include "BiquadFilterNode.h" 42 42 #include "ChannelMergerNode.h" 43 #include "ChannelMergerOptions.h"44 43 #include "ChannelSplitterNode.h" 45 #include "ChannelSplitterOptions.h"46 44 #include "ConvolverNode.h" 47 45 #include "DefaultAudioDestinationNode.h" … … 597 595 598 596 lazyInitialize(); 599 ChannelSplitterOptions options; 600 options.numberOfOutputs = numberOfOutputs; 601 return ChannelSplitterNode::create(*this, options); 597 auto node = ChannelSplitterNode::create(*this, sampleRate(), numberOfOutputs); 598 if (!node) 599 return Exception { IndexSizeError }; 600 return node.releaseNonNull(); 602 601 } 603 602 … … 611 610 612 611 lazyInitialize(); 613 ChannelMergerOptions options; 614 options.numberOfInputs = numberOfInputs; 615 return ChannelMergerNode::create(*this, options); 612 auto node = ChannelMergerNode::create(*this, sampleRate(), numberOfInputs); 613 if (!node) 614 return Exception { IndexSizeError }; 615 return node.releaseNonNull(); 616 616 } 617 617 -
trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.cpp
r265002 r265038 44 44 WTF_MAKE_ISO_ALLOCATED_IMPL(ChannelMergerNode); 45 45 46 ExceptionOr<Ref<ChannelMergerNode>> ChannelMergerNode::create(BaseAudioContext& context, const ChannelMergerOptions& options)46 RefPtr<ChannelMergerNode> ChannelMergerNode::create(BaseAudioContext& context, float sampleRate, unsigned numberOfInputs) 47 47 { 48 if ( options.numberOfInputs > AudioContext::maxNumberOfChannels() || !options.numberOfInputs)49 return Exception { IndexSizeError, "Number of inputs is not in the allowed range."_s };48 if (!numberOfInputs || numberOfInputs > AudioContext::maxNumberOfChannels()) 49 return nullptr; 50 50 51 auto merger = adoptRef(*new ChannelMergerNode(context, context.sampleRate(), options.numberOfInputs)); 52 53 auto result = merger->setChannelCount(options.channelCount.valueOr(1)); 54 if (result.hasException()) 55 return result.releaseException(); 56 57 result = merger->setChannelCountMode(options.channelCountMode.valueOr(ChannelCountMode::Explicit)); 58 if (result.hasException()) 59 return result.releaseException(); 60 61 result = merger->setChannelInterpretation(options.channelInterpretation.valueOr(ChannelInterpretation::Speakers)); 62 if (result.hasException()) 63 return result.releaseException(); 64 65 return merger; 51 return adoptRef(*new ChannelMergerNode(context, sampleRate, numberOfInputs)); 66 52 } 67 53 … … 144 130 } 145 131 146 ExceptionOr<void> ChannelMergerNode::setChannelCount(unsigned channelCount)147 {148 if (channelCount != 1)149 return Exception { InvalidStateError, "Channel count cannot be changed from 1."_s };150 151 return AudioNode::setChannelCount(channelCount);152 }153 154 ExceptionOr<void> ChannelMergerNode::setChannelCountMode(ChannelCountMode mode)155 {156 if (mode != ChannelCountMode::Explicit)157 return Exception { InvalidStateError, "Channel count mode cannot be changed from explicit."_s };158 159 return AudioNode::setChannelCountMode(mode);160 }161 162 132 } // namespace WebCore 163 133 -
trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.h
r265002 r265038 30 30 31 31 #include "AudioNode.h" 32 #include "ChannelMergerOptions.h"33 32 34 33 namespace WebCore { … … 39 38 WTF_MAKE_ISO_ALLOCATED(ChannelMergerNode); 40 39 public: 41 static ExceptionOr<Ref<ChannelMergerNode>> create(BaseAudioContext&, const ChannelMergerOptions& = { });42 40 static RefPtr<ChannelMergerNode> create(BaseAudioContext&, float sampleRate, unsigned numberOfInputs); 41 43 42 // AudioNode 44 43 void process(size_t framesToProcess) override; … … 47 46 // Called in the audio thread (pre-rendering task) when the number of channels for an input may have changed. 48 47 void checkNumberOfChannelsForInput(AudioNodeInput*) override; 49 50 ExceptionOr<void> setChannelCount(unsigned) final; 51 ExceptionOr<void> setChannelCountMode(ChannelCountMode) final; 52 48 53 49 private: 54 50 unsigned m_desiredNumberOfOutputChannels; -
trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.idl
r265002 r265038 31 31 JSGenerateToJSObject 32 32 ] interface ChannelMergerNode : AudioNode { 33 [MayThrowException, EnabledBySetting=ModernUnprefixedWebAudio] constructor (BaseAudioContext context, optional ChannelMergerOptions options);34 33 }; -
trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.cpp
r265002 r265038 37 37 38 38 WTF_MAKE_ISO_ALLOCATED_IMPL(ChannelSplitterNode); 39 40 RefPtr<ChannelSplitterNode> ChannelSplitterNode::create(BaseAudioContext& context, float sampleRate, unsigned numberOfOutputs) 41 { 42 if (!numberOfOutputs || numberOfOutputs > AudioContext::maxNumberOfChannels()) 43 return nullptr; 39 44 40 ExceptionOr<Ref<ChannelSplitterNode>> ChannelSplitterNode::create(BaseAudioContext& context, const ChannelSplitterOptions& options) 41 { 42 if (options.numberOfOutputs > AudioContext::maxNumberOfChannels() || !options.numberOfOutputs) 43 return Exception { IndexSizeError, "Number of outputs is not in the allowed range"_s }; 44 45 auto splitter = adoptRef(*new ChannelSplitterNode(context, context.sampleRate(), options.numberOfOutputs)); 46 47 auto result = splitter->setChannelCount(options.channelCount.valueOr(options.numberOfOutputs)); 48 if (result.hasException()) 49 return result.releaseException(); 50 51 result = splitter->setChannelCountMode(options.channelCountMode.valueOr(ChannelCountMode::Explicit)); 52 if (result.hasException()) 53 return result.releaseException(); 54 55 result = splitter->setChannelInterpretation(options.channelInterpretation.valueOr(ChannelInterpretation::Discrete)); 56 if (result.hasException()) 57 return result.releaseException(); 58 59 return splitter; 45 return adoptRef(*new ChannelSplitterNode(context, sampleRate, numberOfOutputs)); 60 46 } 61 47 … … 101 87 } 102 88 103 ExceptionOr<void> ChannelSplitterNode::setChannelCount(unsigned channelCount)104 {105 if (channelCount != numberOfOutputs())106 return Exception { IndexSizeError, "Channel count must be set to number of outputs."_s };107 108 return AudioNode::setChannelCount(channelCount);109 }110 111 ExceptionOr<void> ChannelSplitterNode::setChannelCountMode(ChannelCountMode mode)112 {113 if (mode != ChannelCountMode::Explicit)114 return Exception { InvalidStateError, "Channel count mode cannot be changed from explicit."_s };115 116 return AudioNode::setChannelCountMode(mode);117 }118 119 ExceptionOr<void> ChannelSplitterNode::setChannelInterpretation(ChannelInterpretation interpretation)120 {121 if (interpretation != ChannelInterpretation::Discrete)122 return Exception { InvalidStateError, "Channel interpretation cannot be changed from discrete."_s };123 124 return AudioNode::setChannelInterpretation(interpretation);125 }126 127 89 } // namespace WebCore 128 90 -
trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.h
r265002 r265038 26 26 27 27 #include "AudioNode.h" 28 #include "ChannelSplitterOptions.h"29 28 30 29 namespace WebCore { … … 35 34 WTF_MAKE_ISO_ALLOCATED(ChannelSplitterNode); 36 35 public: 37 static ExceptionOr<Ref<ChannelSplitterNode>> create(BaseAudioContext&, const ChannelSplitterOptions& = { });36 static RefPtr<ChannelSplitterNode> create(BaseAudioContext&, float sampleRate, unsigned numberOfOutputs); 38 37 39 38 // AudioNode 40 39 void process(size_t framesToProcess) override; 41 40 void reset() override; 42 43 ExceptionOr<void> setChannelCount(unsigned) final;44 ExceptionOr<void> setChannelCountMode(ChannelCountMode) final;45 ExceptionOr<void> setChannelInterpretation(ChannelInterpretation) final;46 41 47 42 private: -
trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.idl
r265002 r265038 27 27 JSGenerateToJSObject 28 28 ] interface ChannelSplitterNode : AudioNode { 29 [MayThrowException, EnabledBySetting=ModernUnprefixedWebAudio] constructor (BaseAudioContext context, optional ChannelSplitterOptions options);30 29 }; -
trunk/Source/WebCore/Sources.txt
r265028 r265038 2710 2710 JSChannelInterpretation.cpp 2711 2711 JSChannelMergerNode.cpp 2712 JSChannelMergerOptions.cpp2713 2712 JSChannelSplitterNode.cpp 2714 JSChannelSplitterOptions.cpp2715 2713 JSCharacterData.cpp 2716 2714 JSChildNode.cpp -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r265028 r265038 15857 15857 E7CF84A524C635F400B06B90 /* OfflineAudioContextOptions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OfflineAudioContextOptions.h; sourceTree = "<group>"; }; 15858 15858 E7CF84A724C635F400B06B90 /* OfflineAudioContextOptions.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = OfflineAudioContextOptions.idl; sourceTree = "<group>"; }; 15859 E7E0352024CF60ED008DFEFB /* ChannelMergerOptions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ChannelMergerOptions.h; sourceTree = "<group>"; };15860 E7E0352224CF60ED008DFEFB /* ChannelMergerOptions.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = ChannelMergerOptions.idl; sourceTree = "<group>"; };15861 E7E0352424CF715E008DFEFB /* ChannelSplitterOptions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ChannelSplitterOptions.h; sourceTree = "<group>"; };15862 E7E0352524CF715E008DFEFB /* ChannelSplitterOptions.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = ChannelSplitterOptions.idl; sourceTree = "<group>"; };15863 15859 EB081CD81696084400553730 /* TypeConversions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TypeConversions.h; sourceTree = "<group>"; }; 15864 15860 EB081CD91696084400553730 /* TypeConversions.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = TypeConversions.idl; sourceTree = "<group>"; }; … … 29486 29482 FD315FB512B0267500C1A359 /* ChannelMergerNode.h */, 29487 29483 FD315FB612B0267500C1A359 /* ChannelMergerNode.idl */, 29488 E7E0352024CF60ED008DFEFB /* ChannelMergerOptions.h */,29489 E7E0352224CF60ED008DFEFB /* ChannelMergerOptions.idl */,29490 29484 FD315FB712B0267500C1A359 /* ChannelSplitterNode.cpp */, 29491 29485 FD315FB812B0267500C1A359 /* ChannelSplitterNode.h */, 29492 29486 FD315FB912B0267500C1A359 /* ChannelSplitterNode.idl */, 29493 E7E0352424CF715E008DFEFB /* ChannelSplitterOptions.h */,29494 E7E0352524CF715E008DFEFB /* ChannelSplitterOptions.idl */,29495 29487 FD315FDE12B0267600C1A359 /* ConvolverNode.cpp */, 29496 29488 FD315FDF12B0267600C1A359 /* ConvolverNode.h */,
Note: See TracChangeset
for help on using the changeset viewer.