frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

JavaScript retro sound effects generator

https://github.grumdrig.com/jsfxr/
81•selvan•3d ago

Comments

tlhunter•6h ago
I used the Flash predecessor to generate audio for my mobile game Cobalt Dungeon. It had pretty much the same controls and generated WAV files as well. Basically find something close to what you want then mutate it a whole bunch and then you're good to go.
aYsY4dDQ2NrcNzA•5h ago
FutureSplash?
fenomas•4h ago
They likely mean as3sfxr, a predecessor of TFA that was built in Flash.
claviska•6h ago
Oh wow! I used this last year to generate the sound effects for https://rocketblaster.app/ and it gave it a great retro vibe.
valenterry•6h ago
Nice game!
andai•2h ago
Non-minified vanilla JS. I salute you!

I learned programming twenty years ago by clicking View Source on random websites.

Time was when you could just read the code on the average website! That's quite rare now.

I used sfxr in some game jams last year, except I shipped the library with the game and had it generate sounds at runtime. (I don't think it's smaller/faster than the mp3s would have been, but it was very satisfying!)

I also used Software Automatic Mouth (originally for the C64) for TTS:

https://discordier.github.io/sam/

deadbabe•6h ago
Instead of exporting to a file is there a way to just make the sounds on the fly and then reuse them? For example in a JavaScript browser game?
fenomas•6h ago
I got way into webaudio and made some libraries to that effect. For something close to TFA, try wafxr:

https://fenomas.github.io/wafxr/

It can export wav files, but its main purpose is to generate code snippets for playing the sound effect through webaudio, underneath using a much more general library. But people familiar with audio synthesis might prefer just using the underlying dependency directly - it basically turns arbitrary config into webaudio. This playground shows how it works:

https://fenomas.github.io/wasgen/

jezzamon•5h ago
SFXR is this is the canonical tool for doing that, and yes, you can do that!

I'm not sure what this webpage is, jsxfr is the name of the JavaScript library on nodejs which is a different url to this page.

But yeah once you start generating things procedurally you can do things like generate 10 sounds with subtle variations to make things less repetitive.

fenomas•4h ago
> I'm not sure what this webpage is, jsxfr is the name of the JavaScript library

Basically:

- The original sfxr was a win32 app, ca. 2007

- There was later a widely-used Flash port called as3sfxr, ca. 2010

- This page (TFA) is a JS port of sfxr, ca. 2011.

- `jsfxr` on npm was originally a separate JS port of as3sfxr, ca 2014

- Current `jsfxr` on npm appears to have changed hands in 2022, and is now a fork of TFA with somebody else's contributions (and a paid version, confusingly branded as "sfxr")

chickenzzzzu•3h ago
Dont know about the library but any byte array in javascript can be converted to base64 and referenced via a data url
whilenot-dev•3h ago
Here's the docs for the API: https://github.com/chr15m/jsfxr?tab=readme-ov-file#api
jezzamon•5h ago
I think a more maintained URL for this library is at https://sfxr.me/
Jyaif•2h ago
What I think is a superior alternative: https://jfxr.frozenfractal.com/
anonzzzies•2h ago
The visualisation adds a lot for understanding what i'm doing with the knobs.
socalgal2•2h ago
I prefer one that saves that data as the parameters and provides a library to use them. I've used this one in the past

https://egonelbre.com/project/jsfx/

chaosprint•51m ago
love the wav download option

I tried to create a tone in Glicol (https://glicol.org/) with some random idea there and it works quite well:

``` o: squ ~pitch >> mul ~amp_env >> mul 0.4;

~amp_env: ~trigger >> envperc 0.02 0.19;

~pitch: ~pitch_env >> mul 200 >> add 200;

~pitch_env: ~trigger >> envperc 0.01 0.15;

~trigger: speed 4.0 >> seq 60

```

Keyframe•6m ago
Just what I need for this ongoing gamedev experiment. I was already looking at AI sound fx generators, as I did for music https://www.susmel.com/stacky/

Cerebras Code

https://www.cerebras.ai/blog/introducing-cerebras-code
331•d3vr•12h ago•132 comments

Aerodynamic drag in small cyclist formations: shielding the protected rider [pdf]

http://www.urbanphysics.net/2025_Formation_Paper_Preprint_v1.pdf
10•PaulHoule•3d ago•2 comments

Hardening mode for the compiler

https://discourse.llvm.org/t/rfc-hardening-mode-for-the-compiler/87660
111•vitaut•8h ago•26 comments

This Month in Ladybird

https://ladybird.org/newsletter/2025-07-31/
193•net01•4h ago•54 comments

Coffeematic PC – A coffee maker computer that pumps hot coffee to the CPU

https://www.dougmacdowell.com/coffeematic-pc.html
201•dougdude3339•12h ago•54 comments

Why leather is best motorbike protection – whilst being dragged along concrete

https://www.youtube.com/watch?v=xwuRUcAGIEU
72•lifeisstillgood•2d ago•22 comments

JavaScript retro sound effects generator

https://github.grumdrig.com/jsfxr/
81•selvan•3d ago•18 comments

Weather Model based on ADS-B

https://obrhubr.org/adsb-weather-model
183•surprisetalk•2d ago•29 comments

At 17, Hannah Cairo solved a major math mystery

https://www.quantamagazine.org/at-17-hannah-cairo-solved-a-major-math-mystery-20250801/
344•baruchel•18h ago•148 comments

I couldn't submit a PR, so I got hired and fixed it myself

https://www.skeptrune.com/posts/doing-the-little-things/
267•skeptrune•17h ago•155 comments

Robert Wilson has died

https://www.theartnewspaper.com/2025/08/01/robert-wilson-playwright-director-artist-obituary
56•paulpauper•7h ago•14 comments

Ask HN: Who is hiring? (August 2025)

192•whoishiring•19h ago•221 comments

Ethersync: Peer-to-peer collaborative editing of local text files

https://github.com/ethersync/ethersync
127•blinry•3d ago•22 comments

The Rickover Corpus: A digital archive of Admiral Rickover's speeches and memos

https://rickovercorpus.org/
59•stmw•9h ago•11 comments

Ferroelectric Helps Break Transistor Limits

https://spectrum.ieee.org/negative-capacitance-schottky-limit
8•pseudolus•3d ago•0 comments

Microsoft is open sourcing Windows 11's UI framework

https://www.neowin.net/news/microsoft-is-taking-steps-to-open-sourcing-windows-11-user-interface-framework/
36•bundie•2h ago•31 comments

Yearly Organiser

https://neatnik.net/calendar/
40•anewhnaccount2•4d ago•14 comments

Does the Bitter Lesson Have Limits?

https://www.dbreunig.com/2025/08/01/does-the-bitter-lesson-have-limits.html
140•dbreunig•14h ago•66 comments

The First Widespread Cure for HIV Could Be in Children

https://www.wired.com/story/the-first-widespread-cure-for-hiv-could-be-in-children/
12•sohkamyung•1h ago•2 comments

Native Sparse Attention

https://aclanthology.org/2025.acl-long.1126/
120•CalmStorm•14h ago•16 comments

Anthropic revokes OpenAI's access to Claude

https://www.wired.com/story/anthropic-revokes-openais-access-to-claude/
234•minimaxir•12h ago•82 comments

Terence Tao on the suspension of UCLA grants

https://mathstodon.xyz/@tao/114956840959338146
201•dargscisyhp•4h ago•145 comments

Researchers map where solar energy delivers the biggest climate payoff

https://www.rutgers.edu/news/researchers-map-where-solar-energy-delivers-biggest-climate-payoff
94•rbanffy•14h ago•54 comments

Launch HN: Societies.io (YC W25) – AI simulations of your target audience

100•p-sharpe•22h ago•49 comments

Show HN: Draw a fish and watch it swim with the others

https://drawafish.com
857•hallak•4d ago•220 comments

Replacing tmux in my dev workflow

https://bower.sh/you-might-not-need-tmux
275•elashri•1d ago•306 comments

The tradeoff between human and AI context

https://softwaredoug.com/blog/2025/07/30/layers-of-ai-coding
22•softwaredoug•2d ago•0 comments

Ask HN: Who wants to be hired? (August 2025)

93•whoishiring•19h ago•203 comments

Our Farewell from Google Play

https://secuso.aifb.kit.edu/english/2809.php
283•shakna•1d ago•107 comments

Ergonomic keyboarding with the Svalboard: a half-year retrospective

https://twey.io/hci/svalboard/
101•Twey•18h ago•55 comments