Commit Graph

18 Commits

Author SHA1 Message Date
9d329f54c0 [Web] Restore ScriptProcessorNode audio driver fallback
Godot has a ScriptProcessorNode audio driver implementation for the
(deprecated) Web API.

As reported by some users, this fallback was not properly re-added
during the Godot 4 transition, and was left as "dead code".

While the API is deprecated, it is still supported by most browsers, and
some WebView may not implement AudioWorklet correctly (the new
recommended API).

This commit re-adds the ScriptProcessorNode implementation as a fallback
if the AudioWorklet driver fails to initialized (and can be forced if
desired via project settings as usual).
2024-12-10 18:22:03 +01:00
7a634ad2d4 [Web] Make audio bus fetching more resilient to errors 2024-10-02 11:24:57 -04:00
aaafd163b2 Honor pitch_scale value before playing audio sample 2024-08-20 10:29:32 -04:00
f2fb3353cb Merge pull request #95197 from yahkr/95128-audio-fix
Fix AudioStreamPlayer `get_playback_position()` for web build
2024-08-16 14:33:05 +02:00
bcd776e441 Fix AudioStreamPlayer get_playback_position() for web build 2024-08-08 15:58:25 -04:00
1776258b1c Add missing null check before disconnecting source 2024-07-30 15:00:58 -04:00
61c4ce272c [Web] Gracefully handle non-finite audio volumes 2024-07-29 15:48:06 +02:00
96feb924e8 [Web] Enable the closure compiler in CI
Also fixes some JSDoc annotations in GodotAudio
2024-07-26 13:27:52 +02:00
a38f30fbd5 Fix Web samples finished missing signal 2024-07-07 14:47:54 -04:00
586db3aae7 Fix assignations to non-existing keys and clean-up 2024-06-29 14:30:57 -04:00
57db018e33 Fix pausing issues when using Web Audio samples 2024-06-20 10:32:28 -04:00
52fa4f05f3 Add samples playback support 2024-06-18 11:06:31 -04:00
78c2a08fae Add proxy_to_pthread option to platform=web
Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
2023-10-09 11:50:01 -04:00
faaf27f284 Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
c36460060e Further refactoring to AudioDriver implementations after #69120.
- Rename all instances of `capture_start()` and `capture_end()` to their new
  names. Fixes #72892.
- More internal renames to match what was started in #69120.
- Use `override` consistently so that such refactoring bugs can be caught.
- Harmonize the order of definition of the overridden virtual methods in each
  audio driver.
- Harmonize prototype for `set_output_device` and `set_input_device`.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-02-09 11:02:00 +01:00
d95794ec8a One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
27f22b29f8 [Web] Small fixes and enhancements.
- "Definitive" fix for ENOENT randomly disappearing from emscripten.
- Proper shutdown when setup fails.
- Re-enable WebGL explicit buffer swap.
- Re-enable optional per-pixel transparency.
- Add type cast to make closure compiler happy.
- Remove emscripten Safari WebGL workaround.
- Improve AudioWorklet cleanup.
2022-09-11 09:45:09 +02:00
d20b32186f [Web] Rename JavaScript platform to Web.
Also rename export name from "HTML5" to "Web".
2022-08-29 11:52:00 +02:00