The same library as the Lost in Production trailer: 29 semantic names (tap, type, pop, notif, whoosh, register, printer, stamp, tick, bell…) mapped to soundeffect-lab.info files in sfx/sources.json, each with its measured onset so the mixer puts the transient exactly on the beat. The site's terms allow commercial use but not redistributing the files, so they are gitignored and `npm run sfx` downloads them; catalog.json indexes the whole library. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3.7 KiB
3.7 KiB
Sound effects
Every sound effect comes from 効果音ラボ, the library the Lost in Production trailer used.
It is free for commercial use with no credit required, but its terms forbid redistributing the files themselves. So public/sfx/*.mp3 is gitignored and fetched on demand.
npm run sfx # → public/sfx/<name>.mp3 (idempotent; refetches a name whose pick changed)
bash sfx/fetch-sfx.sh --force # refetch everything · bash sfx/fetch-sfx.sh tap click → only those
node sfx/measure.mjs --write # after changing a pick: re-measure duration/onset/peak into sources.json
The site serves an mp3 only to a browser User-Agent with a Referer from its own category page. The script sends both, and it fails loudly if the site answers with anything other than an mp3. Entries with a clip are cut out of a longer recording with ffmpeg (the system ffmpeg, else Remotion's bundled one). Every other file is the site's original, byte for byte.
sources.jsonmaps each semantic name to a file and its measuredduration,onset,peakDb,peakAtandaudible.scripts/mix.mjssubtractsonset(the first sample above −40 dBFS) so the transient lands exactly on the cue time. For swells (whoosh, swoosh, register's bell),peakAtis where the loud part is.audibleis how long the sound really rings, which is useful fordur.catalog.jsonlists every mp3 on the site (2,352: 1,375 effects and 977 voice lines). Each entry has its path, Japanese title and description, an English gloss and the page it is listed on. Grep it to pick new sounds. The site's "life" category isvarious(生活).
Names
| name | use | file (効果音ラボ title) |
|---|---|---|
tap · tap2 |
soft touchscreen tap, alternate the two | button/cursor12 コッ · anime/pa1 パッ |
click |
crisp selection click | button/decision31 カチッ |
type · type2 |
one keystroke each (typeCues alternates them) |
machine/keyboard1 · one stroke cut from machine/keyboard-high-speed2, leveled to type |
send |
message sent ✓, a rising chime | button/decision53 ピロリン |
pop · pop2 |
cards popping in | button/decision35 ポピッ · button/decision34 ポン |
notif |
phone notification | button/decision40 ピロン |
vibrate |
phone buzz (0.9 s) | first buzz of machine/mobile-phone-vibration2 |
whoosh · whoosh2 |
fast transition, light · heavy | battle/katana-gesture2 · battle/punch-real-swing3 |
swoosh |
softer, longer slide | battle/katana-gesture1 |
impact · impact2 |
title slam: boom (3.5 s tail; use dur) · text slam |
anime/don-1 ドーン · anime/text-impact1 |
sparkle |
reveal shimmer | button/decision37 キラリーン |
register |
ka-ching (the bell rings at ~0.36 s) | anime/amount-display1 |
printer |
receipt print burst (0.75 s) | one pass of machine/printer-print1 |
stamp |
stamp thump | battle/arrow-pierce1 ドスッ, tail cut |
tick |
one clock tick | one tick of various/clock-hand2 |
bell |
the mascot's handbell (≈ 6 dB quieter than the rest) | various/bell1 鈴が鳴る |
alarm |
a scheduled job fires | first beep burst of machine/alerm1 |
toggle |
switch flip | various/electricity-switch1 |
data · data2 |
network-packet blips | button/cursor5 · button/cursor3 |
success |
checkmark ding | button/decision13 ピン |
tear |
paper rip | various/paper-tear2 |
countup |
rolling numbers (ticks rising in pitch) | button/gauge-recovery3 |
shutter |
camera shutter | machine/camera-shutter2 |
The why field of each entry in sources.json says what the measurements showed and what the pick beat.