Jelle Raaijmakers
2a98f2a12d
LibWeb: Implement AudioListener
...
This exposes BaseAudioContext.listener, which is a container for
parameters related to the configuration of an actual "listener" in 3D
space.
2024-10-18 09:39:04 +02:00
Jelle Raaijmakers
2df3488840
LibWeb: Implement pending promises in BaseAudioContext
...
Move the pending promises list from AudioContext to BaseAudioContext and
deal with all remaining FIXMEs.
2024-10-17 08:48:14 -04:00
Jelle Raaijmakers
14b2e5849d
LibWeb: Add barebones BaseAudioContext.decodeAudioData()
...
Implement just enough steps to get https://zty.pe/ working! :^)
2024-10-15 10:02:15 +02:00
Jelle Raaijmakers
7b76438d57
LibWeb: Accept JS::HeapFunction when queuing a media element task
...
This opens up the possibility of easier memory management in future
changes.
2024-10-15 10:02:15 +02:00
Jelle Raaijmakers
177e5210e0
LibWeb: Move 'queue a media element task' to BaseAudioContext
...
We need these steps to be available for the yet to be implemented
`BaseAudioContext.decodeAudioData()`.
2024-10-15 10:02:15 +02:00
Jelle Raaijmakers
d7a3bad2b4
LibWeb: Forward declare AudioDestinationNode to break header loop
2024-10-08 14:33:42 +02:00
bbb651
779e3072f9
WebAudio: Stub AudioDestinationContext
...
And expose it through `BaseAudioContext::destination`
2024-07-28 21:41:15 +02:00
Shannon Booth
a51095f705
WebAudio: Add stub for AudioDestinationNode.destination
...
This is called by https://athenacrisis.com/ and passed through to
AudioNode.connect, which expects an AudioNode.
Implement this function enough so that we return an AudioNode so that
AudioNode.connect does not throw a TypeError.
2024-07-24 11:14:46 +02:00
bbb651
64663d53fa
WebAudio: Stub BiquadFilterNode
2024-07-23 09:02:43 +02:00
bbb651
6672fb4b47
WebAudio: Stub AudioBufferSourceNode
2024-07-23 09:02:43 +02:00
Shannon Booth
6466fca20a
LibWeb: Implement BaseAudioContext.createGain
2024-05-28 08:06:09 +02:00
Shannon Booth
71ccd8ad25
LibWeb: Implement BaseAudioContext.createBuffer
...
This is a simple factory function which effectively just calls the
AudioBuffer constructor.
2024-05-26 07:49:49 +02:00
Shannon Booth
452ffa56dc
LibWeb: Implement BaseAudioContext.createDynamicsCompressor
2024-05-14 13:45:43 -04:00
Shannon Booth
5f57596520
LibWeb: Pass through sample rate in OfflineAudioContext constructor
...
I can't actually spot in the spec where it explicitly says to pass this
through (unlike the AudioContext constructor) - but clearly this needs
to be passed through for an OfflineAudioContext to actually have a
sample rate!
2024-05-04 14:01:38 +02:00
Shannon Booth
303958a803
LibWeb: Add BaseAudioContext::nyquist_frequency helper function
...
As a convenient shorthand :^)
2024-05-04 14:01:38 +02:00
Shannon Booth
1678f43c38
LibWeb: Implement BaseAudioContext.createOscillator
...
Which currently will always throw an exception as it is unimplemented
under the hood - but this gives all of the plumbing we need in order to
create a oscillator node as used in the reduced turnstyle testcase.
2024-05-02 07:49:23 +02:00
Shannon Booth
5cb6d495bb
LibWeb: Implement verification of 'nominal' audio options
...
The spec doesn't tell us the exact value to use, but a minumum & maximum
range of supported values. Just to be consistent with another browser,
we follow the values that firefox appears to support from testing the
interface on my machine.
This function will be used in the AudioBuffer constructor, but is
defined in the spec as part of BaseAudioContext.
2024-04-25 19:26:19 -04:00
Andreas Kling
18c54d8d40
LibJS: Make Cell::initialize() return void
...
Stop worrying about tiny OOMs.
Work towards #20405
2023-08-08 07:39:11 +02:00
Timothy Flynn
c911781c21
Everywhere: Remove needless trailing semi-colons after functions
...
This is a new option in clang-format-16.
2023-07-08 10:32:56 +01:00
Daniel Adams
49e6414c58
LibWeb: Start filling out BaseAudioContext/AudioContext interfaces
...
- Fills out both IDLs and implements some basic attributes/methods.
- No actual audio processing yet though :^)
2023-06-28 05:22:51 +02:00
Luke Wilde
a5936864d9
LibWeb: Stub AudioContext constructor
...
This is enough to make Discord not throw up "Well this is awkward" on
login.
2023-05-22 06:07:05 +02:00